// AJAX

var request = null;

function createRequest() {
	try {
			request = new XMLHttpRequest();
	} catch (trymicrosoft) {
		try {
			request = new AtiveXObject("Msxml2.XMLHTTP");
		} catch (othermicrosoft) {
			try {
				request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (failed) {
				request = null;
			}
		}
	}

	if (request == null) {
		alert("Error creating request object, you must have Javascipt enabled!");
	}
}

function updateCats() {
	var a = document.post_ad.postsubcats;
	if (request.readyState == 4) {
		removeAllOptions(a);
		var newCats = request.responseText;	
		eval(newCats);
		var arrLen = valArray.length;
		for ( var i=0, len=arrLen; i<len; ++i ){
			addOption(a, titArray[i], curcat + "|" + valArray[i]);
		}
		selCat(cursubcat);
	}
}

function updateCities() {
	var a = document.post_ad.selcities;
	if (request.readyState == 4) {
		removeAllOptions(a);
		var newCities = request.responseText;
		eval(newCities);
		var arrLen = valArray.length;
		for (var i=0, len=arrLen; i<len; ++i) {
			addOption(a, titArray[i], valArray[i]);
		}
	}
}
var cursubcat = '';
var curcat = '';
function getCats(cat) {
	if (cat != 'none') {
		cursbcat = '';
		createRequest();
		curcat = cat;
		var url = "getcats.php?"
		url = url + "cat=" + escape(cat);
		url = url + "&dummy=" + new Date().getTime();
		request.open("GET", url, true);
		request.onreadystatechange = updateCats;
		request.send(null);
	} else {
		curcat = "";
		removeAllOptions(document.post_ad.postsubcats);
	}
}

function selCat(cat) {
	var a = document.post_ad.postsubcats;
	for (var i=0, len=a.options.length; i<len; ++i){
		if (a[i].value == cat) {
			a[i].selected = true;
		}
	}
}
var curstate = "";
function getCities(state) {
	if(state != 'all') {
		createRequest();
		curstate = state;
		var url = "getcities.php?";
		url = url + "state=" + escape(state);
		url = url + "&dummy=" + new Date().getTime();
		request.open("GET", url, true);
		request.onreadystatechange = updateCities;
		request.send(null);
	} else {
		curcat = "";
		removeAllOptions(document.post_ad.selcities);
	}
}

function addCity(stateID,stateAbbr) {
    if ($("#addName").val() == "" || $("#addID").val("")){
        alert("Please fill city name and city ID");
    } else {
        $.get("requestaction.php",{action:"add",stateID:stateID,stateAbbr:stateAbbr,cityName:$("#addName").val(),cityID:$("#addID").val()},function(data){
            $("#addName").val("");
            $("#addID").val("");
            $("#showRequest").html(data);
        });
    }
}
function vote(id,voted){
    $.get("requestaction.php",{action:"vote",id:id,voted:voted},function(data){
            voted++;
            var td = "#td"+id; 
            $(td).html(voted);
        });
}

function generateCC(){
var cc_number = new Array(16);
var cc_len = 16;
var start = 0;
var rand_number = Math.random();

switch(document.CreateRPProfileForm.creditCardType.value)
{
        case "Visa":
                cc_number[start++] = 4;
                break;
        case "Discover":
                cc_number[start++] = 6;
                cc_number[start++] = 0;
                cc_number[start++] = 1;
                cc_number[start++] = 1;
                break;
        case "MasterCard":
                cc_number[start++] = 5;
                cc_number[start++] = Math.floor(Math.random() * 5) + 1;
                break;
        case "Amex":
                cc_number[start++] = 3;
                cc_number[start++] = Math.round(Math.random()) ? 7 : 4 ;
                cc_len = 15;
                break;
}

for (var i = start; i < (cc_len - 1); i++) {
        cc_number[i] = Math.floor(Math.random() * 10);
}

var sum = 0;
for (var j = 0; j < (cc_len - 1); j++) {
        var digit = cc_number[j];
        if ((j & 1) == (cc_len & 1)) digit *= 2;
        if (digit > 9) digit -= 9;
        sum += digit;
}

var check_digit = new Array(0, 9, 8, 7, 6, 5, 4, 3, 2, 1);
cc_number[cc_len - 1] = check_digit[sum % 10];

document.CreateRPProfileForm.creditCardNumber.value = "";
for (var k = 0; k < cc_len; k++) {
        document.CreateRPProfileForm.creditCardNumber.value += cc_number[k];
}
}
function setDate() {

        var dt = new Date();
        dt = addMonth(dt,1);
        document.CreateRPProfileForm.profileStartDateDay.options[dt.getDate()-1].selected = true;
        document.CreateRPProfileForm.profileStartDateMonth.options[dt.getMonth()].selected = true;
        for(index=0; index<document.CreateRPProfileForm.profileStartDateYear.options.length;index++)
        {
                if(document.CreateRPProfileForm.profileStartDateYear.options[index].value == dt.getFullYear())
                {
                        document.CreateRPProfileForm.profileStartDateYear.options[index].selected = true;
                        break;
                }
        }

}
function addMonth(d,month){
         t  = new Date (d);
          t.setMonth(d.getMonth()+ month) ;
          if (t.getDate() < d.getDate())
                {
              t.setDate(0);
                }
          return t;
}  

function showStat(page,groupby,postid){
    $.get("showstat.php",{page:page,groupby:groupby,postid:postid},function(data){
        $("#showStat").html(data);
    })
}

function clickAdv(id,ip){
    $.get("../admin/adsAction.php",{action:"trackAdv",id:id,ip:ip},function(data){
        //alert(data);
    });
}

function updateInfo(userid){
    var err = '';
    if ($("#smsnumber").val() == '')
    {
        err = "Please enter SMS number";
    } else if (!ValidatePhone($("#smsnumber").val())){
        err = "Please enter valid SMS number";
    } else if ($("#chkAgree").val() == false){
        err = "You do not agree";
    }
    if (err != ''){
        alert(err);
        return;
    }
    $.get("signin.php",{action:"update",userid:userid,smscarrier:$("#smscarrier").val(),smsnumber:$("#smsnumber").val()},function(data){
            $("#info").html("<h2>Thank you! Your info updated successfully!</h2>")
        })
}

function ValidatePhone(phoneNumber) 
{
        var regPhone = /^[2-9]{1}[0-9]{2}-[0-9]{3}-[0-9]{4}$/; 
        if (phoneNumber.match(regPhone))
        {
                return true;
        }
        else
        {
                return false;
        }
}

function ValidateEmail(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   if(email.match(reg)) {
      return true;
   } 
   else
     return false;
}

function sendReply(id,type){
    var err = '';
    var content = '';
    var smsaddress = '';
    if (type == 3){
        content = $("#replySMS").val();
        if ($("#smsnumber").val() == '' && $("#smsnumberCustom").val() == '' && $("#smscarrierCustom").val() == '')
        {
            err = "You must enter one SMS number \n";
            
        } else if (!ValidatePhone($("#smsnumber").val())){
            err = "Please enter valid SMS number \n";
        } 
        if ($("#smsnumber").val() != ''){
            smsaddress = $("#smsnumber").val() + "@" + $("#smscarrier").val();
        } else {
            smsaddress = $("#smsnumberCustom").val() + "@" + $("#smscarrierCustom").val();
        }
        if ($("#replySMS").val() == '')
            err += "Please enter content of your reply";
    } else if (type == 2){
        content = CKEDITOR.instances.replyEmail.getData();
        if ($("#from").val() == ''){
            err = "Please enter email address \n";
        } else if (!ValidateEmail($("#from").val())){
            err = "Please enter valid email address \n";
        }
        if (content == ''){
            err += "Please enter content";
        }
    }
    if (err != ''){
        alert(err);
        return;
    }
    $.get("replyAction.php",{action:"reply",id:id,type:type,from:$("#from").val(),smsaddress:smsaddress,content:content},function(data){
          $("#reply").html("<h2>Thank you! Your reply has been sent successfully</h2>");  
    });
}

function cancelReply(id){
    location.href = "myreplies.php?postid="+id;
}

function reply(id,type,postid){
    var err = '';
    var content = '';
    if (type == 2)
        content = $("#replyContent").val();
    else
        content = CKEDITOR.instances.replyContent.getData();
    if (content == ''){
        alert("Please enter content");
        return;
    }
    $.get("../classifieds/replyAction.php",{action:"sent",id:id,type:type,content:content},function(data){
        alert("Your reply has been sent successfully");
        location.href = "myreplies.php?postid="+postid;
    });
}

function showReply(page,postid,type,total){
    $.get("../classifieds/replyAction.php",{action:"show",page:page,id:postid,type:type,total:total},function(data){
        $("#showReply").html(data);
    });
}

function deleteReply(page,id,postid,type,total){
    if (confirm("Want to delete reply #"+id)){
        $.get("../classifieds/replyAction.php",{action:"delete",id:id},function(data){
            location.href = "myreplies.php?postid="+postid;
            showReply(page, postid, type, total);
        });
    }
}

function updateAffiliate(userid){
    var fname = $("#fname").val();
    var lname = $("#lname").val();
    var mailaddress = $("#mailaddress").val();
    var state = $("#state").val();
    var city = $("#city").val();
    var zip = $("#zip").val();
    var phone = $("#phone").val();
    var ssn = $("#ssn").val();
    var agree = $("#agreeCheck").is(':checked');
    if (agree ==  false || fname == '' || lname == '' || mailaddress == '' || state == 'none' || city == '' || zip == '' || phone == '' || ssn == ''){
        alert("All field are required");
        return;
    }
    $.get("affiliate.php",{action:"update",userid:userid,fname:fname,lname:lname,mailaddress:mailaddress,state:state,city:city,zip:zip,phone:phone,ssn:ssn},function(data){
        alert("Your infomation updated successfully!");
    })
}


