// Add to favourites

function AddToFavourites(title,url)
{	
	if (window.sidebar) 
	{	// firefox/netscape
		window.sidebar.addPanel(title, url,""); 
	} 
	else if( document.all ) 
	{	//ie
		window.external.AddFavorite(url, title); 
	} 
}

// Popup windows

function winBRopen(theURL, Name, popW, popH, scroll) { // V 1.0
	var winleft = (screen.width - popW) / 2;
	var winUp = (screen.height - popH) / 2;
	winProp = 'width='+popW+',height='+popH+',left='+winleft+',top='+winUp+',scrollbars='+scroll+',resizable=1';
	Win = window.open(theURL, Name, winProp);
	if (parseInt(navigator.appVersion) >= 4){
		Win.window.focus();
	}
	return false;
}

// Iframe Events

function SetIframeHeight(h) {
    document.getElementById('inline_link').height = h;
}

function HideIframeLoading() {
    // var objLoadingDiv = document.getElementById('iframe_loading');
    // objLoadingDiv.style.visibility = 'hidden';
    // var objLoadingDivInner = document.getElementById('iframe_loading_inner');
    // objLoadingDivInner.style.visibility = 'hidden';
    document.getElementById('overlaymessage').style.display = 'none';
    document.getElementById('inline_link').style.visibility = 'visible';
}

function SetupIframeLoading() {
    //var objLoadingDiv = document.getElementById('iframe_loading');
    //objLoadingDiv.style.visibility = 'visible';
    //var objLoadingDivInner = document.getElementById('iframe_loading_inner');
    //objLoadingDivInner.style.visibility = 'visible';

    var objIframe = document.getElementById('inline_link');
    
    try {
        objIframe.style.visibility = 'hidden'; 
        document.getElementById('overlaymessage').style.display = 'block';
        InnerOverlayMessage('... loading ...');
    } catch(err) {}    
    
    if (document.addEventListener) {
        objIframe.addEventListener('load', HideIframeLoading, false);
    } else if (document.attachEvent) {
        objIframe.attachEvent('onload', HideIframeLoading, false);
    }
}

// Limit textarea, input

function LimitText(limitField, limitCount, limitNum) {
	if (limitField.value.length > limitNum) {
		limitField.value = limitField.value.substring(0, limitNum);
	} else {
		//limitCount.value = limitNum - limitField.value.length;
		var charsLeft = limitNum - limitField.value.length;
        limitCount.innerHTML = charsLeft + ' characters remaining';
	}
}

// Toggle visibility

function ShowHide(elementid) {
    elem = document.getElementById(elementid)
    if (elem.style.display == 'none') {
        elem.style.display = 'block'
    } else {
        elem.style.display = 'none'
    } 
}

// Hide elements

function HideElements(elements) {
    var i = 0;
    for (i = 0; i <= elements.length - 1; i++) {
        document.getElementById(elements[i]).style.display = 'none';
    }
}

// Display overlay message

function InnerOverlayMessage(messagetext) {
    document.getElementById('overlaymessage').innerHTML = '<table cellspacing="0" width="100%" height="100%"><tr><td width="100%" height="100%" align="center" valign="center"><div><p id="messagetext">' + messagetext + '</p><img id="messageprogress" src="/images/loading3.gif" /></div></td></tr></table>';
}

function ShowOverlayMessage(submitbutton,messagetext) {
    try {
        if (submitbutton != '') {
            document.getElementById(submitbutton).disabled=true;
        }
        document.getElementById('contentwrap').className = 'dimmed';  
        document.getElementById('overlaymessage').style.display = 'block';
        InnerOverlayMessage(messagetext);
        document.body.style.cursor='wait';

    } catch(err) {}
    setTimeout('InnerOverlayMessage(\'' + messagetext + '\');',500);
    return true;                           
}

// Disable multiple submit

function DisableMultipleSubmit(submitbuttons) {
    try {
        if (submitbuttons != '') {
            for (i = 0; i < submitbuttons.length; i++) {
                document.getElementById(submitbuttons[i]).disabled=true;
            }
        }
        document.body.style.cursor='wait';
    } catch(err) {}
    return true;
}