﻿function showWait() {
    var uploaddocs = $get('m_m_M_m_uploadDocs');
    var regexvalidator = $get('m_m_M_m_regexvalidator');
    var reqfieldvalidator = $get('m_m_M_m_reqfieldvalidator');
    var ddlreqfieldvalidator = $get('m_m_M_m_ddlreqfieldvalidator');
    var updateprogress = $get('m_m_M_m_UpdateProgress1');
    var lblMessage = $get('m_m_M_m_lblMessage');
    var ddlDocumentTypeID = $get('m_m_M_m_ddlDocumentTypeID');

    // To ensure the valency of the ddlDocumentTypeID control
    if (ddlDocumentTypeID.value == '-1') {
        ddlreqfieldvalidator.isvalid = false;
    }
    
    if ((uploaddocs.value.length > 0) &&
        (regexvalidator.isvalid) && (reqfieldvalidator.isvalid) && (ddlreqfieldvalidator.isvalid)) {
        
        updateprogress.style.display = 'block';
        
    }
    else {
        if (lblMessage != null) {
            lblMessage.style.visibility = "hidden";
        }
    }
}


jQuery.preloadImages = function() {
    for (var i = 0; i < arguments.length; i++) {
        jQuery("<img>").attr("src", arguments[i]);
    }
}

// rounded corners script
jQuery(document).ready(function() {

    jQuery(".rounded-block-white," +
	       ".rounded-block-white-transparent," +
	       ".rounded-block-dark-grey-small," +
		   ".rounded-block-cyan-small," +
		   ".rounded-block-light-gray-small," +
		   ".blue-box," +
		   ".header-block," +
		   ".accordionHeaderSelected," +
		   ".headline-rounded-corner-tl-br").each(
		function() {
		    jQuery(this).prepend('<div class="tl"></div><div class="bl"></div><div class="tr"></div><div class="br"></div>');
		}
	);

    if (jQuery.browser.msie && jQuery.browser.version < 7) {
        //Relocate the corners for IE6 ....
        jQuery("div.bl,div.br").each(
			function() {
			    jQuery(this).css("top", (jQuery(this).parent().height() + jQuery(this).height() + 2) + 'px');
			}
		);
    }

});


/* **************** other stuff this site uses, formerly (common.js) **************************** */
/*---------------------------------------------------------
Function:            FindElement
Arguments:           ID of the element to find
Return parameters:   an object in the document 
Goal:                to find an object whose ID corresponds to the parameter
Notes:               if the element is not found then the returned object will be null
---------------------------------------------------------*/
function FindElement(strElid, objForm) {
    var formElements = objForm.elements;
    //alert(formElements.length);

    var strID = "";
    var objEl = null;
    //Find the value of the element
    for (i = 0; i < formElements.length; i++) {
        strID = formElements[i].id.toUpperCase();
        //alert(strID);
        if (strID.indexOf(strElid) != -1) // the element was found
        {
            objEl = formElements[i];
            break;
        }
    }

    return objEl;

}

/*---------------------------------------------------------
Function:  Check4NaN (called by a custom validator object)
---------------------------------------------------------
Goal:      To check the control's value for NAN
---------------------------------------------------------*/
function Check4NaN(src, arg) {
    var val = new String(arg.Value)
    val = val.replace(".", "/");
    if (isNaN(val))
        arg.IsValid = false;
}

// SJ: find any control in a form based on control name and control tag name
// this function is pretty like asp.net server side method FindControl
function FindControl(ctlName, tagName) {
    var ctl = null;

    if (tagName == null)
        tagName = "input";

    var controls = document.getElementsByTagName(tagName);
    if (controls) {
        for (var i = 0; i < controls.length; i++) {
            if (controls[i].id.lastIndexOf(ctlName) == controls[i].id.length - ctlName.length && controls[i].id.lastIndexOf(ctlName) >= 0) {
                ctl = controls[i];
                break;
            }
        }
    }

    return ctl;
}

// function to check numberic input
function FilterKey(e) {
    if (!e) e = window.event;

    var keyCode = e.which ? e.which : e.keyCode;
    var validKey = (keyCode >= 48 && keyCode <= 57) || (keyCode == 0) || (keyCode == 8) || (keyCode == 9) || (keyCode == 13) || (keyCode == 27) || (keyCode == 37) || (keyCode == 39) || (keyCode == 46);

    if (window.event)
        e.returnValue = validKey;
    else {
        if (validKey)
            return true;
        else {
            e.preventDefault();
            return false;
        }
    }
}

//trim a string left and right
function trim(s) {
    return s.replace(/^\s*|\s*$/g, "");
}


function EnableProceed(ctlName) {
    var btnProceed = FindControl(ctlName);
    if (btnProceed.disabled)
        btnProceed.disabled = false;
    else
        btnProceed.disabled = true;

    return true;
}

//highlight text in a div
function HighlightText(divName) {
    var eDiv = document.getElementById(divName);
    if (navigator.appName == "Microsoft Internet Explorer") {
        var oRange = document.body.createTextRange();
        oRange.moveToElementText(eDiv);
        oRange.select();
    }
    else {
        var oRange = document.createRange();
        oRange.selectNodeContents(eDiv);
        var oSelection = window.getSelection();
        oSelection.removeAllRanges();
        oSelection.addRange(oRange);
    }
} 
