This code looks pretty good, but you're not setting any AppData in
this gadget, so there won't be any available in doSomethingWithMyData
(causes a JavaScript error for me). If you modify the gadget to set
data first, then it should work.
~Arne
On Jun 13, 2:09 pm, Vinicius <[EMAIL PROTECTED]> wrote:
> as read data?
>
> I am trying with this code but can not:
>
> <?xml version="1.0" encoding="UTF-8" ?>
> <Module>
> <ModulePrefs title="Data Persistence Read Example" >
> <Require feature="opensocial-0.7"/>
> </ModulePrefs>
> <Content type="html">
> <![CDATA[
>
> <script type="text/javascript">
> gadgets.util.registerOnLoadHandler(requestMyData);
> var htmlout = "";
> var me = null;
>
> /
> ************************************************************************
> * Fetch app data
> */
> function requestMyData() {
> var req = opensocial.newDataRequest();
> var fields = [ "AppField1", "AppField2", "AppField3" ];
>
> req.add(req.newFetchPersonRequest(opensocial.DataRequest.PersonId.VIEWER),
> "viewer");
> req.add(req.newFetchPersonAppDataRequest("VIEWER", fields),
> "viewer_data");
> req.send(handleRequestMyData);
> }
>
> /
> ************************************************************************
> * Handle responses from app data requests
> */
> function handleRequestMyData(data) {
> var mydata = data.get("viewer_data");
> var viewer = data.get("viewer");
> me = viewer.getData();
>
> if (mydata.hadError()) {
> htmlout += data.getError();
> return;
> }
> // Do something with the returned data - note the getData call
> doSomethingWithMyData(mydata.getData());
> }
>
> /
> ************************************************************************
> * Operate on user data
> */
> function doSomethingWithMyData(data) {
> //Data is indexed by user id, and represents an object where
> keys
> //correspond with the app data fields.
> var mydata = data[me.getId()];
> var div = document.getElementById('content_div');
> htmlout += "My AppField1 data is: " + mydata["AppField1"] + "<br />";
>
> htmlout += "My AppField2 data is: " + mydata["AppField2"] + "<br />";
>
> htmlout += "My AppField3 data is: " + mydata["AppField3"] + "<br />";
>
> div.innerHTML = htmlout;
> }
>
> </script>
> <div id="content_div"></div>
> ]]>
> </Content>
> </Module>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"OpenSocial Application Development" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/opensocial-api?hl=en
-~----------~----~----~----~------~----~------~--~---