function CallCss(site) {
    var sty;

    if (site != "undefined" && site != '') {
        sty = '<link href="Themes/' + site + '/CSS/Menu.css" rel="stylesheet" type="text/css" />' +
               '<link href="Themes/' + site + '/CSS/Form.css" rel="stylesheet" type="text/css" />' +
               '<link href="Themes/' + site + '/CSS/Style.css" rel="stylesheet" type="text/css" />' +
               '<link href="Themes/' + site + '/CSS/StylePrint.css" rel="stylesheet" type="text/css" />' +
               ''
    } else {
         sty = '<link href="Themes/Admin_Global/CSS/Form.css" rel="stylesheet" type="text/css" />' +
               '<link href="Themes/Admin_Global/CSS/Menu.css" rel="stylesheet" type="text/css" />' +
               '<link href="Themes/Default/CSS/Style.css" rel="stylesheet" type="text/css" /> ' +
               '<link href="Themes/Default/CSS/Form.css" rel="stylesheet" type="text/css" /> ' +
               '<link href="Themes/Default/CSS/StyleCountry.css" rel="stylesheet" type="text/css" />' +
               ''
     }

     if (site == 'cambodia' || site == 'vietnam' || site == 'laos') {
         sty = sty + '<link href="Themes/Asian/CSS/Style.css" rel="stylesheet" type="text/css" />'
     }
    document.write(sty) ;
}
function CallCssBackground(site,img) {
    var sty='<style>';

    sty = sty + "#" + site + "{";
    sty = sty + "background:url(Themes/" + site + "/Images/" + img + ") no-repeat fixed 50% bottom #000000;";
    //sty = sty + " margin-left:auto; ";
    //sty = sty + " margin-right:auto; ";
    //sty = sty + " min-width:980px; ";
    sty = sty + " text-align:center; ";
    sty = sty + "}"

    sty = sty + "body #main #body { ";
    sty = sty + "background:url(Themes/" + site + "/Images/" + site + "_1.jpg) repeat top;";
    sty = sty + "}"
    
    sty = sty + "</style>"
    document.write(sty);
}

function goUrl(n) {
    if (n == '1') {
        window.location = 'index_.aspx';   
    }
}

function myPostBack(status,argName,argVal) 
{
    if (arguments[3] == true) {
        var validationGroup = "";
        if(arguments[4]){
            validationGroup = arguments[4];
        }
        if (typeof(Page_ClientValidate) == 'function') {
            Page_ClientValidate(validationGroup);
        }
    }

    var theForm = document.forms[0];
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        var hdnStatus = document.getElementById("status");
        if(hdnStatus)hdnStatus.value = status;
        var hdnArgument = document.getElementById(argName);
        if(hdnArgument)hdnArgument.value = argVal;
        theForm.submit();
    }
}

function HaveChecked(idcheckitem)
{
    var res = false ;
    var isChecked = jQuery("input:checkbox[id*=" + idcheckitem + "]:checked").length;
    if (isChecked > 0) res = true;

    if (res != true) {
        alert("You currently have no data selected.");  
    }
    
    return res ;        
}

function confirmDelete(idcheckitem)
{   var res = false ;
    var none = true;
    // Select checkbox element is id attribute contain 'idcheckitem'
    //var frm = jQuery("input:checkbox[id*=" + idcheckitem + "]");
    
    var isChecked = jQuery("input:checkbox[id*=" + idcheckitem + "]:checked").length;
    if (isChecked > 0) none = false;
    
    if(none == true) {    
        alert("You currently have no data selected.");
        return false;  
   } else { 
        return (confirm("Are you sure you want to delete this? This will be deleted immediately, and there is no undo facility. Please click OK to delete or Cancel."));
   }
}

function confirmDelete1()
{
    return confirm("Are you sure you want to delete this? This will be deleted immediately, and there is no undo facility. Please click OK to delete or Cancel.");
}

function isNumeric(obj)
{
    return /^\d+$/.test(obj);
}


