﻿
var site_functions = function()  {
   this.info_array = new Array();  
}

site_functions.prototype.hideInfo = function() {
    $("#topic_information #box_middle div[id*=info]").removeClass("selected"); 
}

site_functions.prototype.print = function ()  {    
    var temp= $("#sizer").html(); ; 
    $("#sizer").html(""); 
    window.print();  
    $("#sizer").html(temp);
}

site_functions.prototype.closeLayer = function () {
    $.unblockUI({ fadeOut: 200 }); 
    restorePageName();     
}

site_functions.prototype.showBladderLayer = function () {
    site.showLayer ('50%','506px','378px','100px 0px 0px -243px',"#popUp_bladder");
    layerTracking("Bladder Diagram layer",null,"Toviaz Unbranded");  
    $("div.blockUI.blockOverlay").click(function(){ $.unblockUI({ fadeOut: 200 }); restorePageName(); });  
}

site_functions.prototype.showLayer = function (left,width,height,margin,layerName) {
    $.blockUI.defaults.css.border = '0'; //
    $.blockUI.defaults.css.backgroundColor = 'transparent'; //
    $.blockUI.defaults.css.width = width;
    $.blockUI.defaults.css.height = height; // 378px
    $.blockUI.defaults.css.overflow = 'auto';
    $.blockUI.defaults.css.margin = margin;
    $.blockUI.defaults.css.padding = '0px';
    $.blockUI.defaults.css.left = left;   // must be dynamic
    $.blockUI.defaults.css.top = '40px';
    $.blockUI({
            message: $(layerName),
            css: { top: '40px' } 
    });
}  // show Layer 


/*
  Shows a second modal on screen. Should be used only if a modal is already showing 
  and a second one is needed */
site_functions.prototype.showSecondLayer = function (layer,zindex,width,top,left,height) {
  
  
  // Block UI doesn't allow to show 2 layers at the same time, 
  // emuling blockUI behavior manually:
  
  // getting 2 new layers to block the screen similar as blockUI
   var newLayer2 = $(".blockUI.blockOverlay").clone(); 
   var newLayer3 = $(".blockUI.blockMsg.blockPage").clone(); 

   //adding aditional class to diferentiate new additional layers
   $(newLayer2).addClass("aditional"); 
   $(newLayer3).addClass("aditional"); 
   
   // customizing new layers sizes 
   $(newLayer2).css("z-index",zindex); 
   $(newLayer3).css("width", width); 
   $(newLayer3).css("top",top); 
   $(newLayer3).css("left",left); 
   $(newLayer3).css("height",height); 
   $(newLayer3).css("z-index",(zindex+1)); 
   
   
   // appending new layers 
   $("body").append(newLayer2); 
   $("body").append(newLayer3); 
   
   //removing any div element into the cloned layer
   $(newLayer3).find("div").remove(); 
   
   // appending layer html to new layer
   $(newLayer3).append(layer); 
               
   // appending events to the new  layer   
   $("div.blockUI.blockOverlay.aditional,.close").click(function(){
          $(newLayer2).fadeOut("fast");
          $(newLayer3).fadeOut("fast");           
          $(newLayer2).remove(); 
          $(newLayer3).remove();  
   }); 
   
   return newLayer3;  // return new layer if needed to be cutomized outside this function 
        
} // show second layer 

/*function for the information tabs*/
var tabs_functions = function () { }

tabs_functions.prototype.click  = function(index,clicked) { 
    
   if ($("ul#topic_options").length) {
   
       $("ul#topic_options li.selected").removeClass("selected");  
       $(clicked).addClass("selected"); 
  
       site.hideInfo();  
       var info_show = "#topic_information #box_middle #info"+(index+1); 
       $(info_show).addClass("selected");
  
       tabs.moveArrow(index);  
       var name = $(clicked).find('a:first').attr('name'); 
       
       sendPageTracking(name,null,"Toviaz Unbranded");  
        
       if (index>0) {
          window.location.hash="section"+index; 
       } //if
   } // if
}

tabs_functions.prototype.next = function ()  {
   var index = $("ul#topic_options li").index($("#topic_options li.selected"));  
   if (index+1 > 0 && index+1 < 4) {
        window.location.hash="section"+(index+1);     
   }  //  if 
}

tabs_functions.prototype.focusSection = function (pageLoad)   { 
   var index = location.hash.replace("#section","");
    
   if (index!="" && index >= 0 && index < 4) { 
        tabs.click (parseInt(index), $("#topic_options").children().get(index)); 
   }
   else if(pageLoad){
        tabs.click (parseInt(0), $("#topic_options").children().get(0)); 
   } 
            
}  

tabs_functions.prototype.moveArrow = function (tab)  {
    $("ul#topic_options li a img").remove(); 
    var color =  $("ul#topic_options").attr('class');  
    var imgTag =  '<img src="/images/img-arrow-'+color+'-bg.gif"/>'
    var element =  $("#topic_options").children().get(tab);  
    $(imgTag).insertBefore($(element).find("a span"));
} // move arrow

