﻿function focusButton() {
    var obj1 = document.getElementById(btnNext);
    var obj2 = document.getElementById(btnBet);

    if (obj1 != null) {
        obj1.focus();
        return;
    }

    if (obj2 != null) {
        obj2.focus();
        return;
    }
}

function FocusSubmitButtonOnEnter() {
    if ((window.event && window.event.keyCode == 13) || (event.which && event.which == 13)) {
        focusButton();
        return false;
    }

    return true;
}
function TK(cbox) {
    totArgs = TK.arguments.length;
    for (var i = 0; i < totArgs; i++) {
        document.forms[0].Compchoice[TK.arguments[i]].checked = (!document.forms[0].Compchoice[TK.arguments[i]].checked);
    }

}

function CheckCompBySport(sportid, obj) {

    if (obj.checked == true) {
        $('input:checkbox[name=Compchoice]').each(function() {
            if (this.sportid == sportid) {
                this.checked = true;
            }
        });
    }
    else {
        $('input:checkbox[name=Compchoice]').each(function() {
            if (this.sportid == sportid) {
                this.checked = false;
            }
        });
    }


}

function CheckAllMarkets(obj) {
    if (obj.checked == true) {
        $('input:checkbox[name=HeaderOddsGroup]').each(function() {
            this.checked = true;
        });
    }
    else {
        $('input:checkbox[name=HeaderOddsGroup]').each(function() {
            this.checked = false;
        });
    }
}

function nz(n) {
    var v = parseFloat(n);
    if (isNaN(v)) {
        return 0;
    }
    else {
        return v;
    }
}
function fmt(n) {
    var s, r, p;
    s = "" + Math.floor(n * 100.0 + .5);
    r = "." + s.slice(s.length - 2);
    s = s.slice(0, -2);
    if (s.length > 3) {
        r = s.slice(s.length - 3) + r;
    }
    else {
        r = s + r;
    }
    s = s.slice(0, -3);
    while (s.length > 0) {
        p = s.length <= 3 ? 0 : s.length - 3;
        r = s.slice(p) + "," + r;
        s = s.slice(0, -3);
    }
    r = replaceChars(r, ",", "");
    if (r == ".0")
        r = 0;
    return r;
}

function GotoPage(location) {
    document.location.href = location;
}

// Added by Sabari on 02 Aug 08 to add events from javascript to server sessions
var blnIsComp;
function SelfPost() {
    if (blnIsComp == true) {
        document.getElementById(hdnAddEvent).value = "addevent";
        document.forms[0].submit();

    }
}

var MIN_STK;
var gIntID = 0;
var selectedOdds = new Array();
// Updated by Sabari on 23 Dec 09 to limit the no of bets to 2000
var cns = new Array(new Array(1, 1), new Array(2, 2), new Array(3, 3), new Array(4, 6), new Array(5, 10), new Array(6, 15, 20), new Array(7, 21, 35), new Array(8, 28, 56, 70), new Array(9, 36, 84, 126), new Array(10, 45, 120, 210, 252), new Array(11, 55, 165, 330, 462), new Array(12, 66, 220, 495, 792, 924), new Array(13, 78, 286, 715, 1287, 1716), new Array(14, 91, 364, 1001), new Array(15, 105, 455, 1365), new Array(16, 120, 560, 1820), new Array(17, 136, 680), new Array(18, 153, 816), new Array(19, 171, 969), new Array(20, 190, 1140), new Array(21, 210, 1330), new Array(22, 231, 1540), new Array(23, 253, 1771), new Array(24, 276), new Array(25, 300), new Array(26, 325), new Array(27, 351), new Array(28, 378), new Array(29, 406), new Array(30, 435), new Array(31, 465), new Array(32, 496), new Array(33, 528), new Array(34, 561), new Array(35, 595));
//var cns = new Array(new Array(1, 1), new Array(2, 2), new Array(3, 3), new Array(4, 6), new Array(5, 10), new Array(6, 15, 20), new Array(7, 21, 35), new Array(8, 28, 56, 70), new Array(9, 36, 84, 126), new Array(10, 45, 120, 210, 252), new Array(11, 55, 165, 330, 462), new Array(12, 66, 220, 495, 792, 924), new Array(13, 78, 286, 715, 1287, 1716), new Array(14, 91, 364, 1001, 2002, 3003, 3432), new Array(15, 105, 455, 1365, 3003, 5005, 6435), new Array(16, 120, 560, 1820, 4368, 8008), new Array(17, 136, 680, 2380, 6188), new Array(18, 153, 816, 3060, 8568), new Array(19, 171, 969, 3876), new Array(20, 190, 1140, 4845), new Array(21, 210, 1330, 5985), new Array(22, 231, 1540, 7315), new Array(23, 253, 1771, 8855), new Array(24, 276, 2024), new Array(25, 300, 2300), new Array(26, 325, 2600), new Array(27, 351, 2925), new Array(28, 378, 3276), new Array(29, 406, 3654), new Array(30, 435, 4060), new Array(31, 465, 4495), new Array(32, 496, 4960), new Array(33, 528, 5456), new Array(34, 561, 5984), new Array(35, 595, 6545));
var sysBetArray = new Array();
var topSplit = "|";
var bottomSplit = "@";
var isColumnBet = false;

// Added by Sabari on 29 Nov 08 to get the count of unique events for Column Bet
var ColumnBetCount = 0;
var BSlip_CompID = "";
var BSlipEventCnt = 0;
var betPSummary = "";

// Updated by Sabari on 05 Feb 09 to make the column bet arrary publically available
var colArrWinPlus = new Array();

function getWinnnings(winnings) {
    var maximumWinnings = parseFloat(document.getElementById(JS_MAXWINNINGSHD).value);
    return (winnings < maximumWinnings) ? winnings : maximumWinnings;
}

function clearSlip() {
    ClearSelectedOdds();
    selectedOdds = new Array();
    sysBetArray = new Array();
    gIntID = 0;

    var tbody = document.getElementById("tableSlip").getElementsByTagName("tbody")[0];
    while (tbody.childNodes.length != 0) {
        tbody.removeChild(document.getElementById(tbody.childNodes[0].id));
    }
    document.getElementById("comboStake").innerHTML = "";
    calcSys();
    //document.forms[0].reset();
    // Ajax Call
    document.getElementById(eventsArr).value = "";
    document.getElementById(sysArr).value = "";
    SendHttpRequest();
    // Added by Sabari on 11 Aug 2008 to clear bonus and other details when the slip is cleared

    document.getElementById("bonusperc").innerHTML = 0; // Clear bonus perc if they dont qualify
    document.getElementById("maxWinbonus").innerHTML = 0; // Clear bonus perc if they dont qualify
    document.getElementById("bonusvalue").innerHTML = 0;

    if (isColumnBet) {
        document.getElementById("minbonusvalue").innerHTML = 0; // Clear bonus perc if they dont qualify
        document.getElementById("minWinbonus").innerHTML = 0; // Clear bonus perc if they dont qualify
    }

    isColumnBet = false;

    window.event.returnValue = false; // Prevent a postback to server.
    return false;
}

function clearSlipAmts() {
    var inputs = document.getElementsByTagName("input");
    for (var i = 0; i < inputs.length; i++)
        if ((inputs.item(i).name.indexOf("_sys_comb_") != -1) || (inputs.item(i).name.indexOf("sStake") != -1))
        inputs.item(i).value = "0";
    for (var j = 0; j < sysBetArray.length; j++)
        sysBetArray[j].stake = 0;

    calcSys();

    // Added by Sabari on 04 Aug to prevent posting to server
    window.event.returnValue = false;
    return false;
}
function getSlip() {

    // Updated by Sabari on 31 July to check and load the previous selected events

    /*
    // Updated by Sabari on 14 Aug 08 to prevent load previous selections
    var sel = document.getElementById(hdnComp).value;

    if(sel != '')
    {
    if(document.forms[0].Compchoice != undefined)
    {
    for (var i = 0; i < document.forms[0].Compchoice.length; i++)
    {
    if(sel.indexOf(document.forms[0].Compchoice[i].value) != -1 )
    {
    document.forms[0].Compchoice[i].checked = true;
    }
             
    }
    }
    }
    */

    if (document.getElementById(mode) != null) {
        if (document.getElementById(mode).value == "SUM") {
            window_onload();
        }
        //if (document.getElementById(eventsArr).value != "" && document.getElementById(mode).value == "EL")
        if (document.getElementById(eventsArr).value != "") {
            var eventStr = document.getElementById(eventsArr).value;
            var eventArr, selArray, b, s;
            selArray = eventStr.split(topSplit);
            var anEvt;
            for (var i = 0; i < selArray.length - 1; i++) {
                eventArr = selArray[i].split(bottomSplit);
                b = false;
                s = false;
                if (eventArr[2] == "true")
                    b = true;
                if (eventArr[3] == "true")
                    s = true;
                anEvt = new events("0", eventArr[1], eventArr[5], b, s, eventArr[4], eventArr[6], eventArr[7], eventArr[0], eventArr[8], eventArr[9], eventArr[10], eventArr[11], eventArr[12], eventArr[13], eventArr[14], eventArr[15], eventArr[16]);
                selectedOdds[selectedOdds.length] = anEvt;
                createHtmlElement(eventArr[4], eventArr[5], eventArr[1], eventArr[8], eventArr[0], b, s, eventArr[9], eventArr[12], eventArr[14]);
                result = result + eventArr[13] + "-";
            }
            if (!cmp()) {
                document.getElementById("comboStake").innerHTML = "<font color=red>" + document.forms[0].JS_ERR2.value + "</font>";
                return;
            }
            // Updated by Sabari on 20 Aug 08 to prevent loading the stake values
            /* alert(document.getElementById(sysArr).value)
            if (document.getElementById(sysArr).value != "")
            {
            setStake();    
      
          if (document.forms[0].sStake != null)
            {
            document.forms[0].sStake.value = document.getElementById(spc).value;
            document.forms[0].sStake_Ttl.value = fmt(document.getElementById(spc).value * GetSysBetLength());
            }
            else
            document.getElementById(spc).value = 0;
            } 
            */
            document.getElementById(spc).value = 0; // added to reset spc to 0 by sabari on 22 Aug 2008
            calcSys();

            // Check if the Bet Slip has any selections
            BSlipEventCnt = selArray.length - 1;
            if (parseInt(BSlipEventCnt) > 0) {
                $('#divBSlipECount').hide();
                $('#divBSlipEmpty').hide();
                $('#divBSlipCount').show();
                $('#divBSlipCount').empty();
                $('#divBSlipCount').append(":: <a href='#' onclick='BetSlipClick()'>" + document.getElementById("JS_BettingSlip").value + " (" + BSlipEventCnt + " " + document.getElementById("JS_Selections").value + ")</a>")
            }
            else {
                $('#divBSlipECount').show();
                $('#divBSlipEmpty').show();
                $('#divBSlipCount').hide();
            }
        }
    }

    SetSelectedOdds();
}

function setStake() {
    var fdname;
    var sysStr = document.getElementById(sysArr).value;
    var sa = new Array();
    var cs = new Array();
    sa = sysStr.split(topSplit);
    if (isColumnBet)
        sysBetArray[0].stake = fmt(document.getElementById(singleStake).value / sysBetArray[0].totalBets);
    else {
        if (sysBetArray[0] != undefined)//Updated by Sabari on 14 Aug 08 
            sysBetArray[0].stake = document.getElementById(singleStake).value;
    }
    if (sa.length >= 1) {
        if (sysBetArray[0] != undefined) //Updated by Sabari on 14 Aug 08 
        {
            fdname = "_sys_comb_1_1_" + sysBetArray[0].odds;
            document.forms[0].elements[fdname].value = sysBetArray[0].stake;
            document.forms[0].elements[fdname + "_Ttl"].value = fmt(sysBetArray[0].stake * sysBetArray[0].totalBets);
            for (var i = 1; i < sysBetArray.length; i++) {
                cs = sa[i - 1].split(bottomSplit);
                fdname = "_sys_comb_" + sysBetArray[i].combType + "_" + sysBetArray[i].totalBets + "_" + sysBetArray[i].odds;
                document.forms[0].elements[fdname].value = cs[2];
                document.forms[0].elements[fdname + "_Ttl"].value = fmt(cs[2] * sysBetArray[i].totalBets);
                sysBetArray[i].stake = cs[2];
            }
        }
    }
}

///////////////////////////////////
var eventInPromo = 1; // excluded event

