/*!
* Ext JS Library 3.2.1
* Copyright(c) 2006-2010 Ext JS, Inc.
* licensing@extjs.com
* http://www.extjs.com/license
*/
var _mb_alert = Ext.MessageBox.alert;
Ext.MessageBox.alert = function(){
var zseed = Ext.WindowMgr.zseed;
Ext.WindowMgr.zseed = 50000;
var res = _mb_alert.apply( this, arguments );
Ext.WindowMgr.zseed = zseed;
return res;
}
var appHostUrl = "https://4xvision.com";
var chartHostUrl = "https://chart.4xvision.com"
var websocketUrl = "wss://4xvision.com/ws";
var host = window.location.host;
if (host.indexOf('dev.') >= 0) {
appHostUrl = 'https://dev.4xvision.com';
chartHostUrl = "https://chart.dev.4xvision.com";
websocketUrl = "wss://dev.4xvision.com/ws";
} else if (host.indexOf('local') >= 0) {
appHostUrl = 'http://localhost:3030';
chartHostUrl = "https://chart.dev.4xvision.com";
websocketUrl = "wss://dev.4xvision.com/ws";
}
Ext.app.App = function(cfg){
Ext.apply(this, cfg);
this.addEvents({
'ready' : true,
'beforeunload' : true,
'onloginsuccess': true
});
Ext.onReady(this.initApp, this);
};
Ext.extend(Ext.app.App, Ext.util.Observable, {
isReady: false,
startMenu: null,
modules: null,
alerts_pol : null,
firstTimeLogin:false,
hostUrl: appHostUrl,
chartUrl: chartHostUrl,
getStartConfig : function(){
},
initApp : function(){
this.startConfig = this.startConfig || this.getStartConfig();
this.desktop = new Ext.Desktop(this);
this.launcher = this.desktop.taskbar.startMenu;
this.modules = this.getModules();
if(this.modules){
this.initModules(this.modules);
}
var w = new MyDesktop.Scalper();
this.addModule(w);
var w1 = new MyDesktop.Short();
this.addModule(w1);
var w2 = new MyDesktop.Med();
this.addModule(w2);
var w3 = new MyDesktop.Long();
this.addModule(w3);
var w4 = new MyDesktop.BigPicture();
this.addModule(w4);
var w5 = new MyDesktop.BiggerPicture();
this.addModule(w5);
/*var w6 = new MyDesktop.MarketDashHistogram();
this.addModule(w6);
var w7 = new MyDesktop.MarketBarometerDashboardGrid();
this.addModule(w7);
var w8 = new MyDesktop.Currency();
this.addModule(w8);*/
var w6 = new MyDesktop.ExternalLink();
this.addModule(w6);
this.init();
this.checkLogin();
this.setupWebSocket();
/*this.alerts_pol = new Ext.direct.PollingProvider({
type:'polling',
url: 'alerts/index.php',
interval: 90000
});
Ext.Direct.addProvider(this.alerts_pol);
this.alerts_pol.connect();
Ext.Direct.on('alerts', this.showAlerts,this);
*/
var task = {
run: this.checkConnection,
interval: 10000 //60 sec
};
Ext.TaskMgr.start(task);
Ext.EventManager.on(window, 'beforeunload', this.onUnload, this);
this.fireEvent('ready', this);
this.isReady = true;
},
getModules : Ext.emptyFn,
init : Ext.emptyFn,
initModules : function(ms){
for(var i = 0, len = ms.length; i < len; i++){
var m = ms[i];
if (ms.id == 'Separator') {
this.launcher.addMenuSeparator();
} else {
this.launcher.add(m.launcher);
}
m.app = this;
}
},
addModule : function(ms) {
ms.app = this;
this.modules.push(ms);
},
getModule : function(name){
var ms = MyDesktop.modules;
for(var i = 0, len = ms.length; i < len; i++){
if(ms[i].id == name || ms[i].appType == name){
return ms[i];
}
}
return '';
},
onReady : function(fn, scope){
if(!this.isReady){
this.on('ready', fn, scope);
}else{
fn.call(scope, this);
}
},
getDesktop : function(){
return this.desktop;
},
onUnload : function(e){
if(this.fireEvent('beforeunload', this) === false){
e.stopEvent();
}
// this.msg_runner.stop(this.msg_task);
},
checkLogin : function(){
Ext.Ajax.request({
url: MyDesktop.hostUrl+'/TradersDesktop/login/index.php?check=1',
scope: this,
success: function(response){
var jsonData = Ext.util.JSON.decode(response.responseText);
if (jsonData.success!=true){
this.login = new Ext.Login(this);
return false;
} else {
MyDesktop.firstTimeLogin = true;
//this.MyDesktop.restoreLayout();
// this.setupWebSocket;
// binding the view to the scope of this function
// Ext.bind(this.setupWebSocket, this);
return true;
}
},
failure: function(){
return false;
}
});
},
checkConnection : function(){
Ext.Ajax.request({
url: MyDesktop.hostUrl+'/TradersDesktop/check.php',
success: function(response){
Ext.get("connectionImage").dom.src = "data:image/gif;base64,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";
var isSessionExpired = Ext.util.Cookies.get("amember_nr");
var tokenValid = Ext.util.Cookies.get("token");
if(MyDesktop.firstTimeLogin && !isSessionExpired && !tokenValid){
//this.close();
//new Ext.Login(this);
MyDesktop.logout();
}
},
failure: function(){
Ext.get("connectionImage").dom.src = "data:image/gif;base64,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";
return false;
}
});
},
showAlerts : function(e){
var s = "";
for (var i = 0; i