﻿var fltrColumns = {};
var fltrValues = {};
var srtColumns = [];
var mySelection = new Array(200);
var myLastIdx = -1;
var mySelectedAirline;
var ShowULDCols = false;
var HideCols = [15,16,17,18,19];
var idxBand = 4;
var ManagerOn = false;
var fltrVal = [];
var _PostBackSender;
var srt = 'ASC';
var srtPrevField = 'CarrierCodeID';

Array.prototype.has=function(v){
    for (var n=0; n < this.length; n++){
        if (this[n]== v){ 
            return true;
        }
    }
    return false;
}

function gridScroll(sender){
    document.getElementById(_panelHeader).style.left = -sender.scrollLeft + 'px';
}

function doPostBack(sender){
    _PostBackSender = sender;
    if(ManagerOn){saveChanges();}
    
    document.getElementById('updateInProgress').style.visibility = 'visible';
    __doPostBack(_gridView,"");
}
function getTZWindowHeight() {
    
    var myHeight = 600; 
    var myWidth = 800; 
    if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) { 
        //IE 6+ in 'standards compliant mode' 
        myHeight = document.documentElement.clientHeight;
        myWidth = document.documentElement.clientWidth;
    } 
    else { 
        if (document.body && ( document.body.clientWidth || document.body.clientHeight)) { 
            //  IE 4 compatible 
            myHeight = document.body.clientHeight; 
            myWidth = document.body.clientWidth; 
        } 
    } 
    if (document.layers) { myHeight = window.innerHeight; } // ns4 only 
    // 
    if(typeof _panelheight == 'undefined'){
    
        return;
    }
    var pnlHeight = myHeight - _panelheight - 10;
    var pnlWidth = myWidth - 22;
    if(document.getElementById('PanelRateMore')!== null){
        //  Retemangement more panel exist
        if(PropertiesIsVisible){
            var panelMore = document.getElementById('PanelRateMore');
            pnlHeight = pnlHeight + 34 - 50;// - 46;
        }
        else{
            pnlHeight = myHeight - _panelheight+70;
        }
    }
    else {
        if(typeof(_tbUpdateMessage) != "undefined"){
            //  use a control only available in the Publish section
            pnlHeight =  pnlHeight + 110;
        }
    }
    
    if(typeof _clientHeight == 'undefined'){
        return;
    }
    document.getElementById(_clientHeight).value = pnlHeight;
    document.getElementById(_clientWidth).value = pnlWidth;
    
    if(pnlHeight < 0) {return;}
    
    if(document.getElementById(_panelGrid) != null){
        document.getElementById(_panelGrid).style.height = pnlHeight + 'px';
        document.getElementById(_panelGrid).style.width = pnlWidth + 'px';
        document.getElementById(_positionClip).style.width = pnlWidth + 'px';
    }
    
    //document.getElementById(_panelGrid).onscroll();
}
function WebForm_CallbackComplete_SyncFixed() {
  // SyncFix: the original version uses "i" as global thereby resulting in javascript errors when "i" is used elsewhere in consuming pages
  for (var i = 0; i < __pendingCallbacks.length; i++) {
        callbackObject = __pendingCallbacks[ i ];
      if (callbackObject && callbackObject.xmlRequest && (callbackObject.xmlRequest.readyState == 4)) {
       // the callback should be executed after releasing all resources 
       // associated with this request. 
       // Originally if the callback gets executed here and the callback 
       // routine makes another ASP.NET ajax request then the pending slots and
       // pending callbacks array gets messed up since the slot is not released
       // before the next ASP.NET request comes.
       // FIX: This statement has been moved below
       // WebForm_ExecuteCallback(callbackObject);
       if (!__pendingCallbacks[ i ].async) {
         __synchronousCallBackIndex = -1;
       }
       __pendingCallbacks[i] = null;

       var callbackFrameID = "__CALLBACKFRAME" + i;
       var xmlRequestFrame = document.getElementById(callbackFrameID);
       if (xmlRequestFrame) {
         xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);
       }

       // SyncFix: the following statement has been moved down from above;
       WebForm_ExecuteCallback(callbackObject);
        }
    }
 
}


