/**
 * @description - functions to Signup User or Register the new User
 */
var user_id;
$(document).ready(function(){
    //$('#signup_container').html(document.getElementById("login_options").innerHTML);
    //$('#signup_container').modal({position: [1,]});
});

function show_form(form_name){
    switch (form_name) {
        case "login":
            document.getElementById("login_form_sp").style.display = "block";
            document.getElementById("register_form").style.display = "none";
            //$('#signup_container').doLayout();
            //document.getElementById("login_options").style.display="none";
            break;
        case "register":
            document.getElementById("register_form").style.display = "block";
            document.getElementById("login_form_sp").style.display = "none";
            //$('#signup_container').doLayout();
            //document.getElementById("login_options").style.display="none";
			//$('#scrollRegistration').jScrollPane();
            break;
    }
}

function validate_user_old(){
    var msg_not_specify = new Array();
    var error_flag = '';
    var arr_obj_field = get_fields_object('user', 'form_user');
    var arr_default_value = get_default_value('user');
    
    if (arr_obj_field[0].value == '' || arr_obj_field[0].value == arr_default_value[0]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','email')); 
        arr_obj_field[0].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[0].style.border = '';
    }
    if (arr_obj_field[1].value == '' || arr_obj_field[1].value == arr_default_value[1]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','password')); 
        arr_obj_field[1].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[1].style.border = '';
    }
    if (arr_obj_field[2].value == '' || arr_obj_field[2].value == arr_default_value[2]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','re_password')); 
        arr_obj_field[2].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[2].style.border = '';
    }
    if (arr_obj_field[3].value == '' || arr_obj_field[3].value == arr_default_value[3]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','first_name')); 
        arr_obj_field[3].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[3].style.border = '';
    }
    if (arr_obj_field[4].value == '' || arr_obj_field[4].value == arr_default_value[4]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','last_name')); 
        arr_obj_field[4].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[4].style.border = '';
    }
    if (arr_obj_field[5].value == '' || arr_obj_field[5].value == arr_default_value[5]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','cert_name')); 
        arr_obj_field[5].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[5].style.border = '';
    }
    if (arr_obj_field[9].value == '' || arr_obj_field[9].value == arr_default_value[9]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','gender')); 
        arr_obj_field[9].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[9].style.border = '';
    }
    if (arr_obj_field[10].value == '' || arr_obj_field[10].value == arr_default_value[10]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','category')); 
        arr_obj_field[10].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[10].style.border = '';
    }
    if (arr_obj_field[11].value == '' || arr_obj_field[11].value == arr_default_value[11]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','phone')); 
        arr_obj_field[11].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[10].style.border = '';
    }
    if (arr_obj_field[11].value == '' || arr_obj_field[11].value == arr_default_value[11]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','phone')); 
        arr_obj_field[11].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[11].style.border = '';
    }
    if (arr_obj_field[12].value == '' || arr_obj_field[12].value == arr_default_value[12]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','phone')); 
        arr_obj_field[12].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[12].style.border = '';
    }
    if (arr_obj_field[13].value == '' || arr_obj_field[13].value == arr_default_value[13]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','phone')); 
        arr_obj_field[13].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[13].style.border = '';
    }
    if (arr_obj_field[14].value == '' || arr_obj_field[14].value == arr_default_value[14]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','phone')); 
        arr_obj_field[14].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[14].style.border = '';
    }
    if (arr_obj_field[15].value == '' || arr_obj_field[15].value == arr_default_value[15]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','phone')); 
        arr_obj_field[15].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[15].style.border = '';
    }
    if (arr_obj_field[16].value == '' || arr_obj_field[16].value == arr_default_value[16]) {
        error_flag = 1;
        //msg_not_specify.push(get_msg('VALIDATE','phone')); 
        arr_obj_field[16].style.border = '1.5px solid #FF0000';
    }
    else {
        arr_obj_field[16].style.border = '';
    }
    
    //	if (arr_obj_field[6].value == '' && arr_obj_field[7].value == '' && arr_obj_field[8].value == '') {
    //	
    //	}
    //	else {
    //		if (arr_obj_field[6].value == '' || arr_obj_field[0].value == arr_default_value[0]) {
    //			error_flag = 1;
    //			msg_not_specify.push(get_msg('VALIDATE', 'day'));
    //			arr_obj_field[6].style.border = '1.5px solid #FF0000';
    //		}
    //		else {
    //			arr_obj_field[6].style.border = '';
    //		}
    //	}
    if (error_flag == 1) {
        if (msg_not_specify.length != 0) {
            document.getElementById('user_msg').innerHTML = msg_not_specify.join('<br>');
        }
        else {
            document.getElementById('user_msg').innerHTML = "Please check the fields highlight in red ";
        }
    }
    else {
        document.getElementById('user_msg').innerHTML = '';
    }
    
}

