﻿// JScript File

var xmlHttpObjSignOut;

function ResolveUrl(url) 
{
    if (url.indexOf('~/') == 0) 
    {
        if(baseUrl == "./")
            baseUrl = "";
        url = baseUrl + url.substring(2);
    }
    return url;
}

// Call an aspx page that creates the information in Html format and return it in a string (Response.Write(string)).
function SignOut()
{ 
    xmlHttpObjSignOut=GetXmlHttpObj();
    if (xmlHttpObjSignOut==null)
    {
        alert ("Your browser does not support AJAX!");
        return;
    } 
    
    var url, loc = window.document.location.toString();
    if(loc.search('/PostAd') != -1 || loc.search('/View') != -1 || loc.search('/Feed') != -1)
        url="../GetInfo.aspx";
    else
        url="GetInfo.aspx";
    url=url+"?Do=SignOut";
    url=url+"&sid="+Math.random(); 
   
    xmlHttpObjSignOut.onreadystatechange=stateChangedReady; 
    xmlHttpObjSignOut.open("GET",url,true); 
    xmlHttpObjSignOut.send(null);
}

// When the aspx file is done creating the string, it writes it to the output (xmlHttpObjSignOut gets it).
function stateChangedReady() 
{ 
    if (xmlHttpObjSignOut.readyState==4)
    {   
        //window.location = "http://www.iconnectad.com"; // "http://localhost:49381/MySearch/Default.aspx";
        window.location.reload(false); // force refresh !!!
    }
}

// Create the xmlHttpObjSignOut Object.
function GetXmlHttpObj()
{
    var xmlHttpObjSignOut=null;
    try
      {
          // Firefox, Opera 8.0+, Safari
          xmlHttpObjSignOut=new XMLHttpRequest();
      }
    catch (e)
      {
          // Internet Explorer
          try
            {
                xmlHttpObjSignOut=new ActiveXObject("Msxml2.XMLHTTP");
            }
          catch (e)
            {
                xmlHttpObjSignOut=new ActiveXObject("Microsoft.XMLHTTP");
            }
      }
    return xmlHttpObjSignOut;
}


// Return the screen Width
function GetUserScreenWidth() 
{ 
//    var screenW = 640, screenH = 480;
//    if (parseInt(navigator.appVersion)>3) {
//     screenW = screen.width;
//     screenH = screen.height;
//    }
//    else if (navigator.appName == "Netscape" 
//        && parseInt(navigator.appVersion)==3
//        && navigator.javaEnabled()
//       ) 
//    {
//     var jToolkit = java.awt.Toolkit.getDefaultToolkit();
//     var jScreenSize = jToolkit.getScreenSize();
//     screenW = jScreenSize.width;
//     screenH = jScreenSize.height;
//    }

//    document.write(
//     "Screen width = "+screenW+"<br>"
//    +"Screen height = "+screenH
//    )
    return screen.width;
}


function IsEmail(Email)
{
    var ValidChars = "abcdefghijklmnopqrst";
    var InvalidChars = " ;";
    var len = Email.length;
    var atIndex = Email.indexOf("@");
	var dotIndex = Email.lastIndexOf(".")
	
	if(atIndex == -1 || dotIndex == -1) // check if not exists "@" or not exists "."
	    return false;
	
	if(Email.lastIndexOf("@") - Email.indexOf("@") != 0) // check if more than one "@"
	    return false;
	    
	if(Email.lastIndexOf(".") - Email.indexOf(".") != 0) // check if more than one "."
	    return false;
	
    for (i = 0; i < Email.length; i++) 
    { 
	    digit = Email.charAt(i); 
	    if (InvalidChars.indexOf(digit) > -1) // ==> digit is invalid character 
		    return false;
    }
    
	if(atIndex<1||dotIndex-atIndex<2)  // check if "@" comes before "."
		return false
		
	if(len - dotIndex -1 < 2) // atleast 2 chars after the "."
	    return false;
	    
    return true;
}

