function frf_set_focus(editor_id) {
	eval(editor_id).focus();
}

function frf_bold_clicked(editor_id) {
	eval(editor_id).document.execCommand('Bold', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_italic_clicked(editor_id) {
	eval(editor_id).document.execCommand('Italic', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_underline_clicked(editor_id) {
	eval(editor_id).document.execCommand('Underline', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_just_left_clicked(editor_id) {
	eval(editor_id).document.execCommand('JustifyLeft', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_just_center_clicked(editor_id) {
	eval(editor_id).document.execCommand('JustifyCenter', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_just_right_clicked(editor_id) {
	eval(editor_id).document.execCommand('JustifyRight', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_just_full_clicked(editor_id) {
	eval(editor_id).document.execCommand('JustifyFull', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_list_ordered_clicked(editor_id) {
	eval(editor_id).document.execCommand('InsertOrderedList', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_list_unordered_clicked(editor_id) {
	eval(editor_id).document.execCommand('InsertUnorderedList', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_indent_clicked(editor_id) {
	eval(editor_id).document.execCommand('Indent', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_outdent_clicked(editor_id) {
	eval(editor_id).document.execCommand('Outdent', null, null);
	frf_set_focus(editor_id);
	return false;
}

function frf_url_insert_clicked(editor_id) {
	if (eval(editor_id).document.body.innerText) {
		eval(editor_id).document.execCommand('CreateLink', true, null);
	} else {
		var inputURL = prompt("Enter the URL to link to", "http://");
		if (inputURL != null) {
			eval(editor_id).document.execCommand('CreateLink', null, inputURL);
			eval(editor_id).document.execCommand('Underline', null, null);
			eval(editor_id).document.execCommand('ForeColor', null, 'blue');
		}
	}

	frf_set_focus(editor_id);
	return false;
}

function frf_url_remove_clicked(editor_id) {
	eval(editor_id).document.execCommand('Unlink', null, null);

	if (eval(editor_id).document.body.innerText) {
		// Nothing
	} else {
		eval(editor_id).document.execCommand('Underline', null, false);
		eval(editor_id).document.execCommand('ForeColor', null, "black");
	}

	frf_set_focus(editor_id);
	return false;
}

function frf_image_clicked(editor_id) {
	var inputURL = prompt("Enter the URL of the image", "http://");
	if (inputURL != null) {
		frf_set_focus(editor_id);
		eval(editor_id).document.execCommand('InsertImage', null, inputURL);
	}
	frf_set_focus(editor_id);
	return false;
}

function frf_view_source_clicked(editor_id) {
	if (eval(editor_id + '_source_view')) {
		if (eval(editor_id).document.body.innerText) {
			eval(editor_id).document.body.innerText = eval(editor_id).document.body.innerHTML;
		} else {
			var theHTML = eval(editor_id).document.createTextNode(eval(editor_id).document.body.innerHTML);
			eval(editor_id).document.body.innerHTML = '';
			eval(editor_id).document.body.appendChild(theHTML);
		}

		eval(editor_id + '_source_view = false');
	} else {
		if (eval(editor_id).document.body.innerText) {
			eval(editor_id).document.body.innerHTML = eval(editor_id).document.body.innerText;
		} else {
			var theHTML = eval(editor_id).document.body.ownerDocument.createRange();
			theHTML.selectNodeContents(eval(editor_id).document.body);
			eval(editor_id).document.body.innerHTML = theHTML.toString();
		}

		eval(editor_id + '_source_view = true');
	}
}

function frf_font_name_changed(editor_id, font_name) {
	if (font_name != "Name") {
		eval(editor_id).document.execCommand('FontName', null, font_name);
		frf_set_focus(editor_id);
	}
	return false;
}

function frf_font_size_changed(editor_id, font_size) {
	if (font_size != "Size") {
		eval(editor_id).document.execCommand('FontSize', null, font_size);
		frf_set_focus(editor_id);
	}
	return false;
}

function frf_font_color_changed(editor_id, font_color) {
	if (font_color != "Colour") {
		eval(editor_id).document.execCommand('ForeColor', null, font_color);
		frf_set_focus(editor_id);
	}
	return false;
}

