src/widgets/Trace.js
changeset 1013 392ddcd212d7
parent 990 6a90c96f0b4c
child 1033 c20df1c080e6
equal deleted inserted replaced
1012:7e18d953a1f8 1013:392ddcd212d7
     1 IriSP.Widgets.Trace = function(player, config) {
     1 IriSP.Widgets.Trace = function(player, config) {
     2   IriSP.Widgets.Widget.call(this, player, config);
     2   IriSP.Widgets.Widget.call(this, player, config);
     3     
     3     
     4 }
     4 };
     5 
     5 
     6 IriSP.Widgets.Trace.prototype = new IriSP.Widgets.Widget();
     6 IriSP.Widgets.Trace.prototype = new IriSP.Widgets.Widget();
     7 
     7 
     8 IriSP.Widgets.Trace.prototype.defaults = {
     8 IriSP.Widgets.Trace.prototype.defaults = {
     9     js_console : false,
     9     js_console : false,
    11     requestmode: 'GET',
    11     requestmode: 'GET',
    12     syncmode: "sync",
    12     syncmode: "sync",
    13     default_subject: "IRI",
    13     default_subject: "IRI",
    14     tracer: null,
    14     tracer: null,
    15     extend: false
    15     extend: false
    16 }
    16 };
    17 
    17 
    18 IriSP.Widgets.Trace.prototype.draw = function() {
    18 IriSP.Widgets.Trace.prototype.draw = function() {
    19   if (typeof window.tracemanager === "undefined") {
    19   if (typeof window.tracemanager === "undefined") {
    20       console.log("Tracemanager not found");
    20       console.log("Tracemanager not found");
    21       return;
    21       return;
    35         "search-cleared": 0
    35         "search-cleared": 0
    36     };
    36     };
    37     IriSP._(_medialisteners).each(function(_ms, _listener) {
    37     IriSP._(_medialisteners).each(function(_ms, _listener) {
    38         var _f = function(_arg) {
    38         var _f = function(_arg) {
    39             _this.eventHandler(_listener, _arg);
    39             _this.eventHandler(_listener, _arg);
    40         }
    40         };
    41         if (_ms) {
    41         if (_ms) {
    42             _f = IriSP._.throttle(_f, _ms);
    42             _f = IriSP._.throttle(_f, _ms);
    43         }
    43         }
    44         _this.media.on(_listener, _f);
    44         _this.media.on(_listener, _f);
    45     });
    45     });
    46     var _annotations = this.source.getAnnotations();
    46     var _annotations = this.source.getAnnotations();
    47     IriSP._(_annlisteners).each(function(_ms, _listener) {
    47     IriSP._(_annlisteners).each(function(_ms, _listener) {
    48         var _f = function(_arg) {
    48         var _f = function(_arg) {
    49             _this.eventHandler(_listener, _arg);
    49             _this.eventHandler(_listener, _arg);
    50         }
    50         };
    51         if (_ms) {
    51         if (_ms) {
    52             _f = IriSP._.throttle(_f, _ms);
    52             _f = IriSP._.throttle(_f, _ms);
    53         }
    53         }
    54         _annotations.on(_listener, _f);
    54         _annotations.on(_listener, _f);
    55     });
    55     });
    91         if (typeof _value == "string" && _value.length) {
    91         if (typeof _value == "string" && _value.length) {
    92             _data.value = _value;
    92             _data.value = _value;
    93         }
    93         }
    94         _this.eventHandler('UIEvent', _data);
    94         _this.eventHandler('UIEvent', _data);
    95     });
    95     });
    96 }
    96 };
    97 
    97 
    98 IriSP.Widgets.Trace.prototype.eventHandler = function(_listener, _arg) {
    98 IriSP.Widgets.Trace.prototype.eventHandler = function(_listener, _arg) {
    99     var _traceName = 'Mdp_';
    99     var _traceName = 'Mdp_';
   100     if (typeof _arg == "string" || typeof _arg == "number") {
   100     if (typeof _arg == "string" || typeof _arg == "number") {
   101         _arg = { "value" : _arg }
   101         _arg = { "value" : _arg };
   102     }
   102     }
   103     if (typeof _arg == "undefined") {
   103     if (typeof _arg == "undefined") {
   104         _arg = {}
   104         _arg = {};
   105     }
   105     }
   106     switch(_listener) {
   106     switch(_listener) {
   107         case 'UIEvent':
   107         case 'UIEvent':
   108             _traceName += _arg.widget + '_' + _arg.type;
   108             _traceName += _arg.widget + '_' + _arg.type;
   109             delete _arg.widget;
   109             delete _arg.widget;
   125     }
   125     }
   126     this.tracer.trace(_traceName, _arg);
   126     this.tracer.trace(_traceName, _arg);
   127     if (this.js_console && typeof window.console !== "undefined" && typeof console.log !== "undefined") {
   127     if (this.js_console && typeof window.console !== "undefined" && typeof console.log !== "undefined") {
   128         console.log("tracer.trace('" + _traceName + "', " + JSON.stringify(_arg) + ");");
   128         console.log("tracer.trace('" + _traceName + "', " + JSON.stringify(_arg) + ");");
   129     }
   129     }
   130 }
   130 };