﻿// JavaScript Document
//function to combine toggle and fade, used to show login
jQuery.fn.fadeToggle = function(speed, easing, callback) {
   return this.animate({opacity: 'toggle'}, speed, easing, callback);
}; 
//function to active items in left side like help me pages
function markBullet(name){
    if(name == "Help"){name="How to Contact Us";}
    var obj = document.getElementById('square-'+name);
    if (obj != null){obj.className="active";}
}
//Sets the default value of an input or textarea and clears 
//it on focus unless the default is replaced by the user. 
function autoFill(id, v){
    $(id).attr({ value: v }).focus(function(){
        if($(this).val()==v){
            $(this).val("");
        }
    }).blur(function(){
        if($(this).val()==""){
            $(this).val(v);
        }
    });
}
var NB = (navigator.appName.indexOf("Netscape")!=-1);
function AT(input,length, e) {
var keyCode = (NB) ? e.which : e.keyCode;
var filter = (NB) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
if(input.value.length >= length && !CE(filter,keyCode)) {
input.value = input.value.slice(0, length);
input.form[(getIndex(input)+1) % input.form.length].focus();
}
function CE(arr, ele) {
var found = false, index = 0;
while(!found && index < arr.length)
if(arr[index] == ele)
found = true;
else
index++;
return found;
}
function getIndex(input) {
var index = -1, i = 0, found = false;
while (i < input.form.length && index == -1)
if (input.form[i] == input)index = i;
else i++;
return index;
}
return true;
}
var regEmail;

function Trim(myFormInput)                                           
{                                                                    
    var fposition = 0;                                                  
    while (myFormInput.charAt(fposition) == " ") {                      
        fposition++;
    }                                                                  
    if (fposition == myFormInput.length){                               
        return("");
    }                                                                  
                                                                           
    var eposition = myFormInput.length - 1                                
    while ((myFormInput.charAt(eposition) == " ") && (eposition>=0)) {       
        eposition--;
    }                                                                  
    
    return(myFormInput.substring(fposition,eposition+1));                  
} 
// checck if a date was chosen
function validateDateFgt(){
            var msg="";
            var monthVal = $("#month option:selected");
            var dayVal = $("#day option:selected");
            var yearVal = $("#year option:selected");      
            if(yearVal.val()=="0000" || dayVal.val() =="00" || monthVal.val() =="00")
             {  msg="Invalid Date";  }
            return msg;
}
//statecode check
function stateCodeChk(id){
            var msg="";
            var stateVal = $("#"+id +" option:selected");
          
            if( stateVal.val() =="00" )
             {  msg="Please selec a State";  }
            return msg;
}
        
