function preloadcategories(domain){
	
	if (domain == 'ppc'){
		XT.doAjaxAction("preloadCategories",this,{'keyName' : 'categories','ppc' :'true' });
	}
	else{
		XT.doAjaxAction("preloadCategories",this,{'keyName' : 'categories' });
	}
}

function preloadallkeywords(){
	
	XT.doAjaxAction('preloadallKeywords',this,{'keyName' : 'keywords'});
	
}

function submitcontactSearch( phonenumber){
	
	XT.doAjaxAction('searchbpcontact',this,{'phoneNumber' : phonenumber});
}
 

function sessionValidate() {

   $('#sessiontimeout-error').hide();   
   var req;	
   var username = document.sessionTimeoutForm.username.value;
   var password = document.sessionTimeoutForm.password.value;
   var url = "validate.do?username=" + encodeURIComponent(username)+"&password=" + encodeURIComponent(password);
   if (window.XMLHttpRequest) {
       req = new XMLHttpRequest();
   } else if (window.ActiveXObject) {
       req = new ActiveXObject("Microsoft.XMLHTTP");
   }
   req.onreadystatechange = function() {
	    if (req.readyState == 4) {
	        if (req.status == 200) {
	        	
	        	 var message = req.responseXML.getElementsByTagName("message");
	         	 var response = message[0].getElementsByTagName("status")[0].firstChild.nodeValue;
	         	 var timer=message[0].getElementsByTagName("sessionTimer")[0].firstChild.nodeValue;
                    if(response =='valid'){		        				        	
		        		$.unblockUI($('#sessionTimeoutMsg'));
		        		//reset session timer
		        		setSessionTimer(timer);		        		
		        	}
		        	else
		        	{
		        		$('#sessiontimeout-error').show();		        		
		        	}
	        	
	        }
	    }
	};
   req.open("GET", url, true);
   req.send(null);
}




function loadcontactSearch( phonenumber){
	
	XT.doAjaxAction('searchbpcontact',this,{'ppc' : 'true'});
}
function showareamessages(messageid , optionid){
	
	// 0 for invalid input error  1  for success results
	if (messageid=='0' ){
		$('#invalidAreaMessage').show();
		$('#areaResultsMessage').hide();
		$('#areaListDump').html('&nbsp;');
	}else if(messageid=='1' || messageid=='2'){
		$('#invalidAreaMessage').hide();
		if($('#areaList option').size()>0)
		{
			$('#areaResultsMessage').show();
			
			var str='<table>';
			$('#areaList option').each(function(index){
				if($(this).attr('value')=='')
				{
					$('#areaResultsMessage').hide();
				}
				else
				{
					str += '<tr><td><input type="radio" name="selectedBox" value="'+$(this).attr('value')+'" ';
					str += (index==optionid?'checked':' ')+'/></td>';
					str += '<td>'+$(this).html()+'</td></tr>';
				}			
			});
			str+= '</table>';
			$('#areaListDump').html(str);
		}
		else
			$('#areaListDump').html('&nbsp;');
	}	
	//alert('messageid 0 for empty results 1 as success  :'+ messageid);
	
}
function showcontactmessages( messageid,optionid){
	//data arrived
	
	var str='<table>';
	var flag=true;
	var data;
	$('#contactList option').each(function(index){
		str+= '<tr><td width=35px>';
		str+= '<input type="radio" name="selectedListingID" value="'+$(this).attr('value')+'" ';		
		if(index==optionid)
		{
			str+= "checked ";
			flag= false;
		}
		str+= '/></td><td>';
		data= $(this).html().split('@@');
		if(data.length==2)
		{
			str+= '<b>'+data[0]+'</b><br/>'+data[1];
		}
		str+= '</td></tr>';
	});
	//add the default option
	if(messageid==2)
		str+='<tr><td><input type="radio" name="selectedListingID" '+(flag==true?'checked ':' ')+' value="NoId"></td><td>My business is not shown, or the information is incorrect.<br/> (We\'ll ask you for the details later).</td></tr>'
	
	str+= '</table>';
	$('#phonesearch-dump').html(str);
	$('#phone-error').hide();
	$('#no-results-msg').hide();
	if(messageid==0)
		$('#phone-error').show();
	else if(messageid==1)
		$('#no-results-msg').show();
	else
		$('#phone-error').hide();
}


