// Javascript Image Replacement: http://www.quirksmode.org/dom/fir.html
// Get Element By Selector: http://simon.incutio.com/js/getElementsBySelector.html
// Browser checking: http://javascript.about.com/library/scripts/blbrowsercheck.htm
// Replace: http://www.tneoh.zoneit.com/javascript/js_func.html

window.onload = init;
		
function init() {
	
	// decipher protected email addresses
	replaceEmail(document.getElementsBySelector('.erep'));
	
}

function imageReplacement()
{
	replaceImage(document.getElementsBySelector('.fir'));
}

function replaceImage(x)
{
	for (var i=0;i<x.length;i++)
	{
		if (x[i].id)
		{
			var alt = x[i].innerText;
			x[i].innerHTML = "<img src='/resources/graphics/" + x[i].id + ".gif' alt='" + alt + "'/>";
		}
	}
}

function replaceEmail(x)
{
	for (var i=0;i<x.length;i++)
	{
		var email = x[i].innerHTML;
		email = replace(email, " [at] ", "@");
		email = replace(email, " [dt] ", ".");
		x[i].innerHTML = "<a href='mailto:" + email + "'>" + email + "</a>";
	}	
}

function replace(argvalue, x, y) {

  if ((x == y) || (parseInt(y.indexOf(x)) > -1)) {
    errmessage = "replace function error: \n";
    errmessage += "Second argument and third argument could be the same ";
    errmessage += "or third argument contains second argument.\n";
    errmessage += "This will create an infinite loop as it's replaced globally.";
    alert(errmessage);
    return false;
  }
    
  while (argvalue.indexOf(x) != -1) {
    var leading = argvalue.substring(0, argvalue.indexOf(x));
    var trailing = argvalue.substring(argvalue.indexOf(x) + x.length, 
	argvalue.length);
    argvalue = leading + y + trailing;
  }

  return argvalue;

}

function formToggleGroup(groupId) {
	formGroup = document.getElementById('form-group-' + groupId);
	formToggle = document.getElementById('toggle-group-' + groupId);
	formToggleText = formToggle.innerHTML;
	
	if (formGroup.style.display == 'block') {
		formGroup.style.display = 'none';
		formToggle.innerHTML = replace(formToggleText, "[-] hide", "[+] show");
	} else {
		formGroup.style.display = 'block';
		formToggle.innerHTML = replace(formToggleText, "[+] show", "[-] hide");
	}
}