function SendHttpRequest() {

    var oHandler = new clientHttpHandler();
    var sXMLInputs = oHandler.initialiseInputXML();
    var hdeventsArr = document.getElementById(eventsArr).value;
    var hdsysArr = document.getElementById(sysArr).value;

    sXMLInputs = oHandler.buildInputXML(sXMLInputs, "SetEventSession", "condition");
    sXMLInputs = oHandler.buildInputXML(sXMLInputs, hdeventsArr, "eventarr");
    sXMLInputs = oHandler.buildInputXML(sXMLInputs, hdsysArr, "sysarr");
    var oXML = oHandler.finishInputXML(sXMLInputs);
    oHandler.processRequest("/HttpHandlers/AllCompetions.ashx", "POST", oXML, false, false, VerifyResponse);
}

///////////////////////////////////

function SendHttpPromoRequest(eventcode) {

    var oHandler = new clientHttpHandler();
    var sXMLInputs = oHandler.initialiseInputXML();


    sXMLInputs = oHandler.buildInputXML(sXMLInputs, "CheckPromotion", "condition");
    sXMLInputs = oHandler.buildInputXML(sXMLInputs, eventcode, "eventCode");
    var oXML = oHandler.finishInputXML(sXMLInputs);
    oHandler.processRequest("/HttpHandlers/AllCompetions.ashx", "POST", oXML, false, false, VerifyPromoResponse);

    return eventInPromo;

}

function VerifyResponse(oResult) {
    var result = oResult.result

    if (result != null && result != "undefined" && result.length > 0) {
        //check if return is success or failure
        if (result == "failure") {
            SelfPost(); // Cause a postback when the AJAX call fails.
        }
        else {
            //do nothing
        }
    }
    else {
        //there's no return data!! 
    }
}

function VerifyPromoResponse(oResult) {
    var result = oResult.result

    if (result != null && result != undefined && result.length > 0) {
        eventInPromo = result;
    }
    else {
        eventInPromo = "1";
    }
}
////////////////////////////////////

function AddToSlip(evtName, evtId, i) {

    // Added by Sabari on 28 Aug 09 to add items to slip only if client has logged in
    if (!CheckClientLoggedIN())
        return false;

    var oddsName;
    if (document.forms[0].oddsGroup[i].selectedIndex != null)
        oddsName = document.forms[0].oddsGroup[i].options[document.forms[0].oddsGroup[i].selectedIndex].value;
    else
        oddsName = document.forms[0].oddsGroup.options[document.forms[0].oddsGroup.selectedIndex].value;
    if (oddsName == 0)
        return false;

    var x = 0;
    var oddsTitle;
    var oddsValue;
    var comptabileNum;
    var sommableNum;
    var arrElement;
    var selId;
    var cnt = 1;
    var oddsRep;
    var minSel;
    var maxSel;
    var arrOddsName = oddsName.split(",");
    var expiryDate = "";
    var InPromotion = 0; // default all events are included in promotion
    var idComp;
    var MarketName = "";

    if (selectedOdds.length >= 35) {
        alert(document.forms[0].JS_MAXSLIP.value);
        return false;
    }
    oddsTitle = arrOddsName[0];
    oddsValue = arrOddsName[1];
    comptabileNum = arrOddsName[2];
    sommableNum = arrOddsName[3];
    selId = arrOddsName[4];
    oddsRep = arrOddsName[5];
    minSel = arrOddsName[6];
    maxSel = arrOddsName[7];
    expiryDate = arrOddsName[8];
    idComp = arrOddsName[9]; // Newly added to store comp id for each event.
    MarketName = arrOddsName[10];
    InPromotion = arrOddsName[11]; // Assigned to 0 as default as all events are included in promotion


    for (var x = 0; x < selectedOdds.length; x++) {
        //if (selectedOdds[x].eventCode == evtId && selectedOdds[x].oddsTitle == oddsTitle)
        if (selectedOdds[x].eventCode == evtId) {

            //if (selectedOdds[x].oddsTitle == oddsTitle) {
            if (selectedOdds[x].selId == selId) {
                alert(document.forms[0].JS_ERR3.value);
                return false;
            }
        }
    }

    var anEvt = new events("0", oddsValue, oddsTitle, false, true, evtId, comptabileNum, sommableNum, evtName, selId, oddsRep, minSel, maxSel, expiryDate, idComp, MarketName, InPromotion);
    selectedOdds[selectedOdds.length] = anEvt;

    createHtmlElement(evtId, oddsTitle, oddsValue, selId, evtName, false, true, oddsRep, expiryDate, MarketName);
    document.getElementById("noOfSelection").innerHTML = parseInt(document.getElementById("noOfSelection").innerHTML) + 1 + document.forms[0].JS_SEL.value;
    if (!cmp()) {
        document.getElementById("comboStake").innerHTML = "<font color=red>" + document.forms[0].JS_ERR2.value + "</font>";
        // Added by Sabari on 02 Aug 2008 to prevent posting if events are not compatible
        blnIsComp = false;
        return;
    }
    else {
        blnIsComp = true;

        // AJax call to check if the event is in promotion exclusion list
        selectedOdds[selectedOdds.length - 1].InPromotion = SendHttpPromoRequest(evtId);

        calcSys();

        // AJax Call
        SendHttpRequest();

        //   alert (selectedOdds[selectedOdds.length -1].InPromotion);
        //SelfPost(); // To be changed to an AJAX call
    }
}
////////////////////////////////////

function AddToSlipFromButtonHome(evtName, evtId, oddName) {

    // Added by Sabari on 28 Aug 09 to add items to slip only if client has logged in
    if (!CheckClientLoggedIN())
        return false;


    // Adds the event selection to Bet slip + chnage the Betting Slip selection count on the home page

    var arrOddsName = oddName.split(",");

    if (parseFloat(arrOddsName[1]) <= 1.0)
        return false;
    // Check the items in the betslip and adjust the cnt accordingly
    BSlipEventCnt = BSlipEventCnt + 1;

    result = result + arrOddsName[9] + "-";
    if (parseInt(BSlipEventCnt) > 0) {
        $('#divBSlipECount').hide();
        $('#divBSlipEmpty').hide();
        $('#divBSlipCount').show();
        $('#divBSlipCount').empty();
        //  $('#divBSlipCount').append(":: <a href='#' onclick='BetSlipClick()'>Bet Slip (" + BSlipEventCnt + " Selections)</a>")
        $('#divBSlipCount').append(":: <a href='#' onclick='BetSlipClick()'>" + document.getElementById("JS_BettingSlip").value + " (" + BSlipEventCnt + " " + document.getElementById("JS_Selections").value + ")</a>")
    }

    AddToSlipFromButton(evtName, evtId, oddName);

}

function AddToSlipFromSelectHome(evtName, evtId, oddName) {

    // Added by Sabari on 28 Aug 09 to add items to slip only if client has logged in
    if (!CheckClientLoggedIN())
        return false;

    // Adds the event selection to Bet slip + chnage the Betting Slip selection count on the home page

    var arrOddsName = oddName.split(",");
    if (parseFloat(arrOddsName[1]) <= 1.0)
        return false;

    // Check the items in the betslip and adjust the cnt accordingly
    BSlipEventCnt = BSlipEventCnt + 1;

    result = result + arrOddsName[9] + "-";
    if (parseInt(BSlipEventCnt) > 0) {
        $('#divBSlipECount').hide();
        $('#divBSlipEmpty').hide();
        $('#divBSlipCount').show();
        $('#divBSlipCount').empty();
        //        $('#divBSlipCount').append(":: <a href='#' onclick='BetSlipClick()'>Bet Slip (" + BSlipEventCnt + " Selections)</a>")
        $('#divBSlipCount').append(":: <a href='#' onclick='BetSlipClick()'>" + document.getElementById("JS_BettingSlip").value + " (" + BSlipEventCnt + " " + document.getElementById("JS_Selections").value + ")</a>")
    }

    AddToSlipFromSelect(evtName, evtId, oddName);

}

function AddToSlipFromButton(evtName, evtId, oddName) {

    // Added by Sabari on 28 Aug 09 to add items to slip only if client has logged in
    if (!CheckClientLoggedIN())
        return false;


    var oddsName;

    oddsName = oddName;
    if (oddsName == 0)
        return false;

    var x = 0;
    var oddsTitle;
    var oddsValue;
    var comptabileNum;
    var sommableNum;
    var arrElement;
    var selId;
    var cnt = 1;
    var oddsRep;
    var minSel;
    var maxSel;
    var arrOddsName = oddsName.split(",");
    var expiryDate = "";
    var InPromotion = 0; // default all events are included in promotion
    var MarketName = "";
    if (selectedOdds.length >= 35) {
        alert(document.forms[0].JS_MAXSLIP.value);
        return false;
    }
    oddsTitle = arrOddsName[0];
    oddsValue = arrOddsName[1];

    if (parseFloat(oddsValue) <= 1.0)
        return false;

    comptabileNum = arrOddsName[2];
    sommableNum = arrOddsName[3];
    selId = arrOddsName[4];
    oddsRep = arrOddsName[5];
    minSel = arrOddsName[6];
    maxSel = arrOddsName[7];
    expiryDate = arrOddsName[8];
    idComp = arrOddsName[9]; // Newly added to store comp id for each event.
    MarketName = arrOddsName[10];
    InPromotion = arrOddsName[11]; // Assigned to 0 as default as all events are included in promotion
    for (var x = 0; x < selectedOdds.length; x++) {
        //if (selectedOdds[x].eventCode == evtId && selectedOdds[x].oddsTitle == oddsTitle)
        if (selectedOdds[x].eventCode == evtId) {
            //if (selectedOdds[x].oddsTitle == oddsTitle) {
            if (selectedOdds[x].selId == selId) {
                alert(document.forms[0].JS_ERR3.value);
                return false;
            }
        }
    }

    var anEvt = new events("0", oddsValue, oddsTitle, false, true, evtId, comptabileNum, sommableNum, evtName, selId, oddsRep, minSel, maxSel, expiryDate, idComp, MarketName, InPromotion);
    selectedOdds[selectedOdds.length] = anEvt;

    createHtmlElement(evtId, oddsTitle, oddsValue, selId, evtName, false, true, oddsRep, expiryDate, MarketName);
    document.getElementById("noOfSelection").innerHTML = parseInt(document.getElementById("noOfSelection").innerHTML) + 1 + document.forms[0].JS_SEL.value;
    if (!cmp()) {
        document.getElementById("comboStake").innerHTML = "<font color=red>" + document.forms[0].JS_ERR2.value + "</font>";
        // Added by Sabari on 02 Aug 2008 to prevent posting if events are not compatible
        blnIsComp = false;
        return;
    }
    else {
        blnIsComp = true;

        // AJax call to check if the event is in promotion exclusion list
        selectedOdds[selectedOdds.length - 1].InPromotion = SendHttpPromoRequest(evtId);

        calcSys();

        // AJax Call
        SendHttpRequest();

        //   alert (selectedOdds[selectedOdds.length -1].InPromotion);
        //SelfPost(); // To be changed to an AJAX call
    }
}
////////////////////////////////////