function showBand(sender){
    var grid = document.getElementById(_gridView);
    var sort = document.getElementById(_tblSort);
    var filter = document.getElementById(_tblFilter);
    
    ShowULDCols = (sort.rows[0].cells[idxBand].style.visibility == 'visible') ? false : true;//Band ULD
    /*
    var grid = document.getElementById(_gridView);
    var sort = document.getElementById(_tblSort);
    var filter = document.getElementById(_tblFilter);
    */
    var sty_visible = (ShowULDCols)? 'visible' : 'hidden';
    var sty_display = (ShowULDCols)? 'block' : 'none';
    var nRows = grid.rows.length;
    var declinedWidth = 0;
    for(var n = 0 ; n < nRows;n++){
        for(var j = 0 ; j < HideCols.length;j++){
            grid.rows[n].cells[HideCols[j]].style.visibility = sty_visible;
            grid.rows[n].cells[HideCols[j]].style.display = sty_display;
            //
        }
    }
    
    for(var c = 0 ; c < HideCols.length;c++){
        var strWidth = filter.rows[0].cells[HideCols[c]+1].style.width.replace("px","");
        declinedWidth += parseInt(strWidth)+1;
                
        filter.rows[0].cells[HideCols[c]+1].style.visibility = sty_visible;
        filter.rows[0].cells[HideCols[c]+1].style.display = sty_display;
        //
        sort.rows[1].cells[HideCols[c]+1].style.visibility = sty_visible;
        sort.rows[1].cells[HideCols[c]+1].style.display = sty_display;
    }
    
    sort.rows[0].cells[idxBand].style.visibility = sty_visible;
    sort.rows[0].cells[idxBand].style.display = sty_display;
    
    var newSrtWidth = grid.style.width.replace("px","");
    var w = (ShowULDCols)? 1720  : 1415;
    
    grid.style.width = w + 'px';
    //
    gridScroll(grid.parentElement.parentElement);
}

var objFilter;
var lastObjeFilter;

function filterValueChanged(field, sender){
    
    getTZWindowHeight();
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    var fltr = '';
    if(objFilter == null) return;
    
    if(fltrColumns[objFilter.id] === null){
        fltrColumns[objFilter.id] = field;
        fltrValues[objFilter.id] = objFilter.value;
    }
    else{
        fltrColumns[objFilter.id] = field;
        fltrValues[objFilter.id] = objFilter.value;
    }
    
    for(var i in fltrColumns){
        if(fltrValues[i] !== ''){ fltr += fltrColumns[i] + " LIKE '" + fltrValues[i] + "%' AND ";}
    }
    fltr = fltr.substring(0,fltr.length-4);
    document.getElementById(hfFilter).value = fltr;
    if(lastObjeFilter != objFilter){
        doPostBack(objFilter);
        lastObjeFilter = objFilter;
    }
}

function sortValueChanged(field, sender){
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    //
    if(!srtColumns.has(sender.id)){srtColumns.push(sender.id);}
    
    for(var n = 0; n < srtColumns.length; n++){
        document.getElementById(srtColumns[n]).style.backgroundImage = 'none';
    }
    if(srtPrevField != field) {srt = 'ASC';}
    else if(srt == 'ASC'){srt = 'DESC';}
    else {srt = 'ASC';}
        
    var newImage = "url(../App_Themes/CargoOffice/Grid/Sorting"+srt+".gif)";
    sender.style.backgroundImage = newImage;
    document.getElementById(sender.id).style.backgroundImage = newImage;
    document.getElementById(hfSort).value = field + ' ' + srt;
    
    //  Set/reset
    mySelection = new Array(200);
    srtPrevField = field;
    //  Update grid
    doPostBack(sender);
}

function clearFilter(){
    document.getElementById(hfFilter).value = '';
    for(var i in fltrColumns)
    {
        document.getElementById(i).value = '';
        fltrValues[i] = '';
    }
    mySelection = new Array(200);

    doPostBack();
}



