var currentQuestion=1;
var totalQuestions=5;
var totalScore=0;
var totalScore_1to4=0;
var qID='ctl00_MainBodyPlaceHolder_radQ';
var answerTotals=new Array(4,3,4,4,5);
var answerVals=new Array('A','B','C','D','E');
var answers=new Array();
var assessmentStarted=false;

var flareDesc;
var flareAnswers=new Array();

$(document).ready(function() {
    
    //launch tool
    $('a#startFlare').click(function() {
        //atlas tag tracker
        $.ajax({
			type: "POST",
			url: "/handlers/tag-tracker.ashx",
			data: "url=http://view.atdmt.com/action/dihshr_NEWLIC_092009_UC_Flare_Assessment_Take",
			success: function(msg){
				
		    }
		});
		
    });
    
    //begin assessment button
    $('img#flare_btn_begin').click(function() {
        $('div#flare_intro').addClass('flarehide');
        $('div#flareMainTop').removeClass('flarehide');
        $('div#flare_q1').removeClass('flarehide');
        $('div#flareMainBody').removeClass('step_intro');
        $('div#flareQCount').removeClass('flarehide');
        assessmentStarted=true;
    });
    //radio button selected
    $('span.q1').click(function() {
         
    });
    
    $("#close_btn").click(function(){
        if($("#closeBoolean").attr("value") == "no" && assessmentStarted){
            var closeTest = confirm("You are about to leave the Ulcerative Colitis Flare Assessment without printing or e-mailing your results. Your total score and answers can help your doctor better understand the severity of your ulcerative colitis symptoms. However, your results will no longer be available if you do not print or e-mail them now.  \n\nIf you would like to print or e-mail your assessment results, click \"Cancel.\"");
            if(closeTest){
                closeFlare();
            }
        }else{
            closeFlare();
        }
    });
    function closeFlare(){
        tb_remove();
    }
    
    //next question button
    $('img.flare_btn_next').click(function() {
        if(!isAnswered(currentQuestion)){
            alert('Please answer the question before you click the "Next" button');
            return;
        }
        
        $('div#flare_q'+currentQuestion).addClass('flarehide');
        $('img#flare_q'+currentQuestion+'_img').attr('src','/images/flare_checked.png');
        $('img#flare_q'+(currentQuestion+1)+'_img').attr('src','/images/flare_q'+(currentQuestion+1)+'_on.png');
        
        //ga call
        switch(currentQuestion){
            case 1:
                break;
            case 2:
                break;
            case 3:
                break;
            case 4:
                break;
            case 5:
                break;
            
        }
        
        
        
        
        
        currentQuestion++;
        $('div#flare_q'+currentQuestion).removeClass('flarehide');
        
        
        
    });
    //back question button
    $('img.flare_btn_previous').click(function() {
        
        $('div#flare_q'+currentQuestion).addClass('flarehide');
        
        currentQuestion--;
        $('img#flare_q'+currentQuestion+'_img').attr('src','/images/flare_q'+currentQuestion+'_on.png');
        
        $('div#flare_q'+currentQuestion).removeClass('flarehide');
        var x;
        for(x=(currentQuestion+1);x<=totalQuestions;x++){
            
            $('img#flare_q'+x+'_img').attr('src','/images/flare_q'+x+'.png');
        
        }
        
    });
    //get my score button
    $('img.flare_btn_score').click(function() {
        
        if(!isAnswered(currentQuestion)){
            alert('Please answer the question before you click the "Next" button');
            return;
        }
        tallyScore();
        submitAnswersAjax();
        $('div#flare_q'+totalQuestions).addClass('flarehide');
        $('div#flareMainTop').addClass('flarehide');
        $('div#flareMainResultsTop').removeClass('flarehide');
        $('div#flare_score').removeClass('flarehide');
        $('span#myScore').text(totalScore);
        $('div#flareMainBody').addClass('step_score');
        
        $('span#print_myScore').text(totalScore);
        $('.updateNumberSpan').text(totalScore);
        
        
        //atlas tag tracker
        $.ajax({
			type: "POST",
			url: "/handlers/tag-tracker.ashx",
			data: "url=http://view.atdmt.com/action/dihshr_NEWLIC_092009_UC_Flare_Assessment_COMPLETE",
			success: function(msg){
				
		    }
		});
	   
    });
    //show answers
    $('a#showAnswers').click(function() {
        $('div#flare_result_answers').removeClass('flarehide');
        $('div#flare_result_box').addClass('flarehide');
        $('div#flareShowAnswers').addClass('flarehide');
    });
     //hide answers
    $('a.closeanswerlink').click(function() {
        $('div#flare_result_answers').addClass('flarehide');
        $('div#flare_result_box').removeClass('flarehide');
        $('div#flareShowAnswers').removeClass('flarehide');
    });
    //get a single question score
    function getQuestionScore(currentQuestion){
        var x;
        var y;
        var thisScore=0;
        
           
           for(y=0;y<answerTotals[currentQuestion-1];y++){
            
            if($('input#'+qID+currentQuestion+'_'+answerVals[y]).is(':checked')){
               thisScore=$('input#'+qID+currentQuestion+'_'+answerVals[y]).attr('value')*1;
            }
            
           }
           
        
        return thisScore;
    }
    //score questions
    function tallyScore(){
        var x;
        var y;
        currentQuestion=0;
        for(x=0;x<answerTotals.length;x++){
           currentQuestion=x+1;
           for(y=0;y<answerTotals[x];y++){
            
            if($('input#'+qID+currentQuestion+'_'+answerVals[y]).is(':checked')){
               totalScore+=$('input#'+qID+currentQuestion+'_'+answerVals[y]).attr('value')*1;
               $('p#ans_q'+currentQuestion).text($('input#'+qID+currentQuestion+'_'+answerVals[y]).parents('li').find('span.ans_text').text());
               $('h4#print_ans_q'+currentQuestion).text("Your Answer: " + $('input#'+qID+currentQuestion+'_'+answerVals[y]).parents('li').find('span.ans_text').text());
               flareAnswers[x]=$('p#ans_q'+currentQuestion).text();
            }
            
           }
           if(currentQuestion<5){
            totalScore_1to4=totalScore;
           }  
        }
        clearScore();
        if(totalScore==0)showScore('score0');
        if(totalScore>=5)showScore('score5ormore');
        if(totalScore>0 && totalScore<5){
            if(totalScore_1to4==0)showScore('score1to4_special');
            else showScore('score1to4');
        }
        
        if(totalScore==0)showScore('print_score0');
        if(totalScore>=5)showScore('print_score5ormore');
        if(totalScore>0 && totalScore<5){
            if(totalScore_1to4==0)showScore('print_score1to4_special');
            else showScore('print_score1to4');
        }
        
        
    }
    function isAnswered(currentQuestion){
        var bAnswered=false;
        var x,y;
        for(y=0;y<answerTotals[currentQuestion-1];y++){
            if($('input#'+qID+currentQuestion+'_'+answerVals[y]).is(':checked')){
               bAnswered=true;
               break;
            }
            
        }
        return bAnswered;
    }
    function clearScore(){
        $('#score5ormore').addClass('flarehide');
        $('#score1to4').addClass('flarehide');
        $('#score1to4_special').addClass('flarehide');
        $('#score0').addClass('flarehide');
        $('#print_score5ormore').addClass('print_flarehide');
        $('#print_score1to4').addClass('print_flarehide');
        $('#print_score1to4_special').addClass('print_flarehide');
        $('#print_score0').addClass('print_flarehide');
    }
    function showScore(thisID){
        $('#'+thisID).removeClass('flarehide');
        $('#'+thisID).removeClass('print_flarehide');
        flareDesc=$('#'+thisID).text();
        flareDesc=unescape(escape(flareDesc).replace(/%20%20/g,''));
        
        
    }
    

    //retake button
    $('img#flare_btn_retake').click(function() {
        currentQuestion=1;
        totalScore=0;
        $('div#flareMainResultsTop').addClass('flarehide');
        $('div#flare_score').addClass('flarehide');
        $('div#flareMainTop').addClass('flarehide');
        $('div#flare_q1').addClass('flarehide');
        $('div#flareMainBody').addClass('step_intro');
        $('div#flareQCount').addClass('flarehide');
        $('div#flare_intro').removeClass('flarehide');
        $('div#flareMainBody').removeClass('step_score');
        
        
        var x;
        for(x=currentQuestion;x<=totalQuestions;x++){
            
            $('img#flare_q'+x+'_img').attr('src','/images/flare_q'+x+'.png');
        
        }
        //reset first question image
        $('img#flare_q1_img').attr('src','/images/flare_q1_on.png');
    });
    //print button
    
    $('img#flare_btn_print').click(function() {
        
        $("#print_flare_container" ).jqprint();
        $("#closeBoolean").attr("value", "yes");
    });
    


    //emailscore div
    $('img#flare_btn_email_score').click(function() {
        $('div#ddg_emailscorediv').addClass('flareshow');
        
    });
    
    $('img#flare_emailScore_cancel').click(function() {
        $('div#ddg_emailscorediv').removeClass('flareshow');
        
    });
    $('a#flare_emailScore_close_btn').click(function() {
        $('div#ddg_emailscorediv').removeClass('flareshow');
    });
    
    
    
        
    $('img#flare_flare_emailScore_submit').click(function() {
        $("#closeBoolean").attr("value", "yes");
        //validate form
        var mainDiv=$(this).parent().parent().parent();
        var bValid=true;
        var emailFromFName,emailToFName,emailFromAddress,emailToAddress;
        
        emailToFName='';
        emailToAddress='';
        
        //validate first name
        var fieldValue=mainDiv.find('#flare_email_score_fname1').val();
        emailFromFName=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#flare_err_email_score_fname1').show();
            bValid=false;
        }
        else mainDiv.find('#flare_err_email_score_fname1').hide();
        
        //validate email of sender
        var fieldValue=mainDiv.find('#flare_email_score_email1').val();
        emailToAddress=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#flare_err_email_score_email1').show();
            mainDiv.find('#flare_err_email_score_email1_invalid').hide();
            bValid=false;
        }
        else if(!validateEmail(fieldValue)){
            mainDiv.find('#flare_err_email_score_email1_invalid').show();
            mainDiv.find('#flare_err_email_score_email1').hide();
            bValid=false;
        }
        else{
            mainDiv.find('#flare_err_email_score_email1').hide();
            mainDiv.find('#flare_err_email_score_email1_invalid').hide();
        }
        if(!bValid)return;
        
        $('div#ddg_emailScore_step1').addClass('flarehide');
        //sendtype points to the email message config
        //sendtype is the message id
        var sendtype=4; //
        $.ajax({
			type: "POST",
			url: "/handlers/email-a-friend.ashx",
			data: "sendtype="+sendtype+"&emailFromFName="+emailFromFName+"&emailToFName="+emailFromFName+"&emailFromAddress="+emailFromAddress+"&emailToAddress="+emailToAddress+"&pageURL="+window.location.toString()+"&score="+totalScore+"&desc="+flareDesc+"&answer0="+flareAnswers[0]+"&answer1="+flareAnswers[1]+"&answer2="+flareAnswers[2]+"&answer3="+flareAnswers[3]+"&answer4="+flareAnswers[4],
			success: function(msg){
				$('div#ddg_emailScore_confirmation').removeClass('flarehide');
                window.setTimeout('closeConfirm()',5000);
		    }
		});

    });


    
    //email div
    $('img#flare_btn_email').click(function() {
        $('div#ddg_emaildiv').addClass('flareshow');
    });
    
    $('img#flare_email_cancel').click(function() {
        $('div#ddg_emaildiv').removeClass('flareshow');
        
    });
    $('a#flare_email_close_btn').click(function() {
        $('div#ddg_emaildiv').removeClass('flareshow');
        
        
    });
    
    $('img#flare_flare_email_submit').click(function() {
        
        
        $("#closeBoolean").attr("value", "yes");
        //validate form
        var emailFromFName,emailToFName,emailFromAddress,emailToAddress;
        
        var mainDiv=$(this).parent().parent().parent();
        var bValid=true;
        
        //validate first name
        var fieldValue=mainDiv.find('#flare_email_fname1').val();
        emailFromFName=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#flare_err_email_fname1').show();
            bValid=false;
        }
        else mainDiv.find('#flare_err_email_fname1').hide();
        
        //validate first name of to field
        var fieldValue=mainDiv.find('#flare_email_fname2').val();
        emailToFName=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#flare_err_email_fname2').show();
            bValid=false;
        }
        else mainDiv.find('#flare_err_email_fname2').hide();
        
        //validate email of sender
        var fieldValue=mainDiv.find('#flare_email_email1').val();
        emailFromAddress=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#flare_err_email_email1').show();
            mainDiv.find('#flare_err_email_email1_invalid').hide();
            bValid=false;
        }
        else if(!validateEmail(fieldValue)){
            mainDiv.find('#flare_err_email_email1_invalid').show();
            mainDiv.find('#flare_err_email_email1').hide();
            bValid=false;
        }
        else{
            mainDiv.find('#flare_err_email_email1').hide();
            mainDiv.find('#flare_err_email_email1_invalid').hide();
        }
        
        //validate email of to field
        var fieldValue=mainDiv.find('#flare_email_email2').val();
        emailToAddress=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#flare_err_email_email2').show();
            mainDiv.find('#flare_err_email_email2_invalid').hide();
            bValid=false;
        }
        else if(!validateEmail(fieldValue)){
            mainDiv.find('#flare_err_email_email2_invalid').show();
            mainDiv.find('#flare_err_email_email2').hide();
            bValid=false;
        }
        else{
            mainDiv.find('#flare_err_email_email2').hide();
            mainDiv.find('#flare_err_email_email2_invalid').hide();
        }
        
        if(!bValid)return;
        
        $('div#ddg_email_step1').addClass('flarehide');
        var sendtype=3; //
        $.ajax({
			type: "POST",
			url: "/handlers/email-a-friend.ashx",
			data: "sendtype="+sendtype+"&emailFromFName="+emailFromFName+"&emailToFName="+emailToFName+"&emailFromAddress="+emailFromAddress+"&emailToAddress="+emailToAddress+"&pageURL="+window.location.toString(),
			success: function(msg){
				$('div#ddg_email_confirmation').addClass('flareshow');
                window.setTimeout('closeConfirm()',5000);
		}
		});
        
    });
    
});

//submits answers to flareHandler which processes and puts the answers into the database
function submitAnswersAjax(){
    var answers = "";
    for(x=0;x<answerTotals.length;x++){
        currentQuestion=x+1;
        for(y=0;y<answerTotals[x];y++){
            if($('input#'+qID+currentQuestion+'_'+answerVals[y]).is(':checked')){
                //alert(currentQuestion + ":" + answerVals[y]);
                answers += currentQuestion + ":" + answerVals[y] + ",";
                
            }
        }
    }
    //ajax that posts to the database (callback function (data) will be false on unsuccessful insertion) 
    $.post("/post/flareHandler.ashx",{'questions' : answers.substring(0,answers.length-1)}, function(data){});
}



function closeConfirm(){
    $('div#ddg_email_step1').removeClass('flarehide');
    $('div#ddg_email_confirmation').removeClass('flareshow');
    $('div#ddg_emaildiv').removeClass('flareshow');
    
    $('div#ddg_emailScore_step1').removeClass('flarehide');
    $('div#ddg_emailScore_confirmation').removeClass('flareshow');
    $('div#ddg_emailscorediv').removeClass('flareshow');
    
    $('div#ddg_emailScore_confirmation').addClass('flarehide');
    
}