function AddToSlipFromSelect(evtName, evtId, oddName) {

    // Added by Sabari on 28 Aug 09 to add items to slip only if client has logged in
    if (!CheckClientLoggedIN())
        return false;

    var oddsName;

    oddsName = oddName;
    if (oddsName == 0)
        return false;

    var x = 0;
    var oddsTitle;
    var oddsValue;
    var comptabileNum;
    var sommableNum;
    var arrElement;
    var selId;
    var cnt = 1;
    var oddsRep;
    var minSel;
    var maxSel;
    var arrOddsName = oddsName.split(",");
    var expiryDate = "";
    var InPromotion = 0; // default all events are included in promotion
    var MarketName = "";
    if (selectedOdds.length >= 35) {
        alert(document.forms[0].JS_MAXSLIP.value);
        return false;
    }
    oddsTitle = arrOddsName[0];
    oddsValue = arrOddsName[1];

    if (parseFloat(oddsValue) <= 1.0)
        return false;

    comptabileNum = arrOddsName[2];
    sommableNum = arrOddsName[3];
    selId = arrOddsName[4];
    oddsRep = arrOddsName[5];
    minSel = arrOddsName[6];
    maxSel = arrOddsName[7];
    expiryDate = arrOddsName[8];
    idComp = arrOddsName[9]; // Newly added to store comp id for each event.
    MarketName = arrOddsName[10];
    InPromotion = arrOddsName[11]; // Assigned to 0 as default as all events are included in promotion
    for (var x = 0; x < selectedOdds.length; x++) {
        //if (selectedOdds[x].eventCode == evtId && selectedOdds[x].oddsTitle == oddsTitle)
        if (selectedOdds[x].eventCode == evtId) {

            //if (selectedOdds[x].oddsTitle == oddsTitle) {
            if (selectedOdds[x].selId == selId) {
                alert(document.forms[0].JS_ERR3.value);
                return false;
            }
        }
    }

    var anEvt = new events("0", oddsValue, oddsTitle, false, true, evtId, comptabileNum, sommableNum, evtName, selId, oddsRep, minSel, maxSel, expiryDate, idComp, MarketName, InPromotion);
    selectedOdds[selectedOdds.length] = anEvt;

    createHtmlElement(evtId, oddsTitle, oddsValue, selId, evtName, false, true, oddsRep, expiryDate, MarketName);
    document.getElementById("noOfSelection").innerHTML = parseInt(document.getElementById("noOfSelection").innerHTML) + 1 + document.forms[0].JS_SEL.value;
    if (!cmp()) {
        document.getElementById("comboStake").innerHTML = "<font color=red>" + document.forms[0].JS_ERR2.value + "</font>";
        // Added by Sabari on 02 Aug 2008 to prevent posting if events are not compatible
        blnIsComp = false;
        return;
    }
    else {
        blnIsComp = true;

        // AJax call to check if the event is in promotion exclusion list
        selectedOdds[selectedOdds.length - 1].InPromotion = SendHttpPromoRequest(evtId);

        calcSys();

        // AJax Call
        SendHttpRequest();

        //   alert (selectedOdds[selectedOdds.length -1].InPromotion);
        //SelfPost(); // To be changed to an AJAX call
    }

    SetSelectedOdds();
}
function createHtmlElement(evtId, oddsTitle, oddsValue, selId, evtName, isBanker, isSysBet, odds_rep, expiryDate, MarketName) {
    var tbody = document.getElementById("tableSlip").getElementsByTagName("tbody")[0];
    var row = document.createElement("tr");
    var tick = "checked";
    row.setAttribute("id", "Row" + gIntID);
    var cell_1 = document.createElement("td");

    var cell_3 = document.createElement("td");
    cell_3.setAttribute("width", "4");
    if (!isSysBet)
        tick = "";
    cell_3.innerHTML = "<input type='checkbox' onClick=\"checkSelection('" + evtId + "_" + oddsTitle + "', this);\" name='chkEvt_" + evtId + "_" + oddsValue + "_" + oddsTitle + "_" + selId + "_" + odds_rep + "' " + tick + ">";
    row.appendChild(cell_3);

    //    var cell_6 = document.createElement("td");
    //    cell_6.setAttribute("width", "4");
    //    cell_6.setAttribute("class", "slipbg");
    //    cell_6.innerHTML = "<b>" + oddsTitle + "</b>";
    //    row.appendChild(cell_6);

    var cell_7 = document.createElement("td");
    // cell_7.setAttribute("width", "4");
    cell_7.setAttribute("class", "slipbg");
    //cell_7.innerHTML = evtName;
    cell_7.innerHTML = evtName + "<br>" + MarketName + "<br>" + "Sel: <b>" + oddsTitle + "</b>";
    row.appendChild(cell_7);

    var cell_8 = document.createElement("td");
    // cell_8.setAttribute("width", "4");
    cell_8.setAttribute("class", "slipbg");
    cell_8.innerHTML = odds_rep;
    row.appendChild(cell_8);

    //cell_1.setAttribute("align", "left");

    //cell_1.innerHTML = "<td><table cellSpacing=0 cellpadding=1 width='100%' border=0  > " + "<tr width='90%'><td colspan=3 align=center>" + evtName + "</td></tr>" + "<tr width='90%' valign=bottom ><td align='left' class='slipbg'><a href='#' onClick=\"deleteSelection('" + evtId + "_" + oddsTitle + "' ," + gIntID + ");\"><img src='http://cache.agenziasportiva.com/sportsbook/images/delete.gif' border=0></a>" + oddsTitle + "</td><td align=center  class='slipbg'><b>" + expiryDate + "</b></td><td valign=bottom height=20 align=right class='slipbg'>" + odds_rep + "</td></tr><table></td>";
    //row.appendChild(cell_1);

    var cell_5 = document.createElement("td");
    cell_5.setAttribute("width", "4");
    cell_5.setAttribute("class", "slipbg");
    cell_5.innerHTML = "<a href='#' onClick=\"deleteSelection('" + evtId + "_" + oddsTitle + "' ," + gIntID + ",'" + evtId + "_" + selId + "');\"><img src='http://cache.agenziasportiva.com/sportsbook/images/delete.gif' border=0 alt='Remove'></a>";
    row.appendChild(cell_5);

    var cell_4 = document.createElement("td");
    tick = "checked";
    if (!isBanker)
        tick = "";
    cell_4.innerHTML = "<input type=checkbox name ='banker_" + evtId + "_" + oddsValue + "_" + oddsTitle + "_" + selId + "' " + tick + " onClick=\"checkBanker('" + evtId + "_" + oddsTitle + "', this);\">";
    row.appendChild(cell_4);

    tbody.appendChild(row);
    gIntID = gIntID + 1;

}

function calculateBet(sel, stake) {
    var pos;
    if (isNaN(stake.value) || (stake.value == null) || (stake.value.length == 0) || (stake.value.search(/e/i) != -1)) {
        stake.value = 0;
        alert(document.forms[0].JS_STKV.value);
        return;
    }
    else {
        pos = getIndex(sel);
        if (stake.value > 0 && selectedOdds[pos].stake == 0) {
            document.getElementById("noOfBets").innerHTML = parseInt(document.getElementById("noOfBets").innerHTML) + 1;
        }
        document.getElementById("cost").innerHTML = fmt(parseFloat(document.getElementById("cost").innerHTML) + parseFloat(stake.value) - parseFloat(selectedOdds[pos].stake));
        document.getElementById("maxWin").innerHTML = fmt(parseFloat(document.getElementById("maxWin").innerHTML) + (parseFloat(stake.value) * selectedOdds[pos].odds) - (selectedOdds[pos].stake * selectedOdds[pos].odds));
        selectedOdds[pos].stake = stake.value;
        stake.value = fmt(stake.value);
    }
}

function checkBanker(sel, banker) {
    var pos;
    if (isColumnBet && banker.checked) {
        banker.checked = false;
        //alert("Banker option with column bets is not allowed!")
        alert(document.getElementById("JS_ColBanker").value);
        return false;
    }

    pos = getIndex(sel);

    if (banker.checked) {
        selectedOdds[pos].isbnker = true;
    }
    else {
        selectedOdds[pos].isbnker = false;
    }
    if (!cmp()) {
        document.getElementById("comboStake").innerHTML = "<font color=red>" + document.forms[0].JS_ERR2.value + "</font>";
        return;
    }
    calcSys();
    //Ajax Call
    SendHttpRequest();
}

function checkSelection(sel, selection) {
    var pos;
    pos = getIndex(sel);
    if (selection.checked) {
        selectedOdds[pos].isSystemBet = true;
    }
    else {
        selectedOdds[pos].isSystemBet = false;
    }
    if (!cmp()) {
        document.getElementById("comboStake").innerHTML = "<font color=red>" + document.forms[0].JS_ERR2.value + "</font>";
    }

    calcSys();
    SendHttpRequest();
}

function deleteSelection(sel, delIndex, hightLightSel) {
    var tbody = document.getElementById("tableSlip").getElementsByTagName("tbody")[0];
    tbody.removeChild(document.getElementById("Row" + delIndex));
    var size = selectedOdds.length;
    delIndex = getIndex(sel);

    if (delIndex > -1) {
        $("td[selectedOdd=" + hightLightSel + "]").attr("class", "bet");
    }

    var flg = selectedOdds[delIndex].isSystemBet;
    for (var j = delIndex; j < size - 1; j++) {
        selectedOdds[j] = selectedOdds[j + 1];
    }
    selectedOdds.length = size - 1;
    if (flg) {
        document.getElementById("noOfSelection").innerHTML = parseInt(document.getElementById("noOfSelection").innerHTML) - 1 + " " + document.forms[0].JS_SEL.value;
        if (!cmp()) {
            document.getElementById("comboStake").innerHTML = "<font color=red>" + document.forms[0].JS_ERR2.value + "</font>";
            return;
        }
        else {
            calcSys();
            // updated by Sabari on 02 Aug to remove items from the bettiing slip on server session
            blnIsComp = true;
            //Ajax call to update session
            SendHttpRequest();

            //SelfPost(); // To be changed to an AJAX call
        }
    }
    else {
        //Ajax call to update session
        calcSys();
        SendHttpRequest();
    }


}

function getIndex(sel) {
    var elmt = sel.split("_");
    for (var i = 0; i < selectedOdds.length; i++) {
        if (selectedOdds[i].eventCode == elmt[0] && selectedOdds[i].oddsTitle == elmt[1])
            return i;
    }
    return -1;
}

function getIndexForHightlight(sel) {
    var elmt = sel.split("_");
    for (var i = 0; i < selectedOdds.length; i++) {
        if (selectedOdds[i].eventCode == elmt[0] && selectedOdds[i].selId == elmt[1])
            return i;
    }
    return -1;
}

function events(stake, odds, oddsTitle, isbnker, isSystemBet, eventCode, compatibleNum, sommableNum, name, selId, oddsRep, minSel, maxSel, expiryDate, idComp, MarketName, InPromotion, cnt) {
    this.stake = parseFloat(stake);
    this.odds = parseFloat(odds);
    this.isbnker = isbnker;
    this.isSystemBet = isSystemBet;
    this.eventCode = eventCode;
    this.oddsTitle = oddsTitle;
    this.compatibleNum = compatibleNum;
    this.sommableNum = sommableNum;
    this.name = name;
    this.selId = selId;
    this.oddsRep = oddsRep;
    this.minSel = minSel;
    this.maxSel = maxSel;
    this.expiryDate = expiryDate;
    this.InPromotion = InPromotion;
    this.idComp = idComp; // Newly added
    this.MarketName = MarketName;
}

var selChk = true;
var errMsg;

function evtSearch(stIdx) {

    var s = selectedOdds[stIdx].eventCode;
    var n = "";
    var tn1 = "";
    var tn2 = "";

    n = selectedOdds[stIdx].name.split(" - ");

    if (n[1] == undefined) {
        n = selectedOdds[stIdx].name.split(" v ");
        tn1 = n[0];
        tn2 = n[1];
    }
    else {
        tn1 = n[0];
        tn2 = n[1];
    }
    // Added by Sabari on 19 Sep 09 to have same team1 and team 2 incase event does not have - or Vs in between
    if (tn2 == undefined)
        tn2 = tn1;

    // if ((tn1.indexOf("(")==0) || (tn2.indexOf("(")==0))
    //	return true;
    for (var i = stIdx + 1; i < selectedOdds.length; i++) {
        if (selectedOdds[i].isSystemBet) {
            if (selectedOdds[i].eventCode == s)
                return 1;
            if ((tn2 == undefined) && (selectedOdds[i].eventCode == s))
                return 1;
            // else
            //    return 0;
            if ((tn1.indexOf("(") != 0) && (tn2.indexOf("(") != 0)) {
                if (selectedOdds[i].name.indexOf(tn1) != -1)
                    return 2;
                if (selectedOdds[i].name.indexOf(tn2) != -1)
                    return 2;
            }
        }
    }

    return 0;
}

function setSysBet(index, obj, noCmb, rfshTtl) {
    if (isNaN(obj.value) || (obj.value == null) || (obj.value.length == 0) || (obj.value.search(/e/i) != -1)) {
        obj.value = 0;
        //alert("Not a valid stake");
        alert(document.getElementById("JS_InvalidStake").value);

    }
    else if (rfshTtl)
        updTtlStk(obj, noCmb);
    obj.value = parseFloat(obj.value);
    sysBetArray[index].stake = obj.value;
    calcSys();

}

function setSingleColumn(obj, rfshTtl) {
    if (isNaN(obj.value) || (obj.value == null) || (obj.value.length == 0) || (obj.value.search(/e/i) != -1)) {
        obj.value = 0;
        //alert("Not a valid stake");
        alert(document.getElementById("JS_InvalidStake").value);

    }
    else if (rfshTtl)
        updTtlStk(obj, GetSysBetLength());
    obj.value = parseFloat(obj.value);
    document.getElementById(spc).value = obj.value;
    calcSys();
}

function IsInvalidNumber(val) {
    return (isNaN(val) || (val == null) || (val.length == 0) || (val.search(/e/i) != -1));
}

function GetSysBetLength() {
    var cnt = 0;
    for (j = 0; j < selectedOdds.length; j++)
        if (selectedOdds[j].isSystemBet)
        cnt++;
    return cnt;
}