function validate_login_user(){
    var arr_error_msg = new Array();
    var error_flag = '';
    var arr_obj_field = get_fields('login_user');
    var arr_default_value = get_default_value('login_user');
    //var form_name = "form_user_";
    var default_value;
    var show_error_msg=0;
    var error_msg = '';
    for (i = 0; i < arr_obj_field.length; i++) {
	
		if (typeof arr_obj_field[i] == 'object') {
			var field_name = arr_obj_field[i][0];
			var default_value = arr_obj_field[i][1];
		}
		else 
			if (arr_obj_field[i] != "") {
				field_name = arr_obj_field[i];
			}
		//alert(form_name + field_name);
		show_error_msg=parseInt(show_error_msg,10)+validate_login_user_indv(field_name, default_value)
	}
    
    if(show_error_msg <= 0) {
        document.getElementById('login_msg').innerHTML = "";
        $.ajax({
            type: "POST",
            url: base_url+"register/login",
            data: $('#login_user').serializeArray(),
            success: function(msg){
                //alert(msg);
                var response = (eval("(" + msg + ")"));
                if (response.error == 0) {
					user_id=response.user_id;
					$('#user_id').val(user_id);
					$('#message').val(response.msg);		
					$('#user_auto_password').val(response.password);		
//                    document.getElementById('success_msg').innerHTML = response.msg;
//                    document.getElementById('login_options').style.display = "none";
//                    document.getElementById('login_form').style.display = "none";
//                    document.getElementById('next_page').style.display = "block";
					$("#shopping_cart_details").attr("action",base_url+"register/s-p-saved");
					//$('#shopping_cart_details').action(base_url+"")
					$('#shopping_cart_details').submit();
                    
                }
                else {
                    document.getElementById('login_msg').innerHTML = response.msg;
                }
                //alert(response.msg);
                //var json = json_parse(msg, 'json');
            }
        });
    }
}

function validate_user(){
	
	$('#dob').val($('#dob_year').val()+"-"+$('#dob_month').val()+"-"+$('#dob_date').val());
	//alert(showValues());
	var arr_error_msg = new Array();
	var error_flag = '';
	var arr_obj_field = get_fields('user');
	var arr_default_value = get_default_value('user');
	//var form_name = "form_user_";
	var default_value;
	var show_error_msg=0;
	var error_msg = '';
	for (i = 0; i < arr_obj_field.length; i++) {
	
		if (typeof arr_obj_field[i] == 'object') {
			var field_name = arr_obj_field[i][0];
			var default_value = arr_obj_field[i][1];
		}
		else 
			if (arr_obj_field[i] != "") {
				field_name = arr_obj_field[i];
			}
		//alert(form_name + field_name);
		show_error_msg = show_error_msg+validate_indivitual_item(field_name, default_value);
	}
		if (show_error_msg <= 0 ) {
			document.getElementById('register_msg').innerHTML = "";
			$.ajax({
				type: "POST",
				url: "./register/save-registration",
				data: $('#form_user').serializeArray(),
				success: function(msg){
					var response = (eval("(" + msg + ")"));
					if (response.error == 0) {
						document.getElementById('success_msg').innerHTML = response.msg;
						document.getElementById('login_options').style.display = "none";
						document.getElementById('register_form').style.display = "none";
						document.getElementById('next_page').style.display = "block";
						user_id = response.user_id;
						
					}
					else {
						document.getElementById('register_msg').innerHTML = response.msg;
					}
					//alert(response.msg);
					//var json = json_parse(msg, 'json');
				}
			});
		}
}

function showValues(){
    var fields = $('#form_user').serializeArray();
    jQuery.each(fields, function(i, field){
    });
}

