﻿function createEmail(name, domain, suffix, text) {
    var address = name + "\u0040" + domain + "." + suffix;
    var url = "mailto:" + address;
    if (!text) {
        text = address;
    }
    document.write('<a href="' + url + '">' + text + '</a>');
}

function rewrite() {
    var o = $('span.email');
    var l = o.length;
    for (var i = 0; i < l; i++) {
        var e = reverse(o[i].id);
        o[i].innerHTML = ('<a href="mailto:' + e + '">' + e + ' </a>');
    }
}

function reverse(str) {
    var newStr = '';
    for (var i = str.length - 1; i >= 0; i--) {
        newStr += str.charAt(i);
    }
    return newStr;
}
function highLight(what) {
    var el = document.getElementById('navigation').getElementsByTagName("a");
    var l = el.length;
    for (i = 1; i < l; i ++) {
        if (el[i].className == what) {
            el[i].style.color = "#999";
        }
    }
}

function init() {
    var e = $('div.name');
    var l = e.length;
    for (var i = 0; i < l; i++) {
        $(e[i]).click(toggle);
    }
    $('.faculty_info').hide();
    document.onkeydown = keypress
    rewrite();
}

function fancyLinks() {
    $('a.link').click(function(event) { event.preventDefault(); $('#' + this.id + '_ul').toggle('blind'); });
}
function keypress(e) {
    var keynum;
    if (window.event) {
        keynum = window.event.keyCode;
    }
    else {
        keynum = e.which;
    }
    if (keynum == 69) {
        unHide();
    }
    else if (keynum == 67) {
        hide();
    }
}


function premierModal() {
    $('#premier_articles').dialog({ autoOpen: false, modal: true, draggable: false, width: 400, resizable: false,
        overlay: { backgroundColor: '#000', opacity: 0.5 },
        buttons: { Close: function() {
            $(this).dialog('close')
        }
        }
    });
    $('a.modal').click(function() {
        $('#premier_articles').dialog('open');
    });
}

function unHide() {
    $('.faculty_info').show();
}

function hide() {
    $('.faculty_info').hide();
}

function toggle() {
    if ($('#' + this.id + '_div').is(':hidden')) {
        $('#' + this.id + '_arrow').attr({ src: ('/images/arrow_up.png') });
    }
    else {
        $('#' + this.id + '_arrow').attr({ src: ('/images/arrow_rt.png') });
    }
    $('#' + this.id + '_div').toggle("slide");
}

function watermark(e) {
    if (e.type == 'focus' && this.value == 'Start Typing to See List') {
        this.value = '';
    }
    else if (e.type == 'blur' && this.value == '') {
        this.value = 'Start Typing to See List';
    }
}

function cleanWord(str) {
    str = str.replace(/<meta.*">/gi, "");
    str = str.replace(/<link*">/mgi, "");
    str = str.replace(/<!(.|\n)*-->/mgi, "");
    str = str.replace(/<o:p>\s*<\/o:p>/g, "");
    str = str.replace(/<o:p>.*?<\/o:p>/g, "&nbsp;");
    str = str.replace(/\s*mso-[^:]+:[^;"]+;?/gi, "");
    str = str.replace(/\s*MARGIN: 0cm 0cm 0pt\s*;/gi, "");
    str = str.replace(/\s*MARGIN: 0cm 0cm 0pt\s*"/gi, "\"");
    str = str.replace(/\s*TEXT-INDENT: 0cm\s*;/gi, "");
    str = str.replace(/\s*TEXT-INDENT: 0cm\s*"/gi, "\"");
    str = str.replace(/\s*TEXT-ALIGN: [^\s;]+;?"/gi, "\"");
    str = str.replace(/\s*PAGE-BREAK-BEFORE: [^\s;]+;?"/gi, "\"");
    str = str.replace(/\s*FONT-VARIANT: [^\s;]+;?"/gi, "\"");
    str = str.replace(/\s*tab-stops:[^;"]*;?/gi, "");
    str = str.replace(/\s*tab-stops:[^"]*/gi, "");
    str = str.replace(/\s*face="[^"]*"/gi, "");
    str = str.replace(/\s*face=[^ >]*/gi, "");
    str = str.replace(/\s*FONT-FAMILY:[^;"]*;?/gi, "");
    str = str.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, "<$1$3");
    str = str.replace(/<(\w[^>]*) style="([^\"]*)"([^>]*)/gi, "<$1$3");
    str = str.replace(/\s*style="\s*"/gi, '');
    str = str.replace(/<SPAN\s*[^>]*>\s*&nbsp;\s*<\/SPAN>/gi, '&nbsp;');
    str = str.replace(/<SPAN\s*[^>]*><\/SPAN>/gi, '');
    str = str.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, "<$1$3");
    str = str.replace(/<SPAN\s*>(.*?)<\/SPAN>/gi, '$1');
    str = str.replace(/<FONT\s*>(.*?)<\/FONT>/gi, '$1');
    str = str.replace(/<\\?\?xml[^>]*>/gi, "");
    str = str.replace(/<\/?\w+:[^>]*>/gi, "");
    str = str.replace(/<H\d>\s*<\/H\d>/gi, '');
    str = str.replace(/<H1([^>]*)>/gi, '');
    str = str.replace(/<H2([^>]*)>/gi, '');
    str = str.replace(/<H3([^>]*)>/gi, '');
    str = str.replace(/<H4([^>]*)>/gi, '');
    str = str.replace(/<H5([^>]*)>/gi, '');
    str = str.replace(/<H6([^>]*)>/gi, '');
    str = str.replace(/<\/H\d>/gi, '<br/>'); //remove this to take out breaks where Heading tags were
    str = str.replace(/<(U|I|STRIKE)>&nbsp;<\/\1>/g, '&nbsp;');
    str = str.replace(/<(B|b)>&nbsp;<\/\b|B>/g, '');
    str = str.replace(/<([^\s>]+)[^>]*>\s*<\/\1>/g, '');
    str = str.replace(/<([^\s>]+)[^>]*>\s*<\/\1>/g, '');
    str = str.replace(/<([^\s>]+)[^>]*>\s*<\/\1>/g, '');
    //some RegEx code for the picky browsers
    var re = new RegExp("(<P)([^>]*>.*?)(<\/P>)", "gi");
    str = str.replace(re, "<p$2</p>");
    var re2 = new RegExp("(<font|<FONT)([^*>]*>.*?)(<\/FONT>|<\/font>)", "gi");
    str = str.replace(re2, "<p$2</p>");
    str = str.replace(/size|SIZE = ([\d]{1})/g, '');
    str = str.replace(/<p>&nbsp;<\/p>/g, '');
    return str;
}

function studyAbroadApps() {
    $('#application_instructions').dialog({ width: 600, autoOpen: false, modal: true,
        overlay: { backgroundColor: '#000', opacity: 0.5 },
        buttons: { Close: function() {
            $(this).dialog('close')
        }
        }
    });
    $('#application_button').click(function() {
        $('#application_instructions').dialog('open');
    });    
}