﻿
// Remove space characters
function Trim(sValue)
{		
	sValue = sValue.replace(/(^\s*)|(\s*$)/g, "");
	return sValue;
}

// Resets field value
function ResetField(oField, defaultValue) {
	if (defaultValue == oField.value)
		oField.value = "";
	else 
		if (oField.value == "")
			oField.value = defaultValue;
}

// Check form submit
document.onkeypress = CheckSubmit;
function CheckSubmit(oEvent) {
    oEvent = (oEvent) ? oEvent : event;
    var keyCode;

    if (oEvent.keyCode)
        keyCode = oEvent.keyCode;
    else
        keyCode = oEvent.which;

	if (keyCode == 13) 
	    if (CurrentSubmitId != '')
	    {
            var oSubmit = document.getElementById(CurrentSubmitId);
            if (oSubmit != null)
                oSubmit.click();
            CancelEvent(oEvent);
	    }
}

var CurrentSubmitId = '';
function SetSubmit(buttonId) {
    CurrentSubmitId = buttonId;
}

function ClearSubmit() {
    CurrentSubmitId = '';
}

// Cancel event propagation
function CancelEvent(oEvent)
{
    if (!oEvent)
        return;

	oEvent.cancelBubble = true;
	oEvent.returnValue = false;

	if (oEvent.stopPropagation)
	    oEvent.stopPropagation();

    if (oEvent.preventDefault)
        oEvent.preventDefault();
}

// Allows only digits for input
function NumbersOnly(evt) {
    evt = (evt) ? evt : event;
    var c = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0));
    if (c > 31 && (c < 48 || c > 57))
        return false;
    return true;
}

var state = 'none';
function ToggleDisplay(layer_ref)
{
    if (state == 'block')
        state = 'none';
    else
        state = 'block';

    if (document.all)
        eval( "document.all." + layer_ref + ".style.display = state");
    if (document.layers)
        document.layers[layer_ref].display = state; 

    if (document.getElementById &&!document.all)
    {
        hza = document.getElementById(layer_ref);
        hza.style.display = state;
    }
}

function ValidateSearch(sTextBox) 
{
    var retVal = true;

    var oText = document.getElementById(sTextBox);
    if (Trim(oText.value) == '' || Trim(oText.value) == 'Pesquisar' || (Trim(oText.value).length < 3))
    {
        alert('Por favor, introduza texto com pelo menos 3 caracteres.');
        retVal = false;
    }

    return retVal;
}


function Focus(objname, waterMarkText) {
    obj = document.getElementById(objname);
    if (obj.value == waterMarkText) {
        obj.value = "";
    }
}
function Blur(objname, waterMarkText) {
    obj = document.getElementById(objname);
    if (obj.value == "") {
        obj.value = waterMarkText;
    }
}

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]; }
}