//CtrlName.Attributes("onkeypress") = "return checknum(arguments[0] , 'd','" & CtrlName.ClientID & "')"
//CtrlName.Attributes("onkeypress") = "return checknum(arguments[0])"'
function checknum(e, n, values) {
    if (!e) {
        e = window.event;
    }
    
    if (typeof e.which == "number") {
        e = e.which;
    } else if (typeof e.keyCode == "number") {
        e = e.keyCode;
    } else if (typeof e.charCode == "number") {
        e = e.charCode;
    }
    
    if (e >= 48 && e <= 57 ||e == 13 || e == 8 || e == 0 || n == "d" && e == 46) {
        if ((e == 46 && values != "") && document.getElementById(values).value.indexOf(".") > -1){
            return false;
        } else {
            return true;
        }
    } else {
        return false;
    }
    
    var i = 1;
}

// CtrlName.Attributes("onblur") = "return changefloat('" & CtrlName.ClientID & "')"

function changefloat(txt)
{ var p = txt.value ;
  if ( p == '') { p = 0 ; }
  txt.value = parseFloat(p).toFixed(2) ;   
}
function trim(str){
    return str.replace(/^\s*/, "").replace(/\s*$/, "");
}

function inputEmpty(def,item) {
    if ( item.value == '' ){
        item.value = def;
    }
}

function inputnumempty(def,item) {
    if ( item.value == '' || item.value == 0){
        item.value = def;
    }
}

function htmlencode(str){
    str = str.replace("<","&lt;");
    str = str.replace(">","&gt;");
    return str;
}

function htmldecode(str){
    str = str.replace("&gt;",">");
    str = str.replace("&lt;","<");
    return str;
}

function openWindow(url, name, w, h, scl, p)
{
    w += 32;
    h += 20;
    wleft = (screen.width - w) / 2;
    wtop = ((screen.height - h) / 2) - 50;
    if (wleft < 0) {
        w = screen.width;
        wleft = 0;
    }
    if (wtop < 0) {
        h = screen.height;
        wtop = 0;
    }
    p += (",width=" + w + ",height=" + h + ",top=" + wtop + ",left=" + wleft + ",scrollbars=" + scl);
    var win = window.open(url, name, p);
    win.focus();
}

 function checkAll(idcheckall, idcheckitem) {
 
    var chk = document.getElementById(idcheckall);
    var bState = chk.checked;
   
    var frm = document.forms[0];
    for (i = 0; i < frm.length; i++) {
        var e = frm.elements[i];
        if (e.id.indexOf(idcheckitem) != -1) {
            e.checked = bState;
        }
    }
}
function checkAll_match(idcheckall, idcheckitem) {

    var chk = document.getElementById(idcheckall);
    var bState = chk.checked;
    var frm = jQuery("input:checkbox[id*=" + idcheckitem + "]");
    
    frm.each(function() {
        this.checked = bState;
    });
}
 function checkChanged(idcheckall, idcheckitem){
    var frm = document.forms[0];
    var bAllChecked = true;
        
    for (i = 0; i < frm.length; i++) {
        var e = frm.elements[i];
        if (e.id.indexOf(idcheckitem) != -1) {
            if (e.checked == false) bAllChecked = false; 
        }
    }
    
   // alert(idcheckall);
    var checkAll =  document.getElementById(idcheckall);
    if(bAllChecked) checkAll.checked = true; else checkAll.checked = false;
}

