--- a/includes/clientside/tinymce/plugins/compat2x/editor_plugin_src.js Mon Dec 21 15:41:05 2009 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,616 +0,0 @@
-/**
- * $Id: editor_plugin_src.js 264 2007-04-26 20:53:09Z spocke $
- *
- * @author Moxiecode
- * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved.
- */
-
-(function() {
- var DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, is = tinymce.is;
-
- tinymce.create('tinymce.plugins.Compat2x', {
- getInfo : function() {
- return {
- longname : 'Compat2x',
- author : 'Moxiecode Systems AB',
- authorurl : 'http://tinymce.moxiecode.com',
- infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/compat2x',
- version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion
- };
- }
- });
-
- (function() {
- // Extend tinyMCE/EditorManager
- tinymce.extend(tinyMCE, {
- addToLang : function(p, l) {
- each(l, function(v, k) {
- tinyMCE.i18n[(tinyMCE.settings.language || 'en') + '.' + (p ? p + '_' : '') + k] = v;
- });
- },
-
- getInstanceById : function(n) {
- return this.get(n);
- }
- });
- })();
-
- (function() {
- var EditorManager = tinymce.EditorManager;
-
- tinyMCE.instances = {};
- tinyMCE.plugins = {};
- tinymce.PluginManager.onAdd.add(function(pm, n, p) {
- tinyMCE.plugins[n] = p;
- });
-
- tinyMCE.majorVersion = tinymce.majorVersion;
- tinyMCE.minorVersion = tinymce.minorVersion;
- tinyMCE.releaseDate = tinymce.releaseDate;
- tinyMCE.baseURL = tinymce.baseURL;
- tinyMCE.isIE = tinyMCE.isMSIE = tinymce.isIE || tinymce.isOpera;
- tinyMCE.isMSIE5 = tinymce.isIE;
- tinyMCE.isMSIE5_0 = tinymce.isIE;
- tinyMCE.isMSIE7 = tinymce.isIE;
- tinyMCE.isGecko = tinymce.isGecko;
- tinyMCE.isSafari = tinymce.isWebKit;
- tinyMCE.isOpera = tinymce.isOpera;
- tinyMCE.isMac = false;
- tinyMCE.isNS7 = false;
- tinyMCE.isNS71 = false;
- tinyMCE.compat = true;
-
- // Extend tinyMCE class
- TinyMCE_Engine = tinyMCE;
- tinymce.extend(tinyMCE, {
- getParam : function(n, dv) {
- return this.activeEditor.getParam(n, dv);
- },
-
- addEvent : function(e, na, f, sc) {
- tinymce.dom.Event.add(e, na, f, sc || this);
- },
-
- getControlHTML : function(n) {
- return EditorManager.activeEditor.controlManager.createControl(n);
- },
-
- loadCSS : function(u) {
- tinymce.DOM.loadCSS(u);
- },
-
- importCSS : function(doc, u) {
- if (doc == document)
- this.loadCSS(u);
- else
- new tinymce.dom.DOMUtils(doc).loadCSS(u);
- },
-
- log : function() {
- console.debug.apply(console, arguments);
- },
-
- getLang : function(n, dv) {
- var v = EditorManager.activeEditor.getLang(n.replace(/^lang_/g, ''), dv);
-
- // Is number
- if (/^[0-9\-.]+$/g.test(v))
- return parseInt(v);
-
- return v;
- },
-
- isInstance : function(o) {
- return o != null && typeof(o) == "object" && o.execCommand;
- },
-
- triggerNodeChange : function() {
- EditorManager.activeEditor.nodeChanged();
- },
-
- regexpReplace : function(in_str, reg_exp, replace_str, opts) {
- var re;
-
- if (in_str == null)
- return in_str;
-
- if (typeof(opts) == "undefined")
- opts = 'g';
-
- re = new RegExp(reg_exp, opts);
-
- return in_str.replace(re, replace_str);
- },
-
- trim : function(s) {
- return tinymce.trim(s);
- },
-
- xmlEncode : function(s) {
- return tinymce.DOM.encode(s);
- },
-
- explode : function(s, d) {
- var o = [];
-
- tinymce.each(s.split(d), function(v) {
- if (v != '')
- o.push(v);
- });
-
- return o;
- },
-
- switchClass : function(id, cls) {
- var b;
-
- if (/^mceButton/.test(cls)) {
- b = EditorManager.activeEditor.controlManager.get(id);
-
- if (!b)
- return;
-
- switch (cls) {
- case "mceButtonNormal":
- b.setDisabled(false);
- b.setActive(false);
- return;
-
- case "mceButtonDisabled":
- b.setDisabled(true);
- return;
-
- case "mceButtonSelected":
- b.setActive(true);
- b.setDisabled(false);
- return;
- }
- }
- },
-
- addCSSClass : function(e, n, b) {
- return tinymce.DOM.addClass(e, n, b);
- },
-
- hasCSSClass : function(e, n) {
- return tinymce.DOM.hasClass(e, n);
- },
-
- removeCSSClass : function(e, n) {
- return tinymce.DOM.removeClass(e, n);
- },
-
- getCSSClasses : function() {
- var cl = EditorManager.activeEditor.dom.getClasses(), o = [];
-
- each(cl, function(c) {
- o.push(c['class']);
- });
-
- return o;
- },
-
- setWindowArg : function(n, v) {
- EditorManager.activeEditor.windowManager.params[n] = v;
- },
-
- getWindowArg : function(n, dv) {
- var wm = EditorManager.activeEditor.windowManager, v;
-
- v = wm.getParam(n);
- if (v === '')
- return '';
-
- return v || wm.getFeature(n) || dv;
- },
-
- getParentNode : function(n, f) {
- return this._getDOM().getParent(n, f);
- },
-
- selectElements : function(n, na, f) {
- var i, a = [], nl, x;
-
- for (x=0, na = na.split(','); x<na.length; x++)
- for (i=0, nl = n.getElementsByTagName(na[x]); i<nl.length; i++)
- (!f || f(nl[i])) && a.push(nl[i]);
-
- return a;
- },
-
- getNodeTree : function(n, na, t, nn) {
- return this.selectNodes(n, function(n) {
- return (!t || n.nodeType == t) && (!nn || n.nodeName == nn);
- }, na ? na : []);
- },
-
- getAttrib : function(e, n, dv) {
- return this._getDOM().getAttrib(e, n, dv);
- },
-
- setAttrib : function(e, n, v) {
- return this._getDOM().setAttrib(e, n, v);
- },
-
- getElementsByAttributeValue : function(n, e, a, v) {
- var i, nl = n.getElementsByTagName(e), o = [];
-
- for (i=0; i<nl.length; i++) {
- if (tinyMCE.getAttrib(nl[i], a).indexOf(v) != -1)
- o[o.length] = nl[i];
- }
-
- return o;
- },
-
- selectNodes : function(n, f, a) {
- var i;
-
- if (!a)
- a = [];
-
- if (f(n))
- a[a.length] = n;
-
- if (n.hasChildNodes()) {
- for (i=0; i<n.childNodes.length; i++)
- tinyMCE.selectNodes(n.childNodes[i], f, a);
- }
-
- return a;
- },
-
- getContent : function() {
- return EditorManager.activeEditor.getContent();
- },
-
- getParentElement : function(n, na, f) {
- if (na)
- na = new RegExp('^(' + na.toUpperCase().replace(/,/g, '|') + ')$', 'g');
-
- return this._getDOM().getParent(n, function(n) {
- return n.nodeType == 1 && (!na || na.test(n.nodeName)) && (!f || f(n));
- }, this.activeEditor.getBody());
- },
-
- importPluginLanguagePack : function(n) {
- tinymce.PluginManager.requireLangPack(n);
- },
-
- getButtonHTML : function(cn, lang, img, c, u, v) {
- var ed = EditorManager.activeEditor;
-
- img = img.replace(/\{\$pluginurl\}/g, tinyMCE.pluginURL);
- img = img.replace(/\{\$themeurl\}/g, tinyMCE.themeURL);
- lang = lang.replace(/^lang_/g, '');
-
- return ed.controlManager.createButton(cn, {
- title : lang,
- command : c,
- ui : u,
- value : v,
- scope : this,
- 'class' : 'compat',
- image : img
- });
- },
-
- addSelectAccessibility : function(e, s, w) {
- // Add event handlers
- if (!s._isAccessible) {
- s.onkeydown = tinyMCE.accessibleEventHandler;
- s.onblur = tinyMCE.accessibleEventHandler;
- s._isAccessible = true;
- s._win = w;
- }
-
- return false;
- },
-
- accessibleEventHandler : function(e) {
- var elm, win = this._win;
-
- e = tinymce.isIE ? win.event : e;
- elm = tinymce.isIE ? e.srcElement : e.target;
-
- // Unpiggyback onchange on blur
- if (e.type == "blur") {
- if (elm.oldonchange) {
- elm.onchange = elm.oldonchange;
- elm.oldonchange = null;
- }
-
- return true;
- }
-
- // Piggyback onchange
- if (elm.nodeName == "SELECT" && !elm.oldonchange) {
- elm.oldonchange = elm.onchange;
- elm.onchange = null;
- }
-
- // Execute onchange and remove piggyback
- if (e.keyCode == 13 || e.keyCode == 32) {
- elm.onchange = elm.oldonchange;
- elm.onchange();
- elm.oldonchange = null;
-
- tinyMCE.cancelEvent(e);
- return false;
- }
-
- return true;
- },
-
- cancelEvent : function(e) {
- return tinymce.dom.Event.cancel(e);
- },
-
- handleVisualAid : function(e) {
- EditorManager.activeEditor.addVisual(e);
- },
-
- getAbsPosition : function(n, r) {
- return tinymce.DOM.getPos(n, r);
- },
-
- cleanupEventStr : function(s) {
- s = "" + s;
- s = s.replace('function anonymous()\n{\n', '');
- s = s.replace('\n}', '');
- s = s.replace(/^return true;/gi, ''); // Remove event blocker
-
- return s;
- },
-
- getVisualAidClass : function(s) {
- // TODO: Implement
- return s;
- },
-
- parseStyle : function(s) {
- return this._getDOM().parseStyle(s);
- },
-
- serializeStyle : function(s) {
- return this._getDOM().serializeStyle(s);
- },
-
- openWindow : function(tpl, args) {
- var ed = EditorManager.activeEditor, o = {}, n;
-
- // Convert name/value array to object
- for (n in tpl)
- o[n] = tpl[n];
-
- tpl = o;
-
- args = args || {};
- tpl.url = new tinymce.util.URI(tinymce.ThemeManager.themeURLs[ed.settings.theme]).toAbsolute(tpl.file);
- tpl.inline = tpl.inline || args.inline;
-
- ed.windowManager.open(tpl, args);
- },
-
- closeWindow : function(win) {
- EditorManager.activeEditor.windowManager.close(win);
- },
-
- getOuterHTML : function(e) {
- return tinymce.DOM.getOuterHTML(e);
- },
-
- setOuterHTML : function(e, h, d) {
- return tinymce.DOM.setOuterHTML(e, h, d);
- },
-
- hasPlugin : function(n) {
- return tinymce.PluginManager.get(n) != null;
- },
-
- _setEventsEnabled : function() {
- // Ignore it!!
- },
-
- addPlugin : function(pn, f) {
- var t = this;
-
- function PluginWrapper(ed) {
- tinyMCE.selectedInstance = ed;
-
- ed.onInit.add(function() {
- t.settings = ed.settings;
- t.settings['base_href'] = tinyMCE.documentBasePath;
- tinyMCE.settings = t.settings;
- tinyMCE.documentBasePath = ed.documentBasePath;
- //ed.formElement = DOM.get(ed.id);
-
- if (f.initInstance)
- f.initInstance(ed);
-
- ed.contentDocument = ed.getDoc();
- ed.contentWindow = ed.getWin();
- ed.undoRedo = ed.undoManager;
- ed.startContent = ed.getContent({format : 'raw'});
-
- tinyMCE.instances[ed.id] = ed;
- tinyMCE.loadedFiles = [];
- });
-
- ed.onActivate.add(function() {
- tinyMCE.settings = ed.settings;
- tinyMCE.selectedInstance = ed;
- });
-
- /* if (f.removeInstance) {
- ed.onDestroy.add(function() {
- return f.removeInstance(ed.id);
- });
- }*/
-
- if (f.handleNodeChange) {
- ed.onNodeChange.add(function(ed, cm, n) {
- f.handleNodeChange(ed.id, n, 0, 0, false, !ed.selection.isCollapsed());
- });
- }
-
- if (f.onChange) {
- ed.onChange.add(function(ed, n) {
- return f.onChange(ed);
- });
- }
-
- if (f.cleanup) {
- ed.onGetContent.add(function() {
- //f.cleanup(type, content, inst);
- });
- }
-
- this.getInfo = function() {
- return f.getInfo();
- };
-
- this.createControl = function(n) {
- tinyMCE.pluginURL = tinymce.baseURL + '/plugins/' + pn;
- tinyMCE.themeURL = tinymce.baseURL + '/themes/' + tinyMCE.activeEditor.settings.theme;
-
- if (f.getControlHTML)
- return f.getControlHTML(n);
-
- return null;
- };
-
- this.execCommand = function(cmd, ui, val) {
- if (f.execCommand)
- return f.execCommand(ed.id, ed.getBody(), cmd, ui, val);
-
- return false;
- };
- };
-
- tinymce.PluginManager.add(pn, PluginWrapper);
- },
-
- _getDOM : function() {
- return tinyMCE.activeEditor ? tinyMCE.activeEditor.dom : tinymce.DOM;
- },
-
- convertRelativeToAbsoluteURL : function(b, u) {
- return new tinymce.util.URI(b).toAbsolute(u);
- },
-
- convertAbsoluteURLToRelativeURL : function(b, u) {
- return new tinymce.util.URI(b).toRelative(u);
- }
- });
-
- // Extend Editor class
- tinymce.extend(tinymce.Editor.prototype, {
- getFocusElement : function() {
- return this.selection.getNode();
- },
-
- getData : function(n) {
- if (!this.data)
- this.data = [];
-
- if (!this.data[n])
- this.data[n] = [];
-
- return this.data[n];
- },
-
- hasPlugin : function(n) {
- return this.plugins[n] != null;
- },
-
- getContainerWin : function() {
- return window;
- },
-
- getHTML : function(raw) {
- return this.getContent({ format : raw ? 'raw' : 'html'});
- },
-
- setHTML : function(h) {
- this.setContent(h);
- },
-
- getSel : function() {
- return this.selection.getSel();
- },
-
- getRng : function() {
- return this.selection.getRng();
- },
-
- isHidden : function() {
- var s;
-
- if (!tinymce.isGecko)
- return false;
-
- s = this.getSel();
-
- // Weird, wheres that cursor selection?
- return (!s || !s.rangeCount || s.rangeCount == 0);
- },
-
- translate : function(s) {
- var c = this.settings.language, o;
-
- if (!s)
- return s;
-
- o = tinymce.EditorManager.i18n[c + '.' + s] || s.replace(/{\#([^}]+)\}/g, function(a, b) {
- return tinymce.EditorManager.i18n[c + '.' + b] || '{#' + b + '}';
- });
-
- o = o.replace(/{\$lang_([^}]+)\}/g, function(a, b) {
- return tinymce.EditorManager.i18n[c + '.' + b] || '{$lang_' + b + '}';
- });
-
- return o;
- },
-
- repaint : function() {
- this.execCommand('mceRepaint');
- }
- });
-
- // Extend selection
- tinymce.extend(tinymce.dom.Selection.prototype, {
- getSelectedText : function() {
- return this.getContent({format : 'text'});
- },
-
- getSelectedHTML : function() {
- return this.getContent({format : 'html'});
- },
-
- getFocusElement : function() {
- return this.getNode();
- },
-
- selectNode : function(node, collapse, select_text_node, to_start) {
- var t = this;
-
- t.select(node, select_text_node || 0);
-
- if (!is(collapse))
- collapse = true;
-
- if (collapse) {
- if (!is(to_start))
- to_start = true;
-
- t.collapse(to_start);
- }
- }
- });
- }).call(this);
-
- // Register plugin
- tinymce.PluginManager.add('compat2x', tinymce.plugins.Compat2x);
-})();
-