function loadKeywords(eventid,keyName, val, defNo ) {       
    	if (keyName != 'categories' && keyName != 'keywords'){
    			var keyval = allOptions(document.getElementById(keyName+'Select')  ,true );
    	}
    	if ($('#isppcflow').attr('value')=='true'){
    	   XT.doAjaxAction(eventid,this,{'pageno':val , 'keyName' : keyName ,'keys': keyval ,'defNo' : defNo ,'ppc' :'true' });
    	}else{
    		XT.doAjaxAction(eventid,this,{'pageno':val , 'keyName' : keyName ,'keys': keyval ,'defNo' : defNo });
    	}
       if (keyName != 'categories'&& keyName != 'keywords' ){
    	   deselectAllOptions(document.getElementById(keyName+'Select')  ,false );
       }
     if(keyName == 'products'){ 
           if(val == 1){
              window.setTimeout('checkItems("' + keyName + '");',120 );
              }  else                
		      window.setTimeout('checkItems("' + keyName + '");',250 );		 	
		} 
		if(keyName == 'brands'){	
		   if(val == 1) {		
               window.setTimeout('checkItems("' + keyName + '");',120 );
               }    else                
		       window.setTimeout('checkItems("' + keyName + '");',300);	
		       
		}    
		 if(keyName == 'services'){		
		 window.setTimeout('checkItems("' + keyName + '");',400);	
		}

       
    }
    function  checkcategoryOptions(){
		var obj =document.getElementById('toList');
		if ( obj!= null && obj.options.length > 0 ){
			for(var i=0;i<obj.options.length;i++){
				obj.options[i].selected = true;
				
			}
			return true ;
		}else{
			alert('Please choose at least one category');
			return false;
		}
		
		
	}
    function  selectcategoryOptions(){
		var obj =document.getElementById('toList');
		if ( obj!= null && obj.options.length > 0 ){
			for(var i=0;i<obj.options.length;i++){
				obj.options[i].selected = true;
				//return true;
			}
		}
		
		
	}
    function  checkkeywordOptions(){
		var obj =document.getElementById('toList');
		if ( obj!= null && obj.options.length > 0 ){
			for(var i=0;i<obj.options.length;i++){
				obj.options[i].selected = true;
				
			}
		}
		
		
	}
    function  allOptions(obj ,selectable ){
		var opt ="";
		for(var i=0;i<obj.options.length;i++){
		obj.options[i].selected = selectable;
		opt = opt +obj.options[i].value+"@";
		}
		return opt;
	}
     function  deselectAllOptions(obj ,selectable ){
		for(var i=0;i<obj.options.length;i++){
		obj.options[i].selected = selectable;
		
		}
	}
   function selectAllOptionsOne(val){
	   if (val=="one"){
		   allOptions(document.getElementById('productsSelect')  ,true);
		   allOptions(document.getElementById('brandsSelect')  ,true);
		   allOptions(document.getElementById('servicesSelect')  ,true);      
	   }  
   }
    function loadKeywordsOne(eventid) {
       loadKeywords(eventid,'products','1', '-1');
       loadKeywords(eventid,'brands','1','-1');
       loadKeywords(eventid,'services','1','-1');
    }
    function searchCategories(eventid , formObj , requiredFields ) {
    	var name = document.getElementById('searchtext');
    	var city = formObj['listing.address.city'].value;
    	var state = formObj['listing.address.state'].value;
    	var zip = formObj['listing.address.zip'].value;
    	
    	
    		$('#CategoryDisplay').hide();    		
    		$('#load-icon').show();
    	XT.doAjaxAction(eventid,this,{'pageno':'1' , 'keyName' : 'categories' ,'keys': '1' ,'defNo' : '-1','isSearch':'true','searchtext': name.value,'city':city , 'state':state,'zip':zip });
    	

    	
     }
    
    
    

    function loadAreaServed(eventid ) {
    //	var name = document.getElementById('serviceArea');
       	XT.doAjaxAction(eventid,this,{'initareaload': 'true' });
     }

    function searchAreaServed(eventid , formObj) {
    	var name = document.getElementById('serviceArea');
            if (name.value !=null && name.value.length >0){  	    	
            //	$('#CategoryDisplay').hide();    		
           // 	$('#area-load-icon').show();
            	XT.doAjaxAction(eventid,this,{'areaServed': name.value });
            }
     }

    function searchppcCategories(eventid , formObj) {
    	var name = document.getElementById('businessCats');
    	var geocode = formObj['selectedBox'];
    	
    	var geoid  ='';
        if (geocode!=null ){
    	    	 if(geocode.length != null && geocode.length >= 1){

	          	for(var j = 0 ; j < geocode.length; j++){
	          		if (geocode[j].checked)
	          			geoid = geocode[j].value;
	       	  	}
	   	 
        }else{
        	geoid = geocode.value ;
        	
        }
        }
    	
    		$('#CategoryDisplay').hide();    		
    		$('#load-icon').show();
    	XT.doAjaxAction(eventid,this,{'pageno':'1' , 'keyName' : 'categories' ,'keys': '1' ,'defNo' : '-1','isSearch':'true','searchtext': name.value,'geocode':geoid , 'ppc':'true' });
     }
    
  
    function buildme(){    	    
    	bpbuildList('categoriesResults', 'fromDisplay');
    	
    }
    function addItem(val){
        if((val.alt != "") && (val.alt.length != 0)){
	         var newOption = new Option( val.alt , val.alt );
	         var sel = document.getElementById(val.name+'Select');                        
	         sel.options[sel.options.length] = newOption;
	         val.disabled=true;
        }
	}
   
      function checkItems(prodName ){      
          
	      var chboxgr = document.getElementsByName( prodName );	        
          if(chboxgr != null){                         
             if(chboxgr.length != null && chboxgr.length >= 1){

	          	for(var j = 0 ; j < chboxgr.length; j++){
	       		  if(chboxgr[j].disabled){
	            	 chboxgr[j].checked = true ;
	    		  }             
	       	  	}
	       	  }else{
                 if(chboxgr.disabled){
                    chboxgr.checked = true ;
                 }             
              }
	      }

	} 
    function remItems(sel,prodName ){
       if((sel.value != "") && (sel.value.length != 0)){
	      var chboxgr = document.getElementsByName( prodName );    
          if(chboxgr != null){
             if(chboxgr.length != null && chboxgr.length >= 1){
	          	for(var j = 0 ; j < chboxgr.length; j++){
	       		  if(chboxgr[j].alt == sel.value ){
	            	 chboxgr[j].checked = false ;
		             chboxgr[j].disabled = false;
	    		  }             
	       	  	}
	       	  }else{
                 if(chboxgr.alt == sel.value){
                         chboxgr.checked = false ;
                         chboxgr.disabled = false;
                 }             
              }
	      }
	      var txtbx = document.getElementsByName( prodName+'Text' );
	      	      
	      if(sel.value == txtbx.value){
             if(txtbx.disabled )
             txtbx.disabled = false;
             txtbx.value = "";
             txtbx.focus();
           }      
         sel.remove(sel.options.selectedIndex);
       }
	} 
	
	
	        function addCatkeyTxt(prodName, errmsg){
            var freeTextCount = 0;
 	        var sel = document.getElementById(prodName+'Select');   
	        var txtbx = document.getElementById(prodName+'Text');
            if (txtbx!=null ){
	            for(var i = 0; i < sel.options.length; i++) {
	                if(sel.options[i].value.search("FTK") != -1)
	                    freeTextCount += sel.options[i].text.length + 1;
	            }
	            freeTextCount += txtbx.value.length;
	            if(freeTextCount > 1500){
	                alert(errmsg);
				}else {
	                txtbx.value = trim(txtbx.value);
					if((txtbx.value != "") && (txtbx.value.length != 0)){
	                    var newOption = new Option(txtbx.value, txtbx.value + "FTK");                        
	                    sel.options.add(newOption);
	                    txtbx.value = "";
	                }
	            }
	        }
        }
        
        
        function trim(txt) {
			txt = txt.replace(/\s+$/g, "");
			txt = txt.replace(/^\s+/g, "");
			return txt;
		}	