//get jQuery object from id of element
function jsget(ctrl){ return jQuery("#"+ ctrl +"");}
//call ajax from checkbox
function ajaxCheckBox(furl, callId, id, imgId, chkImg, nochkImg, waitImg)
{
    var img = jsget(imgId);
    if(img.attr("src") == waitImg) return;
    
    var checked = (img.attr("src") == chkImg);
    img.attr("src", waitImg);
    
    var qry = 'cid='+escape(callId)+'&id='+escape(id)+'&val='+escape(checked);
    jQuery.ajax({
        type: "GET",
        url: furl,
        data: qry,
        success: function(msg){
            if(msg == "1"){
                img.attr("src", chkImg);
            }else{
                img.attr("src", nochkImg);
            }
        },
        fail: function(msg){
            alert('ajaxCheckBox failed');
        }
        });
    }

    //call ajax from radio button
    function ajaxRadioButton(furl, callId, id) {

        var qry = 'cid=' + escape(callId) + '&id=' + escape(id);
        jQuery.ajax({
            type: "GET",
            url: furl,
            data: qry,
            success: function(msg) {
                alert("Completed");
            },
            fail: function(msg) {
                alert("ajaxRadioButton failed");
            }
        });
    }



function ajaxTextBoxBegin(lblId, txtId)
{
    jsget(lblId).css("display", "none");
    var jqrtxt = jsget(txtId);
    jqrtxt.css("display", "inline");
    var txt = jqrtxt.get(0);
    txt.focus();
    txt.select();
}
function ajaxTextBox(e, furl, callId, id, lblId, txtId, imgWaitId)
{
    var evt = e?e:window.event;
	  evt.cancelBubble = true;
	  if (evt.stopPropagation) evt.stopPropagation();
	
	  if(evt.keyCode == "13"){
        var lbl = jsget(lblId);
        var txt = jsget(txtId);
        var waitImg = jsget(imgWaitId);
        var oldval = lbl.html();
        var newval = txt.val();
        
        lbl.css("display", "none");
        txt.css("display", "none");
        waitImg.css("display", "inline");
        
        var qry = 'cid='+escape(callId)+'&id='+escape(id)+'&val='+escape(newval);
        jQuery.ajax({
            type: "GET",
            url: furl,
            data: qry,
            success: function(msg){
                if(msg == "1"){
                    lbl.html(htmlencode(newval));
                    txt.val(newval);
                    if(lbl.html() == "")
                    {
                        lbl.html("-");
                    }
                }else{
                    lbl.html(htmlencode(oldval));
                    txt.val(oldval);
                }
                lbl.css("display", "block");
                txt.css("display", "none");
                waitImg.css("display", "none");
            },
            fail: function(msg){
                alert('ajaxTextBox failed');
            }
            });
	}else if(evt.keyCode == "27"){
        jsget(lblId).css("display", "block");
        jsget(txtId).css("display", "none");
	}
}
function ajaxTinyTextBoxBegin(lblId, divTxtId, txtId, lnkEditId, lnkSaveId, lnkCancelId) {
    jsget(lblId).css("display", "none");
    jsget(divTxtId).css("display", "inline");
    jsget(lnkEditId).css("display", "none");
    jsget(lnkSaveId).css("display", "inline");
    jsget(lnkCancelId).css("display", "inline");

    var jqrtxt = jsget(txtId);
    var txt = jqrtxt.get(0);
}

function ajaxTinyTextBoxCancel(lblId, divTxtId, txtId, lnkEditId, lnkSaveId, lnkCancelId, lbltxt_display) {
    jsget(lblId).css("display", (lbltxt_display == '') ? 'inline' : lbltxt_display);
    jsget(divTxtId).css("display", "none");
    jsget(lnkEditId).css("display", "inline");
    jsget(lnkSaveId).css("display", "none");
    jsget(lnkCancelId).css("display", "none");
}