/*
   intersitial: 
   var functions that controls the intersitial layer before leaving the landing page. 
   Launches the intersitial layer when is necesary, set the new window location based on a specified URL 
*/
var intersitial = function() {}

intersitial.prototype.exit_site =  function(url) {
    layerTracking("Interstitial Page",null,"Toviaz Unbranded", "Interstitial Page") ; 
    this.interblockLayer(true, '#intersitial','378px');
    $("div.blockUI.blockOverlay").click(function(){ $.unblockUI({ fadeOut: 200 });restorePageName(); });  
    $("div#middle_intersitial a.redirect").attr('href', url );    
} 

intersitial.prototype.nonFizer = function(url) {
    layerTracking("Interstitial Page Non Pfizer",null,"Toviaz Unbranded", "Interstitial Page Non Pfizer") ; 
    this.interblockLayer(true, '#inter_nonPfizer','404px');
    $("div.blockUI.blockOverlay").click(function(){ $.unblockUI({ fadeOut: 200 }); restorePageName(); });  
    $("div#middle_intersitial a.redirect").attr('href', url );  
}  

intersitial.findOutMore = function ()  {
    $("body").fadeOut(200,function() {
           quizLayer.closeQuiz();  
           this.exit_site('http://www.toviaz.com/about-toviaz.aspx?tovsrc=TOVW10024936&cmp=Web-OAB');        
    }); 
                                                
   //  this.exit_site('http://www.toviaz.com/about-toviaz.aspx?tovsrc=TOVW10024936&cmp=Web-OAB');        
   
}

intersitial.prototype.interblockLayer = function (shouldBlock, inputElementId, height)  {
    site.showLayer ('50%','366px',height,'100px 0px 0px -172px',inputElementId);
}

intersitial.prototype.goContinue = function (element)  {
    window.location.href = $(element).attr('href');  
}


var quiz =  function ()  { }

quiz.prototype.takeSymptomsQuiz = function  ()  {
    this.blockQuestionChoices(true, '#divSymptomsScreen');
    $("div.blockUI.blockOverlay").click(function(){ $.unblockUI({ fadeOut: 200 }); restorePageName(); });  
    $('#quiz_iframe')[0].src='/quiz_iframe.aspx';
}

quiz.prototype.closeQuiz = function  ()  {
    $.unblockUI({ fadeOut: 200 });    
}

quiz.prototype.blockQuestionChoices = function (shouldBlock, inputElementId) {
     var left = ($(window).width() - 911) /2;
     site.showLayer(left,'913px','680px','0 0 0 -0px',inputElementId); 
}


var email_friend = function () {}

email_friend.prototype.openLayer = function ()  {
    site.showLayer('50%','486px','378px','100px 0px 0px -242px',"#email_layer");  
    $("div.blockUI.blockOverlay").click(function(){ email.clean(); $.unblockUI({ fadeOut: 200 }); restorePageName(); });  
}

email_friend.prototype.validateEMailLayer = function () {
    var name =  this.validateField($("#u_name"),this.blankSpace); 
    
    var mail =  this.validateField($("#u_email"),this.blankSpace) &&         
                this.validateField($("#u_email"),this.email); 
                      
    var f_name= this.validateField($("#f_name"),this.blankSpace); 
    
    var f_mail =  this.validateField($("#f_email"),this.blankSpace)&&    
                  this.validateField($("#f_email"),this.email);

    if (name && mail && f_name && f_mail) {
        $.ajax({
            url: "/Controller.aspx",
            data: "hdnOrchID=ETP&txtsendername=" + $("#f_name").val() + "&txtsenderemail=" + $("#f_email").val() + "&txtrecipientname=" + $("#u_name").val() + "&txtrecipientemail=" + $("#u_email").val() + "&hdnPreviousURL=" + window.location.href,
            type: 'POST',
            cache: false,
            success: function(data) {
                email.clean();
                site.closeLayer();  
            }
        });
    } // if 
    return false;        
} //  

email_friend.prototype.validateField = function (element,validation) {
    if (validation(element)) {
           return true; 
    } // if
    $("#"+element.attr("id")+"_msj:hidden").fadeIn(200); 
    return false;          
}

email_friend.prototype.blankSpace = function (element) {
    if ($(element).attr("value") != "") {
          return true; 
    }
    $("#"+element.attr("id")+"_msj").html("&nbsp; *"); 
    return false;  
}

email_friend.prototype.email = function (element) {
    var filter = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
    if (filter.test($(element).attr("value"))) {
         return true;
    }
    $("#"+element.attr("id")+"_msj").html("&nbsp;  *"); 
    return false;  
}

email_friend.prototype.type = function (element) {
    $("#"+element.attr("id")+"_msj").fadeOut(200); 
}