function change_text_field(id, obj, replace_id,from_login){
    if (obj.type == "text") {
		$('#'+replace_id).show();
		obj.style.display = "none";
		document.getElementById(replace_id).focus();
		if ('login' == from_login) {
			validate_login_user_indv(obj.id, get_default_value(id, obj.id));
		}else{
			validate_indivitual_item(obj.id, get_default_value(id, obj.id));
		}
	}
	else {
		if (obj.type == "password" && obj.value == "") {
			document.getElementById(replace_id).value = get_default_value(id, replace_id);
			$('#'+replace_id).show();
			document.getElementById(replace_id).style.display = "block";
			obj.style.display = "none";
			if ('login' == from_login) {
				validate_login_user_indv(replace_id, get_default_value(id, replace_id));
			}
			else {
				validate_indivitual_item(replace_id, get_default_value(id, replace_id));
			}
		}
		else {
				if ('login' == from_login) {
					validate_login_user_indv(obj.id);					
				}else{
					validate_indivitual_item(obj.id);
				}
		}
	}
    //	if(get_default_value(id_name,obj.id)==obj.value){
    //		//document.getElementById(td_name).innerHTML='<input type="password" id=\"'+obj.id+'\" name=\"'+obj.name+'\" onfocus="change_text_field(\''+id_name+'\','+this+',\''+td_name+'\');" onblur="change_text_field(\''+id_name+'\','+this+',\''+td_name+'\');" style=\"width:170px; color:#999; font-size:11px;\"/>';
    //		//alert(document.getElementById(td_name).innerHTML);
    //		//obj.value='';
    //		//obj.type="password";	
    //	}else if(obj.value==''){
    //		//document.getElementById(td_name).innerHTML='<input type="text" id=\"'+obj.id+'\" name=\"'+obj.name+'\" onfocus="change_text_field("'+id_name+'",'+this+',"'+td_name+'");" onblur="change_text_field("'+id_name+'",'+obj+',"'+td_name+'");" style="width:170px; color:#999; font-size:11px;"value="'+get_default_value(id_name,obj.id)+'"/>';
    //		//alert(document.getElementById(td_name).innerHTML);
    //		//obj.type="text";
    //		//obj.value=get_default_value(id_name,obj.id);
    //		
    //	}
    //	
}

/*
 * This is to changes the password filed and text field for login form
 * 
 * 
 */
function change_text_field_login(id, obj, replace_id){
	if (obj.type == "text") {
			check_type_text(id, obj, replace_id);
			validate_login_user_indv(obj.id, get_default_value(id, obj.id));

	}
	else {
		if (obj.type == "password" && obj.value == "") {
			check_type_password(id, obj, replace_id);		
				validate_login_user_indv(replace_id, get_default_value(id, replace_id));		
		}
		else {
				validate_login_user_indv(obj.id);
		}
	}
}

/*
 * This is to do the next step if  the type of the input field as text
 * 
 */
function check_type_text(id, obj, replace_id){
		document.getElementById(replace_id).style.display = "block";
		obj.style.display = "none";
		document.getElementById(replace_id).focus();
}

/*
 * This is to do the next step if  the type of the input field as password
 * 
 */
function check_type_password(id, obj, replace_id){
		document.getElementById(replace_id).value = get_default_value(id, replace_id);
		document.getElementById(replace_id).style.display = "block";
		obj.style.display = "none";
}

function remove_default_value(id_name, obj){
    if (get_default_value(id_name, obj.id) == obj.value) {
        obj.value = '';
    }
}

function check_empty_value(id_name, obj,call_from){
    if (obj.value == '') {
        obj.value = get_default_value(id_name, obj.id);
    }	
	if("login"==call_from){
		validate_login_user_indv(obj.id)
	}else{
			validate_indivitual_item(obj.id,get_default_value(id_name, obj.id));
	}
}

function gotoPayment(){
//    var arr_response = new Array();
//    str_request = "user_id="+user_id;
//	str_request =str_request+"&cart_id= "+ $('#cart_id').val();
//	str_request =str_request+"&i="+ $('#i').val();
//    $.modal.close();
//    //loaderBox();
//    $('#modalBox').html('<div class="loader" id="loader" >' +
//    '<div class="loaderanim"></div>' +
//    '<div class="loadermid"> ' +
//    '<div class="titletextloading">Loading.. Please Wait!</div>' +
//    '</div>' +
//    '<div class="loaderright"></div>' +
//    '</div>');
//	$('#modalBox').modal({close: false ,position: ["10%","40%"]}) ;
//    $.ajax({
//        type: "POST",
//        url: "./payment/index",
//        data: str_request,
//        success: function(msg){
//			if (msg != 'no_payment') {
////				$.modal.close();
////				$('#modalBox').html(msg);
////				$('#modalBox').modal({close: false,position: ["5%", "15%"]});				
//				$("#shopping_cart_details").attr("action",base_url+"register/s-p-saved");
//					//$('#shopping_cart_details').action(base_url+"")
//					$('#shopping_cart_details').submit();
//			}else{
//				window.location="./";
//			}
//        }
//    });
				//base_url=base_url.replace("http:", "https:");
				$("#shopping_cart_details").attr("action",base_https_url+"payment/index");
					$('#shopping_cart_details').submit();
					return false;
}