function ShowHideFields()
{
    var txtPrefix = ""; 
    var lblPrefix = "";
    var txtSearchFor = document.getElementById("ctl00_ContentPlaceHolder1_Search_txtSearchFor");
    if(txtSearchFor != null) // ==> We use master page.
    {   
        txtPrefix = "ctl00_ContentPlaceHolder1_Search_";
        lblPrefix = "ctl00_ContentPlaceHolder1_Search_";
    }
    
    var selectedSection = document.getElementById(txtPrefix + "cmbSection").value;
    
    if(selectedSection == null || selectedSection == undefined || selectedSection.length == 0)
    {
        query = window.location.search.substring(1);
        queryStr = query.split("&");
        for (i=0;i<queryStr.length;i++) 
        {
            val = queryStr[i].split("=");
            if (val[0] == "sectionid") 
            {
                selectedSection = val[1];
                break;
            }
        }
    }
    $("#divSelectedSection").html(selectedSection);
    
    if(selectedSection == "1" || selectedSection == "2" || selectedSection == "3")
    {
        document.getElementById(txtPrefix + "lblPrice").style.visibility = "visible";
        document.getElementById(txtPrefix + "txtMin").style.visibility = "visible";
        document.getElementById(txtPrefix + "txtMax").style.visibility = "visible";
    }
    else
    {
        document.getElementById(txtPrefix + "lblPrice").style.visibility = "hidden";
        document.getElementById(txtPrefix + "txtMin").style.visibility = "hidden";
        document.getElementById(txtPrefix + "txtMax").style.visibility = "hidden";
    }
    
    SetAdvancedSearch();
}

function SetAdvancedSearch()
{
    if($("#divSelectedSection").text().trim().length > 0) // ==> Show
    {
        $("#divMainSearchBox").removeClass("SearchBox_bg").addClass("AdvancedSearchBox_bg");
        $("#divExtraFields").show();
        $("#spanAdvancedSearch").html("Hide Advanced Search");
        
        $("#ctl00_ContentPlaceHolder1_Search_txtIsAdvanced").val("1");
    }
    else // ==> Hide
    {
        $("#divMainSearchBox").removeClass("AdvancedSearchBox_bg").addClass("SearchBox_bg");
        $("#divExtraFields").hide();
        $("#spanAdvancedSearch").html("Show Advanced Search");   
        
        $("#ctl00_ContentPlaceHolder1_Search_txtIsAdvanced").val("0");
    }   
}

function InitAdvancedSearch()
{
    if($("#spanAdvancedSearch").text().indexOf("Show") > -1 ) // ==> Show
    {
        $("#divMainSearchBox").removeClass("SearchBox_bg").addClass("AdvancedSearchBox_bg");
        $("#divExtraFields").show();
        $("#spanAdvancedSearch").html("Hide Advanced Search");
        
        $("#ctl00_ContentPlaceHolder1_Search_txtIsAdvanced").val("1");
    }
    else // ==> Hide
    {
        $("#divMainSearchBox").removeClass("AdvancedSearchBox_bg").addClass("SearchBox_bg");
        $("#divExtraFields").hide();
        $("#spanAdvancedSearch").html("Show Advanced Search");    
        
        $("#ctl00_ContentPlaceHolder1_Search_txtIsAdvanced").val("0");
        $("#ctl00_ContentPlaceHolder1_Search_cmbSection").val("");
        $("#ctl00_ContentPlaceHolder1_Search_cmbCategory").val("");
        $("#ctl00_ContentPlaceHolder1_Search_txtMin").val("min");
        $("#ctl00_ContentPlaceHolder1_Search_txtMax").val("max");
    }   
}

function Loading()
{
    var txtPrefix = "ctl00_ContentPlaceHolder1_";

    document.getElementById(txtPrefix + "divLoading").style.visibility = "visible";
}

