20 if (typeof window.tracemanager === "undefined") { |
20 if (typeof window.tracemanager === "undefined") { |
21 console.log("Tracemanager not found"); |
21 console.log("Tracemanager not found"); |
22 return; |
22 return; |
23 } |
23 } |
24 var _this = this, |
24 var _this = this, |
25 _listeners = { |
25 _mdplisteners = { |
26 "IriSP.search.open" : 0, |
26 "search.open" : 0, |
27 "IriSP.search.closed" : 0, |
27 "search.closed" : 0, |
28 "IriSP.search" : 0, |
28 "search" : 0, |
29 "IriSP.search.cleared" : 0, |
29 "search.cleared" : 0, |
30 "IriSP.search.matchFound" : 0, |
30 "search.matchFound" : 0, |
31 "IriSP.search.noMatchFound" : 0, |
31 "search.noMatchFound" : 0, |
32 "IriSP.search.triggeredSearch" : 0, |
32 "search.triggeredSearch" : 0, |
33 "IriSP.TraceWidget.MouseEvents" : 0, |
33 "TraceWidget.MouseEvents" : 0 |
|
34 } |
|
35 _medialisteners = { |
34 "play" : 0, |
36 "play" : 0, |
35 "pause" : 0, |
37 "pause" : 0, |
36 "volumechange" : 0, |
38 "volumechange" : 0, |
37 "seeked" : 0, |
39 "seeked" : 0, |
38 "play" : 0, |
40 "play" : 0, |
39 "pause" : 0, |
41 "pause" : 0, |
40 "timeupdate" : 2000 |
42 "timeupdate" : 2000 |
41 }; |
43 }; |
42 IriSP._(_listeners).each(function(_ms, _listener) { |
44 IriSP._(_mdplisteners).each(function(_ms, _listener) { |
43 var _f = function(_arg) { |
45 var _f = function(_arg) { |
44 _this.eventHandler(_listener, _arg); |
46 _this.eventHandler(_listener, _arg); |
45 } |
47 } |
46 if (_ms) { |
48 if (_ms) { |
47 _f = IriSP._.throttle(_f, _ms); |
49 _f = IriSP._.throttle(_f, _ms); |
48 } |
50 } |
49 _this.player.popcorn.listen(_listener, _f); |
51 _this.onMdpEvent(_listener, _f); |
|
52 }); |
|
53 IriSP._(_medialisteners).each(function(_ms, _listener) { |
|
54 var _f = function(_arg) { |
|
55 _this.eventHandler(_listener, _arg); |
|
56 } |
|
57 if (_ms) { |
|
58 _f = IriSP._.throttle(_f, _ms); |
|
59 } |
|
60 _this.media.on(_listener, _f); |
50 }); |
61 }); |
51 |
62 |
52 if (!this.tracer) { |
63 if (!this.tracer) { |
53 |
64 |
54 this.tracer = window.tracemanager.init_trace("test", { |
65 this.tracer = window.tracemanager.init_trace("test", { |
89 _data.value = _value; |
100 _data.value = _value; |
90 } |
101 } |
91 switch(_e.type) { |
102 switch(_e.type) { |
92 case "mouseover": |
103 case "mouseover": |
93 if (_this.lastTarget != _lastTarget) { |
104 if (_this.lastTarget != _lastTarget) { |
94 _this.player.popcorn.trigger('IriSP.TraceWidget.MouseEvents', _data); |
105 _this.player.trigger('TraceWidget.MouseEvents', _data); |
95 } else { |
106 } else { |
96 if (typeof _this.moTimeout != "undefined") { |
107 if (typeof _this.moTimeout != "undefined") { |
97 clearTimeout(_this.moTimeout); |
108 clearTimeout(_this.moTimeout); |
98 _this.moTimeout = undefined; |
109 _this.moTimeout = undefined; |
99 } |
110 } |
103 if (typeof _this.moTimeout != "undefined") { |
114 if (typeof _this.moTimeout != "undefined") { |
104 clearTimeout(_this.moTimeout); |
115 clearTimeout(_this.moTimeout); |
105 } |
116 } |
106 _this.moTimeout = setTimeout(function() { |
117 _this.moTimeout = setTimeout(function() { |
107 if (_lastTarget != _this.lastTarget) { |
118 if (_lastTarget != _this.lastTarget) { |
108 _this.player.popcorn.trigger('IriSP.TraceWidget.MouseEvents', _data); |
119 _this.player.trigger('TraceWidget.MouseEvents', _data); |
109 } |
120 } |
110 },100); |
121 },100); |
111 break; |
122 break; |
112 default: |
123 default: |
113 _this.player.popcorn.trigger('IriSP.TraceWidget.MouseEvents', _data); |
124 _this.player.trigger('TraceWidget.MouseEvents', _data); |
114 } |
125 } |
115 _this.lastTarget = _lastTarget; |
126 _this.lastTarget = _lastTarget; |
116 }); |
127 }); |
117 } |
128 } |
118 |
129 |
128 case 'IriSP.TraceWidget.MouseEvents': |
139 case 'IriSP.TraceWidget.MouseEvents': |
129 _traceName += _arg.widget + '_' + _arg.type; |
140 _traceName += _arg.widget + '_' + _arg.type; |
130 delete _arg.widget; |
141 delete _arg.widget; |
131 delete _arg.type; |
142 delete _arg.type; |
132 break; |
143 break; |
133 case 'timeupdate': |
|
134 case 'play': |
144 case 'play': |
135 case 'pause': |
145 case 'pause': |
136 _arg.time = this.player.popcorn.currentTime() * 1000; |
146 _arg.milliseconds = this.media.getCurrentTime().milliseconds; |
|
147 case 'timeupdate': |
137 case 'seeked': |
148 case 'seeked': |
138 case 'volumechange': |
149 case 'volumechange': |
139 _traceName += 'Popcorn_' + _listener; |
150 _traceName += 'media_' + _listener; |
140 break; |
151 break; |
141 default: |
152 default: |
142 _traceName += _listener.replace('IriSP.','').replace('.','_'); |
153 _traceName += _listener.replace('.','_'); |
143 } |
154 } |
144 this.lastEvent = _traceName; |
155 this.lastEvent = _traceName; |
145 if (typeof this.extend === "object" && this.extend) { |
156 if (typeof this.extend === "object" && this.extend) { |
146 IriSP._(_arg).extend(this.extend); |
157 IriSP._(_arg).extend(this.extend); |
147 } |
158 } |