/*
 * This method is for validation for registration
 * 
 * parameter: field_id , default_value : the form name (registration page or login page)
 * 
 * return: Bool
 * 
 */
function validate_indivitual_item(field_name,default_value){
	var arr_error_msg = new Array();
	var error_flag = '';
	var default_value;
	var show_error_msg=0;
	var error_msg = '';		
	switch (field_name) {
		case "register_email":
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				document.getElementById(field_name).title="Please enter Registered Email";
				error_flag = 1;
			}
			else 
				if (isValidEmail(document.getElementById(field_name).value)) {
					error_msg = get_msg('VALIDATE', 'invalid_email');
					document.getElementById(field_name).title=error_msg;
					error_flag = 1;
				}
			break;
		case "re_password":
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				document.getElementById(field_name).title="Please Re-enter the password";
				error_flag = 1;
			}
			else 
				if (document.getElementById("register_password").value != '' && document.getElementById(field_name).value != document.getElementById("register_password").value) {
					error_flag = 1;
					error_msg = get_msg('VALIDATE', "password_not_same");
						document.getElementById(field_name).title=error_msg;
				}
			break;
		case "register_password":
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				document.getElementById(field_name).title="Minimum 8 Characters ";
				error_flag = 1;
			}else if(document.getElementById(field_name).value.length < 8){
				document.getElementById(field_name).title="Minimum 8 Characters ";
				error_flag = 1;				
			}
			break;
		case "register_password_text":
			if (document.getElementById('register_password').value == "") {
				if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
					document.getElementById(field_name).title="Minimum 8 Characters";
					error_flag = 1;
				}
			}
			break;
		case "website":
			if (document.getElementById(field_name).value != "" && isValidUrl(document.getElementById(field_name).value)) {
				error_flag = 1;
				error_msg = get_msg('VALIDATE', 'invalid_url');
				document.getElementById(field_name).title=error_msg;
			}
			break;
		case "dob_date":
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				error_flag = 1;
				document.getElementById(field_name).title="Please Enter date";
			}
			break;
		case "dob_month":
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				error_flag = 1;
				document.getElementById(field_name).title="Please Enter Month";
			}
			break;
		case "dob_year":
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				error_flag = 1;
				document.getElementById(field_name).title="Please Enter Year";
			}
			else 
				if ((document.getElementById('dob_date').value != '' || document.getElementById('dob_date').value != get_default_value('user', 'dob_date')) && (document.getElementById('dob_month').value != '' && document.getElementById('dob_date').value != get_default_value('user', 'dob_date'))) {
					if ((error_msg = isValidDate(document.getElementById('dob_month').value + "/" + document.getElementById('dob_date').value + "/" + document.getElementById('dob_year').value))) {
							document.getElementById(field_name).title=error_msg;
						error_flag = 1;
					}
					else {
						error_msg = '';
					}
				}
			break;
		case "phone":
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				document.getElementById(field_name).title="Please Enter Phone number";
				error_flag = 1;
			}
			else 
				if (isValidPhone(document.getElementById(field_name).value)) {
					error_flag = 1;
					error_msg = get_msg('VALIDATE', 'invalid_phone');
					document.getElementById(field_name).title=error_msg;
				}			
			break;
		case "zip":
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				document.getElementById(field_name).title="Please enter zip code";
				error_flag = 1;
			}
			else 
				if (isValidZip(document.getElementById(field_name).value)) {
					error_flag = 1;
					error_msg = get_msg('VALIDATE', 'invalid_zip');
					document.getElementById(field_name).title=error_msg;
				}
			break;
		default:
			if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
				if ("text" == document.getElementById(field_name).type || "password" == document.getElementById(field_name).type) {
					error_msg = "Please enter value";
				}else{
					error_msg = "Please select a  value";
				}
				document.getElementById(field_name).title =error_msg ;
				error_flag = 1;
			}
			break;
	}
	if (error_flag == 1) {
		document.getElementById(field_name).style.border = '1.5px solid #FF0000';
		if (error_msg != '') {
			//arr_error_msg.push(error_msg);
			error_msg = '';
		}
		show_error_msg = 1;
		error_flag = '';
		
	}
	else {
		document.getElementById(field_name).style.border = 'solid 1px #369';
	}	
	if (show_error_msg == 1) {
		
			if(document.getElementById('register_msg')){
				document.getElementById('register_msg').innerHTML = "Please check the fields highlight in red<br>";
			}
	}	
	/** This is part is doing the j query tooltip **/	
	object="#"+field_name;
	$(object).tooltip({ 
    track: true, 
    delay: 0, 
    showURL: false
}); 
return show_error_msg;
}
/*
 * This method is for validation login
 * 
 * parameter: field_id , default_value : the form name (registration page or login page)
 * 
 * return: Bool
 * 
 */