function ajaxTinyTextBox(furl, callId, id, lblId, divTxtId, txtId, lnkEditId, lnkSaveId, lnkCancelId, imgWaitId, lbltxt_display) {
    var lbl = jsget(lblId);
    var divTxt = jsget(divTxtId);
    var txt = jsget(txtId);
    var lnkEdit = jsget(lnkEditId);
    var lnkSave = jsget(lnkSaveId);
    var lnkCancel = jsget(lnkCancelId);
    var waitImg = jsget(imgWaitId);
    var hdnVal = jsget("val");

    var oldval = lbl.html();
    var newval = tinyMCE.getContent(txtId);

    lbl.css("display", "none");
    divTxt.css("display", "none");
    lnkEdit.css("display", "none");
    lnkSave.css("display", "none");
    lnkCancel.css("display", "none");
    waitImg.css("display", "inline");

    var qry = 'cid=' + escape(callId) + '&id=' + escape(id) + '&val=' + escape(newval);
    jQuery.ajax({
        type: "POST",
        url: furl,
        data: qry,
        success: function(msg) {
            if (msg == "1") {
                lbl.html(newval);
                txt.val(newval);
                if (lbl.html() == "") {
                    lbl.html("-");
                }
            } else {
                lbl.html(oldval);
                txt.val(oldval);
            }
            
            lbl.css("display", (lbltxt_display == '') ? 'inline' : lbltxt_display);
            divTxt.css("display", "none");
            lnkEdit.css("display", "inline");
            lnkSave.css("display", "none");
            lnkCancel.css("display", "none");
            waitImg.css("display", "none");
        },
        fail: function(msg) {
            alert('ajaxTinyTextBox failed');
        }
    });
}
function ajaxImageDel(furl, callId, imgid, id, key ,table, hplinkid,imgname, waitImg)
{

	if ( confirmDelete1()==false) {
	return false;
	}  
	
    var img = jsget(imgid);
	if (key!='filename' && img.attr("src")){
		  if(img.attr("src") == waitImg) return;
          img.attr("src", waitImg);
	}
  
    var hplink = jsget(hplinkid);
    var qry = 'cid='+escape(callId)+'&id='+escape(id)+'&table='+escape(table)+'&key='+escape(key)+'&Imgname='+escape(imgname);

    jQuery.ajax({
        type: "GET",
        url: furl,
        data: qry,
        success: function(msg) {
            hplink.slideUp("slow");
           //img.css("display", "none");
           //hplink.css("display", "none");

        },
        fail: function(msg) {
            alert('Delete Image failed');
        }
    });	 
}

function getXMLHTTP(){
    var A=null;
    try{
	    A=new ActiveXObject('Msxml2.XMLHTTP');
    }catch(e){
	    try{
		    A=new ActiveXObject('Microsoft.XMLHTTP');
	    }catch(oc){
		    A=null;
	    }
    }
	
    if(!A&&typeof XMLHttpRequest!='undefined'){
	    A=new XMLHttpRequest();
    }
    return A;
}

if (window.jQuery)
{

    var divx = jQuery("<div id='Datas' class='DivOverLayer'></div>");
}
// ajaxPopup ---------------------------------------
function ajaxPopup(e, url, width, ctl)
{
    var evt = e?e:window.event;
    initPopup(evt,width,url,ctl.id);
    showPopup(url,ctl.id);
}

function initPopup(evt,width,url,ctlID)
{
    InsertPopup(width,url,ctlID) ;
    divx.css("display","block");
    
    var posx = 0;
    var posy = 0;
    posx = evt.clientX; //+ document.body.scrollLeft
    posy = evt.clientY; //+ document.body.scrollTop
    posx -= (width +12);
    posy += 8; 

    divx.css("left",((posx < 15) ? 15 : posx) +'px');
    divx.css("top",(posy)+'px');   

    divx.css("left",((posx < 15) ? 15 : posx) +'px');
    divx.css("top",(posy) + 'px');  
}

function InsertPopup(width,url,ctlID)
{ 
    divx.css("width",width+"px");
    var hsp = (width-40)/2 ;
    
    divx.html("loading...");
    jQuery(document.body).append(divx); 
    divx.unbind("click");
    divx.bind("click",function(){jQuery(this).css("display","none");});
}

//HidePopup = function(){ div.css("display","none"); }

function showPopup(url,ctlID)
{   
    
    jQuery.ajax({
                    type: "GET",
                    url: url,
                    data: 'ctlId=' + ctlID,
                    success: function(msg){
                        divx.html(msg);
                    },
                    fail: function(msg){}
               });	 
}