function updStkByTtl(index, ttlObj, noCmb) {
    var ttlStk = ttlObj.value;
    if (IsInvalidNumber(ttlStk)) {
        ttlObj.value = 0;
        //alert("Not a valid stake");
        alert(document.getElementById("JS_InvalidStake").value);
        return;
    }
    var stkNme = ttlObj.id.substring(0, ttlObj.id.lastIndexOf("_"));
    var stk = parseFloat(ttlStk / noCmb);
    document.forms[0].elements[stkNme].value = stk;
    ttlObj.value = fmt(ttlObj.value);
    setSysBet(index, document.forms[0].elements[stkNme], noCmb, false);
}

function updSglStkByTtl(ttlObj) {
    var ttlStk = ttlObj.value;
    if (IsInvalidNumber(ttlStk)) {
        ttlObj.value = 0;
        //alert("Not a valid stake");
        alert(document.getElementById("JS_InvalidStake").value);

        return;
    }
    var stkNme = ttlObj.id.substring(0, ttlObj.id.lastIndexOf("_"));
    var stk = parseFloat(ttlStk / GetSysBetLength());
    document.forms[0].elements[stkNme].value = stk;
    ttlObj.value = fmt(ttlObj.value);
    setSingleColumn(document.forms[0].elements[stkNme], false);
}

function updTtlStk(stkObj, noCmb) {
    var stk = stkObj.value;
    var ttlStkNme = stkObj.name + "_Ttl";
    document.forms[0].elements[ttlStkNme].value = fmt(stk * noCmb);
}

function isStkValidAmt() {
    var stk = 0;
    var sStkObj = null;
    MIN_STK = parseFloat(fmt(document.getElementById("JS_MINBETAMT").value));
    for (var j = 0; j < sysBetArray.length; j++) {
        if ((parseFloat(fmt(sysBetArray[j].stake)) < MIN_STK) && (sysBetArray[j].stake != 0))
            return false;
    }
    sStkObj = document.forms[0].sStake;
    if (sStkObj != null)
        if (IsInvalidNumber(sStkObj.value)) {
        stk = parseFloat(sStkObj.value);
        return ((stk >= MIN_STK) || (stk == 0));
    }
    return true;
}

function chkBalance() {

    //check if in GIC mode
    var hidClientLevel1 = document.getElementById(hidClientLevel);
    var availableBalance = parseFloat(document.getElementById(JS_AVAILABLE_BALANCE).value);

    if (hidClientLevel1 != null && hidClientLevel1 != "undefined" && hidClientLevel1.value == 85) {
        //add subclient balance and fido
        var hidSubClientId1 = document.getElementById(hidSubClientId);
        var subClientBalance = parseFloat(hidSubClientId1.value.split('|')[1]);
        var subClientFido = parseFloat(hidSubClientId1.value.split('|')[2]);

        availableBalance = availableBalance + subClientBalance + subClientFido;
    }

    if (availableBalance >= parseFloat(document.forms[0].total_stake.value))
        return true;

    return false;
}

function isCompat() {
    var k = 0;
    var tmpCompNum = 0;
    var tmpSommableNum = 0;
    var selArr = new Array();

    if (selectedOdds.length >= 1) {
        for (var i = 0; i < selectedOdds.length; i++) {
            if (selectedOdds[i].isSystemBet) {
                selArr[k++] = selectedOdds[i];
                // if (!evtSearch(i))
                //  return false;
                if ((tmpCompNum != selectedOdds[i].compatibleNum) && (tmpCompNum != 0) && (tmpSommableNum != selectedOdds[i].sommableNum))
                    return false;
                tmpCompNum = selectedOdds[i].compatibleNum;
                tmpSommableNum = selectedOdds[i].sommableNum;
            }
        }
    }
    return true;
}

function cmp() {
    var tmpCompNum = 0;
    var tmpSommableNum = 0;
    var i = 0;
    var bnkCnt = 0;
    var evtCnt = 0;
    var combOdds = 1;
    var combMinOdds = 1; // Updated by Sabari on 22 Nov 08 to store minOdds for Columns Bet
    var noCmb;
    var oddCmb;
    var betTitle;
    var tableText = "";
    var evtCode;
    var minSel = 1;
    var maxSel = 35;
    var bnks_odd = 1;
    var k = 0;
    var totalCols = 1;
    var selArr = new Array();
    var tmpChNo;
    if (selectedOdds.length >= 1) {
        isColumnBet = false;
        for (i; i < selectedOdds.length; i++) {

            if (selectedOdds[i].isSystemBet) {
                selArr[k] = selectedOdds[i];
                k++;

                tmpChNo = evtSearch(i);
                if (tmpChNo == 0 && !isColumnBet)
                    isColumnBet = false;
                if (tmpChNo == 1)
                    isColumnBet = true;
                if (tmpChNo == 2) {
                    isColumnBet = false;
                    // Commented by Sabari on 21 Nov 08 to disable team name comparison.
                    //return false;
                    //break;
                }



                if ((tmpCompNum != selectedOdds[i].compatibleNum) && (tmpCompNum != 0) && (tmpSommableNum != selectedOdds[i].sommableNum)) {
                    return false;
                    break;
                }
                combOdds = (combOdds * selectedOdds[i].odds);
                combMinOdds = (combMinOdds * selectedOdds[i].odds);

                evtCnt++;
                if (selectedOdds[i].isbnker == true) {
                    bnks_odd *= selectedOdds[i].odds;
                    bnkCnt++;
                }
                tmpCompNum = selectedOdds[i].compatibleNum;
                tmpSommableNum = selectedOdds[i].sommableNum;
                if (selectedOdds[i].minSel > minSel)
                    minSel = selectedOdds[i].minSel;
                if (selectedOdds[i].maxSel < maxSel)
                    maxSel = selectedOdds[i].maxSel;
            }
        }
        if (evtCnt < minSel || evtCnt > maxSel) {
            selChk = false;
            if (maxSel == 1)
                errMsg = document.forms[0].JS_SO.value + "\r" + document.forms[0].JS_CHKRULE.value;
            else if (minSel == 3)
                errMsg = document.forms[0].JS_MINTRB.value + "\r\r" + document.forms[0].JS_CHKRULE.value;
            else
                errMsg = document.forms[0].JS_MIN.value + " " + minSel + " " + document.forms[0].JS_MIN1.value + " " + maxSel + " " + document.forms[0].JS_MIN2.value + "\r" + document.forms[0].JS_CHKRULE.value;
        }
        else
            selChk = true;
        if (evtCnt >= 1) {

            tableText = "<table width='100%' cellSpacing=0 cellpadding=0><tbody> " + "<tr class='betheaderbg'><td colspan='3'>" + document.forms[0].JS_STK.value + "</td></tr>" + "<tr class='betdkblueboxcombtitle'><td width='70%'>&nbsp;</td><td>" + document.forms[0].JS_STAKE.value + "</td><td>" + document.forms[0].JS_TSTK.value + "</td></tr>"
            sysBetArray = new Array();

            if (isColumnBet) {

                var colBetsPropVal = totCols();
                totalCols = colBetsPropVal.cols;
                combOdds = colBetsPropVal.odds;
                combMinOdds = colBetsPropVal.minodds;
                //	alert("Min Odds : " + combMinOdds);
                //	alert("Max Odds : " + combOdds);
                document.getElementById(clmBet).value = "1";
                document.getElementById(ttlClm).value = totalCols;
                // Updated by Sabari on 22 Nov 08 to check if the columns should be even no's
                //			if (totalCols % 2 != 0) {
                //			    document.getElementById("comboStake").innerHTML = "<font color=red>" + document.forms[0].JS_ERR2.value + "</font>";
                //			    alert("You cannot have 3 odds for the same event");
                //			    return false;
                //			}

                sysBetArray[0] = new sysBet(totalCols, combMinOdds, combOdds, 0, 1);
                tableText += "<tr class='betdkbluebox'><td align='right'>" + document.forms[0].JS_STK.value + "(" + totalCols + " Cols)</td>" + "<td><input class ='TextBox' type='text' size='6' name='_sys_comb_1_1_" + combOdds + "' value='0' onchange='setSysBet(0,this," + totalCols + " , true);'>" + "</td><td><input class ='TextBox' type='text' size='6' id='_sys_comb_1_1_" + combOdds + "_Ttl' name='_sys_comb_1_1_" + combOdds + "_Ttl' value='0' onchange='updStkByTtl(0,this," + totalCols + ")'>" + "</td></tr>";
            }
            else {
                document.getElementById(clmBet).value = "0";
                tableText += "<tr class='betdkbluebox'><td align='right'>" + document.forms[0].JS_STD.value + "</td>" + "<td><input class ='TextBox' type='text' size='6' name='_sys_comb_1_1_" + combOdds + "' value='0' onchange='setSysBet(0,this,1, true);'>" + "</td><td><input class ='TextBox' type='text' size='6' id='_sys_comb_1_1_" + combOdds + "_Ttl' name='_sys_comb_1_1_" + combOdds + "_Ttl' value='0' onchange='updStkByTtl(0,this,1)'>" + "</td></tr>";
                if (minSel != 3 && maxSel != 1 && evtCnt > 1 && bnkCnt == 0) {
                    tableText += "<tr class='betdkbluebox'><td align='right'>" + document.forms[0].JS_SNG.value + "</td>" + "<td><input class ='TextBox' type='text' size='6' name='sStake' value='0' onchange='setSingleColumn(this, true);'>" + "</td><td><input class ='TextBox' type='text' size='6' id='sStake_Ttl' name='sStake_Ttl' value='0' onchange='updSglStkByTtl(this)'>" + "</td></tr>";
                }
                else
                    document.getElementById(spc).value = 0;

                sysBetArray = new Array();
                sysBetArray[0] = new sysBet(1, 0, combOdds, 0, 1);
                var j = 2;
                var cst = 0;
                var ttlCst = 0;
                var pos;
                if (bnkCnt > 1) {
                    j = bnkCnt + 1;
                }
                for (j; j < evtCnt; j++) {
                    if ((minSel == 3) && (j == 2)) { }
                    else {
                        noCmb = arathM(evtCnt, j, bnkCnt);
                        if (j <= 15) { // Updated by Sabari on 23 Dec to limit the max folds to 15.
                            if (noCmb > 1) {
                                pos = sysBetArray.length;
                                //oddCmb = fmt(oddsStats(j, selArr, noCmb, bnkCnt));
                                //modified by G Sheth on 20 Aug 2008
                                oddCmb = oddsStats(j, selArr, noCmb, bnkCnt);
                                oddCmb *= bnks_odd;
                                sysBetArray[pos] = new sysBet(noCmb, 0, oddCmb, 0, j);
                                switch (j) {
                                    case 2:
                                        betTitle = document.forms[0].JS_DBL.value + " " + noCmb + " " + document.forms[0].JS_BET.value;
                                        break;
                                    case 3:
                                        betTitle = document.forms[0].JS_TRB.value + " " + noCmb + " " + document.forms[0].JS_BET.value;
                                        break;
                                    default:
                                        betTitle = document.forms[0].JS_ALL.value + " " + j + " " + document.forms[0].JS_FOLDS.value + " " + noCmb + " " + document.forms[0].JS_BET.value;
                                }
                                if (document.forms[0].elements["_sys_comb_" + j + "_" + noCmb + "_" + oddCmb] != null) {
                                    if (document.forms[0].elements["_sys_comb_" + j + "_" + noCmb + "_" + oddCmb].value == null) {
                                        cst = 0.00;
                                        ttlCst = 0.00
                                    }
                                    else {
                                        cst = fmt(document.forms[0].elements["_sys_comb_" + j + "_" + noCmb + "_" + oddCmb].value);
                                        ttlCst = fmt(cst * noCmb);
                                    }
                                }
                                tableText += "<tr class='betdkbluebox'><td align='right'>" + betTitle + "</td>" + "<td><input class ='TextBox' type='text' size='6' name='_sys_comb_" + j + "_" + noCmb + "_" + oddCmb + "' id='_sys_comb_" + j + "_" + noCmb + "_" + oddCmb + "' value='" + cst + "' onchange='setSysBet(" + pos + ",this, " + noCmb + ", true );'>" + "</td><td><input class ='TextBox' type='text' size='6' id='_sys_comb_" + j + "_" + noCmb + "_" + oddCmb + "_Ttl' name='_sys_comb_" + j + "_" + noCmb + "_" + oddCmb + "_Ttl' value='" + ttlCst + "' onchange='updStkByTtl(" + pos + ", this," + noCmb + ");'>" + "</td></tr>";
                            }
                        }
                    }
                }
            }
            tableText += "</tbody></table>";
        }
    }
    document.getElementById("comboStake").innerHTML = tableText;
    return true;
}

