var webaddr = SITEROOT;
var schedulecall_service_url     = SITEROOT + "/webservices/schedulecall";
var show_req_result;
var helpType = "";
var timeZone = "";
var callWhen = "";
var isToday = false;
var app = "";
var pivEmailStat = false;
var c2callsubmitted = false;

/* Following boolean variables are inserted into page from back end
 * and represent whether or not each type of call center is current open
 * insurance/general call center closed 8pm - 8am EST weekdays, and all day sat, sun
 * med call center closed 11pm - 8am EST all days
 * 
 * var aOpenNow
 * var bOpenNow
 * 
 * Following boolean variables are inserted into page from back end    
 * and represent whether schedule a call window was opened within 1 hr of closing time
 * "We appreciate your patience" msg to appear 1 hr before closing
 *
 * var aClosingSoon
 * var bClosingSoon
 * 
*/


/*
var diffFromEst = 0;

    switch(timeZone) {
        case "ATLT":
            diffFromEst = 1;
        case "ET":
            diffFromEst = 0;
        case "CT":
            diffFromEst = -1;
        case "MT":
            diffFromEst = -2;
        case "PT":
            diffFromEst = -3;
        case "ALT":
            diffFromEst = -4;
        case "HWT":
            diffFromEst = -6;
        default:
            diffFromEst = 0;
    }
        
    var now = new Date();
    var nowHr = now.getHours();     
    var estHr = nowHr - diffFromEst;
    
    var nowDay = now.getDay();
    
    // insurance/general call center closed 8pm - 8am EST weekdays, and all day sat, sun
    var insgenOpen = (estHr >= 8 && estHr < 20 && nowDay != 6 && nowDay != 0) ? true : false;

    // med call center closed 11pm - 8am EST all days
    var medOpen = (estHr >= 8 && estHr < 23);                             
    
    // "We appreciate your patience" msg to appear 1 hr before closing
    var insgenLastHr = (estHr >= 19 && estHr < 20); 
    var medLastHr = (estHr >= 22 && estHr < 23);  
    
*/
   
var disableAll = function () {
         $('.btn_schedulecall').css({ opacity: 0.5 });
        //$('.btn_schedulecall').fadeTo('fast', 0.5, function() {
        //});
 
}


var submit_schedulecall = function(params){
    if (this.c2callsubmitted || this.pivEmailStat)   {
       return false;
    }    
    this.c2callsubmitted = true;
    var q = "";
    disableAll();
    $('#busyc2call').show();
    evokeModalDialog.setHideOnOutsideClick(false);
    evokeModalDialog.show('busyc2call'); 
    var fname = $('#frm_c_firstname').val();
    var lname = $('#frm_c_lastname').val();
    var email = "";
    if(app != 'piv') {
        email = $('#frm_c_email').val();
    } else {
        email = $('#frm_c_email_piv').val();
    }
    var phone = $('#frm_c_phone1').val() + $('#frm_c_phone2').val() + $('#frm_c_phone3').val();
    var atype = "";
    if( app == 'piv') {
        atype = 'INSURANCE';
    } else {
        atype = $('#frm_c_typeassistance').val().toUpperCase();
    }
    var tzone = $('#frm_c_timezone').val();
    var cwhen = $('input[name="frm_c_callwhen"]:checked').val();
    var cdate = $('#frm_c_selectdate').val(); 
    var ctime = $('#frm_c_selecttime').val();
    
    cdate_day_stripped = cdate.substring(cdate.indexOf(',') + 1);

    params = "frm_c_firstname=" + fname
        + "&frm_c_lastname=" + lname
        + "&frm_c_email=" + email
        + "&frm_c_phone1=" + phone
        + "&frm_c_typeassistance=" + atype
        + "&frm_c_timezone=" + tzone
        + "&frm_c_callwhen=" + cwhen
        + "&frm_c_selecttime=" + ctime
        + "&frm_c_selectdate=" + cdate_day_stripped;    

    q = "?" + params;
    try {
         $.getJSON(schedulecall_service_url + q, function(json) { 
         
            var json_status_code = json.meta_header.status_code;  // 1 = SUCCESS (McKesson web service called successfully 
                                                                  //        and email sent, if email address had been specified)
                                                                  // 2 = ERROR (anything went wrong)
                                                                  
            var json_status_qualification = json.meta_header.status_qualification;
            req_result = json_status_code + ", " + json_status_qualification;
            if (cwhen == 'asap') {
                $('#firstNameASAP').html(fname);
                var popup = "schedulecall_thanks_asap_popper";
                c2cTrack('asap');
            } else {
                $('#firstNameSpec').html(fname);
                cdate_full = formatCallDate(cdate);
                $('#dayDateSpec').html(cdate_full);                
                  
                time_full = ctime + ' (' + timeZone + ')';
                $('#timeSpec').html(time_full);                        
                               
                var popup = "schedulecall_thanks_spec_popper";

                c2cTrack('scheduled');
            }
            evokeModalDialog.setHideOnOutsideClick(true);
            evokeModalDialog.hideinner("busyc2call");
            evokeModalDialog.hideinner("schedulecall_popper");
            displayConfirmPopup(json_status_code, popup);
        } );
    } catch(error){
        alert('error:' + error);
    }
}

var displayConfirmPopup = function(status_code, popup) {
    //alert(popup);
    evokeModalDialog.hide("schedulecall_popper");
    
    evokeModalDialog.setBgColor("#ffffff");
    evokeModalDialog.show(popup);
}

