var url_root = '';
var tmce_config = {
		mode : "none",
		theme : "advanced",
		plugins : "safari,spellchecker,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,pagebreak,imagemanager,filemanager",
		theme_advanced_buttons1_add_before : "save,newdocument,separator",
		theme_advanced_buttons1_add : "fontselect,fontsizeselect",
		theme_advanced_buttons2_add : "separator,insertdate,inserttime,preview,separator,forecolor,backcolor",
		theme_advanced_buttons2_add_before: "cut,copy,paste,pastetext,pasteword,separator,search,replace,separator",
		theme_advanced_buttons3_add_before : "tablecontrols,separator",
		theme_advanced_buttons3_add : "emotions,iespell,media,advhr,separator,print,separator,ltr,rtl,separator,fullscreen",
		theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,spellchecker,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,blockquote,pagebreak,|,insertfile,insertimage",
		theme_advanced_toolbar_location : "top",
		theme_advanced_toolbar_align : "left",
		theme_advanced_statusbar_location : "bottom",
		content_css : "/example_data/example_full.css",
	    plugin_insertdate_dateFormat : "%Y-%m-%d",
	    plugin_insertdate_timeFormat : "%H:%M:%S",
		external_link_list_url : "example_data/example_link_list.js",
		external_image_list_url : "example_data/example_image_list.js",
		flash_external_list_url : "example_data/example_flash_list.js",
		template_external_list_url : "example_data/example_template_list.js",
		theme_advanced_resize_horizontal : false,
		theme_advanced_resizing : true,
		apply_source_formatting : true
	};


var Engine = {
	load: function(root_path, scriptal, scripts) {
		url_root = root_path;
		if( typeof Prototype == 'undefined' ) {
			throw('Error: Prototype required.');
		} else {
			if( scriptal.match(/[^\s]/) )
			{
				document.write("<script src=\""+root_path+"engine/jscripts/scriptaculous/scriptaculous.js?load="+scriptal+"\" type=\"text/javascript\"></script>");
			}
			scripts.split(',').each( function(sinc) {
				if( sinc.match(/[^\s]/) )
				{
					document.write("<script src=\""+sinc+"\" type=\"text/javascript\"></script>");
				}
			} );
		}
	},
	
	disable_select: function (target) {
		if (typeof target.onselectstart != "undefined")
		{
			target.onselectstart = function() { return false }
		}
		else if ( typeof target.style.MozUserSelect != "undefined" )
		{
			target.style.MozUserSelect = "none";
		}
		else
		{
			target.onmousedown=function() { return false }
		}
		target.style.cursor = "default";
	},
	
	init_grey_box: function( box ) {
		Element.extend(box);
		if( box.hasClassName('grey_box_start') )
		{
			box.removeClassName('grey_box_start');
			box.value = '';
		}
	},
	
	delete_item_confirm: function( item, url ) {
		if( confirm("Are you sure you want to delete " + item + "?") )
		{
			document.location.href=url;
		}
	},
	
	highlight_delete_confirm: function( objid, url ) {
		$(objid).addClassName('cms_delete_highlight');
		var yesorno = confirm("Are you sure you want to delete this?");
		$(objid).removeClassName('cms_delete_highlight');
		if( yesorno )
		{
			if( url == '' || typeof url == 'undefined' )
			{
				document.location.reload();
			}
			else
			{
				document.location.href=url;
			}
		}
	},
	
	apply_wysiwyg: function( sEditorID )
	{
		if( typeof tinyMCE == 'undefined' ) {
			throw('Error: TinyMCE not included. Cannot start.');
		}
		
		tinyMCE.execCommand("mceAddControl", true, sEditorID);
	}
}