email_friend.prototype.clean = function () {
    $("#email_layer form#email")[0].reset();  
}

/*Function to show an aditional layer when user clicks on FindOutMore link
  Intersitial layer should show in adition to the OAB quiz layer that is already up.
*/
function findOutMore(url) {

   var layer = site.showSecondLayer($("body #intersitial").clone(),"1011","365px","169px","428.5px","392px");  
   
   // styling new intersitial html to the new layer
   $(layer).find("#intersitial").css("z-index","1040"); 
   $(layer).find("#intersitial").css("display","block"); 
   $(layer).find("#intersitial .redirect").attr("href",url);
   $(layer).find("#intersitial .redirect").click (function(){
        // sendTracking("Intersitial", "Interstitial continue", null ); 
         sendTracking(null,"Interstitial continue","Intersitial Page", null);
         //linkNormalTracking(); 
   });    
   
}//

var site = new site_functions(); 
var tabs = new tabs_functions (); 
var inter = new intersitial(); 
var quizLayer= new quiz();   
var email = new email_friend ();  
var f_tracking = new floodlight();  

$(document).ready (function() {
     var index=0;
     tabs.focusSection(false); 
     f_tracking.init(); 
     
     $("a").click (function () {
         
         linkNormalTracking();  
     }); 
   
     $(window).hashchange(function () {
          tabs.focusSection(true);
     });  
        
     $("#topic_options li a").click(function(ev){
         ev.preventDefault(); 
         var element =  $(this).is("li")?$(this):$(this).parent() ;  
         index=  $("#topic_options li").index(element);
         sendTracking(null, $(element).find("a").attr("name"), null ); 
         window.location.hash="section"+index;     
     });
     
           
     $("#topic_information a.next").click (function (ev) {
          ev.preventDefault(); 
          sendTracking(null, $(this).attr("name"), null, null);
          tabs.next();  
     });  
     
     $("a.intersitial").click (function(){
          sendTracking(null, $(this).attr("name"), null ); 
          inter.exit_site($(this).attr("href")); 
     });
     
     $("a.inter_nonPfizer").click(function(){
          sendTracking(null, $(this).attr("name"), null ); 
          inter.nonFizer($(this).attr("href"));  
     });  
     
     
     $("div#intersitial a.close, div#inter_nonPfizer a.close, div#popUp_bladder a.close").click (function(){
          site.closeLayer();     
     }); 
     
     $("div#intersitial a.redirect").click (function(ev){
          ev.preventDefault(); 
          f_tracking.doTracking(0, inter.goContinue($(this))); 
     }); 
         
     $("div#email_layer a.close").click (function() {
          email.clean();
          site.closeLayer();  
     });  
     
     $("div#email_layer .email_submit").click(function() {
          sendTracking(null, "Email interstitial send", null, null);
     }); 
     
     $("a.quiz").click (function(ev) {
          ev.preventDefault();
          sendTracking(null, $(this).attr("name"), null );  
          layerTracking("OAB Symptom Quiz Layer",null,"Toviaz Unbranded","Does Having Children Cause OAB?");
          quizLayer.takeSymptomsQuiz();
     });
     
     $("a.email").click (function() {
           sendTracking(null, $(this).attr("name"), null );  
           email.openLayer();
           layerTracking("Email Intersitital",null,"Toviaz Unbranded");  
     });  
     
     $("form#email [id*=u_], form#email [id*=f_]").keypress(function(){
           email.type($(this)); 
     }); 
     
     $("div#divSymptomsScreen a.close").click (function () {
            quizLayer.closeQuiz();  
     });
     
      $("div#step3 a.findOutMore").click(function(ev) { 
            
            ev.preventDefault();
            sendTracking(null, $(this).attr("name"), null ); 
            window.parent.findOutMore($(this).attr("href"));  
            
     });   
     
     $("a.printer").click (function(ev){
            ev.preventDefault();
            sendTracking(null, $(this).attr("name"), null ); 
            site.print();  
     });  
    
    $(".scodeTracking").click(function() { sendTracking(null, $(this).attr("name"), null, null); });


     /*tracking text sizer*/
     $("#lnkSmall").click (function(e){
   //  e.preventDefault();  
     sendTracking(null, "Small font" , null , null); 
     });
        
     $("#lnkMedium").click (function(e){ 
    // e.preventDefault();  
     sendTracking(null, "Medium font" , null , null); 
     });
     
     $("#lnkLarge").click(function(e){ 
     // e.preventDefault();  
      sendTracking(null, "Large font" , null , null);
      }); 
    /*tracking text sizer*/ 

     $(".bladder_picture").click (function(){
        sendTracking(null, $(this).attr("name"), null ); 
        site.showBladderLayer();  
     }); 
     
     $("#tabs ul li").hover (function() { 
          $(this).addClass("hover"); } , 
                             function() {
          $(this).removeClass("hover");}
     ); 
         
});  // document ready