// Updated by Sabari on 22 Nov 08 to hold Min Odds for Column Bet
function sysBet(totalBets, minodds, odds, stake, combType) {
    this.totalBets = totalBets;
    this.minodds = parseFloat(minodds);
    this.odds = parseFloat(odds);
    this.stake = parseFloat(stake);
    this.combType = combType;
}

function calcSys() {

    // Updated by Sabari on 22 Nov 08 to store the Min Winnings for Column Bets
    var maxWin = 0;
    var minWin = 0;
    var totalCost = 0;
    var totalBets = 0;
    var j;
    var singles = 0;
    var eventsStr = "";
    var sysStr = "";
    var totalOdds = 1;
    var totalMinOdds = 0;
    var totalMaxOdds = 0;

    for (j = 0; j < sysBetArray.length; j++) {
        if (sysBetArray[j].stake > 0) {
            maxWin += (sysBetArray[j].odds * sysBetArray[j].stake);
            minWin += (sysBetArray[j].minodds * sysBetArray[j].stake); // Updated by Sabari on 22 Nov 08 to calculate min win for Column Bet
            totalCost = totalCost + (sysBetArray[j].stake * sysBetArray[j].totalBets);
            totalBets += sysBetArray[j].totalBets;
        }
        if (j != 0)
            sysStr += sysBetArray[j].combType + bottomSplit + sysBetArray[j].totalBets + bottomSplit + sysBetArray[j].stake + topSplit;
    }
    if (sysBetArray.length > 0) {
        document.getElementById(singleStake).value = sysBetArray[0].stake;
        if (isColumnBet) {
            document.getElementById(singleStake).value = (sysBetArray[0].stake) * (sysBetArray[0].totalBets);
            totalMaxOdds += sysBetArray[0].odds; // Updated by Sabari to store min and max odds for column bet
            totalMinOdds += sysBetArray[0].minodds;

        }
    }

    document.getElementById(sysArr).value = sysStr;
    for (j = 0; j < selectedOdds.length; j++) {
        if (selectedOdds[j].isSystemBet) {
            totalOdds *= selectedOdds[j].odds;
            singles++;
            if (document.forms[0].sStake != null) {
                if (document.forms[0].sStake.value > 0) {
                    maxWin += (document.forms[0].sStake.value * selectedOdds[j].odds);

                    totalCost = parseFloat(totalCost) + parseFloat(document.forms[0].sStake.value);
                    totalBets++;
                }
            }
        }
        if (selectedOdds[j].stake > 0) {
            maxWin += (selectedOdds[j].odds * selectedOdds[j].stake);
            totalCost = parseFloat(totalCost) + parseFloat(selectedOdds[j].stake);
            totalBets++;
        }
        eventsStr += selectedOdds[j].name + bottomSplit + selectedOdds[j].odds + bottomSplit + selectedOdds[j].isbnker + bottomSplit + selectedOdds[j].isSystemBet + bottomSplit + selectedOdds[j].eventCode + bottomSplit + selectedOdds[j].oddsTitle + bottomSplit + selectedOdds[j].compatibleNum + bottomSplit + selectedOdds[j].sommableNum + bottomSplit + selectedOdds[j].selId + bottomSplit + selectedOdds[j].oddsRep + bottomSplit + selectedOdds[j].minSel + bottomSplit + selectedOdds[j].maxSel + bottomSplit + selectedOdds[j].expiryDate + bottomSplit + selectedOdds[j].idComp + bottomSplit + selectedOdds[j].MarketName + bottomSplit + selectedOdds[j].InPromotion + topSplit;
        //alert(selectedOdds[j].odds);
    }

    document.getElementById(eventsArr).value = eventsStr;
    document.getElementById("cost").innerHTML = fmt(totalCost);

    // Updated by Sabari on 22 Nov 08 to display min Winnings for Column Bet


    if (isColumnBet) {

        document.getElementById("minWin").innerHTML = fmt(getWinnnings(minWin));


        document.getElementById("trminWin").removeAttribute("style");
        document.getElementById("trminEWin").removeAttribute("style");
        document.getElementById("trminTWin").removeAttribute("style");
    }
    else {
        document.getElementById("minWin").innerHTML = 0;
        // Updated by Sabari on 29 Nov 08 to enable and diable the extra rows for Column Bets
        document.getElementById("trminWin").style.cssText = "DISPLAY: none";
        document.getElementById("trminEWin").style.cssText = "DISPLAY: none";
        document.getElementById("trminTWin").style.cssText = "DISPLAY: none";
    }

    document.getElementById("maxWin").innerHTML = fmt(getWinnnings(maxWin));
    document.getElementById("noOfBets").innerHTML = totalBets;
    document.getElementById("todds").innerHTML = totalOdds.toFixed(4);


    document.getElementById("noOfSelection").innerHTML = singles + " " + document.forms[0].JS_SELS.value;
    document.forms[0].total_stake.value = fmt(totalCost);
    document.getElementById(maxwinHF).value = fmt(getWinnnings(maxWin));
    ////////////////////////////
    document.getElementById("maxWinbonus").innerHTML = fmt(getWinnnings(maxWin));

    if (isColumnBet) {

        document.getElementById("minWinbonus").innerHTML = fmt(getWinnnings(minWin));
    }
    //////////////////////////////

    // Added by Sabari on 09 Aug 2008 to calculate Bonus
    // Check for totalBets = 1 to make it an accumulator
    // singles = no of selections
    //totalOdds = total odds
    //maxWin = winnings
    //selectedOdds[j].odds = individual odds  
    // sysBetArray[0].stake = stake for standard combination
    var stdstake = 0;
    var minPromoEvents = document.getElementById(hdnMinPromoEvents).value; // to be changed to hidden server variable

    if (sysBetArray != "") {
        if (sysBetArray[0].stake != 0)
            stdstake = sysBetArray[0].stake;
    }

    //isSystemBet
    //alert(singles)
    //alert(document.getElementById(hdnIsPromotion).value)
    // Updated on 19 Aug 08 to turn off promotion for clients of certain countries
    if (singles >= minPromoEvents && document.getElementById(hdnIsPromotion).value == "Valid" && isColumnBet == false)
        CalculateBonus(stdstake, totalOdds, singles, getWinnnings(maxWin));
    else if (singles >= minPromoEvents && document.getElementById(hdnIsPromotion).value == "Valid" && isColumnBet == true) {
        CalculateBonusColumnBet(stdstake, totalMinOdds, totalMaxOdds, minWin, maxWin);
    }
    else {
        document.getElementById("bonusperc").innerHTML = 0; // Clear bonus perc if they dont qualify
        //  document.getElementById("maxWinbonus").innerHTML = 0; // Clear bonus perc if they dont qualify
        document.getElementById("bonusvalue").innerHTML = 0;
        // Updated by Sabari on 18 AUg to summarize the WIn PLus deatils
        document.getElementById(hdnDPromoDetails).value = "0%" + "|" + "0" + "|" + fmt(getWinnnings(maxWin)) + "|" + "1"
        if (isColumnBet) {
            //  document.getElementById(hdnColDPromoDetails).value = "0%" + "|" + "0" + "|" + "0" + "|" + "0" + "|" + "0" + "|" + "0" + "|" + "0"
            document.getElementById(hdnColDPromoDetails).value = "0%" + "|" + "0" + "|" + fmt(maxWin) + "|" + "1" + "|" + fmt(minWin) + "|" + "0" + "|" + fmt(minWin)
            //    document.getElementById(hdnColDPromoDetails).value = intDisplayBonusPerc + "%" + "|" + fmt(bonusamt) + "|" + fmt(maxWin + bonusamt) + "|" + intSelBonusPerc + "|" + fmt(minWin) + "|" + fmt(minbonusamt) + "|" + fmt(minWin + minbonusamt)


        }
        // alert(document.getElementById(hdnDPromoDetails).value);

    }

    return true;
}


// Added by Sabari on 22 Nov 08 to perform bonus for Column Bets
function CalculateBonusColumnBet(stake, totalMinOdds, totalMaxOdds, minWin, maxWin) {

    var arOdds = new Array();
    //var strOdds = "";
    //var hid = "[1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25]";
    var arMinOdds = eval(document.getElementById(hdnColMinOddsArr).value); // to be changed to hidden server variable
    var arBonus = eval(document.getElementById(hdnColPromoPercArr).value); // to be changed to hidden server variable
    var arBonusDisplay = eval(document.getElementById(hdnColDPromoPercArr).value); // to be changed to hidden server variable
    var TotWin = 0;
    var TotminWin = 0;
    //alert(ColumnBetCount);
    //alert("Stake : " + stake);
    //alert("Total Odds Value : " + oddsvalue);
    //alert("No of Selections : " + noofsel);
    //alert(selectedOdds.length-1)
    var blnPromo_Eligible = false;

    var intPromoEligibleColumnEvents = 0;
    
    var intSelMinOdds = arMinOdds[ColumnBetCount - 1];
    
    
    var intSelBonusPerc = arBonus[ColumnBetCount - 1];
    var intDisplayBonusPerc = arBonusDisplay[ColumnBetCount - 1];
    //alert("Odds Limit:"+intSelMinOdds);

 /*   for (j = 0; j < selectedOdds.length; j++) {
        if (selectedOdds[j].isSystemBet == true) // Added by Sabari on 26 Aug to check if the event is selected.
        {
            if (selectedOdds[j].odds >= intSelMinOdds && selectedOdds[j].InPromotion == "0") {
                blnPromo_Eligible = true;
            }
            else {
                blnPromo_Eligible = false;
                break;
            }
        }
    }
*/

// Loop through the column bet arrary object and check the odds value > min value
    for (var m = 0; m < colArrWinPlus.length; m++) {

        if (fmt(Math.exp(colArrWinPlus[m].minOdds)) >= intSelMinOdds) {
            blnPromo_Eligible = true;
            intPromoEligibleColumnEvents++;
        }
    }

    intSelBonusPerc = arBonus[intPromoEligibleColumnEvents - 1];
    intDisplayBonusPerc = arBonusDisplay[intPromoEligibleColumnEvents - 1];

    //alert("Eligible for Promotion:" +blnPromo_Eligible)
    var bonusamt = 0;
    var minbonusamt = 0;

    if (blnPromo_Eligible) {
        //alert("max Win : " + maxWin)
        //  alert("Amount Eligible for Promotion : " + stake * oddsvalue)
        //  alert("Applicable Bonus Percentage : " + intSelBonusPerc)
        //   bonusamt = (stake * oddsvalue * intSelBonusPerc) - oddsvalue;
        TotWin = totalMaxOdds * intSelBonusPerc * stake;
        TotminWin = totalMinOdds * intSelBonusPerc * stake;

        bonusamt = TotWin - (totalMaxOdds * stake);
        minbonusamt = TotminWin - (totalMinOdds * stake);
        // alert("Bonus : " + bonusamt)        
        //document.getElementById("dvBonus").visible = false;
        document.getElementById("bonusperc").innerHTML = intDisplayBonusPerc + "%";

        // Check of the Extrawin in greater than the set max amount and then set it to the max
        if (parseFloat(fmt(bonusamt)) > parseFloat(document.getElementById(hdnColMaxWinAmt).value)) {
            bonusamt = parseFloat(document.getElementById(hdnColMaxWinAmt).value);
        }

        document.getElementById("bonusvalue").innerHTML = fmt(bonusamt);
        document.getElementById("maxWinbonus").innerHTML = fmt(parseFloat(fmt(maxWin)) + parseFloat(fmt(bonusamt)));

        document.getElementById("minbonusvalue").innerHTML = fmt(minbonusamt);
        document.getElementById("minWinbonus").innerHTML = fmt(parseFloat(fmt(minWin)) + parseFloat(fmt(minbonusamt)));

        // Updated by Sabari on 18 AUg to summarize the WIn PLus deatils
        document.getElementById(hdnColDPromoDetails).value = intDisplayBonusPerc + "%" + "|" + fmt(bonusamt) + "|" + fmt(maxWin + bonusamt) + "|" + intSelBonusPerc + "|" + fmt(minWin) + "|" + fmt(minbonusamt) + "|" + fmt(minWin + minbonusamt)
        //alert(document.getElementById(hdnDPromoDetails).value);

    }
}