// END ajaxPopup ---------------------------------------

function AjaxDropDownChange(ddl, childId, callId, funcPage) {

    var selVal = ddl.options[ddl.selectedIndex].value;

    var vals = selVal.split(",");
    selVal = vals[0];

    var child = document.getElementById(childId);
    child.setAttribute("class", "t-body");
    
    if (ddl.selectedIndex == -1 || selVal == -1 || selVal == 0) {
        
        for (var i = child.length - 1; i > 0; i--) {
            child.options[i] = null;
        }
        if (child.fireEvent) {
            child.fireEvent('onchange');
        } else if (child.dispatchEvent) {
            var oEvent = document.createEvent('HTMLEvents');
            oEvent.initEvent('change', true, true);
            child.dispatchEvent(oEvent);
        }
        return;
    }

    var qry = 'cid=' + escape(callId) + '&parent_id=' + escape(selVal);

    jQuery.ajax({
        type: "GET",
        url: funcPage,
        data: qry,
        success: function(msg) {
            if (msg == '') { return true; }
            eval('var namevalue=' + msg);

            if (namevalue != null) {
                var oSelect = document.getElementById(childId);
                if (oSelect) {
                    for (var i = oSelect.length - 1; i >= 0; i--) {
                        oSelect.options[i] = null;
                    }

                    for (var i = 0; i < namevalue.length; i++) {
                        var opt = new Option(namevalue[i].name, namevalue[i].value);
                        oSelect.options[oSelect.length] = opt;
                    }
                }
               
            }
        },
        fail: function(msg) {
            alert('There was a problem retrieving the data:\n' + xmlHttp.statusText);
        }
    });

    child.setAttribute("class", "Formelement");
}
//-----------------Tour - tour iternary price -----------------------------
function AjaxDropDownExChangePrice(ddl, priceid, price, callId, funcPage) {

    var selVal = ddl.options[ddl.selectedIndex].value;
    var pexchange_all = document.getElementById('pexchange_all').value
    var idtour = document.getElementById('idtour').value
    var imagewait = '| <img src="images/waiting.gif">';
    if (price == -1) {
        for (j = 0; j < pexchange_all; j++) {
            document.getElementById('pexchange' + idtour + '_' + j).innerHTML = imagewait;
        }
    } else { 
    
    }
    var qry = 'cid=' + escape(callId) + '&parent_id=' + escape(selVal) + '&price=' + escape(price) + '&idtour=' + idtour;

    jQuery.ajax({
        type: "GET",
        url: funcPage,
        data: qry,
        success: function(msg) {
        
            if (price == -1) {
                var arrprice = Array
                arrprice = msg.split('@')
                for (j = 0; j < pexchange_all; j++) {
                    // alert('pexchange' + idtour + '_' + j)
                    document.getElementById('pexchange' + idtour + '_' + j).innerHTML = arrprice[j];
                }
            } else {
          
            document.getElementById(priceid).innerHTML = msg;
            
            }
          

        },
        fail: function(msg) {
            alert('There was a problem retrieving the data:\n' + xmlHttp.statusText);
        }
    });
    
}
//----------------------------------------------------------------------

function DropingUrl(ObjVal , UrlFormat) {
    //-- window.location='../Admin/clickdomain.aspx?LocationId='+this.options[this.selectedIndex].value;
    if (Obj && UrlFormat.indexOf("{0}") > -1) {
        var Links = jQuery.format(UrlFormat, ObjVal);
        window.location = Links;
    }
}

var focus_ = 0;
BtnReset = function(txtAreaId, isTxtbox) {

    if (isTxtbox != '1') {
        focus_ = 0;
        //jsget(txtAreaId).html('');
        document.forms[0].reset();
    }
    else if (focus_ != 1) {
        jsget(txtAreaId).html('');
        focus_ = 1;
    }

}
