// JavaScript Document

Event.observe(window, 'load', function(){initPage();});

var imgs = new Array ();

function initPage() {

	// ie6 hacks
	//if (typeof ie6hack == 'function') ie6hack();

	initTooltips();

	//preload images
	imgs = new Array ();
	$$("img").each(function(img){
		i = new Image();
		i.src = img.src;
		imgs.push(i);
	});

}

function initTooltips() {
    //convert titles to tooltips
	$$("a, img, span, th, td, input, area").findAll(function(node){
        return node.getAttribute('title');
    }).each(function(node){
        new Tooltip(node,node.title);
        node.removeAttribute("title");
    });
}

function validate(form) {
	form.invalid = false;
	i = null;
	if ((i = form.password_plain) && (i.value.strip().length < 6)) {
		alertInput(i);
		return false;
	}
	if ((i = form.new_password_plain) && (i.value.strip().length < 6)) {
		alertInput(i);
		return false;
	}
	return true;
}

function alertInput(input) {
	input.form.invalid = true;
	new Effect.Shake(input,{distance:5});
	delaySelect(input);
}

function validateInput(input) {
	return input.value.strip() && !isDefault(input);
}

function isDefault(input) {
	return input.value.strip().toLowerCase() == input.defaultValue.strip().toLowerCase();
}

var ii;
function delaySelect(input) {
	ii = input;
	setTimeout('ii.focus();', 600);
	setTimeout('ii.select();', 600);
}

function syncCombo(input) {
	sel = input.form.elements['combobox_' + input.name + '_select'];
	tvl = input.value.toLowerCase();
	for(i = 0, l = sel.options.length; i < l; i++) {
		if (sel.options[i].text.toLowerCase() == tvl) {
			sel.selectedIndex = i;
			break;
		}
	}
	return true;
}

function textarea_resize(ta) {
    ta.rows = ta.value.length / (ta.cols - 10) + 2;
}

function showDetails(id) {
	$$('tr.detail_' + id).each(function(node){
        node.hide();
    });
	$$('tr.hidden_detail_' + id).each(function(node){
        node.show();
    });
}
function hideDetails(id) {
	$$('tr.hidden_detail_' + id).each(function(node){
        node.hide();
    });
	$$('tr.detail_' + id).each(function(node){
        node.show();
    });
}
