/*
    Copyright (C) 2008  Ivo Toby, Internet Voor Ondernemers, http://www.i-v-o.nl / http://syntacticsugar.nl 

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.

	Crudder Version : 0.50b
 */

	crudderField.html = Class.create(crudderField, {
		initialize:function($super, field, data, pob){
			$super(field, data,pob)
			this.instID = 'crudderField_html.' + parseInt(Math.random()*1000000);
		},
		
		drawEditor : function(container,record){
			var value = '';
			if (record[this.field.name]){
				value = record[this.field.name];
			}
			value = value.toString().trim();
			this.input = new Element('textarea', {id:this.instID+"_textArea", className:"crudderRecordInput"}).update(value);
			container.insert(this.input);
			tinymce.EditorManager.init({
				mode : "none",
				theme : "advanced",
	            language : "en",
	            gecko_spellcheck : true,
	            cleanup_on_startup : true, 
	            theme_advanced_toolbar_location : "top",
	            theme_advanced_toolbar_align : "left",
	            theme_advanced_path_location : "top",
	            width:"100%",
	            height:"300px"
			});
			tinyMCE.execCommand('mceAddControl', true, this.instID+"_textArea");
		},
		
		getRPCValue : function(){
			var ed = tinymce.EditorManager.get(this.instID+"_textArea");
			if (this.input){
				ed.execCommand('mceCleanup');
				var value = '<![CDATA[' + encodeURIComponent(ed.getContent())+ " ]]>";
				tinyMCE.execCommand('mceRemoveControl', false, this.instID+"_textArea");
				return value;
			}
		},
		
		close : function(){
			tinyMCE.execCommand('mceRemoveControl', false, this.instID+"_textArea");	
		}
	})