
/*Make a call to assessment url for getting the access code*/
var errormessage;
var periodicalFormCheckerEventAssess=null;
var periodicalFormCheckerForgetAssess=null;
  
var initAssessmentPeriodicalFormChecker=function(){
	
	if($defined($('assessmentGetCodeA'))){
	$('assessmentGetCodeA').addEvent('click',validateSubmitEmailForget);
	}
	if($defined($('forgetassessment'))){
	$('forgetassessment').addEvent('click',toggleForgetPasswordPanelAssess);
	}
	if($defined($('cancelmail'))){
	$('cancelmail').addEvent('click',togglediv);
	}
	if($defined($('cancelMailClose'))){
	$('cancelMailClose').addEvent('click',togglediv);
	}
	if($defined($('accesscodelogin'))){
	$('accesscodelogin').addEvent('click',accessCodeSubmit);
	}
	periodicalFormCheckerEventAssess =periodicalFormCheckerAssess.periodical(1000);
	periodicalFormCheckerForgetAssess =periodicalFormFogetAssess.periodical(1000);
 };
 
 var accessCodeSubmit=function()
 {
   	$('accessCodeLoginDiv').setStyle('display','none');
   	$('accessCodeLoginDivAjax').setStyle('display','block');
  	$('userAssessForm').set('send', { 
				  onSuccess: function(response){
				  var resultObj=null;
				  try{				  
				  	resultObj=JSON.decode(response);					   
				  }catch(ex){				  	
				  }
				  if(resultObj==null){						   						   	
						   $('action_error_assess').set('html','System Error, Try Again');
						   $('action_error_assess').addClass('errorMessage');
						   $('accessCodeLoginDiv').setStyle('display','block');
						 $('accessCodeLoginDivAjax').setStyle('display','none');
					    }else{
							if(resultObj.status=='success'){
								$('action_error_assess').set('html','');
								$('action_error_assess').removeClass('errorMessage');
								$('accessCodeLoginDiv').setStyle('display','block');
   								$('accessCodeLoginDivAjax').setStyle('display','none');
								redirectToHomePageAssess(resultObj.redirectPath);
							}else{
								 $('action_error_assess').set('html','Access Code is not valid');
						  		 $('action_error_assess').addClass('errorMessage');
						  		 $('accessCodeLoginDiv').setStyle('display','block');
   								 $('accessCodeLoginDivAjax').setStyle('display','none');
								
							}
						 }
				  },
				 		onFailure:function(response){
					  	$('action_error_assess').set('html','System Error, Try Again');
						$('action_error_assess').addClass('errorMessage');
						$('accessCodeLoginDiv').setStyle('display','block');
   						$('accessCodeLoginDivAjax').setStyle('display','none');
  						
					  } 
				}).send();
 };
 
 var redirectToHomePageAssess=function(redirectPath){
 if("assessment-worksheet-report-red"==redirectPath){
    
  	document.location.href=$('webContextString').getProperty('value')+"asdoShowAssessmentReport.action";
  }
  else if("assessment-worksheet-start-red"==redirectPath)
  {
 	 document.location.href=$('webContextString').getProperty('value')+"asdoStartAssessmentWorksheet.action";
  }
  }
 
 var togglediv=function()
 {
 	if($('accesscodemaillabel').hasClass('error-login-msg'))
 	{
 		$('accesscodemaillabel').toggleClass('error-login-msg');
 	}
	$('accessformforget').reset();
	$('assessMsgErrorDiv').hide();
	$('assessMsgDiv').show();
	$('sendaccesscodemailloader').removeClass('ajax-loading');
	$('sendaccesscodecanceldiv').setStyle('display','none');
	$('sendaccesscodemail').setStyle('display','none');
	$('forgetassesscodediv').setStyle('display','none');
	$('enterassesscodediv').setStyle('display','block');
	$('assessbutton').setStyle('display','block');
};
 
 var periodicalFormCheckerAssess=function(){
	validateFormAssess();	 
 };
 
 var periodicalFormFogetAssess=function(){
 	validateForgetAssess();
 }
 var periodicalFormFogetAssess=function(){
  	if($defined($('assessEmail')))
  	{
  	var isValid=true;
  	if($('assessEmail').value==''){
  		isValid=false;
  	}
  	if(isValid){
  		enableEmailButtonAssess(true);
  	}else{
  		enableEmailButtonAssess(false);
  	}
  	return isValid;
  	}
  };
 
 var validateFormAssess=function(){
  	var isValid=true;
  	if($('accesscode').value==''){
  		isValid=false;
  	}
  	if(isValid){
  		enableLoginButtonAssess(true);
  	}else{
  		enableLoginButtonAssess(false);
  	}
  	return isValid;
  
  };
  
  var enableLoginButtonAssess=function(status){
  	if(status){
  		if($('accesscodelogin').getProperty('disabled')==true){
  			$('accesscodelogin').setProperty('disabled',false);
  			//$('accesscodelogin').setStyle('background-image','url('+$('webContextString').getProperty('value')+'passive/images/login-active.png)');
  			$('accesscodelogin').removeClass('start-deactive');
  			$('accesscodelogin').addClass('start-active');  			
  	}
  	}else{
  		if($('accesscodelogin').getProperty('disabled')==false){
  			$('accesscodelogin').setProperty('disabled',true);
  			$('accesscodelogin').removeClass('start-active');
  			$('accesscodelogin').addClass('start-deactive'); 		
  			
  		}
  	}
  };
  
  var enableLoginButtonAssessAjax=function(status){
  	if(status){
  		if($('accesscodelogin').getProperty('disabled')==true){
  			$('accesscodelogin').setProperty('disabled',false);
  			//$('accesscodelogin').setStyle('background-image','url('+$('webContextString').getProperty('value')+'passive/images/login-active.png)');
  			$('accesscodelogin').removeClass('start-deactive');
  			$('accesscodelogin').addClass('start-active'); 			
  		}
  	}else{
  		if($('accesscodelogin').getProperty('disabled')==false){
  			$('accesscodelogin').setProperty('disabled',true);
  			$('accesscodelogin').removeClass('start-active');
  			$('accesscodelogin').addClass('start-deactive'); 		
  			
  		}
  	}
  };
  
  var enableEmailButtonAssess=function(status){
  	if(status){
  		if($('assessmentGetCodeA').getProperty('disabled')==true){
  			$('assessmentGetCodeA').erase('disabled');
  			$('assessmentGetCodeA').removeClass('request-access-dull');
  			$('assessmentGetCodeA').addClass('request-access-active');
  			 			
  		}
  	}else{
  		if($defined($('assessmentGetCodeA'))){
		if($('assessmentGetCodeA').getProperty('disabled')==false){
  			$('assessmentGetCodeA').setProperty('disabled',true);
			$('assessmentGetCodeA').removeClass('request-access-active');
  			$('assessmentGetCodeA').addClass('request-access-dull');
			}
  		}
  	}
  };
  
  
  var toggleForgetPasswordPanelAssess=function()
  {
	$('accessformforget').reset();
	$('action_error_assess').setStyle('display','none');
  	$('enterassesscodediv').setStyle('display','none');
	$('assessbutton').setStyle('display','none');
	$('forgetassesscodediv').setStyle('display','block');
  	
  };
  
  var validateSubmitEmailForget=function()
  {
  if($defined($('assessEmail')))
  {
  var accessmail=$('assessEmail').value;
  if(validateMultipleEmailsCommaSeparated(accessmail))
  {
  	$('accesscodemaillabel').removeClass('error-login-msg');
  	submitEmailForgetAccess();    
  }
  else
  {
  	$('assessMsgDiv').hide();
  	$('assessMsgErrorDiv').show().set('html','<span  style="font-size:13px;color:#ff0000;">Whoops, We noticed something...</span><ul style="padding-left:15px;color:#ff0000;"><li><span style="color:#000000;line-height:16px;">Please enter correct email</span><br />');
  	$('accesscodemaillabel').addClass('error-login-label');
  	return false;
  }
  }
  else
  {
  	$('assessMsgDiv').hide();
  	$('assessMsgErrorDiv').show().set('html','<div style="height:30px;">Whoops. The e-mail/username you<br /> entered was not found in our system</div>');
  	$('accesscodemaillabel').addClass('error-login-label');
  	return false;
  }
  };
    
   var submitEmailForgetAccess=function()
   {

  	$('accessformforget').set('send',{ 

		onRequest:function()
		{
			$('sendaccesscodemailloader').addClass('ajax-loading');
			$('forgetassesscodediv').setStyle('display','none');
			$('sendaccesscodemail').setStyle('display','block');
			$('sendaccesscodemailloader').setStyle('display','block');
			$('sendaccesscodecanceldiv').setStyle('display','block');
			$('sendaccesscodemail').set('html',"Sending E-Mail");  			
		},
		onSuccess: function(response){
		  var resultObj=null;
		  try{				  
			resultObj=JSON.decode(response);					   
		  }catch(ex){				  	
		  }
		  if(resultObj==null){						   						   	
				$('sendaccesscodemailloader').removeClass('ajax-loading');
				$('sendaccesscodemail').set('html',"Some Error Occured during sending mail.please try again.");
				
				}else{
					if(resultObj.status=='success'){
						$('sendaccesscodemailloader').removeClass('ajax-loading');
						$('sendaccesscodecanceldiv').setStyle('display','none');
						$('sendaccesscodemail').set('html',"<div>Your e-mail has been sent.</div><div style='clear:both;padding-top:5px;'><input id='closebutton' type='button' onclick='togglediv()' class='assess-close'/></div>");
						
						
					}else{
						$('sendaccesscodemailloader').removeClass('ajax-loading');
						$('sendaccesscodemail').set('html',"<span style='color:#FF0000;'>Whoops. The e-mail you entered was not found in our system.</span>");
					}
				 }
			},
			onFailure:function(response)
			{
				$('sendaccesscodemailloader').removeClass('ajax-loading');
				$('sendaccesscodemail').set('html',"Some Error Occured during sending mail.please try again.");
			} 
		}).send();	
};
  
  
	var validateEmail=function(field) {
    var regex=/\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i;
    return (regex.test(field)) ? true : false;
    };

	var validateMultipleEmailsCommaSeparated=function(value) {
    var result = value.split(",");
    for(var i = 0;i < result.length;i++)
    if(!validateEmail(result[i])) 
      	return false;
                  
    return true;    
};