﻿
// And you can use Prototype with $(...)
function defaultPageEffects() {

    adjustAllBackgroundHeights();
    adjustMediaInquiries();
    customInit();
    
}

function customInit() {
    $('a.lkExt').attr("target", "_blank");

    $('div.sidePromosNav a').each(function(i) {
    if (!($(this).hasClass('linkCtrl') && $(this).hasClass('linkHdr') && $(this).hasClass('mrLinkList')
                && $(this).hasClass('linkCtrlL') && $(this).hasClass('linkCtrlP'))) {
            $(this).not(':has(img)').addClass('linkCtrlL');
        }
    });
    
    

}


function setHomePageEffects() {
    try{
        setNreEffects();
   }
   catch (err) { }

   levelHomePageModHeights();
}

function setNreEffects() {
    $('.tNews').click(function() {
   
        $('div.nreContainer .research').fadeOut();
        $('div.nreContainer .events').fadeOut();
        $('div.nreContainer .news').fadeIn("slow");

    });
    $('.tResearch').click(function() {
    
        $('div.nreContainer .news').fadeOut();
        $('div.nreContainer .events').fadeOut();
        $('div.nreContainer .research').fadeIn("slow");
        
    });
    $('.tEvents').click(function() {
   
        $('div.nreContainer .news').fadeOut();
        $('div.nreContainer .research').fadeOut();
        $('div.nreContainer .events').fadeIn("slow");
    });

}
function setFeaturePageEffects() {

    $('div.pageContentModuleMr a').addClass('linkCtrl');
    //$('div.pageContentModuleMr div.links a').addClass('mrLinkList');

    levelFeatureModContentHeights();
}


function setUtilityPageEffects() {
    adjustUtilityTemplateIntro();

    formatUtilityModContent();
    levelUtilityModContentHeights();
}

function setListingPageEffects() {
    //$('div.article_tbarCont').hide();
}
function setListingViewEffects() {
    
}
function setListingViewItemEffects() {
    $('div.pageTitle').hide("slow");
}
function setLandingPageEffects() {
    setRequestInformationEffects();

    $('div.lpCtrl div.reportList a').addClass('linkCtrl');
    $('div.lpCtrl div.lpDownload a').addClass('linkCtrl');

    //$('div.lpCtrl div.lpDownload').hide();
    //$('div.lpCtrl div.reportList').hide();

    //$('div.lpCtrl div.lpDownload').fadeIn(1000);
    //$('div.lpCtrl div.reportList').slideDown("slow");
    
}
function setRequestInformationEffects() {

    $('input.inputInvalid').next('span.status').append("<img class='icError'  src='/App_Images/Icons/icInvalid.gif'/>");
    $('select.inputInvalid').next('span.status').append("<img class='icError'  src='/App_Images/Icons/icInvalid.gif'/>");

    $('input.inputValid').next('span.status').append("<img class='icValid'  src='/App_Images/Icons/icValid.gif'/>");
    $('select.inputValid').next('span.status').append("<img class='icValid'  src='/App_Images/Icons/icValid.gif'/>");
    
    $('input.req').blur(function() {
        if ($(this).val().trim() == "")
            setInvalidFieldState(this);
        else
            setValidFieldState(this);
    });

    $('.frmList').blur(function() {
        if ($(this).val().trim() == "-1")
            setInvalidFieldState(this);
        else 
            setValidFieldState(this);

    });

    $('input.email').blur(function() {
    var patt = "[a-zA-Z0-9!#$%&\'*+/=?^_`{|}~-]+(?:\\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\\.)+(?:[A-Za-z]{2}|com|org|net|gov|mil|biz|info|mobi|name|aero|jobs|museum)\\b";
     
        if ($(this).val().match(patt) != null) {
            setValidFieldState(this);
        }
        else {
            setInvalidFieldState(this);
        }
    });

    $('input.phone').blur(function() {
    //var patt = "^(1\\s*[-\\/\\.]?)?(\\((\\d{3})\\)|(\\d{3}))\\s*[-\\/\\.]?\\s*(\\d{3})\\s*[-\\/\\.]?\\s*(\\d{4})\\s*(([xX]|[eE][xX][tT])\\.?\\s*(\\d+))*$";
    var patt = ".*";
        if ($(this).val().match(patt) != null) {
            setValidFieldState(this);
        }
        else {
            setInvalidFieldState(this);
        }
    });   
    
   initSubmitButton();
}
function setValidFieldState(obj) {
    $(obj).removeClass("inputInvalid");
    if (!$(obj).hasClass("inputValid"))
        $(obj).addClass("inputValid");
    $(obj).parent().find('.icError').remove();
    $(obj).parent().find('.icValid').remove();
    $(obj).next('span.status').append("<img class='icValid' src='/App_Images/Icons/icValid.gif'/>");
}

function setInvalidFieldState(obj) {
    $(obj).removeClass("inputValid");
    if (!$(obj).hasClass("inputInvalid"))
        $(obj).addClass("inputInvalid");
    $(obj).parent().find('.icError').remove();
    $(obj).parent().find('.icValid').remove();
    $(obj).next('span.status').append("<img class='icError'  src='/App_Images/Icons/icInvalid.gif'/>");
}

