function launchDisclaimer(){thewindow = window.open('/pi/includes/pop_disclaimer.asp', 'Disclaimer', config='width=550, height=500,toolbar=no,menubar=no,scrollbars=auto,resizable=yes,location=no,directories=no,status=no,screeny=100,screenx=100,left=200,top=200');
 }
function launchAudio(){thewindow = window.open('/pi/includes/pop_audio.asp', 'Audio', config='width=320, height=240,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,directories=no,status=no,screeny=100,screenx=100,left=200,top=200');
 }


function showGBFLASH(title, content) {
    $("body").css("overflow", "hidden");
    $("#overlay").css('top', getYOffset()).fadeIn('50');
    $("#overlayz").css('top', getYOffset()).fadeIn('50');
    $("#GBcontentHolder").html(content);
    $("#flashheader").css('visibility', 'hidden');
    $(document).find('select').css('visibility', 'hidden');

    $("#overlay").height($(document).height());

    $(window).scroll(function () {
        if ($("#overlay").css('display') == 'block') {
            $("#overlayz").css('top', getYOffset());
            $("#overlay").css('top', '0px');
            $("#overlay").css('bottom', '0px');
            $("#overlay").height($(document).height());
        }
    });

    $(window).resize(function () {
        if ($("#overlay").css('display') == 'block') {
            $("#overlay").css('top', '0px');
            $("#overlay").css('bottom', '0px');
            $("#overlay").height($(document).height());
            $("#overlayz").css('top', getYOffset());
        }
    });


    try {
        //popUpFlash Container
        swfobject.embedSWF("/pi/swf/performance_graph.swf", "flashID1", "740", "480", "9.0.0", "/pi/swf/expressInstall.swf");
    }
    catch (Err) { }
}
function closeGBFLASH() {
    $(document).find('select').css('visibility', 'visible');
    $("body").css("overflow", "auto");
    $("#overlay").fadeOut('50');
    $("#overlayz").fadeOut('50', function () { $("#lbImg").attr('src', ''); });
    $("#flashheader").css('visibility', 'visible');
}

function closebox() {
    $(document).find('select').css('visibility', 'visible');
    $("body").css("overflow", "auto");
    $("#overlay").fadeOut('50');
    $("#overlayz").fadeOut('50', function () { $("#lbImg").attr('src', ''); });
    $("#flashheader").css('visibility', 'visible');
}

function getYOffset() {
    var pageY;
    if (typeof (window.pageYOffset) == 'number') {
        pageY = window.pageYOffset;
    }
    else {
        pageY = document.body.scrollTop;
    }
    return pageY;
}


// default text value function

function OnFocus(elementId, defaultText) {
    if (document.getElementById(elementId).value == defaultText) {
        document.getElementById(elementId).value = "";
    }
}

function OnBlur(elementId, defaultText) {
    var textValue = document.getElementById(elementId).value;

    if (textValue == defaultText || textValue.length == 0) {
        document.getElementById(elementId).value = defaultText;
    }
}

function changeContactType() {
    //alert(document.frmContact.via.selectedIndex)
    if (document.getElementById('via').selectedIndex == 1) {
        document.getElementById('contactTypeName').innerHTML = 'Contact No.';
        document.getElementById('contactTypeInput').innerHTML = '<input class="frm_input_box" id="contact" name="contact" type="text" />';
    } else {
        document.getElementById('contactTypeName').innerHTML = 'E-mail';
        document.getElementById('contactTypeInput').innerHTML = '<input class="frm_input_box" id="email" name="email" type="text" />';
    }
}


var xmlHttp
xmlHttp = GetXmlHttpObject()


function processContact() {
    //alert(document.frmContact.title.value)
    if (document.frmContact.email) {
        var xemail = document.frmContact.email.value
    }
    if (document.frmContact.contact) {
        var xcontact = document.frmContact.contact.value.replace(/^\s+|\s+$/g, "")
    }
    var xcomment = document.frmContact.comment.value.replace(/^\s+|\s+$/g, "")
	var cvia = 'e-mail'
	if (document.getElementById('via').selectedIndex == 1){
		cvia = 'call'
	}
    var divName = "ajaxContact"
    var url = "/pi/includes/capture_contact.asp";
    url = url + "?name=" + escape(document.frmContact.name.value);
    url = url + "&surname=" + escape(document.frmContact.surname.value);
    url = url + "&via=" + cvia;
    url = url + "&email=" + escape(xemail);
    url = url + "&contact=" + escape(xcontact);
    url = url + "&comment=" + escape(xcomment);
    url = url + "&sid=" + Math.random();
    //alert(url)
    loadingDiv(divName, 'Capturing...');
    xmlHttp.open("GET", url, true);
    xmlHttp.onreadystatechange = function () {
        if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
            stateChanged(xmlHttp, divName);
        }
    }
    xmlHttp.send(null);
    opacity(divName, 0, 100, 1000);

}

