gadgets.util.registerOnLoadHandler(request); function request() { var sampleData = "Sample storage data! The current time is " + new Date(); var req = opensocial.newDataRequest(); req.add(req.newUpdatePersonAppDataRequest(opensocial.DataRequest.PersonId.VIEWER, "datakey", sampleData), "status"); req.send(response); }; function response(data) { var error = data.get("status").hadError(); if (error) { print("Error on update person data request."); } else { print("Update person data request successful."); fetchStoredData(); } } ; function fetchStoredData() { var fields = [ "datakey" ]; var req = opensocial.newDataRequest(); req.add(req.newFetchPersonRequest(opensocial.DataRequest.PersonId.VIEWER), "viewer"); //Needed to get the viewer's ID req.add(req.newFetchPersonAppDataRequest(opensocial.DataRequest.PersonId.VIEWER, fields), "returnData"); req.send(showData); }; function showData(returnData) { var viewer = returnData.get("viewer").getData(); var viewer_data = returnData.get("returnData").getData()[viewer.getId()]; //Here's why we needed to fetch the viewer var output = [ '
Person data fetch successful.', '
-->Retrieved data: "', viewer_data["datakey"], '" from viewer: ', viewer.getId() ].join(""); print(output); }; function print(txt) { document.getElementById("main").innerHTML += txt; };
]]>