function validateActivateAccount()
{
    var cmbCardTypeErr = "N",txtNameErr = "N",txtCardNumberErr = "N",cmbExpMonthErr = "N",cmbExpYearErr = "N",txtCardCodeErr = "N";
    
    // Use Prefix since we use master page in some of the forms.
    var txtPrefix = ""; 
    var lblPrefix = "";
    var lblVerificationMsg = document.getElementById("ctl00_ContentPlaceHolder1_lblVerificationMsg");
    if(lblVerificationMsg != null) // ==> We use master page.
    {  
        txtPrefix = "ctl00$ContentPlaceHolder1$";
        lblPrefix = "ctl00_ContentPlaceHolder1_";
    }
    var OriginalColor = "#000"; //document.getElementById(lblPrefix + "lblVerificationMsg").style.color; // Assume we don't change the color of this label.
    
    var cmbCardType = document.getElementById(lblPrefix + "cmbCardType");    
    var txtName = document.getElementById(lblPrefix + "txtName");
    var txtCardNumber = document.getElementById(lblPrefix + "txtCardNumber");    
    var cmbExpMonth = document.getElementById(lblPrefix + "cmbExpMonth");
    var cmbExpYear = document.getElementById(lblPrefix + "cmbExpYear");
    var txtCardCode = document.getElementById(lblPrefix + "txtCardCode");
    
	if(cmbCardType == null || cmbCardType.value == "")
	{
	    document.getElementById(lblPrefix + "lblCardType").style.color = "Red";
	    cmbCardTypeErr = "Y";
	}
	else
	{
	    document.getElementById(lblPrefix + "lblCardType").style.color = OriginalColor;
	    cmbCardTypeErr = "N";
	}
	if(txtName == null || txtName.value == "")
	{
	    document.getElementById(lblPrefix + "lblName").style.color = "Red";
	    txtNameErr = "Y";
	}
	else
	{
	    document.getElementById(lblPrefix + "lblName").style.color = OriginalColor;
	    txtNameErr = "N";
	}
	if(txtCardNumber == null || txtCardNumber.value == "")
	{
	    document.getElementById(lblPrefix + "lblCardNumber").style.color = "Red";
	    txtCardNumberErr = "Y";
	}
	else
	{
	    document.getElementById(lblPrefix + "lblCardNumber").style.color = OriginalColor;
	    txtCardNumberErr = "N";
	}
	if(cmbExpMonth == null || cmbExpMonth.value == "")
	{
	    document.getElementById(lblPrefix + "lblExpirationDate").style.color = "Red";
	    cmbExpMonthErr = "Y";
	}
	else
	{
	    document.getElementById(lblPrefix + "lblExpirationDate").style.color = OriginalColor;
	    cmbExpMonthErr = "N";
	}
	if(cmbExpYear == null || cmbExpYear.value == "" || cmbExpMonth == null || cmbExpMonth.value == "")
	{
	    document.getElementById(lblPrefix + "lblExpirationDate").style.color = "Red";
	    cmbExpYearErr = "Y";
	}
	else
	{
	    document.getElementById(lblPrefix + "lblExpirationDate").style.color = OriginalColor;
	    cmbExpYearErr = "N";
	}
	if(txtCardCode == null || txtCardCode.value == "")
	{
	    document.getElementById(lblPrefix + "lblCardCode").style.color = "Red";
	    txtCardCodeErr = "Y";
	}
	else
	{
	    document.getElementById(lblPrefix + "lblCardCode").style.color = OriginalColor;
	    txtCardCodeErr = "N";
	}
	
	
	if(cmbCardTypeErr == "Y" || txtNameErr == "Y" || txtCardNumberErr == "Y" || cmbExpMonthErr == "Y" || cmbExpYearErr == "Y" || txtCardCodeErr == "Y")
	{
	    document.getElementById(lblPrefix + "lblVerificationMsg").style.color = "Red";
        document.getElementById(lblPrefix + "lblVerificationMsg").innerHTML = "Please correct the required fields on red !";
	    return false;
	}
	else
	{   
	    document.getElementById(lblPrefix + "lblVerificationMsg").style.color = "Green";
	    document.getElementById(lblPrefix + "lblVerificationMsg").innerHTML = "Loading...";
	    return true;
	}  
}


function IsNumeric(str)
{
	//var ValidChars = "0123456789."; With Decimal Point !
	var ValidChars = "0123456789.";
	var Char; 
	
	if(str.length == 0)
		return false;
		
	for (i = 0; i < str.length; i++) 
	{ 
		Char = str.charAt(i); 
		//if ((i == 0) && (Char == "-")) // check first character for minus sign
		//	continue;
		if (ValidChars.indexOf(Char) == -1) 
		    return false;
	}
	return true;
}

function IsPrice(str)
{
	str = str.replace("$","");
	str = str.replace(/,/g,""); 
	
	if(IsNumeric(str))
		return true;
    else
		return false;
}

function IsPhone(Phone)
{
    var len = Phone.length;
    
	if(len == 12 && Phone.charAt(3) == '-' && Phone.charAt(7) == '-')
	{
		return true;
	}
    return false;
}

