
function checkEmptyComponent(comObj){
	var comId=comObj.id;
	var spanId=comObj.id+'Img';
	if(!CheckEmpty(comObj)) return false;
	if(comObj.value==''){
		emptyMsg(comId,spanId);
		return false;
	}
	tickMsg(comId,spanId);
	return true;
}
function emptyMsg(comId,spanId){
	document.getElementById(comId).style.border='1px solid #CC0000';
	document.getElementById(spanId).className="jsEmptyMsg";
	document.getElementById(spanId).style.paddingLeft='5px';
	document.getElementById(spanId).innerHTML='Can\'t be empty!';
}
function tickMsg(comId,spanId){
	document.getElementById(comId).style.border='1px solid #CCCCCC';
	document.getElementById(spanId).className="jsTickImage";
	document.getElementById(spanId).innerHTML='';
}
	
function checkEmptyVenueClientComponent(frmObj){
	var nameFlag=false; 
	var street1Flag=false;
	var websiteFlag=false; 
	var typeFlag=false; 
	var sizeFlag=false; 
	var zipcodeFlag=false; 
	var cityFlag=false; 
	var stateFlag=false;
	
	if(checkEmptyComponent(frmObj.venue_name)) nameFlag=true;
	if(checkEmptyComponent(frmObj.street1)) street1Flag=true;
	if(websiteURLValidation(frmObj.website)) websiteFlag=true;
	if(checkEmptyComponent(frmObj.venue_type)) typeFlag=true;
	if(allowNumericOnly(frmObj.venue_size)) sizeFlag=true;
	if(checkEmptyComponent(frmObj.venue_zipcode)) zipcodeFlag=true;
	if(checkEmptyComponent(frmObj.venue_city)) cityFlag=true;
	if(checkEmptyComponent(frmObj.venue_state)) stateFlag=true;
	
	if(nameFlag && street1Flag && websiteFlag && typeFlag && sizeFlag && zipcodeFlag && cityFlag && stateFlag) 
		return true;
	return false;
}
function websiteURLValidation(url){
	if(url.value=='') checkEmptyComponent(url);
	else{
		var comId=url.id;
		var spanId=url.id+'Img';
		urlRegExp = /^(((ht|f)tp(s?))\:\/\/)([0-9a-zA-Z\-]+\.)+[a-zA-Z]{2,6}(\:[0-9]+)?(\/\S*)?$/
		var urlString=url.value.toLowerCase();
		if(!urlRegExp.test(urlString)){
			document.getElementById(comId).style.border='1px solid #CC0000';
			document.getElementById(spanId).style.color='#CC0000';
			document.getElementById(spanId).innerHTML='In-valid URL.';
			/*document.getElementById(spanId).innerHTML='URL should be like http://www.abc.com';*/
			return false; 
		}
		tickMsg(comId,spanId);
		return true;
	}
}
function CheckEmpty(TextObject){
	var blankRE=/^\s*[^A-Za-z0-9]$/;
	if(blankRE.test(TextObject.value)) return false;
	return true;
}
function allowNumericOnly(comObj){
	var comId=comObj.id;
	//alert('comId '+comId);
	var spanId=comObj.id+'Img';
	if(comObj.value==''){
		emptyMsg(comId,spanId);
		return false;
	}
	if(isNaN(comObj.value)){
		document.getElementById(comId).style.border='1px solid #CC0000';
		document.getElementById(spanId).style.color='#CC0000';
		document.getElementById(spanId).innerHTML='Please enter Numeric Value.';
		return false; 
	}
	tickMsg(comId,spanId);
	return true;
}

