phpslash-commit Mailing List for phpSlash (Page 32)
Brought to you by:
joestewart,
nhruby
You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(11) |
Nov
(59) |
Dec
(60) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(52) |
Feb
(77) |
Mar
(118) |
Apr
(76) |
May
(106) |
Jun
(145) |
Jul
(9) |
Aug
(15) |
Sep
(78) |
Oct
(83) |
Nov
(105) |
Dec
(51) |
2003 |
Jan
(105) |
Feb
(100) |
Mar
(111) |
Apr
(149) |
May
(95) |
Jun
(56) |
Jul
(8) |
Aug
(2) |
Sep
|
Oct
(22) |
Nov
(117) |
Dec
(6) |
2004 |
Jan
(1) |
Feb
|
Mar
(3) |
Apr
(25) |
May
|
Jun
(11) |
Jul
(26) |
Aug
(85) |
Sep
(119) |
Oct
(312) |
Nov
(271) |
Dec
(5) |
2005 |
Jan
(6) |
Feb
|
Mar
|
Apr
(12) |
May
(7) |
Jun
(8) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2009 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Joe S. <joe...@us...> - 2004-08-23 17:49:06
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage/lang Added Files: en.js he.js makefile.xml ro.js Log Message: Upgraded htmlarea2 --- NEW FILE: en.js --- // I18N for the FullPage plugin // LANG: "en", ENCODING: UTF-8 | ISO-8859-1 // Author: Mihai Bazon, http://dynarch.com/mishoo // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) FullPage.I18N = { "Alternate style-sheet:": "Alternate style-sheet:", "Background color:": "Background color:", "Cancel": "Cancel", "DOCTYPE:": "DOCTYPE:", "Document properties": "Document properties", "Document title:": "Document title:", "OK": "OK", "Primary style-sheet:": "Primary style-sheet:", "Text color:": "Text color:" }; --- NEW FILE: he.js --- // I18N for the FullPage plugin // LANG: "he", ENCODING: UTF-8 // Author: Liron Newman, http://www.eesh.net, <plastish at ultinet dot org> // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) FullPage.I18N = { "Alternate style-sheet:": "×××××× ×¡×× ×× ××ר:", "Background color:": "צ××¢ רקע:", "Cancel": "×××××", "DOCTYPE:": "DOCTYPE:", "Document properties": "××פ××× × ×ס××", "Document title:": "××תרת ×ס××:", "OK": "××ש×ר", "Primary style-sheet:": "×××××× ×¡×× ×× ×¨×ש×:", "Text color:": "צ××¢ ×קס×:" }; --- NEW FILE: makefile.xml --- <files> <file name="*.js" /> </files> --- NEW FILE: ro.js --- // I18N for the FullPage plugin // LANG: "en", ENCODING: UTF-8 | ISO-8859-1 // Author: Mihai Bazon, http://dynarch.com/mishoo // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) FullPage.I18N = { "Alternate style-sheet:": "Template CSS alternativ:", "Background color:": "Culoare de fundal:", "Cancel": "RenunÅ£Ä", "DOCTYPE:": "DOCTYPE:", "Document properties": "ProprietÄÅ£ile documentului", "Document title:": "Titlul documentului:", "OK": "AcceptÄ", "Primary style-sheet:": "Template CSS principal:", "Text color:": "Culoare text:" }; |
From: Joe S. <joe...@us...> - 2004-08-23 17:49:06
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/EnterParagraphs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/EnterParagraphs Added Files: enter-paragraphs.js Log Message: Upgraded htmlarea2 --- NEW FILE: enter-paragraphs.js --- // Modification to htmlArea to insert Paragraphs instead of // linebreaks, under Gecko engines, circa January 2004 // By Adam Wright, for The University of Western Australia // // Distributed under the same terms as HTMLArea itself. // This notice MUST stay intact for use (see license.txt). function EnterParagraphs(editor, params) { this.editor = editor; // activate only if we're talking to Gecko if (HTMLArea.is_gecko) this.onKeyPress = this.__onKeyPress; }; EnterParagraphs._pluginInfo = { name : "EnterParagraphs", version : "1.0", developer : "Adam Wright", developer_url : "http://blog.hipikat.org/", sponsor : "The University of Western Australia", sponsor_url : "http://www.uwa.edu.au/", license : "htmlArea" }; // An array of elements who, in html4, by default, have an inline display and can have children // we use RegExp here since it should be a bit faster, also cleaner to check EnterParagraphs.prototype._html4_inlines_re = /^(a|abbr|acronym|b|bdo|big|cite|code|dfn|em|font|i|kbd|label|q|s|samp|select|small|span|strike|strong|sub|sup|textarea|tt|u|var)$/i; // Finds the first parent element of a given node whose display is probably not inline EnterParagraphs.prototype.parentBlock = function(node) { while (node.parentNode && (node.nodeType != 1 || this._html4_inlines_re.test(node.tagName))) node = node.parentNode; return node; }; // Internal function for recursively itterating over a all nodes in a fragment // If a callback function returns a non-null value, that is returned and the crawl is therefore broken EnterParagraphs.prototype.walkNodeChildren = function(me, callback) { if (me.firstChild) { var myChild = me.firstChild; var retVal; while (myChild) { if ((retVal = callback(this, myChild)) != null) return retVal; if ((retVal = this.walkNodeChildren(myChild, callback)) != null) return retVal; myChild = myChild.nextSibling; } } }; // Callback function to be performed on each node in the hierarchy // Sets flag to true if we find actual text or an element that's not usually displayed inline EnterParagraphs.prototype._isFilling = function(self, node) { if (node.nodeType == 1 && !self._html4_inlines_re.test(node.nodeName)) return true; else if (node.nodeType == 3 && node.nodeValue != '') return true; return null; //alert(node.nodeName); }; // Inserts a node deeply on the left of a hierarchy of nodes EnterParagraphs.prototype.insertDeepLeftText = function(target, toInsert) { var falling = target; while (falling.firstChild && falling.firstChild.nodeType == 1) falling = falling.firstChild; //var refNode = falling.firstChild ? falling.firstChild : null; //falling.insertBefore(toInsert, refNode); falling.innerHTML = toInsert; }; // Kind of like a macros, for a frequent query... EnterParagraphs.prototype.isElem = function(node, type) { return node.nodeName.toLowerCase() == type.toLowerCase(); }; // The onKeyPress even that does all the work - nicely breaks the line into paragraphs EnterParagraphs.prototype.__onKeyPress = function(ev) { if (ev.keyCode == 13 && !ev.shiftKey && this.editor._iframe.contentWindow.getSelection) { var editor = this.editor; // Get the selection and solid references to what we're dealing with chopping var sel = editor._iframe.contentWindow.getSelection(); // Set the start and end points such that they're going /forward/ through the document var rngLeft = editor._doc.createRange(); var rngRight = editor._doc.createRange(); rngLeft.setStart(sel.anchorNode, sel.anchorOffset); rngRight.setStart(sel.focusNode, sel.focusOffset); rngLeft.collapse(true); rngRight.collapse(true); var direct = rngLeft.compareBoundaryPoints(rngLeft.START_TO_END, rngRight) < 0; var startNode = direct ? sel.anchorNode : sel.focusNode; var startOffset = direct ? sel.anchorOffset : sel.focusOffset; var endNode = direct ? sel.focusNode : sel.anchorNode; var endOffset = direct ? sel.focusOffset : sel.anchorOffset; // Find the parent blocks of nodes at either end, and their attributes if they're paragraphs var startBlock = this.parentBlock(startNode); var endBlock = this.parentBlock(endNode); var attrsLeft = new Array(); var attrsRight = new Array(); // If a list, let the browser take over, if we're in a paragraph, gather it's attributes if (this.isElem(startBlock, 'li') || this.isElem(endBlock, 'li')) return; if (this.isElem(startBlock, 'p')) { for (var i = 0; i < startBlock.attributes.length; i++) { attrsLeft[startBlock.attributes[i].nodeName] = startBlock.attributes[i].nodeValue; } } if (this.isElem(endBlock, 'p')) { for (var i = 0; i < endBlock.attributes.length; i++) { // If we start and end within one paragraph, don't duplicate the 'id' if (endBlock != startBlock || endBlock.attributes[i].nodeName.toLowerCase() != 'id') attrsRight[endBlock.attributes[i].nodeName] = endBlock.attributes[i].nodeValue; } } // Look for where to start and end our chopping - within surrounding paragraphs // if they exist, or at the edges of the containing block, otherwise var startChop = startNode; var endChop = endNode; while ((startChop.previousSibling && !this.isElem(startChop.previousSibling, 'p')) || (startChop.parentNode && startChop.parentNode != startBlock && startChop.parentNode.nodeType != 9)) startChop = startChop.previousSibling ? startChop.previousSibling : startChop.parentNode; while ((endChop.nextSibling && !this.isElem(endChop.nextSibling, 'p')) || (endChop.parentNode && endChop.parentNode != endBlock && endChop.parentNode.nodeType != 9)) endChop = endChop.nextSibling ? endChop.nextSibling : endChop.parentNode; // Set up new paragraphs var pLeft = editor._doc.createElement('p'); var pRight = editor._doc.createElement('p'); for (var attrName in attrsLeft) { var thisAttr = editor._doc.createAttribute(attrName); thisAttr.value = attrsLeft[attrName]; pLeft.setAttributeNode(thisAttr); } for (var attrName in attrsRight) { var thisAttr = editor._doc.createAttribute(attrName); thisAttr.value = attrsRight[attrName]; pRight.setAttributeNode(thisAttr); } // Get the ranges destined to be stuffed into new paragraphs rngLeft.setStartBefore(startChop); rngLeft.setEnd(startNode,startOffset); pLeft.appendChild(rngLeft.cloneContents()); // Copy into pLeft rngRight.setEndAfter(endChop); rngRight.setStart(endNode,endOffset); pRight.appendChild(rngRight.cloneContents()); // Copy into pRight // If either paragraph is empty, fill it with a nonbreakable space var foundBlock = false; foundBlock = this.walkNodeChildren(pLeft, this._isFilling); if (foundBlock != true) this.insertDeepLeftText(pLeft, ' '); foundBlock = false; foundBlock = this.walkNodeChildren(pRight, this._isFilling); if (foundBlock != true) this.insertDeepLeftText(pRight, ' '); // Get a range for everything to be replaced and replace it var rngAround = editor._doc.createRange(); if (!startChop.previousSibling && this.isElem(startChop.parentNode, 'p')) rngAround.setStartBefore(startChop.parentNode); else rngAround.setStart(rngLeft.startContainer, rngLeft.startOffset); if (!endChop.nextSibling && this.isElem(endChop.parentNode, 'p')) rngAround.setEndAfter(endChop.parentNode); else rngAround.setEnd(rngRight.endContainer, rngRight.endOffset); rngAround.deleteContents(); rngAround.insertNode(pRight); rngAround.insertNode(pLeft); // Set the selection to the start of the (second) new paragraph if (pRight.firstChild) { while (pRight.firstChild && this._html4_inlines_re.test(pRight.firstChild.nodeName)) pRight = pRight.firstChild; // Slip into any inline tags if (pRight.firstChild && pRight.firstChild.nodeType == 3) pRight = pRight.firstChild; // and text, if they've got it var rngCaret = editor._doc.createRange(); rngCaret.setStart(pRight, 0); rngCaret.collapse(true); sel = editor._iframe.contentWindow.getSelection(); sel.removeAllRanges(); sel.addRange(rngCaret); } // Stop the bubbling HTMLArea._stopEvent(ev); } }; |
From: Joe S. <joe...@us...> - 2004-08-23 17:49:05
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy/lang Added Files: en.js makefile.xml Log Message: Upgraded htmlarea2 --- NEW FILE: en.js --- // I18N constants // LANG: "en", ENCODING: UTF-8 | ISO-8859-1 // Author: Adam Wright, http://blog.hipikat.org/ // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) HtmlTidy.I18N = { "tidying" : "\n Tidying up the HTML source, please wait...", "HT-html-tidy" : "HTML Tidy" }; --- NEW FILE: makefile.xml --- <files> <file name="*.js" /> </files> |
From: Joe S. <joe...@us...> - 2004-08-23 17:49:04
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage/img In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage/img Added Files: docprop.gif makefile.xml Log Message: Upgraded htmlarea2 --- NEW FILE: docprop.gif --- GIF89a R9sLÀ(H¢`J)%`àËIàs0JÊ%RJ @£H RÀ ¤ * --- NEW FILE: makefile.xml --- <files> <file name="*.{gif,jpg,jpeg}" /> </files> |
From: Joe S. <joe...@us...> - 2004-08-23 17:49:04
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage/popups In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage/popups Added Files: docprop.html makefile.xml Log Message: Upgraded htmlarea2 --- NEW FILE: docprop.html --- <html> <head> <title>Document properties</title> <script type="text/javascript" src="../../../popups/popup.js"></script> <script type="text/javascript"> FullPage = window.opener.FullPage; // load the FullPage plugin and lang file ;-) window.resizeTo(400, 100); var accepted = { f_doctype : true, f_title : true, f_body_bgcolor : true, f_body_fgcolor : true, f_base_style : true, f_alt_style : true }; var editor = null; function Init() { __dlg_translate(FullPage.I18N); __dlg_init(); var params = window.dialogArguments; for (var i in params) { if (i in accepted) { var el = document.getElementById(i); el.value = params[i]; } } editor = params.editor; document.getElementById("f_title").focus(); document.getElementById("f_title").select(); }; function onOK() { var required = { }; for (var i in required) { var el = document.getElementById(i); if (!el.value) { alert(required[i]); el.focus(); return false; } } var param = {}; for (var i in accepted) { var el = document.getElementById(i); param[i] = el.value; } __dlg_close(param); return false; }; function onCancel() { __dlg_close(null); return false; }; </script> <style type="text/css"> html, body { background: ButtonFace; color: ButtonText; font: 11px Tahoma,Verdana,sans-serif; margin: 0px; padding: 0px; } body { padding: 5px; } table { font: 11px Tahoma,Verdana,sans-serif; } select, input, button { font: 11px Tahoma,Verdana,sans-serif; } button { width: 70px; } table .label { text-align: right; width: 12em; } .title { background: #ddf; color: #000; font-weight: bold; font-size: 120%; padding: 3px 10px; margin-bottom: 10px; border-bottom: 1px solid black; letter-spacing: 2px; } #buttons { margin-top: 1em; border-top: 1px solid #999; padding: 2px; text-align: right; } </style> </head> <body onload="Init()"> <div class="title"><span>Document properties</span></div> <table style="width: 100%"> <tr> <td class="label"><span>Document title:</span></td> <td><input type="text" id="f_title" style="width: 100%" /></td> </tr> <tr> <td class="label"><span>DOCTYPE:</span></td> <td><input type="text" id="f_doctype" style="width: 100%" /></td> </tr> <tr> <td class="label"><span>Primary style-sheet:</span></td> <td><input type="text" id="f_base_style" style="width: 100%" /></td> </tr> <tr> <td class="label"><span>Alternate style-sheet:</span></td> <td><input type="text" id="f_alt_style" style="width: 100%" /></td> </tr> <tr> <td class="label"><span>Background color:</span></td> <td><input type="text" id="f_body_bgcolor" size="7" /></td> </tr> <tr> <td class="label"><span>Text color:</span></td> <td><input type="text" id="f_body_fgcolor" size="7" /></td> </tr> </table> <div id="buttons"> <button type="button" name="ok" onclick="return onOK();"><span>OK</span></button> <button type="button" name="cancel" onclick="return onCancel();"><span>Cancel</span></button> </div> </body> </html> --- NEW FILE: makefile.xml --- <files> <file name="*.{js,html,cgi,css}" /> </files> |
From: Joe S. <joe...@us...> - 2004-08-23 17:49:04
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage Added Files: full-page.js makefile.xml test.html Log Message: Upgraded htmlarea2 --- NEW FILE: full-page.js --- // FullPage Plugin for HTMLArea-3.0 // Implementation by Mihai Bazon. Sponsored by http://thycotic.com // // htmlArea v3.0 - Copyright (c) 2002 interactivetools.com, inc. // This notice MUST stay intact for use (see license.txt). // // A free WYSIWYG editor replacement for <textarea> fields. // For full source code and docs, visit http://www.interactivetools.com/ // // Version 3.0 developed by Mihai Bazon for InteractiveTools. // http://dynarch.com/mishoo // // $Id: full-page.js,v 1.1 2004/08/23 17:48:41 joestewart Exp $ function FullPage(editor) { this.editor = editor; var cfg = editor.config; cfg.fullPage = true; var tt = FullPage.I18N; var self = this; cfg.registerButton("FP-docprop", tt["Document properties"], editor.imgURL("docprop.gif", "FullPage"), false, function(editor, id) { self.buttonPress(editor, id); }); // add a new line in the toolbar cfg.toolbar[0].splice(0, 0, "separator"); cfg.toolbar[0].splice(0, 0, "FP-docprop"); }; FullPage._pluginInfo = { name : "FullPage", version : "1.0", developer : "Mihai Bazon", developer_url : "http://dynarch.com/mishoo/", c_owner : "Mihai Bazon", sponsor : "Thycotic Software Ltd.", sponsor_url : "http://thycotic.com", license : "htmlArea" }; FullPage.prototype.buttonPress = function(editor, id) { var self = this; switch (id) { case "FP-docprop": var doc = editor._doc; var links = doc.getElementsByTagName("link"); var style1 = ''; var style2 = ''; for (var i = links.length; --i >= 0;) { var link = links[i]; if (/stylesheet/i.test(link.rel)) { if (/alternate/i.test(link.rel)) style2 = link.href; else style1 = link.href; } } var title = doc.getElementsByTagName("title")[0]; title = title ? title.innerHTML : ''; var init = { f_doctype : editor.doctype, f_title : title, f_body_bgcolor : HTMLArea._colorToRgb(doc.body.style.backgroundColor), f_body_fgcolor : HTMLArea._colorToRgb(doc.body.style.color), f_base_style : style1, f_alt_style : style2, editor : editor }; editor._popupDialog("plugin://FullPage/docprop", function(params) { self.setDocProp(params); }, init); break; } }; FullPage.prototype.setDocProp = function(params) { var txt = ""; var doc = this.editor._doc; var head = doc.getElementsByTagName("head")[0]; var links = doc.getElementsByTagName("link"); var style1 = null; var style2 = null; for (var i = links.length; --i >= 0;) { var link = links[i]; if (/stylesheet/i.test(link.rel)) { if (/alternate/i.test(link.rel)) style2 = link; else style1 = link; } } function createLink(alt) { var link = doc.createElement("link"); link.rel = alt ? "alternate stylesheet" : "stylesheet"; head.appendChild(link); return link; }; if (!style1 && params.f_base_style) style1 = createLink(false); if (params.f_base_style) style1.href = params.f_base_style; else if (style1) head.removeChild(style1); if (!style2 && params.f_alt_style) style2 = createLink(true); if (params.f_alt_style) style2.href = params.f_alt_style; else if (style2) head.removeChild(style2); for (var i in params) { var val = params[i]; switch (i) { case "f_title": var title = doc.getElementsByTagName("title")[0]; if (!title) { title = doc.createElement("title"); head.appendChild(title); } else while (node = title.lastChild) title.removeChild(node); if (!HTMLArea.is_ie) title.appendChild(doc.createTextNode(val)); else doc.title = val; break; case "f_doctype": this.editor.setDoctype(val); break; case "f_body_bgcolor": doc.body.style.backgroundColor = val; break; case "f_body_fgcolor": doc.body.style.color = val; break; } } }; --- NEW FILE: makefile.xml --- <files> <file name="*.{js,html,cgi,css}" /> <dir name="lang" /> <dir name="img" /> <dir name="popups" /> </files> --- NEW FILE: test.html --- <html> <head> <title>Test of FullPage plugin</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript"> _editor_url = "../../"; </script> <!-- load the main HTMLArea files --> <script type="text/javascript" src="../../htmlarea.js"></script> <script type="text/javascript" src="../../lang/en.js"></script> <script type="text/javascript" src="../../dialog.js"></script> <!-- <script type="text/javascript" src="popupdiv.js"></script> --> <script type="text/javascript" src="../../popupwin.js"></script> <script type="text/javascript"> HTMLArea.loadPlugin("TableOperations"); HTMLArea.loadPlugin("SpellChecker"); HTMLArea.loadPlugin("FullPage"); function initDocument() { var editor = new HTMLArea("editor"); editor.registerPlugin(TableOperations); editor.registerPlugin(SpellChecker); editor.registerPlugin(FullPage); editor.generate(); } </script> <style type="text/css"> @import url(../../htmlarea.css); </style> </head> <body onload="initDocument()"> <h1>Test of FullPage plugin</h1> <textarea id="editor" style="height: 30em; width: 100%;"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html> <head> <title>FullPage plugin for HTMLArea</title> <link rel="alternate stylesheet" href="http://dynarch.com/mishoo/css/dark.css" /> <link rel="stylesheet" href="http://dynarch.com/mishoo/css/cool-light.css" /> </head> <body style="background-color: #ddddee; color: #000077;"> <table style="width:60%; height: 90%; margin: 2% auto 1% auto;" align="center" border="0" cellpadding="0" cellspacing="0"> <tr> <td style="background-color: #ddeedd; border: 2px solid #002; height: 1.5em; padding: 2px; font: bold 24px Verdana;"> FullPage plugin </td> </tr> <tr> <td style="background-color: #fff; border: 1px solid #aab; padding: 1em 3em; font: 12px Verdana;"> <p> This plugin enables one to edit a full HTML file in <a href="http://dynarch.com/htmlarea/">HTMLArea</a>. This is not normally possible with just the core editor since it only retrieves the HTML inside the <code>body</code> tag. </p> <p> It provides the ability to change the <code>DOCTYPE</code> of the document, <code>body</code> <code>bgcolor</code> and <code>fgcolor</code> attributes as well as to add additional <code>link</code>-ed stylesheets. Cool, eh? </p> <p> The development of this plugin was initiated and sponsored by <a href="http://thycotic.com">Thycotic Software Ltd.</a>. That's also cool, isn't it? ;-) </p> </td> </tr> </table> </body> </html> </textarea> <hr /> <address><a href="http://dynarch.com/mishoo/">Mihai Bazon</a></address> <!-- Created: Wed Oct 1 19:55:37 EEST 2003 --> <!-- hhmts start --> Last modified on Sat Oct 25 01:06:59 2003 <!-- hhmts end --> <!-- doc-lang: English --> </body> </html> |
From: Joe S. <joe...@us...> - 2004-08-23 17:49:04
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy/img In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy/img Added Files: html-tidy.gif makefile.xml Log Message: Upgraded htmlarea2 --- NEW FILE: html-tidy.gif --- GIF89a --- NEW FILE: makefile.xml --- <files> <file name="*.{gif,png,jpg}" /> </files> |
From: Joe S. <joe...@us...> - 2004-08-23 17:49:03
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ContextMenu/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/ContextMenu/lang Added Files: de.js el.js en.js he.js makefile.xml nl.js Log Message: Upgraded htmlarea2 --- NEW FILE: de.js --- // I18N constants // LANG: "de", ENCODING: UTF-8 | ISO-8859-1 // translated: <]{MJ}[> i...@st... ContextMenu.I18N = { // Items that appear in menu. Please note that an underscore (_) // character in the translation (right column) will cause the following // letter to become underlined and be shortcut for that menu option. "Cut" : "Ausschneiden", "Copy" : "Kopieren", "Paste" : "Einfügen", "Image Properties" : "_Bild Einstellungen...", "Modify Link" : "_Link ändern...", "Check Link" : "Link testen...", "Remove Link" : "Link entfernen...", "Cell Properties" : "Z_ellen Einstellungen...", "Row Properties" : "Ze_ilen Einstellungen...", "Insert Row Before" : "Zeile einfügen v_or Position", "Insert Row After" : "Zeile einfügen n_ach Position", "Delete Row" : "Zeile löschen", "Table Properties" : "_Tabellen Einstellungen...", "Insert Column Before" : "Spalte einfügen vo_r Position", "Insert Column After" : "Spalte einfügen na_ch Position", "Delete Column" : "Spalte löschen", "Justify Left" : "Links ausrichten", "Justify Center" : "Zentriert", "Justify Right" : "Rechts ausrichten", "Justify Full" : "Blocksatz", "Make link" : "Lin_k erstellen...", "Remove the" : "", "Element" : "Element entfernen...", // Other labels (tooltips and alert/confirm box messages) "Please confirm that you want to remove this element:" : "Wollen sie dieses Element wirklich entfernen ?", "Remove this node from the document" : "Dieses Element aus dem Dokument entfernen", "How did you get here? (Please report!)" : "How did you get here? (Please report!)", "Show the image properties dialog" : "Fenster für die Bild-Einstellungen anzeigen", "Modify URL" : "URL ändern", "Current URL is" : "Aktuelle URL ist", "Opens this link in a new window" : "Diesen Link in neuem Fenster öffnen", "Please confirm that you want to unlink this element." : "Wollen sie diesen Link wirklich entfernen ?", "Link points to:" : "Link zeigt auf:", "Unlink the current element" : "Link auf Element entfernen", "Show the Table Cell Properties dialog" : "Zellen-Einstellungen anzeigen", "Show the Table Row Properties dialog" : "Zeilen-Einstellungen anzeigen", "Insert a new row before the current one" : "Zeile einfügen vor der aktuellen Position", "Insert a new row after the current one" : "Zeile einfügen nach der aktuellen Position", "Delete the current row" : "Zeile löschen", "Show the Table Properties dialog" : "Show the Table Properties dialog", "Insert a new column before the current one" : "Spalte einfügen vor der aktuellen Position", "Insert a new column after the current one" : "Spalte einfügen nach der aktuellen Position", "Delete the current column" : "Spalte löschen", "Create a link" : "Link erstellen" }; --- NEW FILE: el.js --- // I18N constants // LANG: "el", ENCODING: UTF-8 | ISO-8859-7 // Author: Dimitris Glezos, dim...@gl... ContextMenu.I18N = { // Items that appear in menu. Please note that an underscore (_) // character in the translation (right column) will cause the following // letter to become underlined and be shortcut for that menu option. "Cut" : "ÎÏοκοÏή", "Copy" : "ÎνÏιγÏαÏή", "Paste" : "ÎÏικÏλληÏη", "Image Properties" : "ÎδιÏÏηÏÎµÏ ÎικÏναÏ...", "Modify Link" : "ΤÏοÏοÏοίηÏη ÏÏ Î½Î´ÎÏÎ¼Î¿Ï ...", "Check Link" : "ÎλεγÏÎ¿Ï ÏÏ Î½Î´ÎÏμÏν...", "Remove Link" : "ÎιαγÏαÏή ÏÏ Î½Î´ÎÏÎ¼Î¿Ï ...", "Cell Properties" : "ÎδιÏÏηÏÎµÏ ÎºÎµÎ»Î¹Î¿Ï...", "Row Properties" : "ÎδιÏÏηÏÎµÏ Î³ÏαμμήÏ...", "Insert Row Before" : "ÎιÏαγÏγή γÏÎ±Î¼Î¼Î®Ï ÏÏιν", "Insert Row After" : "ÎιÏαγÏγή γÏÎ±Î¼Î¼Î®Ï Î¼ÎµÏά", "Delete Row" : "ÎιαγÏαÏή γÏαμμήÏ", "Table Properties" : "ÎδιÏÏηÏÎµÏ Ïίνακα...", "Insert Column Before" : "ÎιÏαγÏγή ÏÏÎ®Î»Î·Ï ÏÏιν", "Insert Column After" : "ÎιÏαγÏγή ÏÏÎ®Î»Î·Ï Î¼ÎµÏά", "Delete Column" : "ÎιαγÏαÏή ÏÏήληÏ", "Justify Left" : "ΣÏοίÏηÏη ÎÏιÏÏεÏά", "Justify Center" : "ΣÏοίÏηÏη ÎÎνÏÏο", "Justify Right" : "ΣÏοίÏηÏη Îεξιά", "Justify Full" : "ΠλήÏÎ·Ï Î£ÏοίÏηÏη", "Make link" : "ÎÎ·Î¼Î¹Î¿Ï Ïγία ÏÏ Î½Î´ÎÏÎ¼Î¿Ï ...", "Remove the" : "ÎÏαίÏεÏη", "Element" : "ÏÏοιÏÎµÎ¯Î¿Ï ...", // Other labels (tooltips and alert/confirm box messages) "Please confirm that you want to remove this element:" : "ÎίÏÏε βÎÎ²Î±Î¹Î¿Ï ÏÏÏ Î¸ÎλεÏε να αÏαιÏÎÏεÏε Ïο ÏÏοιÏείο ", "Remove this node from the document" : "ÎÏαίÏεÏη Î±Ï ÏÎ¿Ï ÏÎ¿Ï ÎºÏÎ¼Î²Î¿Ï Î±ÏÏ Ïο ÎγγÏαÏο", "How did you get here? (Please report!)" : "Î ÏÏ Î®ÏθαÏε μÎÏÏι εδÏ; (ΠαÏακαλοÏμε αναÏÎÏεÏε Ïο!)", "Show the image properties dialog" : "ÎμÏάνιÏη διαλÏÎ³Î¿Ï Î¼Îµ ÏÎ¹Ï ÎδιÏÏηÏÎµÏ ÎµÎ¹ÎºÏναÏ", "Modify URL" : "ΤÏοÏοÏοίηÏη URL", "Current URL is" : "Το ÏÏÎÏÏν URL είναι", "Opens this link in a new window" : "Îνοίγει Î±Ï ÏÏ Ïον ÏÏνδεÏμο Ïε Îνα νÎο ÏαÏÎ¬Î¸Ï Ïο", "Please confirm that you want to unlink this element." : "ÎίÏÏε βÎÎ²Î±Î¹Î¿Ï ÏÏÏ Î¸ÎλεÏε να αÏαιÏÎÏεÏε Ïον ÏÏνδεÏμο αÏÏ Î±Ï ÏÏ Ïο ÏÏοιÏείο:", "Link points to:" : "Î ÏÏÎ½Î´ÎµÎ¼Î¿Ï Î¿Î´Î·Î³ÎµÎ¯ εδÏ:", "Unlink the current element" : "ÎÏαίÏεÏη ÏÏ Î½Î´ÎÏÎ¼Î¿Ï Î±ÏÏ Ïο ÏαÏÏν ÏÏοιÏείο", "Show the Table Cell Properties dialog" : "ÎμÏάνιÏη διαλÏÎ³Î¿Ï Î¼Îµ ÏÎ¹Ï ÎδιÏÏηÏÎµÏ ÎºÎµÎ»Î¹Î¿Ï Î Î¯Î½Î±ÎºÎ±", "Show the Table Row Properties dialog" : "ÎμÏάνιÏη διαλÏÎ³Î¿Ï Î¼Îµ ÏÎ¹Ï ÎδιÏÏηÏÎµÏ Î³ÏÎ±Î¼Î¼Î®Ï Î Î¯Î½Î±ÎºÎ±", "Insert a new row before the current one" : "ÎιÏαγÏγή Î¼Î¹Î±Ï Î½ÎÎ±Ï Î³ÏÎ±Î¼Î¼Î®Ï ÏÏιν Ïην εÏιλεγμÎνη", "Insert a new row after the current one" : "ÎιÏαγÏγή Î¼Î¹Î±Ï Î½ÎÎ±Ï Î³ÏÎ±Î¼Î¼Î®Ï Î¼ÎµÏά Ïην εÏιλεγμÎνη", "Delete the current row" : "ÎιαγÏαÏή εÏιλεγμÎÎ½Î·Ï Î³ÏαμμήÏ", "Show the Table Properties dialog" : "ÎμÏάνιÏη διαλÏÎ³Î¿Ï Î¼Îµ ÏÎ¹Ï ÎδιÏÏηÏÎµÏ Î Î¯Î½Î±ÎºÎ±", "Insert a new column before the current one" : "ÎιÏαγÏγή νÎÎ±Ï ÏÏÎ®Î»Î·Ï ÏÏιν Ïην εÏιλεγμÎνη", "Insert a new column after the current one" : "ÎιÏαγÏγή νÎÎ±Ï ÏÏÎ®Î»Î·Ï Î¼ÎµÏά Ïην εÏιλεγμÎνη", "Delete the current column" : "ÎιαγÏαÏή εÏιλεγμÎÎ½Î·Ï ÏÏήληÏ", "Create a link" : "ÎÎ·Î¼Î¹Î¿Ï Ïγία ÏÏ Î½Î´ÎÏÎ¼Î¿Ï " }; --- NEW FILE: en.js --- // I18N constants // LANG: "en", ENCODING: UTF-8 | ISO-8859-1 // Author: Mihai Bazon, http://dynarch.com/mishoo // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) ContextMenu.I18N = { // Items that appear in menu. Please note that an underscore (_) // character in the translation (right column) will cause the following // letter to become underlined and be shortcut for that menu option. "Cut" : "Cut", "Copy" : "Copy", "Paste" : "Paste", "Image Properties" : "_Image Properties...", "Modify Link" : "_Modify Link...", "Check Link" : "Chec_k Link...", "Remove Link" : "_Remove Link...", "Cell Properties" : "C_ell Properties...", "Row Properties" : "Ro_w Properties...", "Insert Row Before" : "I_nsert Row Before", "Insert Row After" : "In_sert Row After", "Delete Row" : "_Delete Row", "Table Properties" : "_Table Properties...", "Insert Column Before" : "Insert _Column Before", "Insert Column After" : "Insert C_olumn After", "Delete Column" : "De_lete Column", "Justify Left" : "Justify Left", "Justify Center" : "Justify Center", "Justify Right" : "Justify Right", "Justify Full" : "Justify Full", "Make link" : "Make lin_k...", "Remove the" : "Remove the", "Element" : "Element...", // Other labels (tooltips and alert/confirm box messages) "Please confirm that you want to remove this element:" : "Please confirm that you want to remove this element:", "Remove this node from the document" : "Remove this node from the document", "How did you get here? (Please report!)" : "How did you get here? (Please report!)", "Show the image properties dialog" : "Show the image properties dialog", "Modify URL" : "Modify URL", "Current URL is" : "Current URL is", "Opens this link in a new window" : "Opens this link in a new window", "Please confirm that you want to unlink this element." : "Please confirm that you want to unlink this element.", "Link points to:" : "Link points to:", "Unlink the current element" : "Unlink the current element", "Show the Table Cell Properties dialog" : "Show the Table Cell Properties dialog", "Show the Table Row Properties dialog" : "Show the Table Row Properties dialog", "Insert a new row before the current one" : "Insert a new row before the current one", "Insert a new row after the current one" : "Insert a new row after the current one", "Delete the current row" : "Delete the current row", "Show the Table Properties dialog" : "Show the Table Properties dialog", "Insert a new column before the current one" : "Insert a new column before the current one", "Insert a new column after the current one" : "Insert a new column after the current one", "Delete the current column" : "Delete the current column", "Create a link" : "Create a link" }; --- NEW FILE: he.js --- // I18N constants // LANG: "he", ENCODING: UTF-8 // Author: Liron Newman, http://www.eesh.net, <plastish at ultinet dot org> // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) ContextMenu.I18N = { // Items that appear in menu. Please note that an underscore (_) // character in the translation (right column) will cause the following // letter to become underlined and be shortcut for that menu option. "Cut" : "×××ר", "Copy" : "×עתק", "Paste" : "××××§", "Image Properties" : "_××פ××× × ×ª××× ×...", "Modify Link" : "_×©× × ×§×ש×ר...", "Check Link" : "×××_×§ ×§×ש×ר...", "Remove Link" : "_×סר ×§×ש×ר...", "Cell Properties" : "××פ××× × ×ª_×...", "Row Properties" : "××פ××× × _××ר...", "Insert Row Before" : "×_×× ×¡ ש××¨× ××¤× ×", "Insert Row After" : "××× _ס ש××¨× ××ר×", "Delete Row" : "_×××§ ש×ר×", "Table Properties" : "××פ××× × ×_×××...", "Insert Column Before" : "××× ×¡ _××ר ××¤× ×", "Insert Column After" : "××× ×¡ ×_×ר ××ר×", "Delete Column" : "××_×§ ××ר", "Justify Left" : "×ש×ר ×ש×××", "Justify Center" : "×ש×ר ××ר××", "Justify Right" : "×ש×ר ×××××", "Justify Full" : "×ש×ר ×ש××¨× ××××", "Make link" : "צ×ר ×§×_ש×ר...", "Remove the" : "×סר ×ת ×××× × ×-", "Element" : "...", // Other labels (tooltips and alert/confirm box messages) "Please confirm that you want to remove this element:" : "×× × ×שר ש×רצ×× × ××ס×ר ×ת ××××× × ×××:", "Remove this node from the document" : "××¡×¨× ×©× node ×× ×××ס××", "How did you get here? (Please report!)" : "××× ××עת ×× ×? (×× × ××××!)", "Show the image properties dialog" : "×צ×× ×ת ×××× ×××-ש×× ×©× ××פ××× × ×ª××× ×", "Modify URL" : "ש×× ×× URL", "Current URL is" : "URL × ×××× ×××", "Opens this link in a new window" : "פת××ת ×§×ש×ר ×× ××××× ××ש", "Please confirm that you want to unlink this element." : "×× × ×שר ש××ª× ×¨××¦× ×× ×ª×§ ×ת ×××× × ××.", "Link points to:" : "××§×ש×ר ×צ×××¢ ××:", "Unlink the current element" : "× ×ת××§ ×ת ××××× × ×× ××××", "Show the Table Cell Properties dialog" : "×צ×× ×ת ×××× ×××-ש×× ×©× ××פ××× × ×ª× ×××××", "Show the Table Row Properties dialog" : "×צ×× ×ת ×××× ×××-ש×× ×©× ××פ××× × ×©××¨× ×××××", "Insert a new row before the current one" : "××ספת ש××¨× ×××©× ××¤× × ×× ××××ת", "Insert a new row after the current one" : "××ספת ש××¨× ×××©× ×××¨× ×× ××××ת", "Delete the current row" : "×××קת ×ת ×ש××¨× ×× ××××ת", "Show the Table Properties dialog" : "×צ×× ×ת ×××× ×××-ש×× ×©× ××פ××× × ××××", "Insert a new column before the current one" : "××ספת ××ר ××ש ××¤× × ×× ××××", "Insert a new column after the current one" : "××ספת ××ר ××ש ×××¨× ×× ××××", "Delete the current column" : "×××קת ×ת ×××ר ×× ××××", "Create a link" : "×צ×רת ×§×ש×ר" }; --- NEW FILE: makefile.xml --- <files> <file name="*.js" /> </files> --- NEW FILE: nl.js --- // I18N constants // LANG: "nl", ENCODING: UTF-8 | ISO-8859-1 // Author: Michel Weegeerink (in...@mm...), http://mmc-shop.nl // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) ContextMenu.I18N = { // Items that appear in menu. Please note that an underscore (_) // character in the translation (right column) will cause the following // letter to become underlined and be shortcut for that menu option. "Cut" : "Knippen", "Copy" : "Kopiëren", "Paste" : "Plakken", "Image Properties" : "Eigenschappen afbeelding...", "Modify Link" : "Hyperlin_k aanpassen...", "Check Link" : "Controleer hyperlin_k...", "Remove Link" : "Ve_rwijder hyperlink...", "Cell Properties" : "C_eleigenschappen...", "Row Properties" : "Rijeigenscha_ppen...", "Insert Row Before" : "Rij invoegen boven", "Insert Row After" : "Rij invoegen onder", "Delete Row" : "Rij _verwijderen", "Table Properties" : "_Tabeleigenschappen...", "Insert Column Before" : "Kolom invoegen voor", "Insert Column After" : "Kolom invoegen na", "Delete Column" : "Kolom verwijderen", "Justify Left" : "Links uitlijnen", "Justify Center" : "Centreren", "Justify Right" : "Rechts uitlijnen", "Justify Full" : "Uitvullen", "Make link" : "Maak hyperlin_k...", "Remove the" : "Verwijder het", "Element" : "element...", // Other labels (tooltips and alert/confirm box messages) "Please confirm that you want to remove this element:" : "Is het werkelijk de bedoeling dit element te verwijderen:", "Remove this node from the document" : "Verwijder dit punt van het document", "How did you get here? (Please report!)" : "Hoe kwam je hier? (A.U.B. doorgeven!)", "Show the image properties dialog" : "Laat het afbeeldingseigenschappen dialog zien", "Modify URL" : "Aanpassen URL", "Current URL is" : "Huidig URL is", "Opens this link in a new window" : "Opend deze hyperlink in een nieuw venster", "Please confirm that you want to unlink this element." : "Is het werkelijk de bedoeling dit element te unlinken.", "Link points to:" : "Hyperlink verwijst naar:", "Unlink the current element" : "Unlink het huidige element", "Show the Table Cell Properties dialog" : "Laat de tabel celeigenschappen dialog zien", "Show the Table Row Properties dialog" : "Laat de tabel rijeigenschappen dialog zien", "Insert a new row before the current one" : "Voeg een nieuwe rij in boven de huidige", "Insert a new row after the current one" : "Voeg een nieuwe rij in onder de huidige", "Delete the current row" : "Verwijder de huidige rij", "Show the Table Properties dialog" : "Laat de tabel eigenschappen dialog zien", "Insert a new column before the current one" : "Voeg een nieuwe kolom in voor de huidige", "Insert a new column after the current one" : "Voeg een nieuwe kolom in na de huidige", "Delete the current column" : "Verwijder de huidige kolom", "Create a link" : "Maak een hyperlink" }; |
From: Joe S. <joe...@us...> - 2004-08-23 17:49:02
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/CSS In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/CSS Added Files: css.js makefile.xml Log Message: Upgraded htmlarea2 --- NEW FILE: css.js --- // Simple CSS (className) plugin for the editor // Sponsored by http://www.miro.com.au // Implementation by Mihai Bazon, http://dynarch.com/mishoo. // // (c) dynarch.com 2003 // Distributed under the same terms as HTMLArea itself. // This notice MUST stay intact for use (see license.txt). // // $Id: css.js,v 1.1 2004/08/23 17:48:39 joestewart Exp $ function CSS(editor, params) { this.editor = editor; var cfg = editor.config; var toolbar = cfg.toolbar; var self = this; var i18n = CSS.I18N; var plugin_config = params[0]; var combos = plugin_config.combos; var first = true; for (var i = combos.length; --i >= 0;) { var combo = combos[i]; var id = "CSS-class" + i; var css_class = { id : id, options : combo.options, action : function(editor) { self.onSelect(editor, this, combo.context, combo.updatecontextclass); }, refresh : function(editor) { self.updateValue(editor, this); }, context : combo.context }; cfg.registerDropdown(css_class); // prepend to the toolbar toolbar[1].splice(0, 0, first ? "separator" : "space"); toolbar[1].splice(0, 0, id); if (combo.label) toolbar[1].splice(0, 0, "T[" + combo.label + "]"); first = false; } }; CSS._pluginInfo = { name : "CSS", version : "1.0", developer : "Mihai Bazon", developer_url : "http://dynarch.com/mishoo/", c_owner : "Mihai Bazon", sponsor : "Miro International", sponsor_url : "http://www.miro.com.au", license : "htmlArea" }; CSS.prototype.onSelect = function(editor, obj, context, updatecontextclass) { var tbobj = editor._toolbarObjects[obj.id]; var index = tbobj.element.selectedIndex; var className = tbobj.element.value; // retrieve parent element of the selection var parent = editor.getParentElement(); var surround = true; var is_span = (parent && parent.tagName.toLowerCase() == "span"); var update_parent = (context && updatecontextclass && parent && parent.tagName.toLowerCase() == context); if (update_parent) { parent.className = className; editor.updateToolbar(); return; } if (is_span && index == 0 && !/\S/.test(parent.style.cssText)) { while (parent.firstChild) { parent.parentNode.insertBefore(parent.firstChild, parent); } parent.parentNode.removeChild(parent); editor.updateToolbar(); return; } if (is_span) { // maybe we could simply change the class of the parent node? if (parent.childNodes.length == 1) { parent.className = className; surround = false; // in this case we should handle the toolbar updation // ourselves. editor.updateToolbar(); } } // Other possibilities could be checked but require a lot of code. We // can't afford to do that now. if (surround) { // shit happens ;-) most of the time. this method works, but // it's dangerous when selection spans multiple block-level // elements. editor.surroundHTML("<span class='" + className + "'>", "</span>"); } }; CSS.prototype.updateValue = function(editor, obj) { var select = editor._toolbarObjects[obj.id].element; var parent = editor.getParentElement(); if (typeof parent.className != "undefined" && /\S/.test(parent.className)) { var options = select.options; var value = parent.className; for (var i = options.length; --i >= 0;) { var option = options[i]; if (value == option.value) { select.selectedIndex = i; return; } } } select.selectedIndex = 0; }; --- NEW FILE: makefile.xml --- <files> <file name="*.{js,html,cgi,css}" /> <dir name="lang" /> </files> |
From: Joe S. <joe...@us...> - 2004-08-23 17:48:57
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ContextMenu In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/ContextMenu Added Files: 1.pl context-menu.js makefile.xml menu.css Log Message: Upgraded htmlarea2 --- NEW FILE: 1.pl --- #! /usr/bin/perl -w use strict; my $file = 'context-menu.js'; my $outfile = $file.'-i18n'; my $langfile = 'en.js'; open FILE, "<$file"; #open OUTFILE, ">$outfile"; #open LANGFILE, ">$langfile"; my %texts = (); while (<FILE>) { if (/"(.*?)"/) { my $inline = $_; chomp $inline; my $key = $1; my $val = $1; print "Key: [$key]: "; my $line = <STDIN>; if (defined $line) { chomp $line; if ($line =~ /(\S+)/) { $key = $1; print "-- using $key\n"; } $texts{$val} = $key; } else { print " -- skipped...\n"; } } } #close LANGFILE; #close OUTFILE; close FILE; print "\n\n\n"; print '"', join("\"\n\"", sort keys %texts), '"', "\n"; --- NEW FILE: context-menu.js --- // Context Menu Plugin for HTMLArea-3.0 // Sponsored by www.americanbible.org // Implementation by Mihai Bazon, http://dynarch.com/mishoo/ // // (c) dynarch.com 2003. // Distributed under the same terms as HTMLArea itself. // This notice MUST stay intact for use (see license.txt). // // $Id: context-menu.js,v 1.1 2004/08/23 17:48:40 joestewart Exp $ HTMLArea.loadStyle("menu.css", "ContextMenu"); function ContextMenu(editor) { this.editor = editor; }; ContextMenu._pluginInfo = { name : "ContextMenu", version : "1.0", developer : "Mihai Bazon", developer_url : "http://dynarch.com/mishoo/", c_owner : "dynarch.com", sponsor : "American Bible Society", sponsor_url : "http://www.americanbible.org", license : "htmlArea" }; ContextMenu.prototype.onGenerate = function() { var self = this; var doc = this.editordoc = this.editor._iframe.contentWindow.document; HTMLArea._addEvents(doc, ["contextmenu"], function (event) { return self.popupMenu(HTMLArea.is_ie ? self.editor._iframe.contentWindow.event : event); }); this.currentMenu = null; }; ContextMenu.prototype.getContextMenu = function(target) { var self = this; var editor = this.editor; var config = editor.config; var menu = []; var tbo = this.editor.plugins.TableOperations; if (tbo) tbo = tbo.instance; var i18n = ContextMenu.I18N; var selection = editor.hasSelectedText(); if (selection) menu.push([ i18n["Cut"], function() { editor.execCommand("cut"); }, null, config.btnList["cut"][1] ], [ i18n["Copy"], function() { editor.execCommand("copy"); }, null, config.btnList["copy"][1] ]); menu.push([ i18n["Paste"], function() { editor.execCommand("paste"); }, null, config.btnList["paste"][1] ]); var currentTarget = target; var elmenus = []; var link = null; var table = null; var tr = null; var td = null; var img = null; function tableOperation(opcode) { tbo.buttonPress(editor, opcode); }; for (; target; target = target.parentNode) { var tag = target.tagName; if (!tag) continue; tag = tag.toLowerCase(); switch (tag) { case "img": img = target; elmenus.push(null, [ i18n["Image Properties"], function() { editor._insertImage(img); }, i18n["Show the image properties dialog"], config.btnList["insertimage"][1] ] ); break; case "a": link = target; elmenus.push(null, [ i18n["Modify Link"], function() { editor.execCommand("createlink", true); }, i18n["Current URL is"] + ': ' + link.href, config.btnList["createlink"][1] ], [ i18n["Check Link"], function() { window.open(link.href); }, i18n["Opens this link in a new window"] ], [ i18n["Remove Link"], function() { if (confirm(i18n["Please confirm that you want to unlink this element."] + "\n" + i18n["Link points to:"] + " " + link.href)) { while (link.firstChild) link.parentNode.insertBefore(link.firstChild, link); link.parentNode.removeChild(link); } }, i18n["Unlink the current element"] ] ); break; case "td": td = target; if (!tbo) break; elmenus.push(null, [ i18n["Cell Properties"], function() { tableOperation("TO-cell-prop"); }, i18n["Show the Table Cell Properties dialog"], config.btnList["TO-cell-prop"][1] ] ); break; case "tr": tr = target; if (!tbo) break; elmenus.push(null, [ i18n["Row Properties"], function() { tableOperation("TO-row-prop"); }, i18n["Show the Table Row Properties dialog"], config.btnList["TO-row-prop"][1] ], [ i18n["Insert Row Before"], function() { tableOperation("TO-row-insert-above"); }, i18n["Insert a new row before the current one"], config.btnList["TO-row-insert-above"][1] ], [ i18n["Insert Row After"], function() { tableOperation("TO-row-insert-under"); }, i18n["Insert a new row after the current one"], config.btnList["TO-row-insert-under"][1] ], [ i18n["Delete Row"], function() { tableOperation("TO-row-delete"); }, i18n["Delete the current row"], config.btnList["TO-row-delete"][1] ] ); break; case "table": table = target; if (!tbo) break; elmenus.push(null, [ i18n["Table Properties"], function() { tableOperation("TO-table-prop"); }, i18n["Show the Table Properties dialog"], config.btnList["TO-table-prop"][1] ], [ i18n["Insert Column Before"], function() { tableOperation("TO-col-insert-before"); }, i18n["Insert a new column before the current one"], config.btnList["TO-col-insert-before"][1] ], [ i18n["Insert Column After"], function() { tableOperation("TO-col-insert-after"); }, i18n["Insert a new column after the current one"], config.btnList["TO-col-insert-after"][1] ], [ i18n["Delete Column"], function() { tableOperation("TO-col-delete"); }, i18n["Delete the current column"], config.btnList["TO-col-delete"][1] ] ); break; case "body": elmenus.push(null, [ i18n["Justify Left"], function() { editor.execCommand("justifyleft"); }, null, config.btnList["justifyleft"][1] ], [ i18n["Justify Center"], function() { editor.execCommand("justifycenter"); }, null, config.btnList["justifycenter"][1] ], [ i18n["Justify Right"], function() { editor.execCommand("justifyright"); }, null, config.btnList["justifyright"][1] ], [ i18n["Justify Full"], function() { editor.execCommand("justifyfull"); }, null, config.btnList["justifyfull"][1] ] ); break; } } if (selection && !link) menu.push(null, [ i18n["Make link"], function() { editor.execCommand("createlink", true); }, i18n["Create a link"], config.btnList["createlink"][1] ]); for (var i in elmenus) menu.push(elmenus[i]); menu.push(null, [ i18n["Remove the"] + " <" + currentTarget.tagName + "> " + i18n["Element"], function() { if (confirm(i18n["Please confirm that you want to remove this element:"] + " " + currentTarget.tagName)) { var el = currentTarget; var p = el.parentNode; p.removeChild(el); if (HTMLArea.is_gecko) { if (p.tagName.toLowerCase() == "td" && !p.hasChildNodes()) p.appendChild(editor._doc.createElement("br")); editor.forceRedraw(); editor.focusEditor(); editor.updateToolbar(); if (table) { var save_collapse = table.style.borderCollapse; table.style.borderCollapse = "collapse"; table.style.borderCollapse = "separate"; table.style.borderCollapse = save_collapse; } } } }, i18n["Remove this node from the document"] ]); return menu; }; ContextMenu.prototype.popupMenu = function(ev) { var self = this; var i18n = ContextMenu.I18N; if (this.currentMenu) this.currentMenu.parentNode.removeChild(this.currentMenu); function getPos(el) { var r = { x: el.offsetLeft, y: el.offsetTop }; if (el.offsetParent) { var tmp = getPos(el.offsetParent); r.x += tmp.x; r.y += tmp.y; } return r; }; function documentClick(ev) { ev || (ev = window.event); if (!self.currentMenu) { alert(i18n["How did you get here? (Please report!)"]); return false; } var el = HTMLArea.is_ie ? ev.srcElement : ev.target; for (; el != null && el != self.currentMenu; el = el.parentNode); if (el == null) self.closeMenu(); //HTMLArea._stopEvent(ev); //return false; }; var keys = []; function keyPress(ev) { ev || (ev = window.event); HTMLArea._stopEvent(ev); if (ev.keyCode == 27) { self.closeMenu(); return false; } var key = String.fromCharCode(HTMLArea.is_ie ? ev.keyCode : ev.charCode).toLowerCase(); for (var i = keys.length; --i >= 0;) { var k = keys[i]; if (k[0].toLowerCase() == key) k[1].__msh.activate(); } }; self.closeMenu = function() { self.currentMenu.parentNode.removeChild(self.currentMenu); self.currentMenu = null; HTMLArea._removeEvent(document, "mousedown", documentClick); HTMLArea._removeEvent(self.editordoc, "mousedown", documentClick); if (keys.length > 0) HTMLArea._removeEvent(self.editordoc, "keypress", keyPress); if (HTMLArea.is_ie) self.iePopup.hide(); }; var target = HTMLArea.is_ie ? ev.srcElement : ev.target; var ifpos = getPos(self.editor._iframe); var x = ev.clientX + ifpos.x; var y = ev.clientY + ifpos.y; var div; var doc; if (!HTMLArea.is_ie) { doc = document; } else { // IE stinks var popup = this.iePopup = window.createPopup(); doc = popup.document; doc.open(); doc.write("<html><head><style type='text/css'>@import url(" + _editor_url + "plugins/ContextMenu/menu.css); html, body { padding: 0px; margin: 0px; overflow: hidden; border: 0px; }</style></head><body unselectable='yes'></body></html>"); doc.close(); } div = doc.createElement("div"); if (HTMLArea.is_ie) div.unselectable = "on"; div.oncontextmenu = function() { return false; }; div.className = "htmlarea-context-menu"; if (!HTMLArea.is_ie) div.style.left = div.style.top = "0px"; doc.body.appendChild(div); var table = doc.createElement("table"); div.appendChild(table); table.cellSpacing = 0; table.cellPadding = 0; var parent = doc.createElement("tbody"); table.appendChild(parent); var options = this.getContextMenu(target); for (var i = 0; i < options.length; ++i) { var option = options[i]; var item = doc.createElement("tr"); parent.appendChild(item); if (HTMLArea.is_ie) item.unselectable = "on"; else item.onmousedown = function(ev) { HTMLArea._stopEvent(ev); return false; }; if (!option) { item.className = "separator"; var td = doc.createElement("td"); td.className = "icon"; var IE_IS_A_FUCKING_SHIT = '>'; if (HTMLArea.is_ie) { td.unselectable = "on"; IE_IS_A_FUCKING_SHIT = " unselectable='on' style='height=1px'> "; } td.innerHTML = "<div" + IE_IS_A_FUCKING_SHIT + "</div>"; var td1 = td.cloneNode(true); td1.className = "label"; item.appendChild(td); item.appendChild(td1); } else { var label = option[0]; item.className = "item"; item.__msh = { item: item, label: label, action: option[1], tooltip: option[2] || null, icon: option[3] || null, activate: function() { self.closeMenu(); self.editor.focusEditor(); this.action(); } }; label = label.replace(/_([a-zA-Z0-9])/, "<u>$1</u>"); if (label != option[0]) keys.push([ RegExp.$1, item ]); label = label.replace(/__/, "_"); var td1 = doc.createElement("td"); if (HTMLArea.is_ie) td1.unselectable = "on"; item.appendChild(td1); td1.className = "icon"; if (item.__msh.icon) td1.innerHTML = "<img align='middle' src='" + item.__msh.icon + "' />"; var td2 = doc.createElement("td"); if (HTMLArea.is_ie) td2.unselectable = "on"; item.appendChild(td2); td2.className = "label"; td2.innerHTML = label; item.onmouseover = function() { this.className += " hover"; self.editor._statusBarTree.innerHTML = this.__msh.tooltip || ' '; }; item.onmouseout = function() { this.className = "item"; }; item.oncontextmenu = function(ev) { this.__msh.activate(); if (!HTMLArea.is_ie) HTMLArea._stopEvent(ev); return false; }; item.onmouseup = function(ev) { var timeStamp = (new Date()).getTime(); if (timeStamp - self.timeStamp > 500) this.__msh.activate(); if (!HTMLArea.is_ie) HTMLArea._stopEvent(ev); return false; }; //if (typeof option[2] == "string") //item.title = option[2]; } } if (!HTMLArea.is_ie) { var dx = x + div.offsetWidth - window.innerWidth + 4; var dy = y + div.offsetHeight - window.innerHeight + 4; if (dx > 0) x -= dx; if (dy > 0) y -= dy; div.style.left = x + "px"; div.style.top = y + "px"; } else { // determine the size (did I mention that IE stinks?) var foobar = document.createElement("div"); foobar.className = "htmlarea-context-menu"; foobar.innerHTML = div.innerHTML; document.body.appendChild(foobar); var w = foobar.offsetWidth; var h = foobar.offsetHeight; document.body.removeChild(foobar); this.iePopup.show(ev.screenX, ev.screenY, w, h); } this.currentMenu = div; this.timeStamp = (new Date()).getTime(); HTMLArea._addEvent(document, "mousedown", documentClick); HTMLArea._addEvent(this.editordoc, "mousedown", documentClick); if (keys.length > 0) HTMLArea._addEvent(this.editordoc, "keypress", keyPress); HTMLArea._stopEvent(ev); return false; }; --- NEW FILE: makefile.xml --- <files> <file name="*.{js,html,cgi,css}" /> <dir name="lang" /> </files> --- NEW FILE: menu.css --- /* styles for the ContextMenu /HTMLArea */ /* The ContextMenu plugin is (c) dynarch.com 2003. */ /* Distributed under the same terms as HTMLArea itself */ div.htmlarea-context-menu { position: absolute; border: 1px solid #aca899; padding: 2px; background-color: #fff; cursor: default; z-index: 1000; } div.htmlarea-context-menu table { font: 11px tahoma,verdana,sans-serif; border-collapse: collapse; } div.htmlarea-context-menu tr.item td.icon img { width: 18px; height: 18px; } div.htmlarea-context-menu tr.item td.icon { padding: 0px 3px; height: 18px; background-color: #cdf; } div.htmlarea-context-menu tr.item td.label { padding: 1px 10px 1px 3px; } div.htmlarea-context-menu tr.separator td { padding: 2px 0px; } div.htmlarea-context-menu tr.separator td div { border-top: 1px solid #aca899; overflow: hidden; position: relative; } div.htmlarea-context-menu tr.separator td.icon { background-color: #cdf; } div.htmlarea-context-menu tr.separator td.icon div { /* margin-left: 3px; */ border-color: #fff; } div.htmlarea-context-menu tr.separator td.label div { margin-right: 3px; } div.htmlarea-context-menu tr.item.hover { background-color: #316ac5; color: #fff; } div.htmlarea-context-menu tr.item.hover td.icon { background-color: #619af5; } |
From: Joe S. <joe...@us...> - 2004-08-23 17:48:56
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/examples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/examples Added Files: 2-areas.cgi 2-areas.html context-menu.html core.html css.html custom.css full-page.html fully-loaded.html images.html index.html list-type.html makefile.xml pieng.png spell-checker.html table-operations.html test.cgi Log Message: Upgraded htmlarea2 --- NEW FILE: 2-areas.cgi --- #! /usr/bin/perl -w use strict; use CGI; my $cgi = new CGI; my $text1 = $cgi->param('text1'); my $text2 = $cgi->param('text2'); print "Content-type: text/html\n\n"; print "<p>You submitted:</p>"; print "<table border='1'>"; print "<thead><tr bgcolor='#cccccc'><td width='50%'>text1</td><td width='50%'>text2</td></tr></thead>"; print "<tbody><tr><td>$text1</td><td>$text2</td></tr></tbody>"; print "</table>"; --- NEW FILE: 2-areas.html --- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Example with 2 HTMLAreas in the same form</title> <script type="text/javascript"> // the _editor_url is REQUIRED! don't forget to set it. _editor_url = "../"; // implicit language will be "en", but let's set it for brevity _editor_lang = "en"; </script> <script type="text/javascript" src="../htmlarea.js"></script> <script type="text/javascript"> // load the plugins that we will use // loading is necessary ONLY ONCE, regardless on how many editors you create // basically calling the following functions will load the plugin files as if // we would have wrote script src="..." but with easier and cleaner code HTMLArea.loadPlugin("TableOperations"); HTMLArea.loadPlugin("SpellChecker"); HTMLArea.loadPlugin("CSS"); HTMLArea.loadPlugin("ImageManager"); // this function will get called at body.onload function initDocument() { // cache these values as we need to pass it for both editors var css_plugin_args = { combos : [ { label: "Syntax", // menu text // CSS class options: { "None" : "", "Code" : "code", "String" : "string", "Comment" : "comment", "Variable name" : "variable-name", "Type" : "type", "Reference" : "reference", "Preprocessor" : "preprocessor", "Keyword" : "keyword", "Function name" : "function-name", "Html tag" : "html-tag", "Html italic" : "html-helper-italic", "Warning" : "warning", "Html bold" : "html-helper-bold" }, context: "pre" }, { label: "Info", options: { "None" : "", "Quote" : "quote", "Highlight" : "highlight", "Deprecated" : "deprecated" } } ] }; //--------------------------------------------------------------------- // GENERAL PATTERN // // 1. Instantitate an editor object. // 2. Register plugins (note, it's required to have them loaded). // 3. Configure any other items in editor.config. // 4. generate() the editor // // The above are steps that you use to create one editor. Nothing new // so far. In order to create more than one editor, you just have to // repeat those steps for each of one. Of course, you can register any // plugins you want (no need to register the same plugins for all // editors, and to demonstrate that we'll skip the TableOperations // plugin for the second editor). Just be careful to pass different // ID-s in the constructor (you don't want to _even try_ to create more // editors for the same TEXTAREA element ;-)). // // So much for the noise, see the action below. //--------------------------------------------------------------------- //--------------------------------------------------------------------- // CREATE FIRST EDITOR // var editor1 = new HTMLArea("text-area-1"); // plugins must be registered _per editor_. Therefore, we register // plugins for the first editor here, and we will also do this for the // second editor. editor1.registerPlugin(TableOperations); editor1.registerPlugin(SpellChecker); editor1.registerPlugin(CSS, css_plugin_args); editor1.registerPlugin(ImageManager); // custom config must be done per editor. Here we're importing the // stylesheet used by the CSS plugin. editor1.config.pageStyle = "@import url(custom.css);"; // generate first editor editor1.generate(); //--------------------------------------------------------------------- //--------------------------------------------------------------------- // CREATE SECOND EDITOR // var editor2 = new HTMLArea("text-area-2"); // we are using the same plugins editor2.registerPlugin(TableOperations); editor2.registerPlugin(SpellChecker); editor2.registerPlugin(CSS, css_plugin_args); editor2.registerPlugin(ImageManager); // import the CSS plugin styles editor2.config.pageStyle = "@import url(custom.css);"; // generate the second editor // IMPORTANT: if we don't give it a timeout, the first editor will // not function in Mozilla. Soon I'll think about starting to // implement some kind of event that will fire when the editor // finished creating, then we'll be able to chain the generate() // calls in an elegant way. But right now there's no other solution // than the following. setTimeout(function() { editor2.generate(); }, 500); //--------------------------------------------------------------------- }; </script> </head> <body onload="initDocument()"> <h1>Example with 2 HTMLAreas in the same form</h1> <form action="2-areas.cgi" method="post" target="_blank"> <input type="submit" value=" Submit " /> <br /> <textarea id="text-area-1" name="text1" style="width: 100%; height: 12em"> <h3>HTMLArea #1</h3> <p>This will submit a field named <em>text1</em>.</p> </textarea> <br /> <textarea id="text-area-2" name="text2" style="width: 100%; height: 12em"> <h3>Second HTMLArea</h3> <p><em>text2</em> submission. Both are located in the same FORM element and the script action is 2-areas.cgi (see it in the examples directory)</p> </textarea> <br /> <input type="submit" value=" Submit " /> </form> <hr> <address><a href="http://dynarch.com/mishoo/">Mihai Bazon</a></address> <!-- Created: Fri Oct 31 09:37:10 EET 2003 --> <!-- hhmts start --> Last modified: Wed Jan 28 11:10:40 EET 2004 <!-- hhmts end --> <!-- doc-lang: English --> </body> </html> --- NEW FILE: context-menu.html --- <html> <head> <title>Test of ContextMenu plugin</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript"> _editor_url = "../"; _editor_lang = "en"; </script> <!-- load the main HTMLArea file --> <script type="text/javascript" src="../htmlarea.js"></script> <script type="text/javascript"> HTMLArea.loadPlugin("ContextMenu"); HTMLArea.loadPlugin("TableOperations"); function initDocument() { var editor = new HTMLArea("editor"); editor.registerPlugin(ContextMenu); editor.registerPlugin(TableOperations); editor.generate(); } </script> </head> <body onload="initDocument()"> <h1>Test of ContextMenu plugin</h1> <textarea id="editor" style="height: 30em; width: 100%;"> <table border="1" style="border: 1px dotted rgb(0, 102, 255); width: 100%; background-color: rgb(255, 204, 51); background-image: none; float: none; text-align: left; vertical-align: top; border-collapse: collapse;" summary="" cellspacing="" cellpadding="" frame="box" rules="all"><tbody><tr><td style="border: 1px solid rgb(255, 0, 0); background-color: rgb(0, 51, 51); background-image: none; text-align: left; vertical-align: top;"><a href="http://dynarch.com/mishoo/articles.epl?art_id=430"><img src="http://127.0.0.1/~mishoo/htmlarea/examples/pieng.png" alt="" align="" border="0" hspace="0" vspace="0" /></a></td><td style="border: 1px solid rgb(255, 0, 0); background-color: rgb(255, 255, 0); background-image: none; text-align: left; vertical-align: top;">The article linked on the left image presents a script that allows Internet Explorer to use PNG images. We hope to be able to implement IE PNG support in HTMLArea soon.<br /> <br /> Go on, right-click everywhere and test our new context menus. And be thankful to <a href="http://www.americanbible.org/">American Bible Society</a> who sponsored the development, <a href="http://dynarch.com/mishoo/">mishoo</a> who made it happen and God, Who keeps mishoo alife. ;-)<br /> <br /><span style="font-style: italic;">P.S.</span> No animals were harmed while producing this movie.<br /> </td></tr><tr><td style="border-style: none; background-color: rgb(255, 255, 51); background-image: none; text-align: left; vertical-align: top;">Welcome to HTMLArea, the best online editor.<br /></td><td>HTMLArea is a project initiated by <a href="http://interactivetools.com/">InteractiveTools.com</a>. Other companies contributed largely by sponsoring the development of additional extensions. Many thanks to:<br /> <br style="font-family: courier new,courier,monospace;" /> <div style="margin-left: 40px;"><a href="http://www.zapatec.com/" style="font-family: courier new,courier,monospace;">http://www.zapatec.com</a><br style="font-family: courier new,courier,monospace;" /> <a href="http://www.americanbible.org/" style="font-family: courier new,courier,monospace;">http://www.americanbible.org</a><br style="font-family: courier new,courier,monospace;" /> <a href="http://www.neomedia.ro/" style="font-family: courier new,courier,monospace;">http://www.neomedia.ro</a><br style="font-family: courier new,courier,monospace;" /> <a href="http://www.os3.it/" style="font-family: courier new,courier,monospace;">http://www.os3.it</a><br style="font-family: courier new,courier,monospace;" /> <a href="http://www.miro.com.au/" style="font-family: courier new,courier,monospace;">http://www.miro.com.au</a><br style="font-family: courier new,courier,monospace;" /> <a href="http://www.thycotic.com/" style="font-family: courier new,courier,monospace;">http://www.thycotic.com</a><br /> </div> <br /> and to all the posters at <a href="http://www.interactivetools.com/iforum/Open_Source_C3/htmlArea_v3.0_-_Alpha_Release_F14/ ">InteractiveTools</a> HTMLArea forums, whose feedback is continually useful in polishing HTMLArea.<br /> <br /><div style="text-align: right;">-- developers and maintainers of version 3, <a href="http://dynarch.com/">dynarch.com</a>.<br /></div></td></tr></tbody></table> </textarea> <hr /> <address><a href="http://dynarch.com/mishoo/">Mihai Bazon</a></address> <!-- Created: Wed Oct 1 19:55:37 EEST 2003 --> <!-- hhmts start --> Last modified: Wed Jan 28 11:10:29 EET 2004 <!-- hhmts end --> <!-- doc-lang: English --> </body> </html> --- NEW FILE: core.html --- <html> <head> <title>Example of HTMLArea 3.0</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- Configure the path to the editor. We make it relative now, so that the example ZIP file will work anywhere, but please NOTE THAT it's better to have it an absolute path, such as '/htmlarea/'. --> <script type="text/javascript"> _editor_url = "../"; _editor_lang = "en"; </script> <script type="text/javascript" src="../htmlarea.js"></script> <style type="text/css"> html, body { font-family: Verdana,sans-serif; background-color: #fea; color: #000; } a:link, a:visited { color: #00f; } a:hover { color: #048; } a:active { color: #f00; } textarea { background-color: #fff; border: 1px solid 00f; } </style> <script type="text/javascript"> var editor = null; function initEditor() { editor = new HTMLArea("ta"); // comment the following two lines to see how customization works editor.generate(); return false; var cfg = editor.config; // this is the default configuration cfg.registerButton({ id : "my-hilite", tooltip : "Highlight text", image : "ed_custom.gif", textMode : false, action : function(editor) { editor.surroundHTML("<span class=\"hilite\">", "</span>"); }, context : 'table' }); cfg.toolbar.push(["linebreak", "my-hilite"]); // add the new button to the toolbar // BEGIN: code that adds a custom button // uncomment it to test var cfg = editor.config; // this is the default configuration /* cfg.registerButton({ id : "my-hilite", tooltip : "Highlight text", image : "ed_custom.gif", textMode : false, action : function(editor) { editor.surroundHTML("<span class=\"hilite\">", "</span>"); } }); */ function clickHandler(editor, buttonId) { switch (buttonId) { case "my-toc": editor.insertHTML("<h1>Table Of Contents</h1>"); break; case "my-date": editor.insertHTML((new Date()).toString()); break; case "my-bold": editor.execCommand("bold"); editor.execCommand("italic"); break; case "my-hilite": editor.surroundHTML("<span class=\"hilite\">", "</span>"); break; } }; cfg.registerButton("my-toc", "Insert TOC", "ed_custom.gif", false, clickHandler); cfg.registerButton("my-date", "Insert date/time", "ed_custom.gif", false, clickHandler); cfg.registerButton("my-bold", "Toggle bold/italic", "ed_custom.gif", false, clickHandler); cfg.registerButton("my-hilite", "Hilite selection", "ed_custom.gif", false, clickHandler); cfg.registerButton("my-sample", "Class: sample", "ed_custom.gif", false, function(editor) { if (HTMLArea.is_ie) { editor.insertHTML("<span class=\"sample\"> </span>"); var r = editor._doc.selection.createRange(); r.move("character", -2); r.moveEnd("character", 2); r.select(); } else { // Gecko/W3C compliant var n = editor._doc.createElement("span"); n.className = "sample"; editor.insertNodeAtSelection(n); var sel = editor._iframe.contentWindow.getSelection(); sel.removeAllRanges(); var r = editor._doc.createRange(); r.setStart(n, 0); r.setEnd(n, 0); sel.addRange(r); } } ); /* cfg.registerButton("my-hilite", "Highlight text", "ed_custom.gif", false, function(editor) { editor.surroundHTML('<span class="hilite">', '</span>'); } ); */ cfg.pageStyle = "body { background-color: #efd; } .hilite { background-color: yellow; } "+ ".sample { color: green; font-family: monospace; }"; cfg.toolbar.push(["linebreak", "my-toc", "my-date", "my-bold", "my-hilite", "my-sample"]); // add the new button to the toolbar // END: code that adds a custom button editor.generate(); } function insertHTML() { var html = prompt("Enter some HTML code here"); if (html) { editor.insertHTML(html); } } function highlight() { editor.surroundHTML('<span style="background-color: yellow">', '</span>'); } </script> </head> <!-- use <body onload="HTMLArea.replaceAll()" if you don't care about customizing the editor. It's the easiest way! :) --> <body onload="initEditor()"> <h1>HTMLArea 3.0</h1> <p>A replacement for <code>TEXTAREA</code> elements. © <a href="http://interactivetools.com">InteractiveTools.com</a>, 2003-2004.</p> <form action="test.cgi" method="post" id="edit" name="edit"> <textarea id="ta" name="ta" style="width:100%" rows="20" cols="80"> <p>Here is some sample text: <b>bold</b>, <i>italic</i>, <u>underline</u>. </p> <p align=center>Different fonts, sizes and colors (all in bold):</p> <p><b> <font face="arial" size="7" color="#000066">arial</font>, <font face="courier new" size="6" color="#006600">courier new</font>, <font face="georgia" size="5" color="#006666">georgia</font>, <font face="tahoma" size="4" color="#660000">tahoma</font>, <font face="times new roman" size="3" color="#660066">times new roman</font>, <font face="verdana" size="2" color="#666600">verdana</font>, <font face="tahoma" size="1" color="#666666">tahoma</font> </b></p> <p>Click on <a href="http://www.interactivetools.com/">this link</a> and then on the link button to the details ... OR ... select some text and click link to create a <b>new</b> link.</p> </textarea> <p /> <input type="submit" name="ok" value=" submit " /> <input type="button" name="ins" value=" insert html " onclick="return insertHTML();" /> <input type="button" name="hil" value=" highlight text " onclick="return highlight();" /> <a href="javascript:mySubmit()">submit</a> <script type="text/javascript"> function mySubmit() { // document.edit.save.value = "yes"; document.edit.onsubmit(); // workaround browser bugs. document.edit.submit(); }; </script> </form> </body> </html> --- NEW FILE: css.html --- <html> <head> <title>Test of CSS plugin</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript"> _editor_url = "../"; _editor_lang = "en"; </script> <!-- load the main HTMLArea files --> <script type="text/javascript" src="../htmlarea.js"></script> <script type="text/javascript"> HTMLArea.loadPlugin("CSS"); function initDocument() { var editor = new HTMLArea("editor"); editor.config.pageStyle = "@import url(custom.css);"; editor.registerPlugin(CSS, { combos : [ { label: "Syntax", // menu text // CSS class options: { "None" : "", "Code" : "code", "String" : "string", "Comment" : "comment", "Variable name" : "variable-name", "Type" : "type", "Reference" : "reference", "Preprocessor" : "preprocessor", "Keyword" : "keyword", "Function name" : "function-name", "Html tag" : "html-tag", "Html italic" : "html-helper-italic", "Warning" : "warning", "Html bold" : "html-helper-bold" }, context: "pre" }, { label: "Info", options: { "None" : "", "Quote" : "quote", "Highlight" : "highlight", "Deprecated" : "deprecated" } } ] }); editor.generate(); } </script> </head> <body onload="initDocument()"> <h1>Test of FullPage plugin</h1> <textarea id="editor" style="height: 30em; width: 100%;" ><h1><tt>registerDropdown</tt></h1> <p>Here's some sample code that adds a dropdown to the toolbar. Go on, do syntax highlighting on it ;-)</p> <pre>var the_options = { "Keyword" : "keyword", "Function name" : "function-name", "String" : "string", "Numeric" : "integer", "Variable name" : "variable" }; var css_class = { id : "CSS-class", tooltip : i18n["tooltip"], options : the_options, action : function(editor) { self.onSelect(editor, this); } }; cfg.registerDropdown(css_class); toolbar[0].unshift(["CSS-class"]);</pre> <p>Easy, eh? ;-)</p></textarea> <hr /> <address><a href="http://dynarch.com/mishoo/">Mihai Bazon</a></address> <!-- Created: Wed Oct 1 19:55:37 EEST 2003 --> <!-- hhmts start --> Last modified: Wed Jan 28 11:10:16 EET 2004 <!-- hhmts end --> <!-- doc-lang: English --> </body> </html> --- NEW FILE: custom.css --- body { background-color: #234; color: #dd8; font-family: tahoma; font-size: 12px; } a:link, a:visited { color: #8cf; } a:hover { color: #ff8; } h1 { background-color: #456; color: #ff8; padding: 2px 5px; border: 1px solid; border-color: #678 #012 #012 #678; } /* syntax highlighting (used by the first combo defined for the CSS plugin) */ pre { margin: 0px 1em; padding: 5px 1em; background-color: #000; border: 1px dotted #02d; border-left: 2px solid #04f; } .code { color: #f5deb3; } .string { color: #00ffff; } .comment { color: #8fbc8f; } .variable-name { color: #fa8072; } .type { color: #90ee90; font-weight: bold; } .reference { color: #ee82ee; } .preprocessor { color: #faf; } .keyword { color: #ffffff; font-weight: bold; } .function-name { color: #ace; } .html-tag { font-weight: bold; } .html-helper-italic { font-style: italic; } .warning { color: #ffa500; font-weight: bold; } .html-helper-bold { font-weight: bold; } /* info combo */ .quote { font-style: italic; color: #ee9; } .highlight { background-color: yellow; color: #000; } .deprecated { text-decoration: line-through; color: #aaa; } --- NEW FILE: full-page.html --- <html> <head> <title>Test of FullPage plugin</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript"> _editor_url = "../"; _editor_lang = "en"; </script> <!-- load the main HTMLArea files --> <script type="text/javascript" src="../htmlarea.js"></script> <script type="text/javascript"> HTMLArea.loadPlugin("FullPage"); function initDocument() { var editor = new HTMLArea("editor"); editor.registerPlugin(FullPage); editor.generate(); } </script> </head> <body onload="initDocument()"> <h1>Test of FullPage plugin</h1> <textarea id="editor" style="height: 30em; width: 100%;"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html> <head> <title>FullPage plugin for HTMLArea</title> <link rel="alternate stylesheet" href="http://dynarch.com/mishoo/css/dark.css" /> <link rel="stylesheet" href="http://dynarch.com/mishoo/css/cool-light.css" /> </head> <body style="background-color: #ddddee; color: #000077;"> <table style="width:60%; height: 90%; margin: 2% auto 1% auto;" align="center" border="0" cellpadding="0" cellspacing="0"> <tr> <td style="background-color: #ddeedd; border: 2px solid #002; height: 1.5em; padding: 2px; font: bold 24px Verdana;"> FullPage plugin </td> </tr> <tr> <td style="background-color: #fff; border: 1px solid #aab; padding: 1em 3em; font: 12px Verdana;"> <p> This plugin enables one to edit a full HTML file in <a href="http://dynarch.com/htmlarea/">HTMLArea</a>. This is not normally possible with just the core editor since it only retrieves the HTML inside the <code>body</code> tag. </p> <p> It provides the ability to change the <code>DOCTYPE</code> of the document, <code>body</code> <code>bgcolor</code> and <code>fgcolor</code> attributes as well as to add additional <code>link</code>-ed stylesheets. Cool, eh? </p> <p> The development of this plugin was initiated and sponsored by <a href="http://thycotic.com">Thycotic Software Ltd.</a>. That's also cool, isn't it? ;-) </p> </td> </tr> </table> </body> </html> </textarea> <hr /> <address><a href="http://dynarch.com/mishoo/">Mihai Bazon</a></address> <!-- Created: Wed Oct 1 19:55:37 EEST 2003 --> <!-- hhmts start --> Last modified: Wed Jan 28 11:10:07 EET 2004 <!-- hhmts end --> <!-- doc-lang: English --> </body> </html> --- NEW FILE: fully-loaded.html --- <html> <head> <title>Example of HTMLArea 3.0</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- Configure the path to the editor. We make it relative now, so that the example ZIP file will work anywhere, but please NOTE THAT it's better to have it an absolute path, such as '/htmlarea/'. --> <script type="text/javascript"> _editor_url = "../"; _editor_lang = "en"; </script> <!-- load the main HTMLArea file, this will take care of loading the CSS and other required core scripts. --> <script type="text/javascript" src="../htmlarea.js"></script> <!-- load the plugins --> <script type="text/javascript"> // WARNING: using this interface to load plugin // will _NOT_ work if plugins do not have the language // loaded by HTMLArea. // In other words, this function generates SCRIPT tags // that load the plugin and the language file, based on the // global variable HTMLArea.I18N.lang (defined in the lang file, // in our case "lang/en.js" loaded above). // If this lang file is not found the plugin will fail to // load correctly and nothing will work. HTMLArea.loadPlugin("TableOperations"); HTMLArea.loadPlugin("SpellChecker"); HTMLArea.loadPlugin("FullPage"); HTMLArea.loadPlugin("CSS"); HTMLArea.loadPlugin("ContextMenu"); HTMLArea.loadPlugin("HtmlTidy"); HTMLArea.loadPlugin("ListType"); </script> <style type="text/css"> html, body { font-family: Verdana,sans-serif; background-color: #fea; color: #000; } a:link, a:visited { color: #00f; } a:hover { color: #048; } a:active { color: #f00; } textarea { background-color: #fff; border: 1px solid 00f; } </style> <script type="text/javascript"> var editor = null; function initEditor() { // create an editor for the "ta" textbox editor = new HTMLArea("ta"); // register the FullPage plugin editor.registerPlugin(FullPage); // register the SpellChecker plugin editor.registerPlugin(TableOperations); // register the SpellChecker plugin editor.registerPlugin(SpellChecker); // register the HtmlTidy plugin editor.registerPlugin(HtmlTidy); // register the ListType plugin editor.registerPlugin(ListType); // register the CSS plugin editor.registerPlugin(CSS, { combos : [ { label: "Syntax:", // menu text // CSS class options: { "None" : "", "Code" : "code", "String" : "string", "Comment" : "comment", "Variable name" : "variable-name", "Type" : "type", "Reference" : "reference", "Preprocessor" : "preprocessor", "Keyword" : "keyword", "Function name" : "function-name", "Html tag" : "html-tag", "Html italic" : "html-helper-italic", "Warning" : "warning", "Html bold" : "html-helper-bold" }, context: "pre" }, { label: "Info:", options: { "None" : "", "Quote" : "quote", "Highlight" : "highlight", "Deprecated" : "deprecated" } } ] }); // add a contextual menu editor.registerPlugin("ContextMenu"); // load the stylesheet used by our CSS plugin configuration editor.config.pageStyle = "@import url(custom.css);"; setTimeout(function() { editor.generate(); }, 500); return false; } function insertHTML() { var html = prompt("Enter some HTML code here"); if (html) { editor.insertHTML(html); } } function highlight() { editor.surroundHTML('<span style="background-color: yellow">', '</span>'); } </script> </head> <!-- use <body onload="HTMLArea.replaceAll()" if you don't care about customizing the editor. It's the easiest way! :) --> <body onload="initEditor()"> <h1>HTMLArea 3.0</h1> <p>A replacement for <code>TEXTAREA</code> elements. © <a href="http://interactivetools.com">InteractiveTools.com</a>, 2003-2004.</p> <form action="test.cgi" method="post" id="edit" name="edit"> <textarea id="ta" name="ta" style="width:100%" rows="24" cols="80"> <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2//EN"> <html> <head> <title>Passing parameters to JavaScript code</title> <link rel="stylesheet" href="custom.css" /> </head> <body> <h1>Passing parameters to JavaScript code</h1> <p>Sometimes we need to pass parameters to some JavaScript function that we wrote ourselves. But sometimes it's simply more convenient to include the parameter not in the function call, but in the affected HTML elements. Usually, all JavaScript calls affect some element, right? ;-)</p> <p>Well, here's an original way to do it. Or at least, I think it's original.</p> <h2>But first...</h2> <p>... an example. Why would I need such thing? I have a JS function that is called on <code>BODY</code> <code>onload</code> handler. This function tries to retrieve the element with the ID "conttoc" and, if present, it will <a href="toc.epl" title="Automatic TOC generation">generate an index</a>. The problem is, this function exists in some external JavaScript library that it's loaded in page. I only needed to pass the parameter from <em>one</em> page. Thus, it makes sense to pass the parameter from the HTML code on <em>that</em> page, not to affect the others.</p> <p>The first idea that came to me was to use some attribute, like "id" or "class". But "id" was locked already, it <em>had</em> to be "conttoc". Use "class"? It's not elegant.. what if I really wanted to give it a class, at some point?</p> <h2>The idea</h2> <p>So I thought: what are the HTML elements that do not affect the page rendering in any way? Well, comments. I mean, <em>comments</em>, HTML comments. You know, like <code>&lt;!-- this is a comment --&gt;</code>.</p> <p>Though comments do not normally affect the way browser renders the page, they are still parsed and are part of the DOM, as well as any other node. But this mean that we can access comments from JavaScript code, just like we access any other element, right? Which means that they <em>can</em> affect the way that page finally appears ;-)</p> <h2>The code</h2> <p>The main part was the idea. The code is simple ;-) Suppose we have the following HTML code:</p> <pre class="code"><span class="function-name">&lt;</span><span class="html-tag">div</span> <span class="variable-name">id=</span><span class="string">&quot;conttoc&quot;</span><span class="paren-face-match">&gt;</span><span class="function-name">&lt;</span><span class="html-tag">/div</span><span class="function-name">&gt;</span></pre> <p>and our function checks for the presence an element having the ID "conttoc", and generates a table of contents into it. Our code will also check if the "conttoc" element's first child is a comment node, and if so will parse additional parameters from there, for instance, a desired prefix for the links that are to be generated into it. Why did I need it? Because if the page uses a <code>&lt;base&gt;</code> element to specify the default link prefix, then links like "#gen1" generated by the <a href="toc.epl">toc generator</a> will not point to that same page as they should, but to the page reffered from <code>&lt;base&gt;</code>.</p> <p>So the HTML would now look like this:</p> <pre class="code"><span class="function-name">&lt;</span><span class="html-tag">div</span> <span class="variable-name">id=</span><span class="string">&quot;conttoc&quot;</span><span class="function-name">&gt;</span><span class="comment">&lt;!-- base:link/prefix.html --&gt;</span><span class="paren-face-match">&lt;</span><span class="html-tag">/div</span><span class="paren-face-match">&gt;</span></pre> <p>And our TOC generation function does something like this:</p> <pre class="code"><span class="keyword">var</span> <span class="variable-name">element</span> = getElementById(&quot;<span class="string">conttoc</span>&quot;); <span class="keyword">if</span> (element.firstChild &amp;&amp; element.firstChild.nodeType == 8) { <span class="comment">// 8 means Node.COMMENT_NODE. We're using numeric values </span> <span class="comment">// because IE6 does not support constant names. </span> <span class="keyword">var</span> <span class="variable-name">parameters</span> = element.firstChild.data; <span class="comment">// at this point &quot;parameters&quot; contains base:link/prefix.html </span> <span class="comment">// ... </span>}</pre> <p>So we retrieved the value passed to the script from the HTML code. This was the goal of this article.</p> <hr /> <address><a href="http://students.infoiasi.ro/~mishoo/">Mihai Bazon</a></address> <!-- hhmts start --> Last modified on Thu Apr 3 20:34:17 2003 <!-- hhmts end --> <!-- doc-lang: English --> </body> </html> </textarea> <p /> <input type="submit" name="ok" value=" submit " /> <input type="button" name="ins" value=" insert html " onclick="return insertHTML();" /> <input type="button" name="hil" value=" highlight text " onclick="return highlight();" /> <a href="javascript:mySubmit()">submit</a> <script type="text/javascript"> function mySubmit() { // document.edit.save.value = "yes"; document.edit.onsubmit(); // workaround browser bugs. document.edit.submit(); }; </script> </form> </body> </html> --- NEW FILE: images.html --- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Test of Image Manager plugin</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> /*<![CDATA[*/ <!-- .textarea { height: 30em; width: 80%; } --> /*]]>*/ </style> <script type="text/javascript"> //<![CDATA[ _editor_url = "../"; _editor_lang = "en"; //]]> </script><!-- load the main HTMLArea file --> <script type="text/javascript" src="../htmlarea.js"> </script> <script type="text/javascript"> //<![CDATA[ HTMLArea.loadPlugin("ImageManager"); initdocument = function () { var editor = new HTMLArea("editor"); editor.generate(); } function addEvent(obj, evType, fn) { if (obj.addEventListener) { obj.addEventListener(evType, fn, true); return true; } else if (obj.attachEvent) { var r = obj.attachEvent("on"+evType, fn); return r; } else { return false; } } addEvent(window, 'load', initdocument); //]]> </script> </head> <body> <h1>HTMLArea 3 RC1 + Image Manager + Image Editor</h1> <p>PHP Image Manager, Image Editor for HTMLArea. Requires PHP, GD or NetPBM or ImageMagick.</p> <ul> <li>Auto cache thumbnails (JPEG, PNG, GIF depending on GD).</li> <li>Filmstrip view.</li> <li>Online Image Editor.</li> <li>Create folders (if permitting).</li> <li>Editor - Resize, Crop, Rotate, Save as.</li> </ul> <div><textarea id="editor" class="textarea" rows="10" cols="40"></textarea></div> <hr /> <address> <a href="http://www.zhuo.org/htmlarea/" title="Home of the ImageManger+Editor">Xiang Wei Zhuo</a> </address> </body> </html> --- NEW FILE: index.html --- <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> <html> <head> <title>HTMLArea examples index</title> </head> <body> <h1>HTMLArea: auto-generated examples index</h1> <ul> % while (<*.html>) { % next if /^index.html$/; <li> <a href="<% $_ %>"><% $_ %></a> </li> % } </ul> <hr /> <address>mi...@in...</address> <!-- hhmts start --> Last modified: Sun Feb 1 13:30:39 EET 2004 <!-- hhmts end --> </body> </html> <%INIT> my $dir = $m->interp->comp_root; $dir =~ s{/+$}{}g; #$dir =~ s{/[^/]+$}{}g; $dir .= $m->current_comp->dir_path; chdir $dir; </%INIT> --- NEW FILE: list-type.html --- <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Example of HTMLArea 3.0 -- ListType plugin</title> <script type="text/javascript"> _editor_lang = "en"; _editor_url = "../"; </script> <!-- load the main HTMLArea files --> <script type="text/javascript" src="../htmlarea.js"></script> <style type="text/css"> html, body { font-family: Verdana,sans-serif; background-color: #fea; color: #000; } a:link, a:visited { color: #00f; } a:hover { color: #048; } a:active { color: #f00; } textarea { background-color: #fff; border: 1px solid 00f; } </style> <script type="text/javascript"> // load the plugin files HTMLArea.loadPlugin("ListType"); var editor = null; function initEditor() { editor = new HTMLArea("ta"); editor.registerPlugin(ListType); editor.generate(); return false; } </script> </head> <body onload="initEditor()"> <h1>HTMLArea :: the ListType plugin</h1> <form action="test.cgi" method="post" id="edit" name="edit"> <textarea id="ta" name="ta" style="width:100%" rows="24" cols="80"> <p>List style type is selected using the CSS property "list-style-type". Hopefully it will work with Internet Explorer, right? ;-) Let's start the monster to test it out.<br /></p><p>Cool, it works. Except for "lower-greek", which doesn't seem to be supported (and worse, a gross error message is displayed). Therefore, I hide that proerty from IE--it will only be available if the browser is not IE.<br /></p><ol style="list-style-type: decimal;"><li>This is a list<br /></li><li>with decimal numbers<br /></li><li>blah blah<br /></li><li>dolor sic amet<br /></li></ol><ol style="list-style-type: lower-greek;"><li>yet another</li><li>list with greek<br /></li><li>letters<br /></li><li>lorem ipsum<br /></li><li>yada yada<br /></li></ol> </textarea> </form> </body> </html> --- NEW FILE: makefile.xml --- <files> <file name="*.{js,html,css,cgi}" /> <file name="index.html" masonize="yes" /> </files> --- NEW FILE: pieng.png --- PNG ÷ D%gr<û¼?Î:]»Nß[u«»ª§ïï~Õ]ÓÝuïIkïµRJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥RJ)¥L§¸râqK7ÍsêÇ//'¢RfÌ>ýÛî?høùdñ¾J0(³§R*V3qÍÕBr¬J)¥RJ)¥´Ì¦_&Cctã0ÝÚ¤Õ*ÇrµKO'Ðt ×Úzã3ÏØãÑ?c+d}ÄC8ÜYÔ¾ÿ;á^é¹s§3yn×°ÿf^`®n°´%uES±Zc[E¸<y5bÆHî38<dsóSÑý$'ñPc?+p¬xÙ|z8x<Óáïu`3~°;\C`cô %?×`í㿸*ÊÎþn·Oû¡+ù»q¿6[Ò3eÔXÙñªpxÀû:ã×X§ñó&ZðÿQ`æéÆÞ%kl±ë M|X»»ÅªùýhÆ÷ÜWH+î×Oo+ÙjMídóôÓqï)1lGpüÛ È0ïïKÌ)ª²·Êñ´5>mÒ\ ÚBVÞFºz2èÖ騧éÞôÿ?"êðq>Rå¬VÔbÞO3 .Ö¿N)×ëÚP÷Û«Ïød &ÚÆ bóÐÖi¥uæZ°bAÜYè¼80×ýdÛØCÚßuÄ``¬Mt!÷eÏÀ<¬³ÂìÛ³¼æ$+NVúÅOßC¿ÿW·Ô <O Þ¡s²o ;QQ7ÓO7fìE8N3v´´èCÛxîù¯ro'ÿÃøqùã´ÖÌ8ì×-4¾²Þq«,äõ软&Y,6ûvSAã7T÷êË[é²F/¦>³T©7oÃÀ{p<¨y;J´£´Gtà~3±È¢_è8½ß ü²g´T×X窿G@ûª® kh¾U²F:¤4^ãIÍU°¿Ë>s·WiIÖËFzÜZK_ræv´xÚ^n>cÜuiÄGÄ=TÃWö9Íõp²ñ/K¥õ¡ígæäz½·Àléfí:`gKY¡i´ J}4È>²dç ;:ÜÓE9â¬k$ñ£&þ¤±:JÌ.*ÅHc(lÚ<pLë"ÃbçZ:P¶×Ïö Yßw¿z¡ª-k(Çê(m´vúµÏñ- ài~ 5ø <ï ý(ÇùÀñx¾¨(Ç+¨Å.ý-d¿1¾³øÊl K¬µ¼ÊïéÞ¿hÃs6Ã4òïmÏÉrs}çáxLó´)p!ê6Ö¨¼¸ÌÒíÚ³R©ei×éÀ bRîÂÖÌ ¦¬ÖhÑvZ¤7¥¸%!¦[tëöUûÀs¥8>çzÞñc%ï(ÇW?IöJÌgsêB`æ'ôË KÍj¿U-.Hlpºµ4IÞwül[#~ßAMÖÖ²Ýf¥uÅ~mµ)îÕu©îa}à%ÀKu<ÏWp\üÏbBùè#ÛÛXdWéýïäyÑiYJWEj6ßâøõýñÊærñY±ìcb¹¦Vu0ÎëNl)½Ôºh«nq¼3±Èâzzn<9v£ò½þP´OBÖ^üPѦyÉÅïI,²è;{Qüб¦?gÑ<à9KÀ{/PÝ¥½ sÚÝtH~®ö¿#_g|D³´?¦(ÒAâ ¿Ê Ys6Æ® ëë5Îó;9o²ÖG,l_S\DLÞï=$ qtüë÷×%PÛJ׺f?Ås ®²ÙåWªÀ3ãå)F@û:~r<K~¥ðìãVàÌg¬øÈºÆ©çÀ´tË:i˲ѾÁ¬(Ç6òúqì¢}1ð`Ï/äCëÈøÝKõ×Ë¿Õ!ÿÑq<¬¹ B¥|#øúÏÇæUUÖÔ¢÷þ´ÄwÖÍÜYÌ(ôl¥HßG¾¼W·ë²í·zæá9ÒXhÓú1AYlÇ1çBÎ0«^[Ï8µì}¢ ZqXÇü¬ËF¥Ý±`Ѹb>½î Ki½¿~ãqàçx.>@P< Ø@´Ï?CÕì Zx¯.Næ9¯²Ë±V²j÷E9ø?àp<^ZÕä2¾Ïþ?Ç«Í/æ&^¥Eæ GUÕLq,ñýÙ{¹T¾Yh_%D&îç8®Îƽ¾çKyHU[d=úÿM2(Ù¾A2üYÏfø{õ[7ÈBëÌaÚôU¬N±·XÈwL'ímuÞl©õ7 Yh½Àéx^¥õ\Ïuà°13Ö2Ú²]ßu56M÷8UõÃ6Ù£/TéÂj¿Wg²)ã½Æ|²håÅüÅ8É |®ßé37z´ãw/ÇsËàyø¨,¯UüÏa¤¿,ÏúH©¨0üÇt4»I®tÜ÷ º$WV²p³;çµÏ<ËÍs©õ,Ë->ãúVjáR¨g Fû.{ß·*ò\g[CÅ·0ó Xó5~oϬªmM§tÖÄÉèxÃ-¾×¥ù¼Zxð=BþÎÃÀ×ä|ÿ¡/Ø»Mð¼?Ю©3&^ZÕ¤ûÎëè'XgZÏØ¤«LÇio¬ Lú¦ºMFlÌ9j,ùf)tÍT:²ýJ!çêÅ8þ$ìóãùµö ¤\*ëì×tÝd½=fcÉ÷©9jÈfÉ ~°NBëyz/BDî|ýäw >ì1Ñt¯ÞGðKµªÑàÏ·¨çüf¯k`½ÐJÏ#7é©q~E¿Ù÷Z7ÿ¤Rò1;âyÐÕQÚõY1¨£S¬Å°±(í°`Ö2jG6N3Öç|m'nk¤n3àð|øGð¼Pã;H J¨^Ô¥gøð}4Ü!ÊòºÌ¢kÖL:çµ}gOü½ 9sÇT)p®ªig;ÕE;Ì=wçÉÙÖRë\,³¼E^¼<+8ÛÿK+<ÓÄ»ÕÒ^cqµï^çmÚd§øJ ÅDå¸ H6PÖç¡a%Z/³ôÙ1§f^æsç?ö«8§cç²ë`6»Û¸]ck%t¥äçqY#*"Ð&nZ?åýÔßÂuçñ4<TîØ·ãG¿uöMà㢠ÏÇqp&ðaÑß»ÕÙçyZ3±7a bä`½2IF>ǹºë£#µ®#Ó]!¥êxzçtí¿D¿;_ã÷£àX ûÍIæ<0^µ@k,FÖòXk'ìÚs×H#Æßë|P_wïçdWºR0k·ZÀÌjhiÃ=q¸ùË+ +Nµ?ÚíT%]pYÀf5¤ãy½éÞüÇü=gýéÌd!;ñÉs4¯HÀöÏîá 2k=¯<Уñ~flØÙs¨7F´¦{¤Äh÷$àÏÁlÆ[f>Ç2s 5,³y,Âﵬ;²#õyoÆq£þïYj);:Ë I GôÝO¨~¡PllÁs(ÞgQTΡz«7½ÏU0Z±cÍÎäpkëÕxP.ã ܨíþ£ëà~×_qªq£1ËÒ(rpÕ{ƾÿ÷¸±Ì|eV Vʲéý÷ü_]ÀenËZp !e¦-Ã˲Â,YðªZµÚ¶ä¸õ»ä]L éÍ9'knæfYO2w=9YêòYsÀÌg&z3xífÇÄc1ãÈñÍÈ©h·íF»ïhÂ.T»`í³×er[b¥ÅM|2?©ØÇ µàvåøqEÎ!ÐפY. fÝÚÚýÀÝIÓÝ]ô]7Õs¹yêY.%D.£ºÌX£JElK-+pÔݲ?[zÊÄs#ðW©Qç¯ñìHh¢ZÏ2L6}#v'c¡uR]èº-g-| Ïnjúz!¢íx<ç©¡îw áè/Æówá9SïåYbíuhÇF±ò-³¹:G4ßi`òÄbáò®ÈÞ/°j'TùøJÄmEè²½?mJ'fXavÿ§àZάÍföösÚj¬Z DxÍÎ`ajóÌÖ ^cLì+X2¬bQõκYÉÌJÙYÉÞϳԩD'aWÖ0ó5,3YYô]T'ç¥ 9tcQí6ªêL \cuÕ´Ì·WØÏY5-íÚJ³µEßB(qu´ >Z¦ºV©ÌªöÐ2ÿäÌ¢vætæìýzæ+pJú½·Þ¥ûµ@ö¿¶&d SXag´Ö«£f¡æÝë A±æÝ¦»¯8?й·;ÑRW;öÚãÒÊÔç RÛwÖay:üè~¢Å·6í®²Bã¹Ò}ªB| Ï>æuwªäµf æXf=S°ÌXhÝ Y V0Èð|Çux>F(ý*~Ùo*ç¯+ªî²ÐÐÓfóÃw®9|?¢Ãõ.±à9Pº*øª lÆZfc5,³,Kl¸Ej¹6×#«Í¼opG¥Òºb[¸p»´6Ôáz!4Vè©ñ÷GÌo×½¡ú¤í,β]_¨8èê<s¨§mF¬ïÌúÊl¯¶,ôXdQqÇùþ(! Càú5iƽ¢®Ï3Êà ¢4[lð\`´[7Ù,ÑPÆÇ&ÛõvW«ìÀÞ7Éj{ ¡å)8nÎÀ3 ìM(Ä¥åQ±S³´±%u@¬åÿ9Õh|L@ýqàÄ&öPãÆ«3éò¥ã üÌb§+pã=¼>CðwöoÃ1¨dèñ3û¥ê ¬îó1ô=²4¸¬Ëì§®ÀÕź(È¥LÒ3Æü +LPÍ40kϳ¢YwrXçùh²¸lHl#µÎâøfz1!öwÊû|CYfÌúïëPBéí!0»A´ã6íØ;*«¢| \©h+Ä\@äµN®µÒN8WsðcÝWÅ;³UÅäcèÄÇWp*ܨºÊ:ÀÐ5¸Úºß)«*¶LÊF²1£O´Wt]B4äòmEÈsëí¼Q¾²?§ã¸Ç?w«ºúÛ ùh§âù*qüT£ºwe*d«2Öp£ÒK~æ¸~Úi,d}Bã -PÔ\ãZùIhây=ù?&K3í&¾(bôã.Øï+zÿ`)íÀñ*å5PD¹ÁQáë§:È#¥»j ÌÂd¿ö¨õvÿ[ªÏI8~AH8=DÖp e]N'<jM;LؼÈþE¥UÅæÉáÐY}:fö5U f ¨Às=ui$S²Ý¤ÝÏÖÆ;ÑXcûéÿ¶¢ñGà,BçÞÁdÖ½º£^7og}*Õï»&Ý/ºäQ]÷ȾàkÐüwà[:ø^BZÙI~g)(â³8ÀóY/Êb#´a^fM7fìÉ8ì]Ρ±`NùÄqe-L5ÆóKYm¯þ^¥kE[` ¼ss(°Çzn¤qÿ¸Fæp1 ãyDLÅ}NÒ·*@æ^]çöcwÍéÁR¾Ú³8³fK»1tFf*ùLÖíªòβ,³F}fͤ.Ò q¿|?±R¿õHUí/àZWþ¿àx@=¡>Óà¸ù_êÛH#·æM?l4¼£Ù´=+eÜÂÄ<¶q¥d"ÝDhm3 òå¢b=Óg¶Ä¡§ºÀöY¦ÉæKuµ¡e^ÀÇHÅ×N3ö ÖZo~-X¼PÜWÅÒíÙtëoº,³GOÛÍ;òCõÓ 'nÎÔLÈö%DÉͯÿf³Á_Dh3²Mò,µ:÷BñóYÝvÛk ~'³öZ³e¹¹×ÑÌÎÓ×oÒ?hügÿK%Á?/àÿV *dg j¯^ç0ÑÇËWvD ´nBþÜ{ð<ÀÄi5ò¾ÄgS+WÒçXµº>X«Ì*yÁ ©uÖ«çz5ß«ç3 M<Áq/ßnËÌÙÙ«½ZW}¢ËÚ Éú£x¶$$·×¢³ ëçÍ}Ð&wë}¡öQ®!²gEÇÒq½rEì)jÓgÜ!×ȵÀ 8rìÎij@íà Ö}ÈRÉ?ólCû¿,˳Ϣèm45TZñYxÖ¡ÅÒàoÊMµâxYfþö¨Ù0+´q×fsq\fü;¿Öë°R¡2¨ÐÎå)ZhYcÏ 5F1Çe-æ9úd;ç fiðBzYþÓF»>¤uøÒê3ECõ¾gWåýà×|sLÏçL³e×WïF½¾ZãrÚôÌ&eYeYÖØ£,%¢ìÚ®ÀOO(v<(fç8üÎ uáÆ#£ì$÷òl> {û¥:ñ¶jÜ5J3¦Õ¤ó¨Ð*sy e`*7¾02`¶>Æi¾öBÍÃdÎ=ëvîµm5iþ½~£%Æ>«ë·´oáé ò*¾ç`=÷÷ íEä¼iT-¦#['w}ʲÎë¬V¨þz/_P¬-@ÿü,û®&Yu_½ø±Ju_êÿ×øçXeY©ÖZJDG²?ÿI¨9 × ;ÐÁzPN¯×=Ås°<ýÉç}µIóéeÙ²´xüzhó¼ÜÇu½Øäù5Chÿu1ç8NR!:´â§ëÙHVEKYuKm° `:{àÙ]¼óu<´ÄiÇ<.Bþú7iıßQÐ_!2 0^÷Ô3¾yRr¬2þ3ë3[OÏ{±Ê9à4Ñn+ ÁxöªdµúEÅÃ8¯æ+ 1+à «áÚÕA½pYϱßÎÄ6yþ2¤ùAp¼Xfõ,´Þ:éa}#75`6@æv¼Ö±8ij|dµ,«_Ô(ÅjÞÕZýæÀ¤ ugãÙEÏu*!è(ø·ãù!}ÌuX4wë4Ïr?eûéªa ÕG(2ü&ù ^'Åîd<¯ÆqK½ßj0³ Úsuï¿¥¶2c©T>b¬²v&ָ̣?«f¦¢åök¤ÂS ¼,Ë+Ç,Dõ~ ìâÞÖÊ+Ö`uLì>KO:qß8vÑ_Ú3q¼Ff{ußVVlzÎé C/¡òKÛ´Ye%ó4=ãú~×IPTäø©^u<`Þ;Jdå/Íït% h:nmÆ:Ötì6Ù¡u4ëkOnHÌʺb ôóëêoÄbÅsµF£ÛÃÑÚ²|3Ì*¡qò½9\Û ÐiBt fËZf£&AQD+Í&^sÅù_ß×¢Îb2fÌÔ/»ò(ÁwèýÇ`¼¢÷iÆ¢ò3O¥ßQ¼ßjC,§ÒþýTçÖ+ärè´tLîF¼ êÊE(W´±6ì¿áy¶J¥06+ÕTóî1¥}Õëõ ¸¶Q]+°ÝY7Õ0¢[Ï2[ÑÂÁí×s´ãé°]hñýW°ØÒ| Ù=T7YÌË] ´c |OGëo}×Ա̳t-¶óìè8ÍèÆ«.ª{ùîw-#»ZxEè4D->)ÿ Zvý³ÈüÀeð<]jxA2¯yÜ~J gù\½ð¬+eîº×f÷ç¬áVYÜ_ïÕëçyõ,Q«0dùwí|Yôk±Ë5¦]H¾VûÌjٺèxíPèôª·F*ò\'V¢àC"øO¸ÏÒE¦çYÉ·*ÜÚ3Χ麢¤¥ó3¥Y fÎlþÔ2ëÑÏØ¼íf£Ì"»UƲ)R4õÁ,ÜÛ³õõE9~5{Y ª_o¬ vj"Ë«ÐVâGâøKq/êg%¾NP©ÕWOÆ2üYTcl®!u¢J³§Ñ2«XCT=ýæÿ³¬³´Æc- KéÆçË·hGO(Ä ùE¯kIѼºPìksc+`Ð(µ{ ¾öò!hBªà*E:v53JD°¥¡ûk(¤Óe·sïg3¥ù`æVSá±»¨´eöi!&ÝWë-³° ÷Ó×el¶èüOµnÐbØs¯±Æº@Ë£% Çë}[Úà¼dá¶Ì¬e@5ÊõºÇ5úúþ [¯¨|]kíy$á!Õ/ðÜ]u \£èOz ¡JVË,ªq½Þ©µ¾I¢ 4ZgÇ=GH±Âú,ËëöU4Às,!brÍ£4|*'sËlgã//,@1NF#¾¾IÏÓÞÀz.B5nlðT[5lÃátx¾Î(DKhM0HHñr+ ¦^;¢¢çý:îZ>³Tê±iðG£?{ãq=Ȧú{18j˱VêF|}¶M#çô|îÍ8C`V0íÇIJ c¢WäLô<¦îÔeAhlỳƮ=¡²z ³´b b}LöèÔ¡ðUx ¡%Ä(¡îáõÙo¥|Øghöø,Õo÷*ÎǶã´lHí¤ñªEåmø&ü+vÈZÒÞkøÎª£1ÏâaÕ¨eÁí£býhÙ´ùTA^ W`>n¡ìÏs.xjûn|ÏÐzù&úìÍú´: ûª}VQ³X qîD ¹ÇXæE=òdYÎ8§k==¿{ôóL£4s¡ù Ó<EÃí¯j@k©G_5¸bïqZ+,Ønó<Ö'0 C£4cQYnæh4Ç2sfOôLÃYVNÇfi }vÂÅj´Õ N£Òa{ dJoãÜs/Õ5F{õYi¹ACç[hL'ÍWd8F:z&©æ%MÏm}ÃNxféÀþ[6£{s¬¯¨5uí)Rì$äIínì²Ùüï4Ö@fÔÛñI5Fs²µÆä}ÿô)Ƭ§y¡ðÍC.¢õ¦×d-Z½Ì5GiÕ/êï¾Î$8¿;Ã:kV0ÈôMY[E9e7ÑͦW8¯"Ë2å>ÝêõßúÛ1EãædUؤçMzõdX×1*tÆýl6Àc(Q"ÆÌßëIÀ¬+±Ì:©´¶û¥lÄj¡ëµ4ZoÖ²,Ck±I^»ù"¹+©eYËTzu'£°Än^ã i³½x¾%ÆÙ¨ìÃZ÷& AM[d|fk|ïÒ÷;ÔÐ^k9Þ-eÑ[«hnØbµÞzW[ïêY^fS£Ô2[®5æíIò úßo&únVdìã¾d¼³\iÀd¬È8¯ÑW¶^ï?CBãÉefßZ)¢°SGÁ²@¥LöÙòƹ[kÀ~?JµÏlÌÌE³!³>+ÌtZDËÁ¬^cμjÖDu Ò7Ú¡×ÒXEsWRËÌ'`fU< Yc4cEN¥´3p*ð Wà9x=U)ªÿE*éÍZÙýºñ÷Z½+ë(Ys=±5× <SWʽÏÀbiÒHÕø·odz®pÝÃV&(¯¬A+fÙ`0YÓÁ,}¢4c^þÅÜM\Êï¼àÄ}©4 FÌwoì{%¡ÒöE¸ñæàÙЫl/Õ2à4ªr{öÁqiðG°Ôºs4ÖV}7õ"[¨º¶Y;¾ö\ëë©þ¾7pkßß]÷g-¬ÚvPÈR6$ú$¶Äño<'YØÏ*BüAëµ2èÆ±ÈÆ¨DFËÆZi©u¶§,¤fF2>ÌnÓýí¬¹Yç µüfÖo;XE©5Ç ÌÎ"äóÍ!Ù|Ðý ¨cCðü/{|ó³MK¬û8TçA+Á¬¿ÅYSÏæÙÄÆyí_êÑõ,³Vu^ȹà+Û_ÔÎZHëÍ9LVéÐZ <HpBßEp CæÖÕK±J4ymIúÎS©´± ÿKÀ²{ª1ÞLA¬u¶ðG<ûã¸ÏKéÇÔ¾<!¿å¹À¨?S»:tÿµÊ2KýeÆÑÙ ¥ë1ÍEÑÙhòPcÕS,³éei3ÛÔpÞ4Öq¢ÎÆqaÉB@ɲÙT|gÁOz¦ñI»º¦´âO^jº_O%ú5ÖGßl´¥díÆ±DÄ{ãð¬MhhºÈüæ6ÒzF(ø)Ð EïÂñhÆÜÌ#ø[G%Ù8Bâ?ãù1×áy¦îñTc¬Ê£V)©æÝø><Çâ¸Ï Âó;壽GB=ºÑæEK£1XgÐÚ)^&/,±Ó ãQ<7üÒ¯!t¾ø ¬RG±±V?ٸϡÑñüPÅç¥r7§q_çoº¿{u-ÑÞ«kmQëÉ]Ñô ÌòzB]F)É¢Ì0Ko*;ßk2.ã0® 7ï¿ËPV³Ø¡Ø[^¤VYgev·êvú¾ÑÜFòzæë`8QÓn7 ¸Ïé8Á³û®Dva,Ùi[¦Aú¡0òÿÕ¿)ð)à8ÎÂs¡hº¢¹góZÌÒÒ}¯Df}ÐípÜ®¹ÙYkâdܸEôZ¥ Ä58PÇ:³m+àoý&{wàY8 ±£Îm¨'©25]4c^=ÓS+½ê íuÀlÆZfdXféÀÛH&ËkZ×ʦYà5£eC(kÕÐÇh.«Àß¡÷fSiU_d,ÓUæ`ì vãÒVÈH?Ñ¡6·çn<÷¸:Üq¶Ï¥8.ÅsæäÒbßM¨ x+!°æFÑǼpxo)ÐÚ^Jz`,!ÔÜûpIUN`çüN?§RÊ(îdÙ¥ìÂÊi³¶ïÏ!½ Ïe8áùàë¤Þà¸Ðfèfª£bëüLô¡¥ûÀ&ÊÇÃÏúNT¢©å34ôíÀOHù}¹Àû3(æLéÆZ@Z¡Ó»ñ|LÌÎãÀW¯*d?í-¨Ô\Jð= <F(w÷4Ðý4ãÄHF˾Yíhrf%ëѯ)`WT¸å}ÕJÛ»ÔkÐÌܨí3KMæþ|oÔì¢ÿì -ÈǾ°M L´ú¶5v^bY0o3`¶v¢õ·fìÌ BºG¨]ÆÍ*~5mÁoyè÷" *E6°¦Þ¹U´cwÍó²{lqÁ5Aqk¹\ˬ6Íou áÆo^/èoLn28èz9qA½BRÃÅÞÓhb=j¡<$áùTÝÇèÐ Eµ$ÅæûVhýyEC÷ÆûQ:ÏÅ3Oí.Î ø°¡t:ÛíÑM ù0é Â'þÎ j¬ÍÈlÃ`9 lÌk¯lµÀ2ίÉô ÌÍ«ÃXÏ2Ë;/}NÌÈhÆF-³zÕ=èQ»ÍÏÄëõZdyåÐõÂL;dIÕJªµãµLϯ'px<ÛçÐSËôÿíæ`|"³EÉ÷ÍÖúGrësfÑsOûã¤t©ïlO5_{8ìH¥©j£@=\çÀÄ æ³ÔHý<¬ëe-fÆrjM8àÿ\4ðájعÏ'>gBÄïe3Æ¢ y |9øH²6óèÅa*QFIÌJï¤:z7Ø&+Eëk¤o ¯<Ë,e²ëXfý¹M.ÞìfÑ5ÚFý Àc5À¾Z^µ*y2?Ò¢ßX4 áýT P[;ۼƫÇl ¡Ä¢¡é׫ôõÞ_ÕàØ~sÒßöÉ&¿Ió<Çз0ór±±ÔRë¹ÙR/4?ÖýÜ@ ¯ßÔ¼>?>¥?PQWÕÃN&ïõÖ¸¦ªt¦ùP«#µòòAÍçs A.èù.úÿö®<L®ªÊÿ^uuwº³} ´}SÌsÖduG«¡ÃãnN"ñ¾\ÖÚ)¥YåÂúQQ˾ðWWT®½©Zú¹ë1©¾t¼ïY'Ê«Y´æígæMðY-ñ²Z5¿47Z%µX®ÇÒ&¡M¹´Û ßÄéÉÝÞ|lL)r5-µVTi óÿTØsJMéÞ@Åãt¾vìÙ, ¸MÜÓ(ï*¦h¾õÒzÓ4Ýd¼ÌÀu6¥ Hqû® Y¾AkTÉ2+öÁ>üÿ|ÄÊOàk¿ÍØ,ø>òðlmA [Lñã0U^µ ³ÖKÉcs=÷¤ð_»´{ æ²ÑçÁÔþØ:S¬´ÎZíð[·ðøV× ®Íÿo¿×d»×ÎnÁÿú=KLºåÛPOód0«ûq|]YlEôµW¶Æ¯ æ ÛqǪfѳN¯[Í㶣Ȳ>àÍ×O¸O@ò³ÄVyê 1?Qæ'münó~U%ÃàbºOÁpȱMFÂïõu#y¦©^ZoÑs¿¦1X×üÑ~Ïwàw¼Eº^ãsOo ûXZÌ,¢5ý8"l`íÀS ²ãað-Ì/ø9½`«Ü± ïõ°ÕBz§ú§YiEgÝJëHÒeû½Ên>_ϵÈïJaUl$-±OxɰfðÉçÃÞ2K{¾YX"~e`ÞS8kkp3TóóÓFû3wH µàpü¬%EØ;Ûè ³uBXåÅ|LóåÎO1cüVäqBÛÿ+Ü!]lrz0 &cFé´J§KÆUW~¦ôteÀ²v¬ Ùö£xë<¬kvhZþ½6t³=É5= -¬o8¯}k¸ ÀWÄï ¬³ö¥]ËU«1-< aæÇÈòâ¥YQ¬CÎs;æP6lY`Kv.f¶ÁfòÀtx^É2ë¬pÕ2þ*Ýi[¬Y°UÞ 9¶K Âß¹¥[1'Ü®[WV/Ìüôyãóç£ 6 ³ <#^¾[mÚ ÷ñs§ïdµÊªceÖæ)YÁ`GÉ;öøD+ 1´S2¹ö½kç#é´³Jk#nC»ÕÒq¥ßï@yöphÓÎ<7co0sE¤1\a q0óOE¸ºE½]!aÖ+ªR°Ý}þuTôÌyM Ä_"~7¬`1&5?iªïxc©e£)Ðv @K`k.àfÈjEÇ 1Â~DxÚíZÞ/Ð^'3¿Gsvn%<¯QTbÝÜY\VúèG|XÚ%¬ ¬ÑÏÑ5ªÍèÖl1÷V¶®&á/t½õѲÉqý~Å1Ñ,.}øíQuÚÆX]Ì,ΪËhÁàý] ¶7ox¬óS¬Â2c/iípZ7- ³âäYÿËk´Â³¦±FÕÐèï9wÁZ~Â×f!nr1=&ã3lÈÒ kTï1V:gæ3Õ%-ðmËXÙCô\ÊPÇx P?Ò"fÑÚ3`«~8öUV9ÀP°ÙÊæ¶~ã%ìIv#ãca«À{`+Û·\N0*ó³6åþØO ÑÑ¡Ý3bf©þö¬Ùöh?äøÎ=Ôÿ>ØTý½`ð]Vs¹ ÖÍÐÓ·N¹¶Ñ\Ã&ìú ×ó½Íä î pËÎõÃÖ <1 ÐÎeðؤù¬°ÿ*.g³ ý¶#-·ý\ÌM~ËíOÁ¶éÒ 6k],¡@x63ÐioÂS|6Í `ã¹`ÜÕNn¼Ð'SØN§ö<qµwS¹N7Ò ÕEafÄåawAâ52{Íaó8Æn-gõQ2¾/Ðy¿Å ´AsâÂr®öá.Pä]jßbè'Ëm;ç÷ ²èê/Àf-?!¯ôJáe*RÃNEeÓUèïý· ú°³þÏ[ú ìñÖó@»(ÃÊïO¡9)XC±²\ÅêÿÆ.ìÁ.x{5yÉ_+ ë´o½ãê mó8ùÙ<*~ݰò-ébà¹K3ÃKÕæë÷m¿ÐbÁ $Þ dQBmù #à64í #Ë,ªÙ²Yb?d`¶Áoù÷[É w µ8xÚj1õÊZXSjQ ¤))®ö¥¬þ1Zx(ÆñùXO!¶E@AòãËèx ׫¼V lÎñÕ,Y69ƽx+Ù ]åüâ1!-:ôÖr~¤Ûêr¡Áå°Û`{DÍåF`Ó|}_Äl2í<W5fõÚÈ ýJ)Æ`ãëyïn;²Â h¸òÔú\ ¦4ø5²V²ëµõ2+²8v,Ç#Ú~°m`* omT>çfVÚ§NI óëb8ÏUø_`PFÆÂEØÛS>^äøeê½á(Òéöl òócQ ;޸㠺Öß(ÅÒ¢RÐÎ쿼@8¬ÀØåh¨sÿ"lbé·"ÝC,Ì&ðæß Íáó{éÚ3´ÎàºB´ÿB|2>¶ÐÞ4¿Jh§ 2Oø¯Üïç¢>ÈqmEa¶60?{r.î£ffháû®í<-´¡Y\&ÜYg &ù9 ´áØ"ë(§ sâCÍ΢zÊÍÉhzöb¬ÈYòlV¢Kz)uÿYÄÒìDÄ .ÆëÖV¤'[e)}B¹Ý¬e7{w¹XZ|UZC+¤§{×4Þ]Î";wìu¾îx[7÷÷[|Ý}ÇæzÓR½ c2+Èg#.»r·hE\Oì22ò"-4Ç NE¸eJ|m.PU-ÌÅÆÈ\vÜ §">È8_²ý=ʱN§0[/æg%Ç»»ÅB }FX°WxÚÎÏiüh C7»ÖRÃtq².Îs*'« Kuµ¢¼êøh2º ÏêÉØàç'\PóÖèÁÀ·-!ÖhGXY³ÇTíÏòY¡l&-ÿ]a9Ú ReKE¥^·¥+ñ°Y~yO@»9YO]CwÞ:n]WóÞYÅ$\²2~ÖdÃOç!p±´±3(ÇyôcÍFÄUóZw¶Ó °1²ci¹ÐIçqà(ÍA4ü@dSÅ¡ï%^_$ÚçÄëR ý_k h©ÕáEO3P^Q¡?oYÀOÄø>"\÷×§Ã¥ÑÚs?r~V 6Wáb¤+ÚÙÛ×2?¡Y51¬ù9'À$°I,s¹ùÝÆÀÃão§þd3i¼¸^#¨IÙÜrܧï//ýß'pñÁÞ:ÒpÑ£ájÎ×Õ²FóîÝ4¶;ì¡ö|c2)ñ2?Õøþ¿d¡}ºØf¾ÖA¡¶³pûEdà/2.Ôåýzcc[ÑBwÇEFî?j²ðÏ¢cßݾÉô}w®àZ?q+£[<A6V²õÂvM76ÊõÞ£Ã~]0ì½ ¶Ð³Ð\o86üLóyBÙG +ã>ñúL!È6yîªÎ ó³È³ÐÜû¯6±Äòù9ñY©íÏ`üa¼jËJ.E,Ö2®W»n7¸9jEv"D5½O0CW÷ÎÝçÐÖ l¬7cöïY÷`<í´¼v"½å½®;{hbFe2âJn; §%Ê<Õ¬>á=rÂÛY7x»l&eåØY½ §b¥6ë O`Sø× Þ ² óG "¨qB -{ñúB/æZ"\ *^"-±Xu®þ$Ä ó½ â\÷×· Ì4ôùÙ[.)Ð>#þjÃdÅ1b w0ÒfĹJÚ×´ý¯ÝHðQaÓîÂ¥0uRKuÞâr\¦ü×s K¦kd£§Õ@ÛãYRJÛØoG(¯Í(ãi u_ }ºBÅÑß+°%â^§Ñ8ïmnð"lÐ*Äå©ÞäyÈ»/G¤LåwBËw«»ç·ôû9kJlçÀºFïí¨5^0ìWÃ~/_óËjõüò¾»©æ¹taÈ s×À) w¾c3u TzV4jâMÍþÞ<ÊJÖê*¬Ö$Púäôbd½5[dÕÏÏBàùy(Á$íf¸"?HhÎ*êG~w#<A&s¸¯e· ¼d~D®¥áM%EÌ ´ Åê±OcÏI\ÖÊ%'lôsu;]f¢$ÁÍA¯ ×nñèj.:úKzÕÛÃ<{&ÏPæ=:ô,¯<Güã!ÎwÙ¾KûÔ%¾X Ü ² C!ä£&àDÄÉ¥b3ÍFyi\ÜIÑ iÞül ä9®nZ¯&ÃÅ1JX§mHvΣ<^Oø±^O»îÖ¢Ûà}É×Hf3öföq{;íSÍÚ°dÜwós&ÃÕ,i¶Ýó¢´5vC©×£]i±ö"ÙÛ¯·ª£&áµîWS²P0\ D´" Á vd¦÷?½DY'åë3?+ÑÞ? iÞ@n¢ÂUfØS4bÖÈÖ uAþÖÑuhnÃ>5¥ôú6a]Ë*÷2¹Â1ÿ"ÞnçAºÙÝ<¸#²tëù^pâFÉÊ{$µ¥pÓÊþv#+{Ôÿ.:QÞväÍ)µ¿hÃetù."a(Ô&lfyå<÷ZKÀåæ68F< [KeÔ0ÝÍÙ§1½¶¨YªCMÆ¡K¿~°,{Ñd¸*û¼ËÕ i4¤¿nJ~ë¬M3TÁóìMÒêØÕÏOk Éü¯À(äÕLbÕo¶±míˡۧIsU1'C%üÓè¸94RÙÐÃØA¡Zoýä=m1ò©L µÌÒ´¡pe4æ §ÎÏH×ÄÝ1ÿÐkdÜÅ8<é°YI-½§0ï7ÃîßÂL¡h>ýÇÔ·£Ò©t¬P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( B¡P( ¢þ1d ß¼± --- NEW FILE: spell-checker.html --- <html> <head> <title>Example of HTMLArea 3.0</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- Configure the path to the editor. We make it relative now, so that the example ZIP file will work anywhere, but please NOTE THAT it's better to have it an absolute path, such as '/htmlarea/'. --> <script type="text/javascript"> _editor_lang = "en"; _editor_url = "../"; </script> <!-- load the main HTMLArea files --> <script type="text/javascript" src="../htmlarea.js"></script> <style type="text/css"> html, body { font-family: Verdana,sans-serif; background-color: #fea; color: #000; } a:link, a:visited { color: #00f; } a:hover { color: #048; } a:active { color: #f00; } textarea { background-color: #fff; border: 1px solid 00f; } </style> <script type="text/javascript"> HTMLArea.loadPlugin("SpellChecker"); var editor = null; function initEditor() { // create an editor for the "ta" textbox editor = new HTMLArea("ta"); // register the SpellChecker plugin editor.registerPlugin(SpellChecker); editor.generate(); return false; } function insertHTML() { var html = prompt("Enter some HTML code here"); if (html) { editor.insertHTML(html); } } function highlight() { editor.surroundHTML('<span style="background-color: yellow">', '</span>'); } </script> </head> <!-- use <body onload="HTMLArea.replaceAll()" if you don't care about customizing the editor. It's the easiest way! :) --> <body onload="initEditor()"> <h1>HTMLArea 3.0</h1> <p>A replacement for <code>TEXTAREA</code> elements. © <a href="http://interactivetools.com">InteractiveTools.com</a>, 2003-2004.</p> <p>Plugins: <tt>SpellChecker</tt> (sponsored by <a href="http://americanbible.org">American Bible Society</a>). </p> <form action="test.cgi" method="post" id="edit" name="edit"> <textarea id="ta" name="ta" style="width:100%" rows="24" cols="80"> <h1>The <tt>SpellChecker</tt> plugin</h1> <p>This file deminstrates the <tt>SpellChecker</tt> plugin of HTMLArea. To inwoke the spell checkert you need to press the <em>spell-check</em> buton in the toolbar.</p> <p>The spell-checker uses a serverside script written in Perl. The Perl script calls <a href="http://aspell.net">aspell</a> for any word in the text and reports wordz that aren't found in the dyctionari.</p> <p>The document that yu are reading now <b>intentionaly</b> containes some errorz, so that you have something to corect ;-)</p> <p>Credits for the <tt>SpellChecker</tt> plugin go to:</p> <ul> <li><a href="http://aspell.net">Aspell</a> -- spell checker</li> <li>The <a href="http://perl.org">Perl</a> programming language</li> <li><tt><a href="http://cpan.org/modules/by-module/Text/Text-Aspell-0.02.readme">Text::Aspell</a></tt> -- Perl interface to Aspell</li> <li><a href="http://americanbible.org">American Bible Society</a> -- for sponsoring the <tt>SpellChecker</tt> plugin for <tt>HTMLArea</tt></li> <li><a href="http://dynarch.com/mishoo/">Your humble servant</a> for implementing it ;-)</li> </ul> </textarea> <p /> <input type="submit" name="ok" value=" submit " /> <input type="button" name="ins" value=" insert html " onclick="return insertHTML();" /> <input type="button" name="hil" value=" highlight text " onclick="return highlight();" /> <a href="javascript:mySubmit()">submit</a> <script type="text/javascript"> function mySubmit() { // document.edit.save.value = "yes"; document.edit.onsubmit(); // workaround browser bugs. document.edit.submit(); }; </script> </form> </body> </html> --- NEW FILE: table-operations.html --- <html> <head> <title>Example of HTMLArea 3.0</title> <meta http-equiv="Content-Type" content="tex... [truncated message content] |
From: Joe S. <joe...@us...> - 2004-08-23 17:48:56
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/CSS/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/plugins/CSS/lang Added Files: en.js makefile.xml Log Message: Upgraded htmlarea2 --- NEW FILE: en.js --- // none yet; this file is a stub. CSS.I18N = {}; --- NEW FILE: makefile.xml --- <files> <file name="*.js" /> </files> |
From: Joe S. <joe...@us...> - 2004-08-23 17:48:52
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/lang Added Files: ee.js el.js he.js lt.js no.js si.js Log Message: Upgraded htmlarea2 --- NEW FILE: ee.js --- // I18N constants // LANG: "ee", ENCODING: UTF-8 | ISO-8859-1 // Author: Martin Raie, <alb...@ho...> // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) HTMLArea.I18N = { // the following should be the filename without .js extension // it will be used for automatically load plugin language. lang: "ee", tooltips: { bold: "Paks", italic: "Kursiiv", underline: "Allakriipsutatud", strikethrough: "Läbikriipsutatud", subscript: "Allindeks", superscript: "Ülaindeks", justifyleft: "Joonda vasakule", justifycenter: "Joonda keskele", justifyright: "Joonda paremale", justifyfull: "Rööpjoonda", orderedlist: "Nummerdus", unorderedlist: "Täpploend", outdent: "Vähenda taanet", indent: "Suurenda taanet", forecolor: "Fondi värv", hilitecolor: "Tausta värv", inserthorizontalrule: "Horisontaaljoon", createlink: "Lisa viit", insertimage: "Lisa pilt", inserttable: "Lisa tabel", htmlmode: "HTML/tavaline vaade", popupeditor: "Suurenda toimeti aken", about: "Teave toimeti kohta", showhelp: "Spikker", textindicator: "Kirjastiil", undo: "Võta tagasi", redo: "Tee uuesti", cut: "Lõika", copy: "Kopeeri", paste: "Kleebi" }, buttons: { "ok": "OK", "cancel": "Loobu" }, msg: { "Path": "Path", "TEXT_MODE": "Sa oled tekstireziimis. Kasuta nuppu [<>] lülitamaks tagasi WYSIWIG reziimi." } }; --- NEW FILE: el.js --- // I18N constants // LANG: "el", ENCODING: UTF-8 | ISO-8859-7 // Author: Dimitris Glezos, dim...@gl... HTMLArea.I18N = { // the following should be the filename without .js extension // it will be used for automatically load plugin language. lang: "el", tooltips: { bold: "ÎνÏονα", italic: "Πλάγια", underline: "Î¥ÏογÏαμμιÏμÎνα", strikethrough: "ÎιαγÏαμμÎνα", subscript: "ÎείκÏηÏ", superscript: "ÎείκÏηÏ", justifyleft: "ΣÏοίÏιÏη ÎÏιÏÏεÏά", justifycenter: "ΣÏοίÏιÏη ÎÎνÏÏο", justifyright: "ΣÏοίÏιÏη Îεξιά", justifyfull: "ΠλήÏÎ·Ï Î£ÏοίÏιÏη", orderedlist: "ÎÏίθμηÏη", unorderedlist: "ÎÎ¿Ï ÎºÎºÎ¯Î´ÎµÏ", outdent: "ÎείÏÏη ÎÏοÏήÏ", indent: "ÎÏξηÏη ÎÏοÏήÏ", forecolor: "ΧÏÏμα ÎÏαμμαÏοÏειÏάÏ", hilitecolor: "ΧÏÏμα ΦÏνÏÎ¿Ï ", horizontalrule: "ÎÏιζÏνÏια ÎÏαμμή", createlink: "ÎιÏαγÏγή Î£Ï Î½Î´ÎÏÎ¼Î¿Ï ", insertimage: "ÎιÏαγÏγή/ΤÏοÏοÏοίηÏη ÎικÏναÏ", inserttable: "ÎιÏαγÏγή Πίνακα", htmlmode: "Îναλλαγή Ïε/αÏÏ HTML", popupeditor: "ÎεγÎÎ½Î¸Ï Î½Ïη εÏεξεÏγαÏÏή", about: "ΠληÏοÏοÏίεÏ", showhelp: "Îοήθεια", textindicator: "ΠαÏÏν ÏÏÏ Î»", undo: "ÎναίÏεÏη ÏÎµÎ»ÎµÏ ÏÎ±Î¯Î±Ï ÎµÎ½ÎÏγειαÏ", redo: "ÎÏαναÏοÏά αÏÏ Î±Î½Î±Î¯ÏεÏη", cut: "ÎÏοκοÏή", copy: "ÎνÏιγÏαÏή", paste: "ÎÏικÏλληÏη", lefttoright: "ÎαÏεÏÎ¸Ï Î½Ïη αÏιÏÏεÏά ÏÏÎ¿Ï Î´ÎµÎ¾Î¹Î¬", righttoleft: "ÎαÏεÏÎ¸Ï Î½Ïη αÏÏ Î´ÎµÎ¾Î¹Î¬ ÏÏÎ¿Ï Ïα αÏιÏÏεÏά" }, buttons: { "ok": "OK", "cancel": "ÎκÏÏÏÏη" }, msg: { "Path": "ÎιαδÏομή", "TEXT_MODE": "ÎίÏÏε Ïε TEXT MODE. ΧÏηÏιμοÏοιήÏÏε Ïο ÎºÎ¿Ï Î¼Ïί [<>] για να εÏανÎÏθεÏε ÏÏο WYSIWIG.", "IE-sucks-full-screen": "ΠκαÏάÏÏαÏη ÏλήÏÎ·Ï Î¿Î¸ÏÎ½Î·Ï ÎÏει ÏÏοβλήμαÏα με Ïον Internet Explorer, " + "λÏÎ³Ï ÏÏαλμάÏÏν ÏÏον ίδιο Ïον browser. Îν Ïο ÏÏÏÏημα ÏÎ±Ï ÎµÎ¯Î½Î±Î¹ Windows 9x " + "μÏοÏεί και να ÏÏειαÏÏείÏε reboot. Îν είÏÏε ÏÎ¯Î³Î¿Ï Ïοι, ÏαÏήÏÏε ÎÎ." }, dialogs: { "Cancel" : "ÎκÏÏÏÏη", "Insert/Modify Link" : "ÎιÏαγÏγή/ΤÏοÏοÏοίηÏη ÏÏνδεÏÎ¼Î¿Ï ", "New window (_blank)" : "ÎÎο ÏαÏÎ¬Î¸Ï Ïο (_blank)", "None (use implicit)" : "ÎανÎνα (ÏÏήÏη αÏÏÎ»Ï ÏÎ¿Ï )", "OK" : "ÎνÏάξει", "Other" : "Îλλο", "Same frame (_self)" : "Îδιο frame (_self)", "Target:" : "Target:", "Title (tooltip):" : "ΤίÏÎ»Î¿Ï (tooltip):", "Top frame (_top)" : "Î Î¬Î½Ï frame (_top)", "URL:" : "URL:", "You must enter the URL where this link points to" : "Î ÏÎÏει να ειÏάγεÏε Ïο URL ÏÎ¿Ï Î¿Î´Î·Î³ÎµÎ¯ Î±Ï ÏÏÏ Î¿ ÏÏνδεÏμοÏ" } }; --- NEW FILE: he.js --- // I18N constants // LANG: "he", ENCODING: UTF-8 // Author: Liron Newman, http://www.eesh.net, <plastish at ultinet dot org> // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) HTMLArea.I18N = { // the following should be the filename without .js extension // it will be used for automatically load plugin language. lang: "he", tooltips: { bold: "××××ש", italic: "× ×××", underline: "×§× ×ª×ת×", strikethrough: "×§× ××צע", subscript: "××ª× ×¢×××", superscript: "××ª× ×ª×ת×", justifyleft: " ×ש×ר ×ש×××", justifycenter: "×ש×ר ××ר××", justifyright: "×ש×ר ×××××", justifyfull: "×ש×ר ×ש××¨× ××××", orderedlist: "רש××× ×××ספרת", unorderedlist: "רש××× ×× ×××ספרת", outdent: "××§×× ×× ×ס×", indent: "×××× ×× ×ס×", forecolor: "צ××¢ ××פ×", hilitecolor: "צ××¢ רקע", horizontalrule: "×§× ×× ××", createlink: "××× ×¡ ××פר-×§×ש×ר", insertimage: "××× ×¡/×©× × ×ª××× ×", inserttable: "××× ×¡ ××××", htmlmode: "×©× × ××¦× ×§×× HTML", popupeditor: "×××× ×ת ××¢×ר×", about: "××××ת ×¢××¨× ××", showhelp: "×¢××¨× ×ש×××ש ××¢×ר×", textindicator: "ס×× ×× × ××××", undo: "×××× ×ת פע×××ª× ×××ר×× ×", redo: "××צע ×××ש ×ת ×פע××× ×××ר×× × ×©××××ת", cut: "×××ר ×××ר×", copy: "×עתק ×××ר×", paste: "××××§ ×××××", lefttoright: "××××× ×ש××× ×××××", righttoleft: "××××× ××××× ×ש×××" }, buttons: { "ok": "××ש×ר", "cancel": "×××××" }, msg: { "Path": "× ×ª×× ×¢×צ××", "TEXT_MODE": "××ª× ×××¦× ××§×¡× × ×§× (×§××). ×שת×ש ××פת×ר [<>] ××× ××××ר ×××¦× WYSIWYG (תצ××ת ×¢×צ××).", "IE-sucks-full-screen" : // translate here "××¦× ××¡× ××× ××צר ××¢××ת ××פ××¤× Internet Explorer, " + "×¢×§× ××××× ××פ××¤× ×× ××××× × ×פת×ר ×ת ××. ×ת/× ×¢×××/× ××××ת תצ××ת ×××, " + "××¢××ת ×תפק×× ××¢××¨× ×/×× ×§×¨××¡× ×©× ××פ×פ×. ×× ××ער×ת ש×× ××× Windows 9x " + "ס××ר ××× ×× ×©×ª×§××/× 'General Protection Fault' ×ת××צ/× ××ת×× ×ת ×××ש×.\n\n" + "ר××/× ××××רת. ×× × ×××¥/× ××ש×ר ×× ×ת/× ×¢×××× ×¨××¦× ×× ×¡×ת ×ת ××¢××¨× ×××¡× ×××." }, dialogs: { "Cancel" : "×××××", "Insert/Modify Link" : "××סף/×©× × ×§×ש×ר", "New window (_blank)" : "×××× ××ש (_blank)", "None (use implicit)" : "××× (×שת×ש ×-frame ××§×××)", "OK" : "OK", "Other" : "××ר", "Same frame (_self)" : "×××ª× frame (_self)", "Target:" : "××¢×:", "Title (tooltip):" : "××תרת (tooltip):", "Top frame (_top)" : "Frame ×¢×××× (_top)", "URL:" : "URL:", "You must enter the URL where this link points to" : "×××× ××ת×× URL ש×××× ×§×ש×ר ×× ×צ×××¢" } }; --- NEW FILE: lt.js --- // I18N constants // LANG: "lt", ENCODING: UTF-8 // Author: Jaroslav Å atkeviÄ, <ja...@ak...> HTMLArea.I18N = { // the following should be the filename without .js extension // it will be used for automatically load plugin language. lang: "lt", tooltips: { bold: "ParyÅ¡kinti", italic: "Kursyvas", underline: "Pabraukti", strikethrough: "Perbraukti", subscript: "Apatinis indeksas", superscript: "VirÅ¡utinis indeksas", justifyleft: "Lygiavimas pagal kairÄ", justifycenter: "Lygiavimas pagal centrÄ ", justifyright: "Lygiavimas pagal deÅ¡inÄ", justifyfull: "Lygiuoti pastraipÄ ", orderedlist: "Numeruotas sÄ raÅ¡as", unorderedlist: "Suženklintas sÄ raÅ¡as", outdent: "Sumažinti paraÅ¡tÄ", indent: "Padidinti paraÅ¡tÄ", forecolor: "Å rifto spalva", hilitecolor: "Fono spalva", horizontalrule: "Horizontali linija", createlink: "Ä®terpti nuorodÄ ", insertimage: "Ä®terpti paveiksliukÄ ", inserttable: "Ä®terpti lentelÄ", htmlmode: "Perjungti į HTML/WYSIWYG", popupeditor: "IÅ¡plÄstas redagavimo ekranas/Enlarge Editor", about: "Apie redaktorių", showhelp: "Pagalba naudojant redaktorių", textindicator: "Dabartinis stilius", undo: "AtÅ¡aukia paskutini jÅ«sų veiksmÄ ", redo: "Pakartoja paskutinį atÅ¡auktÄ jÅ«sų veiksmÄ ", cut: "IÅ¡kirpti", copy: "Kopijuoti", paste: "Ä®terpti" }, buttons: { "ok": "OK", "cancel": "AtÅ¡aukti" }, msg: { "Path": "Kelias", "TEXT_MODE": "JÅ«s esete teksto režime. Naudokite [<>] mygtukÄ grįžimui į WYSIWYG." } }; --- NEW FILE: no.js --- // Norwegian version for htmlArea v3.0 - pre1 // - translated by ses<se...@on...> // Additional translations by Håvard Wigtil <ha...@ex...> // term´s and licenses are equal to htmlarea! HTMLArea.I18N = { // the following should be the filename without .js extension // it will be used for automatically load plugin language. lang: "no", tooltips: { bold: "Fet", italic: "Kursiv", underline: "Understreket", strikethrough: "Gjennomstreket", subscript: "Nedsenket", superscript: "Opphøyet", justifyleft: "Venstrejuster", justifycenter: "Midtjuster", justifyright: "Høyrejuster", justifyfull: "Blokkjuster", orderedlist: "Nummerert liste", unorderedlist: "Punktliste", outdent: "Reduser innrykk", indent: "Øke innrykk", forecolor: "Tekstfarge", hilitecolor: "Bakgrundsfarge", inserthorizontalrule: "Vannrett linje", createlink: "Lag lenke", insertimage: "Sett inn bilde", inserttable: "Sett inn tabell", htmlmode: "Vis kildekode", popupeditor: "Vis i eget vindu", about: "Om denne editor", showhelp: "Hjelp", textindicator: "Nåværende stil", undo: "Angrer siste redigering", redo: "Gjør om siste angring", cut: "Klipp ut område", copy: "Kopier område", paste: "Lim inn", lefttoright: "Fra venstre mot høyre", righttoleft: "Fra høyre mot venstre" }, buttons: { "ok": "OK", "cancel": "Avbryt" }, msg: { "Path": "Tekstvelger", "TEXT_MODE": "Du er i tekstmodus Klikk på [<>] for å gå tilbake til WYSIWIG.", "IE-sucks-full-screen" : // translate here "Visning i eget vindu har kjente problemer med Internet Explorer, " + "på grunn av problemer med denne nettleseren. Mulige problemer er et uryddig " + "skjermbilde, manglende editorfunksjoner og/eller at nettleseren crasher. Hvis du bruker Windows 95 eller Windows 98 " + "er det også muligheter for at Windows will crashe.\n\n" + "Trykk 'OK' hvis du vil bruke visning i eget vindu på tross av denne advarselen." }, dialogs: { "Cancel" : "Avbryt", "Insert/Modify Link" : "Rediger lenke", "New window (_blank)" : "Eget vindu (_blank)", "None (use implicit)" : "Ingen (bruk standardinnstilling)", "OK" : "OK", "Other" : "Annen", "Same frame (_self)" : "Samme ramme (_self)", "Target:" : "Mål:", "Title (tooltip):" : "Tittel (tooltip):", "Top frame (_top)" : "Toppramme (_top)", "URL:" : "Adresse:", "You must enter the URL where this link points to" : "Du må skrive inn en adresse som denne lenken skal peke til" } }; --- NEW FILE: si.js --- // I18N constants // LANG: "si", ENCODING: ISO-8859-2 // Author: Tomaz Kregar, x_t...@em... // FOR TRANSLATORS: // // 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE // (at least a valid email address) // // 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; // (if this is not possible, please include a comment // that states what encoding is necessary.) HTMLArea.I18N = { // the following should be the filename without .js extension // it will be used for automatically load plugin language. lang: "si", tooltips: { bold: "Krepko", italic: "Le¾eèe", underline: "Podèrtano", strikethrough: "Preèrtano", subscript: "Podpisano", superscript: "Nadpisano", justifyleft: "Poravnaj levo", justifycenter: "Na sredino", justifyright: "Poravnaj desno", justifyfull: "Porazdeli vsebino", orderedlist: "O¹tevilèevanje", unorderedlist: "Oznaèevanje", outdent: "Zmanj¹aj zamik", indent: "Poveèaj zamik", forecolor: "Barva pisave", hilitecolor: "Barva ozadja", horizontalrule: "Vodoravna èrta", createlink: "Vstavi hiperpovezavo", insertimage: "Vstavi sliko", inserttable: "Vstavi tabelo", htmlmode: "Preklopi na HTML kodo", popupeditor: "Poveèaj urejevalnik", about: "Vizitka za urejevalnik", showhelp: "Pomoè za urejevalnik", textindicator: "Trenutni slog", undo: "Razveljavi zadnjo akcijo", redo: "Uveljavi zadnjo akcijo", cut: "Izre¾i", copy: "Kopiraj", paste: "Prilepi" }, buttons: { "ok": "V redu", "cancel": "Preklièi" }, msg: { "Path": "Pot", "TEXT_MODE": "Si v tekstovnem naèinu. Uporabi [<>] gumb za prklop nazaj na WYSIWYG." } }; |
From: Joe S. <joe...@us...> - 2004-08-23 17:48:51
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6597/phpslash-dev/public_html/scripts/htmlarea3/images Added Files: Thumbs.db ed_left_to_right.gif ed_right_to_left.gif Log Message: Upgraded htmlarea2 --- NEW FILE: Thumbs.db --- ÐÏࡱá Ìp1¹~¬Ý/^þâÚ6ntO2$ÎõÝÌëÂdÁHù»W7áoÞkÚo ±2MæÒ|è·Ù¥É¹ûÇîqR¿x¿'ms~ñíæ½¨i¶ò$Ñ@.m!Î}\¼qç +÷;òvÑ]zz®êØÔõo'Îû ¤·>Ví»ö!m¹ÁÆqàÖ~»©ÿ êE w¼ËÉ1XoÜØËðçÛá%¸:}½Þµ§Þ¼+¨I*n-ÜTDRòDK.S$Æa¿s`¯L¯L¯L¢(¢(¢(¢¿ÿÙ ErÌ]c 2rGÉ_Åm#SñÃÍCGÑì$¼¼»xQd \³eÂcÆ2Gñ[HÔüAðóPÑô{ //.Þ%TY#@¡dW,ÅÙF0ã'$qWàÿ Ö¦áOj>Ñ,äÑmâHcº¸X»óä(%1Á±%²²`ÌF jiñF£áÍÁÞMÞ$;«5¿>H¢âSB[+& !|Äb Ñ]tGmo¼+¶(".s îãkçúæ¥øs£ë2Yêö+=¦#aub¤<AXîX±Ü¬Xðµ?ÄI´MlÙkVÍjþYæÈé¹È11%É(Å FA7 r dMé¾ÓEðÖ¥I"ÈöVpÛ3¨ÀbõÅz¿´ÇÑ|5¥iRH²=6Ìê0¢$}q]¯´ÇÑ|5¥iRH²=6Ìê0¢$}qEiViQPÛZ[YÆcµ·'qX('×éPÛZ[YÆcµ·'qX('×éPÛZ[YÆcµ·'qX('×éEMSTÔWÿÙ ³Ä±6G#áKð~3½¶ðÎâ=.òLÿ òmKÄ_¬-áî´¨âºpöM$`îw`pØ)éüUæ_ðxÃ?éþ9Ô>ͤ^È9ôøcyø |¸ôæõ="y.´[|²ÛÆîØÆIPI¯_Ò'ëE±¸·Ë-¼nídõ="y.´[|²ÛÆîØÆIPI¢¸?÷ÖúÖO25ñ ¬$í#Ë}X{ã+ø}o¨AàÉdó#_ZÂNÒ0ñ¼±¸çѾ8â¸?÷ÖúÖO25ñ ¬$í#Ë}X{ã(£Ã?àÓ5}ZX5Ïí9Qöú ¡;w*²°ÇË"ô$`ã¨4xgáüf¯«K¹ý§"Ê ßP´2ÇnåVPùd^uWáü'µlçØdÒ¥O.haßËGØ·Íòº·dúäQ^akö:ÖÓ~ÿ ÐÓt7F·k}/O´±»Gk Ä¥°HPp *å\«WÿÙ ÓûCXDò¯¯üþæm'ͪªû>ãvìe¾nǰòÿ çôM3ìÄ?b¾Óvnÿ ú(¢(¢(¢ÿÙ ì+°¢¼ÆÚGÚ¼_}7öGÚ7y½þËó·~íGßþÌ>ëÓº<ÆÚGÚ¼_}7öGÚ7y½þËó·~íGßþÌ>ëÓº<ÆÚGÚ¼_}7öGÚ7y½þËó·~íGßþÌ>ëÓº <1öWÚ¿{®hÞnÏùhüÜgïÿ `Ò½/AÐmµ;»ÛÛÝe§mNý?w¬]Ä¡RêTP$ þ¡ÿ ïâß|%®Û[FÐΰ\¤n*´²ld¹ëÀlsµO_®Þø²÷â-æ¢øì¬QK»ÁÜ>MûKÆIÀ%,Fìà Ê(Ïß*®ÕB¾¯y¯ h¢(¢(¢(¯ÿÙ bë¨e¹·t¨6F ¨ ` bë¨e¹·t¨6F ¨ ` Ùjð»WÑuË}N×û*æòÙ Åv¾]ymà¶ÝÁÀ M Ùh¯NÑtÄÑt-?JF,£¶WaÁ('ëôíLMBÓô¨äiÊÚ;ev,B~¸¯NÑtÄÑt-?JF,£¶WaÁ('ë*õ^«ÔQEQEWÿÙ O/{4ÏñKKµòdx×LuÊcXðê"Ì)æíP2¡<½ìÓ?Å-.×Éã]2yÖC)cê¶ ç/¼>ñ¹GN°aøây4íî?i×RÞ<æÒ>{p·Â¹Ëäo¼nQÓ¡¢¾o'$ É?JúM¼D$ý+èH 6ñrJô¢¼TÓ<)ªþÑ&ÆZ&¶Q<fêìÛ¯åÛ¹;Kq_Jñ÷ðõÇÆoXxQÖħ/®dYùÕô2q8ñ÷ðõÇÆoXxQÖħ/®dYùÕô2q8+'Ç~ð]¼,<&35É7ik¨ý¡÷°¬`ìI˶òFN0¤Çá}GD²ðü¢êUûDpêkmëqoåà<só?ÉäB1üs-õËÂ7ð^©Wíê}·Å¿ò1ÏÌü/'A H+éhT¤« ʾ JA°Á ü«èT¤« Ê}>EQEQEÿÙ )+âU%*håÛýOb9ÿ )+âU%*håÛýOb9ÿ )+âU%*håÛýOb9ÿ µÿ é]ÃFÓÙYCo#FIRÈI é]ÃFÓÙYCo#FIRÈI $),U[çút>3Ö&û?úÎËóëÎ6}߿Ѹo§±ô¬û?lþÏãÂ}²ÐÝ~ûÄ|lýܸùdýçÝÿ æ#Éìc¿_#éÖ¾#g[ÌÖW6®²¨¿Oõirå#Pp [æ5áú¶©jìéZF«<æïZ]ÛåE¾]Â4QN|§Â¦D*F+kKÔu(bѼFdÓ"ûÈGÓ¿u!Hd »¤åv99=9Îê<?câhçÒáHüV$Ñ4öÓ.Ä-¥~æVKiG¿ïG´Ë}Îsº²4¿xµçôçLìw!gÓÿ þ¡ÿ ¨ ` K/ÌxäsEZ Т²u}ÛZº´ée°}¨ Ü1àò8ùúóíF§ø«WÒ.ô;£kÈÞ}F9%GòÜaÊÛ`i fR3?Ü£VÓüU«ézÈѵäMo>££ùn0åmʰ ´3)ÃîQ[ÖWYEQEQEQEÿÙ !Øp«ç¾Õm}GQ¹ÑoW[ÖÓU¸ðÌú õµÝ妯zYH·¤lcIBv\*ç9ïµ[çúܵÕ$Ñõ3T¶Ò|Aýynöè·ôs4@bóoIÚ²ãiÉÝÆ{nZêhúΪ[i> þ˼·{t[Íz ¹F 1y·¤íYq´äîã=·-uI4}gLÕ-´eÞ[½º-æ½ÂÜÍ#DÐ¼ÛÆRv¬¸ÚrwqÅz©C¬èÖ:¥ºÈ°^ÛÇqÈ êFp}Mz©C¬èÖ:¥ºÈ°^ÛÇqÈ ¨ ` é¥ÂƳÞÙCq"ÆPÎ$ã'ÔÖçµ)µ é¥ÂƳÞÙCq"ÆPÎ$ã'ÔÖçµ)µ é¥ÂƳÞÙCq"ÆPÎ$ã'ÔÑ^{¦øï@ÑãÕ´ëÝQ!¹MFý3,KÝÎÃ!qö¯*â¦áÉuõ¯¾Ó£~"X¶×S0ûÌ0ãõö¯ _ îµ½ö ]îaÔo¼QÎë©rÌ0ã·\ûQZüPð«5 è+ ¢(¢(¢¿ÿÙ --- NEW FILE: ed_left_to_right.gif --- GIF89a --- NEW FILE: ed_right_to_left.gif --- GIF89a À²Ø |
From: Joe S. <joe...@us...> - 2004-08-23 17:43:46
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ListType/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5095/lang Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ListType/lang added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:43:08
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ListType In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4884/ListType Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ListType added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:28:40
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager/img In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv357/img Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager/img added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:28:40
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager/Classes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv357/Classes Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager/Classes added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:28:38
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv357/lang Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager/lang added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:28:38
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager/assets In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv357/assets Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager/assets added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:25:11
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31852/ImageManager Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/ImageManager added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:21:46
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30664/lang Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy/lang added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:21:45
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy/img In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30664/img Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy/img added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:21:07
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30408/HtmlTidy Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/HtmlTidy added to the repository |
From: Joe S. <joe...@us...> - 2004-08-23 17:18:47
|
Update of /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage/img In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29701/img Log Message: Directory /cvsroot/phpslash/phpslash-dev/public_html/scripts/htmlarea3/plugins/FullPage/img added to the repository |