/*
	Agurchand's Simple jQuery Validation Script
	Script provided by blog.theonlytutorials.com
	Author: agurchand
*/

$(document).ready(function(){
	
	/*	Enter all your id in the following pattern in the requiredfields
			{
				"yourid" : "custom error message",
				"yourid2" : "custom error message"
			}
		
		NOTE: to validate email your id should have the word email. 
			  It can be anything "email" or "myemail" or "officeemail", "personalemail"
	*/
	
	// your form id
	var formid = "myform";
	var requiredfields = 	{	"customerName" : "لطفا نام مشتری را وارد کنید ",
								 
								 
								 
								"currency_unit" : "لطفا واحد واحد پـولی را مشخص کنید",
								"counterCurrency": "انتخاب ارز مورد معاوضه",
								"buyPriceRate" : "لطفانرخ ارز پایه را مشخص کنید", 
								"sellcounterCurrency" : "انتخاب ارز مورد معاوضه", 
								"sellPrice" : "لطفانرخ ارز پایه را مشخص کنید", 
								"money" : "واحد پولی را انتخاب کنید", 
								"amount" : "لطفا مقدار پول را مشخص کنید", 
								"determainRate" : "لطفا واحد پولی را انتخاب کنید ", 
								"counterAmount" : "لطفا مقدار پول را مشخص کنید", 
								"ghaymatDollar" : "لطفا ارز مورد معاوضه را انتخاب کنید", 
								"baceAmount" : "لطفا نرخ ارز پایه را مشخص کنید", 
								"expensesName" : "لطفا نام مصرف را وارد کنید",
								"asetcash" : "لطفا نوعیت پول را مشخص کنید",
								"expensesAmount" : "لطفا مقدار پول را مشخص کنید",
								"incomeName" : "لطفا نام عاید مورد نظر را وارد کنید",
								"incomeName" : "Select cusomter Name",
								"expensesAmount" : "لطفا مقدار پول را مشخص کنید",
								"baseAmount": "لطفا ارز مورد معاوضه را انتخاب کنید",
								"dollarRate": "لطفا اینجا را کلیک کنید",
								"currencyAmount": "مقدار مورد معاوضه را بنویسید",
								"refrenceNumber": "لطفا نمبر شناسایی را وارد کنید",
								"newdate": "لطفا تاریخ را وارد کنید",
								 
								"change_currencyPriec": "نرخ فروش جدید را وارد کنید",
								"buyRate": "قیمت خرید را وارد کنید",
								"new_dollarRatePrice": "قیمت جدید به دالر را وارد کنید",
								"buyRate_dollar": "قیمت خرید به دالر را وارد کنید",
								"transactType": "Enter Container Space",
								"descriptionofgoods": "Enter Descripton of Goods",
								"referenceNO": "Enter Reference",
								 
								
								 
								
								"agreebox": "Please check the checkbox"
							};
	
	//give your submit button id
	 $( "#submitbtn" ).click( function( e ){	
		
		//begin validation loop through all required fields
		$.each( requiredfields, function( inputid, errormsg ){
			
			thisinput = $( '#'+inputid );
			
			if ( ( thisinput.val() == "" ) || ( thisinput.val() == errormsg ) ) {
			
				thisinput.addClass( "requiredfield" );
				thisinput.val( errormsg );
			
			} else {
			
				//validating email
				email = thisinput.val();
				if( inputid.indexOf( "email" ) != -1 ){
				
					if( !validateEmail( email ) ){
						thisinput.addClass( "requiredfield" );
						thisinput.val( "Please enter a valid email" );
						return false;
					}
					
				}
				
	//=========================================================================================================
	//===============================Customer VAlidation=========================
			/* customer = thisinput.val();
				if( inputid.indexOf( "customer" ) != -1 ){
				
					if( !validateCustomer( customer ) ){
						thisinput.addClass( "requiredfield" );
						thisinput.val( "Please enter a valid name" );
						return false;
					}		
					
				} */
		//========================================================
		 
	//=========================================================================================================
				thisinput.removeClass( "requiredfield" );
			}
			
			//check if a checkbox or a radio button is selected
			if( thisinput.attr( 'type' ) == 'checkbox' || thisinput.attr( 'type' ) == 'radio' ){
			
				thisinput.removeClass( "requiredfield" );
				
				if( !$( thisinput ).prop( 'checked' ) ){

					//show alert if checkbox or radio button not selected
					//you can use a error div msg instead of alert.
					//eg. $('errorshowingdiv').text(errormsg);

					//alert( errormsg );
					
					thisinput.addClass( "requiredfield" );
					return false;
					
				}
			}							
		
		});
		
		//if all the fields validated submit the form
		if( $( '.requiredfield' ).length == 0 ){
			formid.submit();
		}
		e.preventDefault();
	});
	
	// function validateEmail( email ) { 
		// var reg = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
		// return reg.test( email );
	// } 
	//=======================================================================================================================
	   function validateCustomer( customer ) { 
		var regg = /^([a-zA-Z])/;
		return regg.test( customer );
	} 
	//=======================================================================================================================
	 

	$( "input,textarea" ).focus( function() {
	
		if ( $( this ).hasClass( "requiredfield" ) ) {
		
			 $( this ).val( "" );
			 $( this ).removeClass( "requiredfield" );
			 
		}
		
	});
	
});	

