// Dropdown Menu Jump Script
// Automatically goes to the selected item's page.

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

// Loading and Displaying Images with Hovering

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function toggle_dg(obj) {
    var el = document.getElementById(obj);
    if ( el.style.display != 'none' ) {
        el.style.display = 'none';
    }
    else {
        el.style.display = '';
    }
}

//Random Image gallery for the bottom of Side Navigation block. Common to all layouts.
//The website must have a sideimages
function SideImageGallery(nImageCount, sRootUrl){
    document.write('<img src=\"' + sRootUrl + '/sideimages/' + ((Math.floor(Math.random() * nImageCount))+1) + '.jpg\" alt=\"\" />');
}

var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i

function validateTarletonEmail(e)
{
    var returnval=emailfilter.test(e.value)
    var eDress = e.value
    
    if (returnval==false)
    {
        alert("Please enter a valid email address.")
        e.select()
    }
    else
    {
        var eCompareAddress = eDress.slice(eDress.lastIndexOf("@"))
        if (!(eCompareAddress == "@go.tarleton.edu" || eCompareAddress == "@tiaer.tarleton.edu" || eCompareAddress == "@tarleton.edu"))
        {
            returnval=false
            alert("Please enter a valid Tarleton email address.")
            e.select()
        }
    }
    
    return returnval
}


// Adding or Removing the Textfield Hint on the Search Field Based on Click
    
    addEvent(window, 'load', init, false);
    
    function addEvent(element, eventType, lamdaFunction, useCapture) {
        if (element.addEventListener) {
            element.addEventListener(eventType, lamdaFunction, useCapture);
            return true;
        } else if (element.attachEvent) {
            var r = element.attachEvent('on' + eventType, lamdaFunction);
            return r;
        } else {
            return false;
        }
    }
    
    function init() {
        var formInputs = document.getElementsByTagName('input');
        for (var i = 0; i < formInputs.length; i++) {
            var theInput = formInputs[i];
    
            if (theInput.type == 'text' && theInput.className.match(/\bcleardefault\b/)) {
                /* Add event handlers */
                addEvent(theInput, 'focus', clearDefaultText, false);
                addEvent(theInput, 'blur', replaceDefaultText, false);
    
                /* Save the current value */
                if (theInput.value != '') {
                    theInput.defaultText = theInput.value;
                }
            }
    
        }
    }
    
    function clearDefaultText(e) {
        var target = window.event ? window.event.srcElement : e ? e.target : null;
        if (!target) return;
    
        if (target.value == target.defaultText) {
            target.value = '';
        }
    }
    
    function replaceDefaultText(e) {
        var target = window.event ? window.event.srcElement : e ? e.target : null;
        if (!target) return;
    
        if (target.value == '' && target.defaultText) {
            target.value = target.defaultText;
        }
    }
    
 
 // For use in JavaScript Querystring requests.
 // Currently used on homepage to determine whether or not to browser check and redirect to the mobile website.
    
    function getQuerystring(key, default_)
    {
          if (default_==null) default_="";
          key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
          var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
          var qs = regex.exec(window.location.href);
          if(qs == null)
                return default_;
          else
                return qs[1];
    }