// Added by Sabari on 09 AUg 08
function CalculateBonus(stake, oddsvalue, noofsel, maxWin) {

    var arOdds = new Array();
    //var strOdds = "";
    //var hid = "[1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25,1.25]";
    var arMinOdds = eval(document.getElementById(hdnMinOddsArr).value); // to be changed to hidden server variable
    var arBonus = eval(document.getElementById(hdnPromoPercArr).value); // to be changed to hidden server variable
    var arBonusDisplay = eval(document.getElementById(hdnDPromoPercArr).value); // to be changed to hidden server variable
    var TotWin = 0;
    //alert("Stake : " + stake);
    //alert("Total Odds Value : " + oddsvalue);
    //alert("No of Selections : " + noofsel);
    //alert(selectedOdds.length-1)
    var blnPromo_Eligible = false;
    var intSelMinOdds = arMinOdds[noofsel - 1];
    var intSelBonusPerc = arBonus[noofsel - 1];
    var intDisplayBonusPerc = arBonusDisplay[noofsel - 1];
    //alert("Odds Limit:"+intSelMinOdds);

    var intPromoEligibleEvents = 0;

    for (j = 0; j < selectedOdds.length; j++) {
        if (selectedOdds[j].isSystemBet == true) // Added by Sabari on 26 Aug to check if the event is selected.
        {
            if (selectedOdds[j].odds >= intSelMinOdds && selectedOdds[j].InPromotion == "0") {
                blnPromo_Eligible = true;
                intPromoEligibleEvents++;
            }
          //  else {
          //      blnPromo_Eligible = false;
          //      break;
          //  }
        }
    }
    // update by sabari on 05 Feb 09 to update WIN+ conditions
    // Get the correct percentage based on the no of eligible events
    intSelBonusPerc = arBonus[intPromoEligibleEvents - 1];
    intDisplayBonusPerc = arBonusDisplay[intPromoEligibleEvents - 1];


    //alert("Eligible for Promotion:" +blnPromo_Eligible)
    var bonusamt = 0;

    if (blnPromo_Eligible) {
        //alert("max Win : " + maxWin)
        //  alert("Amount Eligible for Promotion : " + stake * oddsvalue)
        //  alert("Applicable Bonus Percentage : " + intSelBonusPerc)
        //   bonusamt = (stake * oddsvalue * intSelBonusPerc) - oddsvalue;
        TotWin = oddsvalue * intSelBonusPerc * stake;
        bonusamt = TotWin - (oddsvalue * stake);
        // alert("Bonus : " + bonusamt)        
        //document.getElementById("dvBonus").visible = false;
        document.getElementById("bonusperc").innerHTML = intDisplayBonusPerc + "%";

        // Check of the Extrawin in greater than the set max amount and then set it to the max
        if (parseFloat(fmt(bonusamt)) > parseFloat(document.getElementById(hdnMaxWinAmt).value)) {
            bonusamt = parseFloat(document.getElementById(hdnMaxWinAmt).value);
        }


        document.getElementById("bonusvalue").innerHTML = fmt(bonusamt);
        document.getElementById("maxWinbonus").innerHTML = fmt(parseFloat(fmt(maxWin)) + parseFloat(fmt(bonusamt)));
        // Updated by Sabari on 18 AUg to summarize the WIn PLus deatils
        document.getElementById(hdnDPromoDetails).value = intDisplayBonusPerc + "%" + "|" + fmt(bonusamt) + "|" + fmt(maxWin + bonusamt) + "|" + intSelBonusPerc
        //alert(document.getElementById(hdnDPromoDetails).value);

    }
    else {
        // The selections did not qualify for promotions 
        document.getElementById("bonusperc").innerHTML = "0%";
        document.getElementById("bonusvalue").innerHTML = 0;
        // Updated by Sabari on 18 AUg to summarize the WIn PLus deatils
        document.getElementById(hdnDPromoDetails).value = "0%" + "|" + fmt(bonusamt) + "|" + fmt(maxWin + bonusamt) + "|" + "1"
        // alert(document.getElementById(hdnDPromoDetails).value);

    }

}

function replaceChars(temp, out, add) {
    while (temp.indexOf(out) > -1) {
        pos = temp.indexOf(out);
        temp = "" + (temp.substring(0, pos) + add + temp.substring((pos + out.length), temp.length));
    }
    return temp;
}

function getFd(fieldName) {
    return document.getElementById(fieldName).innerHTML;
}

function setFd(fieldName) {
    document.getElementById("maxWin").innerHTML = fieldName;
}

function glbcalc(n, r, a, ind) {
    if (ind == 1) {
        return a;
    }
    var i = r - 1;

    while (a[i] == n - r + i)
    { i--; }

    a[i] = a[i] + 1;

    for (var j = i + 1; j < r; j++) {
        a[j] = a[i] + j - i;
    }

    return a;
}

function arathM(n, k, b) {
    n -= b;
    k -= b;
    if (n < 1 || k < 1 || n > 35 || k > 35)
        return -1;
    if (n == 1 || k == 0 || n == k)
        return 1;
    if (k > (n - k))
        k = n - k;
    return cns[n - 1][k - 1];
}

function oddsStats(p_target, x1, noCmb, noBnks) {
    var bnkFlg = false;
    var np_target = p_target - noBnks;
    var a = new Array(), nb = 0, ms = new Array(), odd = 0, co_total = 0;
    for (var c = 0; c < (np_target); c++)
        a[c] = c;
    c = 0;
    for (var h = 0; h < x1.length; h++)
        if (!x1[h].isbnker) {
        nb++;
        ms[c++] = h;
    }
    var t = noCmb;
    for (var i = 1; i <= t; i++) {
        a = glbcalc(nb, np_target, a, i);
        odd = 1;
        for (var j = 0; j < a.length; j++) {
            odd *= x1[ms[a[j]]].odds;
        }
        co_total += odd;
    }
    return co_total;
}

function calcSingleBet(obj) {
    var odds = 0;
    if (isNaN(obj.value)) {
        document.getElementById("cost").innerHTML = 0;
        document.getElementById("maxWin").innerHTML = 0;
        document.getElementById("noOfBets").innerHTML = 0;
        //alert("Not a valid number.");
        alert(document.getElementById("JS_InvalidNo").value);
        return;
    }
    for (var i = 0; i < selectedOdds.length; i++) {
        if (selectedOdds[i].isSystemBet)
            odds = selectedOdds[i].odds;
    }
    if (odds == 0) {
        //alert("Please select the event, you want to bet on.");
        alert(document.getElementById("JS_SelEvent").value);
    }
    document.getElementById("cost").innerHTML = fmt(obj.value);
    document.getElementById("maxWin").innerHTML = fmt(odds * obj.value);
    document.getElementById("noOfBets").innerHTML = 1;
    document.getElementById("noOfSelection").innerHTML = "1 " + document.forms[0].JS_SEL.value;

}

function slipConfirm_popup(url) {
    window.open(url, 'SlipConfirmer', 'height=220,width=410,status=no,dependent=no,scrollbars=no,resizeable=no,left=200,top=10,screenX=200,screenY=10');
}

// Added by Sabari on 07 AUg to prevent calling Handle Display 2 times
function BackClick() {
    document.getElementById(hdnBack).value = "back";
}

// Added by Sabari on 28 Aug 09 to check if the client is logged in or not
function CheckClientLoggedIN() {
    if (document.getElementById(hdLog).value != "10") {
        //alert("You should login to continue")
        alert(document.getElementById("JS_LOGIN_CNT").value);
        return false;
    }
    else
        return true;
}

function stakeValidation() {

    if (!CheckClientLoggedIN())
        return false;

    //    if (document.getElementById(hdLog).value != "10") {
    //        //alert("You should login to continue")
    //        alert(document.getElementById("JS_LOGIN_CNT").value);
    //        return false;
    //    }

    if (!selChk) {
        alert(errMsg);
        return false;
    }
    if (!isStkValidAmt()) {
        alert(document.forms[0].JS_ERR5.value + " " + fmt(document.getElementById("JS_MINBETAMT").value));
        return false;
    }

    if (selectedOdds.length == 0) {
        alert(document.forms[0].JS_CHKB.value);
        return false;
    }

    if (!chkBalance()) {
        alert(document.forms[0].JS_EMPTY.value);
        return false;
    }
    if (!isCompat()) {
        alert(document.forms[0].JS_ERR4.value);
        return false;
    }
    for (var i = 0; i < sysBetArray.length; i++) {
        if (sysBetArray[i].stake > 0) {
            // Updated by Sabari on 02 Aug 2008 to set the mode before placing a bet
            document.getElementById(hdnBet).value = "bet";
            return true;
        }
    }
    if (document.forms[0].sStake != null)
        if (document.forms[0].sStake.value > 0) {
        // Updated by Sabari on 02 Aug 2008 to set the mode before placing a bet
        document.getElementById(hdnBet).value = "bet";
        return true;
    }
    //   alert("Stake Not Entered");
    alert(document.forms[0].JS_ERR1.value);
    return false;
}

function competitionValidation() {
    // Updated by Sabari on 30 July to fix issues with selections
    if (document.forms[0].Compchoice.length != undefined) {
        for (var i = 0; i < document.forms[0].Compchoice.length; i++) {
            if (document.forms[0].Compchoice[i].checked)
                return true;
        }
        //alert("Please select atleast one competition.");
        alert(document.getElementById("JS_NoComp").value);
        return false;
    }
    else {
        if (document.forms[0].Compchoice.checked) {
            return true;
        }
        else {
            //alert("Please select atleast one competition.");
            alert(document.getElementById("JS_NoComp").value);
            return false;
        }
    }
}

function window_onload() {
    vd();
    document.forms[0].IT.value = Math.floor(Math.random() * 100000);
}

function vd() {
    document.forms[0].IR.value = Math.floor(Math.random() * 100000);
    // Updated by Sabari on 09 Aug 2008 to set the mode before placing a bet on click of confirm button
    document.getElementById(hdnBet).value = "bet";
    return true;
}

function vmd() {
    // Commented by Sabari on 15 Apr 2008 - SMS Check box does not exist in the page

    //  if ((!document.forms[0].SMS.checked) && (!document.forms[0].Email.checked))
    //  {
    //    alert(document.forms[0].JS_NOTFN.value);
    //    return false;
    //  }
    //  if (document.forms[0].SMS.checked)
    //  {
    //    if (document.forms[0].txtMobileNumber.value.length < 5)
    //    {
    //      alert(document.forms[0].JS_MOBILE.value);
    //      return false;
    //    }
    //  }

    if (document.forms[0].Email.checked) {
        if (document.getElementById(txtEmail).value == "") {
            alert(document.forms[0].JS_EMAIL.value);
            return false;
        }
    }
    document.getElementById(hdnBet).value = "bet";
    return true;
}

function emailCheck(emailStr) {
    var emailPat = /^(. + )@(. + )$/;
    var specialChars = "\\(\\)<>@,;:\\\\\\\"\\.\\[\\]";
    var validChars = "\[^\\s" + specialChars + "\]";
    var quotedUser = "(\"[^\"]*\")";
    var ipDomainPat = /^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
    var atom = validChars + '+';
    var word = "(" + atom + "|" + quotedUser + ")";
    var userPat = new RegExp("^" + word + "(\\." + word + ")*$");
    var domainPat = new RegExp("^" + atom + "(\\." + atom + ")*$");
    var matchArray = emailStr.match(emailPat);
    if (matchArray == null) {
        return false
    }
    var user = matchArray[1];
    var domain = matchArray[2];

    if (user.match(userPat) == null) {
        return false
    }
    var IPArray = domain.match(ipDomainPat);
    if (IPArray != null) {
        for (var i = 1; i <= 4; i++) {
            if (IPArray[i] > 255) {
                return false;
            }
        }
        return true;
    }
    var domainArray = domain.match(domainPat);
    if (domainArray == null) {
        return false;
    }
    var atomPat = new RegExp(atom, "g");
    var domArr = domain.match(atomPat);
    var len = domArr.length;
    if (domArr[domArr.length - 1].length < 2 || domArr[domArr.length - 1].length > 3) {
        return false;
    }
    if (len < 2) {
        return false;
    }
    return true;
}

function ResetOddsSelections() {
    var allSelects = document.getElementsByTagName("select");
    for (var i = 0; i < allSelects.length; i++)
        if (allSelects.item(i).name == "oddsGroup")
        allSelects.item(i).selectedIndex = 0;
    return false;
}

function ResetSelections() {
    if (document.forms[0].Compchoice.length != undefined) {
        for (var i = 0; i < document.forms[0].Compchoice.length; i++) {
            document.forms[0].Compchoice[i].checked = false
        }
    }
    else {
        document.forms[0].Compchoice.checked = false;
    }
}


