FAVOURITES_JSONP_URL = 'http://www.library.uq.edu.au/ws/favourites/service/jsonp?'; function UQLFavouritesService() { } UQLFavouritesService.prototype.getFavourites = function (callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = ''; x.method = "getFavourites"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.getFavouritesInCategory = function (category_name, callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = category_name; x.method = "getFavouritesInCategory"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.addFavourite = function (favourite_url, favourite_name, category_name, callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = encodeURIComponent(favourite_url); x.params[1] = favourite_name; x.params[2] = category_name; x.method = "addFavourite"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.editFavourite = function (favourite_id, favourite_name, favourite_url, callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = favourite_id; x.params[1] = favourite_name; x.params[2] = encodeURIComponent(favourite_url); x.method = "editFavourite"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.removeFavourite = function (favourite_id, callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = favourite_id; x.method = "removeFavourite"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.addCategory = function (category_name, callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = category_name; x.method = "addCategory"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.removeCategory = function (category_id, callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = category_id; x.method = "removeCategory"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.moveFavouriteToCategory = function (favourite_id, category_id, callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = favourite_id; x.params[1] = category_id; x.method = "moveFavouriteToCategory"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.setPreference = function (preference_name, preference_value, callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.params[0] = preference_name; x.params[1] = preference_value; x.method = "setPreference"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } UQLFavouritesService.prototype.getPreferences = function (callBack) { if (typeof callBack == 'undefined' ) callBack = 'callBack'; var x = Object(); x.params = Array(); x.method = "getPreferences"; x.id = 1; var request = new JSONscriptRequest(FAVOURITES_JSONP_URL + 'json=' + escape(YAHOO.lang.JSON.stringify(x)) + '&callBack=' + escape(callBack)); request.buildScriptTag(); request.addScriptTag(); } function callBack(obj) { var result = obj.result; if(result.error) { alert(result.error); } else alert(result.success); }