function validate_login_user_indv(field_name,default_value){
	
//	var arr_error_msg = new Array();
    var error_flag = '';
  //  var arr_obj_field = get_fields('login_user');
   // var arr_default_value = get_default_value('login_user');
    //var form_name = "form_user_";
    //var default_value;
    var show_error_msg=0;
    var error_msg = '';
	 switch (field_name) {
            case "login_email":
                if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
					document.getElementById(field_name).title="Please enter Registered Email";
                    error_flag = 1;
                }
                else 
                    if (isValidEmail(document.getElementById(field_name).value)) {
                        error_msg = get_msg('VALIDATE', 'invalid_email');
						document.getElementById(field_name).title =error_msg ;
                        error_flag = 1;
                    }else{
					}
                break;
            case "login_password":
                if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
					document.getElementById(field_name).title ="Please Enter password" ;
                    error_flag = 1;
                }else if(document.getElementById(field_name).value.length < 8){
					document.getElementById(field_name).title="Minimum 8 Characters ";
					error_flag = 1;				
				}
                break;
             
            case "useremail":
                if ($('#'+field_name).val() == "" || $('#'+field_name).val() == default_value) {
					document.getElementById(field_name).title="Please Enter Valid Email";
                    error_flag = 1;
                }
                else 
                    if (isValidEmail($('#'+field_name).val())) {
                        error_msg = get_msg('VALIDATE', 'invalid_email');
						document.getElementById(field_name).title =error_msg ;
                        error_flag = 1;
                    }else{
					}
                break;
            case "password":
                if ($('#'+field_name).val() == "" || $('#'+field_name).val() == default_value) {
					document.getElementById(field_name).title="Please Enter Password";
                    error_flag = 1;
                }
                else if(document.getElementById(field_name).value.length < 8){
					document.getElementById(field_name).title="Minimum 8 Characters ";
					error_flag = 1;		
					}
                break;
            case "password_text":
                if ($('#'+field_name).val() == "" || $('#'+field_name).val() == default_value) {
					document.getElementById(field_name).title="Please Enter Password";
                    error_flag = 1;
                }
                else if(document.getElementById(field_name).value.length < 8){
					document.getElementById(field_name).title="Minimum 8 Characters ";
					error_flag = 1;		
					}
                break;
                
            case "login_password_text":
                if (document.getElementById("login_password").value == "") {
                    if (document.getElementById(field_name).value == "" || document.getElementById(field_name).value == default_value) {
							document.getElementById(field_name).title ="Please Enter password" ;
                        	error_flag = 1;
                    }
                }
                break;
        }
        if (error_flag == 1) {
            document.getElementById(field_name).style.border = '1.5px solid #FF0000';
            if (error_msg != '') {
             //   arr_error_msg.push(error_msg);
                error_msg = '';
            }
            show_error_msg = 1;
            error_flag = '';
            
        }
        else {
            document.getElementById(field_name).style.border = 'solid 1px #369';
        }
    if (show_error_msg == 1) {
    	try{
    		document.getElementById('login_msg').innerHTML = "Please check the fields highlight in red";
    	}catch(e){}
	}
	
	
	/** This is part is doing the j query tooltip **/	
	object="#"+field_name;
	$(object).tooltip({ 
    track: true, 
    delay: 0, 
    showURL: false
}); 