function initSubmitButton() {
    $('.btnSubmit').attr("src", "/App_Skin/Button_Submit/imgSubmit.png");
    
    $('.btnSubmit').mouseover(function() {          
        $(this).attr("src", "/App_Skin/Button_Submit/imgSubmitHover.png")
        $(this).addClass("btnSubmit_Hover");    
    });
    $('.btnSubmit').mouseout(function() {
        $(this).attr("src", "/App_Skin/Button_Submit/imgSubmit.png")
    });
}

function adjustAllBackgroundHeights() {

    adjustBackgroundHeight("div.expBg", "div.expContainer");
}

function adjustBackgroundHeight(bgSelector, containerSelector) {

    $(bgSelector).each(function(i) {
        var $newHeight = $(this).parent(containerSelector).height();
        if ($newHeight != null)
            $(this).height($newHeight);
    });


}

function adjustMediaInquiries() {
    var patt = "@";
    $('div.promoInfo').each(function(i) {           
        if($(this).find('p.textPar').text().match(patt) !=null){
           $(this).find('p.textPar').addClass("email");
         }


    });


}
function setSearchText(e) {
    if (e.value.toLowerCase() == "search")
        e.value = "";
    else if (e.value == "")
        e.value = "Search";

}
function levelHomePageModHeights() {

    levelContentModHeight('#divHpPromos div.promoContent');
    levelContentModHeight('#divHpPromos div.promoLinkBg');
    if ($('#divHpPromos div.nre').height() < $('#divHpPromos div.txtPromo').height()) {
        var newHeight = $('#divHpPromos div.txtPromo').height();
        var oldHeight = $('#divHpPromos div.nre').height(); ;
        var diff = newHeight - oldHeight;
        $('#divHpPromos div.nre div.nreBg').height($('#divHpPromos div.nre div.nreBg').height() + diff);

    }
    else if ($('#divHpPromos div.nre').height() > $('#divHpPromos div.txtPromo').height()) {
        var newHeight = $('#divHpPromos div.nre').height();
        var oldHeight = $('#divHpPromos div.txtPromo').height();
        var diff = newHeight - oldHeight;
        $('#divHpPromos div.promoContent').each(function(i) {
            $(this).height($(this).height() + diff);
        });
    }
    $('#divHpPromos div.nre div.nreBg').css("min-height", $('#divHpPromos div.nre div.nreBg').height().toString() + "px");
}

function levelFeatureModContentHeights() {

    levelContentModHeights('div.pageContentModuleMr_small', 'div.contentCont');
}
function levelUtilityModContentHeights() {
    levelContentModHeights('div.utility #mr1 div.utilMod', 'div.utilModContent');
    levelContentModHeights('div.utility #mr2 div.utilMod', 'div.utilModContent');

    //levelContentModHeight('div.utility #mr1 div.utilModContent');
    //levelContentModHeight('div.utility #mr2 div.utilModContent');
    
}
function levelContentModHeight(container) {
    var maxHeight = 0;
    $(container).each(function(i) {
        if ($(this).height() > maxHeight) {
            maxHeight = $(this).height();

        }
    });

    $(container).each(function(i) {
        //if ($(this).height() != maxHeight)
            $(this).height(maxHeight);

    });

}
function levelContentModHeights(outerCont, innerCont) {
    var maxHeight = 0;     
       
    $(outerCont).each(function(i) {
        if ($(this).height() > maxHeight)
            maxHeight = $(this).height();
        //alert($(this).height());
    });

    $(outerCont).each(function(i) {
        if (maxHeight > $(this).height()) {
            var diff = maxHeight - $(this).height();
            $modContent = $(this).find(innerCont);
         
            
            if (($modContent != null) && (diff > 0)) {
                $modContent.height(($modContent.height() + diff));

            }
  
        }
    });

}
function formatUtilityModContent() {
    $('div.utilMod div.utilModContent a:not(:has(img))').addClass('linkCtrl');
    $('div.utilMod div.utilModContent:has(a.linkCtrl)').css('padding-left', '8px');
    $('div.utilMod div.utilModContent a.linkCtrl').css('margin-left', '-8px');

}


function adjustUtilityTemplateIntro() {
    if (($('div.utility div.featurePromo').children().length == 0) && ($('div.utility div#divIntroImg').children().length == 0)) {
        $('div.utility div.featureText').css("width", "100%");
        $('div.utility div.featureText').css("margin-left", "0px");
        $('div.utility div.featureText').css("margin-right", "0px");
    }
    else if (($('div.utility div.featurePromo').children().length > 0) && ($('div.utility div#divIntroImg').children().length > 0)) {
        $('div.utility div.featureText').css("width", "330px");
        $('div.utility div#divIntroImg').addClass("introImgDyn");

    }
    else if ($('div.utility div.featurePromo').children().length > 0) {
    }
    else if ($('div.utility div#divIntroImg').children().length > 0) {

        $('div.utility div#divIntroImg').addClass("introImgDyn");
    }
}




