// JavaScript Document
var urlPrefixPath = LOCAL_PATH;

/* Global Variables declaration */
var NameRegxp			= /^([a-zA-Z ]+)$/;
var EmailRegxp			= /^([\w]+)(.[\w]+)*@([\w]+)(.[\w]{2,3}){1,2}$/;
var USTelNoRegxp		= /^\d{3}-\d{3}-\d{4}$/;
var CompanyNameRegxp	= /^([a-zA-Z,&0-9\' ]+)$/;


function isValidURL(url) {
	if ( url == null )
		return false;
	var tomatch= /(http:\/\/|https:\/\/ftp:\/\/|www.){1}[A-Za-z0-9\.-]{3,}\.[A-Za-z]{3}/
	if(tomatch.test(url)){
		return true;
	}else{
		return false; 
	}

	/*var urlregex = new RegExp("^(http:\/\/|https:\/\/|ftp:\/\/){1}([0-9A-Za-z]+\.)");
	if(urlregex.test(url)){
		return(true);
	}return(false); */
}

var ccErrorNo = 0;
var ccErrors = new Array ()

ccErrors [0] = "Unknown card type";
ccErrors [1] = "No card number provided";
ccErrors [2] = "Credit card number is in invalid format";
ccErrors [3] = "Credit card number is invalid";
ccErrors [4] = "Credit card number has an inappropriate number of digits";


function CreditcardValidation (cardnumber, cardname) {
  // Array to hold the permitted card characteristics
  var cards = new Array();

  // Define the cards we support. You may add addtional card types.
  
  //  Name:      As in the selection box of the form - must be same as user's
  //  Length:    List of possible valid lengths of the card number for the card
  //  prefixes:  List of possible prefixes for the card
  //  checkdigit Boolean to say whether there is a check digit
  
  cards [0] = {name: "visa", 
               length: "13,16", 
               prefixes: "4",
               checkdigit: true};
  cards [1] = {name: "master_card", 
               length: "16", 
               prefixes: "51,52,53,54,55",
               checkdigit: true};
  cards [2] = {name: "DinersClub", 
               length: "14,16", 
               prefixes: "300,301,302,303,304,305,36,38,55",
               checkdigit: true};
  cards [3] = {name: "CarteBlanche", 
               length: "14", 
               prefixes: "300,301,302,303,304,305,36,38",
               checkdigit: true};
  cards [4] = {name: "AmEx", 
               length: "15", 
               prefixes: "34,37",
               checkdigit: true};
  cards [5] = {name: "Discover", 
               length: "16", 
               prefixes: "6011,650",
               checkdigit: true};
  cards [6] = {name: "JCB", 
               length: "15,16", 
               prefixes: "3,1800,2131",
               checkdigit: true};
  cards [7] = {name: "enRoute", 
               length: "15", 
               prefixes: "2014,2149",
               checkdigit: true};
  cards [8] = {name: "Solo", 
               length: "16,18,19", 
               prefixes: "6334, 6767",
               checkdigit: true};
  cards [9] = {name: "Switch", 
               length: "16,18,19", 
               prefixes: "4903,4905,4911,4936,564182,633110,6333,6759",
               checkdigit: true};
  cards [10] = {name: "Maestro", 
               length: "16,18", 
               prefixes: "5020,6",
               checkdigit: true};
  cards [11] = {name: "VisaElectron", 
               length: "16", 
               prefixes: "417500,4917,4913",
               checkdigit: true};
               
  // Establish card type
  var cardType = -1;
  for (var i=0; i<cards.length; i++) {

    // See if it is this card (ignoring the case of the string)
    if (cardname.toLowerCase () == cards[i].name.toLowerCase()) {
      cardType = i;
      break;
    }
  }
  
  // If card type not found, report an error
  if (cardType == -1) {
     ccErrorNo = 0;
     return false; 
  }
   
  // Ensure that the user has provided a credit card number
  if (cardnumber.length == 0)  {
     ccErrorNo = 1;
     return false; 
  }
    
  // Now remove any spaces from the credit card number
  cardnumber = cardnumber.replace (/\s/g, "");
  
  // Check that the number is numeric
  var cardNo = cardnumber
  var cardexp = /^[0-9]{13,19}$/;
  if (!cardexp.exec(cardNo))  {
     ccErrorNo = 2;
     return false; 
  }
       
  // Now check the modulus 10 check digit - if required
  if (cards[cardType].checkdigit) {
    var checksum = 0;                                  // running checksum total
    var mychar = "";                                   // next char to process
    var j = 1;                                         // takes value of 1 or 2
  
    // Process each digit one by one starting at the right
    var calc;
    for (i = cardNo.length - 1; i >= 0; i--) {
    
      // Extract the next digit and multiply by 1 or 2 on alternative digits.
      calc = Number(cardNo.charAt(i)) * j;
    
      // If the result is in two digits add 1 to the checksum total
      if (calc > 9) {
        checksum = checksum + 1;
        calc = calc - 10;
      }
    
      // Add the units element to the checksum total
      checksum = checksum + calc;
    
      // Switch the value of j
      if (j ==1) {j = 2} else {j = 1};
    } 
  
    // All done - if checksum is divisible by 10, it is a valid modulus 10.
    // If not, report an error.
    if (checksum % 10 != 0)  {
     ccErrorNo = 3;
     return false; 
    }
  }  

  // The following are the card-specific checks we undertake.
  var LengthValid = false;
  var PrefixValid = false; 
  var undefined; 

  // We use these for holding the valid lengths and prefixes of a card type
  var prefix = new Array ();
  var lengths = new Array ();
    
  // Load an array with the valid prefixes for this card
  prefix = cards[cardType].prefixes.split(",");
      
  // Now see if any of them match what we have in the card number
  for (i=0; i<prefix.length; i++) {
    var exp = new RegExp ("^" + prefix[i]);
    if (exp.test (cardNo)) PrefixValid = true;
  }
      
  // If it isn't a valid prefix there's no point at looking at the length
  if (!PrefixValid) {
     ccErrorNo = 3;
     return false; 
  }
    
  // See if the length is valid for this card
  lengths = cards[cardType].length.split(",");
  for (j=0; j<lengths.length; j++) {
    if (cardNo.length == lengths[j]) LengthValid = true;
  }
  
  // See if all is OK by seeing if the length was valid. We only check the 
  // length if all else was hunky dory.
  if (!LengthValid) {
     ccErrorNo = 4;
     return false; 
  };   
  
  // The credit card is in the required format.
  return true;
}

function location_all(frm)
{
	for(i=0; i < frm.location_checkbox.length;i++)
	{
		frm.location_checkbox[i].checked=true;
		//frm.chkId[i].disabled=true;
	}	
	return false;
}

function location_none(frm)
{	
	for(i=0; i < frm.location_checkbox.length;i++)
	{
		frm.location_checkbox[i].checked=false;
		//frm.chkId[i].disabled=true;
	}	
	return false;	
}

function zipcode_validation(zipcode){
	var valid = "0123456789-";
	var hyphencount = 0;
	if (zipcode.length!=5 && zipcode.length!=10) {
		return false;
	}
	for (var i=0; i < zipcode.length; i++) {
		temp = "" + zipcode.substring(i, i+1);
		if (temp == "-") hyphencount++;
		if (valid.indexOf(temp) == "-1") {
			return false;
		}
		if ((hyphencount > 1) || ((zipcode.length==10) && ""+zipcode.charAt(5)!="-")) {
			return false;
		}
	}
}

function login_cancel(){
	$("err_rc_firstName").innerHTML = "";
	$("err_rc_lastName").innerHTML = "";
	$("err_rc_company").innerHTML = "";
	$("err_rc_address").innerHTML = "";
	$("err_rc_city").innerHTML = "";
	$("err_rc_state").innerHTML = "";
	$("err_rc_zip").innerHTML = "";
	$("err_rc_phone1").innerHTML = "";
	$("err_rc_phone2").innerHTML = "";
	$("err_rc_email").innerHTML = "";
	return false;
}
function billing_cancel(){
	$("err_cardtype").innerHTML = "";
	$("err_cardno").innerHTML = "";
	$("err_month").innerHTML = "";
	$("err_year").innerHTML = "";
	$("err_cvvno").innerHTML = "";
	$("err_fn").innerHTML = "";
	$("err_ln").innerHTML = "";
	$("err_address").innerHTML = "";
	$("err_city").innerHTML = "";
	$("err_state").innerHTML = "";
	$("err_zipcode").innerHTML = "";
	return false;
}

function login_validation(){
		var errmsg="";
		var chosen="";
		var rc_firstName	=	$("rc_firstName").value; 
		var rc_lastName		=	$("rc_lastName").value;	
		var rc_Company		=	$("rc_Company").value;
		var rc_address		=	$("rc_address").value;
		var rc_city			=	$("rc_city").value;
		var rc_state		=	$("rc_state").value;		
		var rc_zip			=	$("rc_zip").value;
		var rc_phone1		=	$("rc_phone1").value;		
		var rc_phone2		=	$("rc_phone2").value;	
		var rc_email		=	$("rc_email").value;	
		var location_checkbox=	document.frm_realtor.location_checkbox.length; 
		
		if(rc_firstName=="") { errmsg+= $("err_rc_firstName").innerHTML="First Name is required";}
		else{
			if(NameRegxp.test(rc_firstName) != true)
				errmsg += $("err_rc_firstName").innerHTML = "Enter valid First Name";
			else
				errmsg+=$("err_rc_firstName").innerHTML="";
		}

		if(rc_lastName=="") { errmsg+= $("err_rc_lastName").innerHTML="Last Name is required";}
		else {
			if(NameRegxp.test(rc_lastName) != true)
				errmsg += $("err_rc_lastName").innerHTML = "Enter valid Last Name";
			else
				errmsg+=$("err_rc_lastName").innerHTML=""; 
		}

		if(rc_Company=="") { errmsg+= $("err_rc_company").innerHTML="Company Name is required";}
		else { 
			if(CompanyNameRegxp.test(rc_Company) != true) {
				errmsg += $("err_rc_company").innerHTML = "Enter valid Company name";	
			} else {
				if (isNaN(rc_Company)) 
					errmsg+=$("err_rc_company").innerHTML=""; 
				else
					errmsg += $("err_rc_company").innerHTML = "Enter valid Company name";	
			}
		}

		if(rc_address=="") { errmsg+= $("err_rc_address").innerHTML="Realtor Address is required";}
		else { errmsg+=$("err_rc_address").innerHTML=""; }

		if(rc_city=="") {
			errmsg+= $("err_rc_city").innerHTML="City is required";
		}else{
			if(NameRegxp.test(rc_city) != true)
				errmsg += $("err_rc_city").innerHTML = "Enter valid City";
			else
				errmsg+=$("err_rc_city").innerHTML="";
		}

		if(rc_state=="") {
			errmsg+= $("err_rc_state").innerHTML="State is required";
		}else{
			if(NameRegxp.test(rc_state) != true)
				errmsg += $("err_rc_state").innerHTML = "Enter valid State";
			else
				errmsg+=$("err_rc_state").innerHTML="";
		}

		if(rc_zip=="") { errmsg+= $("err_rc_zip").innerHTML="Zip is required";}
		else {
			if(zipcode_validation(rc_zip) == false)
				errmsg+=$("err_rc_zip").innerHTML = "Enter valid Zip";
			else errmsg+=$("err_rc_zip").innerHTML= ""; 
		}

		if(rc_phone1=="") { errmsg+= $("err_rc_phone1").innerHTML="Phone Number is required";}
		else {
			if(USTelNoRegxp.test(rc_phone1) != true)
				errmsg += $("err_rc_phone1").innerHTML = "Enter valid Phone Number";
			else
				errmsg+=$("err_rc_phone1").innerHTML="";
		}

		if(rc_phone2=="") {
		}
		else {
			if(USTelNoRegxp.test(rc_phone2) != true)
				errmsg += $("err_rc_phone2").innerHTML = "Enter valid Phone Number";
			else
				errmsg+=$("err_rc_phone2").innerHTML="";
		}

		if(rc_email=="") { errmsg+= $("err_rc_email").innerHTML="E-Mail is required";}
		else {
			if(EmailRegxp.test(rc_email) != true)
				errmsg += $("err_rc_email").innerHTML = "Enter valid E-mail address";
			else
				errmsg+=$("err_rc_email").innerHTML = "";
		}

		for(i=0; i<location_checkbox; i++)
		{
			if(document.frm_realtor.location_checkbox[i].selected && document.frm_realtor.location_checkbox[i].value != "")
			{
				chosen+=document.frm_realtor.location_checkbox[i].value+',';
			}
		}
		
		if(chosen==""){
			errmsg+= $("err_location_checkbox").innerHTML = "Choose one location";
		}else{
			errmsg+= $("err_location_checkbox").innerHTML = "";
		}
		
		if(errmsg==""){
			$("cansave").value = "yes";
			document.frm_realtor.submit();
			//return true;
		}else return false;
}
function searchActionComplete(t)
{	
	window.location.href="realtor_billing.php?id="+t.responseText;
	return false;
}
function same()
{
	var address	=	$("hid_rc_address").value;	
	var state	=	$("hid_rc_state").value;
	var zipcode	=	$("hid_rc_zipCode").value;
	var city	=	$("hid_rc_city").value;
	
	$("rc_address").value	=	address;
	$("rc_city").value	=	city;
	$("rc_state").value	=	state;
	$("rc_zip").value		=	zipcode;
}
function de_select()
{
	$("rc_address").value	=	"";
	$("rc_city").value	=	"";
	$("rc_state").value	=	"";
	$("rc_zip").value		=	"";
}
function realtor_billing(){
	var errmsg="";
	var realtor_id			=	$("realtor_id").value;
	var rc_firstName		=	$("rc_firstName").value;
	var rc_lastName			=	$("rc_lastName").value;
	var subcribetype_length	=	frm_billing.subcribetype.length;
	for(var i=0; i<subcribetype_length; i++)
	{
		if(frm_billing.subcribetype[i].checked)
		{
			var subcribe_type=frm_billing.subcribetype[i].value;
		}
	}
	var cardtype	=	$("cardtype").value;
	var rc_cardno	=	$("rc_cardno").value;
	var rc_cvvno	=	$("rc_cvvno").value;

	var month_select=	$("month_select").value;
	var year_select	=	$("year_select").value;

	var rc_address	=	$("rc_address").value;
	var rc_city		=	$("rc_city").value;
	var rc_state	=	$("rc_state").value;
	var rc_zip		=	$("rc_zip").value;
	if(rc_firstName==""){
		errmsg		+=	$("err_fn").innerHTML="First Name is required";
	}else{
		errmsg		+=	$("err_fn").innerHTML="";
	}
	
	if(rc_lastName==""){
		errmsg		+=	$("err_ln").innerHTML="Last Name is required";
	}else{
		errmsg		+=	$("err_ln").innerHTML="";
	}
	
	if(cardtype==""){
		errmsg		+=	$("err_cardtype").innerHTML="Card Type is required";
	}else{
		errmsg		+=	$("err_cardtype").innerHTML="";
	}

	if(rc_cardno==""){
		errmsg		+=	$("err_cardno").innerHTML	=	"Card No is required";
	}else{
		if(cardtype != ""){
			if(CreditcardValidation(rc_cardno, cardtype)==false){
				errmsg		+=	$("err_cardno").innerHTML	=	"Enter valid Credit card number";
			}else
				errmsg		+=	$("err_cardno").innerHTML	=	"";
		}
	}
	
	if(month_select==""){
		errmsg		+=	$("err_month").innerHTML="Month is required";
	}else{
		errmsg		+=	$("err_month").innerHTML="";
	}
	
	if(year_select==""){
		errmsg		+=	$("err_year").innerHTML="Year is required";
	}else{
		errmsg		+=	$("err_year").innerHTML="";
	}
	if(month_select != "" && year_select != ""){
		if(isExpiryDate(month_select, year_select) == false)
			errmsg		+=	$("err_year").innerHTML="Your card already expired";
		else errmsg		+=	$("err_year").innerHTML= "";
	}
		
	if(rc_cvvno==""){
		errmsg		+=	$("err_cvvno").innerHTML="CVV No is required";
	}else{
		if(isNaN(rc_cvvno)) {
			errmsg += $("err_cvvno").innerHTML = "Enter valid CVV Number";
		} else if (rc_cvvno.length>3) {
			errmsg += $("err_cvvno").innerHTML = "Enter valid CVV Number";
		} else {
			errmsg+=$("err_cvvno").innerHTML=""; 
		}
	}
	
	if(rc_address==""){
		errmsg		+=	$("err_address").innerHTML="Address is required";
	}else{
		errmsg		+=	$("err_address").innerHTML="";
	}

	if(rc_city==""){
		errmsg		+=	$("err_city").innerHTML="City is required";
	}else{
		errmsg		+=	$("err_city").innerHTML="";
	}

	if(rc_state==""){
		errmsg		+=	$("err_state").innerHTML="State is required";
	}else{
		errmsg		+=	$("err_state").innerHTML="";
	}
	
	if(rc_zip==""){
		errmsg		+=	$("err_zipcode").innerHTML="Zip is required";
	}else{
		if(zipcode_validation(rc_zip) == false){
			errmsg		+=	$("err_zipcode").innerHTML="Enter valid Zip";
		}else{
			errmsg		+=	$("err_zipcode").innerHTML="";
		}
	}
	
	if(errmsg	==	""){
		$("cansave").value = "yes";
		document.frm_billing.submit();
		//return true;
	}else{
		return false;
	}
}
function billingActionComplete(t,realtorid)
{	
	window.location.href="customize_screen.php?id="+realtorid;
}

function rc_editbilling()
{	
	var realtor_id		=	$("realtor_id").value; 
	var rc_firstName	=	$("rc_firstName").value; 
	var rc_lastName		=	$("rc_lastName").value; 
	var subcribetype_length=frm_editbilling.subcribetype.length;
	for(var i=0; i<subcribetype_length; i++)
	{
		if(frm_editbilling.subcribetype[i].checked)
		{
			var subcribe_type=frm_editbilling.subcribetype[i].value;
		}
	}
	var cardtype		=	$("cardtype").value;
	var rc_cardno		=	$("rc_cardno").value;
	var rc_cvvno		=	$("rc_cvvno").value;
	var month_select	=	$("month_select").value;
	var year_select		=	$("year_select").value;
	var rc_address		=	$("rc_address").value;
	var rc_city			=	$("rc_city").value;
	var rc_state		=	$("rc_state").value;
	var rc_zip			=	$("rc_zip").value;
	var url 			=	urlPrefixPath+"Realtor/rc_functions/realtor_billing.php";
	var pars			=	"objAction=rc_editbilling&rc_firstName="+rc_firstName+"&rc_lastName="+rc_lastName+"&subcribetype="+subcribe_type+"&cardtype="+cardtype+"&rc_cardno="+rc_cardno+"&rc_cvvno="+rc_cvvno+"&month_select="+month_select+"&year_select="+year_select+"&rc_address="+rc_address+"&rc_city="+rc_city+"&rc_state="+rc_state+"&rc_zip="+rc_zip+"&realtor_id="+realtor_id;
	var success = function(t){ billingActionComplete(t); }
	var failure = function(t){ editFailed(t);}		
	var myAjax = new Ajax.Request(url, {method:'post',postBody:pars, onSuccess:success, onFailure:failure});
	return false;
}

function rc_createprofile()
{
	var errmsg		=	"";
	var chosen		=	"";
	var rc_firstName	=	$("rc_firstName").value;
	var rc_lastName		=	$("rc_lastName").value;

	var rc_Company		=	$("rc_Company").value;
	var rc_address		=	$("rc_address").value;
	var rc_city			=	$("rc_city").value;
	var rc_state		=	$("rc_state").value;		
	
	var rc_zip			=	$("rc_zip").value;
	var rc_phone1		=	$("rc_phone1").value;		

	var rc_phone2		=	$("rc_phone2").value;
	var rc_email		=	$("rc_email").value;
	var user_id			=	$("user_id").value;
	var realtor_id		=	$("realtor_id").value;

	if(rc_firstName == "") { errmsg += $("err_rc_firstName").innerHTML = "First Name is required";}
	else {
		if(NameRegxp.test(rc_firstName) != true)
			errmsg += $("err_rc_firstName").innerHTML = "Enter valid First Name";
		else
			errmsg+=$("err_rc_firstName").innerHTML="";
	}

	if(rc_lastName == "") { errmsg += $("err_rc_lastName").innerHTML = "Last Name is required";}
	else {
		if(NameRegxp.test(rc_lastName) != true)
			errmsg += $("err_rc_lastName").innerHTML = "Enter valid Last Name";
		else
			errmsg+=$("err_rc_lastName").innerHTML="";
	}
	
	if(rc_Company == "") { errmsg += $("err_rc_company").innerHTML = "Company Name is required";}
	else { errmsg += $("err_rc_company").innerHTML = ""; }

	if(rc_address == "") { errmsg += $("err_rc_address").innerHTML = "Address is required";}
	else { errmsg += $("err_rc_address").innerHTML = ""; }

	if(rc_city == "") { errmsg += $("err_rc_city").innerHTML = "City is required";}
	else { errmsg += $("err_rc_city").innerHTML = ""; }

	if(rc_state == "") { errmsg += $("err_rc_state").innerHTML = "State is required";}
	else { errmsg += $("err_rc_state").innerHTML = ""; }

	if(rc_zip == "") { errmsg += $("err_rc_zip").innerHTML = "Zip is required";}
	else {
		if(zipcode_validation(rc_zip) == false)
			errmsg+=$("err_rc_zip").innerHTML = "Enter valid Zip";
		else errmsg+=$("err_rc_zip").innerHTML= ""; 
	}

	if(rc_phone1 == "") { errmsg += $("err_rc_phone1").innerHTML = "Phone Number is required";}
	else { 
		if(USTelNoRegxp.test(rc_phone1) != true)
			errmsg += $("err_rc_phone1").innerHTML = "Enter valid Phone Number";
		else
			errmsg+=$("err_rc_phone1").innerHTML="";
	}

	if(rc_phone2 == "") {
	}
	else {
		if(USTelNoRegxp.test(rc_phone2) != true)
			errmsg += $("err_rc_phone2").innerHTML = "Enter valid Phone Number";
		else
			errmsg+=$("err_rc_phone2").innerHTML="";
	}

	if(rc_email == "") { errmsg += $("err_rc_email").innerHTML = "E-Mail is required";}
	else {
		if(EmailRegxp.test(rc_email) != true)
			errmsg += $("err_rc_email").innerHTML = "Enter valid E-mail address";
		else
			errmsg += $("err_rc_email").innerHTML="";
	}

	if(errmsg == ""){ 
		var SuccessIdent=	"SuccessMessage";
		var url		=	urlPrefixPath+"ajax/manageRealtor.php";
		var pars	=	"objAction=rc_createprofile&rc_firstName="+rc_firstName+"&rc_lastName="+rc_lastName+"&rc_Company="+rc_Company+"&rc_email="+rc_email+"&rc_address="+rc_address+"&rc_city="+rc_city+"&rc_state="+rc_state+"&rc_zip="+rc_zip+"&rc_phone1="+rc_phone1+"&rc_phone2="+rc_phone2+"&user_id="+user_id+"&realtor_id="+realtor_id;
		var success	=	function(t){ rc_createprofileComplete(t, SuccessIdent); }
		var failure	=	function(t){ rc_createprofileFailed(t);}		
		var myAjax	=	new Ajax.Request(url, {method:'post',postBody:pars, onSuccess:success, onFailure:failure});
	}else{ 
	}
	return false;
}

function rc_createprofileComplete(t, SuccessIdent)
{
	var response = t.responseText.split("||");
	if(response[1] == undefined){
		$(SuccessIdent).innerHTML = response[0];
	}else{
		$(SuccessIdent).innerHTML = response[0];
		RedirectPage(response[1]);
	}
	return false;
}

function rc_editprofile()
{
		var errmsg="";
		var chosen="";
		var rc_firstName	=	$("rc_firstName").value;
		var rc_lastName		=	$("rc_lastName").value;
		
		/*var rc_password	=	$("rc_password").value;
		var rc_repassword	=	$("rc_repassword").value;*/

		var rc_Company		=	$("rc_Company").value;
		var rc_address		=	$("rc_address").value;
		var rc_city		=	$("rc_city").value;
		var rc_state		=	$("rc_state").value;		
		
		var rc_zip			=	$("rc_zip").value;
		var rc_phone1		=	$("rc_phone1").value;		

		var rc_phone2		=	$("rc_phone2").value;
		var rc_email		=	$("rc_email").value;
		var user_id		=	$("user_id").value;
		var realtor_id		=	$("realtor_id").value;
		
		if(rc_firstName == "") { errmsg += $("err_rc_firstName").innerHTML = "First Name is required";}
		else {
			if(NameRegxp.test(rc_firstName) != true)
				errmsg += $("err_rc_firstName").innerHTML = "Enter valid First Name";
			else
				errmsg+=$("err_rc_firstName").innerHTML="";
		}

		if(rc_lastName == "") { errmsg += $("err_rc_lastName").innerHTML = "Last Name is required";}
		else {
			if(NameRegxp.test(rc_lastName) != true)
				errmsg += $("err_rc_lastName").innerHTML = "Enter valid Last Name";
			else
				errmsg+=$("err_rc_lastName").innerHTML="";
		}
		
		/*if(rc_password != "" && rc_repassword != "") { 
			if(rc_password != rc_repassword){
				errmsg += $("err_rc_password").innerHTML = "Password not match";
			}else{
				errmsg += $("err_rc_password").innerHTML = "";
			}
		}
		else { errmsg += $("err_rc_password").innerHTML = ""; }*/

		if(rc_Company == "") { errmsg += $("err_rc_company").innerHTML = "Company Name is required";}
		else { errmsg += $("err_rc_company").innerHTML = ""; }

		if(rc_address == "") { errmsg += $("err_rc_address").innerHTML = "Address is required";}
		else { errmsg += $("err_rc_address").innerHTML = ""; }

		if(rc_city == "") { errmsg += $("err_rc_city").innerHTML = "City is required";}
		else { errmsg += $("err_rc_city").innerHTML = ""; }

		if(rc_state == "") { errmsg += $("err_rc_state").innerHTML = "State is required";}
		else { errmsg += $("err_rc_state").innerHTML = ""; }

		if(rc_zip == "") { errmsg += $("err_rc_zip").innerHTML = "Zip is required";}
		else { 
			if(zipcode_validation(rc_zip) == false)
				errmsg+=$("err_rc_zip").innerHTML = "Enter valid Zip";
			else errmsg+=$("err_rc_zip").innerHTML= ""; 
		}

		if(rc_phone1 == "") { errmsg += $("err_rc_phone1").innerHTML = "Phone Number is required";}
		else { 
			if(USTelNoRegxp.test(rc_phone1) != true)
				errmsg += $("err_rc_phone1").innerHTML = "Enter valid Phone Number";
			else
				errmsg+=$("err_rc_phone1").innerHTML="";
		}

		if(rc_phone2 == "") { //errmsg += $("err_rc_phone2").innerHTML = "Phone Number is required";
		}
		else {
			if(USTelNoRegxp.test(rc_phone2) != true)
				errmsg += $("err_rc_phone2").innerHTML = "Enter valid Phone Number";
			else
				errmsg+=$("err_rc_phone2").innerHTML="";
		}

		if(rc_email == "") { errmsg += $("err_rc_email").innerHTML = "E-Mail is required";}
		else {
			if(EmailRegxp.test(rc_email) != true)
				errmsg += $("err_rc_email").innerHTML = "Enter valid E-mail address";
			else
				errmsg += $("err_rc_email").innerHTML="";
		}

		if(errmsg == ""){ 
			var url		=	urlPrefixPath+"Realtor/rc_functions/index.php";
			var pars	=	"objAction=rc_editprofile&rc_firstName="+rc_firstName+"&rc_lastName="+rc_lastName+"&rc_Company="+rc_Company+"&rc_email="+rc_email+"&rc_address="+rc_address+"&rc_city="+rc_city+"&rc_state="+rc_state+"&rc_zip="+rc_zip+"&rc_phone1="+rc_phone1+"&rc_phone2="+rc_phone2+"&user_id="+user_id+"&realtor_id="+realtor_id;
			var success	=	function(t){ editActionComplete(t); }
			var failure	=	function(t){ editFailed(t);}		
			var myAjax	=	new Ajax.Request(url, {method:'post',postBody:pars, onSuccess:success, onFailure:failure});
			return true;
		}else{ 
			return false;
		}
}

function customize_validation(){
	var error_message	=	"";
	
	var website			=	$("website").value;
	var rc_id			=	$("rc_id").value;
	
	if(website != ""){
		if(!isValidURL(website)){
			$("website_error").innerHTML = "Enter valid website";
			error_message += "1";
        }else{
			$("website_error").innerHTML = "";
			error_message += "";
		}
	}
	if(error_message != ""){
		return false;
	}else{
		$("cansave").value = "yes";
		document.frm_customize.submit();
		//return true;
	}
}

function showImage(ImageType){
	var url		=	urlPrefixPath+"Realtor/rc_functions/index.php";
	var pars	=	"objAction=changeImage&image_type="+ImageType;
	var success	=	function(t){showImageComplete(t, ImageType); }
	var failure	=	function(t){editFailed(t);}	
	var myAjax	=	new Ajax.Request(url, {method:'post',postBody:pars, onSuccess:success, onFailure:failure});
	return false;
}

function showImageComplete(t,ImageType){
	var responseTextvalue = t.responseText.split("||");
	if(ImageType == "logo" && responseTextvalue[1] == "yes"){
		$("Iscompanylogouploaded").value = "yes";
	}else if(ImageType == "business" && responseTextvalue[1] == "yes"){
		$("Isbusinessphotouploaded").value = "yes";
	}
	$(ImageType+"_imageid").innerHTML = responseTextvalue[0];
	return false;
}

function resetImageValues(companyLogo, businessPhoto){
	var url		=	urlPrefixPath+"Realtor/rc_functions/index.php";
	var pars	=	"objAction=resetImage&rc_businessPhoto="+$(businessPhoto).value+"&rc_companyLogo="+$(companyLogo).value+"&deletebusinessphoto="+$("Isbusinessphotouploaded").value+"&deletelogo="+$("Iscompanylogouploaded").value;
	var success	=	function(t){resetImageValuesComplete(t); }
	var failure	=	function(t){editFailed(t);}	
	var myAjax	=	new Ajax.Request(url, {method:'post',postBody:pars, onSuccess:success, onFailure:failure});
	return false;
}

function resetImageValuesComplete(t){
	RedirectPage(t.responseText);
	return false;
}

function editlogo() {
	$("logoedit").style.display="block";
	$("logoimgedit").value = 1;
}

function editphoto() {
	$("photoedit").style.display="block";
	$("phimgedit").value = 1;
}

function isExpiryDate(month, year) {
	if (!isNum(year+""))
	return false;
	if (!isNum(month+""))
	return false;
	today = new Date();
	expiry = new Date(year, month);
	if (today.getTime() > expiry.getTime())
	return false;
	else
	return true;
}

function isNum(argvalue) {
	argvalue = argvalue.toString();

	if (argvalue.length == 0)
	return false;
	
	for (var n = 0; n < argvalue.length; n++)
	if (argvalue.substring(n, n+1) < "0" || argvalue.substring(n, n+1) > "9")
	return false;
	
	return true;
}

function formsubmit(formname){
	formname.submit();
	return false;
}

function realtor_billing_preview(){
	$("cansave").value = "yes";
	document.frm_billing.submit();
}

function delete_rcsubscriber(ident){
	var objAction = "delete_subscriber";
	var url		=	urlPrefixPath+"admin/manage_realtor.php";
	var pars	=	"objAction="+objAction+"&id="+ident;
	var success	=	function(t){ deletesubscriberComplete(t, ident); }
	var failure	=	function(t){ sendPasswordFailed(t);}
	var myAjax	=	new Ajax.Request(url, {method:'post', postBody:pars, onSuccess:success, onFailure:failure});
}
function deletesubscriberComplete(t, ident){
	location.href = SITEGLOBAL_PATH+"rc_subscribers.php";
}

function rc_subscriberedit_cancel(url){
	location.href = url;
}

function subscriber_edit_validation(){

	var errmsg=""; 
	if(($("ec_firstName").value)==""){	
		errmsg+=$("err_ecfirstname").innerHTML	=	"First Name is required";
	}else{
		if(NameRegxp.test($("ec_firstName").value) != true)
			errmsg += $("err_ecfirstname").innerHTML	=	"Enter valid First Name";
		else
			errmsg += $("err_ecfirstname").innerHTML	=	"";
	}
		
	if(($("ec_lastName").value)==""){
		errmsg+=$("err_eclastname").innerHTML	=	"Last Name is required";
	}else{
		if(NameRegxp.test($("ec_lastName").value) != true)
			errmsg += $("err_eclastname").innerHTML	=	"Enter valid Last Name";
		else
			errmsg += $("err_eclastname").innerHTML	=	"";
	}

	if(($("ec_address").value)==""){
		errmsg+=$("err_ecaddress").innerHTML="";
	}else{ $("err_ecaddress").innerHTML=""; }
	
	if(($("ec_city").value)==""){
		errmsg+=$("err_eccity").innerHTML="";
	}else{
		if(NameRegxp.test($("ec_city").value) != true)
			errmsg += $("err_eccity").innerHTML	=	"Enter valid City";
		else
			errmsg += $("err_eccity").innerHTML	=	"";
	}

	if(($("ec_state").value)==""){
		errmsg+=$("err_ecstate").innerHTML="";
	}else{
		if(NameRegxp.test($("ec_state").value) != true)
			errmsg += $("err_ecstate").innerHTML = "Enter valid State";
		else
			errmsg += $("err_ecstate").innerHTML = "";
	}
	
	if(($("ec_zipcode").value)==""){
		errmsg+=$("err_eczipcode").innerHTML="";
	}else{
		if(zipcode_validation($("ec_zipcode").value) == false)
			errmsg+=$("err_eczipcode").innerHTML = "Enter valid Zip";
		else 
			errmsg+=$("err_eczipcode").innerHTML=""; }

	if(($("ec_phoneNumber").value)==""){
		errmsg+=$("err_echomephone").innerHTML="";
	}else{
		if(USTelNoRegxp.test($("ec_phoneNumber").value) != true)
			errmsg += $("err_echomephone").innerHTML = "Enter valid Phone Number";
		else
			errmsg+=$("err_echomephone").innerHTML="";
	}
	if(($("ec_email").value)==""){
		errmsg+=$("err_ecemail").innerHTML="Email is required";
	}else{
		if(EmailRegxp.test($("ec_email").value) != true)
			errmsg += $("err_ecemail").innerHTML = "Enter valid E-mail address";
		else
			errmsg += $("err_ecemail").innerHTML="";
	}
	if(errmsg){
		return false;
	}else{
		$("cansave").value = "yes";
		document.loginfrm.submit();
	}
}

function rc_changepassword()
{
	var errmsg = "";
	var ident = $("user_id").value;
	if($("rc_password").value=="")
		errmsg += $("err_rc_password").innerHTML = "Enter new password";
	else if($("rc_password").value.length < 6)
		errmsg += $("err_rc_password").innerHTML = "Enter password atleast with 6 characters";
	else errmsg += $("err_rc_password").innerHTML = '';
	if($("rc_password").value != $("rc_repassword").value)
		errmsg += $("err_rc_repassword").innerHTML = "Retyped password didn't match";
	else errmsg += $("err_rc_repassword").innerHTML = '';
	if(errmsg){
		return false;
	}else{
		var objAction 	=	"changepassword";
		var url		=	urlPrefixPath+"ajax/manageRealtor.php";
		var pars	=	"objAction="+objAction+"&id="+ident+"&password="+$("rc_password").value;
		var success	=	function(t){ rc_changepasswordComplete(t, "SuccessMessage"); }
		var failure	=	function(t){ rc_changepasswordFailed(t);}
		var myAjax	=	new Ajax.Request(url, {method:'post', postBody:pars, onSuccess:success, onFailure:failure});
	}
	return false;
}
function rc_changepasswordComplete(t, successIdent){
	var response = t.responseText.split("||");
	if(response[1] == undefined){
		$(successIdent).innerHTML = response[0];
	}else{
		$(successIdent).innerHTML = response[0];
		RedirectPage(response[1]);
	}
	return false;
}

function rc_change_password(){
	var errmsg = "";
	var ident = $("user_id").value;
	if($("rc_prev_password").value=="")
		errmsg += $("err_rc_prev_password").innerHTML = "Enter old password";
	else errmsg += $("err_rc_prev_password").innerHTML = "";
	if($("rc_password").value=="")
		errmsg += $("err_rc_password").innerHTML = "Enter new password";
	else if($("rc_password").value.length < 6)
		errmsg += $("err_rc_password").innerHTML = "Enter password atleast with 6 characters";
	else errmsg += $("err_rc_password").innerHTML = '';
	if($("rc_password").value != $("rc_repassword").value)
		errmsg += $("err_rc_repassword").innerHTML = "Retyped password didn't match";
	else errmsg += $("err_rc_repassword").innerHTML = '';
	if(errmsg){
		return false;
	}else{
		var objAction 	=	"change_password";
		var url		=	urlPrefixPath+"ajax/manageRealtor.php";
		var pars	=	"objAction="+objAction+"&id="+ident+"&old_password="+$("rc_prev_password").value+"&password="+$("rc_password").value+"&redirectid="+$("realtor_id").value;
		var success	=	function(t){ rc_changepasswordComplete(t, "SuccessMessage"); }
		var failure	=	function(t){ rc_changepasswordFailed(t);}
		var myAjax	=	new Ajax.Request(url, {method:'post', postBody:pars, onSuccess:success, onFailure:failure});
	}
	return false;
}
