function viewtop_div(div_name)
{
        var actdiv;

        actdiv = document.getElementById
                ? $(div_name)
                : document.forms[div_name];
        actdiv.style.display = 'block';
}

function viewhere_div(div_name, ele_name)
{
        var actdiv, actele;

        if (document.getElementById) {
        	actdiv = $(div_name);
        	actele = $(ele_name);
	} else {
                actdiv = document.forms[div_name];
                actele = document.forms[ele_name];
	}
	newpos = $(div_name).getHeight() * -1;
        actdiv.style.display = 'block';
	try {
		Position.clone($(actele), div_name, {setWidth: false, setHeight: false, offsetTop: newpos });
		// is it overflow parent area ?
		if (actdiv.offsetLeft + actdiv.getWidth() > actdiv.parentNode.offsetWidth) {
			newpos2 = $(div_name).getWidth() * -1;
			Position.clone($(actele), div_name, {
				setWidth: false, setHeight: false, offsetLeft: newpos2, offsetTop: newpos
			});
		}
	} catch(e) {}
}

function viewsame_div(div_name, ele_name, posadj)
{
        var actdiv, actele;

        if (document.getElementById) {
        	actdiv = $(div_name);
        	actele = $(ele_name);
	} else {
                actdiv = document.forms[div_name];
                actele = document.forms[ele_name];
	}
        actdiv.style.display = 'block';
	try {
	Position.clone($(actele), div_name, {setWidth: false, setHeight: false, offsetTop: posadj });
	} catch(e) {}
}

function viewright_div(div_name, ele_name, wval)
{
        var actdiv, actele;

        if (document.getElementById) {
        	actdiv = $(div_name);
        	actele = $(ele_name);
	} else {
                actdiv = document.forms[div_name];
                actele = document.forms[ele_name];
	}
        actdiv.style.display = 'block';
	try {
	Position.clone($(actele), div_name, {setWidth: false, setHeight: false, offsetLeft: wval });
	} catch(e) {}
}

function viewleft_div(div_name, ele_name)
{
        var actdiv, actele;

        if (document.getElementById) {
        	actdiv = $(div_name);
        	actele = $(ele_name);
	} else {
                actdiv = document.forms[div_name];
                actele = document.forms[ele_name];
	}
	newpos = $(div_name).getWidth() * -1;
        actdiv.style.display = 'block';
	try {
	Position.clone($(actele), div_name, {setWidth: false, setHeight: false, offsetLeft: newpos });
	} catch(e) {}
}

function viewdown_div(div_name, ele_name)
{
        var actdiv, actele;

        if (document.getElementById) {
        	actdiv = $(div_name);
        	actele = $(ele_name);
	} else {
                actdiv = document.forms[div_name];
                actele = document.forms[ele_name];
	}
        actdiv.style.display = 'block';
	try {
	Position.clone($(actele), div_name, {setWidth: false, setHeight: false, offsetTop: 30 });
	} catch(e) {}
}

function viewcentertop_div(div_name, ele_name)
{
        var actdiv, actele;

        if (document.getElementById) {
        	actdiv = $(div_name);
        	actele = $(ele_name);
	} else {
                actdiv = document.forms[div_name];
                actele = document.forms[ele_name];
	}
        actdiv.style.display = 'block';
	offset = ($(ele_name).getWidth() - $(div_name).getWidth()) / 2;
	try {
	Position.clone($(actele), div_name, {setWidth: false, setHeight: false, offsetLeft: offset });
	} catch(e) {}
}

function hide_div(div_name)
{
        var actdiv;

        actdiv = document.getElementById
                ? $(div_name)
                : document.forms[div_name];

	if (actdiv) {
		actdiv.style.display = 'none';
	}
}

function get_divview(div_name)
{
	var actdiv;

	actdiv = document.getElementById
		? $(div_name)
		: document.forms[div_name];
	if (actdiv.style.display == 'none') {
		return false;
	}
	else {
		return true;
	}
}

function div_table_clear(div_name)
{
	var form, elements, i, elm;

	form = document.getElementById
		? $(div_name)
		: document.forms[div_name];

	if (document.getElementsByTagName) {
                elements = form.getElementsByTagName('td');
                for( i=0, elm; elm=elements.item(i++); ) {
			elm.className = 'summary_out';
                }
        } else {
                elements = form.elements;
                for( i=0, elm; elm=elements[i++]; ) {
                        if (elm.type == "td") {
				elm.className = 'summary_out';
                        } 
                }
        }
}