function ReceiveResults(rValue){
    var arg = rValue.toString().split('*');
    var fltr = '';
    if(arg[0] == 'Filter'){ 
        document.getElementById(hfFilter).value = arg[1];
        doPostBack();
    }
    else if(arg[0] == 'Sort'){
        
        document.getElementById(hfSort).value = arg[1] + ' ' + srt;
        doPostBack();
    }
    else if(arg[0] == 'Schedule'){
        var schDiv = document.getElementById('sch_'+arg[1]);
        schDiv.innerHTML = arg[2];
    }
    else if (arg[0] == 'ProductList'){
        //
        createProductList(arg[1]);
    }
    else if(arg[0] == 'SaveRates'){
        document.getElementById('updateInProgress').style.visibility = 'hidden';
        __doPostBack(_gridView,"");
    }
    else if(arg[0] == 'DeleteRows'){
        //
    }
    else if(arg[0] == 'CancelChanges'){
        //
        __doPostBack(_gridView,"");
    }
    else if(arg[0] == 'SaveExtra'){
        //  Saving extra properties ready
        document.getElementById('updateInProgress').style.visibility = 'hidden';
    }
    else if (arg[0] == 'PublishRates'){
        // don't use dopostback function
        //  causes receivinf
        document.getElementById('updateInProgress').style.visibility = 'hidden';
        __doPostBack(_gridView,"");
    }
    else if (arg[0] == 'UpdateMsg'){
        // don't use dopostback function
        //  causes receivinf
        _tbUpdateMessage.value = arg[1];
    }
    else if (arg[0] == 'BookOnline'){
        // don't use dopostback function
    }
    else{
        doPostBack();
    }
    
    //
    
}


function changeMenu(menuPopop,field,sender){
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    callMenuServer(menuPopop+'*'+field+'*'+sender.checked, sender);
}

function ReceiveMenuResults(rValue){
    //
    var arg = rValue.toString().split('*');
    if(arg[0] == 'Copy'){
    
        var div = document.getElementById('divCopy');
        div.innerHTML = arg[1];
        
        div.contentEditable = 'true';
        var controlRange;
        if (document.body.createControlRange) {
            controlRange = document.body.createControlRange();
            controlRange.addElement(div);
            controlRange.execCommand('Copy');
        }
        div.contentEditable = 'false';
    }
    else if(arg[0] == 'Print'){
        location.href = "Preview.aspx";
    }
    else if(arg[0] == 'RateType'){
        //refresh();
    }
}

function ReceiveTabResults(rValue){
    //
    var arg = rValue.toString().split('##');
    if(arg[0] != 'BookOnline'){
        var obj = document.getElementById('tbl'+arg[0]);
        if(obj != null)obj.innerHTML = arg[1];
    }
}


function ChangeProduct(sender){
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    callTabServer("Product/"+sender.value, sender);
}
function refresh(){
    document.getElementById(tbCW).style.color = '#000';
    document.getElementById(tbCW).title = '';
    //
    _tbAW = document.getElementById(tbAW).value.replace(',','.');
    _tbCW = document.getElementById(tbCW).value.replace(',','.');
    _tbMargin = document.getElementById(tbMargin).value.replace(',','.');
    
    //  Actual weight
    if(isNaN(parseFloat(_tbAW))) {
        document.getElementById(tbAW).value = '';
    }
    else {
        _tbAW = Math.ceil(2*parseFloat(_tbAW))/2; 
        _tbAW = _tbAW.toFixed(1);
    }
    //  Chargeable weight
    if(isNaN(parseFloat(_tbCW))) {document.getElementById(tbCW).value = '';}
    else {
        _tbCW = Math.ceil(2*parseFloat(_tbCW))/2; 
        _tbCW = _tbCW.toFixed(1);
    }
    if(parseFloat(_tbAW) > parseFloat(_tbCW) ){
        _tbCW = _tbAW;
        document.getElementById(tbCW).value = _tbAW;
        document.getElementById(tbCW).style.color = '#FF0000';
        document.getElementById(tbCW).title = 'Chargeable weight should be\nhigher or equal to the actual weight';
    }
    //  Margin
    if(isNaN(parseFloat(_tbMargin))) {document.getElementById(tbMargin).value = '';}
    else{
        _tbMargin = parseFloat(_tbMargin);
        document.getElementById(tbMargin).value = _tbMargin.toFixed(2).replace('.',',');
    }
    
    
    document.getElementById(tbAW).value = _tbAW.toString().replace('.',',');
    document.getElementById(tbCW).value = _tbCW.toString().replace('.',',');
   

    mySelection = new Array(200);;
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    
    doPostBack();
    
    
}