//function to check min length for password field
function minLength(id){
    var minlength=6;
    var msg="";
     var x=$('#'+id);
 
    if (x.val().length < minlength  ){
        msg = "Password must have at least 6 characters";
    }
    
    return msg
}
// function to validate email
function validEmail (id) {
        var msg="";
        $('#'+id).each(function (i){
        var auxiliar = Trim(this.value);
        var filter=/^[A-Za-z0-9][A-Za-z0-9_.]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;
        if (filter.test(auxiliar))
        return "";
        else
        msg="Invalid email";
    });
    return msg;
}
//function to check valid numbers in text field
function ConfirmNumbers(id) {
        var msg="";
        $('#'+id).each(function (i){
        var auxiliar = this.value;
        var filter=/^[0-9]+$/;    
        if (filter.test(auxiliar))
            {
                msg = "";
               }
        else
        msg = "Invalid numbers";
    });
    
    return msg;
}
//function to check valid chars in text field for name lastname
function ConfirmChars(id) {
        var msg="";
        $('#'+id).each(function (i){
        var auxiliar = this.value;
        var filter=/^[A-Za-z0-9_. \-\',]+$/;        
        if (filter.test(auxiliar))
            {
                msg = "";
               }
        else
        msg = "Invalid Field";
    });
    
    return msg;
}
//function to check valid chars in text field for name lastname
function ConfirmAddress(id) {
        var msg="";
        $('#'+id).each(function (i){
        var auxiliar = this.value;
        var filter=/^[A-Za-z0-9_. ',\/]+$/;        
        if (filter.test(auxiliar))
            {
                msg = "";
               }
        else
        msg = "Invalid Field";
    });
    
    return msg;
}
//function to check valid chars in password field
function passwordConfirmChars(id) {
        var msg="";
        $('#'+id).each(function (i){
        var auxiliar = this.value;
        var filter=/^[A-Za-z0-9_.]+$/;
        if (filter.test(auxiliar))
            {
                msg = minLength(id);
               }
        else
        msg = "Invalid Password";
    });
    
    return msg;
}
//function in registratio form that toggle relative
function toogleRelated(){
  var rnm=$('#reg-rnm').attr('checked');
  $('#reg-rnmod').css('display',rnm?"block":"none");
  
}
//function in registration form that toggle employee
function toogleEmployee(){
       var nemployee=$('#reg-rnemployee').attr('checked');
       $('#reg-wemaild').css('display', nemployee?"block":"none");
}
// set searched words in strong
function boldedSearch(){
    var chunkSize = $("#chunkSize").val();        
    var chunkNumber = $("#chunkNumber").val(); 
                                                      
    //calculate init and end
    var end = (chunkNumber * chunkSize);
    var init = end - 9;
    var searchedText = $("#searchedText").val(); 
                                                      
    for(var m = init; m<=end ;m++){
       if(document.getElementById("boldedWord" + m) != null){
            var string = document.getElementById("boldedWord" + m).innerHTML;
                                                                  
            var searchedSplit = searchedText.split(" ");
            var stringSplit = string.split(" ");
            var stringResult = ""
                                                                        
            for(var i = 0; i<stringSplit.length;i++){
            
                 var tempBool = false;
                 for(var j = 0; j < searchedSplit.length;j++){
                                                                                
                    var stringCompare = stringSplit[i].toLowerCase();
                    var originalStringCompare = stringSplit[i];
                    var searchedCompare = searchedSplit[j].toLowerCase().replace(/"/g, "");
                    
                         if(stringCompare.search(searchedCompare)!= -1 && stringCompare.indexOf(searchedCompare) == 0){
                                
                                tempBool = true;
                                break;
                         }
                }
                if(tempBool){
                    
                    var boldStuff = originalStringCompare.substring(0,searchedCompare.length);
                    var noBold = originalStringCompare.substring(searchedCompare.length);
                    stringResult+= "<strong>" + boldStuff + "</strong>" + noBold + " ";
                    
                                                                                      
                }
                else{
                     stringResult+= stringSplit[i] + " "
                }
            }                                                           
            document.getElementById("boldedWord" + m).innerHTML = stringResult.replace(/amp;/, " ");
        }
        else {
            break;
        }
                                                            
    }
    
 }
 
 //function to activate page number in search results
 function activePageSearch(){
    var pageNumber = $('#chunkNumber').val();
    $('.search-results-pager a[title="Page ' + pageNumber + '"]').addClass('active');
}    
 
//function to parse url request and get program parameter to set active menu item    
function gup( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}
$(document).ready(function() { 
    /*----- loginbox hide/show -----*/
    $('#btnLogin').click(function() {
      $('#loginbox').fadeToggle();
      $('#btnLogin').toggleClass('active');
    });
    
    /*----- loginbox slide toggle -----*/
//    $('#btnLogin').click(function() {
//      $('#loginbox').slideToggle('slow');
//      $('#btnLogin').toggleClass('active');
//    });
        if($("#login-username").val()!=""){}
        else{
        autoFill($("#login-username"), "Username");        //user field
        autoFill($("#login-password"), "Password");        //password field
        }
    /*----------more nea websites-------------*/
    $('#more-websites-link').click(function() {
      $('#nea-panel-websites').fadeToggle();
      //$('#btnLogin').toggleClass('active');
    });
    /*---------------registration form--------------------------*/
    toogleRelated();
    toogleEmployee();
    
    
    
    
    /*--------- slide banner -----------------*/
    
    //create paginator
    var imageSum = $(".image_reel img.bannerImg").size();
    $('.slideBanner').append('<div class="paging"></div>');
    for(i=0;i<imageSum;i++)
    {    
        pag=i+1;
        $('.paging').append('<a href="#" rel="' + pag + '">' + pag + '</a>');
    }
    
       
    //Show the paging and activate its first link
    $(".paging").show();
    $(".paging a:first").addClass("active");
    if($('.paging').children().size()==0){$('.paging').hide();}
    
    //Get size of the image, how many images there are, then determin the size of the image reel.
    var imageWidth = $(".window").width();
    var imageSum = $(".image_reel img.bannerImg").size();
    var imageReelWidth = imageWidth * imageSum;
    //Adjust the image reel to its new size
    $(".image_reel").css({'width' : imageReelWidth});
    
    //Paging  and Slider Function
    rotate = function(){
        var triggerID = $active.attr("rel") - 1; //Get number of times to slide
        var image_reelPosition = triggerID * imageWidth; //Determines the distance the image reel needs to slide
    
        $(".paging a").removeClass('active'); //Remove all active class
        $active.addClass('active'); //Add active class (the $active is declared in the rotateSwitch function)
    
        //Slider Animation
        $(".image_reel").animate({
            left: -image_reelPosition
        }, 500 );
    
    }; 
    //Rotation  and Timing Event
    rotateSwitch = function(){
        play = setInterval(function(){ //Set timer - this will repeat itself every 7 seconds
            $active = $('.paging a.active').next(); //Move to the next paging
            if ( $active.length === 0) { //If paging reaches the end...
                $active = $('.paging a:first'); //go back to first
            }
            rotate(); //Trigger the paging and slider function
        }, 10000); //Timer speed in milliseconds (10 seconds)
    };
    
    rotateSwitch(); //Run function on launch
    
    //On Hover
    $(".image_reel a").hover(function() {
        clearInterval(play); //Stop the rotation
    }, function() {
        rotateSwitch(); //Resume rotation timer
    });    
    
    //On Click
    $(".paging a").click(function() {
        $active = $(this); //Activate the clicked paging
        //Reset Timer
        clearInterval(play); //Stop the rotation
        rotate(); //Trigger rotation immediately
        rotateSwitch(); // Resume rotation timer
        return false; //Prevent browser jump to link anchor
    });
    
    /*--------- end slide banner -----------------*/
    
    
    /*------ function to validate change password form -----------*/
$('#change-password #submit').click(function(){
        var validCurrentPass = passwordConfirmChars('currentUser');
        var validNewPass = passwordConfirmChars('newUser');
        var validConfirmPass = passwordConfirmChars('confirmUser');
        
        //check if passwords fields has valid chars
            if(validCurrentPass !=""){
                $('.curNameError').html(validCurrentPass);
                $('.curNameError').show();
                return false;
            } 
            else{$('.curNameError').hide();}
            
            if(validNewPass !=""){
                $('.newNameError').html(validNewPass);
                $('.newNameError').show();
                return false;
            } else{$('.newNameError').hide();}
            
            if(validConfirmPass !=""){
                $('.confirmNewlError').html(validConfirmPass);
                $('.confirmNewlError').show();
                return false;
            } else{$('.confirmNewlError').hide();}
            
    
        
        //check if new_password  and confirmation_password are different    
        if($('#newUser').val()!=$('#confirmUser').val()){$('.confirmNewlError').html('Invalid Password');$('.confirmNewlError').show(); return false;} else {$('.confirmNewlError').hide();}
    });
    
    /*------ end function to validate change password form -----------*/    
    
    
    
    /*----------function to validate change user id form--------------------*/
    $('#change-username #submit').click(function(){
        //var validCurrentUser = ConfirmChars('currentUser');
        //var validNewUser = ConfirmChars('newUser');
        //var validConfirmUser = ConfirmChars('confirmUser');
       $('.ChangeUser').html('');
        var validCurrentUser = $('#current-login').val();
        var validNewUserText = $('#new-login').val();
        var validConfirmUserText = $('#confirm-login').val();
        
        var validNewUser = Trim(validEmail('new-login'));
        var validConfirmUser = Trim(validEmail('confirm-login'));
        
        //check if passwords fields has valid chars
        //    if(validCurrentUser ==""){
        //        $('.errcurrentUser').html('Invalid Field');
        //        $('.errcurrentUser').show();
        //        return false;
        //    } 
        //    else{$('.errcurrentUser').hide();}
            
            if(validNewUser !=""){
                $('.errnewUser').html('Invalid username. Please reenter a valid email address.');
                $('.errnewUser').show();
                $('.errconfirmUser').hide();
                return false;
            } else{$('.errnewUser').hide();}
            
           // if(validConfirmUser !=""){
           //   $('.errconfirmUser').html('Invalid username. Please reenter a valid email address.');
           //   $('.errconfirmUser').show();
          //      return false;
          //  } else{$('.errconfirmUser').hide();}
          
        //check if the new user is different than the current user
        if( (validNewUserText == validCurrentUser)  ){
            $('.errconfirmUser').html('New User Id must be different that the current User Id');$('.errconfirmUser').show(); return false;
        }
        else{$('.errconfirmUser').hide();}
          
    
        
        //check if new_password  and confirmation_password are different    
        if(Trim($('#new-login').val())!=Trim($('#confirm-login').val())){
            $('.errconfirmUser').html('Usernames entered do not match.');$('.errconfirmUser').show(); return false;
        } 
        else {$('.errconfirmUser').hide();}
        
       var pemail = document.getElementById("confirm-login").value.toUpperCase() + " ";
                if( ( pemail.indexOf( '.EDU ' ) != -1 ) || ( pemail.indexOf( '.K12.' ) != -1 ) ) {
                    openWarningBox();
                    return false;
            }
    });
    
    /*----------end function to validate change user id form--------------------*/
    
    
    /*----------function to validate ask us form--------------------*/
        $('#ask_us_form #submit').click(function(){
        
            var validyourName = ConfirmChars('yourName');
            var validemail = validEmail('email');
            var validyourQuestion = $('#yourQuestion').val();
            
            //check if passwords fields has valid chars
    
                if(validyourName !=""){
                    $('.erryourName').html(validyourName);
                    $('.erryourName').show();
                    return false;
                } 
                else{$('.erryourName').hide();}
                
                if(validemail !=""){
                    $('.erremail').html(validemail);
                    $('.erremail').show();
                    return false;
                } else{$('.erremail').hide();}
                
                if(validyourQuestion ==""){
                    $('.erryourQuestion').html('Empty Field');
                    $('.erryourQuestion').show();
                    return false;
                } else{$('.erryourQuestion').hide();}
        });
        
        /*---------- end function to validate ask us form--------------------*/
    
    /*---------- function to validate forgot user id --------------------*/
    
    $('#forgot-id #submit').click(function(){
                                                
                                
            var validfirstName = ConfirmChars('fname');
            var validlastName = ConfirmChars('lname');
            var validDate = validateDateFgt();
            
            //check if passwords fields has valid chars
    
                if(validfirstName !="" && document.getElementById('fname').disabled==false){
                    $('.errfirstName').html(validfirstName);
                    $('.errfirstName').show();
                    return false;
                } 
                else{$('.errfirstName').hide();}
                
                if(validlastName !="" && document.getElementById('lname').disabled==false ){
                    $('.errlastName').html(validlastName);
                    $('.errlastName').show();
                    return false;
                } else{$('.errlastName').hide();}
                
                if(validDate !="" && document.getElementById('year').disabled==false ){
                    $('.errdateBirth').html(validDate);
                    $('.errdateBirth').show();
                    return false;
                } else{$('.errdateBirth').hide();}
        });
    
    
    /*---------- end function to validate forgot user id --------------------*/
    /*---------- function to validate forgot user password--------------------*/
    
    $('#forgot-pass #submit').click(function(){
                                                
            var validemail = validEmail('uname');
                           
                if(validemail !="" && document.getElementById('uname').disabled==false ){
                    $('.erremail').html(validemail);
                    $('.erremail').show();
                    return false;
                } else{$('.erremail').hide();}
        });
    
    
    /*---------- end function to validate forgot user password--------------------*/
        
    
    /*-----------------function to validate your information form------------------------*/
    
    // $('#your-information #submit').click(function()
    // The function moved to the your-information form

    
    /*------------login form-------------------------*/
    
        $('#loginIndividual_form #submit').click(function(){
        
        //    var validyourUser = ConfirmChars('loginUsr');
        //    var validyourPass = ConfirmChars('loginPassword');
            
            var validyourUser = $('#loginUsr').val();
            var validyourPass = $('#loginPassword').val();
            
            
            
            //check if passwords fields has valid chars
    
                if(validyourUser ==""){
                    //$('.erryourName').html(validyourName);
                    $('.errloginUsr').show();
                    return false;
                } 
                else{$('.errloginUsr').hide();}
                
                if(validyourPass =="" ){
                    $('.errloginPassword').html('Invalid Password');
                    
                    if($('#loginPassword').val().length<6){$('.errloginPassword').html('Your password needs to be at least 6 characters.');}
                    $('.errloginPassword').show();
                    return false;
                } else{$('.errloginPassword').hide();}
                
                
        });
        
        
         /*----------function to validate sync form--------------------*/
        $('#sync_form #submit').click(function(){
        
            var validUser = ConfirmChars('user');
            var validemail = validEmail('email');
                                   
                if(validemail !=""){
                    $('.errEmail').html(validemail);
                    $('.errEmail').show();
                    return false;
                } else{$('.errEmail').hide();}
                
                if(validUser !=""){
                    $('.errUser').html(validUser);
                    $('.errUser').show();
                    return false;
                } 
                else{$('.errUser').hide();}
                
                
        });
        
/*---------- end function to validate sync form--------------------*/
            
});
//=============== GA TRACK LINK FUNCTION =================
function ga_track_link(data) {
  var temp="al_" + "CustomLink_" + data;
  var pageTracker = _gat._getTracker("UA-5935845-1");
  pageTracker._trackPageview(temp);
}
 
//========================================================
//=============== GA IMPRESSION COUNT FUNCTION =================
function ga_track_impression(data) {
  var temp="am_" + "Impression_" + data;
  var pageTracker = _gat._getTracker("UA-5935845-1");
  pageTracker._trackPageview(temp);
}
 
//========================================================

//=============== GET XML HTTP OBJECT FOR AJAX CALLS =================
function getXmlHttpObject() {
   var xmlhttp;
   if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
         xmlhttp=new XMLHttpRequest();
      }
   else
      {// code for IE6, IE5
         xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
   return xmlhttp;
}
//========================================================
//=============== GET FILENAME FUNCTION =================
function getFileName(s) {
var pos = s.lastIndexOf('/');
var f = s.substring(pos+1);
return f;
}
//========================================================