function processComments() {
    var xemail
    xemail = document.frmComment.txtEmail_1.value
    var xcomments = document.frmComment.txtComments_1.value.replace(/^\s+|\s+$/g, "")
    var divName = "ajaxComment"
    loadingDiv(divName, 'Capturing...');
    var url = "/pi/includes/capture_comments.asp";
    url = url + "?email=" + escape(xemail);
    url = url + "&comments=" + escape(xcomments);
    url = url + "&sid=" + Math.random();
    document.write(url)
    xmlHttp.open("POST", url, true);
    xmlHttp.onreadystatechange = function () {
        if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
            stateChanged(xmlHttp, divName);
        }
    }
    xmlHttp.send(null);
    opacity(divName, 0, 100, 1000);

}

function processSubscribe() {
    var xname = document.frmSubscribe.txtName.value
    var xemail = document.frmSubscribe.txtEmail_2.value
    var divName = "ajaxSubscribe"
    loadingDiv(divName, 'Capturing...');
    var url = "/pi/includes/capture_subscribe.asp";
    url = url + "?fullname=" + escape(xname);
    url = url + "&email=" + escape(xemail);
    url = url + "&sid=" + Math.random();
    //alert(url)
    xmlHttp.open("GET", url, true);
    xmlHttp.onreadystatechange = function () {
        if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
            stateChanged(xmlHttp, divName);
        }
    }
    xmlHttp.send(null);
    opacity(divName, 0, 100, 1000);

}

function stateChanged(req, divID) {
    //alert(document.getElementById(divID).innerHTML)
    document.getElementById(divID).innerHTML = req.responseText;
}


function clearDiv(divID) {
    document.getElementById(divID).innerHTML = "";
}

function clearcloseDiv(divID) {
    document.getElementById(divID).innerHTML = '<img src="/images/spacer.gif" height="6">';
}


function loadingDiv(divID, strMessage) {
    document.getElementById(divID).innerHTML = strMessage;
}



// GLOBAL AJAX
function GetXmlHttpObject() {
    var xmlHttp = null;
    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp = new XMLHttpRequest();
    }
    catch (e) {
        // Internet Explorer
        try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e) {
            xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttp;
}

