
var ua = navigator.userAgent.toLowerCase();
var isOpera = (ua.indexOf('opera') > -1);
var isSafari = (ua.indexOf('safari') > -1);
var isGecko = (!this.isOpera && !this.isSafari && ua.indexOf('gecko') > -1);
var isIE = (!this.isOpera && ua.indexOf('msie') > -1);
var isMac = (ua.indexOf('macintosh') > -1);


var isDHTML = 0;
var isLayers = 0;
var isAll = 0;
var isID = 0;

if (document.getElementById) {isID = 1; isDHTML = 1;}
else {
    if (document.all) {isAll = 1; isDHTML = 1;}
    else {
        browserVersion = parseInt(navigator.appVersion);
    if ((navigator.appName.indexOf('Netscape') != -1) && (browserVersion == 4)) {isLayers = 1; isDHTML = 1;}
}}


function findDOM(objectID,withStyle) {
    if (withStyle == 1) {
    if (isID) {
        return (document.getElementById(objectID).style) ;
    }
    else {
      if (isAll) { return (document.all[objectID].style); }
    else {
      if (isLayers) { return (document.layers[objectID]); }
    };}
  }
  else {
    if (isID) { return (document.getElementById(objectID)) ; }
    else {
      if (isAll) { return (document.all[objectID]); }
    else {
      if (isLayers) { return (document.layers[objectID]); }
    };}
  }
}


function triml(s)
{
    var re = /^ /;
    var result = re.test(s);
    do {
        result = re.test(s);
        s = s.replace(re, '');
    }
    while (result);
    return s;
}

function trimr(s)
{
    var re = / $/;
    var result = re.test(s);
    do {
        result = re.test(s);
        s = s.replace(re, '');
    }
    while (result);
    return s;
}

String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g,"");
}

function is_empty(s, error)
{;
    if (trim(s) == '') {
        alert('Error: ' + error);
        return true;
    } else return false;
}


function empty(s)
{
    if (trim(s) == '') {
        return true;
    } else return false;
}

function is_valid_mysql_date(dt)
{
    var re = /^20[0-9]{2}-[0-1][0-9]-[0-3][0-9]$/;
    if (re.test(dt)) {
        return true;
    } else {
        alert("Error1: invalid date format. Correct date format is 'yyyy-mm-dd'");
        return false;
    }
}

function is_valid_email(mail, error)
{
    var re = /^(\w|\d|\.)*[^.@]@[^\W@](\w|\.|\-)*(\w|\-)$/;
    if (re.test(mail)) {
        return true;
    } else {
        alert(error);
        return false;
    }
}

function is_valid_url(url)
{
    var re = /^https*:\/\/\w(\w|\.|\/)*(\w|\/)$/;
    if (re.test(url)) {
        return true;
    } else {
        alert('Error: invalid URL');
        return false;
    }
}

function is_valid_password(psw, error)
{
    var re = /^\w{5,15}$/;
    if (re.test(psw)) {
        return true;
    } else {
        alert('Error: ' + error);
        return false;
    }
}

function Form_Submit(form_name){
    window.document.getElementById(form_name).submit();
}


function editIc(VarName){
window.open('admin/?action=icm&MyVar='+VarName);
}


function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

/*
//check entered data in input type="text", recommend use with OnKeyUp
function checkFloat(object, decimal){
    if (window.event) {
        keycode = window.event.keyCode;
        if (keycode == 8 || keycode == 46 || keycode == 35 || keycode == 36 || keycode == 37 || keycode == 38 || keycode == 39 || keycode == 40) {
            return false;
        }
    }
    if (decimal){
         var s = new String(object.value);
         var mReg = /[^0-9]/g;
         var i;
         i = s.replace(mReg, '');
         if(i == ''){
             object.value = 0;
         }
         object.value = i;
    } else {

        //if you need replace ',' on '.'

        object.value = object.value.replace(' ', '');
        value = object.value;
        if ( isNaN(value) )
        {
            object.value = value.replace(',', '.');
        }

        value = object.value;
        if ( isNaN(value) )
        {
            object.value = value.substring(0, value.length - 1 );
        }
    }

}
*/
function isRealFloat (v)
{
    var r = new RegExp('^(\\d*\\.\\d+|\\d+\\.\\d*|\\d+\\.\\d*[eE][+-]?\\d+)$', 'g');

    return (typeof v == 'number' || typeof v == 'string') && r.test(v);
};