function changeTextBox(rValue, sender){
    if(rValue === '') {return;}
    
    
    mySelection = new Array(200);
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    getTZWindowHeight();
    
    document.getElementById(hfAirport).value = '';
    document.getElementById(tbAirport).value = '';
    if (typeof(tbAnyAirport)!='undefined'){document.getElementById(tbAnyAirport).value = '';}
    //
    document.getElementById(hfCity).value = '';
    document.getElementById(tbCity).value = '';
    if (typeof(tbAnyCity)!='undefined'){document.getElementById(tbAnyCity).value = '';}
    //
    document.getElementById(hfAirline).value = '';
    document.getElementById(tbAirline).value = '';
    if (typeof(tbAnyAirline)!='undefined'){document.getElementById(tbAnyAirline).value = '';}
    
    
    sender.value = rValue;    

    if (typeof(hfRegion)!='undefined'){
        if(sender.id.match('Any') !== null) {document.getElementById(hfRegion).value = '0';}
        else {
            document.getElementById(hfRegion).value = '1';
            
        }
    }
    
    
    if(sender.id.match('Airport') !== null) {
        document.getElementById(hfAirport).value = rValue;
        try{
        callServer('Airport*Airport*'+rValue, sender);
        }
        catch(err){
            var myError = err;
        }
    }
    else if (sender.id.match('City') !== null){
        document.getElementById(hfCity).value = rValue;
        callServer('City*City*'+rValue, sender);
    }
    else if (sender.id.match('Airline') !== null){
        document.getElementById(hfAirline).value = rValue;
        callServer('Airline*Airline*'+rValue, sender);
    }

    sender.blur();
   
}

function setDeparture(rValue, sender){
    document.getElementById(hfDeparture).value = rValue;
    document.getElementById(tbAnyAirport).focus();
}

function changeRateType(sender){
    if(!sender.checked){return;}
    
    var isDisabled = false;
    var css = "tbInput";
    if(sender.value > 0){
        isDisabled = true;
        css = "tbInputDisabled";
    }
    document.getElementById(tbAirport).disabled = isDisabled;
    document.getElementById(tbAirport).className = css;
    document.getElementById(tbCity).disabled = isDisabled;
    document.getElementById(tbCity).className = css;
    document.getElementById(tbAirline).disabled = isDisabled;
    document.getElementById(tbAirline).className = css;
    var btnText = "Search All Rates";
    switch(sender.value){
        case "2":
                btnText = "Ad-hoc Rates";
            break;
            case "3":
                btnText = "Contract Rates";
                document.getElementById(tbAirline).value = '';
                document.getElementById(tbCity).value = '';
                document.getElementById(tbAirport).value = '';
            break;
            case "4":
                btnText = "Promo Rates";
            break;
            case "6":
                btnText = "Show My Rates";
            break;

            
    }
    document.getElementById(btnRateType).value = btnText;
    
    callMenuServer('RateType*RateType*'+sender.value, sender);
}
function btnClear(){
    document.getElementById(tbAW).value = '';
    document.getElementById(tbCW).value = '';
    //
    doPostBack();
}
function btnClearMargin(){
    document.getElementById(tbMargin).value = '';
    //
    doPostBack();
}
function cleanUp(){
    for(var i =0; i< 200; i++){
        if(mySelection[i] !== undefined ){
            if(mySelection[i][0] !== undefined){
                var element = document.getElementById(mySelection[i][1]);
                if(element != null){
                    element.style.backgroundColor = '#FFFFFF';
                    mySelection[i][0] = false;
                }
            }
        }
    }
}
function selectAll(){
    var tbl = document.getElementById(_gridView).tBodies[0];
    
    for(var i =0; i< tbl.rows.length; i++){
        tbl.rows[i].style.backgroundColor = "#c4e0f6";
        var _id = tbl.rows[i].id;
        if(mySelection[i] === undefined){
            //  Row is not selected before
            //  IE/FireFox switch
            rowId = tbl.rows[i].cells[0].lastChild.getAttribute('TagRowId');
            mySelection[i] = [ true,_id,tbl.rows[i].innerHTML,rowId];
        }
        else{
            mySelection[i][0] = true;
        }
    }
}