var maxColOdd;
var minColOdd;
function totCols() {

    // Updated by Sabari on 22 Nov 08 to store Min Odds as a part of the column bets
    var totalCols = 0;
    var maxOdds = 0;
    var minOdds = 0;
    var colArr = new Array();
    var anCol;
    var currMaxOdds;
    var currMinOdds;
    var currEvtCode;
    var currEvtCnt
    var tColOd = 0;
    var tminColOd = 0;
    var evtFlg;
    var evtCnt = 1;
    var eventsStr;
    var selCount = 0;
    for (var j = 0; j < selectedOdds.length; j++) {
        if (selectedOdds[j].isSystemBet) {
            selCount++;
            evtCnt = 1;
            evtFlg = false;
            currMinOdds = Math.log(selectedOdds[j].odds);
            currMaxOdds = Math.log(selectedOdds[j].odds);
            currEvtCode = selectedOdds[j].eventCode;
            currEvtCnt = Math.log(1);
            anCol = new colBets(currEvtCode, currMinOdds, currMaxOdds, currEvtCnt);

            for (var k = 0; k < colArr.length; k++) {
                if (currEvtCode == colArr[k].eventCode) {
                    if (colArr[k].maxOdds < currMaxOdds)
                        colArr[k].maxOdds = currMaxOdds;
                    if (colArr[k].minOdds > currMinOdds)
                        colArr[k].minOdds = currMinOdds;

                    evtFlg = true;
                    colArr[k].count = Math.log(Math.exp(colArr[k].count) + 1);
                    //	alert(colArr[k].count);

                }
            }
            if (!evtFlg)
                colArr[colArr.length] = anCol;

            ColumnBetCount = colArr.length;
            //	totalCols = totalCols*selectedOdds[j].cnt;
            //	if (selectedOdds[j].cnt>2)
            //		totalCols = totalCols/(selectedOdds[j].cnt-1);
        }
        //eventsStr += selectedOdds[j].name + bottomSplit + selectedOdds[j].odds + bottomSplit + selectedOdds[j].isbnker + bottomSplit + selectedOdds[j].isSystemBet + bottomSplit + selectedOdds[j].eventCode + bottomSplit + selectedOdds[j].oddsTitle + bottomSplit + selectedOdds[j].compatibleNum + bottomSplit + selectedOdds[j].sommableNum + bottomSplit + selectedOdds[j].selId + bottomSplit + selectedOdds[j].oddsRep + bottomSplit + selectedOdds[j].minSel + bottomSplit + selectedOdds[j].maxSel + bottomSplit + selectedOdds[j].expiryDate + topSplit; 	
    }
    for (var m = 0; m < colArr.length; m++) {
        tColOd += parseFloat(colArr[m].maxOdds);
        tminColOd += parseFloat(colArr[m].minOdds);
        totalCols += parseFloat(colArr[m].count);
    }
    maxColOdd = fmt(Math.exp(tColOd));
    minColOdd = fmt(Math.exp(tminColOd));
    var colBetsPropVal = new colBetsProp(parseInt(Math.exp(totalCols) + 0.5), minColOdd, maxColOdd)
    
    colArrWinPlus = colArr;
    
    return colBetsPropVal;
}

// Modified by Sabari on 22 Nov 08 to hold minOdds in the ColBets Array
function colBets(eventCode, minOdds, maxOdds, count) {
    this.eventCode = eventCode;
    this.minOdds = minOdds;
    this.maxOdds = maxOdds;
    this.count = count;

}
function colBetsProp(cols, minodds, odds) {
    this.cols = cols;
    this.minodds = minodds;
    this.odds = odds;
}

function setColStk(obj, cols, isTotal) {
    if (isTotal)
        document.forms[0].sStake.value = fmt((obj.value / cols) + (obj.value % cols));
    else
        document.forms[0].sStake_Ttl.value = fmt(obj.value * cols);
    document.getElementById("maxWin").innerHTML = fmt(document.forms[0].sStake.value * maxColOdd);
    document.getElementById("cost").innerHTML = fmt(document.forms[0].sStake_Ttl.value);
    document.getElementById("noOfBets").innerHTML = cols;

}

function ChangeEventStatus(thisObj, eventCheckboxName) {

    var checked = thisObj.checked;

    //get all event check box and toggle it's state
    var EventCheckboxes = document.getElementsByName(eventCheckboxName);

    for (var i = 0; i < EventCheckboxes.length; i++) {
        EventCheckboxes[i].checked = checked;
    }

}

function pause(numberMillis) {
    var now = new Date();
    var exitTime = now.getTime() + numberMillis;
    while (true) {
        now = new Date();
        if (now.getTime() > exitTime)
            return;
    }
}


$(document).ready(function() {

// Updated by Sabari on 05 Feb 09 to show the highlights panel after everything is loaded
$('#divHighlights1').hide();
    
    
    // Hide the Bet confirm Panel by Default
    $('#divBetPreConfirmPanel').hide()
    $('#divBetConfirmPanel').hide()
    $('#divBSlipLoading').hide()
    $('#divBSlipCount').hide()

    $('#divQBetEventListButtons').hide()
    $("#eventLookup").tokenInput("../HttpHandlers/EventList.ashx", {
        hintText: document.getElementById("JS_EventType").value,
        noResultsText: document.getElementById("JS_NoResults").value,
        searchingText: document.getElementById("JS_Searching").value

    });

    //check for GIC mode and fill sub clients
    GetGICSubClientList();

    // Click Event for Bet Button
    $('#btnBet1').click(function() {
        if (GICValidation() == false) {
            return false;
        }

        if (stakeValidation() == false) {
            return false;
        }
        // $('#divBetSlip').animate({ opacity: 'hide' }, "slow");
        $('#divBetSlip').hide()
        $('#divQuickBet').hide()
        $('#divBetPreConfirmContent').empty();
        $('#bConfirm').show()
        var vEventsArr = document.getElementById(eventsArr).value;
        var vSYSARR = document.getElementById(sysArr).value;
        var vColPromoDetails = document.getElementById(hdnColDPromoDetails).value;
        var vPromoDetails = document.getElementById(hdnDPromoDetails).value;
        var vsingleStake = document.getElementById(singleStake).value;
        var vtotal_stake = document.getElementById("total_stake").value;
        var vmaxwinHF = document.getElementById(maxwinHF).value;
        var vcurrencyCode = document.getElementById(hdCurr).value;

        var vOddsType = document.getElementById(hdOddsType).value;
        var vchgOdds = document.getElementById(chgOdds).value;
        var vspc = document.getElementById(spc).value;
        var vIsColumnBet = document.getElementById(clmBet).value;
        var vtotalColumns = document.getElementById(ttlClm).value;
        var bsArr, bsplit;
        bsplit = "^$^";
        $('#divBSlipLoading').show()
        $.post("../HttpHandlers/BetSlip.ashx", { mode: 'BS', EVENTSARR: vEventsArr, SYSARR: vSYSARR, ColPromoDetails: vColPromoDetails, PromoDetails: vPromoDetails, singleStake: vsingleStake, total_stake: vtotal_stake, maxwinHF: vmaxwinHF, currencyCode: vcurrencyCode, OddsType: vOddsType, chgOdds: vchgOdds, spc: vspc, clmBet: vIsColumnBet, ttlClm: vtotalColumns }, function(data) {
            bsArr = data.split(bsplit);

            var hidClientLevel1 = document.getElementById(hidClientLevel);
            if (hidClientLevel1 != null && hidClientLevel1 != "undefined" && hidClientLevel1.value == 85)
                $('#divBetPreConfirmPanelHeading').empty().append(":: " + document.getElementById("JS_BettingSlip").value + " (" + GetGICSubClientID() + ")");
            else
                $('#divBetPreConfirmPanelHeading').empty().append(":: " + document.getElementById("JS_BettingSlip").value);

            $('#divBetPreConfirmContent').append(bsArr[0]);
            $('#divBetPreConfirmPanel').show()
            $('#divPreBetButtons').show()
            $('#divBSlipLoading').fadeOut();

        });

    });

    // Click Event for Back Button
    $('#bBack').click(function() {
        $('#divBetSlip').show()
        $('#divQuickBet').show()
        $('#divBetPreConfirmPanel').hide()
        $('#divBetConfirmPanel').hide()
        document.getElementById(chgOdds).value = "";
        //document.getElementById("bConfirm").value = "Confirm";
        document.getElementById("bConfirm").value = document.getElementById("JS_Confirm").value;
    });

    // Click Event for Confirm Button
    $('#bConfirm').click(function() {
        $('#divBetSlip').hide()
        $('#divQuickBet').hide()
        $('#divBetPreConfirmContent').empty();
        $('#divBetConfirmContent').empty();
        $('#divBetPreConfirmPanel').hide()

        var vEventsArr = document.getElementById(eventsArr).value;
        var vSYSARR = document.getElementById(sysArr).value;
        var vColPromoDetails = document.getElementById(hdnColDPromoDetails).value;
        var vPromoDetails = document.getElementById(hdnDPromoDetails).value;
        var vsingleStake = document.getElementById(singleStake).value;
        var vtotal_stake = document.getElementById("total_stake").value;
        var vmaxwinHF = document.getElementById(maxwinHF).value;
        var vcurrencyCode = document.getElementById(hdCurr).value;

        var vOddsType = document.getElementById(hdOddsType).value;
        var vchgOdds = document.getElementById(chgOdds).value;
        var vspc = document.getElementById(spc).value;
        var vIsColumnBet = document.getElementById(clmBet).value;
        var vtotalColumns = document.getElementById(ttlClm).value;
        var bcArr, bsplit;
        bsplit = "^$^";
        $('#divBSlipLoading').show()
        $.post("../HttpHandlers/BetSlip.ashx", { mode: 'BC', EVENTSARR: vEventsArr, SYSARR: vSYSARR, ColPromoDetails: vColPromoDetails, PromoDetails: vPromoDetails, singleStake: vsingleStake, total_stake: vtotal_stake, maxwinHF: vmaxwinHF, currencyCode: vcurrencyCode, OddsType: vOddsType, chgOdds: vchgOdds, spc: vspc, clmBet: vIsColumnBet, ttlClm: vtotalColumns, IT: '0', IR: '0', SubClientID: GetGICSubClientID() }, function(data) {
            bcArr = data.split(bsplit);

            if (bcArr[2] != "") {
                // Print the Bet Summary
                $('#divBetPreConfirmContent').append(bcArr[2]);
                $('#divBetPreConfirmPanel').show()
                $('#divPreBetButtons').hide()
                betPSummary = "";
            }
            if (bcArr[6] != "") {
                // Print the Bet Confimration Message
                $('#divBetConfirmContent').append(bcArr[6]);
                betPSummary = bcArr[7]; // Added by Sabari on 12 June to print the bet slip
                $('#divBetConfirmPanel').show()
                $('#divBetButtons').show()

            }
            if (bcArr[0] != "") {
                // Case when Odds are changed
                document.getElementById(chgOdds).value = bcArr[0];
                document.getElementById(hdnColDPromoDetails).value = bcArr[4]; // Col Promo
                document.getElementById(hdnDPromoDetails).value = bcArr[3];  // Promo
                document.getElementById(maxwinHF).value = bcArr[5]; // max Win based on new odds.
                //document.getElementById("bConfirm").value = "Re-Confirm";
                document.getElementById("bConfirm").value = document.getElementById("JS_ReConfirm").value;

                $('#divPreBetButtons').show()
                $('#divBetButtons').hide()
                betPSummary = "";

            }
            else {
                document.getElementById(chgOdds).value = "";
                //document.getElementById("bConfirm").value = "Confirm";
                document.getElementById("bConfirm").value = document.getElementById("JS_Confirm").value;
            }
            if (bcArr[1] != "") {
                // Case when bet not saved and display errror message
                $('#divPreBetButtons').show()
                $('#bConfirm').hide()
                $('#divBetButtons').hide()
                betPSummary = "";
                document.getElementById(chgOdds).value = "";
            }
            $('#divBSlipLoading').fadeOut();

            if (bcArr[8] != null && bcArr[8] != "") {
                $('#' + lblClientBalance)[0].innerHTML = bcArr[8];
            }
        });

    });

    // Click Event for OK Button after bet confirmation
    $('#bOK').click(function() {
        // Check if the betslip needs to be cleared

        $('input:checkbox[name=chkClearSlip]:checked').each(function() {
            if (this.checked == true) {
                // Clear the slip
                clearSlip();
            }
        });

        // Clear only the amounts
        clearSlipAmts();

        $('#divBetSlip').show()
        $('#divQuickBet').show()
        $('#divBetPreConfirmPanel').hide()
        $('#divBetConfirmPanel').hide()

        //check for GIC mode and fill sub clients
        GetGICSubClientList();
    });

    // Click Event for Proceed Button for Quick Bet
    $('#bProceed').click(function() {
        var evlist = document.getElementById("eventLookup").value;

        if (evlist.length > 0) {
            //$('#divpreQBet').slideUp();
            $('#divpreQBet').hide();
            $('#divQBetEventList').empty();
            //$('#divLoading').show()
            var strOddType = document.getElementById(hdOddsType).value;
            $.post("../HttpHandlers/Competition.ashx", { EventID: evlist, OddsType: strOddType, MarketID: 0, TimeFrame: 0, mode: 'EASYBET' }, function(data) {
                //    alert(data);
                $('#divQBetEventList').append(data);

                $('#divQBetEventListButtons').show();
                $('#divQBetEventList').slideDown();

                SetSelectedOdds();
            });
        }
        else {
            //alert("No Events Selected");
            alert(document.getElementById("JS_NoEvents").value);
        }

    });


    // Click Event for Back Button for Quick Bet
    $('#bQBetBack').click(function() {

        $('#divQBetEventList').hide();
        $('#divQBetEventListButtons').hide();
        $('#divpreQBet').show();
    });

    // Click Event for OK Button after quick bet selection
    $('#bQuickBet').click(function() {

        var cboQBetIndex = document.getElementById('QoddsGroup').selectedIndex
        var cboQBetValue = document.getElementById("QoddsGroup")[cboQBetIndex].value;
        //var cboQBetEvent = document.getElementById("QoddsGroup")[cboQBetIndex].EventName;

        var cboQBetEvent = $('#QoddsGroup').attr("EventName");

        var evcode = document.getElementById("txtQEvent").value;
        if (cboQBetValue != 0) {
            AddToSlipFromSelect(cboQBetEvent, evcode, cboQBetValue);
            $('#divQuickBetSelect').empty();
            $('#divQuickBetSelect').append("<SELECT class=\"OddsDropDown\" name=\"QoddsGroup\" id=\"QoddsGroup\"> <OPTION EventName='' selected value=0>" + document.getElementById("JS_SELECTODDS").value + "</OPTION></SELECT>");
        }
        $('#txtQEvent').focus();

    });

    // Updated by Sabari on 05 Feb 09 to show the highlights panel after everything is loaded
    $('#divHighlights1').show();
    $('#' + ActiveSportsMenu).attr("style", "");


})

