﻿
//setTimeout("flipClassName(timediv)",1000);

//alert ('test');

var time =1; //time in seconds
var interval = time * 1000 * 60;
var i=0;
var handleOpenCloseMarket=false;
var timeToOpenCounter = 60;
var oldSecond = 0;
var waitingOpenOrClose = "NoWaiting";


preloadImages( '../shared/img/banner_bg_i.png', 'img/gen/tab_newsletter.jpg', 'img/gen/market_watch_i.jpg', 'img/gen/open_account_i.jpg', 'img/gen/e_trade_i.jpg', 'img/gen/egyption_stock_exchange_i.jpg', 'img/gen/cnbc_tab_i.jpg', 'img/gen/feedback_tab_i.jpg', 'img/gen/call_center_tab_i.jpg', 'img/gen/tap_pdf_i.gif', 'img/gen/tab_external_news.gif', 'img/gen/bttn_calculate.gif', 'img/gen/rss.gif', 'img/gen/heading_qsc_brief_history.gif', 'img/gen/heading_news.gif', 'img/gen/heading_commission_calc.gif', 'img/gen/city_new_york.gif', 'img/gen/city_london.gif', 'img/gen/city_doha.gif', 'img/gen/city_tokyo.gif', 'img/gen/icon_pdf.gif'); 

function preloadImages()
{
  var args = preloadImages.arguments;
  document.imageArray = new Array(args.length);
  for(var i=0; i<args.length; i++)
  {
    document.imageArray[i] = new Image;
    document.imageArray[i].src = args[i];	
  }
}

onload=function()
{
	var elem = "<div id='alarmDIV' class='alarmDIV' style='display:none;'></div>";
	$("body").prepend(elem);
	
	startTimer();
    openCloseMarket();	
}

function startTimer() {
    $.post("inc/ajax_process.php", {
        action: "getTime",
        handleOCMarket: handleOpenCloseMarket        
    }, function (xml) {
        hndlTimer(xml);
    });
    setTimeout("startTimer()", interval);    
}

function hndlTimer(xml)
{
    $("span#TimeTokyo").html($("timeTokyo", xml).text());
    $("span#TimeLondon").html($("timeLondon", xml).text());
    $("span#TimeNY").html($("timeNewyork", xml).text());
    $("span#TimeDoha").html($("timeDoha", xml).text());
    $("span#TimeDohaFull").html($("timeDohafull", xml).text());
        
    if(handleOpenCloseMarket)
    {
        $mStatus = $("mStatus",xml).text();        
        tmpMarketStatus        = $("marketStatus", xml).text();
        tmpCoundDown        = $("countDown", xml).text();     
        timeToOpen        = $("timeToOpen", xml).text();
        timeToClose        = $("timeToClose", xml).text();
        setupMarketStatus(tmpMarketStatus, tmpCoundDown, timeToOpen, timeToClose);
        //alert(tmpCoundDown);
    }
    
}

function replaceLabel(val)
{
	var objLabel1		=document.getElementById('lblPayOff');
	var objCommission	= document.getElementById("txtCommission");
	var objTotPay		= document.getElementById("txtPay");
	var objQuantity		= document.getElementById("txtShareQuantity");
	var objPrice		= document.getElementById("txtPrice");
	
	if(val=="BUY")
	{
		objLabel1.innerHTML="إجمالى المدفوع";
		if(objQuantity.value != "" && objPrice.value != "")
		getCommission();
	}
	else
	{
		objLabel1.innerHTML="إجمالى المحصل";
		if(objQuantity.value != "" && objPrice.value != "")
		getCommission();
	}
}

