Your IP : 18.219.40.177


Current Path : /usr/local/mgr5/skins/orion/src/
Upload File :
Current File : //usr/local/mgr5/skins/orion/src/App.LoadScripts.js

/**
 * LOad required modules
 *  @param {object} window  global object
 *  @param {function} $ jQuery library
 *  @param {object} EventMgr EventMgr library
 *  @param {object} App Application
 */
App.LoadScripts = function(window, $, EventMgr, App) {
  'use strict';
  var init = function() {
    //EventMgr.bind('loadPage', forceLoadScripts);
    EventMgr.bind('gotAnyChartXML', setAnyChartXML);
    EventMgr.bind('required', required);
    EventMgr.one('loadACHTML5', loadACHTML5);
  },

      loadACHTML5 = function() {
        required(pageInfo.host + pageInfo.theme + 'AnyChart.js', runQueue, '');
        required(pageInfo.host + pageInfo.theme +
            'AnyChartHTML5.js', runQueue, '');
      },

      runQueue = function() {
        if (window.AnyChart !== undefined &&
            window.anychart.render !== undefined) {
          AnyChart.renderingType = anychart.RenderingType.SVG_ONLY;
          EventMgr.trigger('runQueue');
        } else {
          setTimeout(function() {
            runQueue();
          }, 250);
        }
      },

      required = function(file, callback, param) {
        var script = document.getElementsByTagName('script')[0],
            newjs = document.createElement('script');

        newjs.onreadystatechange = function() {
          if (newjs.readyState === 'loaded' ||
              newjs.readyState === 'complete') {
            newjs.onreadystatechange = null;
            callback(param);
            param = null;
            file = null;
          }
        };

        newjs.onload = function() {
          callback(param);
          param = null;
          file = null;
        };

        newjs.src = file;
        script.parentNode.insertBefore(newjs, script);
      },

      forceLoadScripts = function() {
        if (App.Global.anychartXML === null) {
          var url = pageInfo.host + pageInfo.theme + 'anychart.xml';
          EventMgr.trigger('ajaxRequest', {
            url: url,
            trfunc: 'gotAnyChartXML',
            outtype: 'html',
            type: 'get',
            queue: 'anychartxml' });
        }
      },

      setAnyChartXML = function(e, data) {
        App.Global.anychartXML = data;
      };

  return {
    init: init
  };
}(window, $, EventMgr, App);