_IG_RegisterOnloadHandler(request); var sampleData = "Sample storage data!"; var html = ""; function request() { 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) { html = "Error on update person data request."; } else { html = "Update person data request successful."; fetchStoredData(); } document.getElementById("main").innerHTML = html; } 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 html += "
Person data fetch successful."; html += "
-->Retrieved data: '" + viewer_data["datakey"] + "' from viewer: " + viewer.getId(); document.getElementById("main").innerHTML = html; }
]]>