function remove_htmltag(text) {
	// remove HTML tags in given element
	text.value = text.value.replace(/<[^>]+>/ig, '');
}

function form_submit(formid)
{
	var qs_form = document.getElementById(formid);
	
	if (!qs_form.new_submit) {
		qs_form.new_submit = qs_form.submit;
	}

	var hidden_submit = document.createElement('input');
	hidden_submit.type = 'hidden';
	hidden_submit.name = 'submit';
	hidden_submit.value = 'submit';
	qs_form.appendChild(hidden_submit);

	qs_form.new_submit();

	return false;
}

var vimgobj;

function check_view_image()
{
	if (!vimgobj.complete) {
		setTimeout("check_view_image()", 300);
		return;
	}
}

function view_image_loader(img,rimg,msec) {
}

function view_image(el) {
	vimgobj = new Image();
	vimgobj.src = el.href;

	loading = new Image();
	loading.src = '/images/loading.gif';
	loading.alt = 'Loading...';

	if (document.getElementById) {
		actdiv = $('image_view_div');
	} else {
		actdiv = document.forms['image_view_div'];
	}

	Position.clone($(el), actdiv, {setWidth: false, setHeight: false });

	$('image_view_img').src = loading.src;
	actdiv.style.width = loading.width;
	actdiv.style.height = loading.height;
	actdiv.style.display = 'block';

	timer= window.setInterval(function() {
		if (timer != null && vimgobj.complete == true) {
			window.clearInterval(timer);
			timer=null;
			$('image_view_img').src=vimgobj.src;
			try {
				Position.clone($(el), actdiv, {setWidth: false, setHeight: false });
			} catch(e) { }
			actdiv.style.width = vimgobj.width;
			actdiv.style.height = vimgobj.height;
		}
	},100);
	return false;
}

function message_box(message, bg, box, message_field, button_label) {
	if (document.getElementById) {
		if (!bg) {
			bg = document.getElementById('background_filter');
		}
		if (!box) {
			box = document.getElementById('alert_box');
		}
		if (!message_field) {
			message_field = document.getElementById('alert_box_message');
		}
	} else {
		if (!bg) {
			bg = document.forms['background_filter'];
		}
		if (!box) {
			box = document.forms['alert_box'];
		}
		if (!message_field) {
			message_field = document.forms['alert_box_message'];
		}
	}

	if (!bg || !box || !message_field) {
		message = message.replace(/<br\s*\/?>/ig,"\n");
		alert(message);
		return;
	}

	bg.style.display = 'block';
	box.style.display = 'block';

	message_field.innerHTML = message;
	if (button_label) {
		label = document.getElementById('alert_box_button_label');
		label.innerHTML = button_label;
	}
		
	if (typeof(innerWidth) != 'undefined' && 
		typeof(innerHeight) != 'undefined' && 
		typeof(pageXOffset) != 'undefined' && 
		typeof(pageYOffset) != 'undefined') {
		doc = document.body;
	} else {
		// MSIE specific
		if (document.documentElement && document.documentElement.clientWidth) {
			// 6.0 or more
			doc = document.documentElement;
		} else {	
			// other version
			doc = document.body;
		}
		pageXOffset = doc.scrollLeft;
		pageYOffset = doc.scrollTop;
		innerWidth = doc.clientWidth;
		innerHeight = doc.clientHeight;
	}

	offsetTop = doc.scrollTop;
	offsetLeft = doc.scrollLeft;
	bgWidth = document.body.offsetWidth > innerWidth ? document.body.offsetWidth : innerWidth;
	bgHeight = document.body.offsetHeight > innerHeight ? document.body.offsetHeight : innerHeight;

	bg.style.top = offsetTop + 'px';
	bg.style.left = offsetLeft + 'px';
	bg.style.width = bgWidth + 'px';
	bg.style.height = bgHeight + 'px';		
	box.style.left = pageXOffset + (innerWidth - box.offsetWidth) / 2 + 'px';
	box.style.top = pageYOffset + (innerHeight - box.offsetHeight) / 2 + 'px';
	
	var button = document.getElementById('alert_box_button');
	button.focus();
}

function close_message_box() {
	hide_div('alert_box');
	hide_div('background_filter');
}

function message_box_after_loading(message, bg, box, message_field) {
	message_box.run = function () {
		message_box(message, bg, box, message_field);
	}

	if (window.addEventListener) {
		window.addEventListener("load", message_box.run, false);
	} else if (window.attachEvent) {
		window.attachEvent("onload", message_box.run);
	} else {
		window.onload = message_box_run;
	}
}

