<!--

function alert($message){
	if(!confirm($message)){
		return false;
	}
}

var isGecko = false;
if(navigator){
	if(navigator.userAgent){
		if(navigator.userAgent.indexOf("Gecko/") != -1){
			isGecko = true;
		}
	}
}

function getSelectionRange(e) {
	var str;
	if (document.selection) {
	str = document.selection.createRange().text;
	}
	else if(isGecko){
	var start = e.selectionStart;
	var end = e.selectionEnd;
	str = e.value.substring(start, end);
	}
	else {
		str = '';
	}
	return str;
}

function setSelectionRange(e, v) {
	if(document.selection) {
	if(getSelectionRange(e))
		document.selection.createRange().text = v;
	else
		e.value = e.value + v;
	}
	else if(isGecko){
	var start = e.selectionStart;
	var end = e.selectionEnd;
	var len = e.textLength;
	var str = e.value.substring(start, end);
	var head = e.value.substring(0, start);
	var foot = e.value.substring(end, len);
	e.value = head + v + foot;
	}
	else {
		e.value = e.value + v;
	}
}

function tag(e, v, a) {
	var sv = a ? v + " " + a : v;
	var str = getSelectionRange(e);
	setSelectionRange(e, '<' + sv + '>' + str + '</' + v + '>');
}

function linkPrompt(e, blank) {

	if(blank == 'mail'){
		var link = prompt('メールアドレスを入力してください。: ', '');
	}else{
		var link = prompt('URLを入力してください。: ', '');
	}

	if(link != null)

	if(blank == true){
		setLink(e, link, true);
	}else if(blank == false){
		setLink(e, link, false);
	}else if(blank == 'mail'){
		setLink(e, link, 'mail');
	}

}

function setLink(e, url, blank) {

	if(blank == true){
		var attrs = 'href="' + url + '" target="_blank"';
	}else if(blank == false){
		var attrs = 'href="' + url + '"';
	}else if(blank == 'mail'){
		var attrs = 'href="mailto:' + url + '"';
	}

	tag(e, 'a', attrs);
}


function setColor(e, color) {
	var attrs = 'style="color: ' + color + '"';
	tag(e, 'span', attrs);
}



function selectContent( element, lock, only_once ) {
	if ( only_once && only_once_elements[element.name] ) {
		return;
	}

	only_once_elements[element.name] = true;

	if ( lock  ) {
		return;
	}

	element.select();
}

function setCheckboxes(the_checkboxes, do_check)
{
	var the_checkboxes_cnt = the_checkboxes.length;

	for (var i = 0; i < the_checkboxes_cnt; i++) {
		the_checkboxes[i].checked = do_check;
	}

	return true;
}





/**
 * This array is used to remember mark status of rows in browse mode
 */
var marked_row = new Array;

/**
 * marks all rows and selects its first checkbox inside the given element
 * the given element is usaly a table or a div containing the table or tables
 *
 * @param    container    DOM element
 */
function markAllRows( container_id ) {
    var rows = document.getElementById(container_id).getElementsByTagName('tr');
    var unique_id;
    var checkbox;

    for ( var i = 0; i < rows.length; i++ ) {

        checkbox = rows[i].getElementsByTagName( 'input' )[0];

        if ( checkbox && checkbox.type == 'checkbox' ) {
            unique_id = checkbox.name + checkbox.value;
            if ( checkbox.disabled == false ) {
                checkbox.checked = true;
                if ( typeof(marked_row[unique_id]) == 'undefined' || !marked_row[unique_id] ) {
                    rows[i].className += ' marked';
                    marked_row[unique_id] = true;
                }
            }
        }
    }

    return true;
}

/**
 * marks all rows and selects its first checkbox inside the given element
 * the given element is usaly a table or a div containing the table or tables
 *
 * @param    container    DOM element
 */
function unMarkAllRows( container_id ) {
    var rows = document.getElementById(container_id).getElementsByTagName('tr');
    var unique_id;
    var checkbox;

    for ( var i = 0; i < rows.length; i++ ) {

        checkbox = rows[i].getElementsByTagName( 'input' )[0];

        if ( checkbox && checkbox.type == 'checkbox' ) {
            unique_id = checkbox.name + checkbox.value;
            checkbox.checked = false;
            rows[i].className = rows[i].className.replace(' marked', '');
            marked_row[unique_id] = false;
        }
    }

    return true;
}

// -->

