Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

BUGFIX Removed tinymce-advcode plugin which breaks with new TinyMCE a…

…nd newer browsers. Both the plugin and the underlying 'codepress' engine are unmaintained. Fall back to standard (non-highlighted) TinyMCE <textarea> editing (fixes #6779)
  • Loading branch information...
commit 5bf79f8146f84fcb106e084ecb062291ebab6ec3 1 parent 91b0c7b
@chillu chillu authored
Showing with 1 addition and 3,113 deletions.
  1. +1 −2  admin/_config.php
  2. +0 −1  forms/HtmlEditorConfig.php
  3. +0 −8 thirdparty/tinymce-advcode/.piston.yml
  4. +0 −11 thirdparty/tinymce-advcode/README
  5. +0 −3  thirdparty/tinymce-advcode/README.txt
  6. +0 −29 thirdparty/tinymce-advcode/dialog.html
  7. +0 −41 thirdparty/tinymce-advcode/editor_plugin.js
  8. +0 −41 thirdparty/tinymce-advcode/editor_plugin_src.js
  9. BIN  thirdparty/tinymce-advcode/img/html.png
  10. +0 −21 thirdparty/tinymce-advcode/js/codepress/codepress.css
  11. +0 −35 thirdparty/tinymce-advcode/js/codepress/codepress.html
  12. +0 −138 thirdparty/tinymce-advcode/js/codepress/codepress.js
  13. +0 −293 thirdparty/tinymce-advcode/js/codepress/engines/gecko.js
  14. 0  thirdparty/tinymce-advcode/js/codepress/engines/khtml.js
  15. +0 −304 thirdparty/tinymce-advcode/js/codepress/engines/msie.js
  16. +0 −21 thirdparty/tinymce-advcode/js/codepress/engines/older.js
  17. +0 −260 thirdparty/tinymce-advcode/js/codepress/engines/opera.js
  18. BIN  thirdparty/tinymce-advcode/js/codepress/images/line-numbers.png
  19. +0 −443 thirdparty/tinymce-advcode/js/codepress/index.html
  20. +0 −71 thirdparty/tinymce-advcode/js/codepress/languages/asp.css
  21. +0 −117 thirdparty/tinymce-advcode/js/codepress/languages/asp.js
  22. +0 −13 thirdparty/tinymce-advcode/js/codepress/languages/autoit.css
  23. +0 −32 thirdparty/tinymce-advcode/js/codepress/languages/autoit.js
  24. +0 −9 thirdparty/tinymce-advcode/js/codepress/languages/csharp.css
  25. +0 −25 thirdparty/tinymce-advcode/js/codepress/languages/csharp.js
  26. +0 −10 thirdparty/tinymce-advcode/js/codepress/languages/css.css
  27. +0 −23 thirdparty/tinymce-advcode/js/codepress/languages/css.js
  28. +0 −9 thirdparty/tinymce-advcode/js/codepress/languages/generic.css
  29. +0 −25 thirdparty/tinymce-advcode/js/codepress/languages/generic.js
  30. +0 −13 thirdparty/tinymce-advcode/js/codepress/languages/html.css
  31. +0 −59 thirdparty/tinymce-advcode/js/codepress/languages/html.js
  32. +0 −7 thirdparty/tinymce-advcode/js/codepress/languages/java.css
  33. +0 −24 thirdparty/tinymce-advcode/js/codepress/languages/java.js
  34. +0 −8 thirdparty/tinymce-advcode/js/codepress/languages/javascript.css
  35. +0 −30 thirdparty/tinymce-advcode/js/codepress/languages/javascript.js
  36. +0 −11 thirdparty/tinymce-advcode/js/codepress/languages/perl.css
  37. +0 −27 thirdparty/tinymce-advcode/js/codepress/languages/perl.js
  38. +0 −12 thirdparty/tinymce-advcode/js/codepress/languages/php.css
  39. +0 −61 thirdparty/tinymce-advcode/js/codepress/languages/php.js
  40. +0 −10 thirdparty/tinymce-advcode/js/codepress/languages/ruby.css
  41. +0 −26 thirdparty/tinymce-advcode/js/codepress/languages/ruby.js
  42. +0 −10 thirdparty/tinymce-advcode/js/codepress/languages/sql.css
  43. +0 −30 thirdparty/tinymce-advcode/js/codepress/languages/sql.js
  44. +0 −5 thirdparty/tinymce-advcode/js/codepress/languages/text.css
  45. +0 −9 thirdparty/tinymce-advcode/js/codepress/languages/text.js
  46. +0 −71 thirdparty/tinymce-advcode/js/codepress/languages/vbscript.css
  47. +0 −117 thirdparty/tinymce-advcode/js/codepress/languages/vbscript.js
  48. +0 −15 thirdparty/tinymce-advcode/js/codepress/languages/xsl.css
  49. +0 −103 thirdparty/tinymce-advcode/js/codepress/languages/xsl.js
  50. +0 −458 thirdparty/tinymce-advcode/js/codepress/license.txt
  51. +0 −15 thirdparty/tinymce-advcode/js/dialog.js
  52. +0 −3  thirdparty/tinymce-advcode/langs/en.js
  53. +0 −4 thirdparty/tinymce-advcode/langs/en_dlg.js
View
3  admin/_config.php
@@ -31,8 +31,7 @@
HtmlEditorConfig::get('cms')->enablePlugins(array('ssbuttons' => '../../../cms/javascript/tinymce_ssbuttons/editor_plugin_src.js'));
HtmlEditorConfig::get('cms')->insertButtonsBefore('formatselect', 'styleselect');
-HtmlEditorConfig::get('cms')->insertButtonsBefore('advcode', 'ssimage', 'ssflash', 'sslink', 'unlink', 'anchor', 'separator' );
-HtmlEditorConfig::get('cms')->insertButtonsAfter ('advcode', 'fullscreen', 'separator');
+HtmlEditorConfig::get('cms')->addButtonsToLine(2, 'ssimage', 'ssflash', 'sslink', 'unlink', 'anchor', 'separator','code', 'fullscreen', 'separator');
HtmlEditorConfig::get('cms')->removeButtons('tablecontrols');
HtmlEditorConfig::get('cms')->addButtonsToLine(3, 'tablecontrols');
View
1  forms/HtmlEditorConfig.php
@@ -93,7 +93,6 @@ static function get_available_configs_map() {
'table' => null,
'emotions' => null,
'paste' => null,
- 'advcode' => '../../../sapphire/thirdparty/tinymce-advcode/editor_plugin_src.js',
'spellchecker' => null
);
View
8 thirdparty/tinymce-advcode/.piston.yml
@@ -1,8 +0,0 @@
----
-format: 1
-handler:
- commit: 1af68f76ab6bd5008a06706a3cfa02feb7bd4835
- branch: master
-lock: false
-repository_url: git://github.com/dinsley/tinymce-codepress.git
-repository_class: Piston::Git::Repository
View
11 thirdparty/tinymce-advcode/README
@@ -1,11 +0,0 @@
-tinymce-codepress
----------------------
-
-Provides syntax highlighting in the HTML source editing dialog with Codepress.
-
-Installation:
- * Rename directory to 'advcode' in TinyMCE plugins directory.
- * Add 'advcode' plugin to TinyMCE init configuration.
- * Replace the existing source editing button with 'advcode' in your toolbar configuration.
-
-
View
3  thirdparty/tinymce-advcode/README.txt
@@ -1,3 +0,0 @@
-# SilverStripe Update Instructions
-
-Copy editor_plugin.js to editor_plugin_src.js to adhere to TinyMCE conventions, see http://wiki.moxiecode.com/index.php/TinyMCE:Create_plugin/3.x
View
29 thirdparty/tinymce-advcode/dialog.html
@@ -1,29 +0,0 @@
-<html>
- <head>
- <title>{#advcode_dlg.title}</title>
- <script type="text/javascript" src="../../thirdparty/tinymce/tiny_mce_popup.js"></script>
- <script type="text/javascript" src="js/dialog.js"></script>
- <script type="text/javascript" src="js/codepress/codepress.js"></script>
- </head>
-
- <body>
- <form name="source" onsubmit="CodeDialog.insert();return false;">
- <textarea id="codepress" class="codepress html linenumbers-on" cols="100" rows="25"></textarea>
- </form>
-
- <div>
- <input type="checkbox" value="1" checked="checked" onclick="codepress.toggleLineNumbers()"/>
- <label>{#advcode_dlg.number_toggle}</label>
- </div>
-
- <div class="mceActionPanel">
- <div style="float: left">
- <input type="button" id="insert" name="insert" value="{#insert}" onclick="CodeDialog.insert();" />
- </div>
-
- <div style="float: right">
- <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
- </div>
- </div>
- </body>
-</html>
View
41 thirdparty/tinymce-advcode/editor_plugin.js
@@ -1,41 +0,0 @@
-(function() {
- tinymce.PluginManager.requireLangPack('advcode');
-
- tinymce.create('tinymce.plugins.AdvancedCodePlugin', {
- init : function(ed, url) {
- // Register commands
- ed.addCommand('mceAdvancedCode', function() {
- ed.windowManager.open({
- file : url + '/dialog.html',
- width : 750 + parseInt(ed.getLang('advcode.delta_width', 0)),
- height : 450 + parseInt(ed.getLang('advcode.delta_height', 0)),
- inline : 1
- }, {
- plugin_url : url
- });
- });
-
- // Register buttons
- ed.addButton('advcode', {
- title : ed.getLang('advcode.desc', 0),
- cmd : 'mceAdvancedCode',
- image : url + '/img/html.png'
- });
-
- ed.onNodeChange.add(function(ed, cm, n) {});
- },
-
- getInfo : function() {
- return {
- longname : 'Advanced Code Editor',
- author : 'Daniel Insley',
- authorurl : 'http://www.danielinsley.com',
- infourl : 'http://github.com/dinsley/tinymce-codepress/tree/master',
- version : tinymce.majorVersion + "." + tinymce.minorVersion
- };
- }
- });
-
- // Register plugin
- tinymce.PluginManager.add('advcode', tinymce.plugins.AdvancedCodePlugin);
-})();
View
41 thirdparty/tinymce-advcode/editor_plugin_src.js
@@ -1,41 +0,0 @@
-(function() {
- tinymce.PluginManager.requireLangPack('advcode');
-
- tinymce.create('tinymce.plugins.AdvancedCodePlugin', {
- init : function(ed, url) {
- // Register commands
- ed.addCommand('mceAdvancedCode', function() {
- ed.windowManager.open({
- file : url + '/dialog.html',
- width : 750 + parseInt(ed.getLang('advcode.delta_width', 0)),
- height : 450 + parseInt(ed.getLang('advcode.delta_height', 0)),
- inline : 1
- }, {
- plugin_url : url
- });
- });
-
- // Register buttons
- ed.addButton('advcode', {
- title : ed.getLang('advcode.desc', 0),
- cmd : 'mceAdvancedCode',
- image : url + '/img/html.png'
- });
-
- ed.onNodeChange.add(function(ed, cm, n) {});
- },
-
- getInfo : function() {
- return {
- longname : 'Advanced Code Editor',
- author : 'Daniel Insley',
- authorurl : 'http://www.danielinsley.com',
- infourl : 'http://github.com/dinsley/tinymce-codepress/tree/master',
- version : tinymce.majorVersion + "." + tinymce.minorVersion
- };
- }
- });
-
- // Register plugin
- tinymce.PluginManager.add('advcode', tinymce.plugins.AdvancedCodePlugin);
-})();
View
BIN  thirdparty/tinymce-advcode/img/html.png
Deleted file not rendered
View
21 thirdparty/tinymce-advcode/js/codepress/codepress.css
@@ -1,21 +0,0 @@
-body {
- margin-top:13px;
- _margin-top:14px;
- background:white;
- margin-left:32px;
- font-family:monospace;
- font-size:13px;
- white-space:pre;
- background-image:url("images/line-numbers.png");
- background-repeat:repeat-y;
- background-position:0 3px;
- line-height:16px;
- height:100%;
-}
-pre {margin:0;}
-html>body{background-position:0 2px;}
-P {margin:0;padding:0;border:0;outline:0;display:block;white-space:pre;}
-b, i, s, u, a, em, tt, ins, big, cite, strong, var, dfn {text-decoration:none;font-weight:normal;font-style:normal;font-size:13px;}
-
-body.hide-line-numbers {background:white;margin-left:16px;}
-body.show-line-numbers {background-image:url("images/line-numbers.png");margin-left:32px;}
View
35 thirdparty/tinymce-advcode/js/codepress/codepress.html
@@ -1,35 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html>
-<head>
- <title>CodePress - Real Time Syntax Highlighting Editor written in JavaScript</title>
- <meta name="description" content="CodePress - source code editor window" />
-
- <script type="text/javascript">
- var language = 'generic';
- var engine = 'older';
- var ua = navigator.userAgent;
- var ts = (new Date).getTime(); // timestamp to avoid cache
- var lh = location.href;
-
- if(ua.match('MSIE')) engine = 'msie';
- else if(ua.match('KHTML')) engine = 'khtml';
- else if(ua.match('Opera')) engine = 'opera';
- else if(ua.match('Gecko')) engine = 'gecko';
-
- if(lh.match('language=')) language = lh.replace(/.*language=(.*?)(&.*)?$/,'$1');
-
- document.write('<link type="text/css" href="codepress.css?ts='+ts+'" rel="stylesheet" />');
- document.write('<link type="text/css" href="languages/'+language+'.css?ts='+ts+'" rel="stylesheet" id="cp-lang-style" />');
- document.write('<scr'+'ipt type="text/javascript" src="engines/'+engine+'.js?ts='+ts+'"></scr'+'ipt>');
- document.write('<scr'+'ipt type="text/javascript" src="languages/'+language+'.js?ts='+ts+'"></scr'+'ipt>');
- </script>
-
-</head>
-
-<script type="text/javascript">
-if(engine == "msie" || engine == "gecko") document.write('<body><pre> </pre></body>');
-else if(engine == "opera") document.write('<body></body>');
-// else if(engine == "khtml") document.write('<body> </body>');
-</script>
-
-</html>
View
138 thirdparty/tinymce-advcode/js/codepress/codepress.js
@@ -1,138 +0,0 @@
-/*
- * CodePress - Real Time Syntax Highlighting Editor written in JavaScript - http://codepress.org/
- *
- * Copyright (C) 2006 Fernando M.A.d.S. <fermads@gmail.com>
- *
- * This program is free software; you can redistribute it and/or modify it under the terms of the
- * GNU Lesser General Public License as published by the Free Software Foundation.
- *
- * Read the full licence: http://www.opensource.org/licenses/lgpl-license.php
- */
-
-CodePress = function(obj) {
- var self = document.createElement('iframe');
- self.textarea = obj;
- self.textarea.disabled = true;
- self.textarea.style.overflow = 'hidden';
- self.style.height = '85%';
- self.style.width = '100%';
- self.textarea.style.overflow = 'auto';
- //self.style.border = '1px solid gray';
- self.frameBorder = 0; // remove IE internal iframe border
- self.style.visibility = 'hidden';
- self.style.position = 'absolute';
- self.options = self.textarea.className;
-
- self.initialize = function() {
- self.editor = self.contentWindow.CodePress;
- self.editor.body = self.contentWindow.document.getElementsByTagName('body')[0];
- self.editor.setCode(self.textarea.value);
- self.setOptions();
- self.editor.syntaxHighlight('init');
- self.textarea.style.display = 'none';
- self.style.position = 'static';
- self.style.visibility = 'visible';
- self.style.display = 'inline';
- }
-
- // obj can by a textarea id or a string (code)
- self.edit = function(obj,language) {
- if(obj) self.textarea.value = document.getElementById(obj) ? document.getElementById(obj).value : obj;
- if(!self.textarea.disabled) return;
- self.language = language ? language : self.getLanguage();
- self.src = CodePress.path+'codepress.html?language='+self.language+'&ts='+(new Date).getTime();
- if(self.attachEvent) self.attachEvent('onload',self.initialize);
- else self.addEventListener('load',self.initialize,false);
- }
-
- self.getLanguage = function() {
- for (language in CodePress.languages)
- if(self.options.match('\\b'+language+'\\b'))
- return CodePress.languages[language] ? language : 'generic';
- }
-
- self.setOptions = function() {
- if(self.options.match('autocomplete-off')) self.toggleAutoComplete();
- if(self.options.match('readonly-on')) self.toggleReadOnly();
- if(self.options.match('linenumbers-off')) self.toggleLineNumbers();
- }
-
- self.getCode = function() {
- return self.textarea.disabled ? self.editor.getCode() : self.textarea.value;
- }
-
- self.setCode = function(code) {
- self.textarea.disabled ? self.editor.setCode(code) : self.textarea.value = code;
- }
-
- self.toggleAutoComplete = function() {
- self.editor.autocomplete = (self.editor.autocomplete) ? false : true;
- }
-
- self.toggleReadOnly = function() {
- self.textarea.readOnly = (self.textarea.readOnly) ? false : true;
- if(self.style.display != 'none') // prevent exception on FF + iframe with display:none
- self.editor.readOnly(self.textarea.readOnly ? true : false);
- }
-
- self.toggleLineNumbers = function() {
- var cn = self.editor.body.className;
- self.editor.body.className = (cn==''||cn=='show-line-numbers') ? 'hide-line-numbers' : 'show-line-numbers';
- }
-
- self.toggleEditor = function() {
- if(self.textarea.disabled) {
- self.textarea.value = self.getCode();
- self.textarea.disabled = false;
- self.style.display = 'none';
- self.textarea.style.display = 'inline';
- }
- else {
- self.textarea.disabled = true;
- self.setCode(self.textarea.value);
- self.editor.syntaxHighlight('init');
- self.style.display = 'inline';
- self.textarea.style.display = 'none';
- }
- }
-
- self.edit();
- return self;
-}
-
-CodePress.languages = {
- csharp : 'C#',
- css : 'CSS',
- generic : 'Generic',
- html : 'HTML',
- java : 'Java',
- javascript : 'JavaScript',
- perl : 'Perl',
- ruby : 'Ruby',
- php : 'PHP',
- text : 'Text',
- sql : 'SQL',
- vbscript : 'VBScript'
-}
-
-
-CodePress.run = function() {
- s = document.getElementsByTagName('script');
- for(var i=0,n=s.length;i<n;i++) {
- if(s[i].src.match('codepress.js')) {
- CodePress.path = s[i].src.replace('codepress.js','');
- }
- }
- t = document.getElementsByTagName('textarea');
- for(var i=0,n=t.length;i<n;i++) {
- if(t[i].className.match('codepress')) {
- id = t[i].id;
- t[i].id = id+'_cp';
- eval(id+' = new CodePress(t[i])');
- t[i].parentNode.insertBefore(eval(id), t[i]);
- }
- }
-}
-
-if(window.attachEvent) window.attachEvent('onload',CodePress.run);
-else window.addEventListener('DOMContentLoaded',CodePress.run,false);
View
293 thirdparty/tinymce-advcode/js/codepress/engines/gecko.js
@@ -1,293 +0,0 @@
-/*
- * CodePress - Real Time Syntax Highlighting Editor written in JavaScript - http://codepress.org/
- *
- * Copyright (C) 2007 Fernando M.A.d.S. <fermads@gmail.com>
- *
- * Developers:
- * Fernando M.A.d.S. <fermads@gmail.com>
- * Michael Hurni <michael.hurni@gmail.com>
- * Contributors:
- * Martin D. Kirk
- *
- * This program is free software; you can redistribute it and/or modify it under the terms of the
- * GNU Lesser General Public License as published by the Free Software Foundation.
- *
- * Read the full licence: http://www.opensource.org/licenses/lgpl-license.php
- */
-
-CodePress = {
- scrolling : false,
- autocomplete : true,
-
- // set initial vars and start sh
- initialize : function() {
- if(typeof(editor)=='undefined' && !arguments[0]) return;
- body = document.getElementsByTagName('body')[0];
- body.innerHTML = body.innerHTML.replace(/\n/g,"");
- chars = '|32|46|62|8|'; // charcodes that trigger syntax highlighting
- cc = '\u2009'; // carret char
- editor = document.getElementsByTagName('pre')[0];
- document.designMode = 'on';
- document.addEventListener('keypress', this.keyHandler, true);
- window.addEventListener('scroll', function() { if(!CodePress.scrolling) CodePress.syntaxHighlight('scroll') }, false);
- completeChars = this.getCompleteChars();
- completeEndingChars = this.getCompleteEndingChars();
- },
-
- // treat key bindings
- keyHandler : function(evt) {
- keyCode = evt.keyCode;
- charCode = evt.charCode;
- fromChar = String.fromCharCode(charCode);
-
- if((evt.ctrlKey || evt.metaKey) && evt.shiftKey && charCode!=90) { // shortcuts = ctrl||appleKey+shift+key!=z(undo)
- CodePress.shortcuts(charCode?charCode:keyCode);
- }
- else if( (completeEndingChars.indexOf('|'+fromChar+'|')!= -1 || completeChars.indexOf('|'+fromChar+'|')!=-1) && CodePress.autocomplete) { // auto complete
- if(!CodePress.completeEnding(fromChar))
- CodePress.complete(fromChar);
- }
- else if(chars.indexOf('|'+charCode+'|')!=-1||keyCode==13) { // syntax highlighting
- top.setTimeout(function(){CodePress.syntaxHighlight('generic');},100);
- }
- else if(keyCode==9 || evt.tabKey) { // snippets activation (tab)
- CodePress.snippets(evt);
- }
- else if(keyCode==46||keyCode==8) { // save to history when delete or backspace pressed
- CodePress.actions.history[CodePress.actions.next()] = editor.innerHTML;
- }
- else if((charCode==122||charCode==121||charCode==90) && evt.ctrlKey) { // undo and redo
- (charCode==121||evt.shiftKey) ? CodePress.actions.redo() : CodePress.actions.undo();
- evt.preventDefault();
- }
- else if(charCode==118 && evt.ctrlKey) { // handle paste
- top.setTimeout(function(){CodePress.syntaxHighlight('generic');},100);
- }
- else if(charCode==99 && evt.ctrlKey) { // handle cut
- //alert(window.getSelection().getRangeAt(0).toString().replace(/\t/g,'FFF'));
- }
-
- },
-
- // put cursor back to its original position after every parsing
- findString : function() {
- if(self.find(cc))
- window.getSelection().getRangeAt(0).deleteContents();
- },
-
- // split big files, highlighting parts of it
- split : function(code,flag) {
- if(flag=='scroll') {
- this.scrolling = true;
- return code;
- }
- else {
- this.scrolling = false;
- mid = code.indexOf(cc);
- if(mid-2000<0) {ini=0;end=4000;}
- else if(mid+2000>code.length) {ini=code.length-4000;end=code.length;}
- else {ini=mid-2000;end=mid+2000;}
- code = code.substring(ini,end);
- return code;
- }
- },
-
- getEditor : function() {
- if(!document.getElementsByTagName('pre')[0]) {
- body = document.getElementsByTagName('body')[0];
- if(!body.innerHTML) return body;
- if(body.innerHTML=="<br>") body.innerHTML = "<pre> </pre>";
- else body.innerHTML = "<pre>"+body.innerHTML+"</pre>";
- }
- return document.getElementsByTagName('pre')[0];
- },
-
- // syntax highlighting parser
- syntaxHighlight : function(flag) {
- //if(document.designMode=='off') document.designMode='on'
- if(flag != 'init') { window.getSelection().getRangeAt(0).insertNode(document.createTextNode(cc));}
- editor = CodePress.getEditor();
- o = editor.innerHTML;
- o = o.replace(/<br>/g,'\n');
- o = o.replace(/<.*?>/g,'');
- x = z = this.split(o,flag);
- x = x.replace(/\n/g,'<br>');
-
- if(arguments[1]&&arguments[2]) x = x.replace(arguments[1],arguments[2]);
-
- for(i=0;i<Language.syntax.length;i++)
- x = x.replace(Language.syntax[i].input,Language.syntax[i].output);
-
- editor.innerHTML = this.actions.history[this.actions.next()] = (flag=='scroll') ? x : o.split(z).join(x);
- if(flag!='init') this.findString();
- },
-
- getLastWord : function() {
- var rangeAndCaret = CodePress.getRangeAndCaret();
- words = rangeAndCaret[0].substring(rangeAndCaret[1]-40,rangeAndCaret[1]);
- words = words.replace(/[\s\n\r\);\W]/g,'\n').split('\n');
- return words[words.length-1].replace(/[\W]/gi,'').toLowerCase();
- },
-
- snippets : function(evt) {
- var snippets = Language.snippets;
- var trigger = this.getLastWord();
- for (var i=0; i<snippets.length; i++) {
- if(snippets[i].input == trigger) {
- var content = snippets[i].output.replace(/</g,'&lt;');
- content = content.replace(/>/g,'&gt;');
- if(content.indexOf('$0')<0) content += cc;
- else content = content.replace(/\$0/,cc);
- content = content.replace(/\n/g,'<br>');
- var pattern = new RegExp(trigger+cc,'gi');
- evt.preventDefault(); // prevent the tab key from being added
- this.syntaxHighlight('snippets',pattern,content);
- }
- }
- },
-
- readOnly : function() {
- document.designMode = (arguments[0]) ? 'off' : 'on';
- },
-
- complete : function(trigger) {
- window.getSelection().getRangeAt(0).deleteContents();
- var complete = Language.complete;
- for (var i=0; i<complete.length; i++) {
- if(complete[i].input == trigger) {
- var pattern = new RegExp('\\'+trigger+cc);
- var content = complete[i].output.replace(/\$0/g,cc);
- parent.setTimeout(function () { CodePress.syntaxHighlight('complete',pattern,content)},0); // wait for char to appear on screen
- }
- }
- },
-
- getCompleteChars : function() {
- var cChars = '';
- for(var i=0;i<Language.complete.length;i++)
- cChars += '|'+Language.complete[i].input;
- return cChars+'|';
- },
-
- getCompleteEndingChars : function() {
- var cChars = '';
- for(var i=0;i<Language.complete.length;i++)
- cChars += '|'+Language.complete[i].output.charAt(Language.complete[i].output.length-1);
- return cChars+'|';
- },
-
- completeEnding : function(trigger) {
- var range = window.getSelection().getRangeAt(0);
- try {
- range.setEnd(range.endContainer, range.endOffset+1)
- }
- catch(e) {
- return false;
- }
- var next_character = range.toString()
- range.setEnd(range.endContainer, range.endOffset-1)
- if(next_character != trigger) return false;
- else {
- range.setEnd(range.endContainer, range.endOffset+1)
- range.deleteContents();
- return true;
- }
- },
-
- shortcuts : function() {
- var cCode = arguments[0];
- if(cCode==13) cCode = '[enter]';
- else if(cCode==32) cCode = '[space]';
- else cCode = '['+String.fromCharCode(charCode).toLowerCase()+']';
- for(var i=0;i<Language.shortcuts.length;i++)
- if(Language.shortcuts[i].input == cCode)
- this.insertCode(Language.shortcuts[i].output,false);
- },
-
- getRangeAndCaret : function() {
- var range = window.getSelection().getRangeAt(0);
- var range2 = range.cloneRange();
- var node = range.endContainer;
- var caret = range.endOffset;
- range2.selectNode(node);
- return [range2.toString(),caret];
- },
-
- insertCode : function(code,replaceCursorBefore) {
- var range = window.getSelection().getRangeAt(0);
- var node = window.document.createTextNode(code);
- var selct = window.getSelection();
- var range2 = range.cloneRange();
- // Insert text at cursor position
- selct.removeAllRanges();
- range.deleteContents();
- range.insertNode(node);
- // Move the cursor to the end of text
- range2.selectNode(node);
- range2.collapse(replaceCursorBefore);
- selct.removeAllRanges();
- selct.addRange(range2);
- },
-
- // get code from editor
- getCode : function() {
- if(!document.getElementsByTagName('pre')[0] || editor.innerHTML == '')
- editor = CodePress.getEditor();
- var code = editor.innerHTML;
- code = code.replace(/<br>/g,'\n');
- code = code.replace(/\u2009/g,'');
- code = code.replace(/<.*?>/g,'');
- code = code.replace(/&lt;/g,'<');
- code = code.replace(/&gt;/g,'>');
- code = code.replace(/&amp;/gi,'&');
- return code;
- },
-
- // put code inside editor
- setCode : function() {
- var code = arguments[0];
- code = code.replace(/\u2009/gi,'');
- code = code.replace(/&/gi,'&amp;');
- code = code.replace(/</g,'&lt;');
- code = code.replace(/>/g,'&gt;');
- editor.innerHTML = code;
- if (code == '')
- document.getElementsByTagName('body')[0].innerHTML = '';
- },
-
- // undo and redo methods
- actions : {
- pos : -1, // actual history position
- history : [], // history vector
-
- undo : function() {
- editor = CodePress.getEditor();
- if(editor.innerHTML.indexOf(cc)==-1){
- if(editor.innerHTML != " ")
- window.getSelection().getRangeAt(0).insertNode(document.createTextNode(cc));
- this.history[this.pos] = editor.innerHTML;
- }
- this.pos --;
- if(typeof(this.history[this.pos])=='undefined') this.pos ++;
- editor.innerHTML = this.history[this.pos];
- if(editor.innerHTML.indexOf(cc)>-1) editor.innerHTML+=cc;
- CodePress.findString();
- },
-
- redo : function() {
- // editor = CodePress.getEditor();
- this.pos++;
- if(typeof(this.history[this.pos])=='undefined') this.pos--;
- editor.innerHTML = this.history[this.pos];
- CodePress.findString();
- },
-
- next : function() { // get next vector position and clean old ones
- if(this.pos>20) this.history[this.pos-21] = undefined;
- return ++this.pos;
- }
- }
-}
-
-Language={};
-window.addEventListener('load', function() { CodePress.initialize('new'); }, true);
View
0  thirdparty/tinymce-advcode/js/codepress/engines/khtml.js
No changes.
View
304 thirdparty/tinymce-advcode/js/codepress/engines/msie.js
@@ -1,304 +0,0 @@
-/*
- * CodePress - Real Time Syntax Highlighting Editor written in JavaScript - http://codepress.org/
- *
- * Copyright (C) 2007 Fernando M.A.d.S. <fermads@gmail.com>
- *
- * Developers:
- * Fernando M.A.d.S. <fermads@gmail.com>
- * Michael Hurni <michael.hurni@gmail.com>
- * Contributors:
- * Martin D. Kirk
- *
- * This program is free software; you can redistribute it and/or modify it under the terms of the
- * GNU Lesser General Public License as published by the Free Software Foundation.
- *
- * Read the full licence: http://www.opensource.org/licenses/lgpl-license.php
- */
-
-CodePress = {
- scrolling : false,
- autocomplete : true,
-
- // set initial vars and start sh
- initialize : function() {
- if(typeof(editor)=='undefined' && !arguments[0]) return;
- chars = '|32|46|62|'; // charcodes that trigger syntax highlighting
- cc = '\u2009'; // carret char
- editor = document.getElementsByTagName('pre')[0];
- editor.contentEditable = 'true';
- document.getElementsByTagName('body')[0].onfocus = function() {editor.focus();}
- document.attachEvent('onkeydown', this.metaHandler);
- document.attachEvent('onkeypress', this.keyHandler);
- window.attachEvent('onscroll', function() { if(!CodePress.scrolling) setTimeout(function(){CodePress.syntaxHighlight('scroll')},1)});
- completeChars = this.getCompleteChars();
- completeEndingChars = this.getCompleteEndingChars();
- setTimeout(function() { window.scroll(0,0) },50); // scroll IE to top
- },
-
- // treat key bindings
- keyHandler : function(evt) {
- charCode = evt.keyCode;
- fromChar = String.fromCharCode(charCode);
-
- if( (completeEndingChars.indexOf('|'+fromChar+'|')!= -1 || completeChars.indexOf('|'+fromChar+'|')!=-1 )&& CodePress.autocomplete) { // auto complete
- if(!CodePress.completeEnding(fromChar))
- CodePress.complete(fromChar);
- }
- else if(chars.indexOf('|'+charCode+'|')!=-1||charCode==13) { // syntax highlighting
- CodePress.syntaxHighlight('generic');
- }
- },
-
- metaHandler : function(evt) {
- keyCode = evt.keyCode;
-
- if(keyCode==9 || evt.tabKey) {
- CodePress.snippets();
- }
- else if((keyCode==122||keyCode==121||keyCode==90) && evt.ctrlKey) { // undo and redo
- (keyCode==121||evt.shiftKey) ? CodePress.actions.redo() : CodePress.actions.undo();
- evt.returnValue = false;
- }
- else if(keyCode==34||keyCode==33) { // handle page up/down for IE
- self.scrollBy(0, (keyCode==34) ? 200 : -200);
- evt.returnValue = false;
- }
- else if(keyCode==46||keyCode==8) { // save to history when delete or backspace pressed
- CodePress.actions.history[CodePress.actions.next()] = editor.innerHTML;
- }
- else if((evt.ctrlKey || evt.metaKey) && evt.shiftKey && keyCode!=90) { // shortcuts = ctrl||appleKey+shift+key!=z(undo)
- CodePress.shortcuts(keyCode);
- evt.returnValue = false;
- }
- else if(keyCode==86 && evt.ctrlKey) { // handle paste
- window.clipboardData.setData('Text',window.clipboardData.getData('Text').replace(/\t/g,'\u2008'));
- top.setTimeout(function(){CodePress.syntaxHighlight('paste');},10);
- }
- else if(keyCode==67 && evt.ctrlKey) { // handle cut
- // window.clipboardData.setData('Text',x[0]);
- // code = window.clipboardData.getData('Text');
- }
- },
-
- // put cursor back to its original position after every parsing
-
-
- findString : function() {
- range = self.document.body.createTextRange();
- if(range.findText(cc)){
- range.select();
- range.text = '';
- }
- },
-
- // split big files, highlighting parts of it
- split : function(code,flag) {
- if(flag=='scroll') {
- this.scrolling = true;
- return code;
- }
- else {
- this.scrolling = false;
- mid = code.indexOf(cc);
- if(mid-2000<0) {ini=0;end=4000;}
- else if(mid+2000>code.length) {ini=code.length-4000;end=code.length;}
- else {ini=mid-2000;end=mid+2000;}
- code = code.substring(ini,end);
- return code.substring(code.indexOf('<P>'),code.lastIndexOf('</P>')+4);
- }
- },
-
- // syntax highlighting parser
- syntaxHighlight : function(flag) {
- if(flag!='init') document.selection.createRange().text = cc;
- o = editor.innerHTML;
- if(flag=='paste') { // fix pasted text
- o = o.replace(/<BR>/g,'\r\n');
- o = o.replace(/\u2008/g,'\t');
- }
- o = o.replace(/<P>/g,'\n');
- o = o.replace(/<\/P>/g,'\r');
- o = o.replace(/<.*?>/g,'');
- o = o.replace(/&nbsp;/g,'');
- o = '<PRE><P>'+o+'</P></PRE>';
- o = o.replace(/\n\r/g,'<P></P>');
- o = o.replace(/\n/g,'<P>');
- o = o.replace(/\r/g,'<\/P>');
- o = o.replace(/<P>(<P>)+/,'<P>');
- o = o.replace(/<\/P>(<\/P>)+/,'</P>');
- o = o.replace(/<P><\/P>/g,'<P><BR/></P>');
- x = z = this.split(o,flag);
-
- if(arguments[1]&&arguments[2]) x = x.replace(arguments[1],arguments[2]);
-
- for(i=0;i<Language.syntax.length;i++)
- x = x.replace(Language.syntax[i].input,Language.syntax[i].output);
-
- editor.innerHTML = this.actions.history[this.actions.next()] = (flag=='scroll') ? x : o.replace(z,x);
- if(flag!='init') this.findString();
- },
-
- snippets : function(evt) {
- var snippets = Language.snippets;
- var trigger = this.getLastWord();
- for (var i=0; i<snippets.length; i++) {
- if(snippets[i].input == trigger) {
- var content = snippets[i].output.replace(/</g,'&lt;');
- content = content.replace(/>/g,'&gt;');
- if(content.indexOf('$0')<0) content += cc;
- else content = content.replace(/\$0/,cc);
- content = content.replace(/\n/g,'</P><P>');
- var pattern = new RegExp(trigger+cc,"gi");
- this.syntaxHighlight('snippets',pattern,content);
- }
- }
- },
-
- readOnly : function() {
- editor.contentEditable = (arguments[0]) ? 'false' : 'true';
- },
-
- complete : function(trigger) {
- var complete = Language.complete;
- for (var i=0; i<complete.length; i++) {
- if(complete[i].input == trigger) {
- var pattern = new RegExp('\\'+trigger+cc);
- var content = complete[i].output.replace(/\$0/g,cc);
- setTimeout(function () { CodePress.syntaxHighlight('complete',pattern,content)},0); // wait for char to appear on screen
- }
- }
- },
-
- getCompleteChars : function() {
- var cChars = '';
- for(var i=0;i<Language.complete.length;i++)
- cChars += '|'+Language.complete[i].input;
- return cChars+'|';
- },
-
- getCompleteEndingChars : function() {
- var cChars = '';
- for(var i=0;i<Language.complete.length;i++)
- cChars += '|'+Language.complete[i].output.charAt(Language.complete[i].output.length-1);
- return cChars+'|';
- },
-
- completeEnding : function(trigger) {
- var range = document.selection.createRange();
- try {
- range.moveEnd('character', 1)
- }
- catch(e) {
- return false;
- }
- var next_character = range.text
- range.moveEnd('character', -1)
- if(next_character != trigger ) return false;
- else {
- range.moveEnd('character', 1)
- range.text=''
- return true;
- }
- },
-
- shortcuts : function() {
- var cCode = arguments[0];
- if(cCode==13) cCode = '[enter]';
- else if(cCode==32) cCode = '[space]';
- else cCode = '['+String.fromCharCode(keyCode).toLowerCase()+']';
- for(var i=0;i<Language.shortcuts.length;i++)
- if(Language.shortcuts[i].input == cCode)
- this.insertCode(Language.shortcuts[i].output,false);
- },
-
- getLastWord : function() {
- var rangeAndCaret = CodePress.getRangeAndCaret();
- words = rangeAndCaret[0].substring(rangeAndCaret[1]-40,rangeAndCaret[1]);
- words = words.replace(/[\s\n\r\);\W]/g,'\n').split('\n');
- return words[words.length-1].replace(/[\W]/gi,'').toLowerCase();
- },
-
- getRangeAndCaret : function() {
- var range = document.selection.createRange();
- var caret = Math.abs(range.moveStart('character', -1000000)+1);
- range = this.getCode();
- range = range.replace(/\n\r/gi,' ');
- range = range.replace(/\n/gi,'');
- return [range.toString(),caret];
- },
-
- insertCode : function(code,replaceCursorBefore) {
- var repdeb = '';
- var repfin = '';
-
- if(replaceCursorBefore) { repfin = code; }
- else { repdeb = code; }
-
- if(typeof document.selection != 'undefined') {
- var range = document.selection.createRange();
- range.text = repdeb + repfin;
- range = document.selection.createRange();
- range.move('character', -repfin.length);
- range.select();
- }
- },
-
- // get code from editor
- getCode : function() {
- var code = editor.innerHTML;
- code = code.replace(/<br>/g,'\n');
- code = code.replace(/<\/p>/gi,'\r');
- code = code.replace(/<p>/i,''); // IE first line fix
- code = code.replace(/<p>/gi,'\n');
- code = code.replace(/&nbsp;/gi,'');
- code = code.replace(/\u2009/g,'');
- code = code.replace(/<.*?>/g,'');
- code = code.replace(/&lt;/g,'<');
- code = code.replace(/&gt;/g,'>');
- code = code.replace(/&amp;/gi,'&');
- return code;
- },
-
- // put code inside editor
- setCode : function() {
- var code = arguments[0];
- code = code.replace(/\u2009/gi,'');
- code = code.replace(/&/gi,'&amp;');
- code = code.replace(/</g,'&lt;');
- code = code.replace(/>/g,'&gt;');
- editor.innerHTML = '<pre>'+code+'</pre>';
- },
-
-
- // undo and redo methods
- actions : {
- pos : -1, // actual history position
- history : [], // history vector
-
- undo : function() {
- if(editor.innerHTML.indexOf(cc)==-1){
- document.selection.createRange().text = cc;
- this.history[this.pos] = editor.innerHTML;
- }
- this.pos--;
- if(typeof(this.history[this.pos])=='undefined') this.pos++;
- editor.innerHTML = this.history[this.pos];
- CodePress.findString();
- },
-
- redo : function() {
- this.pos++;
- if(typeof(this.history[this.pos])=='undefined') this.pos--;
- editor.innerHTML = this.history[this.pos];
- CodePress.findString();
- },
-
- next : function() { // get next vector position and clean old ones
- if(this.pos>20) this.history[this.pos-21] = undefined;
- return ++this.pos;
- }
- }
-}
-
-Language={};
-window.attachEvent('onload', function() { CodePress.initialize('new');});
View
21 thirdparty/tinymce-advcode/js/codepress/engines/older.js
@@ -1,21 +0,0 @@
-(function($) {
- $.entwine('ss', function($){
- /**
- * Formats a <input type="text"> field with a jQuery UI datepicker.
- *
- * Requires: concrete, ui.datepicker, jquery.metadata
- *
- * @author Ingo Schommer, SilverStripe Ltd.
- */
- $('.calendardate').entwine({
- onmatch: function() {
- this.find('input').each(function() {
- var conf = $(this).metadata();
- if(conf.minDate) conf.minDate = new Date(Date.parse(conf.minDate));
-
- $(this).datepicker(conf);
- });
- }
- });
- });
-}(jQuery));
View
260 thirdparty/tinymce-advcode/js/codepress/engines/opera.js
@@ -1,260 +0,0 @@
-/*
- * CodePress - Real Time Syntax Highlighting Editor written in JavaScript - http://codepress.org/
- *
- * Copyright (C) 2007 Fernando M.A.d.S. <fermads@gmail.com>
- *
- * Contributors :
- *
- * Michael Hurni <michael.hurni@gmail.com>
- *
- * This program is free software; you can redistribute it and/or modify it under the terms of the
- * GNU Lesser General Public License as published by the Free Software Foundation.
- *
- * Read the full licence: http://www.opensource.org/licenses/lgpl-license.php
- */
-
-
-CodePress = {
- scrolling : false,
- autocomplete : true,
-
- // set initial vars and start sh
- initialize : function() {
- if(typeof(editor)=='undefined' && !arguments[0]) return;
- chars = '|32|46|62|'; // charcodes that trigger syntax highlighting
- cc = '\u2009'; // control char
- editor = document.getElementsByTagName('body')[0];
- document.designMode = 'on';
- document.addEventListener('keyup', this.keyHandler, true);
- window.addEventListener('scroll', function() { if(!CodePress.scrolling) CodePress.syntaxHighlight('scroll') }, false);
- completeChars = this.getCompleteChars();
-// CodePress.syntaxHighlight('init');
- },
-
- // treat key bindings
- keyHandler : function(evt) {
- keyCode = evt.keyCode;
- charCode = evt.charCode;
-
- if((evt.ctrlKey || evt.metaKey) && evt.shiftKey && charCode!=90) { // shortcuts = ctrl||appleKey+shift+key!=z(undo)
- CodePress.shortcuts(charCode?charCode:keyCode);
- }
- else if(completeChars.indexOf('|'+String.fromCharCode(charCode)+'|')!=-1 && CodePress.autocomplete) { // auto complete
- CodePress.complete(String.fromCharCode(charCode));
- }
- else if(chars.indexOf('|'+charCode+'|')!=-1||keyCode==13) { // syntax highlighting
- CodePress.syntaxHighlight('generic');
- }
- else if(keyCode==9 || evt.tabKey) { // snippets activation (tab)
- CodePress.snippets(evt);
- }
- else if(keyCode==46||keyCode==8) { // save to history when delete or backspace pressed
- CodePress.actions.history[CodePress.actions.next()] = editor.innerHTML;
- }
- else if((charCode==122||charCode==121||charCode==90) && evt.ctrlKey) { // undo and redo
- (charCode==121||evt.shiftKey) ? CodePress.actions.redo() : CodePress.actions.undo();
- evt.preventDefault();
- }
- else if(keyCode==86 && evt.ctrlKey) { // paste
- // TODO: pasted text should be parsed and highlighted
- }
- },
-
- // put cursor back to its original position after every parsing
- findString : function() {
- var sel = window.getSelection();
- var range = window.document.createRange();
- var span = window.document.getElementsByTagName('span')[0];
-
- range.selectNode(span);
- sel.removeAllRanges();
- sel.addRange(range);
- span.parentNode.removeChild(span);
- //if(self.find(cc))
- //window.getSelection().getRangeAt(0).deleteContents();
- },
-
- // split big files, highlighting parts of it
- split : function(code,flag) {
- if(flag=='scroll') {
- this.scrolling = true;
- return code;
- }
- else {
- this.scrolling = false;
- mid = code.indexOf('<SPAN>');
- if(mid-2000<0) {ini=0;end=4000;}
- else if(mid+2000>code.length) {ini=code.length-4000;end=code.length;}
- else {ini=mid-2000;end=mid+2000;}
- code = code.substring(ini,end);
- return code;
- }
- },
-
- // syntax highlighting parser
- syntaxHighlight : function(flag) {
- //if(document.designMode=='off') document.designMode='on'
- if(flag!='init') {
- var span = document.createElement('span');
- window.getSelection().getRangeAt(0).insertNode(span);
- }
-
- o = editor.innerHTML;
-// o = o.replace(/<br>/g,'\r\n');
-// o = o.replace(/<(b|i|s|u|a|em|tt|ins|big|cite|strong)?>/g,'');
- //alert(o)
- o = o.replace(/<(?!span|\/span|br).*?>/gi,'');
-// alert(o)
-// x = o;
- x = z = this.split(o,flag);
- //alert(z)
-// x = x.replace(/\r\n/g,'<br>');
- x = x.replace(/\t/g, ' ');
-
-
- if(arguments[1]&&arguments[2]) x = x.replace(arguments[1],arguments[2]);
-
- for(i=0;i<Language.syntax.length;i++)
- x = x.replace(Language.syntax[i].input,Language.syntax[i].output);
-
- editor.innerHTML = this.actions.history[this.actions.next()] = (flag=='scroll') ? x : o.split(z).join(x);
-
- if(flag!='init') this.findString();
- },
-
- getLastWord : function() {
- var rangeAndCaret = CodePress.getRangeAndCaret();
- words = rangeAndCaret[0].substring(rangeAndCaret[1]-40,rangeAndCaret[1]);
- words = words.replace(/[\s\n\r\);\W]/g,'\n').split('\n');
- return words[words.length-1].replace(/[\W]/gi,'').toLowerCase();
- },
-
- snippets : function(evt) {
- var snippets = Language.snippets;
- var trigger = this.getLastWord();
- for (var i=0; i<snippets.length; i++) {
- if(snippets[i].input == trigger) {
- var content = snippets[i].output.replace(/</g,'&lt;');
- content = content.replace(/>/g,'&gt;');
- if(content.indexOf('$0')<0) content += cc;
- else content = content.replace(/\$0/,cc);
- content = content.replace(/\n/g,'<br>');
- var pattern = new RegExp(trigger+cc,'gi');
- evt.preventDefault(); // prevent the tab key from being added
- this.syntaxHighlight('snippets',pattern,content);
- }
- }
- },
-
- readOnly : function() {
- document.designMode = (arguments[0]) ? 'off' : 'on';
- },
-
- complete : function(trigger) {
- window.getSelection().getRangeAt(0).deleteContents();
- var complete = Language.complete;
- for (var i=0; i<complete.length; i++) {
- if(complete[i].input == trigger) {
- var pattern = new RegExp('\\'+trigger+cc);
- var content = complete[i].output.replace(/\$0/g,cc);
- parent.setTimeout(function () { CodePress.syntaxHighlight('complete',pattern,content)},0); // wait for char to appear on screen
- }
- }
- },
-
- getCompleteChars : function() {
- var cChars = '';
- for(var i=0;i<Language.complete.length;i++)
- cChars += '|'+Language.complete[i].input;
- return cChars+'|';
- },
-
- shortcuts : function() {
- var cCode = arguments[0];
- if(cCode==13) cCode = '[enter]';
- else if(cCode==32) cCode = '[space]';
- else cCode = '['+String.fromCharCode(charCode).toLowerCase()+']';
- for(var i=0;i<Language.shortcuts.length;i++)
- if(Language.shortcuts[i].input == cCode)
- this.insertCode(Language.shortcuts[i].output,false);
- },
-
- getRangeAndCaret : function() {
- var range = window.getSelection().getRangeAt(0);
- var range2 = range.cloneRange();
- var node = range.endContainer;
- var caret = range.endOffset;
- range2.selectNode(node);
- return [range2.toString(),caret];
- },
-
- insertCode : function(code,replaceCursorBefore) {
- var range = window.getSelection().getRangeAt(0);
- var node = window.document.createTextNode(code);
- var selct = window.getSelection();
- var range2 = range.cloneRange();
- // Insert text at cursor position
- selct.removeAllRanges();
- range.deleteContents();
- range.insertNode(node);
- // Move the cursor to the end of text
- range2.selectNode(node);
- range2.collapse(replaceCursorBefore);
- selct.removeAllRanges();
- selct.addRange(range2);
- },
-
- // get code from editor
- getCode : function() {
- var code = editor.innerHTML;
- code = code.replace(/<br>/g,'\n');
- code = code.replace(/\u2009/g,'');
- code = code.replace(/<.*?>/g,'');
- code = code.replace(/&lt;/g,'<');
- code = code.replace(/&gt;/g,'>');
- code = code.replace(/&amp;/gi,'&');
- return code;
- },
-
- // put code inside editor
- setCode : function() {
- var code = arguments[0];
- code = code.replace(/\u2009/gi,'');
- code = code.replace(/&/gi,'&amp;');
- code = code.replace(/</g,'&lt;');
- code = code.replace(/>/g,'&gt;');
- editor.innerHTML = code;
- },
-
- // undo and redo methods
- actions : {
- pos : -1, // actual history position
- history : [], // history vector
-
- undo : function() {
- if(editor.innerHTML.indexOf(cc)==-1){
- window.getSelection().getRangeAt(0).insertNode(document.createTextNode(cc));
- this.history[this.pos] = editor.innerHTML;
- }
- this.pos--;
- if(typeof(this.history[this.pos])=='undefined') this.pos++;
- editor.innerHTML = this.history[this.pos];
- CodePress.findString();
- },
-
- redo : function() {
- this.pos++;
- if(typeof(this.history[this.pos])=='undefined') this.pos--;
- editor.innerHTML = this.history[this.pos];
- CodePress.findString();
- },
-
- next : function() { // get next vector position and clean old ones
- if(this.pos>20) this.history[this.pos-21] = undefined;
- return ++this.pos;
- }
- }
-}
-
-Language={};
-window.addEventListener('load', function() { CodePress.initialize('new'); }, true);
View
BIN  thirdparty/tinymce-advcode/js/codepress/images/line-numbers.png
Deleted file not rendered
View
443 thirdparty/tinymce-advcode/js/codepress/index.html
@@ -1,443 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-
-<html>
-<head>
- <title>CodePress - Real Time Syntax Highlighting Editor written in JavaScript</title>
-
- <style>
- body {color:#000;background-color:white;font:15px georgia, "Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif; letter-spacing:0.01em;margin:15px;}
- p {margin:0 0 15px 0;}
- a,a:visited {color:#7f0055;}
- select {background:#ffffe1;}
- button {margin-top:5px;}
- button.actions {width:171px;font-family:arial;}
- h1 {color:#7f0055;margin:0;padding:0;font-size:42px;font-weight:normal;}
- h1 a {text-decoration:none;}
- h2 {margin:0;}
- h2 a {text-decoration:none;font-weight:normal;font-size:22px;color:black !important;}
- h3 {font-size:20px;font-weight:normal;padding:0;margin:25px 0 5px 0;color:#7f0055;font-weight:bold;border-bottom:2px dotted #d8d8d8;}
- h4 {font-size:18px;font-weight:normal;z-index:0;}
- code {color:#0080c0;font-size:13px;font-weight:bold;}
- ol, ul {padding:5px 0 5px 25px;margin:0;}
- ol li, ul li {margin:8px 0 8px 0;}
-
- #logo {text-align:center;background-color:#d6d6d6;padding:10px;-moz-border-radius:5px;border:1px solid silver;}
- #container {width:700px;margin:20px auto;padding:25px;border:3px solid #d9d9d9;-moz-border-radius:10px;background:#f8f8f8;}
- #languages {margin:5px 0;}
-
- #menu {width:100%;background:#7f0055;-moz-border-radius:4px;}
- #menu a {font:bold 17px georgia;color:white;padding:4px;display:block;border-left:1px solid white;text-align:center;text-decoration:none;}
- #menu a:hover {background:#b9669e;}
-
- .hidden-code {display:none;}
- .copycode {border:1px dotted gray;padding:10px;background:white;font-family:monospace;color:gray}
- </style>
-
-</head>
-
-<body>
-<div id="container">
-
-<div id="logo">
- <h1><a href="http://codepress.org/">CodePress</a></h1>
- <h2><a href="http://codepress.org/">Online Real Time Syntax Highlighting Editor</a></h2>
-</div>
-
-<br />
-
-<table cellpadding="0" cellspacing="0" id="menu">
-<tr>
- <td>
- <a href="http://www.codepress.org/index.php">Home/Download</a>
- </td>
- <td>
- <a href="http://www.codepress.org/install.php">&nbsp;&nbsp;Install&nbsp;&nbsp;</a>
- </td>
- <td>
- <a href="http://www.codepress.org/to-do.php">&nbsp;&nbsp;To-do&nbsp;&nbsp;</a>
- </td>
- <td>
- <a href="http://www.codepress.org/about.php" id="about">&nbsp;&nbsp;About&nbsp;&nbsp;</a>
- </td>
-</tr>
-</table>
-
-<h4>
- CodePress is web-based source code editor with syntax highlighting written in JavaScript that colors text in real time while it's being typed in the browser.
-</h4>
-
-<p>
- Go to <strong><a href="http://codepress.org/">http://codepress.org/</a></strong> for updates.
-</p>
-
-<h3>Demo</h3>
-<div id="languages">
- <em>choose example in:</em>
- <button onclick="cp1.edit('cp-php','php')">PHP</button>
- <button onclick="cp1.edit('cp-javascript','javascript')">JavaScript</button>
- <button onclick="cp1.edit('cp-java','java')">Java</button>
- <button onclick="cp1.edit('cp-perl','perl')">Perl</button>
- <button onclick="cp1.edit('cp-sql','sql')">SQL</button>
- <button onclick="cp1.edit('cp-html','html')">HTML</button>
- <button onclick="cp1.edit('cp-css','css')">CSS</button>
-</div>
-
-<textarea id="cp1" class="codepress php" style="width:700px;height:300px;" wrap="off">
-<?php
-// Very simple implementation of server side script
-
-if(isset($_GET['file'])) {
- $file = basename($_GET['file']);
- $full_file = $path['server'].'/'.$path['webdocs'].'/'.$path['files']."/".$file;
- if(file_exists($full_file)) {
- $code = file_get_contents($full_file);
- $code = preg_replace("/>/","&amp;gt;",$code);
- $code = preg_replace("/</","&amp;lt;",$code);
- $language = getLanguage($file);
- }
-}
-?>
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html>
-<head>
- <title>CodePress - Real Time Syntax Highlighting Editor written in JavaScript</title>
- <link type="text/css" href="languages/codepress-<?=$language?>.css" rel="stylesheet" id="cp-lang-style" />
- <script type="text/javascript" src="codepress.js"></script>
- <script type="text/javascript">
- CodePress.language = '<?=$language?>';
- </script>
-</head>
-<body id="ffedt"><pre id="ieedt"><?=$code?></pre></body>
-</html>
-</textarea>
-
-<br /><br />
-
-<textarea id="codepress2" class="codepress javascript linenumbers-off" style="width:700px;height:200px;" wrap="off">
-//set language
-this.setLanguage = function() {
- if(arguments[0]) {
- language = (typeof(Content.languages[arguments[0]])!='undefined') ? arguments[0] : this.setLanguage();
- cpLanguage.innerHTML = Content.languages[language].name;
- if(cpBody.document.designMode=='on') cpBody.document.designMode = 'off';
- CodePress.loadScript(cpBody.document, '../languages/'+language+'.js', function () { cpBody.CodePress.syntaxHighlight('init'); })
- cpBody.document.getElementById('cp-lang-style').href = '../languages/'+language+'.css';
- this.hideMenu();
- }
- else {
- var extension = filename.replace(/.*\.([^\.]+)$/,'$1');
- var aux = false;
- for(lang in Content.languages) {
- extensions = ','+Content.languages[lang].extensions+',';
- if(extensions.match(','+extension+',')) aux = lang;
- }
- language = (aux) ? aux : 'generic';
- }
-}
-</textarea>
-
-<p>
- <button class="actions" onclick="alert(codepress2.getCode())">get code from editor</button>
- <button class="actions" onclick="codepress2.toggleEditor()">turn on/off CodePress</button>
- <button class="actions" onclick="codepress2.toggleLineNumbers()">show/hide line numbers</button>
- <button class="actions" onclick="codepress2.toggleAutoComplete()">turn on/off auto-complete</button>
- <button class="actions" onclick="codepress2.toggleReadOnly()">turn on/off read only</button>
-</p>
-
-
-
-<h3>Installation</h3>
-<ol>
- <li>
- <p>
- <a href="http://codepress.org/">Download</a> and uncompress CodePress under a directory inside your webserver.<br>
- Example:<strong> http://yourserver/codepress/</strong><br />
- Since CodePress is pure JavaScript and HTML, you can also test it without a webserver.
- </p>
- </li>
- <li>
- <p>
- Insert CodePress script somewhere in your page inside the <code>&lt;head&gt;</code> or above the <code>&lt;/body&gt;</code> tag.
- </p>
-
- <p class="copycode">
- &lt;script src="/codepress/codepress.js" type="text/javascript"&gt;&lt;/script&gt;
- </p>
- </li>
-
- <li>
- <p>
- Add the <code>&lt;textarea&gt;</code> tag to the place on your page you want CodePress to appear. CodePress will inherit the width and height of your textarea.
- When the page loads, it will automatically replace your textarea with a CodePress window.
- </p>
- <p class="copycode">
- &lt;textarea id="myCpWindow" class="codepress javascript linenumbers-off"&gt;<br />
- &nbsp;&nbsp;&nbsp;// your code here<br />
- &lt;/textarea&gt;
- </p>
- <ul>
- <li>
- The <code>javascript</code> portion of the class="" means that the language being edited is JavaScript.
- </li>
- <li>
- The <code>codepress</code> portion of the class="" is mandatory and indicates a textarea to be replaced for a CodePress window.
- </li>
- <li>
- Other class options are <code>linenumbers-off</code>, <code>autocomplete-off</code> and <code>readonly-on</code>.
- </li>
- <li>
- Careful not to use the same id for two different CodePress windows (<code>&lt;textarea id="<strong>xx</strong>"...&gt;</code>)
- </li>
- </ul>
-
- </li>
-</ol>
-
-<h3>You also can...</h3>
-<ol>
- <li>
- Open/edit code from a different textarea.<br />
- Example: <code>textarea_id.edit('other_textarea_id','language')</code><br>
- </li>
- <li>
- Get code from CodePress window.<br />
- Example: <code>textarea_id.getCode()</code><br>
- </li>
- <li>
- Turn on/off CodePress editor and return to the regular textarea.<br />
- Example: <code>textarea_id.toggleEditor()</code><br>
- </li>
- <li>
- Turn on/off line numbers.<br />
- Example: <code>textarea_id.toggleLineNumbers()</code><br>
- </li>
- <li>
- Turn on/off read only.<br />
- Example: <code>textarea_id.toggleReadOnly()</code><br>
- </li>
- <li>
- Turn on/off auto-complete.<br />
- Example: <code>textarea_id.toggleAutoComplete()</code><br>
- </li>
-
-</ol>
-
-<!-- p>
- You may want to use [id].getCode() to get the content code from CodePress window and save it to your server since CodePress only edit files and do not save them.
-</p>
-<p>
- You may also want to open files from server. You'll have to write a server side script and replace the JavaScript call on codepress.js from codepress.html to codepress.php (if your server side language is PHP, of course).
-</p -->
-
-<h3>License</h3>
-<p>
- CodePress is distributed under the <a href="http://www.opensource.org/licenses/lgpl-license.php">LGPL</a>. If your software is <a href="http://www.gnu.org/philosophy/license-list.html#GPLCompatibleLicenses">compatible</a> with this licence or it is under <a href="http://creativecommons.org/">Creative Commons</a>, you can use it as you want. Just keep the credits somewhere around.
-</p>
-
-
-</div><!--/container-->
-
-
-
-<!-- hidden codes for loading -->
-<textarea id="cp-php" class="hidden-code">
-<?php
-// Very simple implementation of server side script
-
-if(isset($_GET['file'])) {
- $file = basename($_GET['file']);
- $full_file = $path['server'].'/'.$path['webdocs'].'/'.$path['files']."/".$file;
- if(file_exists($full_file)) {
- $code = file_get_contents($full_file);
- $code = preg_replace("/>/","&amp;gt;",$code);
- $code = preg_replace("/</","&amp;lt;",$code);
- $language = getLanguage($file);
- }
-}
-?>
-
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html>
-<head>
- <title>CodePress - Real Time Syntax Highlighting Editor written in JavaScript</title>
- <link type="text/css" href="languages/codepress-<?=$language?>.css" rel="stylesheet" id="cp-lang-style" />
- <script type="text/javascript" src="codepress.js"></script>
- <script type="text/javascript">
- CodePress.language = '<?=$language?>';
- </script>
-</head>
-<body id="ffedt"><pre id="ieedt"><?=$code?></pre></body>
-</html>
-</textarea>
-
-<textarea id="cp-javascript" class="hidden-code">
-CodePress = function(obj) {
- var self = document.createElement('iframe');
- self.textarea = obj;
- self.textarea.disabled = true;
- self.style.height = self.textarea.clientHeight +'px';
- self.style.width = self.textarea.clientWidth +'px';
-
- self.initialize = function() {
- self.editor = self.contentWindow.CodePress;
- self.editor.body = self.contentWindow.document.getElementsByTagName('body')[0];
- self.editor.setCode(self.textarea.value);
- self.editor.syntaxHighlight('init');
- }
-
- self.edit = function(id,language) {
- self.language = (language) ? language : self.textarea.className.replace(/ ?codepress ?/,'');
- self.src = cpPath+'modules/codepress.html?engine='+self.getEngine()+'&language='+self.language;
- if(self.attachEvent) self.attachEvent('onload',self.initialize);
- else self.addEventListener('load',self.initialize,false);
- }
-}
-</textarea>
-
-<textarea id="cp-autoit" class="hidden-code">
-#include
-IsNumber(15)
-@Macro
-;comment
-$var = "string"
-</textarea>
-
-<textarea id="cp-java" class="hidden-code">
-import java.io.FileFilter;
-import java.io.IOException;
-import java.io.PrintWriter;
-
-/**
- * Project ECCO - File manager class
- * @author Fernando M.A.d.S.
- */
-public class FileManager extends HttpServlet {
-
- private static final long serialVersionUID = 1L;
- private static String login = "feanndor"; // session var should come here
- private static String usersPath = System.getProperty("user.dir")+File.separator+"htdocs"+File.separator+"ecco"+File.separator+"users"+File.separator;
- private static File dir = new File(usersPath+login+File.separator);
- static boolean existDirectories = false;
- static int isDirectory = 0;
-
- public FileFilter filterFiles(File dir) {
- return (new FileFilter() {
- public boolean accept(File pathname) {
- return !(pathname.isDirectory());
- }
- });
- }
-}
-</textarea>
-
-<textarea id="cp-perl" class="hidden-code">
-#!/usr/bin/perl
-# The first line of the script envokes Perl
-
-# Scalar variables
-$var1 = "Hello World";
-$var2 = 14.6;
-
-# Array variables
-@arr1 = ("zero","one","two","three","four");
-
-# Hash variable, or associative array
-%hash1 = ("one","Monday","two", "Tuesday","three", "Wednesday","four","Thursday");
-
-# Some simple printing
-print $var1;
-
-# Subroutine
-sub test() {
- print "ok";
-}
-</textarea>
-
-<textarea id="cp-sql" class="hidden-code">
---
--- simple select example
---
-SELECT * FROM books
- WHERE price > 100.00 and price < 150.00
- ORDER BY title
-
-SELECT books.title, count(*) AS Authors
- FROM books
- JOIN book_authors
- ON books.book_number = book_authors.book_number
- GROUP BY books.title
-
--- insert, update and delete examples
-
-INSERT INTO my_table (field1, field2, field3) VALUES ('test', 'N', NULL);
-
-BEGIN WORK;
- UPDATE inventory SET quantity = quantity - 3 WHERE item = 'pants';
-COMMIT;
-</textarea>
-
-<textarea id="cp-html" class="hidden-code">
-<html>
-<head>
- <title>CodePress - Online Real Time Syntax Highlighting Editor</title>
-
- <style type="text/css">
- @import url(styles.css);
- </style>
- <script type="text/javascript">
- function getCode() {
- alert(textWithoutHighlighting);
- }
- </script>
-</head>
-<body>
-<div id="logo">
- <h1><a href="http://codepress.org/">CodePress</a></h1>
- <h2>Online Real Time Syntax Highlighting Editor</h2>
- <img src="testimage.gif" />
-</div>
-<div id="languages">
- <em>choose language:</em>
- <button onclick="edit('codepress.php',this)" id="default">PHP</button>
- <button onclick="edit('FileManager.java',this)">Java</button>
-</div>
-</body>
-</html>
-</textarea>
-
-<textarea id="cp-css" class="hidden-code">
-/* CSS comment */
-
-body {
- color:#000;
- background-color:white;
- font:15px Georgia, "Lucida Grande", Arial, sans-serif;
- letter-spacing:0.01em;
- margin:15px;
-}
-
-p {
- margin:0 0 15px 0;
-}
-
-a,a:visited {
- color:#7f0055;
-}
-
-select {
- background:#ffffe1;
-}
-
-h1 {
- color:#7f0055;
- margin:0;
- padding:0;
- font-size:42px;
-}
-</textarea>
-
-
-<script src="codepress.js" type="text/javascript"></script>
-</body>
-</html>
View
71 thirdparty/tinymce-advcode/js/codepress/languages/asp.css
@@ -1,71 +0,0 @@
-/*
- * CodePress color styles for ASP-VB syntax highlighting
- * By Martin D. Kirk
- */
-/* tags */
-
-b {
- color:#000080;
-}
-/* comments */
-big, big b, big em, big ins, big s, strong i, strong i b, strong i s, strong i u, strong i a, strong i a u, strong i s u {
- color:gray;
- font-weight:normal;
-}
-/* ASP comments */
-strong dfn, strong dfn a,strong dfn var, strong dfn a u, strong dfn u{
- color:gray;
- font-weight:normal;
-}
- /* attributes */
-s, s b, span s u, span s cite, strong span s {
- color:#5656fa ;
- font-weight:normal;
-}
- /* strings */
-strong s,strong s b, strong s u, strong s cite {
- color:#009900;
- font-weight:normal;
-}
-strong ins{
- color:#000000;
- font-weight:bold;
-}
- /* Syntax */
-strong a, strong a u {
- color:#0000FF;
- font-weight:;
-}
- /* Native Keywords */
-strong u {
- color:#990099;
- font-weight:bold;
-}
-/* Numbers */
-strong var{
- color:#FF0000;
-}
-/* ASP Language */
-span{
- color:#990000;
- font-weight:bold;
-}
-strong i,strong a i, strong u i {
- color:#009999;
-}
-/* style */
-em {
- color:#800080;
- font-style:normal;
-}
- /* script */
-ins {
- color:#800000;
- font-weight:bold;
-}
-
-/* <?php and ?> */
-cite, s cite {
- color:red;
- font-weight:bold;
-}
View
117 thirdparty/tinymce-advcode/js/codepress/languages/asp.js
@@ -1,117 +0,0 @@
-/*
- * CodePress regular expressions for ASP-vbscript syntax highlighting
- */
-
-// ASP VBScript
-Language.syntax = [
-// all tags
- { input : /(&lt;[^!%|!%@]*?&gt;)/g, output : '<b>$1</b>' },
-// style tags
- { input : /(&lt;style.*?&gt;)(.*?)(&lt;\/style&gt;)/g, output : '<em>$1</em><em>$2</em><em>$3</em>' },
-// script tags
- { input : /(&lt;script.*?&gt;)(.*?)(&lt;\/script&gt;)/g, output : '<ins>$1</ins><ins>$2</ins><ins>$3</ins>' },
-// strings "" and attributes
- { input : /\"(.*?)(\"|<br>|<\/P>)/g, output : '<s>"$1$2</s>' },
-// ASP Comment
- { input : /\'(.*?)(\'|<br>|<\/P>)/g, output : '<dfn>\'$1$2</dfn>'},
-// <%.*
- { input : /(&lt;%)/g, output : '<strong>$1' },
-// .*%>
- { input : /(%&gt;)/g, output : '$1</strong>' },
-// <%@...%>
- { input : /(&lt;%@)(.+?)(%&gt;)/gi, output : '$1<span>$2</span>$3' },
-//Numbers
- { input : /\b([\d]+)\b/g, output : '<var>$1</var>' },
-// Reserved Words 1 (Blue)
- { input : /\b(And|As|ByRef|ByVal|Call|Case|Class|Const|Dim|Do|Each|Else|ElseIf|Empty|End|Eqv|Exit|False|For|Function)\b/gi, output : '<a>$1</a>' },
- { input : /\b(Get|GoTo|If|Imp|In|Is|Let|Loop|Me|Mod|Enum|New|Next|Not|Nothing|Null|On|Option|Or|Private|Public|ReDim|Rem)\b/gi, output : '<a>$1</a>' },
- { input : /\b(Resume|Select|Set|Stop|Sub|Then|To|True|Until|Wend|While|With|Xor|Execute|Randomize|Erase|ExecuteGlobal|Explicit|step)\b/gi, output : '<a>$1</a>' },
-// Reserved Words 2 (Purple)
- { input : /\b(Abandon|Abs|AbsolutePage|AbsolutePosition|ActiveCommand|ActiveConnection|ActualSize|AddHeader|AddNew|AppendChunk)\b/gi, output : '<u>$1</u>' },
- { input : /\b(AppendToLog|Application|Array|Asc|Atn|Attributes|BeginTrans|BinaryRead|BinaryWrite|BOF|Bookmark|Boolean|Buffer|Byte)\b/gi, output : '<u>$1</u>' },
- { input : /\b(CacheControl|CacheSize|Cancel|CancelBatch|CancelUpdate|CBool|CByte|CCur|CDate|CDbl|Charset|Chr|CInt|Clear)\b/gi, output : '<u>$1</u>' },
- { input : /\b(ClientCertificate|CLng|Clone|Close|CodePage|CommandText|CommandType|CommandTimeout|CommitTrans|CompareBookmarks|ConnectionString|ConnectionTimeout)\b/gi, output : '<u>$1</u>' },
- { input : /\b(Contents|ContentType|Cookies|Cos|CreateObject|CreateParameter|CSng|CStr|CursorLocation|CursorType|DataMember|DataSource|Date|DateAdd|DateDiff)\b/gi, output : '<u>$1</u>' },
- { input : /\b(DatePart|DateSerial|DateValue|Day|DefaultDatabase|DefinedSize|Delete|Description|Double|EditMode|Eof|EOF|err|Error)\b/gi, output : '<u>$1</u>' },
- { input : /\b(Exp|Expires|ExpiresAbsolute|Filter|Find|Fix|Flush|Form|FormatCurrency|FormatDateTime|FormatNumber|FormatPercent)\b/gi, output : '<u>$1</u>' },
- { input : /\b(GetChunk|GetLastError|GetRows|GetString|Global|HelpContext|HelpFile|Hex|Hour|HTMLEncode|IgnoreCase|Index|InStr|InStrRev)\b/gi, output : '<u>$1</u>' },
- { input : /\b(Int|Integer|IsArray|IsClientConnected|IsDate|IsolationLevel|Join|LBound|LCase|LCID|Left|Len|Lock|LockType|Log|Long|LTrim)\b/gi, output : '<u>$1</u>' },
- { input : /\b(MapPath|MarshalOptions|MaxRecords|Mid|Minute|Mode|Month|MonthName|Move|MoveFirst|MoveLast|MoveNext|MovePrevious|Name|NextRecordset)\b/gi, output : '<u>$1</u>' },
- { input : /\b(Now|Number|NumericScale|ObjectContext|Oct|Open|OpenSchema|OriginalValue|PageCount|PageSize|Pattern|PICS|Precision|Prepared|Property)\b/gi, output : '<u>$1</u>' },
- { input : /\b(Provider|QueryString|RecordCount|Redirect|RegExp|Remove|RemoveAll|Replace|Requery|Request|Response|Resync|Right|Rnd)\b/gi, output : '<u>$1</u>' },
- { input : /\b(RollbackTrans|RTrim|Save|ScriptTimeout|Second|Seek|Server|ServerVariables|Session|SessionID|SetAbort|SetComplete|Sgn)\b/gi, output : '<u>$1</u>' },
- { input : /\b(Sin|Size|Sort|Source|Space|Split|Sqr|State|StaticObjects|Status|StayInSync|StrComp|String|StrReverse|Supports|Tan|Time)\b/gi, output : '<u>$1</u>' },
- { input : /\b(Timeout|Timer|TimeSerial|TimeValue|TotalBytes|Transfer|Trim|Type|Type|UBound|UCase|UnderlyingValue|UnLock|Update|UpdateBatch)\b/gi, output : '<u>$1</u>' },
- { input : /\b(URLEncode|Value|Value|Version|Weekday|WeekdayName|Write|Year)\b/gi, output : '<u>$1</u>' },
-// Reserved Words 3 (Turquis)
- { input : /\b(vbBlack|vbRed|vbGreen|vbYellow|vbBlue|vbMagenta|vbCyan|vbWhite|vbBinaryCompare|vbTextCompare)\b/gi, output : '<i>$1</i>' },
- { input : /\b(vbSunday|vbMonday|vbTuesday|vbWednesday|vbThursday|vbFriday|vbSaturday|vbUseSystemDayOfWeek)\b/gi, output : '<i>$1</i>' },
- { input : /\b(vbFirstJan1|vbFirstFourDays|vbFirstFullWeek|vbGeneralDate|vbLongDate|vbShortDate|vbLongTime|vbShortTime)\b/gi, output : '<i>$1</i>' },
- { input : /\b(vbObjectError|vbCr|VbCrLf|vbFormFeed|vbLf|vbNewLine|vbNullChar|vbNullString|vbTab|vbVerticalTab|vbUseDefault|vbTrue)\b/gi, output : '<i>$1</i>' },
- { input : /\b(vbFalse|vbEmpty|vbNull|vbInteger|vbLong|vbSingle|vbDouble|vbCurrency|vbDate|vbString|vbObject|vbError|vbBoolean|vbVariant)\b/gi, output : '<i>$1</i>' },
- { input : /\b(vbDataObject|vbDecimal|vbByte|vbArray)\b/gi, output : '<i>$1</i>' },
-// html comments
- { input : /(&lt;!--.*?--&gt.)/g, output : '<big>$1</big>' }
-]
-
-Language.Functions = [
- // Output at index 0, must be the desired tagname surrounding a $1
- // Name is the index from the regex that marks the functionname
- {input : /(function|sub)([ ]*?)(\w+)([ ]*?\()/gi , output : '<ins>$1</ins>', name : '$3'}
-]
-
-Language.snippets = [
-//Conditional
- { input : 'if', output : 'If $0 Then\n\t\nEnd If' },
- { input : 'ifelse', output : 'If $0 Then\n\t\n\nElse\n\t\nEnd If' },
- { input : 'case', output : 'Select Case $0\n\tCase ?\n\tCase Else\nEnd Select'},
-//Response
- { input : 'rw', output : 'Response.Write( $0 )' },
- { input : 'resc', output : 'Response.Cookies( $0 )' },
- { input : 'resb', output : 'Response.Buffer'},
- { input : 'resflu', output : 'Response.Flush()'},
- { input : 'resend', output : 'Response.End'},
-//Request
- { input : 'reqc', output : 'Request.Cookies( $0 )' },
- { input : 'rq', output : 'Request.Querystring("$0")' },
- { input : 'rf', output : 'Request.Form("$0")' },
-//FSO
- { input : 'fso', output : 'Set fso = Server.CreateObject("Scripting.FileSystemObject")\n$0' },
- { input : 'setfo', output : 'Set fo = fso.getFolder($0)' },
- { input : 'setfi', output : 'Set fi = fso.getFile($0)' },
- { input : 'twr', output : 'Set f = fso.CreateTextFile($0,true)\'overwrite\nf.WriteLine()\nf.Close'},
- { input : 'tre', output : 'Set f = fso.OpenTextFile($0, 1)\nf.ReadAll\nf.Close'},
-//Server
- { input : 'mapp', output : 'Server.Mappath($0)' },
-//Loops
- { input : 'foreach', output : 'For Each $0 in ?\n\t\nNext' },
- { input : 'for', output : 'For $0 to ? step ?\n\t\nNext' },
- { input : 'do', output : 'Do While($0)\n\t\nLoop' },
- { input : 'untilrs', output : 'do until rs.eof\n\t\nrs.movenext\nloop' },
-//ADO
- { input : 'adorec', output : 'Set rs = Server.CreateObject("ADODB.Recordset")' },
- { input : 'adocon', output : 'Set Conn = Server.CreateObject("ADODB.Connection")' },
- { input : 'adostr', output : 'Set oStr = Server.CreateObject("ADODB.Stream")' },
-//Http Request
- { input : 'xmlhttp', output : 'Set xmlHttp = Server.CreateObject("Microsoft.XMLHTTP")\nxmlHttp.open("GET", $0, false)\nxmlHttp.send()\n?=xmlHttp.responseText' },
- { input : 'xmldoc', output : 'Set xmldoc = Server.CreateObject("Microsoft.XMLDOM")\nxmldoc.async=false\nxmldoc.load(request)'},
-//Functions
- { input : 'func', output : 'Function $0()\n\t\n\nEnd Function'},
- { input : 'sub', output : 'Sub $0()\n\t\nEnd Sub'}
-
-]
-
-Language.complete = [
- //{ input : '\'', output : '\'$0\'' },
- { input : '"', output : '"$0"' },
- { input : '(', output : '\($0\)' },
- { input : '[', output : '\[$0\]' },
- { input : '{', output : '{\n\t$0\n}' }
-]
-
-Language.shortcuts = [
- { input : '[space]', output : '&nbsp;' },
- { input : '[enter]', output : '<br />' } ,
- { input : '[j]', output : 'testing' },
- { input : '[7]', output : '&amp;' }
-]
View
13 thirdparty/tinymce-advcode/js/codepress/languages/autoit.css
@@ -1,13 +0,0 @@
-/**
- * CodePress color styles for AutoIt syntax highlighting
- */
-
-u {font-style:normal;color:#000090;font-weight:bold;font-family:Monospace;}
-var {color:#AA0000;font-weight:bold;font-style:normal;}
-em {color:#FF33FF;}
-ins {color:#AC00A9;}
-i {color:#F000FF;}
-b {color:#FF0000;}
-a {color:#0080FF;font-weight:bold;}
-s, s u, s b {color:#9999CC;font-weight:normal;}
-cite, cite *{color:#009933;font-weight:normal;}
View
32 thirdparty/tinymce-advcode/js/codepress/languages/autoit.js
@@ -1,32 +0,0 @@
-/**
- * CodePress regular expressions for AutoIt syntax highlighting
- * @author: James Brooks, Michael HURNI
- */
-
-// AutoIt
-Language.syntax = [
- { input : /({|}|\(|\))/g, output : '<b>$1</b>' }, // Brackets
- { input : /(\*|\+|-)/g, output : '<b>$1</b>' }, // Operator
- { input : /\"(.*?)(\"|<br>|<\/P>)/g, output : "<s>\"$1$2</s>" }, // strings double
- { input : /\'(.*?)(\'|<br>|<\/P>)/g, output : '<s>\'$1$2</s>' }, // strings single
- { input : /\b([\d]+)\b/g, output : '<ins>$1</ins>' }, // Numbers
- { input : /#(.*?)(<br>|<\/P>)/g, output : '<i>#$1</i>$2' }, // Directives and Includes
- { input : /(\$[\w\.]*)/g, output : '<var>$1</var>' }, // vars
- { input : /(_[\w\.]*)/g, output : '<a>$1</a>' }, // underscored word
- { input : /(\@[\w\.]*)/g, output : '<em>$1</em>' }, // Macros
- { input : /\b(Abs|ACos|AdlibDisable|AdlibEnable|Asc|AscW|ASin|Assign|ATan|AutoItSetOption|AutoItWinGetTitle|AutoItWinSetTitle|Beep|Binary|BinaryLen|BinaryMid|BinaryToString|BitAND|BitNOT|BitOR|BitSHIFT|BitXOR|BlockInput|Break|Call|CDTray|Ceiling|Chr|ChrW|ClipGet|ClipPut|ConsoleRead|ConsoleWrite|ConsoleWriteError|ControlClick|ControlCommand|ControlDisable|ControlEnable|ControlFocus|ControlGetFocus|ControlGetHandle|ControlGetPos|ControlGetText|ControlHide|ControlListView|ControlMove|ControlSend|ControlSetText|ControlShow|Cos|Dec|DirCopy|DirCreate|DirGetSize|DirMove|DirRemove|DllCall|DllCall|DllClose|DllOpen|DllStructCreate|DllStructGetData|DllStructGetPtr|DllStructGetSize|DllStructSetData|DriveGetDrive|DriveGetFileSystem|DriveGetLabel|DriveGetSerial|DriveGetType|DriveMapAdd|DriveMapDel|DriveMapGet|DriveSetLabel|DriveSpaceFree|DriveSpaceTotal|DriveStatus|EnvGet|EnvSet|EnvUpdate|Eval|Execute|Exp|FileChangeDir|FileClose|FileCopy|FileCreateNTFS|FileCreateShortcut|FileDelete|FileExists|FileFindFirstFile|FileFindNextFile|FileGetAttrib|FileGetLongName|FileGetShortcut|FileGetShortName|FileGetSize|FileGetTime|FileGetVersion|FileInstall|FileMove|FileOpen|FileOpenDialog|FileRead|FileReadLine|FileRecycle|FileRecycleEmpty|FileSaveDialog|FileSelectFolder|FileSetAttrib|FileSetTime|FileWrite|FileWriteLine|Floor|FtpSetProxy|GuiCreate|GuiCtrlCreateAvi|GuiCtrlCreateButton|GuiCtrlCreateCheckbox|GuiCtrlCreateCombo|GuiCtrlCreateContextMenu|GuiCtrlCreateDate|GuiCtrlCreateDummy|GuiCtrlCreateEdit|GuiCtrlCreateGraphic|GuiCtrlCreateGroup|GuiCtrlCreateIcon|GuiCtrlCreateInput|GuiCtrlCreateLabel|GuiCtrlCreateList|GuiCtrlCreateListView|GuiCtrlCreateListViewItem|GuiCtrlCreateMenu|GuiCtrlCreateMenuItem|GuiCtrlCreateMonthCal|GuiCtrlCreateObj|GuiCtrlCreatePic|GuiCtrlCreateProgress|GuiCtrlCreateRadio|GuiCtrlCreateSlider|GuiCtrlCreateTab|GuiCtrlCreateTabItem|GuiCtrlCreateUpdown|GuiCtrlDelete|GuiCtrlGetHandle|GuiCtrlGetState|GuiCtrlRead|GuiCtrlRecvMsg|GuiCtrlSentMsg|GuiCtrlSendToDummy|GuiCtrlSetBkColor|GuiCtrlSetColor|GuiCtrlSetCursor|GuiCtrlSetData|GuiCtrlSetFont|GuiCtrlSetGraphic|GuiCtrlSetImage|GuiCtrlSetLimit|GuiCtrlSetOnEvent|GuiCtrlSetPos|GuiCtrlResizing|GuiCtrlSetState|GuiCtrlSetTip|GuiDelete|GuiGetCursorInfo|GuiGetMsg|GuiGetStyle|GuiRegisterMsg|GuiSetBkColor|GuiSetCoord|GuiSetCursor|GuiSetFont|GuiSetHelp|GuiSetIcon|GuiSetOnEvent|GuiSetStat|GuiSetStyle|GuiStartGroup|GuiSwitch|Hex|HotKeySet|HttpSetProxy|HWnd|InetGet|InetGetSize|IniDelete|IniRead|IniReadSection|IniReadSectionNames|IniRenameSection|IniWrite|IniWriteSection|InputBox|Int|IsAdmin|IsArray|IsBinary|IsBool|IsDeclared|IsDllStruct|IsFloat|IsHWnd|IsInt|IsKeyword|IsNumber|IsObj|IsString|Log|MemGetStats|Mod|MouseClick|MouseClickDrag|MouseDown|MouseGetCursor|MouseGetPos|MouseMove|MouseUp|MouseWheel|MsgBox|Number|ObjCreate|ObjEvent|ObjGet|ObjName|Ping|PixelCheckSum|PixelGetColor|PixelSearch|ProcessClose|ProcessExists|ProcessList|ProcessSetPriority|ProcessWait|ProcessWaitClose|ProgressOff|ProcessOn|ProgressSet|Random|RegDelete|RegEnumKey|RegEnumVal|RegRead|RegWrite|Round|Run|RunAsSet|RunWait|Send|SetError|SetExtended|ShellExecute|ShellExecuteWait|Shutdown|Sin|Sleep|SoundPlay|SoundSetWaveVolume|SplashImageOn|SplashOff|SplashTextOn|Sqrt|SRandom|StatusbarGetText|StderrRead|StdinWrite|StdoutRead|String|StringAddCR|StringCompare|StringFormat|StringInStr|StringIsAlNum|StringIsAlpha|StringIsASCII|StringIsDigit|StringIsFloat|StringIsInt|StringIsLower|StringIsSpace|StringIsUpper|StringIsXDigit|StringLeft|StringLen|StringLower|StringMid|StringRegExp|StringRegExpReplace|StringReplace|StringRight|StringSplit|StringStripCR|StringStripWS|StringToBinary|StringTrimLeft|StringTrimRight|StringUpper|Tan|TCPAccept|TCPCloseSocket|TCPConnect|TCPListen|TCPNameToIP|TCPrecv|TCPSend|TCPShutdown|TCPStartup|TimerDiff|TimerInit|ToolTip|TrayCreateItem|TrayCreateMenu|TrayGetMenu|TrayGetMsg|TrayItemDelete|TrayItemGetHandle|TrayItemGetState|TrayItemGetText|TrayItemSetOnEvent|TrayItemSetState|TrayItemSetText|TraySetClick|TraySetIcon|TraySetOnEvent|TraySetPauseIcon|TraySetState|TraySetToolTip|TrayTip|UBound|UDPBind|UDPCloseSocket|UDPOpen|UDPRecv|UDPSend|WinActivate|WinActive|WinClose|WinExists|WinFlash|WinGetCaretPos|WinGetClassList|WinGetClientSize|WinGetHandle|WinGetPos|WinGetProcess|WinGetState|WinGetText|WinGetTitle|WinKill|WinList|WinMenuSelectItem|WinMinimizeAll|WinMinimizeAllUndo|WinMove|WinSetOnTop|WinSetState|WinSetTitle|WinSetTrans|WinWait|WinWaitActive|WinWaitClose|WinWaitNotActive)\b/g, output : '<u>$1</u>' } ,// reserved words
- { input : /\B;(.*?)(<br>|<\/P>)/g, output : '<cite>;$1</cite>$2' }, // comments
- { input : /#CS(.*?)#CE/g, output : '<cite>#CS$1#CE</cite>' } // Block Comments
-]
-
-Language.snippets = []
-
-Language.complete = [
-{ input : '\'',output : '\'$0\'' },
-{ input : '"', output : '"$0"' },
-{ input : '(', output : '\($0\)' },
-{ input : '[', output : '\[$0\]' },
-{ input : '{', output : '{\n\t$0\n}' }
-]
-
-Language.shortcuts = []
View
9 thirdparty/tinymce-advcode/js/codepress/languages/csharp.css
@@ -1,9 +0,0 @@
-/*
- * CodePress color styles for Java syntax highlighting
- * By Edwin de Jonge
- */
-
-b {color:#7F0055;font-weight:bold;font-style:normal;} /* reserved words */
-a {color:#2A0088;font-weight:bold;font-style:normal;} /* types */
-i, i b, i s {color:#3F7F5F;font-weight:bold;} /* comments */
-s, s b {color:#2A00FF;font-weight:normal;} /* strings */
View
25 thirdparty/tinymce-advcode/js/codepress/languages/csharp.js
@@ -1,25 +0,0 @@
-/*
- * CodePress regular expressions for C# syntax highlighting
- * By Edwin de Jonge
- */
-
-Language.syntax = [ // C#
- { input : /\"(.*?)(\"|<br>|<\/P>)/g, output : '<s>"$1$2</s>' }, // strings double quote
- { input : /\'(.?)(\'|<br>|<\/P>)/g, output : '<s>\'$1$2</s>' }, // strings single quote
- { input : /\b(abstract|as|base|break|case|catch|checked|continue|default|delegate|do|else|event|explicit|extern|false|finally|fixed|for|foreach|get|goto|if|implicit|in|interface|internal|is|lock|namespace|new|null|object|operator|out|override|params|partial|private|protected|public|readonly|ref|return|set|sealed|sizeof|static|stackalloc|switch|this|throw|true|try|typeof|unchecked|unsafe|using|value|virtual|while)\b/g, output : '<b>$1</b>' }, // reserved words
- { input : /\b(bool|byte|char|class|double|float|int|interface|long|string|struct|void)\b/g, output : '<a>$1</a>' }, // types
- { input : /([^:]|^)\/\/(.*?)(<br|<\/P)/g, output : '$1<i>//$2</i>$3' }, // comments //
- { input : /\/\*(.*?)\*\//g, output : '<i>/*$1*/</i>' } // comments /* */
-];
-
-Language.snippets = [];
-
-Language.complete = [ // Auto complete only for 1 character
- {input : '\'',output : '\'$0\'' },
- {input : '"', output : '"$0"' },
- {input : '(', output : '\($0\)' },
- {input : '[', output : '\[$0\]' },
- {input : '{', output : '{\n\t$0\n}' }
-];
-
-Language.shortcuts = [];
View
10 thirdparty/tinymce-advcode/js/codepress/languages/css.css
@@ -1,10 +0,0 @@
-/*
- * CodePress color styles for CSS syntax highlighting
- */
-
-b, b a, b u {color:#000080;} /* tags, ids, classes */
-i, i b, i s, i a, i u {color:gray;} /* comments */
-s, s b {color:#a0a0dd;} /* parameters */
-a {color:#0000ff;} /* keys */
-u {color:red;} /* values */
-
View
23 thirdparty/tinymce-advcode/js/codepress/languages/css.js
@@ -1,23 +0,0 @@
-/*
- * CodePress regular expressions for CSS syntax highlighting
- */
-
-// CSS
-Language.syntax = [
- { input : /(.*?){(.*?)}/g,output : '<b>$1</b>{<u>$2</u>}' }, // tags, ids, classes, values
- { input : /([\w-]*?):([^\/])/g,output : '<a>$1</a>:$2' }, // keys
- { input : /\((.*?)\)/g,output : '(<s>$1</s>)' }, // parameters
- { input : /\/\*(.*?)\*\//g,output : '<i>/*$1*/</i>'} // comments
-]
-
-Language.snippets = []
-
-Language.complete = [
- { input : '\'',output : '\'$0\'' },
- { input : '"', output : '"$0"' },
- { input : '(', output : '\($0\)' },
- { input : '[', output : '\[$0\]' },
- { input : '{', output : '{\n\t$0\n}' }
-]
-
-Language.shortcuts = []
View
9 thirdparty/tinymce-advcode/js/codepress/languages/generic.css
@@ -1,9 +0,0 @@
-/*
- * CodePress color styles for generic syntax highlighting
- */
-
-b {