function disableSelection(element) {
    if(element === null){return;}
    element.onselectstart = function() {
        return false;
    };
    element.unselectable = "on";
    element.style.MozUserSelect = "none";
    element.style.cursor = "default";
    return false;
}


function selectRow(rValue, sender, ev){
    //
    if(mySelection.length === 0){
        // First click on a new grid
        disableSelection(document.getElementById(_gridView));
        myLastIdx = -1;
    }
    var _id = sender.id;
    var el = document.getElementById(_id);
    if(mySelection[rValue] === undefined){
        //  Row is not selected before
        //alert('2'+mySelection[rValue][0]);
        if(ev.ctrlKey){
            el.style.backgroundColor = "#c4e0f6";
        }
        else{
            //CleanRows up
            cleanUp();
            el.style.backgroundColor = "#c4e0f6";
        }
        var rowId = 0;
        
        //IE/FireFox switch
        if(sender.childNodes[0].childNodes.length === 0){
            rowId = sender.childNodes[1].lastChild.getAttribute('TagRowId');
        }
        else {
            rowId = sender.childNodes[0].lastChild.getAttribute('TagRowId');
        }
        mySelection[rValue] = [ true,_id,sender.innerHTML,rowId];
    }
    else{
        if(mySelection[rValue][0] && ev.ctrlKey){
            //  remove from selection
            mySelection[rValue][0] = false;
            el.style.backgroundColor = '#FFFFFFF';
        }
        else if(mySelection[rValue][0]){
            //  Selected but no control -> keep selected
            cleanUp();
            mySelection[rValue][0] = true;
            el.style.backgroundColor = "#c4e0f6";
        }
        else if (!mySelection[rValue][0] && ev.ctrlKey){
            mySelection[rValue][0] = true;
            el.style.backgroundColor = "#c4e0f6";
        }
        else{
            cleanUp();
            mySelection[rValue][0] = true;
            el.style.backgroundColor = "#c4e0f6";
        }
    }
    var AirlineId = 0;
    //IE/FireFox switch
    if(sender.childNodes[0].childNodes.length === 0){
        AirlineId = sender.childNodes[1].lastChild.getAttribute('TagCarrierId');
    }
    else {
        AirlineId = sender.childNodes[0].lastChild.getAttribute('TagCarrierId');
    }
    //
    if(AirlineId != mySelectedAirline){
        if(typeof(hfCarrierDetail) !== 'undefined'){
            mySelectedAirline = AirlineId;//   prevent calls to server already done
            document.getElementById(hfCarrierDetail).value =  mySelectedAirline;// Second Hidden column
            callTabServer("Info/"+mySelectedAirline, sender);
            
            showTab(lbCarrierParent,0);
            var tblArray = ['tblHQ','tblContacts','tblConditions','tblCharges','tblWarehouses','tblProducts'];

            for (var i=0;i<tblArray.length;i++){
                document.getElementById(tblArray[i]).innerHTML = '<div class="tab-no-records">Loading data..</div>';
            }
        }
    }
    myLastIdx = rValue;
}

function setRowBackground(n){
    var element = document.getElementById(mySelection[n][1]);
    if(mySelection[n][0]){
        element.style.backgroundColor = '#FFFFFF';
        mySelection[n][0] = false;
    }
    else{
        element.style.backgroundColor = "#c4e0f6";
        mySelection[n][0] = true;
    }
}



