
/*Make a call to assessment url for getting the access code*/
var errormessage;
var init=function(){	
	
	$('assessmentGetCodeA').observe('click',getAssessmentCode);	
	$('userBean.userModel.countryId').observe('change',toogleDisableStateInter);	
}

var toogleDisableStateInter=function()
{
	if($('userBean.userModel.countryId').options[$('userBean.userModel.countryId').selectedIndex].text=='United States of America'){
		$('userBean.userModel.stateId').disabled=false;
		$('isInternational').value=false;
	}else{
		$('userBean.userModel.stateId').disabled=true;
		$('isInternational').value=true;
	}
};
var getAssessmentCode=function(){	
	if(!isValidForm()){
		return false;
	}
	showAssessOverlay();
	$('setupAssessForm').request({
				onSuccess: function(transport){
  							  var response = transport.responseText;
  							  if(response.isJSON()){
  							  	responseJson=response.evalJSON();
  							  	if(responseJson.status=='failure'){  							  		
  							  		var g = new k.Growler({location:"tc"});
									g.growl("Error in Creating Assessment, please try after refreshing the page", {header:'Information',className: "tmdefault",stickey: true});
  							  		hideAssessOverlay();
  							  	}else{  							  		 							  		
  							  		$('assessmentGetCodeA').stopObserving('click',getAssessmentCode);
  							  		$('assessmentGetCodeA').setStyle({
							  			backgroundImage: 'url(images/green-assessment-deactivate.png)'  							  			
							  		});
  							  		//$('assessDoneBtn').observe('click',showAssessmentStartAlert);
  							  		$('assessDoneBtn').setStyle({
  							  			backgroundImage: 'url(passive/images/take-ur-assessment.png)'  							  			
  							  		});  							  		
  							  		$('uniqueCodeSpan').update(responseJson.userModel.accessCode); 
									$('assessusernamespan').update(responseJson.userModel.name); 
									$('assessusernamespan1').update(responseJson.userModel.name); 
									$('assessusernamespan2').update(responseJson.userModel.name); 
									$('assessusernamespan3').update(responseJson.userModel.name); 
  							  		$('assessAssessmentUserId').value=responseJson.userModel.guid;
  							  		$('assessUserAccessCode').value=responseJson.userModel.accessCode; 
  							  		//$('assessusernamespan').value=responseJson.userModel.name;
  							  		$('uniqueCodeDisplayDiv').show();
  							  		saveUserEmail();
  							  		$('assessmentInfoDiv').hide();
  							  		$('assessmentResultDiv').show();
  							  	}
  							  	
  							  }else{ 								
  								var g = new k.Growler({location:"tc"});
								g.growl("Error in Creating Assessment, please try after refreshing the page", {header:'Information',className: "tmdefault",stickey: true});  							  		
  								hideAssessOverlay();
  							  }
  							
  							},
					 onFailure: function(){					 						
					 						var g = new k.Growler({location:"tc"});
											g.growl("Error in Creating Assessment, please try after refreshing the page", {header:'Information',className: "tmdefault",stickey: true});  							  		
  											hideAssessOverlay();
			    				   		}
			  					  							
			});	
}

var isValidForm=function(){
	var isValid=true;
	errormessage="<span style='font-size:13px;'>Whoops, We noticed something...</span><ul style='padding-left:15px;'>";
	if($('setupAssessForm')['userBean.userModel.name'].value==""){ 
		$('studentFirstLabel').addClassName('error-login-label');
		isValid=false;
		errormessage=errormessage+"<li style='padding-right:60px;'><span style='color:#000000;line-height:16px;'>Please enter the name</span><br />";
		
	}else{
		//$('gradeErrorSpan').update("");
		$('studentFirstLabel').removeClassName('error-login-label');
		
	}
	
	
	if($('setupAssessForm')['userBean.userModel.gradeId'].value==""){ 
		$('gradeSelectLabel').addClassName('error-login-label');
		isValid=false;
		errormessage=errormessage+"<li style='padding-right:58px;'><span style='color:#000000;line-height:16px;'>Please enter the grade</span><br />";
	}else{
		
		$('gradeSelectLabel').removeClassName('error-login-label');
 		
		
	}
	
	
	
	if($('setupAssessForm')['userBean.userModel.countryId'].value==""){ 
		$('countryLabel').addClassName('error-login-label');
		isValid=false;
		errormessage=errormessage+"<li style='padding-right:63px;'><span style='color:#000000;line-height:16px;'>Please enter the country</span><br />";
	}else{
		$('countryLabel').removeClassName('error-login-label');
	}
	
	if($('isInternational').value=='false'){		
		if($('setupAssessForm')['userBean.userModel.stateId'].value==""){ 
			$('stateLabel').addClassName('error-login-label');
			isValid=false;
			errormessage=errormessage+"<li style='padding-right:63px;'><span style='color:#000000;line-height:16px;'>Please enter the state</span><br />";
		}else{
			$('stateLabel').removeClassName('error-login-label');
		}
	}else{
		$('stateLabel').removeClassName('error-login-label');
	}
	
	if($('saveEmailForm')['userBean.userModel.email'].value==""){
		$('emailLabel').addClassName('error-login-label');
		isValid=false;		
		errormessage=errormessage+"<li style='padding-right:63px;'><span style='color:#000000;line-height:16px;'>Please enter the email</span><br />";
	}else{
			if(validateEmail($('saveEmailForm')['userBean.userModel.email'].value))
			{
				$('emailLabel').removeClassName('error-login-label');
				
			}
			else
			{
			   $('emailLabel').addClassName('error-login-label');
			   isValid=false;
			   errormessage=errormessage+"<li style='padding-right:63px;'><span style='color:#000000;line-height:16px;'>Please enter the email</span><br />";
			   
			}
		}
		if(isValid)
		{
			hideErrorMessDiv();
		}
		else
		{
			showErrorMessDiv();
		}
		return isValid;
	
}

var hideErrorMessDiv=function()
{

$('errorMessageMainDiv').hide();
		
 $('errorMessageDiv').hide();
}

var showErrorMessDiv=function()
{
	$('txthide').hide();
	$('errorMessageMainDiv').show();
	$('errorMessageDiv').update(errormessage);
}



var saveUserEmail=function(){
		/*Validate email*/
		
				
		$('saveEmailForm').request({
			onSuccess: function(transport){
		  		hideAssessOverlay(); 	  							
			},
		    onFailure: function(){					 						
				hideAssessOverlay(); 		
		   	}
					  					  							
			});	
			
		
}


var forwardToAssessmentWorksheet=function(){
	//hideAssessOverlay();
	//showAssessOverlay();	
	document.location.href="asdoStartAssessmentWorksheet.action";
}

var showAssessOverlay=function(){
	var disableMessage='<div style="font-size:20px;color:#404040;"> <img src="passive/images/ajax-loader.gif" />'+					
					   '</div>';
	var modal=new Dialog({	        
		content:disableMessage,
		close:{
			link:false,
			overlay:false,
			esc:false
			}
		});
	modal.open();
}
var validateEmail=function(str){
			var emailRegEx = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;	
			if(str.match(emailRegEx)){
				return true;	
			}else{		
				return false;
			}
		}

var hideAssessOverlay=function(){
	Dialogs.close();
}

/*At the root of the java-script file on DOM load stuff of prototype*/
document.observe("dom:loaded", function() {
				init();
				
});
