// 
// Base utilities
//
// preload_image(url): preload an image
//

var preloaded_images = new Array();

function preload_image(src) {
  if (typeof(preload_images[src]) == "undefined") {
    preloaded_images[src] = new Image();
    preloaded_images[src].src = src;
  }
}


function bold_me() {
	var eid = document.getElementById('ta');
	mozilla_wrap(eid,"<b>","</b>");
}

function italic_me() {
	var eid = document.getElementById('ta');
	mozilla_wrap(eid,"<i>","</i>");
}

function underline_me() {
	var eid = document.getElementById('ta');
	mozilla_wrap(eid,"<u>","</u>");
}

function foo() {
	var txtarea = document.getElementById('ta');

	var select_len = txtarea.textLength;
	var select_start = txtarea.selectionStart;
	var select_end = txtarea.selectionEnd;

	var first_part = (txtarea.value).substring(0,select_start);
	var insert_text = "&foo;";
	var last_part = (txtarea.value).substring(select_end, select_len);

	txtarea.value = first_part + insert_text + last_part;
}

function mozilla_wrap(txtarea, open_tag, close_tag) {
	var select_len = txtarea.textLength;
	var select_start = txtarea.selectionStart;
	var select_end = txtarea.selectionEnd;

	if (select_end - select_start == 0) { return 0; };

	if (select_end == 1 || select_end == 2) select_end = select_len;

	var first_part = (txtarea.value).substring(0,select_start);
	var text_to_wrap = (txtarea.value).substring(select_start, select_end)
	var last_part = (txtarea.value).substring(select_end, select_len);
	txtarea.value = first_part + open_tag + text_to_wrap + close_tag + last_part;
}