Retrieved exotic serializers from hashcut
authorveltr
Tue, 01 Oct 2013 16:16:35 +0200
changeset 1014 96ea47146c66
parent 1013 392ddcd212d7
child 1015 63c5e5b16770
Retrieved exotic serializers from hashcut
src/js/serializers/contentapi-serializer.js
src/js/serializers/segmentapi-serializer.js
src/js/utils.js
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/js/serializers/contentapi-serializer.js	Tue Oct 01 16:16:35 2013 +0200
@@ -0,0 +1,27 @@
+IriSP.serializers.content = {
+    deSerialize : function(_data, _source) {
+        var _medialist = new IriSP.Model.List(_source.directory);
+        
+        function deserializeObject(_m, i) {
+            var _media = new IriSP.Model.Media(_m.iri_id, _source);
+            _media.video = _m.media_url;
+            _media.title = _m.title;
+            _media.description = _m.description;
+            _media.setDuration(_m.duration);
+            _media.thumbnail = _m.image;
+            _media.color = IriSP.vizcolors[i % IriSP.vizcolors.length];
+            _media.keywords = _m.tags;
+            _medialist.push(_media);
+        }
+        
+        if (typeof _data.objects !== "undefined") {
+            IriSP._(_data.objects).each(deserializeObject);
+        } else {
+            deserializeObject(_data, 0);
+        }
+        
+        _source.addList("media", _medialist);
+    }
+};
+
+/* END contentapi-serializer.js */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/js/serializers/segmentapi-serializer.js	Tue Oct 01 16:16:35 2013 +0200
@@ -0,0 +1,33 @@
+IriSP.serializers.segmentapi = {
+    deSerialize : function(_data, _source) {
+        var _annotationlist = new IriSP.Model.List(_source.directory),
+            _medialist = new IriSP.Model.List(_source.directory);
+        _source.addList("media", _medialist);
+        
+        function deserializeObject(_s) {
+            var _ann = new IriSP.Model.Annotation(_s.element_id, _source),
+                _media = _source.getElement(_s.iri_id);
+            if (!_media) {
+                _media = new IriSP.Model.Media(_s.iri_id, _source);
+                _source.getMedias().push(_media);
+            }
+            _ann.setMedia(_s.iri_id);
+            _ann.title = _s.title;
+            _ann.description = _s.abstract;
+            _ann.begin = new IriSP.Model.Time(_s.start_ts);
+            _ann.end = new IriSP.Model.Time(_s.start_ts + _s.duration);
+            _ann.keywords = (_s.tags ? _s.tags.split(",") : []);
+            _ann.project_id = _s.project_id;
+            _annotationlist.push(_ann);
+        }
+        
+        if (typeof _data.objects !== "undefined") {
+            IriSP._(_data.objects).each(deserializeObject);
+        } else {
+            deserializeObject(_data);
+        }
+        _source.addList("annotation", _annotationlist);
+    }
+};
+
+/* END segmentapi-serializer.js */
--- a/src/js/utils.js	Tue Oct 01 15:41:46 2013 +0200
+++ b/src/js/utils.js	Tue Oct 01 16:16:35 2013 +0200
@@ -14,7 +14,7 @@
     if (typeof IriSP.libFiles.inDefaultDir[lib] == "string") {
         return IriSP.libFiles.defaultDir + '/' + IriSP.libFiles.inDefaultDir[lib];
     }
-}
+};
 
 IriSP._cssCache = [];