return show_error_msg;
}


function login(is_https){	
 if(is_https!=undefined && is_https==true){
	main_url=base_https_url;
}else{
	main_url=base_url;
}
	 $.ajax({
	        type: "POST",
	        url: main_url+"login/login",
	    	data: $('#loginform').serializeArray(),
	        success: function(response){
		 			if("user" == response || "admin" == response){
						$('#log_message').html("");
		 				var redirect_url=base_http_url+ response + "/index/index";
		 				window.location =redirect_url;
						
				 	}
					/*
					else if  ("admin" == response){
				 		var redirect_url=base_url+"admin/index/index";
		 				window.location =redirect_url;
	 				}
	 				*/
					else{
				 		$('#log_message').html(response);
				 	}
	        }
	    });
	 return false;
}

function forgetPassword(is_https){	
	
	if(is_https!=undefined && is_https==true){
		main_url=base_https_url;
	}else{
		main_url=base_url;
	}
	
	$('#pass_message').html("");
	str_request="forget_email="+$('#forget_email').val();
	 $.ajax({
	        type: "POST",
	        url: main_url+"/login/forget-password",
	    	data: str_request,
	        success: function(response){
				 		$('#pass_form').hide();
				 		$('#pass_success').show();
						$('#fmessage').html(response);
	        }
	    });
	 
	 return false;
}



function ErrorSlRegister(f, errorInfo){
		// disabled all errors by default
	
	var error=validationChecking(f, errorInfo);
		// normally, we'd do something like this: only return TRUE if there were no errors.		
		
		if(error == 0){			
			//will check the email availability			
			var res_text=emailAvailable($('#register_email').val());			
			if (res_text.status) {
				$('#survey').show();
				$('#login_form').hide();
			}else{
				$('#register_email_error').show();				
				$('#register_email_error').html(res_text.msg);
			}
		}
		
		
		return false;
	}
	
	
	function emailAvailable(email){
		var  query="email="+email
		var res_text;
		$.ajax({
				type: "POST",
				async:false,
				url: base_url+"register/email-available",
				data:query,
				success: function(msg){
				res_text = (eval("(" + msg + ")"));																
				}
			});	
		return res_text;
	}
	
	function courseEntryCheck(){	
			myRules=courseRules;				
			$("#sl_form").RSV({
			//onCompleteHandler: myOnComplete,
			customErrorHandler: ErrorSlCourse,
			rules: courseRules
		});
	}
	
	
	function ErrorSlCourse(f, errorInfo){
		// disabled all errors by default	
		var error=validationCheckingCourse(f, errorInfo);
		// normally, we'd do something like this: only return TRUE if there were no errors.		
		
		// checking the number of student value
		if ($('#no_of_student').val() == undefined) {
			return error;
		}

		$('#no_of_student_error').css("display", "none");
		
		if ($('#no_of_student').val() != undefined && $('#no_of_student').val() != "") {
			if (isNumber($('#no_of_student').val())) {
				error = false;
				$('#no_of_student_error').css("display", "block");
				$('#no_of_student_error').html('Only Numeric !');
				$('#no_of_student_error').slideDown("slow", 0.2);
			}else if(parseInt($('#no_of_student').val())<=0){
				$('#no_of_student_error').css("display", "block");
				$('#no_of_student_error').html('Always Greater than 0 !');
				$('#no_of_student_error').slideDown("slow", 0.2);				
			}
		}
		
		/*if(!validate_course_date()){
			error=false;	
		}*/
	 	return error;
	}