function getCommission() {    
    var objQuantity        = document.getElementById("txtShareQuantity");
    var objPrice        = document.getElementById("txtPrice");
    var objAction        = document.frmCommCal.rdoSellBuy;
    var objCommission    = document.getElementById("txtCommission");
    var objTotPay        = document.getElementById("txtPay");
               
    if (objAction[0].checked)
    {
        action=objAction[0].value;
    }
    else if (objAction[1].checked)
    {
        action=objAction[1].value;
    }
    
    quentity=objQuantity.value;
    totalPrice=objPrice.value;    
    if(isNaN(quentity) || quentity < 1)
    {
        objQuantity.select();
        alert("Please enter valid quantity.");    
    }
    else if(isNaN(totalPrice) || totalPrice < 1)
    {
        objPrice.select();
        alert("Please enter valid price.");    
    }
    else
    {
        document.getElementById('block_15').style.display="block";
        $.post("inc/ajax_process.php", {
            action: "calcComm",
            Quantity: $("#txtShareQuantity").val(),
            Price: $("#txtPrice").val(),
            Act: action
        }, function (xml) {
            hndlCommission(xml);
        });
    }
}

function hndlCommission(xml)
{
    document.getElementById('block_15').style.display="none";
    $("#txtCommission").val($("commAmount", xml).text());
    $("#txtPay").val($("toalPay", xml).text());    
}

function openCloseMarket()
{
	/* 
	 The variables used in this function
	 (1)marketStatus (2)marketReason
	 are defined and assigned in CONTROLS.PHP file's PHP Function << insert_count_down() >>
  	*/
	setupMarketStatus(marketStatus, marketReason, 0, 0);
}

function setupMarketStatus(newMarketStatus, newCountDown, toOpen, toClose)
{
    var objLblMarketStatus=document.getElementById('lblMarketStatus');
    var objLblCountDown=document.getElementById('lblCountDown');
    var objLbllblCountDownTime=document.getElementById('lblCountDownTime');
    var objTdCountDown=document.getElementById('tdCountDown');
    var objTblCoundDown=document.getElementById('tblCoundDown');
    
    //alert(marketStatus);
    
    objTblCoundDown.style.visibility="hidden";    
    if(toOpen >=0 && toOpen < 60)
    {
        //waitingOpenOrClose = "NoWaiting";
    }
    if(toClose >=0 && toClose < 150)
    {
        //runCoundownTimer = true;
        objLbllblCountDownTime.style.display = "block";
    }
    
    if(newMarketStatus=='OPENED' && (waitingOpenOrClose == "Open" || waitingOpenOrClose == "Close"))
    {
        objTdCountDown.style.display="inline";
        objLblMarketStatus.innerHTML="مفتوح";
        handleOpenCloseMarket=true;
    }   
    else if(newMarketStatus=='OPENED')
    {          
        objTdCountDown.style.display="none";
        objLblMarketStatus.innerHTML="مفتوح";        
        handleOpenCloseMarket=true;
    }   
    else if(newMarketStatus=='PRETIME')
    {
        objTdCountDown.style.display="inline";
        objLblMarketStatus.innerHTML="مغلق";
        objLblCountDown.innerHTML="";
        if(toOpen >=0 && toOpen < 30 && waitingOpenOrClose == "Open")
            objLblCountDown.innerHTML="الوقت للإفتتاح";
        else if(toOpen > 29 && toOpen < 60 && waitingOpenOrClose == "Open")
            objLblCountDown.innerHTML="الوقت لما قبل الإفتتاح";
        else
        {
            objLblCountDown.innerHTML="";
            objTdCountDown.style.display="none";
        }
        handleOpenCloseMarket=true;
    }
    else if(newCountDown != "DOALARM" && newCountDown != "NOALARM")
    {
        objTdCountDown.style.display="inline";
        objLblMarketStatus.innerHTML="مغلق";
        objLblCountDown.innerHTML=newCountDown;
        handleOpenCloseMarket=false;
    }
    else
    {
        objTdCountDown.style.display="none";
        objLblMarketStatus.innerHTML="مغلق";
        //objLblCountDown.innerHTML="Pre&nbsp;Time";
        handleOpenCloseMarket=false;
    }
    if(timeToOpen != "" && timeToOpen >= 0 && runCoundownTimer)
    {       
       objLbllblCountDownTime.innerHTML = timeToOpen + ":" + --timeToOpenCounter;
       timeToOpenCounter = 59;
       waitingOpenOrClose = "Open";
       objLblCountDown.className = "lblCountDownCS2";
       runCoundDownTimer();
    }
    else if(timeToClose != "" && timeToClose >= 0 && runCoundownTimer)
    {
        objLbllblCountDownTime.innerHTML = timeToClose + ":" + --timeToOpenCounter;
        timeToOpenCounter = 59;
        waitingOpenOrClose = "Close";
        objLblCountDown.className = "lblCountDownCS2";
        runCoundDownTimer();
    }
    else
    {
        waitingOpenOrClose = "NoWaiting";
        objLblCountDown.className = "lblCountDownCS1";
        objLblCountDown.style.display = "block";
        objLbllblCountDownTime.style.display = "none";
    }
    
    objTblCoundDown.style.visibility="visible";
    
    // making alarm
    if(newCountDown == "DOALARM" && newMarketStatus=='OPENED' && playAlarmOpen == 1)
    {        
        alarmAction("start");     
    }
    else if(newCountDown == "DOALARM" && newMarketStatus=='PRETIME' && playAlarmClose == 1)
    {
        alarmAction("start");       
    }
}

