diff -r c9c502117eb6 -r ff4b567d51f2 web/res/metadataplayer/ImageDisplay.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/res/metadataplayer/ImageDisplay.js Sun Feb 15 00:43:16 2015 +0100 @@ -0,0 +1,42 @@ +/* This widget displays the image associated to the annotation in the given container */ + +IriSP.Widgets.ImageDisplay = function(player, config) { + IriSP.Widgets.Widget.call(this, player, config); +} + +IriSP.Widgets.ImageDisplay.prototype = new IriSP.Widgets.Widget(); + +IriSP.Widgets.ImageDisplay.prototype.defaults = { + annotation_type: "Slides", + // container: "imageContainer" +} + +IriSP.Widgets.ImageDisplay.prototype.template = '
Slide Image
'; + +IriSP.Widgets.ImageDisplay.prototype.annotationTemplate = ''; + +IriSP.Widgets.ImageDisplay.prototype.update = function(annotation) { + // Update the widget with data corresponding to the annotation + this.image.setAttribute("title", IriSP.textFieldHtml(annotation.title) + " - " + annotation.begin.toString()); + this.image.setAttribute("src", annotation.thumbnail); +}; + +IriSP.Widgets.ImageDisplay.prototype.draw = function() { + var _annotations = this.getWidgetAnnotations().sortBy(function(_annotation) { + return _annotation.begin; + }); + var _this = this; + _this.renderTemplate(); + _this.image = _this.$.find("img")[0]; + + _this.$.find(".Ldt-ImageDisplay-Overlay-Left").on("click", function () { _this.navigate(-1); }); + _this.$.find(".Ldt-ImageDisplay-Overlay-Right").on("click", function () { _this.navigate(+1); }); + + _annotations.forEach(function(_a) { + _a.on("enter", function() { + _this.update(_a); + }); + }); + if (_annotations.length) + _this.update(_annotations[0]); +}