var formatCallDate = function(cd) {
    var d = new Date();
    var yr = d.getFullYear();
    cd = cd + ', '+yr;
    //alert(cd);
    var date = new Date(cd);    
    //alert(date);
    //alert(date.toLocaleDateString());
    return date.toLocaleDateString();    
}

var pop_schedulecall = function(event)
{
    //alert('pop_schedulecall');
    evokeModalDialog.setBgColor("#ffffff");
    evokeModalDialog.show("schedulecall_popper");
    
    popper_init();
    if(event!=null) event.preventDefault();
}


var toggleTooLate = function()
{
    //var cWhen = $('input[name="frm_c_callwhen"]').val();
    cWhen = (callWhen != 'undefined' && callWhen != null) ? callWhen.toLowerCase() : '';
    
    var aType = "";
    if( app == 'piv') {
       aType = 'insurance';
    } else {
        aType = $('#frm_c_typeassistance').val();
    }
   
    //var aType = $('#frm_c_typeassistance').val();
    aType = aType.toLowerCase();
    //alert(aClosingSoon);
    
    if (cWhen == 'asap') {
        $('tr#schedulecall_date_fields').hide();
        $('#frm_c_selectdate').attr('disabled','disabled');
        $('#frm_c_selecttime').attr('disabled','disabled');
        $('#schedulecall_date_fields').parents('.error_container_allvalid').removeClass('error_on');
        $('#schedulecall_date_fields').find('.error_container').removeClass('error_on');
        if ((aType == 'insurance' && bClosingSoon) || (aType != 'insurance' && aClosingSoon)) {
            $('tr#toolate_row').show();
            $('tr#schedulecall_date_fields').hide();
            $('.divider_line').addClass('toolate');
        } else {
            $('tr#toolate_row').hide();
            $('tr#schedulecall_date_fields').show();
            $('.divider_line').removeClass('toolate');
        }	
    } else {
        $('tr#toolate_row').hide();
        $('tr#schedulecall_date_fields').show();
        $('.divider_line').removeClass('toolate');
        $('#frm_c_selectdate').removeAttr('disabled');
        $('#frm_c_selecttime').removeAttr('disabled');
    }
}


var toggleWhenFields = function() {
    /* offshore tests */    
    var testClosedTimes = getQueryValue('t');
    if( testClosedTimes == 'closeb') {
        bOpenNow = false;
    } else if( testClosedTimes == 'closea') {
        aOpenNow = false;
    }

    //alert(" toggleWhenFields : bOpennow=" + bOpenNow + "  aOpenNow=" + aOpenNow);
    if( app == 'piv') {
        aType = 'insurance';
    } else {
        aType = $('#frm_c_typeassistance').val();
    }
    if($('#frm_c_typeassistance').val() != 'undefined' && $('#frm_c_typeassistance').val() != null) {
        var aType = $('#frm_c_typeassistance').val();
        aType = aType.toLowerCase();
                if ((aType == 'insurance' && !bOpenNow) || (aType != 'insurance' && !aOpenNow)) {
                    $('.asap_row').hide();
                    $('tr#toolate_row').hide();
                    $('.container_body').removeClass('divider_line');
                    $('tr#schedulecall_date_fields').show();
                } else {
                    $('.asap_row').show();
                    $('.right_container .container_body').addClass('divider_line');
                    $('tr#schedulecall_date_fields').show();
                    $('.divider_line').removeClass('toolate');
                    $('tr#toolate_row').hide();
                }   
    }  else {
                if (aType == 'insurance' && !bOpenNow ) {
                    $('.asap_row').hide();
                    $('tr#toolate_row').hide();
                    $('.container_body').removeClass('divider_line');
                    $('tr#schedulecall_date_fields').show();
                } else {
                    $('.asap_row').show();
                    $('.right_container .container_body').addClass('divider_line');
                    $('tr#schedulecall_date_fields').show();
                    $('.divider_line').removeClass('toolate');
                    $('tr#toolate_row').hide();
                }   
        
    }
}

var enableWhenFields = function() {
    if (helpType == "" || timeZone == "") {
        $('.when_fields').addClass('formAreaDisabled');
        $('*[name=frm_c_callwhen]').attr('disabled','disabled');
        $('*[name=frm_c_callwhen]').attr('checked', false); 
        $('#frm_c_selectdate').attr('disabled','disabled');
        $('#frm_c_selecttime').attr('disabled','disabled');
    } else {
        $('.when_fields').removeClass('formAreaDisabled');
        $('*[name=frm_c_callwhen]').removeAttr('disabled');
        $('#frm_c_selectdate').removeAttr('disabled');
        $('#frm_c_selecttime').removeAttr('disabled');
        var aType = "";
        if( app != 'piv') {
           aType = $('#frm_c_typeassistance').val();
        } else {
           aType = 'insurance';
        }
        aType = aType.toLowerCase();
        if ((aType == 'insurance' && !bOpenNow) || (aType != 'insurance' && !aOpenNow)) {
            //$('#cb_schedulecall_anothertime').show();
            //$('*[name=frm_c_callwhen]').prev('.radio').css('background-position','0px -60px');
            $('input#cb_schedulecall_anothertime').attr('checked',true);
        }
    }
    
    
}

