×
Namespaces

Variants
Actions
(Difference between revisions)

Listing calendars in Symbian Web Runtime

From Nokia Developer Wiki
Jump to: navigation, search
tapla (Talk | contribs)
(New page: __NOTOC__ __NOEDITSECTION__ {{KBCS}} {{CodeSnippet |id=  |platform=S60 5th Edition |devices=Nokia 5800 XpressMusic |category=Web Runtime (WRT) |subcategory=PIM |creationdate=January 1...)
 
Forum Nokia KB (Talk | contribs)

Revision as of 11:17, 20 January 2009


Template:KBCS

Article Metadata
Tested with
Devices(s): Nokia 5800 XpressMusic
Compatibility
Platform(s): S60 5th Edition
S60 5th Edition
Article
Keywords: device.getServiceObject(), Service.Calendar.GetList()
Created: (14 Jan 2009)
Last edited: Forum Nokia KB (20 Jan 2009)

Overview

This code snippet shows how to list calendars by using the Calendar Platform Service for S60 Web Runtime introduced in S60 5th Edition.

To obtain access to the service object for the Calendar Service API, the device.getServiceObject("Service.Calendar", "IDataSource") method is used.

Source: Relevant HTML components

<label for="calendarList">Calendars:</label><br />
<select size="2" id="calendarList" onclick="showEvents();"></select>

Source: JavaScript file

var serviceObj = null;
 
window.onload = init;
 
// Initializes the widget
function init() {
// Obtain the service object
try {
serviceObj = device.getServiceObject("Service.Calendar",
"IDataSource");
} catch (ex) {
alert("Service object cannot be found.");
return;
}
 
listCalendars();
}
 
function listCalendars() {
try {
var filter = new Object();
// Not using the default calendar
filter.DefaultCalendar = false;
 
// Criteria for fetching calendars
var criteria = new Object();
criteria.Type = "Calendar";
criteria.Filter = filter;
 
// Get the list of calendars
result = serviceObj.IDataSource.GetList(criteria);
if (result.ErrorCode == 0) {
showCalendars(result.ReturnValue);
} else {
alert("Error in getting calendars");
}
} catch( exception ) {
alert("initialize error: " + exception);
}
}
 
function showCalendars(iterator) {
var calendarList = document.getElementById("calendarList");
 
// Empty the calendar list
while (calendarList.length != 0) {
calendarList.remove(0);
}
 
// Set the pointer to the first element
iterator.reset();
 
var item;
while ((item = iterator.getNext()) != undefined) {
var node = document.createElement("option");
node.value = item;
node.appendChild(document.createTextNode(item));
calendarList.appendChild(node);
}
}

Postconditions

Available calendars are displayed.

See also

Listing calendar entries

134 page views in the last 30 days.
×