/* for CKEditor 2.x */

function set_editor_focus(id) {
	try {
		var oeditor = get_editor_object(id);
		oeditor.Focus();
	} catch(e) {
		alert(e);
	}
}

function get_editor_object(id) {
	try {
		var oeditor = FCKeditorAPI.GetInstance(id);
		return oeditor;
	} catch(e) {
		return null;
	}
}

function update_editor(editor_id) {
	var oeditor = get_editor_object(editor_id);
	oeditor.IsDirty();
	oeditor.UpdateLinkedField();
}

function create_eval_tag(_src, _cmd) {
	var _rtn = "<img src=\"" + _src + "\" eval=\"" + _cmd + "\" \/>";
	return _rtn
}

function create_plain_img_tag(_src){
	var _rtn = "<img src=\"" + _src + "\" \/>";
	return _rtn
}

function insert_eval_tag(editor_id, src, cmd) {
	try {		
		var oeditor = get_editor_object(editor_id);
		var _img_tag = create_eval_tag(src, cmd);
		
		oeditor.InsertHtml(_img_tag);
	}catch(e){
		alert(e);
	}
}

function insert_plain_img_tag(editor_id, src){
	try {		
		var oeditor = get_editor_object(editor_id);
		var _img_tag = create_plain_img_tag(src);
		
		oeditor.InsertHtml(_img_tag);
	}catch(e){
		alert(e);
	}
}

function insert_image_tag(editor_id, src, onclick_func) {
	try {
		set_editor_focus(editor_id);
		
		var oeditor = get_editor_object(editor_id);
		var _onclick = "";

		if (onclick_func != null) {
			_onclick = " onclick=\"" + onclick_func + "\" ";
		}
		
		var _tag = "<img src=\"" + src + "\" " + _onclick + " \/>";
		
		oeditor.InsertHtml(_tag);
	} catch(e) {
		alert(e);
	}
}

function insert_html_to_tail(id,value) {
	try {
		var oeditor = FCKeditorAPI.GetInstance(id);
		if (oeditor == null) {return;}
		oeditor.SetHTML(oeditor.GetXHTML() + value,false);
	} catch(e) {
		alert(e);
	}
}

function insert_a_to_cursor(id,href,text) {
	try {
		var oeditor = FCKeditorAPI.GetInstance(id);			
		if (oeditor.EditMode == FCK_EDITMODE_WYSIWYG) {
			var _a = "<a href=\"" + href + "\" \/>" + text + "<\/a>";
			oeditor.InsertHtml(_a);
		}
	} catch(e){
		alert('Switch to HTML mode first.');
	}
}