var updateDateTimeSelects = function() {   
   if( app == 'piv') {
    //updateDaySelect($("select#frm_c_typeassistance").val());
        updateDaySelect('insurance');
            //alert('out1');

   } else {
        updateDaySelect($("select#frm_c_typeassistance").val());
   }
   updateTimeSelect($("select#frm_c_timezone").val());
 
 
   var aType = "";
   if( app == 'piv') {
       aType = 'insurance';
   } else {
       aType = $('#frm_c_typeassistance').val();
   }
    //    var aType = $('#frm_c_typeassistance').val();
    aType = aType.toLowerCase();
        
    if ((aType == 'insurance' && bOpenNow) || (aType != 'insurance' && aOpenNow)) {        
//        $('*[name=frm_c_callwhen]').prev('.radio').css('background-position','0px -60px');
        $('*[name=frm_c_callwhen]').attr('checked', false); 
    }
}

var updateTimeSelect = function(tzone) {
    tz = $('#frm_c_timezone').val();
    timeZone = (tz == '--') ? "" : tz;  // set timeZone to empty string if it's the default blank select value "--"
    enableWhenFields();    
/*    
    var aAtlanticHours=['8:00 A.M., AST','8:15 A.M., AST','8:30 A.M., AST','8:45 A.M., AST','9:00 A.M., AST','9:15 A.M., AST','9:30 A.M., AST','9:45 A.M., AST','10:00 A.M., AST','10:15 A.M., AST','10:30 A.M., AST','10:45 A.M., AST','11:00 A.M., AST','11:15 A.M., AST','11:30 A.M., AST','11:45 A.M., AST','12:00 P.M., AST','12:15 P.M., AST','12:30 P.M., AST','12:45 P.M., AST','1:00 P.M., AST','1:15 P.M., AST','1:30 P.M., AST','1:45 P.M., AST','2:00 P.M., AST','2:15 P.M., AST','2:30 P.M., AST','2:45 P.M., AST','3:00 P.M., AST','3:15 P.M., AST','3:30 P.M., AST','3:45 P.M., AST','4:00 P.M., AST','4:15 P.M., AST','4:30 P.M., AST','4:45 P.M., AST','5:00 P.M., AST','5:15 P.M., AST','5:30 P.M., AST','5:45 P.M., AST','6:00 P.M., AST','6:15 P.M., AST','6:30 P.M., AST','6:45 P.M., AST','7:00 P.M., AST','7:15 P.M., AST','7:30 P.M., AST','7:45 P.M., AST','8:00 P.M., AST','8:15 P.M., AST','8:30 P.M., AST','8:45 P.M., AST','9:00 P.M., AST','9:15 P.M., AST','9:30 P.M., AST','9:45 P.M., AST','10:00 P.M., AST','10:15 P.M., AST','10:30 P.M., AST','10:45 P.M., AST'];
    var aEasternHours=['8:00 A.M., EDT','8:15 A.M., EDT','8:30 A.M., EDT','8:45 A.M., EDT','9:00 A.M., EDT','9:15 A.M., EDT','9:30 A.M., EDT','9:45 A.M., EDT','10:00 A.M., EDT','10:15 A.M., EDT','10:30 A.M., EDT','10:45 A.M., EDT','11:00 A.M., EDT','11:15 A.M., EDT','11:30 A.M., EDT','11:45 A.M., EDT','12:00 P.M., EDT','12:15 P.M., EDT','12:30 P.M., EDT','12:45 P.M., EDT','1:00 P.M., EDT','1:15 P.M., EDT','1:30 P.M., EDT','1:45 P.M., EDT','2:00 P.M., EDT','2:15 P.M., EDT','2:30 P.M., EDT','2:45 P.M., EDT','3:00 P.M., EDT','3:15 P.M., EDT','3:30 P.M., EDT','3:45 P.M., EDT','4:00 P.M., EDT','4:15 P.M., EDT','4:30 P.M., EDT','4:45 P.M., EDT','5:00 P.M., EDT','5:15 P.M., EDT','5:30 P.M., EDT','5:45 P.M., EDT','6:00 P.M., EDT','6:15 P.M., EDT','6:30 P.M., EDT','6:45 P.M., EDT','7:00 P.M., EDT','7:15 P.M., EDT','7:30 P.M., EDT','7:45 P.M., EDT','8:00 P.M., EDT','8:15 P.M., EDT','8:30 P.M., EDT','8:45 P.M., EDT','9:00 P.M., EDT','9:15 P.M., EDT','9:30 P.M., EDT','9:45 P.M., EDT','10:00 P.M., EDT','10:15 P.M., EDT','10:30 P.M., EDT','10:45 P.M., EDT'];
    var aCentralHours=['7:00 A.M., CDT','7:15 A.M., CDT','7:30 A.M., CDT','7:45 A.M., CDT','8:00 A.M., CDT','8:15 A.M., CDT','8:30 A.M., CDT','8:45 A.M., CDT','9:00 A.M., CDT','9:15 A.M., CDT','9:30 A.M., CDT','9:45 A.M., CDT','10:00 A.M., CDT','10:15 A.M., CDT','10:30 A.M., CDT','10:45 A.M., CDT','11:00 A.M., CDT','11:15 A.M., CDT','11:30 A.M., CDT','11:45 A.M., CDT','12:00 P.M., CDT','12:15 P.M., CDT','12:30 P.M., CDT','12:45 P.M., CDT','1:00 P.M., CDT','1:15 P.M., CDT','1:30 P.M., CDT','1:45 P.M., CDT','2:00 P.M., CDT','2:15 P.M., CDT','2:30 P.M., CDT','2:45 P.M., CDT','3:00 P.M., CDT','3:15 P.M., CDT','3:30 P.M., CDT','3:45 P.M., CDT','4:00 P.M., CDT','4:15 P.M., CDT','4:30 P.M., CDT','4:45 P.M., CDT','5:00 P.M., CDT','5:15 P.M., CDT','5:30 P.M., CDT','5:45 P.M., CDT','6:00 P.M., CDT','6:15 P.M., CDT','6:30 P.M., CDT','6:45 P.M., CDT','7:00 P.M., CDT','7:15 P.M., CDT','7:30 P.M., CDT','7:45 P.M., CDT','8:00 P.M., CDT','8:15 P.M., CDT','8:30 P.M., CDT','8:45 P.M., CDT','9:00 P.M., CDT','9:15 P.M., CDT','9:30 P.M., CDT','9:45 P.M., CDT'];
    var aMountainHours=['6:00 A.M., MDT','6:15 A.M., MDT','6:30 A.M., MDT','6:45 A.M., MDT','7:00 A.M., MDT','7:15 A.M., MDT','7:30 A.M., MDT','7:45 A.M., MDT','8:00 A.M., MDT','8:15 A.M., MDT','8:30 A.M., MDT','8:45 A.M., MDT','9:00 A.M., MDT','9:15 A.M., MDT','9:30 A.M., MDT','9:45 A.M., MDT','10:00 A.M., MDT','10:15 A.M., MDT','10:30 A.M., MDT','10:45 A.M., MDT','11:00 A.M., MDT','11:15 A.M., MDT','11:30 A.M., MDT','11:45 A.M., MDT','12:00 P.M., MDT','12:15 P.M., MDT','12:30 P.M., MDT','12:45 P.M., MDT','1:00 P.M., MDT','1:15 P.M., MDT','1:30 P.M., MDT','1:45 P.M., MDT','2:00 P.M., MDT','2:15 P.M., MDT','2:30 P.M., MDT','2:45 P.M., MDT','3:00 P.M., MDT','3:15 P.M., MDT','3:30 P.M., MDT','3:45 P.M., MDT','4:00 P.M., MDT','4:15 P.M., MDT','4:30 P.M., MDT','4:45 P.M., MDT','5:00 P.M., MDT','5:15 P.M., MDT','5:30 P.M., MDT','5:45 P.M., MDT','6:00 P.M., MDT','6:15 P.M., MDT','6:30 P.M., MDT','6:45 P.M., MDT','7:00 P.M., MDT','7:15 P.M., MDT','7:30 P.M., MDT','7:45 P.M., MDT','8:00 P.M., MDT','8:15 P.M., MDT','8:30 P.M., MDT','8:45 P.M., MDT'];
    var aPacificHours=['5:00 A.M., PDT','5:15 A.M., PDT','5:30 A.M., PDT','5:45 A.M., PDT','6:00 A.M., PDT','6:15 A.M., PDT','6:30 A.M., PDT','6:45 A.M., PDT','7:00 A.M., PDT','7:15 A.M., PDT','7:30 A.M., PDT','7:45 A.M., PDT','8:00 A.M., PDT','8:15 A.M., PDT','8:30 A.M., PDT','8:45 A.M., PDT','9:00 A.M., PDT','9:15 A.M., PDT','9:30 A.M., PDT','9:45 A.M., PDT','10:00 A.M., PDT','10:15 A.M., PDT','10:30 A.M., PDT','10:45 A.M., PDT','11:00 A.M., PDT','11:15 A.M., PDT','11:30 A.M., PDT','11:45 A.M., PDT','12:00 P.M., PDT','12:15 P.M., PDT','12:30 P.M., PDT','12:45 P.M., PDT','1:00 P.M., PDT','1:15 P.M., PDT','1:30 P.M., PDT','1:45 P.M., PDT','2:00 P.M., PDT','2:15 P.M., PDT','2:30 P.M., PDT','2:45 P.M., PDT','3:00 P.M., PDT','3:15 P.M., PDT','3:30 P.M., PDT','3:45 P.M., PDT','4:00 P.M., PDT','4:15 P.M., PDT','4:30 P.M., PDT','4:45 P.M., PDT','5:00 P.M., PDT','5:15 P.M., PDT','5:30 P.M., PDT','5:45 P.M., PDT','6:00 P.M., PDT','6:15 P.M., PDT','6:30 P.M., PDT','6:45 P.M., PDT','7:00 P.M., PDT','7:15 P.M., PDT','7:30 P.M., PDT','7:45 P.M., PDT'];
    var aAlaskaHours=['4:00 A.M., AKDT','4:15 A.M., AKDT','4:30 A.M., AKDT','4:45 A.M., AKDT','5:00 A.M., AKDT','5:15 A.M., AKDT','5:30 A.M., AKDT','5:45 A.M., AKDT','6:00 A.M., AKDT','6:15 A.M., AKDT','6:30 A.M., AKDT','6:45 A.M., AKDT','7:00 A.M., AKDT','7:15 A.M., AKDT','7:30 A.M., AKDT','7:45 A.M., AKDT','8:00 A.M., AKDT','8:15 A.M., AKDT','8:30 A.M., AKDT','8:45 A.M., AKDT','9:00 A.M., AKDT','9:15 A.M., AKDT','9:30 A.M., AKDT','9:45 A.M., AKDT','10:00 A.M., AKDT','10:15 A.M., AKDT','10:30 A.M., AKDT','10:45 A.M., AKDT','11:00 A.M., AKDT','11:15 A.M., AKDT','11:30 A.M., AKDT','11:45 A.M., AKDT','12:00 P.M., AKDT','12:15 P.M., AKDT','12:30 P.M., AKDT','12:45 P.M., AKDT','1:00 P.M., AKDT','1:15 P.M., AKDT','1:30 P.M., AKDT','1:45 P.M., AKDT','2:00 P.M., AKDT','2:15 P.M., AKDT','2:30 P.M., AKDT','2:45 P.M., AKDT','3:00 P.M., AKDT','3:15 P.M., AKDT','3:30 P.M., AKDT','3:45 P.M., AKDT','4:00 P.M., AKDT','4:15 P.M., AKDT','4:30 P.M., AKDT','4:45 P.M., AKDT','5:00 P.M., AKDT','5:15 P.M., AKDT','5:30 P.M., AKDT','5:45 P.M., AKDT','6:00 P.M., AKDT','6:15 P.M., AKDT','6:30 P.M., AKDT','6:45 P.M., AKDT'];
    var aHawaiiHours=['2:00 A.M., HST','2:15 A.M., HST','2:30 A.M., HST','2:45 A.M., HST','3:00 A.M., HST','3:15 A.M., HST','3:30 A.M., HST','3:45 A.M., HST','4:00 A.M., HST','4:15 A.M., HST','4:30 A.M., HST','4:45 A.M., HST','5:00 A.M., HST','5:15 A.M., HST','5:30 A.M., HST','5:45 A.M., HST','6:00 A.M., HST','6:15 A.M., HST','6:30 A.M., HST','6:45 A.M., HST','7:00 A.M., HST','7:15 A.M., HST','7:30 A.M., HST','7:45 A.M., HST','8:00 A.M., HST','8:15 A.M., HST','8:30 A.M., HST','8:45 A.M., HST','9:00 A.M., HST','9:15 A.M., HST','9:30 A.M., HST','9:45 A.M., HST','10:00 A.M., HST','10:15 A.M., HST','10:30 A.M., HST','10:45 A.M., HST','11:00 A.M., HST','11:15 A.M., HST','11:30 A.M., HST','11:45 A.M., HST','12:00 P.M., HST','12:15 P.M., HST','12:30 P.M., HST','12:45 P.M., HST','1:00 P.M., HST','1:15 P.M., HST','1:30 P.M., HST','1:45 P.M., HST','2:00 P.M., HST','2:15 P.M., HST','2:30 P.M., HST','2:45 P.M., HST','3:00 P.M., HST','3:15 P.M., HST','3:30 P.M., HST','3:45 P.M., HST','4:00 P.M., HST','4:15 P.M., HST','4:30 P.M., HST','4:45 P.M., HST'];
    
    var bAtlanticHours=['8:00 A.M., AST','8:15 A.M., AST','8:30 A.M., AST','8:45 A.M., AST','9:00 A.M., AST','9:15 A.M., AST','9:30 A.M., AST','9:45 A.M., AST','10:00 A.M., AST','10:15 A.M., AST','10:30 A.M., AST','10:45 A.M., AST','11:00 A.M., AST','11:15 A.M., AST','11:30 A.M., AST','11:45 A.M., AST','12:00 P.M., AST','12:15 P.M., AST','12:30 P.M., AST','12:45 P.M., AST','1:00 P.M., AST','1:15 P.M., AST','1:30 P.M., AST','1:45 P.M., AST','2:00 P.M., AST','2:15 P.M., AST','2:30 P.M., AST','2:45 P.M., AST','3:00 P.M., AST','3:15 P.M., AST','3:30 P.M., AST','3:45 P.M., AST','4:00 P.M., AST','4:15 P.M., AST','4:30 P.M., AST','4:45 P.M., AST','5:00 P.M., AST','5:15 P.M., AST','5:30 P.M., AST','5:45 P.M., AST','6:00 P.M., AST','6:15 P.M., AST','6:30 P.M., AST','6:45 P.M., AST','7:00 P.M., AST','7:15 P.M., AST','7:30 P.M., AST','7:45 P.M., AST'];
    var bEasternHours=['8:00 A.M., EDT','8:15 A.M., EDT','8:30 A.M., EDT','8:45 A.M., EDT','9:00 A.M., EDT','9:15 A.M., EDT','9:30 A.M., EDT','9:45 A.M., EDT','10:00 A.M., EDT','10:15 A.M., EDT','10:30 A.M., EDT','10:45 A.M., EDT','11:00 A.M., EDT','11:15 A.M., EDT','11:30 A.M., EDT','11:45 A.M., EDT','12:00 P.M., EDT','12:15 P.M., EDT','12:30 P.M., EDT','12:45 P.M., EDT','1:00 P.M., EDT','1:15 P.M., EDT','1:30 P.M., EDT','1:45 P.M., EDT','2:00 P.M., EDT','2:15 P.M., EDT','2:30 P.M., EDT','2:45 P.M., EDT','3:00 P.M., EDT','3:15 P.M., EDT','3:30 P.M., EDT','3:45 P.M., EDT','4:00 P.M., EDT','4:15 P.M., EDT','4:30 P.M., EDT','4:45 P.M., EDT','5:00 P.M., EDT','5:15 P.M., EDT','5:30 P.M., EDT','5:45 P.M., EDT','6:00 P.M., EDT','6:15 P.M., EDT','6:30 P.M., EDT','6:45 P.M., EDT','7:00 P.M., EDT','7:15 P.M., EDT','7:30 P.M., EDT','7:45 P.M., EDT'];
    var bCentralHours=['7:00 A.M., CDT','7:15 A.M., CDT','7:30 A.M., CDT','7:45 A.M., CDT','8:00 A.M., CDT','8:15 A.M., CDT','8:30 A.M., CDT','8:45 A.M., CDT','9:00 A.M., CDT','9:15 A.M., CDT','9:30 A.M., CDT','9:45 A.M., CDT','10:00 A.M., CDT','10:15 A.M., CDT','10:30 A.M., CDT','10:45 A.M., CDT','11:00 A.M., CDT','11:15 A.M., CDT','11:30 A.M., CDT','11:45 A.M., CDT','12:00 P.M., CDT','12:15 P.M., CDT','12:30 P.M., CDT','12:45 P.M., CDT','1:00 P.M., CDT','1:15 P.M., CDT','1:30 P.M., CDT','1:45 P.M., CDT','2:00 P.M., CDT','2:15 P.M., CDT','2:30 P.M., CDT','2:45 P.M., CDT','3:00 P.M., CDT','3:15 P.M., CDT','3:30 P.M., CDT','3:45 P.M., CDT','4:00 P.M., CDT','4:15 P.M., CDT','4:30 P.M., CDT','4:45 P.M., CDT','5:00 P.M., CDT','5:15 P.M., CDT','5:30 P.M., CDT','5:45 P.M., CDT','6:00 P.M., CDT','6:15 P.M., CDT','6:30 P.M., CDT','6:45 P.M., CDT'];
    var bMountainHours=['6:00 A.M., MDT','6:15 A.M., MDT','6:30 A.M., MDT','6:45 A.M., MDT','7:00 A.M., MDT','7:15 A.M., MDT','7:30 A.M., MDT','7:45 A.M., MDT','8:00 A.M., MDT','8:15 A.M., MDT','8:30 A.M., MDT','8:45 A.M., MDT','9:00 A.M., MDT','9:15 A.M., MDT','9:30 A.M., MDT','9:45 A.M., MDT','10:00 A.M., MDT','10:15 A.M., MDT','10:30 A.M., MDT','10:45 A.M., MDT','11:00 A.M., MDT','11:15 A.M., MDT','11:30 A.M., MDT','11:45 A.M., MDT','12:00 P.M., MDT','12:15 P.M., MDT','12:30 P.M., MDT','12:45 P.M., MDT','1:00 P.M., MDT','1:15 P.M., MDT','1:30 P.M., MDT','1:45 P.M., MDT','2:00 P.M., MDT','2:15 P.M., MDT','2:30 P.M., MDT','2:45 P.M., MDT','3:00 P.M., MDT','3:15 P.M., MDT','3:30 P.M., MDT','3:45 P.M., MDT','4:00 P.M., MDT','4:15 P.M., MDT','4:30 P.M., MDT','4:45 P.M., MDT','5:00 P.M., MDT','5:15 P.M., MDT','5:30 P.M., MDT','5:45 P.M., MDT'];
    var bPacificHours=['5:00 A.M., PDT','5:15 A.M., PDT','5:30 A.M., PDT','5:45 A.M., PDT','6:00 A.M., PDT','6:15 A.M., PDT','6:30 A.M., PDT','6:45 A.M., PDT','7:00 A.M., PDT','7:15 A.M., PDT','7:30 A.M., PDT','7:45 A.M., PDT','8:00 A.M., PDT','8:15 A.M., PDT','8:30 A.M., PDT','8:45 A.M., PDT','9:00 A.M., PDT','9:15 A.M., PDT','9:30 A.M., PDT','9:45 A.M., PDT','10:00 A.M., PDT','10:15 A.M., PDT','10:30 A.M., PDT','10:45 A.M., PDT','11:00 A.M., PDT','11:15 A.M., PDT','11:30 A.M., PDT','11:45 A.M., PDT','12:00 P.M., PDT','12:15 P.M., PDT','12:30 P.M., PDT','12:45 P.M., PDT','1:00 P.M., PDT','1:15 P.M., PDT','1:30 P.M., PDT','1:45 P.M., PDT','2:00 P.M., PDT','2:15 P.M., PDT','2:30 P.M., PDT','2:45 P.M., PDT','3:00 P.M., PDT','3:15 P.M., PDT','3:30 P.M., PDT','3:45 P.M., PDT','4:00 P.M., PDT','4:15 P.M., PDT','4:30 P.M., PDT','4:45 P.M., PDT'];
    var bAlaskaHours=['4:00 A.M., AKDT','4:15 A.M., AKDT','4:30 A.M., AKDT','4:45 A.M., AKDT','5:00 A.M., AKDT','5:15 A.M., AKDT','5:30 A.M., AKDT','5:45 A.M., AKDT','6:00 A.M., AKDT','6:15 A.M., AKDT','6:30 A.M., AKDT','6:45 A.M., AKDT','7:00 A.M., AKDT','7:15 A.M., AKDT','7:30 A.M., AKDT','7:45 A.M., AKDT','8:00 A.M., AKDT','8:15 A.M., AKDT','8:30 A.M., AKDT','8:45 A.M., AKDT','9:00 A.M., AKDT','9:15 A.M., AKDT','9:30 A.M., AKDT','9:45 A.M., AKDT','10:00 A.M., AKDT','10:15 A.M., AKDT','10:30 A.M., AKDT','10:45 A.M., AKDT','11:00 A.M., AKDT','11:15 A.M., AKDT','11:30 A.M., AKDT','11:45 A.M., AKDT','12:00 P.M., AKDT','12:15 P.M., AKDT','12:30 P.M., AKDT','12:45 P.M., AKDT','1:00 P.M., AKDT','1:15 P.M., AKDT','1:30 P.M., AKDT','1:45 P.M., AKDT','2:00 P.M., AKDT','2:15 P.M., AKDT','2:30 P.M., AKDT','2:45 P.M., AKDT','3:00 P.M., AKDT','3:15 P.M., AKDT','3:30 P.M., AKDT','3:45 P.M., AKDT'];
    var bHawaiiHours=['2:00 A.M., HST','2:15 A.M., HST','2:30 A.M., HST','2:45 A.M., HST','3:00 A.M., HST','3:15 A.M., HST','3:30 A.M., HST','3:45 A.M., HST','4:00 A.M., HST','4:15 A.M., HST','4:30 A.M., HST','4:45 A.M., HST','5:00 A.M., HST','5:15 A.M., HST','5:30 A.M., HST','5:45 A.M., HST','6:00 A.M., HST','6:15 A.M., HST','6:30 A.M., HST','6:45 A.M., HST','7:00 A.M., HST','7:15 A.M., HST','7:30 A.M., HST','7:45 A.M., HST','8:00 A.M., HST','8:15 A.M., HST','8:30 A.M., HST','8:45 A.M., HST','9:00 A.M., HST','9:15 A.M., HST','9:30 A.M., HST','9:45 A.M., HST','10:00 A.M., HST','10:15 A.M., HST','10:30 A.M., HST','10:45 A.M., HST','11:00 A.M., HST','11:15 A.M., HST','11:30 A.M., HST','11:45 A.M., HST','12:00 P.M., HST','12:15 P.M., HST','12:30 P.M., HST','12:45 P.M., HST','1:00 P.M., HST','1:15 P.M., HST','1:30 P.M., HST','1:45 P.M., HST'];

    var aAtlanticHoursToday=['4:00 PM, AST','4:15 PM, AST','4:30 PM, AST','4:45 PM, AST','5:00 PM, AST','5:15 PM, AST','5:30 PM, AST','5:45 PM, AST','6:00 PM, AST','6:15 PM, AST','6:30 PM, AST','6:45 PM, AST','7:00 PM, AST','7:15 PM, AST','7:30 PM, AST','7:45 PM, AST','8:00 PM, AST','8:15 PM, AST','8:30 PM, AST','8:45 PM, AST','9:00 PM, AST','9:15 PM, AST','9:30 PM, AST','9:45 PM, AST','10:00 PM, AST','10:15 PM, AST','10:30 PM, AST','10:45 PM, AST'];
    ...

*/ 
    var timeArray = new Array;
    
    if (helpType == "a") {
        switch(tzone) {        
            case 'ATLT':
                timeArray = (isToday) ? aAtlanticHoursToday : aAtlanticHours;
                break;
            case 'ET':
                timeArray = (isToday) ? aEasternHoursToday : aEasternHours;
                break;
            case 'CT':
                timeArray = (isToday) ? aCentralHoursToday : aCentralHours;
                break;                 
            case 'MT':
                timeArray = (isToday) ? aMountainHoursToday : aMountainHours;                
                break;
            case 'PT':
                timeArray = (isToday) ? aPacificHoursToday : aPacificHours;
                break;
            case 'ALT':
                timeArray = (isToday) ? aAlaskaHoursToday : aAlaskaHours;    
                break;
            case 'HWT':
                timeArray = (isToday) ? aHawaiiHoursToday : aHawaiiHours;    
                break;                
            default:
                timeArray = [];  
        }
    } else if (helpType == "b") {
        switch(tzone) {
            case 'ATLT':
                timeArray = (isToday) ? bAtlanticHoursToday : bAtlanticHours;
                break;
            case 'ET':
                timeArray = (isToday) ? bEasternHoursToday : bEasternHours;
                break;
            case 'CT':
                timeArray = (isToday) ? bCentralHoursToday : bCentralHours;
                break;                 
            case 'MT':
                timeArray = (isToday) ? bMountainHoursToday : bMountainHours;                
                break;
            case 'PT':
                timeArray = (isToday) ? bPacificHoursToday : bPacificHours;
                break;
            case 'ALT':
                timeArray = (isToday) ? bAlaskaHoursToday : bAlaskaHours;    
                break;
            case 'HWT':
                timeArray = (isToday) ? bHawaiiHoursToday : bHawaiiHours;    
                break;                
            default:
                timeArray = [];
        }    
    }   
    
    $('select#frm_c_selecttime').find('option').remove();
    $('select#frm_c_selecttime').append('<option value="">Select a time...</option>');
    
    $.each(timeArray, function(key, value) {
        value = value.substring(0, value.indexOf(','));
        $('select#frm_c_selecttime').            
            append('<option value="'+value+'">'+value+'</option>');
        }
    );

}