function IsZip(Zip)
{
    var len = Zip.length;
    
	if(len == 5 || (len == 10 && Zip.charAt(5) == '-'))
	{
		var ValidChars = "0123456789-";
	    for (i = 0; i < len; i++) 
	    { 
		    digit = Zip.charAt(i); 
		    if (ValidChars.indexOf(digit) == -1) // ==> digit is invalid character (not in "0123456789-")
		    {
			    return false;
		    }
	    }
		return true;
	}
    return false;
}

function bookmarksite()
{
    var url = "http://www.iconnectad.com";
    var title = "iConnectAd Classifieds - Search Classified Ads - Post FREE Classifieds";
     if (document.all)
     {
         // For IE
         window.external.AddFavorite(location.href, title);
     }
    else if (window.sidebar)
    {
         // For Firefox
         window.sidebar.addPanel(title, location.href, "");
    }
}

function revealModal(divID)
{
    window.onscroll = function () { document.getElementById(divID).style.top = document.body.scrollTop; };
    document.getElementById(divID).style.display = "block";
    document.getElementById(divID).style.top = document.body.scrollTop;
}

function hideModal(divID)
{
    document.getElementById(divID).style.display = "none";
}

function LoadingGif_Show() 
{
    $("#ajax-loader").show();
}

function LoadingGif_Hide() 
{
    $("#ajax-loader").hide();
}

function ValidateOptOut()
{
    var emailErr = "N",verificationErr = "N";
    var OriginalColor = "#000"; 
    
    var email = document.getElementById("ctl00_ContentPlaceHolder1_txtEmail");    
    var verification = document.getElementById("ctl00_ContentPlaceHolder1_txtImgVerify");
    
	if(email == null || IsEmail(email.value) == false)
	{
	    emailErr = "Y";
	}
	else
	{
	    document.getElementById("ctl00_ContentPlaceHolder1_lblOptOutMessage").style.color = OriginalColor;
	    document.getElementById("ctl00_ContentPlaceHolder1_lblOptOutMessage").innerHTML = ""
	    emailErr = "N";
	}
	
	if(verification == null || verification.value == "")
	{
	    verificationErr = "Y";
	}
	else
	{
	    document.getElementById("ctl00_ContentPlaceHolder1_lblOptOutMessage").style.color = OriginalColor;
	    document.getElementById("ctl00_ContentPlaceHolder1_lblOptOutMessage").innerHTML = ""
	    verificationErr = "N";
	}
	
	if(emailErr == "Y" || verificationErr == "Y")
	{
	    if(emailErr == "Y")
	    {
	        document.getElementById("ctl00_ContentPlaceHolder1_lblOptOutMessage").style.color = "Red";
	        document.getElementById("ctl00_ContentPlaceHolder1_lblOptOutMessage").innerHTML = "Your Email is required"
	    }
	    else
	    {
	        document.getElementById("ctl00_ContentPlaceHolder1_lblOptOutMessage").style.color = "Red";
	        document.getElementById("ctl00_ContentPlaceHolder1_lblOptOutMessage").innerHTML = "Verification code is required"
	    }
	    return false;
	}
	else
	{   
	    return true;
	}  
}

function setCookie(c_name,value,expiredays)
{
    var exdate=new Date();
    exdate.setDate(exdate.getDate()+expiredays);
    document.cookie=c_name+ "=" +escape(value)+
    ((expiredays==null) ? "" : ";expires="+exdate.toUTCString());
}

function getCookie(c_name)
{
    if (document.cookie.length>0)
    {
        c_start=document.cookie.indexOf(c_name + "=");
        if (c_start!=-1)
        {
            c_start=c_start + c_name.length+1;
            c_end=document.cookie.indexOf(";",c_start);
            if (c_end==-1) 
                c_end=document.cookie.length;
            return unescape(document.cookie.substring(c_start,c_end));
        }
    }
    return "";
}

///////////////////////////// From Helena Design /////////////////////////////////////////////////////////////
var inputs = new Array(), inputsValue = new Array();
var tabs;
var sres = new Array(), qview = new Array(), modeSwitcher = new Array();

function addClass(target, theClass) {
	if (!target.className) 
		target.className = theClass;
	else 
		if (target.className.indexOf(theClass) == -1) target.className += ' ' + theClass;
}