function frmAddBookAnEvent(frmObj){
	var nameFlag=false; 
	var startDDFlag=false;
	var websiteFlag=false; 
	var typeFlag=false; 
	var sizeFlag=false; 
	var zipcodeFlag=false; 
	var cityFlag=false; 
	var stateFlag=false;
	var edate_yy=false; 
	var edate_hh=false; 
	var edate_ii=false;
	
	if(checkEmptyComponent(frmObj.title)) nameFlag=true;
	if(dateCheck(frmObj.sdate_dd,frmObj.sdate_mm,frmObj.sdate_yy,'sdate_ddImg')) startDDFlag=true;
	
	if(hourCheck(frmObj.sdate_hh,frmObj.sdate_ii,'sdate_hhImg')) sizeFlag=true;

	if(dateCheck(frmObj.edate_dd,frmObj.edate_mm,frmObj.edate_yy,'edate_ddImg')) cityFlag=true;
	if(hourCheck(frmObj.edate_hh,frmObj.edate_ii,'edate_hhImg')) edate_hh=true;
	
	if(nameFlag && startDDFlag && sizeFlag && cityFlag && edate_hh) 
		return true;
	return false;
}

function dateCheck(dd,mm,yy,spanID){
	if(dd.value!="" && mm.value!="" && yy.value!=""){
		document.getElementById(spanID).className='jsTickImage_combo';
		document.getElementById(spanID).innerHTML='';
		return true;
	}
	document.getElementById(spanID).className='jsEmptyMsg';
	document.getElementById(spanID).style.paddingLeft='5px';
	document.getElementById(spanID).innerHTML='Can\'t be empty!';
	return false;
}
function hourCheck(hh,mm,spanID){
	if(hh.value!="" && mm.value!=""){
		document.getElementById(spanID).className='jsTickImage_combo';
		document.getElementById(spanID).innerHTML='';
		return true;
	}
	document.getElementById(spanID).className='jsEmptyMsg';
	document.getElementById(spanID).style.paddingLeft='5px';
	document.getElementById(spanID).innerHTML='Can\'t be empty!';
	return false;
}
function clearFrm(frmObj){
	frmObj.title.value='';
	return ;
}
/********** form validation for user registration Step 1***********/
function frmStep1Validation(frmObj){
	var userTypeFlag=false;
	var userNameFlag=false; 
	var userPasswordFlag=false; 
	var confirmPasswordFlag=false; 
	var userEmailFlag=false;
	var captchaCodeFlag=false;
	var agreedOnFlag=false;
	//alert('valu '+document.getElementById('agreedOn').checked);
	/*if(!document.getElementById('agreedOn').checked){
		termOfConditionPass();
		return false;
	}
	termOfConditionFail();*/
	if(checkEmptyComponent(frmObj.userType)) userTypeFlag=true;
	if(countUserName(frmObj.registrationNewName)) userNameFlag=true;
	if(passwordMatch(frmObj.registrationNewPassword,frmObj.confirmPassword,'1')) userPasswordFlag=true;
	if(passwordMatch(frmObj.registrationNewPassword,frmObj.confirmPassword,'2')) confirmPasswordFlag=true;
	if(emailValidation(frmObj.userEmail)) userEmailFlag=true;
	if(checkEmptyComponent(frmObj.captchaCode)) captchaCodeFlag=true;
	if(document.getElementById('agreedOn').checked){ 
		termOfConditionFail();
		agreedOnFlag=true;
	}else{
		termOfConditionPass();
		agreedOnFlag=false;
	}
	if(userTypeFlag && userNameFlag && userPasswordFlag && confirmPasswordFlag && userEmailFlag && captchaCodeFlag && agreedOnFlag) 
		return true;
	return false;
}
function termOfConditionPass(){
	document.getElementById('agreedOn').style.border='1px solid #CC0000';
	document.getElementById('agreedOnImg').className="jsEmptyMsg";
	document.getElementById('agreedOnImg').style.paddingLeft='5px';
	document.getElementById('agreedOnImg').innerHTML='You must agree to the Terms of Use and Privacy Policy.';
}
function termOfConditionFail(){
	document.getElementById('agreedOn').style.border='1px solid #CCCCCC';
	document.getElementById('agreedOnImg').className="jsTickImage";
	document.getElementById('agreedOnImg').style.paddingLeft='5px';
	document.getElementById('agreedOnImg').innerHTML='';
}
function passwordMatch(pass,confPass,flag){
	var passSpanId=pass.id+'Img';
	var passId=pass.id;
	var spanId=confPass.id+'Img';
	if(pass.value==""){
		emptyMsg(passId,passSpanId);
		return false;
	}
	if(pass.value.length<=5){
		passwordMsg(passId,passSpanId,'Minimum 6 characters.');
		return false;
	}
	if(flag!='1'){
		if(confPass.value==""){
			emptyMsg(confPass.id,spanId);
			return false;
		}
		if(pass.value!=confPass.value){
			passwordMsg(confPass.id,spanId,'Does not match!');
			return false;
		}
		tickMsg(confPass.id,spanId);
		return true;
	}else{
		tickMsg(passId,passSpanId);
		return true;
	}
}

