﻿
var tab1_current=0;
var tab2_current=0;
var tab3_current=0;
var tab1_total=0;
var tab2_total=0;
var tab3_total=0;
var currenttab='tab1';
var totalquestions=new Array();
var currentset=new Array();
var bAllowClose=false;
var viewQuestionTotal=4; //controls how many question to display/paginate per page
var totalSelected=0;

$(document).ready(function() {
  
  //launch tool
    $('a#startDDG').click(function() {
        googlePageView('/tool/docdiscussionguide_start');
        googleEventTracker('DiscussionGuide', '0-Build-Now', 'Tools');
        //atlas tag tracker
        $.ajax({
			type: "POST",
			url: "/handlers/tag-tracker.ashx",
			data: "url=http://view.atdmt.com/action/dihshr_NEWLIC_092009_Build_Doctor_Disc_Guide",
			success: function(msg){
				
		    }
		});
		
		//DART tag tracker
        var dartURL=dartTagBuilder('http://ad.doubleclick.net/activity;src=2386012;type=liald241;cat=liald745;ord=1;num=');
		$.ajax({
			type: "POST",
			url: "/handlers/tag-tracker.ashx",
			data: "url="+dartURL,
			success: function(msg){
				
		    }
		});
    });
  
  
  //remove back button
  $('img#ddg_btn_back').attr('src','/images/spacer.gif');
  //initialize lists
  //only show first five items initially
  
  totalquestions['tab1_total']=getTotalQuestions($("div#group_tab1"));
  totalquestions['tab2_total']=getTotalQuestions($("div#group_tab2"));
  totalquestions['tab3_total']=getTotalQuestions($("div#group_tab3"));
  
  //initialize current page array
  currentset['tab1']=0;
  currentset['tab2']=0;
  currentset['tab3']=0;
  
  showQuestions($("div#group_tab1"),currentset['tab1'],(viewQuestionTotal-1));
  showQuestions($("div#group_tab2"),currentset['tab2'],(viewQuestionTotal-1));
  showQuestions($("div#group_tab3"),currentset['tab3'],(viewQuestionTotal-1));
  
  setPagination();
  
  function showQuestions(grouptab,start,limit){
    grouptab.find("div.ddg_left_item").addClass('itemhide');
    grouptab.find("div.ddg_left_item").each(function(index2){
        if(index2>=start && index2<=limit)$(this).removeClass('itemhide');
    });
   
  }
  function getTotalQuestions(grouptab){
    return grouptab.find("div.ddg_left_item").size();
  }
  
  $('div.ddg_left_item').click(function() {
        
        if($(this).attr('class').indexOf('selected')!=-1)return false;
        jQuery(this).addClass('ddg_left_item selected');
        var strQuestion=$(this).find('li.question').text();
        
        
        //BEGIN copy the selected question template and add it to the right side list
        var thiscell=$("tr#qtemplate").clone(false);
        thiscell.removeAttr("id");
        thiscell.attr('id','sel_'+$(this).attr('id'));
        var textcell=thiscell.find('td.qtext');
        textcell.text(strQuestion);
        thiscell.appendTo($("table#ddg_savedquestions"));
        totalSelected++;
        
         //END
        
        resetBkgd();
        
        googleEventTracker('DiscussionGuide', '0-Add', 'Tools');
        
        return false;
    });
    
    //swap div function 
    jQuery.fn.swapWith = function(to) {
        return this.each(function() {
            var copy_to = $(to).clone();
            var copy_from = $(this).clone();
            $(to).replaceWith(copy_from);
            $(this).replaceWith(copy_to);
        });
    };

    $('td.remove').livequery('click',function() {
            //reset left side question
            var thiscell=$(this).parents('tr');
            var lcell=thiscell.attr('id');
            lcell=lcell.replace('sel_','');
            $('div#'+lcell).removeClass('selected');
            thiscell.remove();
            resetBkgd();
            totalSelected--;
            if(totalSelected<0)totalSelected=0;
            return false;
        });
     $('td.moveup').livequery('click',function() {
            var thiscell=$(this).parents('tr');
            var theseCells=new Array();
            var x;
            var target;
            var lcell=thiscell.attr('id');
            
             
            $("tr.savedquestion").each(function(index){
                if($(this).attr('id')!='qtemplate'){
                    theseCells.push($(this)); 
                }
            });
            
            for(x=0;x<theseCells.length;x++){
                if($(theseCells[x]).attr('id')==lcell){
                   target=x-1;
                   break; 
                }
            }
            
            if(target<0)return false;
            
            $(thiscell).swapWith(theseCells[target]);
            
            resetBkgd();
            return false;
        });
    
    function resetBkgd(){
        //alternate each row's background
        $("tr.savedquestion").each(
            // For each question, run this code. The "intIndex" is the
            // loop iteration index on the current element.
            function( intIndex ){
                if(intIndex%2==1)jQuery(this).addClass("altbk");
                else jQuery(this).removeClass("altbk");
	            
            }
         ); 
    }
    function clearList(){
       $("tr.savedquestion").each(
            // For each question, run this code. The "intIndex" is the
            // loop iteration index on the current element.
            function( intIndex ){
                if(intIndex!=0)$(this).remove();
	        }
         ); 
    }
    
    //next button
    $('img#ddg_btn_next').click(function() {
        var shownum;
        var endnum;
        
        currentset[currenttab]+=viewQuestionTotal;
        showQuestions($("div#group_"+currenttab),currentset[currenttab],currentset[currenttab]+(viewQuestionTotal-1));
        
        setPagination();
        showHideNavButtons();
        
        return false;
    });
    
    //back button
    $('img#ddg_btn_back').click(function() {
        
        if($(this).attr('src')=='/images/spacer.gif')return false;
        currentset[currenttab]-=viewQuestionTotal;
        showQuestions($("div#group_"+currenttab),currentset[currenttab],currentset[currenttab]+(viewQuestionTotal-1));
        
        setPagination();
        showHideNavButtons();
        return false;
    });
    //pagination links
    $('a.pagequestions').livequery('click',function() {
        
        var currentPage=$(this).text();
        var currentStartQ=(currentPage*1)*viewQuestionTotal;
        currentStartQ-=viewQuestionTotal;
        
        currentset[currenttab]=currentStartQ;
        showQuestions($("div#group_"+currenttab),currentset[currenttab],currentset[currenttab]+(viewQuestionTotal-1));
        
        setPagination();
        showHideNavButtons();
        return false;
    });
    function loadQuestions(thisStart){
        
        currentset[currenttab]=thisStart;
        showQuestions($("div#group_"+currenttab),currentset[currenttab],currentset[currenttab]+(viewQuestionTotal-1));
        
        setPagination();
        showHideNavButtons();
        return false;
    }
    function setPagination(){
        var shownum;
        var endnum;
        var totalpages=Math.round(totalquestions[currenttab+'_total']/viewQuestionTotal);
        if((totalquestions[currenttab+'_total']/viewQuestionTotal)>totalpages)totalpages+=1;
        
        shownum=currentset[currenttab]+1;
        endnum=shownum+(viewQuestionTotal-1);
        var currentpage=Math.round(endnum/viewQuestionTotal);
        
        if(endnum>totalquestions[currenttab+'_total'])endnum=totalquestions[currenttab+'_total'];
        
        var showlinks='';
        var x;
        var currentClass='';
        for(x=0;x<totalpages;x++){
            
            if(currentpage==(x+1))currentClass=' currentpage';
            else currentClass='';
            showlinks+='<a href="javascript:void(0);" class="pagequestions'+currentClass+'">'+(x+1)+'</a>';
        }
       
        $('span#pagination').html(showlinks);
        
        //$('span#startnum').text(shownum);
        //$('span#endnum').text(endnum);
        //$('span#total').text(totalquestions[currenttab+'_total']);
    }
    //manage nav buttons
    function showHideNavButtons(){
        
        if(currentset[currenttab]>0)$('img#ddg_btn_back').attr('src','/images/ddg_btn_back.gif');
        else $('img#ddg_btn_back').attr('src','/images/spacer.gif');
        
        if(currentset[currenttab]>=(totalquestions[currenttab+'_total']-viewQuestionTotal))$('img#ddg_btn_next').addClass('btnhide');
        else $('img#ddg_btn_next').removeClass('btnhide');
        
        
   }   
   $('a#close_btn').click(function() {
        if(!bAllowClose){
            if(!leaveDDG())return false;
        }
        
        tb_remove();
        
    });
   
    //tabs
    $('div.tab_off').livequery('click',function() {
        var thisList=$(this).attr('id');
        currenttab=thisList;
        var tempList;
        $('div#ddgTabs').find('div').each(
            // For each question, run this code. The "intIndex" is the
            // loop iteration index on the current element.
            function( intIndex ){
                $(this).removeClass('tab_on');
                $(this).addClass('tab_off');
                tempList=$(this).attr('id');
                
                $('div#group_'+tempList).addClass('grouphide');
                
	        }
         ); 
        
        showHideLeadCopy(thisList);
        $(this).removeClass('tab_off');
        $(this).addClass('tab_on');
        $('div#group_'+thisList).removeClass('grouphide');
        showHideNavButtons();
        setPagination();
        switch(currenttab){
            case 'tab1':
                googleEventTracker('DiscussionGuide', '1-TTYDAboutUC', 'Tools');
                break;
            case 'tab2':
                googleEventTracker('DiscussionGuide', '2-TTYDAboutLialda', 'Tools');
                break;
            case 'tab3':
                googleEventTracker('DiscussionGuide', '3-DoctorAskingYou', 'Tools');
                break;
            
        }
        
        return false;
    });
    //hide intro text
    function showHideLeadCopy(thisTab){
        $('p#leadcopy_tab1').addClass('hide');
        $('p#leadcopy_tab2').addClass('hide');
        $('p#leadcopy_tab3').addClass('hide');
        $('p#leadcopy_'+thisTab).removeClass('hide');
    }
    //print button
    $('img#btn_print').click(function() {
        bAllowClose=true;    

        var strBuilder = "<ul>";
        ///$("#printqContainer").append("<ul>");
        
        var elementCounter = 0;
        var ddgPrintList = "";
        var qTalkTo = "";
        var qTalkAbout = "";
        var qAskYou = "";
        $("tr[id^=sel_ddg_g1] .qtext").map(function(){
            if($(this).html().indexOf("INSERT_QUESTION") < 0 ){
                qTalkTo += "<li><span>" + $(this).text() + "</span></li>";        
            }
        });
        $("tr[id^=sel_ddg_g2] .qtext").map(function(){
            if($(this).html().indexOf("INSERT_QUESTION") < 0 ){
                qTalkAbout += "<li><span>" + $(this).text() + "</span></li>";        
            }
        });
        $("tr[id^=sel_ddg_g3] .qtext").map(function(){
            if($(this).html().indexOf("INSERT_QUESTION") < 0 ){
                qAskYou += "<li><span>" + $(this).text() + "</span></li>";        
            }
        });
        if(qTalkTo.length > 0){
            ddgPrintList += "<h2>Talk to Your Doctor About UC</h2>";
            ddgPrintList += "<ul>";
            ddgPrintList += qTalkTo;
            ddgPrintList += "</ul>";
        }
        if(qTalkAbout.length > 0){
            ddgPrintList += "<h2>Talk to Your Doctor About Lialda</h2>";
            ddgPrintList += "<ul>";
            ddgPrintList += qTalkAbout;
            ddgPrintList += "</ul>";
        }        
        
        if(qAskYou.length > 0){
            ddgPrintList += "<h2>What Your Doctor Should Be Asking You</h2>";
            ddgPrintList += "<ul>";
            ddgPrintList += qAskYou;
            ddgPrintList += "</ul>";
        }        
        
           
        $.post("/post/ddgHandler.ashx", {"questionId" : grabFormData()} ,function(data){});
        $("#printqContainer").html(ddgPrintList);
        $( "#ddgPrintContainer" ).jqprint();
        googleEventTracker('DiscussionGuide', '0-Button Print', 'Tools',totalSelected);
		googlePageView('/discussion/print');
        trackDDG();
        
    });
    function trackDDG(){
        //atlas tag tracker
        $.ajax({
			type: "POST",
			url: "/handlers/tag-tracker.ashx",
			data: "url=http://view.atdmt.com/action/dihshr_NEWLIC_092009_Build_Doc_Disc_Guide_COMPLETE",
			success: function(msg){
				
		    }
		});
		//DART tag tracker
        var dartURL=dartTagBuilder('http://fls.doubleclick.net/activityi;src=2386012;type=liald241;cat=liald681;ord=1;num=');
		$.ajax({
			type: "POST",
			url: "/handlers/tag-tracker.ashx",
			data: "url="+dartURL,
			success: function(msg){
				
		    }
		});
    }
    //email div
    $('img#btn_email').click(function() {
        $('div#ddg_emaildiv').addClass('flareshow');
        googleEventTracker('DiscussionGuide', '0-Button eMailTool', 'Tools',totalSelected);
        
    });
    
    $('img#ddg_flare_email_cancel').click(function() {
        $('div#ddg_emaildiv').removeClass('flareshow');
        
    });
    $('a#flare_email_close').click(function() {
        $('div#ddg_emaildiv').removeClass('flareshow');
        
    });
    
    $('a#flare_email_close_btn').click(function() {
        $('div#ddg_emaildiv').removeClass('flareshow');
    });
    
    $('img#ddg_flare_email_submit').click(function() {
        //validate form
        var mainDiv=$(this).parent().parent().parent();
        var bValid=true;
        var emailFromFName,emailToFName,emailFromAddress,emailToAddress;
        
        //validate first name
        var fieldValue=mainDiv.find('#ddg_email_fname1').val();
        emailFromFName=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#ddg_err_email_fname1').show();
            bValid=false;
        }
        else mainDiv.find('#ddg_err_email_fname1').hide();
        
        //validate first name of to field
        var fieldValue=mainDiv.find('#ddg_email_fname2').val();
        emailToFName=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#ddg_err_email_fname2').show();
            bValid=false;
        }
        else mainDiv.find('#ddg_err_email_fname2').hide();
        
        //validate email of sender
        emailFromAddress=fieldValue;
        var fieldValue=mainDiv.find('#ddg_email_email1').val();
        if(fieldValue==''){
            mainDiv.find('#ddg_err_email_email1').show();
            mainDiv.find('#ddg_err_email_email1_invalid').hide();
            bValid=false;
        }
        else if(!validateEmail(fieldValue)){
            mainDiv.find('#ddg_err_email_email1_invalid').show();
            mainDiv.find('#ddg_err_email_email1').hide();
            bValid=false;
        }
        else{
            mainDiv.find('#ddg_err_email_email1').hide();
            mainDiv.find('#ddg_err_email_email1_invalid').hide();
        }
        
        //validate email of to field
        var fieldValue=mainDiv.find('#ddg_email_email2').val();
        emailToAddress=fieldValue;
        if(fieldValue==''){
            mainDiv.find('#ddg_err_email_email2').show();
            mainDiv.find('#ddg_err_email_email2_invalid').hide();
            bValid=false;
        }
        else if(!validateEmail(fieldValue)){
            mainDiv.find('#ddg_err_email_email2_invalid').show();
            mainDiv.find('#ddg_err_email_email2').hide();
            bValid=false;
        }
        else{
            mainDiv.find('#ddg_err_email_email2').hide();
            mainDiv.find('#ddg_err_email_email2_invalid').hide();
        }
        
        if(!bValid)return;
        bAllowClose=true;
        
        $('div#ddg_email_step1').addClass('flarehide');
        //submit flare data to database
        $.post("/post/ddgHandler.ashx", {"questionId" : grabFormData()} ,function(data){});
         //send the email w/ ajax call, show success div when the response is received
        
        
        var sendtype=2; //
        $.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);
		}
		});
		
		googleEventTracker('DiscussionGuide', '0-Button Submit', 'Tools',totalSelected);
		googlePageView('/discussion/submit');
        
    });
});

function closeConfirm(){
    $('div#ddg_email_step1').removeClass('flarehide');
    $('div#ddg_email_confirmation').removeClass('flareshow');
    $('div#ddg_emaildiv').removeClass('flareshow');
}
function grabFormData(){
    var formData = new Array();
    $("div.selected").map(function(){
            formData.push( this.id);
    });
    return formData;

}