You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shindig.apache.org by li...@apache.org on 2010/10/23 12:29:07 UTC
svn commit: r1026595 - in
/shindig/trunk/content/samplecontainer/examples/media: Media.xml MediaUI.js
Author: lindner
Date: Sat Oct 23 10:29:06 2010
New Revision: 1026595
URL: http://svn.apache.org/viewvc?rev=1026595&view=rev
Log:
SHINDIG-1430 | Patch from Eric Woods | Media Sample Gadget
Modified:
shindig/trunk/content/samplecontainer/examples/media/Media.xml
shindig/trunk/content/samplecontainer/examples/media/MediaUI.js
Modified: shindig/trunk/content/samplecontainer/examples/media/Media.xml
URL: http://svn.apache.org/viewvc/shindig/trunk/content/samplecontainer/examples/media/Media.xml?rev=1026595&r1=1026594&r2=1026595&view=diff
==============================================================================
--- shindig/trunk/content/samplecontainer/examples/media/Media.xml (original)
+++ shindig/trunk/content/samplecontainer/examples/media/Media.xml Sat Oct 23 10:29:06 2010
@@ -21,6 +21,18 @@
<ModulePrefs title="Albums and MediaItems">
<Require feature="osapi"/>
<Require feature="dynamic-height"/>
+ <Require feature="pubsub-2">
+ <Param name="topics">
+ <![CDATA[
+ <Topic title="MediaItem Created" name="org.apache.shindig.mediaItem.created" description="Publishes MediaItem created events." type="org.opensocial.data.mediaItem" publish="true"/>
+ <Topic title="MediaItem Updated" name="org.apache.shindig.mediaItem.updated" description="Publishes MediaItem updated events." type="org.opensocial.data.mediaItem" publish="true"/>
+ <Topic title="MediaItem Deleted" name="org.apache.shindig.mediaItem.deleted" description="Publishes MediaItem deleted events." type="org.opensocial.data.mediaItem" publish="true"/>
+ <Topic title="Album Created" name="org.apache.shindig.album.created" description="Publishes Album created events." type="org.opensocial.data.album" publish="true">
+ <Topic title="Album Updated" name="org.apache.shindig.album.updated" description="Publishes Album updated events." type="org.opensocial.data.album" publish="true">
+ <Topic title="Album Deleted" name="org.apache.shindig.album.deleted" description="Publishes Album deleted events." type="org.opensocial.data.album" publish="true">
+ ]]>
+ </Param>
+ </Require>
</ModulePrefs>
<Content type="html"><![CDATA[
Modified: shindig/trunk/content/samplecontainer/examples/media/MediaUI.js
URL: http://svn.apache.org/viewvc/shindig/trunk/content/samplecontainer/examples/media/MediaUI.js?rev=1026595&r1=1026594&r2=1026595&view=diff
==============================================================================
--- shindig/trunk/content/samplecontainer/examples/media/MediaUI.js (original)
+++ shindig/trunk/content/samplecontainer/examples/media/MediaUI.js Sat Oct 23 10:29:06 2010
@@ -346,11 +346,13 @@ function MediaUI(social) {
};
if (album == null) {
social.createAlbum(viewer.id, newAlbum, function(response) {
+ publish("org.apache.shindig.album.created", newAlbum);
console.log('created album response: ' + JSON.stringify(response));
renderAlbumsByUser(viewer.id);
});
} else {
social.updateAlbum(viewer.id, album.id, newAlbum, function(response) {
+ publish("org.apache.shindig.album.updated", newAlbum);
console.log('updated album response: ' + JSON.stringify(response));
renderAlbumsByUser(viewer.id);
});
@@ -468,6 +470,7 @@ function MediaUI(social) {
if (newMediaItem.type == null || newMediaItem.type == "") newMediaItem.type = "image";
if (mediaItem == null) {
social.createMediaItem(viewer.id, albumId, newMediaItem, function(response) {
+ publish("org.apache.shindig.mediaItem.created", newMediaItem);
console.log('created MediaItem response: ' + JSON.stringify(response));
social.getMediaItemsByAlbum(viewer.id, album.id, function(response) {
renderMediaItems(album, response.list);
@@ -475,6 +478,7 @@ function MediaUI(social) {
});
} else {
social.updateMediaItem(viewer.id, albumId, mediaItem.id, newMediaItem, function(response) {
+ publish("org.apache.shindig.mediaItem.updated", newMediaItem);
console.log('updated MediaItem response: ' + JSON.stringify(response));
social.getMediaItemsByAlbum(viewer.id, album.id, function(response) {
renderMediaItems(album, response.list);
@@ -500,6 +504,7 @@ function MediaUI(social) {
console.log('deleteAlbumPopup');
if (confirm("Delete '" + album.title + "'?")) {
social.deleteAlbum(viewer.id, album.id, function(response) {
+ publish("org.apache.shindig.album.deleted", album);
console.log('delete album response: ' + JSON.stringify(response));
renderAlbumsByUser(viewer.id);
});
@@ -514,6 +519,7 @@ function MediaUI(social) {
var albumId = mediaItem.albumId;
if (confirm("Delete '" + mediaItem.title + "'?")) {
social.deleteMediaItem(viewer.id, albumId, mediaItem.id, function(response) {
+ publish("org.apache.shindig.mediaItem.deleted", mediaItem);
console.log('delete mediaItem response: ' + JSON.stringify(response));
social.getMediaItemsByAlbum(viewer.id, albumId, function(response) {
renderMediaItems(album, response.list);
@@ -521,4 +527,11 @@ function MediaUI(social) {
});
}
}
+
+ /*
+ * Publishers.
+ */
+ function publish(topic, payload) {
+ gadgets.Hub.publish(topic, payload);
+ }
}
\ No newline at end of file