function passwordMsg(comId,spanId,msg){
	document.getElementById(comId).style.border='1px solid #CC0000';
	document.getElementById(spanId).className="jsEmptyMsg";
	document.getElementById(spanId).style.paddingLeft='5px';
	document.getElementById(spanId).innerHTML=msg;
}
function emailValidation(email){
 if(!checkEmptyComponent(email)) return false;
 var str=email.value
 var comId=email.id;
 var spanId=email.id+'Img';
 var filter=/^.+@.+\..{2,3}$/
 if(filter.test(str)){
   tickMsg(comId,spanId);
   return true;
 }
 passwordMsg(comId,spanId,'Invalid email address.');
 return false;
}

function countUserName(username){
	//alert('id '+username.id);
	var comId=username.id;
	var spanId=username.id+'Img';
	if(username.value==""){
		emptyMsg(comId,spanId);
		return false;
	}if(username.value.length<=3){
		passwordMsg(comId,spanId,'Minimum 4 characters.');
		return false;
	}
	if(checkUserNameUniquness(username.value)){ 
		//tickMsg(comId,spanId);
		document.getElementById(comId).style.border='1px solid #CCCCCC';
		document.getElementById(spanId).innerHTML='';
		return true;
	}
}
function frmStep2Validation(frmObj,userType,userAccount){
	//alert("value "+document.getElementById('photo').value);
	//alert('userType ='+userType+' =userAccount='+userAccount);
	if(document.getElementById('photo').value!=""){
		if(!userImgValidation()) return false;
	}
	if(userType=='s80'){
		var contact_fnameFlag=false;
		var contact_lnameFlag=false; 
		var genderFlag=false; 
	
		if(checkEmptyComponent(frmObj.contact_fname)) contact_fnameFlag=true;
		if(checkEmptyComponent(frmObj.contact_lname)) contact_lnameFlag=true;
		if(checkEmptyComponent(frmObj.gender)) genderFlag=true;
		
		if(contact_fnameFlag && contact_lnameFlag && genderFlag) return true;
		return false;
		
	}else if(userType=='g'){
		var contact_fnameFlag=false;
		var contact_lnameFlag=false; 
		var genderFlag=false;
		var zipcodeFlag=false; 
	
		if(checkEmptyComponent(frmObj.contact_fname)) contact_fnameFlag=true;
		if(checkEmptyComponent(frmObj.contact_lname)) contact_lnameFlag=true;
		if(checkEmptyComponent(frmObj.gender)) genderFlag=true;
		if(allowNumericOnly(frmObj.zipcode)) zipcodeFlag=true;
		
		if(contact_fnameFlag && contact_lnameFlag && genderFlag && zipcodeFlag) return true;
		return false;
		
	}else if(userType=='cu'){
		if(userAccount=='VENUE'){
			
			var contact_fnameFlag=false;
			var contact_lnameFlag=false; 
			var genderFlag=false;
			var zipcodeFlag=false;
			var countryFlag=false; 
			var stateFlag=false;
			var cityFlag=false; 
			
			var venueNameFlag=false;
			var venueStreet1Flag=false; 
			var venueWebsiteFlag=false;
			var venue_typeFlag=false;
			var venue_sizeFlag=false; 
			var venue_stateFlag=false;
			var venue_stateFlag=false;
			var venue_zipcodeFlag=false;
			//var cityFlag=false; 
		
			if(checkEmptyComponent(frmObj.contact_fname)) contact_fnameFlag=true;
			if(checkEmptyComponent(frmObj.contact_lname)) contact_lnameFlag=true;
			if(checkEmptyComponent(frmObj.gender)) genderFlag=true;
			if(allowNumericOnly(frmObj.zipcode)) zipcodeFlag=true;
			if(checkEmptyComponent(frmObj.country)) countryFlag=true;
			if(checkEmptyComponent(frmObj.state)) stateFlag=true;
			if(checkEmptyComponent(frmObj.city)) cityFlag=true;
			
			if(checkEmptyComponent(frmObj.venueName)) venueNameFlag=true;
			if(checkEmptyComponent(frmObj.venueStreet1)) venueStreet1Flag=true;
			if(websiteURLValidation(frmObj.venueWebsite)) venueWebsiteFlag=true;
			if(checkEmptyComponent(frmObj.venue_type)) venue_typeFlag=true;
			if(checkEmptyComponent(frmObj.venue_size)) venue_sizeFlag=true;
			if(checkEmptyComponent(frmObj.venue_state)) venue_stateFlag=true;
			if(checkEmptyComponent(frmObj.venue_city)) venue_cityFlag=true;
			if(allowNumericOnly(frmObj.venue_zipcode)) venue_zipcodeFlag=true;
			//if(checkEmptyComponent(frmObj.city)) cityFlag=true;
			
			if(contact_fnameFlag && contact_lnameFlag && genderFlag && zipcodeFlag && countryFlag && stateFlag && cityFlag && venueNameFlag && venueStreet1Flag && venueWebsiteFlag && venue_typeFlag && venue_sizeFlag && venue_stateFlag && venue_stateFlag && venue_zipcodeFlag) return true;
			return false;
			
		}else if(userAccount=='ARTIST'){
			var contact_fnameFlag=false;
			var contact_lnameFlag=false; 
			var genderFlag=false;
			var zipcodeFlag=false;
			var countryFlag=false; 
			var stateFlag=false;
			var cityFlag=false; 
		
			if(checkEmptyComponent(frmObj.contact_fname)) contact_fnameFlag=true;
			if(checkEmptyComponent(frmObj.contact_lname)) contact_lnameFlag=true;
			if(checkEmptyComponent(frmObj.gender)) genderFlag=true;
			if(allowNumericOnly(frmObj.zipcode)) zipcodeFlag=true;
			if(checkEmptyComponent(frmObj.country)) countryFlag=true;
			if(checkEmptyComponent(frmObj.state)) stateFlag=true;
			if(checkEmptyComponent(frmObj.city)) cityFlag=true;
			
			if(contact_fnameFlag && contact_lnameFlag && genderFlag && zipcodeFlag && countryFlag && stateFlag && cityFlag) 
				return true;
			return false;
		}
	}
}

function userImgValidation(){
	var imgBanner=document.getElementById('photo');
	//alert('imgBanner.value '+imgBanner.value);
	if(imgBanner.value!=''){
		var imgExtArray=new Array('gif','jpg','jpeg'); 
		var extFlag=false;
		var imgPath=imgBanner.value;
		var fileName=imgPath.substring(imgPath.lastIndexOf('\\')+1,imgPath.lastIndexOf('.'));
		if(!checkSpecialChar(fileName)) return false;
		var ext=imgPath.substring(imgPath.lastIndexOf('.')+1,imgPath.length).toLowerCase();
		for(var j=0;j<imgExtArray.length;j++){
			if(imgExtArray[j]==ext) { 
				extFlag=true;
				break;
			}//else continue;
		}
		if(!extFlag){
			alert('Only GIF, JPG, JPEG image file formats are allowed.');
			return false;
		}
		return true;
	}
}
function checkSpecialChar(form){
    var filevalid = /^[0-9a-zA-Z_.:\\/-]+$/;
    if(!filevalid.test(form)){ 
	  	alert('Please enter valid Image URL with no special characters.'); 
		return false;
	}
	return true;
}
