PHP Shindig now has basic Atom support.

The code needs a bit of cleaning (particularly the huge atom xml builder functions needs some work), but the basics seem to be working well and according to spec. I've updated partuza.nl to to the latest version so people can take a look (note: the @me, @app etc type user id's wont work unless you have an security token, but i've enabled read-only support for anonymous viewing so most of it works without).

Couple of quick demo's:

Fetch person in json format: 
http://modules.partuza.nl/social/rest/people/1/@self
Same in atom format: 
http://modules.partuza.nl/social/rest/people/1/@self?format=atom

Fetch friends in json format: 
http://modules.partuza.nl/social/rest/people/1/@friends
Atom: http://modules.partuza.nl/social/rest/people/1/@friends?format=atom

Note the paging link thats included:
  <osearch:totalResults>204</osearch:totalResults>
  <osearch:startIndex>0</osearch:startIndex>
  <osearch:itemsPerPage>20</osearch:itemsPerPage>
<link rel="next" href="http://modules.partuza.nl/social/rest/people/1/@friends?format=atom&amp;startIndex=20&amp;count=20 "/>

And indeed 
http://modules.partuza.nl/social/rest/people/1/@friends?format=atom&startIndex=20&count=20
Will show you the next 20 friends.

My horoscope appdata: http://modules.partuza.nl/social/rest/appdata/1/@self/82
The same in atom: 
http://modules.partuza.nl/social/rest/appdata/1/@self/82?format=atom

Activities in json: http://modules.partuza.nl/social/rest/activities/1/@friends
And of course atom: 
http://modules.partuza.nl/social/rest/activities/1/@friends?format=atom

Hope you enjoyed the demo; Comments and patches are always welcome :)

ps, I've temporary disabled the application/xml+atom and application/ json content type headers, it's easier to develop and debug when you can see output in the browser but this will be restored asap.

        -- Chris

Reply via email to