Plugin:MirLua/Module/m database: Difference between revisions

From Miranda NG
Jump to navigation Jump to search
(Plugin:MirLua/en/m_database - bad English - needs revision)
 
(double pipes)
Line 20: Line 20:
: Returns contact number. The list ends in element with '''nil''' value.
: Returns contact number. The list ends in element with '''nil''' value.
;Example
;Example
{{Content:MirLua/Example||code=
{{Content:MirLua/Example|code=
for hContact in db.AllContacts('JABBER_1') do
for hContact in db.AllContacts('JABBER_1') do
   print(db.GetSetting(hContact, 'JABBER_1', 'Nick'))
   print(db.GetSetting(hContact, 'JABBER_1', 'Nick'))
Line 38: Line 38:
: Returns number of events.
: Returns number of events.
;Example
;Example
{{Content:MirLua/Example||code=db.GetEventCount(hContact)}}
{{Content:MirLua/Example|code=db.GetEventCount(hContact)}}


=== AllEvents ===
=== AllEvents ===
Line 50: Line 50:
: Returns event number. The list ends in element with '''nil''' value.
: Returns event number. The list ends in element with '''nil''' value.
;Example
;Example
{{Content:MirLua/Example||code=for hEvent in db.AllEvents(hContact) do
{{Content:MirLua/Example|code=for hEvent in db.AllEvents(hContact) do
   local event = totable(hEvent, "DBEVENTINFO")
   local event = totable(hEvent, "DBEVENTINFO")
   print(event.Timestamp, event.Blob)
   print(event.Timestamp, event.Blob)
Line 66: Line 66:
: Returns event number. The list ends in element with '''nil''' value.
: Returns event number. The list ends in element with '''nil''' value.
;Example
;Example
{{Content:MirLua/Example||code=
{{Content:MirLua/Example|code=
for hEvent in db.AllEventsFromEnd(hContact) do
for hEvent in db.AllEventsFromEnd(hContact) do
   local event = totable(hEvent, "DBEVENTINFO")
   local event = totable(hEvent, "DBEVENTINFO")
Line 94: Line 94:
: Returns value of a setting or default value or '''nil'''.
: Returns value of a setting or default value or '''nil'''.
;Example
;Example
{{Content:MirLua/Example||code=db.GetSetting(nil, 'test', 'some')}}
{{Content:MirLua/Example|code=db.GetSetting(nil, 'test', 'some')}}


=== AllSettings ===
=== AllSettings ===
Line 109: Line 109:
: Returns module name. The list ends in element with '''nil''' value.
: Returns module name. The list ends in element with '''nil''' value.
;Example
;Example
{{Content:MirLua/Example||code=
{{Content:MirLua/Example|code=
for setting in db.AllSettings(nil, 'CList') do
for setting in db.AllSettings(nil, 'CList') do
   local message = string.format("%s/%s = ", 'CList', setting, ...)
   local message = string.format("%s/%s = ", 'CList', setting, ...)
Line 133: Line 133:
: Returns '''true''' in case of success, else '''false'''.
: Returns '''true''' in case of success, else '''false'''.
;Example
;Example
{{Content:MirLua/Example||code=db.WriteSetting(nil, 'test', 'some', true)}}
{{Content:MirLua/Example|code=db.WriteSetting(nil, 'test', 'some', true)}}


=== DeleteSetting ===
=== DeleteSetting ===
Line 151: Line 151:
: Returns '''true''' in case of success, else '''false'''.
: Returns '''true''' in case of success, else '''false'''.
;Example
;Example
{{Content:MirLua/Example||code=db.DeleteSetting(nil, 'test', 'some')}}
{{Content:MirLua/Example|code=db.DeleteSetting(nil, 'test', 'some')}}


=== DeleteModule ===
=== DeleteModule ===
Line 166: Line 166:
: Returns '''true''' in case of success, else '''false'''.
: Returns '''true''' in case of success, else '''false'''.
;Example
;Example
{{Content:MirLua/Example||code=db.DeleteModule(nil, 'test')}}
{{Content:MirLua/Example|code=db.DeleteModule(nil, 'test')}}


[[Category:Tutorials (en)]]
[[Category:Tutorials (en)]]

Revision as of 21:14, 16 December 2015

Allows you to access data and contacts in user profile database.

Include module: local db = require('m_database')

<translate> Note</translate>
Parameters written in bold italics are obligatory.


Contacts

AllContacts

Iterator for list of contacts.

Parameters
name
Type: string
Protocol name.
Result
Type: number
Returns contact number. The list ends in element with nil value.
Example
for hContact in db.AllContacts('JABBER_1') do
  print(db.GetSetting(hContact, 'JABBER_1', 'Nick'))
end


Events

GetEventCount

Number of events for a contact.

Parameters
hContact
Type: number
Contact number.
Result
Type: number
Returns number of events.
Example
db.GetEventCount(hContact)

AllEvents

Iterator for contact's event list from the first to the last.

Parameters
hContact
Type: number
Contact number.
Result
Type: number
Returns event number. The list ends in element with nil value.
Example
for hEvent in db.AllEvents(hContact) do
  local event = totable(hEvent, "DBEVENTINFO")
  print(event.Timestamp, event.Blob)
end

AllEventsFromEnd

Iterator for contact's event list from the last to the first.

Parameters
hContact
Type: number
Contact number.
Result
Type: number
Returns event number. The list ends in element with nil value.
Example
for hEvent in db.AllEventsFromEnd(hContact) do
  local event = totable(hEvent, "DBEVENTINFO")
  print(event.Timestamp, event.Blob)
end


Settings

GetSetting

Returns value of a setting.

Parameters
hContact
Type: number
Contact number or nil.
module
Type: string
Module name.
setting
Type: string
Setting name.
value
Type: number, string
Default value.
Result
Type: number
Returns value of a setting or default value or nil.
Example
db.GetSetting(nil, 'test', 'some')

AllSettings

Iterator for module (group of settings).

Parameters
hContact
Type: number
Contact number or nil.
module
Type: string
Module name.
Result
Type: number
Returns module name. The list ends in element with nil value.
Example
for setting in db.AllSettings(nil, 'CList') do
  local message = string.format("%s/%s = ", 'CList', setting, ...)
   .. db.GetSetting(nil, 'CList', setting)
  print(message)
end

WriteSetting

Saves a value to database.

Parameters
hContact
Type: number
Contact number or nil.
module
Type: string
Module name.
setting
Type: string
Setting name.
Result
Type: boolean
Returns true in case of success, else false.
Example
db.WriteSetting(nil, 'test', 'some', true)

DeleteSetting

Deletes a setting.

Parameters
hContact
Type: number
Contact number or nil.
module
Type: string
Module name.
setting
Type: string
Setting name.
Result
Type: boolean
Returns true in case of success, else false.
Example
db.DeleteSetting(nil, 'test', 'some')

DeleteModule

Deletes a module (group of settings).

Parameters
hContact
Type: number
Contact number or nil.
module
Type: string
Module name.
Result
Type: boolean
Returns true in case of success, else false.
Example
db.DeleteModule(nil, 'test')