diff -r 902822492a68 -r fe660c52c48f includes/clientside/tinymce/plugins/fullpage/editor_plugin_src.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/includes/clientside/tinymce/plugins/fullpage/editor_plugin_src.js Wed Jun 13 16:07:17 2007 -0400 @@ -0,0 +1,227 @@ +/** + * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $ + * + * @author Moxiecode + * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved. + */ + +/* Import plugin specific language pack */ +tinyMCE.importPluginLanguagePack('fullpage'); + +var TinyMCE_FullPagePlugin = { + getInfo : function() { + return { + longname : 'Fullpage', + author : 'Moxiecode Systems AB', + authorurl : 'http://tinymce.moxiecode.com', + infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullpage', + version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion + }; + }, + + getControlHTML : function(cn) { + switch (cn) { + case "fullpage": + return tinyMCE.getButtonHTML(cn, 'lang_fullpage_desc', '{$pluginurl}/images/fullpage.gif', 'mceFullPageProperties'); + } + + return ""; + }, + + execCommand : function(editor_id, element, command, user_interface, value) { + // Handle commands + switch (command) { + case "mceFullPageProperties": + var template = new Array(); + + template['file'] = '../../plugins/fullpage/fullpage.htm'; + template['width'] = 430; + template['height'] = 485 + (tinyMCE.isOpera ? 5 : 0); + + template['width'] += tinyMCE.getLang('lang_fullpage_delta_width', 0); + template['height'] += tinyMCE.getLang('lang_fullpage_delta_height', 0); + + tinyMCE.openWindow(template, {editor_id : editor_id, inline : "yes"}); + return true; + + case "mceFullPageUpdate": + TinyMCE_FullPagePlugin._addToHead(tinyMCE.getInstanceById(editor_id)); + return true; + } + + // Pass to next handler in chain + return false; + }, + + cleanup : function(type, content, inst) { + switch (type) { + case "insert_to_editor": + var tmp = content.toLowerCase(); + var pos = tmp.indexOf('', pos); + pos2 = tmp.lastIndexOf(''); + inst.fullpageTopContent = content.substring(0, pos + 1); + content = content.substring(pos + 1, pos2); + // tinyMCE.debug(inst.fullpageTopContent, content); + } else { + if (!inst.fullpageTopContent) { + var docType = tinyMCE.getParam("fullpage_default_doctype", ''); + var enc = tinyMCE.getParam("fullpage_default_encoding", 'utf-8'); + var title = tinyMCE.getParam("fullpage_default_title", 'Untitled document'); + var lang = tinyMCE.getParam("fullpage_default_langcode", 'en'); + var pi = tinyMCE.getParam("fullpage_default_xml_pi", true); + var ff = tinyMCE.getParam("fullpage_default_font_family", ""); + var fz = tinyMCE.getParam("fullpage_default_font_size", ""); + var ds = tinyMCE.getParam("fullpage_default_style", ""); + var dtc = tinyMCE.getParam("fullpage_default_text_color", ""); + + // Xml encode it + title = title.replace(/&/g, '&'); + title = title.replace(/\"/g, '"'); + title = title.replace(//g, '>'); + + tmp = ''; + + // Make default chunk + if (pi) + tmp += '\n'; + + tmp += docType + '\n'; + tmp += '\n'; + tmp += '\n'; + tmp += '\t' + title + '\n'; + tmp += '\t\n'; + tmp += '\n'; + tmp += '\n"; + + break; + } + + // Pass through to next handler in chain + return content; + }, + + // Private plugin internal methods + + _addToHead : function(inst) { + var doc = inst.getDoc(); + var head = doc.getElementsByTagName("head")[0]; + var body = doc.body; + var h = inst.fullpageTopContent; + var e = doc.createElement("body"); + var nl, i, le, tmp; + + // Remove stuff we don't want + h = h.replace(/(\r|\n)/gi, ''); + h = h.replace(/<\?[^\>]*\>/gi, ''); + h = h.replace(/<\/?(!DOCTYPE|head|html)[^\>]*\>/gi, ''); + h = h.replace(//gi, ''); + h = h.replace(//gi, ''); + h = h.replace(/<(meta|base)[^>]*>/gi, ''); + + // Make link and style elements into pre + h = h.replace(/]*)\/>/gi, '
');
+		//h = h.replace(/]*)>(.*?)<\/style>/gi, '
$2
'); + + // Make body a div + h = h.replace(/ 0) { + body.style.cssText = tinyMCE.getAttrib(nl[0], 'style'); + + if ((tmp = tinyMCE.getAttrib(nl[0], 'leftmargin')) != '' && body.style.marginLeft == '') + body.style.marginLeft = tmp + "px"; + + if ((tmp = tinyMCE.getAttrib(nl[0], 'rightmargin')) != '' && body.style.marginRight == '') + body.style.marginRight = tmp + "px"; + + if ((tmp = tinyMCE.getAttrib(nl[0], 'topmargin')) != '' && body.style.marginTop == '') + body.style.marginTop = tmp + "px"; + + if ((tmp = tinyMCE.getAttrib(nl[0], 'bottommargin')) != '' && body.style.marginBottom == '') + body.style.marginBottom = tmp + "px"; + + body.dir = tinyMCE.getAttrib(nl[0], 'dir'); + body.vLink = tinyMCE.getAttrib(nl[0], 'vlink'); + body.aLink = tinyMCE.getAttrib(nl[0], 'alink'); + body.link = tinyMCE.getAttrib(nl[0], 'link'); + body.text = tinyMCE.getAttrib(nl[0], 'text'); + + if ((tmp = tinyMCE.getAttrib(nl[0], 'background')) != '') + body.style.backgroundImage = "url('" + tmp + "')"; + + if ((tmp = tinyMCE.getAttrib(nl[0], 'bgcolor')) != '') + body.style.backgroundColor = tmp; + } + } +}; + +tinyMCE.addPlugin("fullpage", TinyMCE_FullPagePlugin);