function GetXmlHttpObjectM() {
    var xmlHttpM = null;
    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttpM = new XMLHttpRequest();
    }
    catch (e) {
        // Internet Explorer
        try {
            xmlHttpM = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e) {
            xmlHttpM = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttpM;
}

// opacity

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if (opacStart > opacEnd) {
        for (i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    } else if (opacStart < opacEnd) {
        for (i = opacStart; i <= opacEnd; i++) {
            setTimeout("changeOpac(" + i + ",'" + id + "')", (timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

function shiftOpacity(id, millisec) {
    //if an element is invisible, make it visible, else make it ivisible
    if (document.getElementById(id).style.opacity == 0) {
        opacity(id, 0, 100, millisec);
    } else {
        opacity(id, 100, 0, millisec);
    }
}

function blendimage(divid, imageid, imagefile, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //set the current image as background
    document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";

    //make image transparent
    changeOpac(0, imageid);

    //make new image
    document.getElementById(imageid).src = imagefile;

    //fade in image
    for (i = 0; i <= 100; i++) {
        setTimeout("changeOpac(" + i + ",'" + imageid + "')", (timer * speed));
        timer++;
    }
}

function currentOpac(id, opacEnd, millisec) {
    //standard opacity is 100
    var currentOpac = 100;

    //if the element has an opacity set, get it
    if (document.getElementById(id).style.opacity < 100) {
        currentOpac = document.getElementById(id).style.opacity * 100;
    }

    //call for the function that changes the opacity
    opacity(id, currentOpac, opacEnd, millisec)
}
//<a href="javascript:opacity('digicam', 100, 0, 500)">Hide</a> 
function valButton(btn) {
    var cnt = -1;
    for (var i = btn.length - 1; i > -1; i--) {
        if (btn[i].checked) { cnt = i; i = -1; }
    }
    if (cnt > -1) return btn[cnt].value;
    else return null;
}

function CompareDates() {
    var str1 = document.getElementById("starttxtdate").value;
    var str2 = document.getElementById("endtxtdate").value;
    var dt1 = parseInt(str1.substring(0, 2), 10);
    var mon1 = parseInt(str1.substring(3, 5), 10);
    var yr1 = parseInt(str1.substring(6, 10), 10);
    var dt2 = parseInt(str2.substring(0, 2), 10);
    var mon2 = parseInt(str2.substring(3, 5), 10);
    var yr2 = parseInt(str2.substring(6, 10), 10);
    var date1 = new Date(yr1, mon1, dt1);
    var date2 = new Date(yr2, mon2, dt2);

    if (date2 < date1) {
        return false;
        alert("yes")
    }
}

// Form Validation
function validate_priceDates() {
    with (document.frmFunds) {

        if (!valButton(fundcode)) {
            alert("Please select at least one fund");
            return false;
        }
        if (isWhitespace(starttxtdate.value)) {
            alert("Please select a valid start date");
            return false;
        }
        if (isWhitespace(endtxtdate.value)) {
            alert("Please select a valid end date");
            return false;
        }

        var str1 = starttxtdate.value;
        var str2 = endtxtdate.value;
        var dt1 = parseInt(str1.substring(0, 2), 10);
        var mon1 = parseInt(str1.substring(3, 5), 10);
        var yr1 = parseInt(str1.substring(6, 10), 10);
        var dt2 = parseInt(str2.substring(0, 2), 10);
        var mon2 = parseInt(str2.substring(3, 5), 10);
        var yr2 = parseInt(str2.substring(6, 10), 10);
        var date1 = new Date(yr1, mon1, dt1);
        var date2 = new Date(yr2, mon2, dt2);

        if (date2 < date1) {
            alert("Start date cannot be greater than End date");
            return false;
        }



    }
    return true;
}

function validate_search() {
    with (document.frmSearch) {

        if (searchString.value == 'Search') {
            alert("Please enter your search");
            searchString.focus();
            return false;
        }
        if (isWhitespace(searchString.value)) {
            alert("Please enter your search");
            searchString.focus();
            return false;
        }
    }
    return true;
}

function validate_contact() {
    with (document.frmContact) {

        if (isWhitespace(name.value)) {
            alert("Please enter your name");
            name.focus();
            return false;
        }
        if (isWhitespace(surname.value)) {
            alert("Please enter your surname");
            surname.focus();
            return false;
        }
        if (via.selectedIndex == 0) {
            if (valEmail(email)) {
            return false;
            }
        }
        if (via.selectedIndex == 1) {
            if (isWhitespace(contact.value)) {
                alert("Please enter your contact number");
                contact.focus();
            return false;
            }

        }

        if (isWhitespace(comment.value)) {
            alert("Please enter your question / comment");
            comment.focus();
            return false;
        }
    }
    return true;
}

function validate_comments() {
    with (document.frmComment) {

        if (txtEmail_1.value == 'e-mail address') {
            alert("Please enter your e-mail address");
            txtEmail_1.focus();
            return false;
        }
        if (valEmail(txtEmail_1)) {
            return false;
        }
        if (isWhitespace(txtComments_1.value)) {
            alert("Please enter your question / comment");
            txtComments_1.focus();
            return false;
        }
    }
   return true;
}

function validate_subscribe() {
    with (document.frmSubscribe) {

        if (txtName.value == 'name') {
            alert("Please enter your name");
            txtName.focus();
            return false;
        }
        if (isWhitespace(txtName.value)) {
            alert("Please enter your name");
            txtName.focus();
            return false;
        }
        if (txtEmail_2.value == 'e-mail address') {
            alert("Please enter your e-mail address");
            txtEmail_2.focus();
            return false;
        }
        if (valEmail(txtEmail_2)) {
            return false;
        }
    }
    return true;
}


function containsChars(xvar) {
    for (k = 0; k < xvar.length; k++) {
        if (isNaN(xvar.charAt(k))) return true;
    }
    return false;
}

function isWhitespace(s) {
    var i;
    // whitespace characters
    var whitespace = " \t\n\r";

    // Is s empty?
    if (isEmpty(s)) return true;

    // Search through string's characters one by one
    // until we find a non-whitespace character.
    // When we do, return false; if we don't, return true.

    for (i = 0; i < s.length; i++) {
        // Check that current character isn't whitespace.
        var c = s.charAt(i);

        if (whitespace.indexOf(c) == -1) return false;
    }

    // All characters are whitespace.
    return true;
}

function isEmpty(s) {
    return ((s == null) || (s.length == 0));
}


function valEmail(el) {
    var invalidChars = " /:,;";
    if (el.value == "") {
        alert("Please enter your e-mail address.");
        el.focus();
        return (true);
    }
    for (i = 0; i < invalidChars.length; i++) {
        badChar = invalidChars.charAt(i);
        if (el.value.indexOf(badChar, 0) != -1) {
            alert("Your e-mail address contains an invalid character, please correct it.");
            el.focus();
            return (true);
        }
    }
    atPos = el.value.indexOf("@", 1);
    if (atPos == -1) {
        alert("Your e-mail address must contain an @ character.");
        el.focus();
        return (true);
    }
    if (el.value.indexOf("@", atPos + 1) != -1) {
        alert("Your e-mail address must have letters before the @ character.");
        el.focus();
        return (true);
    }
    periodPos = el.value.indexOf(".", atPos);
    if (periodPos == -1) {
        alert("Your e-mail address must contain a . character.");
        el.focus();
        return (true);
    }
    if (periodPos + 3 > el.value.length) {
        alert("Your e-mail address must have letters after the . character.");
        el.focus();
        return (true);
    }
    return (false);
}

function cleanText(elem) {
    var f = document.getElementById(elem);
    f.focus();
    f = f.value.replace(/^\s+|\s+$/g, "");
    return f;
}

function calcHeight(ifrmName) {
    //find the height of the internal page
    var the_height=document.getElementById(ifrmName).contentWindow.document.body.scrollHeight;
   // var the_height = '750px';

    //change the height of the iframe
    document.getElementById(ifrmName).height = the_height;
	//alert(the_height)
}

// End form validation