/**
 * CK Editor
 *
 * @version 1.3
 *
 * Version control
 *
 * 1.3		Added function initCKEditors()
 * 1.2.2	Added "brochure" toolbar configuration
 * 1.2.1	Added "advanced2" toolbar configuration
 * 1.2		Added preset toolbar configurations
 */
function lib_CKEditor()
{
	/**
	 * Initialize CK Editor for all textarea's within given element
	 *
	 * param string sForm
	 * param string className
	 * param integer iWidth
	 * param integer iHeight
	 * param string sToolbar
	 */
	this.initCKEditors = function(sForm, sClass, iWidth, iHeight, sToolbar)
	{
		//check if form exists
		if(document.getElementById(sForm))
		{
			//get form elements
			var elem = document.getElementById(sForm).elements;

			//loop each element in the form
			for(var i=0; i<elem.length; i++)
			{
				//check if element has to be transformed
				if(elem[i].className.search(sClass) > -1)
				{
					//initialize CKEditor for element
					obj_lib_ckeditor.initCKEditor(elem[i].id, iWidth, iHeight, sToolbar);
				}
			}
		}
	}




	/**
	 * Initialize CK Editor
	 *
	 * param string instanceName
	 * param integer iWidth
	 * param integer iHeight
	 * param string toolbar
	 */
	this.initCKEditor = function(instanceName, iWidth, iHeight, toolbar)
	{
		if(CKEDITOR.instances[instanceName])
		{
			var instance = CKEDITOR.instances[instanceName];
			CKEDITOR.remove(instance);
			/*CKEDITOR.instances[instanceName].destroy();*/
		}

		if(toolbar == 'full')
		{
			CKEDITOR.replace( instanceName,
			{
				filebrowserBrowseUrl : '../libraries/ckfinder/ckfinder.html',
				filebrowserImageBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Images',
				filebrowserFlashBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Flash',
				filebrowserUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
				filebrowserImageUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
				filebrowserFlashUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
				height: iHeight,
				width: iWidth
			});
		}

		if(toolbar == 'full2')
		{
			CKEDITOR.replace( instanceName,
			{
				filebrowserBrowseUrl : '../libraries/ckfinder/ckfinder.html',
				filebrowserImageBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Images',
				filebrowserFlashBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Flash',
				filebrowserUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
				filebrowserImageUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
				filebrowserFlashUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
				height: iHeight,
				width: iWidth,
				toolbar :
				[
					['Source','-','Save','NewPage','Preview','-','Templates'],
					['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChecker', 'Scayt'],
					['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
					['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'],
					'/',
					['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],
					['NumberedList','BulletedList','-','Outdent','Indent','Blockquote','CreateDiv'],
					['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
					['Link','Unlink','Anchor'],
					['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],
					'/',
					['Styles','Format','Font','FontSize'],
					['TextColor','BGColor'],
					['Maximize', 'ShowBlocks','-','About']
				]
			});
		}
		else if(toolbar == 'minimal')
		{
			CKEDITOR.replace( instanceName,
			{
				filebrowserBrowseUrl : '../libraries/ckfinder/ckfinder.html',
				filebrowserImageBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Images',
				filebrowserFlashBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Flash',
				filebrowserUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
				filebrowserImageUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
				filebrowserFlashUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
				height: iHeight,
				width: iWidth,
				toolbar :
				[
					['Bold', 'Italic', '-', 'Link', 'Unlink', '-', 'Maximize']
				]
			});
		}
		else if(toolbar == 'advanced')
		{
			CKEDITOR.replace( instanceName,
			{
				filebrowserBrowseUrl : '../libraries/ckfinder/ckfinder.html',
				filebrowserImageBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Images',
				filebrowserFlashBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Flash',
				filebrowserUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
				filebrowserImageUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
				filebrowserFlashUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
				height: iHeight,
				width: iWidth,
				toolbar :
				[
					['Bold','Italic','Underline','Strike','-','Subscript','Superscript'],
					['NumberedList','BulletedList'],
					['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
					['Format'],
					['Image','SpecialChar'],
					['Link', 'Unlink'],
					['Source'],
					['Undo','Redo'],
					['Maximize']
				]
			});
		}
		else if(toolbar == 'advanced2')
		{
			CKEDITOR.replace( instanceName,
			{
				filebrowserBrowseUrl : '../libraries/ckfinder/ckfinder.html',
				filebrowserImageBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Images',
				filebrowserFlashBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Flash',
				filebrowserUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
				filebrowserImageUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
				filebrowserFlashUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
				height: iHeight,
				width: iWidth,
				toolbar :
				[
					['Source'],
					['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChecker', 'Scayt'],
					['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
					['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],
					'/',
					['Bold','Italic','Underline','Strike','-','Subscript','Superscript','-','TextColor'],
					['NumberedList','BulletedList','-','Outdent','Indent','Blockquote','CreateDiv'],
					['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
					['Link','Unlink','Anchor'],
					['Format','FontSize'],
					['Maximize']
				]
			});
		}
		else if(toolbar == 'brochure')
		{
			CKEDITOR.replace( instanceName,
			{
				filebrowserBrowseUrl : '../libraries/ckfinder/ckfinder.html',
				filebrowserImageBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Images',
				filebrowserFlashBrowseUrl : '../libraries/ckfinder/ckfinder.html?Type=Flash',
				filebrowserUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files',
				filebrowserImageUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images',
				filebrowserFlashUploadUrl : '../libraries/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash',
				height: iHeight,
				width: iWidth,
				toolbar :
				[
					['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord'],
					['Bold', 'Italic', 'Underline', 'Strike', '-', 'Subscript', 'Superscript', '-', 'Link', 'Unlink'],
					['NumberedList', 'BulletedList'],
					['Undo', 'Redo', '-', 'RemoveFormat'],
					['Maximize']
				]
			});
		}
	}
}