function removeClass(target, theClass) {
	var pattern = new RegExp("(^| )" + theClass + "( |$)");
	target.className = target.className.replace(pattern, "$1");
	target.className = target.className.replace(/ $/, "");
}

function getNextElement(node) {
	elems=node.parentNode.parentNode.getElementsByTagName(node.nodeName);
	for (i=elems.length-1, res=null; (i>=0)&&(elems[i]!=node); i--) if (node.parentNode.parentNode==elems[i].parentNode.parentNode) res=elems[i];
	return res;
}

//function returnValue() {
//	if (this.value=='')
//		for (i=0; i<inputs.length; i++)
//			if (inputs[i]==this) {
//				this.value=inputsValue[i];
//				break;
//			}
//}

//function clearValue() {
//	for (i=0; i<inputs.length; i++) 
//		if (this==inputs[i])
//			if (this.value==inputsValue[i]) 
//				this.value='';
//}

function tabsOver() {
	next=getNextElement(this);
	if ((res != null) && (next.className.indexOf('on') == -1)) {addClass(next, 'off');}
}

function tabsOut() {
	if (this.className.indexOf('on') == -1) {
		next=getNextElement(this);
		if (res != null)
			removeClass(next, 'off');
	}
}

function tabsClick() {
	for (i=0; i<tabs.length; i++) 
			tabs[i].className='';
	this.className="on";
	next=getNextElement(this);
	if ((res != null) && (next.className.indexOf('on') == -1)) {addClass(next, 'off');}
}

//function viewModeToogle() {
//	ind=-1;
//	for (i=0; i<modeSwitcher.length; i++) {
//		if (this==modeSwitcher[i])
//			if (this.innerHTML=='quick view') {
//				this.innerHTML='close quick view';
//				if (qview[i])
//					qview[i].style.display='block';
//			} else {
//				this.innerHTML='quick view';
//				if (qview[i])
//					qview[i].style.display='none';
//			}
//	}
//	return false;
//}

//function searchResPage() {
//	items = document.getElementsByTagName("div");
//	for (i=0; i<items.length; i++)
//		if (items[i].className.indexOf('indetail')>=0) 
//			for (; i<items.length; i++) {
//				if (items[i].className.indexOf('haslayout')>=0) {
//					qview[sres.length]=false;
//					modeSwitcher[sres.length]=false;
//						links = items[i].getElementsByTagName("a");
//						for (j=0; j<links.length; j++) {
//							if (links[j].className.indexOf('view_mode')>=0) {
//								links[j].onclick=viewModeToogle;
//								modeSwitcher[sres.length]=links[j];
//								break;
//							}
//						}
//					sres[sres.length]=items[i];
//				} else 
//					if (items[i].className.indexOf('quick_view')>=0) {
//						qview[sres.length-1]=items[i];
//						qview[sres.length-1].style.display='none';
//					}
//			}
//}

function setDefaults() 
{
	if (document.getElementsByTagName) 
	{
		items = document.getElementsByTagName("input");
		for (var i=0; i < items.length; i++)
			if (items[i].type=="submit") 
			{
				items[i].onmouseover=function() { this.style.backgroundPosition='left bottom'; }
				items[i].onmouseout=function() { this.style.backgroundPosition='left top'; }
			}
			
//		for (var i=0; i < items.length; i++)
//			if ((items[i].type=="text")&&(items[i].value!='')) {
//				inputs[inputs.length]=items[i];
//				inputsValue[inputsValue.length]=items[i].value;
//				items[i].onclick=clearValue;
//				items[i].onblur=returnValue;
//			} else if (items[i].type=="submit") {
//				items[i].onmouseover=function() { this.style.backgroundPosition='left bottom'; }
//				items[i].onmouseout=function() { this.style.backgroundPosition='left top'; }
//			}

		//searchResPage();
	}
	if (document.getElementById) 
	{
		tabswrap=document.getElementById("search_tabs");
		if (tabswrap) {
			tabs=tabswrap.getElementsByTagName("a");
			for (i=0; i<tabs.length; i++) 
			{
				tabs[i].onclick=tabsClick;
				tabs[i].onmouseover=tabsOver;
				tabs[i].onmouseout=tabsOut;
			}
		}
	}
}
	
window.onload=setDefaults;

