// JavaScript Document

$(document).ready(function()
{	

 var AdminConfig = $("#frmsiteconfig").validate({
		rules: {
			    vFromemail:{required:true,email:true},
				vTo_email:{required:true,email:true},
				fyfemail:{required:true,email:true},
				karalamail:{required:true,email:true},
				spacemail:{required:true,email:true},
				vSitename:"required",
				vWebroot:"required",
				recordsperpage:{required:true,number:true},
				txt_Signature:"required",
				txt_responder:"required"
			   
		},
		messages: {
			    vFromemail:{required:"Please Enter Admin From Email Address",email:"Please Enter Valid Email Address"},
				vTo_email:{required:"Please Enter Admin To Email Address",email:"Please Enter Valid Email Address"},
				fyfemail:{required:"Please Enter FYFE Email Address",email:"Please Enter Valid Email Address"},
				karalamail:{required:"Please Enter Karala Lakes From Email Address",email:"Please Enter Valid Email Address"},
				spacemail:{required:"Please Enter Admin Spaceline Email Address",email:"Please Enter Valid Email Address"},
				vSitename:"Please Enter Site Name",
				vWebroot:"Please Enter Site URL",
				recordsperpage:{required:"Please Enter Number For Records Display on Page",number:"Please Enter Number Only"},
				txt_Signature:"Please Enter Your Signature",
				txt_responder:"Please Enter Your Responds"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )
				//error.appendTo( element.parent().next().next() );
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )
				//error.appendTo ( element.next() );
				error.appendTo("#invalid-"+element.attr('id'));
			else
				//error.appendTo( element.parent().next() );
				error.appendTo("#invalid-"+element.attr('id'));
				
				
		},
		// specifying a submitHandler prevents the default submit, good for the demo
		submitHandler: function(frm) {
			//alert("submitted!");
			frm.submit();
		},
		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");
		}
	}); 

   var Adminlogin = $("#adminloginfrm").validate({
		rules: {
			    txtUsername: { required:true},
			    txtPassword: { required:true}
		},
		messages: {
			     txtUsername: { required:"Please Enter User Name"},
			     txtPassword: { required:"Please Enter Password"}
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");}
	});
   
   
$("#txtUsername").focus(function(e){  if( $("#txtUsername").val() =="Username")  { $("#txtUsername").val("");} });
$("#txtPassword").focus(function(e){  if( $("#txtPassword").val() =="Password")  { $("#txtPassword").val("");} }); 
   
  /****************************** Content ****************************/
   var Pages = $("#frmpage").validate({
		rules: {
			    pagetitle: "required",
			    pagedescription: "required",
				selStatus:"required"
		},
		messages: {
			     pagetitle: "Please Enter Content Title",
			     pagedescription: "Please Enter Content Description",
				 selStatus:"Please Chooser Content Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	}); 

   $("#btnpage").click(function(event) 	{ 	  CKEDITOR.instances.pagedescription.updateElement(); });
   
   /***************************************************/
   
   var Builder = $("#frmbanner").validate({
		rules: {
			    buildername:"required",
			    builderlogo:{required:true,accept:"gif,jpg,jpeg,png"},
			    builderdescription: "required",
				selStatus:"required"
		},
		messages: {
			        buildername:"Please Enter Builder Name",
			        builderlogo:{required:"Please Select Builder Logo",accept:"Please Select gif,jpg,jpeg,png"},
			        builderdescription: "Please Enter Builder Description",
				    selStatus:"Please Chooser Builder Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	});  
   
    var Builderedit = $("#frmupbanner").validate({
		rules: {
			    buildername:"required",
			    builderlogo:{required:false,accept:"gif,jpg,jpeg,png"},
			    builderdescription: "required",
				selStatus:"required"
		},
		messages: {
			        buildername:"Please Enter Builder Name",
			        builderlogo:{required:"Please Select Builder Logo",accept:"Please Select gif,jpg,jpeg,png"},
			        builderdescription: "Please Enter Builder Description",
				    selStatus:"Please Chooser Builder Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	}); 

   $("#btnbanner").click(function(event) 	{ 	  CKEDITOR.instances.builderdescription.updateElement(); });
   
   var AddNews = $("#frmaddnews").validate({
		rules: {
			    newstitle:"required",			   
			    newsdescription: "required",
				selStatus:"required"
		},
		messages: {
			        newstitle:"Please Enter News Title",			       
			        newsdescription: "Please Enter News Description",
				    selStatus:"Please Chooser News Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	});
   
    $("#btnnews").click(function(event) 	{ 	  CKEDITOR.instances.newsdescription.updateElement(); });
   
   /********************************************************/
   
   var Contactus = $("#contactfrm").validate({
		rules: {
			    name:"required",			   
			    email:{required:true,email:true},
				phone:{required:true,number:true},
				subject:"required",
				message:"required"
		},
		messages: {
			    name:"",			   
			    email:{required:"",email:""},
				phone:{required:"",number:""},
				subject:"",
				message:""
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	});
   
   var Slider = $("#frmslider").validate({
		rules: {
			    slidername:"required",
			    sliderimage:{required:true,accept:"gif,jpg,jpeg,png"},			  
				selStatus:"required"
		},
		messages: {
			        slidername:"Please Enter Slider Name",
			        sliderimage:{required:"Please Select Slider Image",accept:"Please Select gif,jpg,jpeg,png"},			       
				    selStatus:"Please Chooser Slider Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	}); 
   
    var SliderEdit = $("#frmupslider").validate({
		rules: {
			    slidername:"required",
			    sliderimage:{required:false,accept:"gif,jpg,jpeg,png"},			  
				selStatus:"required"
		},
		messages: {
			        slidername:"Please Enter Slider Name",
			        sliderimage:{required:"Please Select Slider Image",accept:"Please Select gif,jpg,jpeg,png"},			       
				    selStatus:"Please Chooser Slider Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	}); 
   
   
   var ChangeUser = $("#frmchangeuser").validate({
		rules: {
			     txtNewUsername: "required",			  
				 txtOldUsername: {	required: true}		   
		},
		messages: {
			    txtNewUsername: "Please Enter New User Name",
			   	txtOldUsername: { required:"Please Enter Old User Name"}				
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )
				//error.appendTo( element.parent().next().next() );
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )
				//error.appendTo ( element.next() );
				error.appendTo("#invalid-"+element.attr('id'));
			else
				//error.appendTo( element.parent().next() );
				error.appendTo("#invalid-"+element.attr('id'));
				
				
		},
		// specifying a submitHandler prevents the default submit, good for the demo
		submitHandler: function(frm) {
			//alert("submitted!");
			frm.submit();
		},
		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");
		}
	});
	
	
	var ChangePassword = $("#frmchangepass").validate({
		rules: {
			     txtNewPassword: {required:true},
				 txtConfirm_Password: {required:true,equalTo: "#txtNewPassword"},  
				 txtOldPassword: {
							required: true
							
						 },				
			terms: "required"
		},
		messages: {
			    txtNewPassword:{required:"Please Enter New Password"},
				txtConfirm_Password: {required:"Please Enter Confirm Password", equalTo: "Password and Confirm Password should be same!"},
			   	txtOldPassword: {
							required:"Please Enter Old Password "
							
						 }, 
				terms: " "
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )
				//error.appendTo( element.parent().next().next() );
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )
				//error.appendTo ( element.next() );
				error.appendTo("#invalid-"+element.attr('id'));
			else
				//error.appendTo( element.parent().next() );
				error.appendTo("#invalid-"+element.attr('id'));
				
				
		},
		// specifying a submitHandler prevents the default submit, good for the demo
		submitHandler: function(frm) {
			//alert("submitted!");
			frm.submit();
		},
		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");
		}
	});
	
	var PhotoGallery = $("#frmphoto").validate({
		rules: {
			    photoname:"required",
			    galleryimage:{required:true,accept:"gif,jpg,jpeg,png"},			  
				selStatus:"required"
		},
		messages: {
			        photoname:"Please Enter Gallery Image Name",
			        galleryimage:{required:"Please Select Gallery Image",accept:"Please Select gif,jpg,jpeg,png"},			       
				    selStatus:"Please Choose Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	}); 
	
	var PhotoGalleryEdit = $("#frmphotoedit").validate({
		rules: {
			    photoname:"required",
			    galleryimage:{required:false,accept:"gif,jpg,jpeg,png"},			  
				selStatus:"required"
		},
		messages: {
			        photoname:"Please Enter Gallery Image Name",
			        galleryimage:{required:"Please Select Gallery Image",accept:"Please Select gif,jpg,jpeg,png"},			       
				    selStatus:"Please Choose Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	}); 
	
	var VideoGallery = $("#frmvideo").validate({
		rules: {
			    videoname:"required",
			    videofile:{ required:true,accept:"mov,avi,mpeg,wmv,mpg,mp4,3gp,dv,qt,asf,mp3,wav,wma,qcelp,amr-nb,movieclip,mod,3g2,flv" },	
				selStatus:"required"
		},
		messages: {
			        videoname:"Please Enter Video Name",
			        videofile:{required:"Please Select Video File",accept :"Please upload valid files only"},			       
				    selStatus:"Please Choose Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	}); 
	
	var VideoGalleryedit = $("#frmvideoedit").validate({
		rules: {
			    videoname:"required",
			    videofile:{ required:false,accept:"mov,avi,mpeg,wmv,mpg,mp4,3gp,dv,qt,asf,mp3,wav,wma,qcelp,amr-nb,movieclip,mod,3g2" },	
				selStatus:"required"
		},
		messages: {
			        videoname:"Please Enter Video Name",
			        videofile:{required:"Please Select Video File",accept :"Please upload valid files only"},			       
				    selStatus:"Please Choose Status"
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) { 
			if ( element.is(":radio") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else if ( element.is(":checkbox") )				
				error.appendTo("#invalid-"+element.attr('id'));
			else				
				error.appendTo("#invalid-"+element.attr('id'));
		},		
		submitHandler: function(frm) { frm.submit(); },	
		success: function(label) { label.html("&nbsp;").addClass("checked");	}
	}); 
/*************************number with special char validation*********************/

$.validator.addMethod("custom_number", function(value, element) 
{
	return this.optional(element) || value === "NA" ||
	value.match(/^[0-9,\.+-]+$/);
 }, "Please enter a valid number, or 'NA'");

/*****************************general /*******************************/ 
 
 $("#divMsg").fadeOut(5000);
 	

   	
}); // end reday document if 

/*****************************One Check box Validation *******************/

function CheckboxChecked(rec)
{
 
   if(!Checkboxcheck(rec))
   {
	  alert("Please select atleast one record");
	  return false;
   }else { return true; }	 

 
}

function Checkboxcheck(rec)
{
	 
  var totalcheckbox = rec;
  
  var retmode = false;
  
	  for(var L=1; L <=totalcheckbox; L++)
	  {
		 var ids ="checkbox_"+L;
		 
		 if(document.getElementById(ids).checked == true)
		 {
		   retmode = true;
    	 }	 
	  }
	 
	  return retmode;
}


function CheckAll(rec)
{
  var totalcheckbox = rec;
  
  var retmode = false;
  
	  for(var L=1; L <=totalcheckbox; L++)
	  {
		 var ids ="checkbox_"+L;		 
		 
		 if(document.getElementById(ids).checked == true)
		 {
		   document.getElementById(ids).checked = false; 
		   document.getElementById("divCheck").innerHTML = "Check all";		   
    	 }else{ document.getElementById(ids).checked = true;  document.getElementById("divCheck").innerHTML = "Uncheck all";}	 
	  }
	 
	  
}

/******************************/

function btncustomfilter(id)
{
   if( document.getElementById(id).value == "")
   {
	 alert("Please Enter Filter word");
	 document.getElementById(id).focus();
	 return false;	   
   }
   
   return true;	  
}

function ConfirmMsg(msg)
{
  if( confirm(msg)) { return true ;} else {return false; }	 
}


