Table Row (tr) |
---|
| Table Head (th) |
---|
| Method Details |
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters
Div |
---|
| {String} telNumber – telephone number to call |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
plugins.mobile.call("+490111111")
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=clearLocalData}{tr:id=name}{td}h6.clearLocalData{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}clearLocalData{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Clears local data \- that is stored in browser local storage.
After calling this method there will be no data in the mobile client until a syncData/reloadDataFromServer operation completes successfully.
Note: It is the caller's responsibility to show a form that doesn't need data or call a sync afterwards. (table structure data is cleared as well)
Use this with care!{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
clearLocalData |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Clears local data - that is stored in browser local storage. After calling this method there will be no data in the mobile client until a syncData/reloadDataFromServer operation completes successfully. Note: It is the caller's responsibility to show a form that doesn't need data or call a sync afterwards. (table structure data is cleared as well) Use this with care! |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
// if we want do clear local copy of the data because the user did something really bad with local data
plugins.mobile.clearLocalData();
plugins.mobile.syncData();
// maybe we are done with a task and we don't want to use persistent space on the device
plugins.mobile.clearLocalData();
forms.noDataInitialForm.showWithMessage("Local data discarded."); // a form that displays the message and shows itself on this call; it also allows doing a sync later for example
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=email-String}{tr:id=name}{td}h6.email{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}email{span}{span}\(emailAddress){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Initiate an email sending{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} emailAddress -- destination email address
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Initiate an email sending |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters
Div |
---|
| {String} emailAddress – destination email address |
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id= Table Body (tbody) |
---|
id | getCurrentPosition-Function_Function_Object |
---|
| }{:=}{td}h6.getCurrentPosition{td}{tr}{tr:id=sig}{td}{span:style= | Table Cell (td) |
---|
getCurrentPosition |
|
| }{span}{span:style= }{span}{span}\ {span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Wrapper function around HTML5 getCurrentPosition. Method will call successCallback method with a Position object argument if GPS position was retrieved. Otherwise will call errorHandler with an error argument. This method has dummy implementation in developer.
NOTE: For options you can specify (a) Accuracy of the returned location information (b) Timeout for retrieving the location information and (c) Use of cached location information{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Function]} successCallback -- Method to be called if the coordinates are retrieved.
\{[Function]} errorHandler -- Method to be called if an error occurs while retrieving GPS coordinates. Can be null.
\{[Object]} options -- JSON string with different options that are supported by HTML5 function (accuracy, timeout, caching).
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Wrapper function around HTML5 getCurrentPosition. Method will call successCallback method with a Position object argument if GPS position was retrieved. Otherwise will call errorHandler with an error argument. This method has dummy implementation in developer. NOTE: For options you can specify (a) Accuracy of the returned location information (b) Timeout for retrieving the location information and (c) Use of cached location information |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters
Div |
---|
| {Function} successCallback – Method to be called if the coordinates are retrieved. {Function} errorHandler – Method to be called if an error occurs while retrieving GPS coordinates. Can be null. {Object} options – JSON string with different options that are supported by HTML5 function (accuracy, timeout, caching). |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
plugins.mobile.getCurrentPosition(forms.myform.showLocation,scopes.globals.errorHandler,{timeout:5000});
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getMarkupId-RuntimeComponent}{tr:id=name}{td}h6.getMarkupId{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getMarkupId{span}{span}\(element){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Retrieves markup id of an element{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[RuntimeComponent]} element -- to retrive markup id for
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- the element's markup id{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Body (tbody) |
---|
id | getMarkupId-RuntimeComponent |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getMarkupId |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Retrieves markup id of an element |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns
Div |
---|
| String – the element's markup id |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var id = plugins.mobile.getMarkupId(elements.myButton)
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getUsedStorageSpace}{tr:id=name}{td}h6.getUsedStorageSpace{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Number]{span}{span:style=font-weight: bold;}getUsedStorageSpace{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Retrieves amount of used bytes from browser local storage.
The storage amount depends on used browser, but, from specification, the browser should allow at least 5MB of local storage.
Note: Some browsers take two bytes per character.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getUsedStorageSpace |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Retrieves amount of used bytes from browser local storage. The storage amount depends on used browser, but, from specification, the browser should allow at least 5MB of local storage. Note: Some browsers take two bytes per character. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var usedSpace = plugins.mobile.getUsedStorageSpace()
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=isOnline}{tr:id=name}{td}h6.isOnline{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}isOnline{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Returns whether mobile device is online. Returns true in developer implementation.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Returns whether mobile device is online. Returns true in developer implementation. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
plugins.mobile.isOnline()
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=loadData}{tr:id=name}{td}h6.loadData{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}loadData{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}(Re)Loads fresh data from the server, discarding the current local changes (asynchronously).
It is equivalent to the "load" part of a sync operation; it doesn't send local changes to the server and discards local changes when it receives new data from the server.
When done, this call might (and most of the time does) need to move to first form, as the (new) local data might be completely different \- invalidating the current form/history.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| (Re)Loads fresh data from the server, discarding the current local changes (asynchronously). It is equivalent to the "load" part of a sync operation; it doesn't send local changes to the server and discards local changes when it receives new data from the server. When done, this call might (and most of the time does) need to move to first form, as the (new) local data might be completely different - invalidating the current form/history. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
// reload data from server and discard local changes
plugins.mobile.loadData();
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id= Table Body (tbody) |
---|
id | loadData-Function_Function |
---|
| }{:=}{td}h6.loadData{td}{tr}{tr:id=sig}{td}{span:style= }{span}{span:style= }{span}{span}\ {span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}
\
\ {div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Function]} successCallback -- Method to be called if the load was successful. Can be null.
First argument of the success callback is the size of received data in bytes.
\{[Function]} errorHandler -- Method to be called if an error occurs during load. Can be null.
First argument is the HTTP status code for the request or \-1 if unknown.
Second argument is the error message.
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters
Div |
---|
| {Function} successCallback – Method to be called if the load was successful. Can be null. First argument of the success callback is the size of received data in bytes. {Function} errorHandler – Method to be called if an error occurs during load. Can be null. First argument is the HTTP status code for the request or -1 if unknown. Second argument is the error message. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
function reloadAndDiscardData(event)
{
plugins.mobile.loadData(onLoadSuccess, onLoadError);
}
function onLoadSuccess(dataBytes)
{
if (dataBytes > 0) forms.contacts.showContacts(accountmanager_to_companies.companies_to_contacts);
else forms.noData.showWithMessage("Server has no data to send.");
}
function onLoadError(http_status_code, error_message)
{
plugins.dialogs.showWarningDialog("Warning", 'Reload of data failed with http status code: ' + http_status_code + ', and error message: ' + error_message);
forms.firstForm.showWithMessage("Data reload failed. Please press 'Synchronise' to try again.");
}
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=syncData}{tr:id=name}{td}h6.syncData{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}syncData{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Synchronises data between Mobile Client and Servoy Application Server (asynchronously).
When done, this call might (and most of the time does) need to move to first form, as the (new) local data might be completely different \- invalidating the current form/history.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Synchronises data between Mobile Client and Servoy Application Server (asynchronously). When done, this call might (and most of the time does) need to move to first form, as the (new) local data might be completely different - invalidating the current form/history. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
plugins.mobile.syncData()
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id= Table Body (tbody) |
---|
id | syncData-Function_Function |
---|
| }{:=}{td}h6.syncData{td}{tr}{tr:id=sig}{td}{span:style= }{span}{span:style= }{span}{span}\ {span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Synchronises data between Mobile Client and Servoy Application Server Table Row (tr) |
---|
| Table Cell (td) |
---|
Div |
---|
| Synchronises data between Mobile Client and Servoy Application Server (asynchronously), |
|
|
|
\
\
\ {div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Function]} successCallback -- Method to be called if the sync was successful. Can be null.
\{[Function]} errorHandler -- Method to be called if an error occurs during synchronisation. Can be null.
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters
Div |
---|
| {Function} successCallback – Method to be called if the sync was successful. Can be null. {Function} errorHandler – Method to be called if an error occurs during synchronisation. Can be null. |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
function onSyncAction(event)
{
plugins.mobile.syncData(onSyncSuccess, onSyncError);
}
function onSyncSuccess(dataBytes)
{
if (dataBytes > 0) forms.contacts.showContacts(accountmanager_to_companies.companies_to_contacts);
}
function onSyncError(http_status_code, error_message)
{
plugins.dialogs.showWarningDialog("Warning", 'Sync failed with http status code: ' + http_status_code + ', and error message: ' + error_message);
}
|
|
|
|
| {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table} |