var updateTimes = function() {
    isToday = ($('#frm_c_selectdate').attr('selectedIndex') == 1) ? true : false;    
    updateTimeSelect($("select#frm_c_timezone").val());
}

var updateDaySelect = function(aType) {
//alert('updateDaySelect aType=' + aType);
    if(aType != 'undefined' && aType != null) {
        aType = aType.toLowerCase();
        //alert(aType);
        
    /*
        var aDays=['Mon, 10/19/2010','Tue, 10/20/2010','Wed, 10/21/2010','Thu, 10/22/2010','Fri, 10/23/2010','Sat, 10/24/2010','Sun, 10/25/2010'];
        var bDays=['Mon, 10/19/2010','Tue, 10/20/2010','Wed, 10/21/2010','Thu, 10/22/2010','Fri, 10/23/2010'];
    */
        
        var dateArray = new Array;
        switch(aType) {
            case 'medical':
                dateArray = aDays;
                helpType = "a";
                break;
            case 'insurance':
                dateArray = bDays;
                helpType = "b";
                break;
            case 'general':
                dateArray = aDays;
                helpType = "a";
                break;           
            default:
                dateArray = [];
                helpType = "";
        }
        
        //alert('enableWhenFields');
        enableWhenFields();
        //alert('after calling enableWhenFields');
        
        $('select#frm_c_selectdate').find('option').remove();
        $('select#frm_c_selectdate').append('<option value="">Select a date...</option>');
        
        $.each(dateArray, function(key, value) {
            //value = value.substring(value.indexOf(',') + 1);
            $('select#frm_c_selectdate').            
                append('<option value="'+value+'">'+value+'</option>');
            }
        );
    }
}