function checkInt(v, fName, error){
    removeChars(v, fName);
    if(!isInt(v)){
        alert(error);
        var mField = findDOM(fName);
        mField.focus();
        return false;
    }
    return true;
}

function checkFloat(v, fName, error){
    if(!isRealFloat(v) && !isInt(v) ){
        alert(error);
        return false;
    }
    return true;
}

function isNumeric(str){
  var re = /[\D]/g
  if (re.test(str)) return false;
  return true;
}

function isInt (v)
{
    var r = new RegExp('^[+-]?\\d+$', 'g');

    return (typeof v == 'number' || typeof v == 'string') && r.test(v);
};

function trim (s) {
    return s.replace(/^\s+|\s+$/g,"");
}


function removeChars(mVal, mId){
    var s= new String(mVal);
    var mReg = /[^0-9]/g;
    var i;
    i =s.replace(mReg, '');
    f = findDOM(mId);
    if(i == ''){
        mVal = 0;
    }
    f.value = i;
    return true;
}

        var req ;
        function loadXMLDoc( url, callback )
        {
            // branch for native XMLHttpRequest object
            if (window.XMLHttpRequest)
            {
                isIE = false;
                req = new XMLHttpRequest();
                req.onreadystatechange = callback;
                req.open("GET", url, true);
                req.send(null);
                // branch for IE/Windows ActiveX version
            }
            else
            {
                if (window.ActiveXObject)
                {
                    isIE = true;
                    req = new ActiveXObject("Microsoft.XMLHTTP");
                    if (req) {
                        req.onreadystatechange = callback;
                        req.open("GET", url, false);
                        req.send();
                    }
                }
            }
        }


        function changeCart(){
            if (req.readyState == 4) {
                // only if "OK"
                if (req.status == 200)
                {
                    var xmlDoc = req.responseXML;
                    var items = xmlDoc.getElementsByTagName( "item" );

                    for (var i = 0 ; i < items.length ; i++){
                        var item = items[i];
                        var mLink = item.childNodes[0].firstChild.nodeValue;
                        if(mLink == 'Duplicated'){
                            alert("Sorry, this lead has just gone into someone else's shopping cart! If it is not paid for by this associate within 10 minutes, it will be returned to the shop.");
                            window.location.reload();
                        }
                        else{
                            var ID = item.childNodes[1].firstChild.nodeValue;
                            var member = item.childNodes[2].firstChild.nodeValue;
                            var Counter = item.childNodes[3].firstChild.nodeValue;
                            ShopCart = findDOM('ShoppCart');
                            ShopCart1 = findDOM('ShoppCart1');
                            MenuCartLink = findDOM('MenuCartLink');
                            MenuEnd = findDOM('MenuEnd');
                            if(Counter){
                                if(ShopCart){
                                    ShopCart.style.display = 'block';
                                }
                                if(ShopCart1){
                                    ShopCart1.style.display = 'block';
                                }
                                if(MenuCartLink){
                                	MenuCartLink.style.visibility = 'visible';
                                }
                                if(MenuEnd){
                                	MenuEnd.className = '';
                                }
                            }
                            else{
                                if(ShopCart){
                                    ShopCart.style.display = 'none';
                                }
                                if(ShopCart1){
                                    ShopCart1.style.display = 'none';
                                }
                                if(MenuCartLink){
                                	MenuCartLink.style.visibility = 'hidden';
                                }
                            }

                            var LockButton = findDOM('Link_'+ID);
                            if(mLink == 'Sale')
                                LockButton.innerHTML =  "<a href='#' id='Link_"+ID+"' onclick='loadXMLDoc(\"./?action=addShop&amp;eID="+ID+"\", changeCart)'><img src=\"./images/basket.jpg\" style=\"width: 16px; height: 16px;\" alt=\"Add to shopping cart\" /></a>";
                            else
                            	alert('Lead added to shopping cart. Please click SHOPPING CART link above');
                            	LockButton.innerHTML = '<img src="./images/blocked.jpg" style="width: 16px; height: 16px;" alt="not available" />';
                        }
                    }
                }
                else{
                    alert('Equiry not added to shopping cart!');
                }
            }
        }


    function sendDeal(){
		DisableEnableForm(document.f1, false);
		popup_win(false);
    }

    var server_answer_alert=false;
    function ApprovedDeal(){

        if (req.readyState == 4) {
            // only if "OK"
            if (req.status == 200)
            {
                var xmlDoc = req.responseXML;
                var items = xmlDoc.getElementsByTagName( 'item' );
                var item = items[0];

            popup_win(false);
            DisableEnableForm(document.f1, false);


                var sID = item.childNodes[0].firstChild.nodeValue;
                var approved = item.childNodes[1].firstChild.nodeValue;
                var noticeIN = item.childNodes[2].firstChild.nodeValue;

                    Button = findDOM('approved', 0);
                    Button1 = findDOM('approved1', 0);
                    if(approved==1){//Button.value = "Approved";
                        Button.innerHTML ="<input type=\"button\" id=\"top_button\" value=\"TAKE OFF THE SHOP\"  onclick=\"if(price()) {this.disabled=true; loadXMLDoc('./?action=approvedDeal&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('payPal').value+'&amp;notice=1'+"', ApprovedDeal);}\" />";
                        Button1.innerHTML ="<input type=\"button\" id=\"bottom_button\" value=\"TAKE OFF THE SHOP\"  onclick=\"if(price()) {this.disabled=true; loadXMLDoc('./?action=approvedDeal&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('payPal').value+'&amp;notice=1'+"', ApprovedDeal);}\" />";
                        approved=0;
                    }else{//Button.value = "Upload to Leads for Sale";
                        if(1 == noticeIN){
                                Button.innerHTML ="<input id=\"top_button\" type=\"button\"  value=\"UPLOAD DEAL TO SHOP\" onclick=\"if(price()) {this.disabled=true; loadXMLDoc('./?action=approvedDeal&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('payPal').value+"', ApprovedDeal);}\" />";
                                Button1.innerHTML ="<input id=\"bottom_button\" type=\"button\"  value=\"UPLOAD DEAL TO SHOP\" onclick=\"if(price()) {this.disabled=true; loadXMLDoc('./?action=approvedDeal&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('payPal').value+"', ApprovedDeal);}\" />";
                        }
                        else{
                                Button.innerHTML ="<input id=\"top_button\" type=\"button\"  value=\"UPLOAD DEAL TO SHOP\" onclick=\"if(price()) {this.disabled=true; loadXMLDoc('./?action=approvedDeal&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('payPal').value+'&amp;notice=0'+"', ApprovedDeal);}\" />";
                                Button1.innerHTML = "<input id=\"bottom_button\" type=\"button\"  value=\"UPLOAD DEAL TO SHOP\" onclick=\"if(price()) {this.disabled=true; loadXMLDoc('./?action=approvedDeal&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('payPal').value+'&amp;notice=0'+"', ApprovedDeal);}\" />";
                            }

                          approved=1;
                    }
            }else{
                popup_win(false);
                DisableEnableForm(document.f1, false);
                alert('Property not added to shopping cart!');
            }
        }else{
            if(!server_answer_alert){
                server_answer_alert=true;

                window.setTimeout( function (){
                 if(req.readyState!=4){
                    alert('No answer from server. Page will be refreshed');
                    window.location.reload();
                }
                    }, 5000 );

            }


        }

    }

    function ApprovedLead(){

        if (req.readyState == 4) {
            // only if "OK"
            if (req.status == 200) 
            {
                var xmlDoc = req.responseXML;
                var items = xmlDoc.getElementsByTagName( 'item' );
                var item = items[0];

            popup_win(false);
            DisableEnableForm(document.f1, false);


                var sID = item.childNodes[0].firstChild.nodeValue;
                var approved = item.childNodes[1].firstChild.nodeValue;
                var noticeIN = item.childNodes[2].firstChild.nodeValue;
                var page_value = item.childNodes[3].firstChild.nodeValue;

                    Button = findDOM('approved', 0);
                    Button1 = findDOM('approved1', 0);
                    if(approved==1){//Button.value = "Approved";
                        Button.innerHTML ="<input type=\"button\" id=\"top_button\" value=\"Remove from 'Lead for sale' page\"  onclick=\"if(price()) this.disabled=true; loadXMLDoc('./?action=approvedLead&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('priceLead').value+'&amp;notice=1'+"', ApprovedLead);\" />";
                        Button1.innerHTML ="<input type=\"button\" id=\"bottom_button\" value=\"Remove from 'Lead for sale' page\"  onclick=\"if(price()) this.disabled=true; loadXMLDoc('./?action=approvedLead&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('priceLead').value+'&amp;notice=1'+"', ApprovedLead);\" />";
                        approved=0;
                        window.location.href = '?action=enquiry&page='+page_value;
                    }else{//Button.value = "Upload to Leads for Sale";
                        if(1 == noticeIN){
                                Button.innerHTML ="<input id=\"top_button\" type=\"button\"  value=\"Upload to Leads for Sale\" onclick=\"if(price()) this.disabled=true; loadXMLDoc('./?action=approvedLead&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('priceLead').value+'&amp;notice=\'+vvv()+\''+"', ApprovedLead)\" />";                             
                                Button1.innerHTML ="<input id=\"bottom_button\" type=\"button\"  value=\"Upload to Leads for Sale\" onclick=\"if(price()) this.disabled=true; loadXMLDoc('./?action=approvedLead&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('priceLead').value+'&amp;notice=\'+vvv()+\''+"', ApprovedLead)\" />";
                                window.location.href = '?action=enquiry&page='+page_value;
                        }
                        else{
                                Button.innerHTML ="<input id=\"top_button\" type=\"button\"  value=\"Upload to Leads for Sale\" onclick=\"if(price()) this.disabled=true; loadXMLDoc('./?action=approvedLead&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('priceLead').value+'&amp;notice=0'+"', ApprovedLead)\" />";                             
                                Button1.innerHTML = "<input id=\"bottom_button\" type=\"button\"  value=\"Upload to Leads for Sale\" onclick=\"if(price()) this.disabled=true; loadXMLDoc('./?action=approvedLead&amp;sID="+sID+"&amp;approved="+approved+'&amp;price='+document.getElementById('priceLead').value+'&amp;notice=0'+"', ApprovedLead)\" />";
                                window.location.href = '?action=enquiry&page='+page_value;                             
                            }
                        
                          approved=1;
                    }                   
            }else{
                popup_win(false);
                DisableEnableForm(document.f1, false);
                alert('Equiry not added to shopping cart!');
            }
        }else{
            if(!server_answer_alert){
                server_answer_alert=true;
                
                window.setTimeout( function (){
                 if(req.readyState!=4){
                    alert('No answer from server. Page will be refreshed');
                    window.location.reload();
                }                           
                    }, 20000 );

            }
            

        }
        
    }
    
    var date;
    var notice=1;
    function vvv(){
    	if(date == '')date=Date();
        if(confirm('notification about this Enquiry was sent "'+date+'" times. Do you want send notification again?'))         {
            return 1;
        }else{
            return 0;
        }
    }

    function removeCart(){
        if (req.readyState == 4) {
            // only if "OK"
            if (req.status == 200)
            {
                var xmlDoc = req.responseXML;
                var items = xmlDoc.getElementsByTagName( "item" );
                for (var i = 0 ; i < items.length ; i++){
                    var item = items[i];
                    var ID = item.childNodes[0].firstChild.nodeValue;
                    var type = item.childNodes[1].firstChild.nodeValue;
                    var Counter = item.childNodes[2].firstChild.nodeValue;

                    // delete row  in table tab1
                    if(type == 'deal') {
                        var del_row = document.getElementById('Deal_'+ID);
                        var tab = document.getElementById('tab2');
                    }else {
                        var del_row = document.getElementById('Enq_'+ID);
                        var tab = document.getElementById('tab1');
                    }

                    var tb = tab.getElementsByTagName('tbody')[0];
                    tb.removeChild(del_row);


                    ShopCart = findDOM('ShoppCart', 1);
                    if(Counter != 0)
                        ShopCart.visibility = 'visible';
                    else
                        ShopCart.visibility = 'hidden';

                }
            }
            else{
                alert('Equiry not removed shopping cart!');
            }
        }
    }


    function checkMethod(sel){
            if(sel.value == 'PayPal Express'){
                location.replace('./?action=payPPE');
            }
        }


    function notifiactionCanges(vals){
        var mCB;
        var bl;
        bl    = findDOM("countySet", 1);
        mCB   = findDOM('mCB', 1);
        notification = findDOM('receiveNews', 0);
        notificationOption = findDOM('receiveNewsOption', 0);
        notificationUNQ = findDOM('receiveNewsUNQ', 0);
        notificationDeals = findDOM('receiveNewsDeals', 0);
        if(notificationOption.value == 0 || notification.value == 0 || notificationUNQ.value == 0 || notificationDeals.value == 0){
//        if(notification.value == 0){
            mCB.display = "block";
            bl.display= 'block';
        }
        else{
            mCB.display = "none";
            bl.display= 'none';
        }
    }

    function notificationChanges(vals){
        var mCB;
        var bl;
        bl    = findDOM("countySet", 1);
        mCB   = findDOM('mCB', 1);
        notification = findDOM('receiveNews', 0);
        notificationOption = findDOM('receiveNewsOption', 0);
        notificationUNQ = findDOM('receiveNewsUNQ', 0);
        notificationDeals = findDOM('receiveNewsDeals', 0);
        if(notificationOption.checked || notification.checked || notificationUNQ.checked){
//        if(notification.value == 0){
            mCB.display = "block";
            bl.display= 'block';
        }
        else{
            mCB.display = "none";
            bl.display= 'none';
        }
    }



    function showLoginPopup(){

            loginPopupWin=dhtmlmodal.open("agreebox", "iframe", "?action=loginPopup", "Please Login", "width=380px,height=150px,center=1,resize=1,scrolling=0, close=0", "recal")
/*
            loginPopupWin.onclose=function(){ //Define custom code to run when window is closed
                var theform=this.contentDoc.getElementById("formLogin");
                var loginform=document.getElementById('formLogin');
                loginform.UserName.value = theform.UserName.value;
                loginform.Password.value = theform.Password.value;
                loginform.submit();
                return true //Allow closing of window in both cases
            }
*/

    }

    function countyChanged(mF){
        var bl;

        bl = findDOM("countySet", 1);
        if(mF.checked)
            bl.display= 'none';
        else
            bl.display= "block";
    }

    function showTermsPopup(){
        agreewin=dhtmlmodal.open("agreebox", "iframe", "?action=register_terms", "Terms and conditions", "width=670px,height=450px,center=1,resize=1,scrolling=1", "recal")

    }

    function showPost(lID){
        var bl;
        var blStyle;
        var leadId;
        
        bl = findDOM("post");
        bl.focus();
        blStyle = findDOM("post", 1);

        blStyle.display = "block";

        leadId = findDOM("CRMID");
	leadId.value = lID;

    }


    function showCRM(crmID, col){
        var html = $.ajax({
             url: '?action=getCRM&crm='+crmID +'&cols='+col,
             dataType: "html",
             async: false,
             error: function(msg){
             alert(msg);
             },
             success: function(msg){
                 //alert(msg);
             }
        }).responseText;
	     $("#"+crmID).html(html);
	     var vis = $("#"+crmID).css('display');
	     if (vis == 'table-row') {
	         $("#"+crmID).css('display', 'none');
	     } else {
	         $("#"+crmID).css('display', '');
	     }
     }
   