function btnCopy(sender){
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    var selRows = '';
    for(var i =0; i< 200; i++){
        if(mySelection[i] !== undefined){
        
            if(mySelection[i][0]){
                //
                selRows += '<tr>' + mySelection[i][2] + '</tr>';
            }
        }
    }
    callMenuServer('Copy*Copy*'+selRows, sender);
}
function btnERate(sender){
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    var selRows = '';
    for(var i =0; i< 200; i++){
        if(mySelection[i] !== undefined){
            if(mySelection[i][0]){
                //
                selRows += '<tr>' + mySelection[i][2] + '</tr>';
            }
        }
    }
    callMenuServer('eRate*eRate*'+selRows, sender);
}

function saveCopySettings(sender){
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    var checkedValues = '';
    for(var i=0; i< 40; i++){
        var ck = document.getElementById('ctl00_ContentPlaceHolderActions_cbCopy_' + i);
        if(ck !== null){
            if(!ck.checked){
                checkedValues = checkedValues + i + ';';
            }
        }
    }
    callMenuServer('SaveClipboard*SaveClipboard*'+checkedValues, sender);
}

function btnPrint(sender){
    var selRows = '';
    for(var i =0; i< 200; i++){
        if(mySelection[i] !== undefined){
            if(mySelection[i][0]){
                //
                selRows += mySelection[i][3] + ';';
            }
        }
    }
    document.getElementById(hfMySelection).value = selRows;
}

function ChangeMarginType(sender){
    WebForm_CallbackComplete = WebForm_CallbackComplete_SyncFixed;
    document.getElementById(tbMargin).focus();
    callMenuServer('MarginType*MarginType*'+sender.value, sender);
}

function copyToClipboard(s)
{
	if( window.clipboardData && clipboardData.setData )
	{
		clipboardData.setData("Text", s);
	}
	else
	{
		// You have to sign the code to enable this or allow the action in about:config by changing
		user_pref("signed.applets.codebase_principal_support", true);
		netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
        //
		var clip = Components.classes['@mozilla.org/widget/clipboard;[[[[1]]]]'].createInstance(Components.interfaces.nsIClipboard);
		if (!clip){return;}

		// create a transferable
		var trans = Components.classes['@mozilla.org/widget/transferable;[[[[1]]]]'].createInstance(Components.interfaces.nsITransferable);
		if (!trans){return;}

		// specify the data we wish to handle. Plaintext in this case.
		trans.addDataFlavor('text/unicode');

		// To get the data from the transferable we need two new objects
		var str = {};
		var len = {};

		str = Components.classes["@mozilla.org/supports-string;[[[[1]]]]"].createInstance(Components.interfaces.nsISupportsString);

		var copytext=meintext;

		str.data=copytext;

		trans.setTransferData("text/unicode",str,copytext.length*[[[[2]]]]);

		var clipid=Components.interfaces.nsIClipboard;

		if (!clip){return false;}

		clip.setData(trans,null,clipid.kGlobalClipboard);	   
	}
}


var prevSender;
var prevAirline;

function showTab(sender,idx){
    if(prevSender !== undefined) {
        prevSender.style.backgroundColor = "#FFFFFF";
        prevSender.style.borderBottomColor = "#A3B0B6";//gray
    }
    prevSender = sender.parentNode;// parentElement;//  IE    used now for current element
    //
    prevSender.style.backgroundColor = "#DDE4E8";
    prevSender.style.borderBottomColor = "#FFFFFF";//white
    
    var tblArray = ['tblInfo','tblHQ','tblContacts','tblConditions','tblCharges','tblWarehouses','tblProducts'];

    for (var i=0;i<tblArray.length;i++)
    {
        document.getElementById(tblArray[i]).style.visibility = 'hidden';
        document.getElementById(tblArray[i]).style.display = 'none';
    }
    
    if(mySelectedAirline === null){return;}
    //
    var tableName = "MyTable";
    switch(idx){
        case 0:
            //tblCarrier
            tableName = 'tblInfo';
            //
        break;
        case 1:
            //tblHQ
            tableName = 'tblHQ';
            callTabServer("HQ/"+mySelectedAirline, sender);
        break;
        case 2:
            tableName = 'tblContacts';
            callTabServer("Contacts/"+mySelectedAirline, sender);
        break;
        case 3:
            tableName = 'tblConditions';
            callTabServer("Conditions/"+mySelectedAirline, sender);
        break;
        case 4:
            tableName = 'tblCharges';
            callTabServer("Charges/"+mySelectedAirline, sender);
        break;
        case 5:
            tableName = 'tblWarehouses';
            callTabServer("Warehouses/"+mySelectedAirline, sender);
        break;
        case 6:
            tableName = 'tblProducts';
            callTabServer("Products/"+mySelectedAirline, sender);
        break;
    }
    
    //  Set the html table visible
    var element = document.getElementById(tableName);
    if(element !== null) {
        element.style.display = 'block';
        element.style.visibility = 'visible';
    }
    
}