var schedulecall_init = function()
{
    //alert('schedulecall_init');
    $(".schedulecall").click(function(event) {
        app = 'normal';
        c2cTrack('launch');       
        pop_schedulecall(event);
    }); 

    $(".schedulecall_piv").click(function(event) {
        app = 'piv';
        c2cTrack('launch');       
        pop_schedulecall(event);
    }); 
    
    $('#busyc2call').hide();

}


var disable_datetime_fields = function(){
        $('#frm_c_selectdate').attr('disabled','disabled');
        $('#frm_c_selecttime').attr('disabled','disabled');
}

var reset_when_fields = function(){
        $('.when_fields .radio').css('background-position','0px 0px');
        $('input#cb_schedulecall_asap').attr('checked',false);
        $('input#cb_schedulecall_anothertime').attr('checked',false);
}

var popper_init = function ()
{
    //alert('popper_init app=' + app);
    if (app != 'piv') {
        $("select#frm_c_typeassistance").change(function() {            
            toggleWhenFields();
            updateDateTimeSelects();
            $('.when_fields .radio').css('background-position','0px 0px');
        });
    }  else {
       toggleWhenFields();
    }

   $('#frm_c_email_piv').blur(function() {
        var b = $('#frm_c_email_piv_verify');
        if( $(this).val() != b.val() || !$(this).val_email())  {
            email_verify_stat('frm_c_email_piv',true);
        } else {  
            email_verify_stat('frm_c_email_piv',false);
        }



    });

   $('#frm_c_email_piv_verify').blur(function() {
        var b = $('#frm_c_email_piv');
        if( $(this).val() != b.val() || !$(this).val_email() )  {
            email_verify_stat('frm_c_email_piv',true);
        } else {  
            email_verify_stat('frm_c_email_piv',false);
        }
    });



    var email_verify_stat = function (base,stat) {
        if( stat) {
            var invalc = "#ea3424";
            $('#' + base + '_verify').css({borderColor: invalc});
            $('#' + base).css({borderColor: invalc});
            $('#' + base + '_verify_label').css({color: invalc});
            $('#' + base + '_label').css({color: invalc});
            pivEmailStat = true;
        } else {
            var valc = "#332F2F";
            $('#' + base + '_verify').css({borderColor: '#cccccc'});
            $('#' + base).css({borderColor: '#cccccc'});
            $('#' + base + '_verify_label').css({color: valc });
            $('#' + base + '_label').css({color: valc});
            pivEmailStat = false;
        }
    }


    $("select#frm_c_timezone").change(function() {
      toggleWhenFields();
      updateDateTimeSelects();
    });
    
    $("select#frm_c_selectdate").change(function() {
        updateTimes();
        $('input#cb_schedulecall_anothertime').attr('checked',true);
    });
    

    //$('.radio_cell').not('.formAreaDisabled .radio_cell').click(function() {   
    //$('.radio').not('.formAreaDisabled .radio').click(function() {   
    //$('#cb_schedulecall_asap').click(function() { 
    
    $('.radio_cell').click(function() {
        //x = $(this).parents('formAreaDisabled');
        if (!$(this).parents('formAreaDisabled').length > 0) {
        $('.schedule_label').css({color: '#009999'});
        callWhen = $('input[name="frm_c_callwhen"]:checked').val();
        toggleTooLate();
        }
    });
    
    $('.btn_schedulecall').css({ opacity: 1.0 });
    c2callsubmitted = false;
    
    toggleWhenFields();
    enableWhenFields();
    updateDateTimeSelects();
    reset_when_fields();

}
