// JavaScript Document

$(document).ready(function()
{	

	var options = {
		target:'.alert'
	};
	$('#frmCallback').ajaxForm(options);
 /********************************************Admin Section *************************************/
 
   var AdminConfig = $("#frmsiteconfig").validate({
		rules: {
			    vFromemail:{required:true,email:true},
				vTo_email:{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"},
				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");
		}
	}); 
 
 // validate subadmin
 
	var Subadmin = $("#frmaddadminuser").validate({
		rules: {
			    txtUsername:"required",
				txtPassword:"required",
				txtConPassword:
				            { 
							 required:true,
							 equalTo:"#txtPassword"
							},
				selStatus:"required",				
			    terms: "required"
		},
		messages: {
			    txtUsername:"Please Enter Your User Name",
			    txtPassword:"Please Enter Your Password",
				txtConPassword:{ required:"Please Enter Your Confirm Password",equalTo:"Your Confrim Pasword Must Be Equal To Password"},
				selStatus: "Please Select Your Status", 
				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");
		}
	}); 
 
 /*****************************************************/
	// validate signup form on keyup and submit
	var User = $("#frmadduser").validate({
		rules: {
			    firstName: "required",
			    lastName: "required",
				nickname: {
							required: true,
							remote: "usercheck.php"
						 },
				email: {
							required: true,
							email: true,
							remote: "emailcheck.php"
						 },
				pwd: {
						required: true,
						minlength: 6
					    },
			    cpwd: {
						required: true,
						minlength: 6,
						equalTo: "#pwd"
					},
				intro: "required",
				address1: "required",
				city: "required",
				pincode: "required",
				phoneno: { required:true,number:true},
				locality: "required",
				profileimage: { required:true,accept:"jpg,jpeg,gif.png"},
				usertype: "required",
				selStatus: "required"
		},
		messages: {
			    firstName: "Please Enter the First Name !",
			    lastName: "Please Enter the Last Name !",
				nickname: {
							required:"Please Enter the User Name !",
							remote: jQuery.format("{0} is already in use")
						 }, 
				email: {
							 required: "Please Enter the Valid Email Address !",
							 minlength: "Please Enter  Valid Email Address !",
							 remote: jQuery.format("{0} is already in use")
						 },
				pwd: {
							required: "Please Enter the Password !",
							minlength: "Your Password must be at least 6 characters long !"
						},
			     cpwd: {
						required: "Please Enter the Confirm Password !",
						minlength: "Your Password must be at least 6 characters long !",
						equalTo: "Password and Confirm Password should be same !"
					},	
				intro: "Please Enter Introduction !",
				address1: "Please Enter Address !",
				city: "Please Enter City !",
				pincode: "Please Enter Pincode !",
				phoneno: { required:"Please Enter the Phone Number !",number:"Please Enter Valid Phone Number !"},
				locality: "Please Enter Locality !",
				profileimage: { required:"Please Select Profile Image !",accept:"Please Select jpg,jpeg,gif.png Format only !"},
				usertype: "Please Select User Type !",
				selStatus: "Please Select Status !"	
			   
		},
		// 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 UpdateUser = $("#frmupuser").validate({
		rules: {
			    firstName: "required",
			    lastName: "required",
				email: {
							required: true,
							email: true							
						 },
				pwd: {
						required: true,
						minlength: 6
					    },
			    cpwd: {
						required: true,
						minlength: 6,
						equalTo: "#pwd"
					},
				intro: "required",
				address1: "required",
				city: "required",
				pincode: "required",
				phoneno: { required:true,number:true},
				locality: "required",
				profileimage: { required:false,accept:"jpg,jpeg,gif.png"},
				usertype: "required",
				selStatus: "required"
		},
		messages: {
			    firstName: "Please Enter the First Name !",
			    lastName: "Please Enter the Last Name !",
				email: {
							 required: "Please Enter the Valid Email Address !",
							 minlength: "Please Enter  Valid Email Address !"							
						 },
				pwd: {
							required: "Please Enter the Password !",
							minlength: "Your Password must be at least 6 characters long !"
						},
			     cpwd: {
						required: "Please Enter the Confirm Password !",
						minlength: "Your Password must be at least 6 characters long !",
						equalTo: "Password and Confirm Password should be same !"
					},	
				intro: "Please Enter Introduction !",
				address1: "Please Enter Address !",
				city: "Please Enter City !",
				pincode: "Please Enter Pincode !",
				phoneno: { required:"Please Enter the Phone Number !",number:"Please Enter Valid Phone Number !"},
				locality: "Please Enter Locality !",
				profileimage: { required:"Please Select Profile Image !",accept:"Please Select jpg,jpeg,gif.png Format only !"},
				usertype: "Please Select User Type !",
				selStatus: "Please Select Status !"	
			   
		},
		// 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");
		}
	});	
	
	/*****************************Validation for edit User *********************************/
		  
	var ChangeUser = $("#frmchangeuser").validate({
		rules: {
			     txtNewUsername: "required",			  
				 txtOldUsername: {
							required: true,
							remote: "usercheck2.php"
						 },				
			terms: "required"
		},
		messages: {
			    txtNewUsername: "Please Enter New User Name",
			   	txtOldUsername: {
							required:"Please Enter Old User Name",
							remote: jQuery.format("{0} is already in use")
						 }, 
				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 ChangePassword = $("#frmchangepass").validate({
		rules: {
			     txtNewPassword: {required:true},
				 txtConfirm_Password: {required:true,equalTo: "#txtNewPassword"},  
				 txtOldPassword: {
							required: true,
							remote: "passwordcheck.php"
						 },				
			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 ",
							remote: jQuery.format("{0} is already in use")
						 }, 
				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");
		}
	});
   	
  /*************************subscription Plan *****************************************/  
  
   var Adminlogin = $("#adminloginfrm").validate({
		rules: {
			    txtUsername: { required:true,remote: "formcheck.php"},
			    txtPassword: { required:true,remote: "formcheck.php"}
		},
		messages: {
			     txtUsername: { required:"Please Enter User Name",remote: jQuery.format("{0} is already in use")},
			     txtPassword: { required:"Please Enter Password",remote: jQuery.format("{0} is already in use")}
		},
		// 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) {
		            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 AddBank = $("#frmaddbank").validate({
		rules: {
			    bankname: "required",
			    bankdescription:"required", 				
				selStatus: "required"
				
				},
		messages: {
			       bankname: "Please Enter Bank Name",			    
				   bankdescription: "Please Enter Bank Description",				
				   selStatus: "Please Select Status"
				
		},
		// 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) {
		            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");
		}
	});

   $("#btnbank").click(function(event) 
	{ 
	  CKEDITOR.instances.bankdescription.updateElement(); //works fine
	});
   
   
     var Featured = $("#frmaddfeatured").validate({
		rules: {
			    featuredname:"required",
				selStatus: "required",
				InputLabel:"required",
				InputType:"required",
				Required:"required",
				Active:"required"
				},
		messages: {
			       featuredname:"Please Enter Feature",
				   selStatus: "Please Select Status",
				   InputLabel:"",
				   InputType:"",
				   Required:"",
				   Active:""
				
		},
		// 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) {
		            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 Product = $("#frmaddproduct").validate({
		rules: {
			    selcategory:"required"								
				},
		messages: {
			       selcategory:"Please Select Category 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) {
		            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 Cards = $("#frmaddcard").validate({
		rules: {
			    bankname: "required",
			    selcategory:"required",
				cardname:"required",
				premium:"required",
				network:"required",
				islamiccard:"required",
				islamicdesc:"required",
				minsalary:"required",
				minsalarydesc:"required",
				annulfee:"required",
				annulfeedesc:"required",
				interestrate:"required",
				interestratedesc:"required",
				fixrate:"required",
				fixratedesc:"required",
				balancetranfer:"required",
				balancetranferfee:"required",
				balancetranferdesc:"required",
				miles:"required",
				milesdesc:"required",
				cashback:"required",
				cashbackdesc:"required",
				rewards:"required",
				rewardsdesc:"required",
				introoffer:"required",
				introofferdesc:"required",
				offerexpiry:"required",
				webaddress:"required",
				mainbenefit:"required",
				contactnaumber:"required",
				status: "required"				
				},
		messages: {
			        bankname: "Please Select Bank Name",
					selcategory:"Please Select Category",
					cardname:"Please Enter Card Name",
					premium:"Please Choose Premium",
					network:"Please Enter Network",
					islamiccard:"Please Choose Islamic Card",
					islamicdesc:"Please Enter Islamic Card Details",
					minsalary:"Please Enter Min Salary",
					minsalarydesc:"Please Enter Min Salary Details",
					annulfee:"Please Enter Annul Fee",
					annulfeedesc:"Please Enter Annul Fee Details",
					interestrate:"Please Enter Interest Rate",
					interestratedesc:"Please Enter Interest Rate Details",
					fixrate:"Please Enter Fix Rate",
					fixratedesc:"Please Enter Fix Rate Details",
					balancetranfer:"Pelase Choose Balance Transfer",
					balancetranferfee:"Please Enter Balance Transfer Fee",
					balancetranferdesc:"Please Enter Balance Transfer Details",
					miles:"Please Enter Miles",
					milesdesc:"Please Enter Miles Details",
					cashback:"Please Enter Cashback",
					cashbackdesc:"Please Enter Cashback Details",
					rewards:"Please Enter Rewards",
					rewardsdesc:"Please Enter Rewards Descritpion",
					introoffer:"Please Choose Introduction Offer",
					introofferdesc:"Please Enter Introduction Details",
					offerexpiry:"Please Enter Introduction Expiry Date",
					webaddress:"Please Enter Website Address",
					mainbenefit:"Please Enter Main Benefit",
					contactnaumber:"Please Enter Contact Number",
					status: "Please Choose Status"	
				
		},
		// 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) {
		            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");
		}
	}); 
  
	  $("#btncards").click(function(event) 
		{ 
		  CKEDITOR.instances.islamicdesc.updateElement();
		  CKEDITOR.instances.minsalarydesc.updateElement();
		  CKEDITOR.instances.annulfeedesc.updateElement();
		  CKEDITOR.instances.interestratedesc.updateElement();
		  CKEDITOR.instances.fixratedesc.updateElement();
		  CKEDITOR.instances.balancetranferdesc.updateElement();
		  CKEDITOR.instances.milesdesc.updateElement();
		  CKEDITOR.instances.cashbackdesc.updateElement();
		  CKEDITOR.instances.rewardsdesc.updateElement();
		  CKEDITOR.instances.introofferdesc.updateElement();
		  CKEDITOR.instances.mainbenefit.updateElement();
		  
		});
 
 
 var Page = $("#frmpage").validate({
		rules: {
			    pagetitle: "required",
			    pagedescription:"required", 				
				selStatus: "required"
				
				},
		messages: {
			       pagetitle: "Please Enter Bank Name",			    
				   pagedescription: "Please Enter Bank Description",				
				   selStatus: "Please Select Status"
				
		},
		// 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) {
		            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");
		}
	});

   $("#btnpage").click(function(event) 
	{ 
	  CKEDITOR.instances.pagedescription.updateElement(); //works fine
	});
   
    var Banner = $("#frmbanner").validate({
		rules: {
			    pagename: "required",
			    position:"required", 
				banner:{required:true,accept:"gif,jpg,jpeg,png"},
				rwidth:{required: function(){ return $("#reducesize").is(":checked")==true?true:false;}},
				rheight:{required:function(){return $("#reducesize").is(":checked")==true?true:false;}},
				selStatus: "required"
				
				},
		messages: {
			       pagename: "Please Choose Page Name",			    
				   position: "Please Choose Banner Position",
				   banner:{required:"Please Select Banner",accept:"Please Select gif,jpg,jpeg,png"},
				   rwidth:"Please Enter Width",
				   rheight:"Please Enter Height",
				   selStatus: "Please Select Status"
				
		},
		// 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) {
		            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 BannerUpdate = $("#frmupbanner").validate({
		rules: {
			    pagename: "required",
			    position:"required", 
				banner:{required:false,accept:"gif,jpg,jpeg,png"},
				rwidth:{required: function(){ return $("#reducesize").is(":checked")==true?true:false;}},
				rheight:{required:function(){return $("#reducesize").is(":checked")==true?true:false;}},
				selStatus: "required"
				
				},
		messages: {
			       pagename: "Please Choose Page Name",			    
				   position: "Please Choose Banner Position",
				   banner:{required:"Please Select Banner",accept:"Please Select gif,jpg,jpeg,png"},
				   rwidth:"Please Enter Width",
				   rheight:"Please Enter Height",
				   selStatus: "Please Select Status"
				
		},
		// 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) {
		            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 Category = $("#frmaddcatogery").validate({
		rules: {
					categoryname: "required",
					categorydescription: "required",
					selStatus: "required"
		      },
		messages: {
			       	categoryname: "Please Enter Category Name",
					categorydescription: "Please Enter Category Description",
					selStatus: "Please Select Your Status"
		          },
		// 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'));
		},
		submitHandler: function(frm)
		{
		    frm.submit(); 
		}          
		
	});	
  
  $("#btncate").click(function(event) 
	{ 
	   CKEDITOR.instances.categorydescription.updateElement(); //works fine
  });
  
  
  var AddTemplate = $("#frmaddtemplate").validate({
		rules: {
			    templatename: "required",
			    templatedescription:"required", 				
				selStatus: "required"
				
				},
		messages: {
			       templatename: "Please Enter Template Name",			    
				   templatedescription: "Please Enter Template Description",				
				   selStatus: "Please Select Status"
				
		},
		// 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) {
		            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");
		}
	});

   $("#btntemp").click(function(event) 
	{ 
	  CKEDITOR.instances.templatedescription.updateElement(); //works fine
	});

    
	
/*****************************User Login ******************************/

var Login = $("#loginfrm").validate({
		rules: {
					username: {required:true,remote: "eventform.php"},
					password: {required:true,remote: "eventform.php"}			
		},
		messages: {
			        username: {required:"Please Enter User Name",remote: jQuery.format("{0} is already in use")},
			        password: {required:"Please Enter Password",remote: jQuery.format("{0} is already in use")}	
		        },
		// 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");
		}
	});	

$("#username").focus(function(event){  if( $("#username").val()   =="Username")   { $("#username").val("");} });
$("#password").focus(function(event) {  if( $("#password").val()    =="Password")    { $("#password").val("");} });


/*******************************Forget Password ************************/

var Forgetpass = $("#forgetfrm").validate({
		rules: {
					txtemailid: { required:true,email:true },
					terms: "required"
		},
		messages: {
			        txtemailid: {
					              required:"Please Enter Your Email Id",
								  email :"Please Enter Valid Email Id"
								 },
			        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 Contactus = $("#contactfrm").validate({
		rules: {
					name: "required",
					email:{required:true,email:true},
					contactnumber: {required:false,number:true},
					title:"required",
					comments:"required"
		      },
		messages: {
			       	name: "Please Enter Name",
					email: {required:"Please Enter Email",email:"Please Enter Valid Email"}, 
					contactnumber: {required:"Please Enter Contact Number",number:"Please Enter Valid Contact Number"},
					title:"Please Select Enquiry ",
					comments:"Please Enter Comments"
		          },
		// 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'));
		},
		submitHandler: function(frm)
		{
		 frm.submit(); 
		}          
		
	}); 	

var rartproduct = $("#rateproduct").validate({
		rules: {
					group: "required",
					bankname:"required",
					product:"required",
					comments:"required"
					
		      },
		messages: {
			       	group: "Please Choose Group",
					bankname: "Please Enter name of the bank",
					product:"Please Enter name of the product",
					comments:"Please tell us about the product"
		          },
		// 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'));
		},
		submitHandler: function(frm)
		{
		 frm.submit(); 
		}          
		
	});	

var frmaddglossary = $("#frmaddglossary").validate({
		rules: {
					contenttype: "required",
					glossarytitle: "required",
					glossarydescription: "required",
					selStatus:"required"
					
		      },
		messages: {
			       	contenttype: "Please Select Content Type",
					glossarytitle: "Please Enter Glossary Title",
					glossarydescription: "Please Enter Glossary Description",
					selStatus:"Please Select Status"
		          },
		// 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'));
		},
		submitHandler: function(frm)
		{
		 frm.submit(); 
		}          
		
	});	

 $("#btnglos").click(function(event) 
	{ 
	   CKEDITOR.instances.glossarydescription.updateElement(); //works fine
  });
 
 /**************************faq********************************/
 
 var frmaddfaq = $("#frmaddfaq").validate({
		rules: {
					faqquestion: "required",
					faqdescription: "required",
					selStatus:"required"
					
		      },
		messages: {			       
					faqquestion: "Please Enter Question",
					faqdescription: "Please Enter Answer",
					selStatus:"Please Select Status"
		          },
		// 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'));
		},
		submitHandler: function(frm)
		{
		 frm.submit(); 
		}          
		
	});	

 $("#btnfaq").click(function(event) {   CKEDITOR.instances.faqdescription.updateElement(); });
 
  var frmaddnews = $("#frmaddnews").validate({
		rules: {
					newstitle: "required",
					featurednews: "required",
					//newsauthor: "required",
					newsdescription: "required",
					selStatus:"required"
					
		      },
		messages: {			       
					newstitle: "Please Enter News Title",
					featurednews: "Please Choose Featured News Option",
					//newsauthor: "Please Enter News Author",
					newsdescription: "Please Enter News Description",
					selStatus:"Please Select Status"
		          },
		// 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'));
		},
		submitHandler: function(frm)
		{
		 frm.submit(); 
		}          
		
	});	

 $("#btnnews").click(function(event) {   CKEDITOR.instances.newsdescription.updateElement(); });
	
/*************************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 /*******************************/

$("#txtUsername").focus(function(e){  if( $("#txtUsername").val() =="Username")  { $("#txtUsername").val("");} });
$("#txtPassword").focus(function(e){  if( $("#txtPassword").val() =="Password")  { $("#txtPassword").val("");} });  
 
 $("#divMsg").fadeOut(5000);
 
 
 /********************************************/
 
 var Ratepersonal = $("#ratefrm").validate({
		rules: {
			    starrate_1:"required",
				starrate_2:"required",
				starrate_3:"required",
			    referfriend: "required",
			    reviewcomments:"required",
				agree:"required"
		},
		messages: {
			     starrate_1:"Please Choose Overall Rate",
				 starrate_2:"Please Choose Customer Service Rate",
				 starrate_3:"Please Choose Benefit Rate",
			     referfriend: "Please Choose One of The Options ",
			     reviewcomments:"Please Enter Your Review",
				 agree:"Please Check The Checkbox"
		},
		// 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) {
		            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");
		}
	});
 
 //remote: jQuery.format("{0} is already in use")  { required:true,remote:"nicknamecheck.php"},
 
    var signup = $("#signupfrm").validate({
		rules: {
			    email: { required:true,email: true},
			    firstname:"required",
				nickname:{ required:true,remote:"nicknamecheck.php"},
				bankname:"required",
				earning:"required",
				selStatus:"required",
				agree:"required"
		},
		messages: {
			     email: { required:"Please Enter Email",email:"Please Enter Valid Email"},
			     firstname:"Please Enter First Name",
				 nickname:{ required:"Please Enter Nickname",remote: jQuery.format("{0} is already in use")},
				 bankname:"Please Select Bank Name",
				 earning:"Please Choose Earning",
				 selStatus:"Please Select Status",
				 agree:"Please Accept Terms and Condition"
		},
		// 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) {
		            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 signupedit = $("#signupfrmedit").validate({
		rules: {
			    email: { required:true,email: true},
			    firstname:"required",
				nickname:{ required:true},
				//bankname:"required",
				//earning:"required",
				selStatus:"required"
				
		},
		messages: {
			     email: { required:"Please Enter Email",email:"Please Enter Valid Email"},
			     firstname:"Please Enter First Name",
				 nickname:{ required:"Please Enter Nickname"},
				// bankname:"Please Select Bank Name",
				 //earning:"Please Choose Earning",
				 selStatus:"Please Select Status"
				
		},
		// 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) {
		            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 Bulkupload = $("#frmbulkdata").validate({
		rules: {
			    datatype: "required",
			    bulkdata:{required:true,accept:".csv"}
				
		},
		messages: {
			     datatype: "Please Choose Upload Category Type ",
			     bulkdata:{required:"Select Upload File",accept:"Please Select CSV File only"}
				 
		},
		// 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) {
		            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 BulkuploadUpdate = $("#frmbulkdataup").validate({
		rules: {
			    CategoryID: "required",
			    updatebulkdata:{required:true,accept:".csv"}
				
		},
		messages: {
			     CategoryID: "Please Choose Upload Category Type ",
			     updatebulkdata:{required:"Select Upload File",accept:"Please Select CSV File only"}
				 
		},
		// 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) {
		            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");
		}
	});
	
	$('.callback').click(function(){
		//alert("Please Choose Comparison Product");
		//$('#frmCallback input').val('');
		$('#frmCallback ul').show();
		$('#frmCallback .alert').hide();
		$('#frmCallback select').val('0');
		$('#frmCallback > ul > li > span').css('color','#4A4A49');
		$('#frmCallback > ul > li label > span').css('color','#fff');
		//$('.custom-checkbox-bggraytrans label').css('background','url("css/checkbox-callback.gif") no-repeat -2px -32px');
		var bankname = $(this).siblings('[id^=callbackBank_]').val();
		var productname = $(this).siblings('[id^=callbackProduct_]').val();
		var bankid = $(this).siblings('[id^=callbackBank_]').attr('id').replace('callbackBank_','');
		var productid = $(this).siblings('[id^=callbackProduct_]').attr('id').replace('callbackProduct_','');
		//alert(bankid);
		//alert(productid);
		$('#frmCallback .callbackBank').val(bankname);
		$('#frmCallback .callbackProduct').val(productname);
		$('#frmCallback #callbackbankid').val(bankid);
		$('#frmCallback #callbackproductid').val(productid);
		$.colorbox({width:"533px", height:"auto", inline:true, href:"#callback_form"});
	    //return false;
	});
	
	$('#cancelCallback').click(function(){
		$.colorbox.close();
	});
	
	/*$('#callbackreturn').click(function(){
		$.colorbox.close();
	});*/
	
	$('.custom-checkbox-bggraytrans').click(function(){
		if( $(this).children('.custom-checkbox-bggraytrans label').hasClass('checked') ){
			$(this).children('.custom-checkbox-bggraytrans label').removeClass('checked')
		}else{
			$(this).children('.custom-checkbox-bggraytrans label').addClass('checked')
		}
	});


   	
}); // 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 Comparecheck(rec)
{
	
	var totalcheckbox = rec;
  
 	 var Comparetot = 0;
  
	  for(var L=1; L <=totalcheckbox; L++)
	  {
		 var ids ="Compareproductid_"+L;
		 
		 if(document.getElementById(ids).value != "")
		 {
		   Comparetot++;
    	 }	 
	  }
	  
	  if( Comparetot > 1) {return true; }
	  else { 
	          //alert("Please Choose Comparison Product");
			 $.colorbox({width:"400px", inline:true, href:"#inline_example1"});
	    return false;
	   }
}

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; }	 
}