function runCoundDownTimer()
{
    var objLbllblCountDownTime=document.getElementById('lblCountDownTime');
    var objLblMarketStatus=document.getElementById('lblMarketStatus');
    var objLblCountDown=document.getElementById('lblCountDown');
    
    var now = new Date();
    var seconds = now.getSeconds();   
    var minutes = now.getMinutes(); 
    
    if(oldSecond != 0)
    {
        secDiff = ((minutes*60) + seconds) - oldSecond ;
    }
    else
    {
        secDiff = 1;
    }
    
    timeToOpenCounter = timeToOpenCounter - secDiff;
    if(waitingOpenOrClose == "Open")
    {
        if(timeToOpen >= 0 && timeToOpen < 30)
            objLbllblCountDownTime.innerHTML = "00:" + (getFullDoubleNumber(timeToOpen)) + ":" + getCondownSecond(timeToOpenCounter);
        else if(timeToOpen > 29 && timeToOpen < 60)
            objLbllblCountDownTime.innerHTML = "00:" + (getFullDoubleNumber(timeToOpen-30)) + ":" + getCondownSecond(timeToOpenCounter);
        else
            objLblCountDown.innerHTML = "";
    }
    else if(waitingOpenOrClose == "Close")
    {
        objLblCountDown.innerHTML = ("الوقت للإغلاق");
        if(timeToClose > 59)
        {
            hh = Math.floor(timeToClose/60);
            ss = timeToClose%60;
            objLbllblCountDownTime.innerHTML = getFullDoubleNumber(hh) + ":" + (getFullDoubleNumber(ss)) + ":" + getCondownSecond(timeToOpenCounter);
        }
        else
        {
            objLbllblCountDownTime.innerHTML = "00:" + (getFullDoubleNumber(timeToClose)) + ":" + getCondownSecond(timeToOpenCounter);
        }
    }
    
    oldSecond = (minutes*60) + seconds;
    var countdownTimer = setTimeout("runCoundDownTimer()", 1000);
}

function getCondownSecond(val)
{
    val = val+ "";    
    if(val <= 0)
    {
        return "00";
    }
    else if(val > 59)
    {
        return "59";
    }
    else if(val.length == 1)
    {
        return "0" + val;
    }
    else
    {
        return val;
    }
}
function getFullDoubleNumber(val)
{
    val = val + "";
    if(val.length == 1)
    {
        return "0" + val + "";
    }
    else
    {
        return val;
    }
}

function alarmAction(action)
{
    if(action == "start")
    {
		attachFlashAlarm();
        $("#alarmDIV").fadeIn("slow");		
        var actionTimer = setTimeout("alarmAction('stop')", 4000);
    }
    else
    {
		removeFlashAlartm();
        $("#alarmDIV").fadeOut("slow");
    }    
}

function attachFlashAlarm()
{
	objAlarm=new Object
    objAlarm.movie="../shared/swf/alarm1.swf"
    objAlarm.quality="high"
    objAlarm.wmode="transparent"
    objAlarm.width=130
    objAlarm.height=140
    objAlarm.version="8,0,0,0"
    objAlarm.bgcolor="#ffffff"    
    commitFlashObject(objAlarm,"alarmDIV")
}
function removeFlashAlartm()
{
	objAlarm = null;
	$("div#alarmDIV").html("");
}