/**
 * SL survey validation
 * 
 * @param {Object} f
 * @param {Object} errorInfo
 * @return bool
 */	
	function validationCheckingCourse(f, errorInfo){		
		var survey_error=new Array();
		var is_error=0;
		var is_error=validationChecking(f, errorInfo);		
		total_question=$('#total_survey_question').val();
		
		var error_check=validationCheckingSurvey();
	
			if(error_check==1){ 
				is_error=1;
			}
		if($('#sim_id').val()==""||$('#sim_id').val()==null){
			$("#sim_id_error").css("display", "block");
			$("#sim_id_error").html("Missing Required Field:Select a Modules ");
			$("#sim_id_error").slideDown("slow",0.2);							
			is_error=1;
		}
				
		
		return (is_error == 0) ? true : false;		
	}
	
	function validationChecking(f, errorInfo){
		for (var i=0; i<myRules.length; i++)
		{
			var parts = myRules[i].split(",");
			var fieldName = parts[1];
			 $('#'+fieldName + "_error").css("display", "none"); 
		}
	var is_error = 0 ;
		for (var i=0; i<errorInfo.length; i++){			
			var fieldName;
			// radio button
			if (errorInfo[i][0].type == undefined) {
				fieldName = errorInfo[i][0][0].name;
			}
			else {
				fieldName = errorInfo[i][0].name;
			}
		     $('#'+fieldName + "_error").css("display", "block");
			 $('#'+fieldName + "_error").html(errorInfo[i][1]);
			 $('#'+fieldName + "_error").slideDown("slow",0.2);				
			 is_error = 1;
		}

		if ($('#website').val() == undefined) {
			return is_error;
		}

		$('#website_error').css("display", "none");
		
		if(($('#organization').val()!==undefined && $('#organization').val()!="")&&($('#organization_id').val()==undefined || $('#organization_id').val()=="")){
					is_error=1;
					$('#organization_error').css("display", "block");
					$('#organization_error').html('No matching organization found');
					$('#organization_error').slideDown("slow",0.2);
		}
		
		if ($('#website').val()!=undefined && $('#website').val()!=""){
			if(isValidUrl($('#website').val())){
					is_error=1;
					$('#website_error').css("display", "block");
					$('#website_error').html('Invalid Website');
					$('#website_error').slideDown("slow",0.2);
			}
			
		}
		
		return is_error;
	}
	
	/**
	 * 
	 * It will work for both SP and SL for back button
	 */
	function goBackSl(){
		$('#survey').hide();
			$('#login_form').show();
	}
	
	/**
	 * It will redirect the page to home page
	 * 
	 * @param {Object} url
	 */
	function gotoHome(url){
		window.location=url;
	}

	/**
	 * This will do the survey checking for  user
	 * 
	 */
	
		function validationCheckingSurvey(){		
		var survey_error=new Array();
		var is_error=0;		
		total_question=$('#total_survey_question').val();
		
		for (var j = 1; j <= total_question; j++) {
			$('#survey_options_' + j + "_error").css("display", "none");
			var error_check = 0;
			if (true == $('#survey_mandatory_' + j).val()) {
				lists = document.getElementsByName('survey_options_' + j + '[]');
				for (var i = 0; i < lists.length; i++) {
					if (lists[i].checked) {
						var error_check = 1;
						break;
					}
				}
				if (error_check == 0) {
					is_error = 1;
					$('#survey_options_' + j + "_error").css("display", "block");
					$('#survey_options_' + j + "_error").html("Please Select At Least One option ");
					$('#survey_options_' + j + "_error").slideDown("slow", 0.2);
				}
			}
		  }
				
	
		return is_error ;
	}
	
	
	 function validationCheckingSurveySp(){
		var is_error=validationCheckingSurvey();
		
		if(is_error==0){			
			return submitSimPlayerForm();
		}
		return false;
	}
	
	
