src/widgets/HtmlMashupPlayer.js
author veltr
Wed, 19 Jun 2013 18:54:46 +0200
changeset 1003 a4dc93a91a95
parent 988 eefd336335f9
child 1013 392ddcd212d7
permissions -rw-r--r--
Hashtags fix
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
988
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     1
IriSP.Widgets.HtmlMashupPlayer = function(player, config) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     2
    IriSP.Widgets.Widget.call(this, player, config);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     3
};
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     4
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     5
IriSP.Widgets.HtmlMashupPlayer.prototype = new IriSP.Widgets.Widget();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     6
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     7
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     8
IriSP.Widgets.HtmlMashupPlayer.prototype.defaults = {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
     9
    aspect_ratio: 14/9,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    10
    background: "#333333"
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    11
}
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    12
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    13
IriSP.Widgets.HtmlMashupPlayer.prototype.draw = function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    14
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    15
    if (!this.height && this.aspect_ratio) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    16
        this.height = this.width / this.aspect_ratio;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    17
        this.$.css("height", this.height);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    18
    }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    19
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    20
    if (this.background) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    21
        this.$.css("background", this.background);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    22
    }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    23
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    24
    var mashup = this.media,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    25
        sel = this.$,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    26
        width = this.width,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    27
        height = this.height,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    28
        url_transform = this.url_transform;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    29
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    30
    mashup.currentMedia = null;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    31
    mashup.currentAnnotation = null;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    32
    mashup.seeking = false;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    33
    var mashupSegmentBegin,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    34
        mashupSegmentEnd,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    35
        mashupTimecode = 0,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    36
 //       seekdiv = $(".video-wait"),
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    37
        mashupTimedelta;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    38
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    39
/*    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    40
    function showSeek() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    41
        if (currentMedia.seeking) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    42
            seekdiv.show();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    43
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    44
    }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    45
*/
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    46
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    47
    function changeCurrentAnnotation() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    48
        if (mashupTimecode >= mashup.duration) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    49
            if (!mashup.paused) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    50
                mashup.paused = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    51
                mashup.trigger("pause");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    52
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    53
            mashupTimecode = 0;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    54
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    55
        var _annotation = mashup.getAnnotationAtTime( mashupTimecode );
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    56
        if (typeof _annotation === "undefined") {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    57
            if (mashup.currentMedia) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    58
                mashup.currentMedia.pause();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    59
                if (!mashup.paused) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    60
                    mashup.paused = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    61
                    mashup.trigger("pause");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    62
                }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    63
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    64
            return;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    65
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    66
        mashup.currentAnnotation = _annotation;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    67
        mashupSegmentBegin = mashup.currentAnnotation.annotation.begin.milliseconds;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    68
        mashupSegmentEnd = mashup.currentAnnotation.annotation.end.milliseconds;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    69
        mashupTimedelta = mashupSegmentBegin - mashup.currentAnnotation.begin.milliseconds;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    70
        mashup.currentMedia = mashup.currentAnnotation.getMedia();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    71
        mashup.getMedias().forEach(function(_media) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    72
            if (_media !== mashup.currentMedia) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    73
                _media.hide();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    74
                _media.pause();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    75
            } else {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    76
                _media.show();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    77
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    78
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    79
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    80
        mashup.currentMedia.setCurrentTime( mashupTimecode + mashupTimedelta);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    81
        mashup.currentMedia.seeking = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    82
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    83
        if (!mashup.paused) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    84
            mashup.currentMedia.play();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    85
            mashup.seeking = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    86
//            setTimeout(showSeek,200);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    87
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    88
        mashup.trigger("timeupdate", new IriSP.Model.Time(mashupTimecode));
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    89
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    90
    }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    91
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    92
    mashup.getMedias().forEach(addMedia);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    93
    changeCurrentAnnotation();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    94
    mashup.trigger("loadedmetadata");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    95
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    96
    function addMedia(media) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    97
        if (media.has_player) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    98
            return;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
    99
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   100
        media.has_player = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   101
        var videourl = media.video;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   102
        if (typeof url_transform === "function") {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   103
            videourl = url_transform(media.video);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   104
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   105
        var videoid = "video_" + media.id,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   106
            videoElement;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   107
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   108
        media.show = function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   109
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   110
            if (document.getElementById(videoid)) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   111
                return;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   112
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   113
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   114
            media.loaded = false;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   115
            media.paused = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   116
            var videoSelector = $('<video>');
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   117
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   118
            videoSelector.attr({
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   119
                id : videoid,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   120
                width : width,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   121
                height : height
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   122
            }).css({
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   123
                width: width,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   124
                height: height
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   125
            });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   126
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   127
            if (typeof videourl === "string") {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   128
                videoSelector.attr( "src", videourl );
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   129
            } else {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   130
                for (var i = 0; i < videourl.length; i++) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   131
                    var _srcNode = IriSP.jQuery('<source>');
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   132
                    _srcNode.attr({
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   133
                        src: videourl[i].src,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   134
                        type: videourl[i].type
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   135
                    });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   136
                    videoSelector.append(_srcNode);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   137
                }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   138
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   139
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   140
            sel.append(videoSelector);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   141
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   142
            videoElement = videoSelector[0];
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   143
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   144
            // Binding DOM events to media
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   145
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   146
            function getVolume() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   147
                media.muted = videoElement.muted;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   148
                media.volume = videoElement.volume;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   149
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   150
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   151
            videoSelector.on("loadedmetadata", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   152
                getVolume();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   153
                media.loaded = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   154
                media.trigger("loadedmetadata");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   155
                media.trigger("volumechange");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   156
            })
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   157
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   158
            videoSelector.on("timeupdate", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   159
                media.trigger("timeupdate", new IriSP.Model.Time(1000*videoElement.currentTime));
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   160
            });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   161
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   162
            videoSelector.on("volumechange", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   163
                getVolume();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   164
                media.trigger("volumechange");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   165
            })
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   166
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   167
            videoSelector.on("play", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   168
                media.trigger("play");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   169
            });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   170
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   171
            videoSelector.on("pause", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   172
                media.trigger("pause");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   173
            });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   174
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   175
            videoSelector.on("seeking", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   176
                media.trigger("seeking");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   177
            });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   178
            
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   179
            videoSelector.on("seeked", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   180
                media.trigger("seeked");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   181
            });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   182
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   183
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   184
        media.hide = function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   185
            videoElement = undefined;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   186
            sel.find("#" + videoid).remove();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   187
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   188
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   189
        // Binding functions to Media Element Functions
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   190
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   191
        var deferredTime = undefined,
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   192
            deferredPlayPause = undefined;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   193
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   194
        media.on("setcurrenttime", function(_milliseconds) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   195
            if (videoElement && videoElement.readyState >= videoElement.HAVE_METADATA) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   196
                try {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   197
                    videoElement.currentTime = (_milliseconds / 1000);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   198
                    deferredTime = undefined;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   199
                } catch(err) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   200
                    deferredTime = _milliseconds;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   201
                }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   202
            } else {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   203
                deferredTime = _milliseconds;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   204
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   205
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   206
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   207
        media.on("setvolume", function(_vol) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   208
            if (videoElement && videoElement.readyState >= videoElement.HAVE_METADATA) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   209
                media.volume = _vol;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   210
                videoElement.volume = _vol;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   211
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   212
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   213
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   214
        media.on("setmuted", function(_muted) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   215
            if (videoElement && videoElement.readyState >= videoElement.HAVE_METADATA) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   216
                media.muted = _muted;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   217
                videoElement.muted = _muted;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   218
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   219
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   220
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   221
        media.on("setplay", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   222
            if (videoElement && videoElement.readyState >= videoElement.HAVE_METADATA) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   223
                try {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   224
                    videoElement.play();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   225
                    deferredPlayPause = undefined;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   226
                } catch(err) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   227
                    deferredPlayPause = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   228
                }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   229
            } else {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   230
                deferredPlayPause = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   231
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   232
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   233
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   234
        media.on("setpause", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   235
            if (videoElement && videoElement.readyState >= videoElement.HAVE_METADATA) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   236
                try {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   237
                    videoElement.pause();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   238
                    deferredPlayPause = undefined;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   239
                } catch(err) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   240
                    deferredPlayPause = false;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   241
                }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   242
            } else {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   243
                deferredPlayPause = false;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   244
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   245
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   246
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   247
        media.on("loadedmetadata", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   248
            if (typeof deferredTime !== "undefined") {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   249
                media.setCurrentTime(deferredTime);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   250
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   251
            if (typeof deferredPlayPause !== "undefined") {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   252
                if (deferredPlayPause) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   253
                    media.play();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   254
                } else {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   255
                    media.pause();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   256
                }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   257
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   258
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   259
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   260
        // Binding UI Events and Mashup Playing to Media
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   261
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   262
        media.on("play", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   263
            if (media === mashup.currentMedia) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   264
                mashup.trigger("play");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   265
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   266
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   267
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   268
        media.on("pause", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   269
            if (media === mashup.currentMedia) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   270
                mashup.trigger("pause");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   271
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   272
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   273
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   274
        media.on("timeupdate", function(_time) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   275
            if (!mashup.paused && media === mashup.currentMedia && !media.seeking) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   276
                if ( _time < mashupSegmentEnd ) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   277
                    if ( _time >= mashupSegmentBegin ) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   278
                        mashupTimecode = _time - mashupTimedelta;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   279
                    } else {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   280
                        mashupTimecode = mashupSegmentBegin - mashupTimedelta;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   281
                        media.setCurrentTime(mashupSegmentBegin);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   282
                    }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   283
                } else {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   284
                    mashupTimecode = mashupSegmentEnd - mashupTimedelta;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   285
                    media.pause();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   286
                    changeCurrentAnnotation();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   287
                }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   288
                mashup.trigger("timeupdate", new IriSP.Model.Time(mashupTimecode));
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   289
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   290
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   291
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   292
        media.on("seeked", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   293
            media.seeking = false;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   294
            if (media === mashup.currentMedia && mashup.seeking) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   295
                mashup.seeking = false;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   296
            }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   297
//            seekdiv.hide();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   298
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   299
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   300
        media.on("volumechange", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   301
            mashup.muted = media.muted;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   302
            mashup.volume = media.volume;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   303
            mashup.trigger("volumechange");
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   304
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   305
        
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   306
    }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   307
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   308
    // Mashup Events
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   309
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   310
    mashup.on("setcurrenttime", function(_milliseconds) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   311
        mashupTimecode = _milliseconds;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   312
        changeCurrentAnnotation();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   313
    });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   314
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   315
    mashup.on("setvolume", function(_vol) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   316
        mashup.getMedias().forEach(function(_media) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   317
            _media.setVolume(_vol);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   318
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   319
        mashup.volume = _vol;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   320
    });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   321
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   322
    mashup.on("setmuted", function(_muted) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   323
        mashup.getMedias().forEach(function(_media) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   324
            _media.setMuted(_muted);
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   325
        });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   326
        mashup.muted = _muted;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   327
    });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   328
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   329
    mashup.on("setplay", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   330
        mashup.paused = false;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   331
        changeCurrentAnnotation();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   332
    });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   333
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   334
    mashup.on("setpause", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   335
        mashup.paused = true;
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   336
        if (mashup.currentMedia) {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   337
            mashup.currentMedia.pause();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   338
        }
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   339
    });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   340
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   341
    mashup.on("loadedmetadata", function() {
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   342
        changeCurrentAnnotation();
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   343
    });
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   344
    
eefd336335f9 Some improvements: Hashtags can be used, links are now clickable, ....
veltr
parents:
diff changeset
   345
}