function OnlineBooking_Click(sender){
    if(mySelectedAirline === null){return;}
    
    callTabServer("BookOnline/" + mySelection[myLastIdx][3] , sender);
}

function SurchargeFilter(val){
    var element = document.getElementById(hfSurcharge);
    element.value = val;
    //
    doPostBack();
}

function OpenSchedulePanel(sender){
    //var expand = (sender.src.nameProp=='plus.gif')? true: false;
    var expand = (sender.src.indexOf('plus.gif') >= 0)? true: false;
    var rowId = sender.getAttribute('TagRowId');
    var schDiv = document.getElementById('sch_'+rowId);
    //var tr = sender.parentElement.parentElement.nextSibling;
    var tr = sender.parentNode.parentNode.nextSibling;
    
    if(expand){
        if(schDiv.innerHTML === ''){
            schDiv.innerHTML = '<img src="../App_Themes/CargoOffice/Grid/activity.gif" style="border-width:0px;" />';
            callServer('Schedule*'+rowId, sender);    
        }
        //else schDiv.innerHTML = "<p>content already loaded</p>";
        sender.src = '../App_Themes/CargoOffice/Grid/minus.gif';
    }
    else{
        sender.src = '../App_Themes/CargoOffice/Grid/plus.gif';
    }
    
    //  Display/Hide the row
    var sty_visible = (expand)? 'visible' : 'hidden';
    var sty_display = (expand)? 'block' : 'none';
    
    tr.style.visibility = sty_visible;
    tr.style.display = sty_display;
}

function setPagerSurcharges(sender){
    if(parseInt(sender)){
        document.getElementById(hfPage).value = sender;
    }
    else{
        document.getElementById(hfPage).value = sender.innerText;
    }
    doPostBack();
}


function TrackChanged(sender){
    var autoExt = document.getElementById("AutoCompleteTrack_completionListElem");//.parentElement.childNodes[4];
    var browser_type = navigator.appName

    if(browser_type != "Microsoft Internet Explorer"){
            //  Firefox
            if(autoExt == null){
                autoExt =$find('AutoCompleteTrack_completionListElem');
            }
            for (var j=0; j<autoExt.childNodes.length; j++){
                //
                if(autoExt.childNodes.length == 0){ 
                    return;
                }
                
                var child = autoExt.childNodes[j];
                
                if(child._text == sender.value){
                        //
                    var trackUrl = child.childNodes[1].innerHTML;
                    //_hLinkTracking = document.getElementById("<%= hLinkTracking.ClientID %>")
                    _hLinkTracking.innerHTML = trackUrl;
                    _hLinkTracking.href = trackUrl;
                    sender.value = child.lastChild.rows[0].cells[0].textContent;
                    var ckBox = document.getElementById('ckTrackPopup');
                    
                    if(ckBox.checked){
                        window.open(trackUrl, 'TrackWindow','',true);
                    }
                }
            }

        }
        else{
            for (var j=0; j<autoExt.childNodes.length; j++){
            //
                var child = autoExt.childNodes[j];
                if(child.firstChild.innerText == sender.value){
                    //
                    sender.value = child.children[2].cells[0].innerText;// "XX"
                    _hLinkTracking.innerText = child.children[1].innerText;
                    _hLinkTracking.href = child.children[1].innerText;

                    if(document.getElementById('ckTrackPopup').checked){
                        window.open(child.children[1].innerText, 'TrackWindow','',true);
                    }
                }
            }
        }
}