function submitSimPlayerForm(){
	document.getElementById('register_msg').innerHTML = "";
			$.ajax({
				type: "POST",
				url: base_url+"register/save-registration",
				data: $('#form_user').serializeArray(),
				success: function(msg){
					var response = (eval("(" + msg + ")"));
					if (response.error == 0) {
						$('#user_id').val(response.user_id);
					$('#message').val(response.msg);		
					$('#user_auto_password').val(response.password);	
		//                    document.getElementById('success_msg').innerHTML = response.msg;
		//                    document.getElementById('login_options').style.display = "none";
		//                    document.getElementById('login_form').style.display = "none";
		//                    document.getElementById('next_page').style.display = "block";
						if (1== $('#demo').val()) {
							$("#shopping_cart_details").attr("action", base_url + "register/demo-user-status");					
						}
						else {
							$("#shopping_cart_details").attr("action", base_url + "register/s-p-saved");
							//$('#shopping_cart_details').action(base_url+"")
						}
							$('#shopping_cart_details').submit();						
					}
					else {
						$('#register_msg').html(response.msg);
						goBackSl();
					}
					//alert(response.msg);
					//var json = json_parse(msg, 'json');
				}  });	

		return false;
}
	
	
function ErrorSpRegister(f, errorInfo){
			 
	myRules = registerRules;
		// disabled all errors by default
	var error=validationChecking(f, errorInfo);
		// normally, we'd do something like this: only return TRUE if there were no errors.
		
		/**
		 * After this have to display the survey page
		 */
		if (error == 0) {
			//will check the email availability			
			var res_text=emailAvailable($('#register_email').val());			
			if (res_text.status) {
				
				/**
				 * @TODO here need to check the survey is needed or not
				 * 
				 */
				
				if ($('#opt_out_survey').val() != 1) {
					$('#survey').show();
					$('#login_form').hide();
				}else{
					return submitSimPlayerForm();
				}
			}else{
				$('#register_email_error').show();				
				$('#register_email_error').html(res_text.msg);
			}
			/**
			 * Will validate the survey questions.
			 * 
			 */
			/**
			 * 
			 * After that the ajax call
			 */
			/**
			 * In ajax call again show or hide of login_form 
			 * 
			 */
		}
	
			
//			document.getElementById('register_msg').innerHTML = "";
//			$.ajax({
//				type: "POST",
//				url: base_url+"register/saveRegistration",
//				data: $('#form_user').serializeArray(),
//				success: function(msg){
//					var response = (eval("(" + msg + ")"));
//					if (response.error == 0) {
//						$('#user_id').val(response.user_id);
//					$('#message').val(response.msg);		
//					$('#user_auto_password').val(response.password);		
//		//                    document.getElementById('success_msg').innerHTML = response.msg;
//		//                    document.getElementById('login_options').style.display = "none";
//		//                    document.getElementById('login_form').style.display = "none";
//		//                    document.getElementById('next_page').style.display = "block";
//					$("#shopping_cart_details").attr("action",base_url+"register/s-p-saved");
//					//$('#shopping_cart_details').action(base_url+"")
//					$('#shopping_cart_details').submit();
//						
//					}
//					else {
//						document.getElementById('register_msg').innerHTML = response.msg;
//					}
//					//alert(response.msg);
//					//var json = json_parse(msg, 'json');
//				}  });	

		return false;
	}
		
	function  ErrorLogin(f, errorInfo){
			myRules = loginRules;
		// disabled all errors by default
			var error=validationChecking(f, errorInfo);
		// normally, we'd do something like this: only return TRUE if there were no errors.
		
		if (error == 0) {
validate_login_user();
		}		

		return false;

	}

/**
 * This will do the auto-login
 * 
 */
	
 function	autoLogin(){
 	$("#shopping_cart_details").attr("action",base_url+"login/auto-login");
	$('#shopping_cart_details').submit();
 }

/**
 * This is for SL registration only  reset the reset value of the survey
 * 
 */
function resetSurvey(){
	$('#start_date').val('');
	$('#end_date').val('');
	$('#no_of_student').val('');
	$('#course_name').val('');
	$('#sim_id').val('');	
	$('#comments').val('');
	var total_sur_ques=$('#total_survey_question').val();		
	for (var i = 1; i <= total_sur_ques; i++) {		
				lists=document.getElementsByName("survey_options_" + i+"[]");			
				for (var j = 0; j < lists.length; j++) {		
							lists[j].checked = "";
				}
		}
}

function isPostdate(date) {
	var today = new Date();
	return (date < today);
}

function validate_course_start_date(cal) {
	$('#start_date_error').html(
		isPostdate(cal.date) ? "* Course Start Date can not be set past date" : ""
	);
	return;
}
function validate_course_date(cal) {
	var error = false;
	if ($('#start_date_display').val() != "" || $('#end_date_display').val()) {
		var p = cal ? cal.params : {
			daFormat: '%m-%d-%Y'
		};
		var start_date = Date.parseDate($('#start_date_display').val(), p.daFormat);
		var decision_date = cal ? cal.date : Date.parseDate($('#end_date_display').val(), p.daFormat);
		
		$('#start_date_display').val() != "" && $('#start_date_error').html(isPostdate(start_date) ? "* Course Start Date can not be set past date" : "");
		var is_decision_post_date = $('#start_date_display').val() == "" && isPostdate(decision_date);
		
		$('#end_date_error').html( is_decision_post_date ? "* Adoption Decision Date can not be set past date" : "");
		!is_decision_post_date && $('#end_date_display').val() != ""  && $('#end_date_error').html(decision_date < start_date ? "* Adoption Decision Date can not be set past date" : "");
		error = $('#end_date_error').html() != "" || $('#start_date_error').html() != "";
	}
	return ! error;
}