function GetEventList() {

}

function BetSlipClick() {

    if (result.length > 0) {
        $('#divMainContent').hide(); // Hide the Main content
        $('#divMainContent').empty(); // Clear the Main content
        $('#divQBetSelect').hide(); // Hide Q Bet Content
        $('#divCompContent').show(); // Display the betting Content
        $('#divBetContent').show(); // Display the betting Content
        UpdateCompetition();
    }

    //  $('#dvComp').append(" Kindly select Competitions from the Left Menu and Continue"); // Hide the Main content


    //   $('#divMainContent').hide(); // Hide the Main content
    //   $('#divMainContent').empty(); // Clear the Main content
    //   $('#divBetContent').show(); // Display the betting Content
}

function LoadTodayEvents() {

    $('#divMainContent').hide(); // Hide the Main content
    $('#divMainContent').empty(); // Clear the Main content
    $('#divQBetSelect').hide(); // Hide Q Bet Content
    $('#divCompContent').show(); // Display the betting Content
    $('#divBetContent').show(); // Display the betting Content

    $('#dvComp').empty();
    $('#dvComp').addClass("scroll-pane");
    $('#divLoading').show()
    var strOddType = document.getElementById(hdOddsType).value;
    $.post("../HttpHandlers/Competition.ashx", { OddsType: strOddType, mode: 'TODAY' }, function(data) {
        $('#dvComp').append(data);
        $('#divLoading').fadeOut();
        // alert(data);
        SetSelectedOdds();
        //$('#dvscrollCustom').show();
        //$('#dvComp').jScrollPane({scrollbarWidth:10, scrollbarMargin:10});

    });

}

function MiniPrintResults() {
    var sOption = "toolbar=yes,location=no,directories=yes,menubar=yes,";
    sOption += "scrollbars=yes,width=750,height=400,left =100,top=25";

    //var sWinHTML = document.getElementById('tableMain').outerHTML;
    //sWinHTML = sWinHTML.replace("border=0","border=1");
    // sWinHTML = sWinHTML.replace("border=0","border=1");
    // sWinHTML = sWinHTML.replace("border=1","border=0");

    var sWinHTML = document.getElementById('divBetPreConfirmContent').outerHTML;
    var sWinHTML1 = document.getElementById('divBetConfirmContent').outerHTML;
    //var sWinHTML = document.getElementById('tblPrint').outerHTML;

    sWinHTML = sWinHTML1 + "<br>" + sWinHTML;


    var winprint = MM_openBrWindow("../PrintFriendly.aspx", "PrintFriendly", "sOption", "380", "400", "true");
    winprint.document.open();

    winprint.document.write("<html><head>");
    winprint.document.write("<link id='_ctl0__ctl2' href='../Styles/PrinterFriendly.css' type='text/css' rel='stylesheet' />");
    winprint.document.write("</head><body class='bodyLookup' onload='javascript:onClick=window.print();window.close();'><center><br/>");
    winprint.document.write(betPSummary);
    winprint.document.write("</center></body></html>");

    winprint.document.close();
    winprint.focus();


}

function FilterByMarket(CompID, MarketID, obj, ctr) {


    //    for (var i = 0; i < ctr + 1; i++) {
    //        $('#Compdiv_' + CompID + '_' + i).removeClass("bettypeon");
    //        $('#Compdiv_' + CompID + '_' + i).removeClass("bettype");
    //        $('#Compdiv_' + CompID + '_' + i).addClass("bettype");

    //        $('#Compdiv_' + CompID + '_' + i).mouseover(function() {
    //              $('#Compdiv_' + CompID + '_' + i)
    //                .removeClass("bettypeon")
    //                .removeClass("bettype")
    //                .addClass("bettypeon")

    //        });
    //        
    //        $('#Compdiv_' + CompID + '_' + i).mouseout(function() {
    //            $('#Compdiv_' + CompID + '_' + i)
    //                .removeClass("bettypeon")
    //                .removeClass("bettype")
    //                .addClass("bettype")

    //        });
    //    }

    //    jQuery(obj).mouseout(function() {
    //    jQuery(obj)
    //            .removeClass("bettypeon")
    //            .removeClass("bettype")
    //            .addClass("bettypeon")
    //    });



    //  alert(MarketID);
    $('#div_' + CompID).slideUp();
    $('#div_' + CompID).empty();

    var dropdownIndex = document.getElementById('cboEventTime').selectedIndex
    var dropdownValue = document.getElementById("cboEventTime")[dropdownIndex].value;


    //$('#divLoading').show()
    var strOddType = document.getElementById(hdOddsType).value;
    $.post("../HttpHandlers/Competition.ashx", { CompID: CompID, OddsType: strOddType, MarketID: MarketID, TimeFrame: dropdownValue, mode: 'BET' }, function(data) {
        //    alert(data);
        $('#div_' + CompID).append(data);
        $('#div_' + CompID).slideDown();
        //  $('#divLoading').fadeOut();
        SetSelectedOdds();
    });
}

function DeleteComp(mode, CompID) {

    if (mode == '0')
        $('#div_Comp_Content_' + CompID).slideUp();
    else if (mode == '1')
        $('#div_Comp_Content_' + CompID).slideDown();
    else if (mode == '2') {
        $('#div_Comp_' + CompID).remove();
        //$('#dvComp').jScrollPane({ scrollbarWidth: 10, scrollbarMargin: 10 });
    }
    else {
    }
   
}

function LoadClosingBets(timeFrame) {
    $('#divClosingBets').slideUp();
    $('#divClosingBets').empty();

    var strOddType = document.getElementById(hdOddsType).value;
    $.post("../HttpHandlers/Competition.ashx", { OddsType: strOddType, TimeFrame: timeFrame, mode: 'CLOSING' }, function(data) {
        $('#divClosingBets').append(data);
        $('#divClosingBets').slideDown();

        SetSelectedOdds();

    });

}

function UpdateSubClient() {
    var subClientList1 = document.getElementById("ddlSubClients");
    var hidSubClientId1 = document.getElementById(hidSubClientId);

    if (subClientList1.value == "INVALID") {
        hidSubClientId1.value = "";
        return;
    }
    if (subClientList1.value == "NEW") {
        location.href = "../GIC/GicClientRegistration.aspx";
        return;
    }

    hidSubClientId1.value = subClientList1.value;
}


function GICValidation() {

    var hidClientLevel1 = document.getElementById(hidClientLevel);
    var subClientList1 = document.getElementById("ddlSubClients");

    if (hidClientLevel1 != null && hidClientLevel1 != "undefined" && hidClientLevel1.value == 85) {
        if (subClientList1.value == "INVALID") {
            //alert("Please select client");
            alert(document.getElementById("JS_SelClient").value);
            return false;
        }
        else
            return true;
    }

    return true;
}

function GetGICSubClientID() {

    var hidClientLevel1 = document.getElementById(hidClientLevel);
    var hidSubClientId1 = document.getElementById(hidSubClientId);
    var subClientId1;
    if (hidClientLevel1 != null && hidClientLevel1 != "undefined" && hidClientLevel1.value == 85) {
        subClientId1 = hidSubClientId1.value.split('|')[0];
        return subClientId1;
    }

    return "";
}


function GetGICSubClientList() {
    var hidClientLevel1 = document.getElementById(hidClientLevel);
    if (hidClientLevel1 != null && hidClientLevel1 != "undefined" && hidClientLevel1.value == 85) {
        $.post("../HttpHandlers/EventList.ashx", { mode: 'GIC' }, function(data) {
            $('#divGICClients').empty().append(data);
        });
    }
}

function CheckHighLightSelectedOdds(context) {

    var sel = context.getAttribute("selectedOdd");
    if (sel != null && getIndexForHightlight(sel) == -1) {
        context.className = "consoleselect";
    }
}

function CheckSelectedOdds(context) {

    var sel = context.getAttribute("selectedOdd");
    if (sel != null && getIndexForHightlight(sel) == -1) {
        context.className = "bet";
    }
}

function SetHighLightSelectedOdds() {

    for (var i = 0; i < selectedOdds.length; i++) {
        var sel = selectedOdds[i].eventCode + "_" + selectedOdds[i].selId;
        if (sel != null && getIndexForHightlight(sel) > -1) {
            $("td[selectedOdd=" + sel + "]").attr("class", "consoleselectwidehighlight");
        }
    }
}

function SetSelectedOdds() {

    for (var i = 0; i < selectedOdds.length; i++) {
        var sel = selectedOdds[i].eventCode + "_" + selectedOdds[i].selId;
        if (sel != null && getIndexForHightlight(sel) > -1) {
            $("td[selectedOdd=" + sel + "]").attr("class", "highlight");
        }
    }
}

function ClearSelectedOdds() {

    for (var i = 0; i < selectedOdds.length; i++) {
        var sel = selectedOdds[i].eventCode + "_" + selectedOdds[i].selId;
        if (sel != null && getIndexForHightlight(sel) > -1) {
            $("td[selectedOdd=" + sel + "]").attr("class", "bet");
            $("select[selectedOdd=" + selectedOdds[i].eventCode + "]").val("0");
        }
    }
}

// Added by Sabari on 27 Dec 09 to load selections based on quickbet on bet slip control
function LoadQuickBetSelections() {
    var evcode = document.getElementById("txtQEvent").value;
    var qbArr, qbplit;
    qbplit = "^$^";
    if (evcode.length > 0) {
        $('#divQuickBetSelect').empty();
        //$('#divLoading').show()
        var strOddType = document.getElementById(hdOddsType).value;
        $.post("../HttpHandlers/Competition.ashx", { EventID: evcode, OddsType: strOddType, mode: 'QUICKBET' }, function(data) {
            //    alert(data);
            qbArr = data.split(qbplit);
            if (qbArr[1] == "true") {
                $('#divQuickBetSelect').append(qbArr[0]);
                document.getElementById('QoddsGroup').focus();
            }
            else {
                $('#divQuickBetSelect').append("<img src=\"http://cache.agenziasportiva.com/sportsbook/image/error1.png\" border='0' alt='Event Not Found'>");
                $('#divQuickBetSelect').append(qbArr[0]);
                $('#txtQEvent').select();
                $('#txtQEvent').focus();

            }
        });
    }
    else {
        //alert("No Events Selected");
        alert(document.getElementById("JS_NoEvents").value);
    }
}
