You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by so...@apache.org on 2007/09/21 12:37:48 UTC

svn commit: r578051 [8/31] - in /lenya/branches/revolution/1.3.x/src: java/org/apache/lenya/cms/content/flat/ webapp/lenya/modules/xinha/ webapp/lenya/modules/xinha/contrib/ webapp/lenya/modules/xinha/examples/ webapp/lenya/modules/xinha/images/ webapp...

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertImage/insert_image.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertImage/insert_image.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertImage/insert_image.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertImage/insert_image.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,107 @@
+InsertImage._pluginInfo={name:"InsertImage",origin:"Xinha Core",version:"$LastChangedRevision: 733 $".replace(/^[^:]*: (.*) \$$/,"$1"),developer:"The Xinha Core Developer Team",developer_url:"$HeadURL: http://svn.xinha.python-hosting.com/trunk/modules/InsertImage/insert_image.js $".replace(/^[^:]*: (.*) \$$/,"$1"),sponsor:"",sponsor_url:"",license:"htmlArea"};
+function InsertImage(_1){
+}
+Xinha.prototype._insertImage=function(_2){
+var _3=this;
+var _4;
+if(typeof _2=="undefined"){
+_2=this.getParentElement();
+if(_2&&_2.tagName.toLowerCase()!="img"){
+_2=null;
+}
+}
+var _5;
+if(typeof _3.config.baseHref!="undefined"&&_3.config.baseHref!==null){
+_5=_3.config.baseHref;
+}else{
+var _6=window.location.toString().split("/");
+_6.pop();
+_5=_6.join("/");
+}
+if(_2){
+_4={f_base:_5,f_url:Xinha.is_ie?_3.stripBaseURL(_2.src):_2.getAttribute("src"),f_alt:_2.alt,f_border:_2.border,f_align:_2.align,f_vert:(_2.vspace!=-1?_2.vspace:""),f_horiz:(_2.hspace!=-1?_2.hspace:""),f_width:_2.width,f_height:_2.height};
+}else{
+_4={f_base:_5,f_url:""};
+}
+Dialog(_3.config.URIs.insert_image,function(_7){
+if(!_7){
+return false;
+}
+var _8=_2;
+if(!_8){
+if(Xinha.is_ie){
+var _9=_3.getSelection();
+var _a=_3.createRange(_9);
+_3._doc.execCommand("insertimage",false,_7.f_url);
+_8=_a.parentElement();
+if(_8.tagName.toLowerCase()!="img"){
+_8=_8.previousSibling;
+}
+}else{
+_8=document.createElement("img");
+_8.src=_7.f_url;
+_3.insertNodeAtSelection(_8);
+if(!_8.tagName){
+_8=_a.startContainer.firstChild;
+}
+}
+}else{
+_8.src=_7.f_url;
+}
+for(var _b in _7){
+var _c=_7[_b];
+switch(_b){
+case "f_alt":
+if(_c){
+_8.alt=_c;
+}else{
+_8.removeAttribute("alt");
+}
+break;
+case "f_border":
+if(_c){
+_8.border=parseInt(_c||"0");
+}else{
+_8.removeAttribute("border");
+}
+break;
+case "f_align":
+if(_c){
+_8.align=_c;
+}else{
+_8.removeAttribute("align");
+}
+break;
+case "f_vert":
+if(_c){
+_8.vspace=parseInt(_c||"0");
+}else{
+_8.removeAttribute("vspace");
+}
+break;
+case "f_horiz":
+if(_c){
+_8.hspace=parseInt(_c||"0");
+}else{
+_8.removeAttribute("hspace");
+}
+break;
+case "f_width":
+if(_c){
+_8.width=parseInt(_c||"0");
+}else{
+_8.removeAttribute("width");
+}
+break;
+case "f_height":
+if(_c){
+_8.height=parseInt(_c||"0");
+}else{
+_8.removeAttribute("height");
+}
+break;
+}
+}
+},_4);
+};
+

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertTable/insert_table.html
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertTable/insert_table.html?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertTable/insert_table.html (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertTable/insert_table.html Fri Sep 21 03:36:30 2007
@@ -0,0 +1,157 @@
+<html>
+
+<head>
+  <title>Insert Table</title>
+
+<script type="text/javascript" src="../../popups/popup.js"></script>
+<link rel="stylesheet" type="text/css" href="../../popups/popup.css" />
+
+<script type="text/javascript">
+
+window.resizeTo(425, 250);
+
+Xinha = window.opener.Xinha;
+function i18n(str) {
+  return (Xinha._lc(str, 'Xinha'));
+}
+
+function Init() {
+  Xinha = window.opener.Xinha; // load the Xinha plugin and lang file
+  __dlg_translate('Xinha');
+  __dlg_init(null, Xinha.is_ie ? null : {width:425,height:250});
+  // Make sure the translated string appears in the drop down. (for gecko)
+  document.getElementById("f_unit").selectedIndex = 1;
+  document.getElementById("f_unit").selectedIndex = 0;
+  document.getElementById("f_align").selectedIndex = 1;
+  document.getElementById("f_align").selectedIndex = 0;
+  document.getElementById("f_rows").focus();
+}
+
+function onOK() {
+  var required = {
+    "f_rows": i18n("You must enter a number of rows"),
+    "f_cols": i18n("You must enter a number of columns")
+  };
+  for (var i in required) {
+    var el = document.getElementById(i);
+    if (!el.value) {
+      alert(required[i]);
+      el.focus();
+      return false;
+    }
+  }
+  var fields = ["f_rows", "f_cols", "f_width", "f_unit", "f_fixed",
+                "f_align", "f_border", "f_spacing", "f_padding"];
+  var param = new Object();
+  for (var i in fields) {
+    var id = fields[i];
+    var el = document.getElementById(id);
+    param[id] = (el.type == "checkbox") ? el.checked : el.value;
+  }
+  __dlg_close(param);
+  return false;
+}
+
+function onCancel() {
+  __dlg_close(null);
+  return false;
+}
+
+</script>
+
+</head>
+
+<body class="dialog" onload="Init()">
+
+<div class="title">Insert Table</div>
+
+<form action="" method="get">
+<table border="0" style="padding: 0px; margin: 0px">
+  <tbody>
+
+  <tr>
+    <td style="width: 4em; text-align: right">Rows:</td>
+    <td><input type="text" name="rows" id="f_rows" size="5" title="Number of rows" value="2" /></td>
+    <td style="width: 4em; text-align: right">Width:</td>
+    <td><input type="text" name="width" id="f_width" size="5" title="Width of the table" value="100" /></td>
+    <td><select size="1" name="unit" id="f_unit" title="Width unit">
+      <option value="%" selected="1"  >Percent</option>
+      <option value="px"              >Pixels</option>
+      <option value="em"              >Em</option>
+    </select></td>
+  </tr>
+  <tr>
+    <td style="width: 4em; text-align: right">Cols:</td>
+    <td><input type="text" name="cols" id="f_cols" size="5" title="Number of columns" value="4" /></td>
+    <td style="text-align: right"><input type="checkbox" checked="checked" name="fixed" id="f_fixed" /></td>
+    <td colspan="2"><label for="f_fixed"
+    >Fixed width columns</label></td>
+  </tr>
+  </tbody>
+</table>
+
+<p />
+
+<fieldset style="float: left; margin-left: 5px;">
+<legend>Layout</legend>
+
+<div class="space"></div>
+
+<div class="fl">Alignment:</div>
+<select size="1" name="align" id="f_align"
+  title="Positioning of this table">
+  <option value="" selected="1"                >Not set</option>
+  <option value="left"                         >Left</option>
+  <option value="right"                        >Right</option>
+  <option value="texttop"                      >Texttop</option>
+  <option value="absmiddle"                    >Absmiddle</option>
+  <option value="baseline"                     >Baseline</option>
+  <option value="absbottom"                    >Absbottom</option>
+  <option value="bottom"                       >Bottom</option>
+  <option value="middle"                       >Middle</option>
+  <option value="top"                          >Top</option>
+</select>
+
+<p />
+
+<div class="fl">Border thickness:</div>
+<input type="text" name="border" id="f_border" size="5" value="1"
+title="Leave empty for no border" />
+<!--
+<p />
+
+<div class="fl">Collapse borders:</div>
+<input type="checkbox" name="collapse" id="f_collapse" />
+-->
+<div class="space"></div>
+
+</fieldset>
+
+<fieldset style="float:right; margin-right: 5px;">
+<legend>Spacing</legend>
+
+<div class="space"></div>
+
+<div class="fr">Cell spacing:</div>
+<input type="text" name="spacing" id="f_spacing" size="5" value="1"
+title="Space between adjacent cells" />
+
+<p />
+
+<div class="fr">Cell padding:</div>
+<input type="text" name="padding" id="f_padding" size="5" value="1"
+title="Space between content and border in cell" />
+
+<div class="space"></div>
+
+</fieldset>
+
+<div style="margin-top: 85px; border-top: 1px solid #999; padding: 2px; text-align: right;">
+<button type="button" name="ok" onclick="return onOK();">OK</button>
+<button type="button" name="cancel" onclick="return onCancel();">Cancel</button>
+</div>
+
+</form>
+
+</body>
+</html>
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertTable/insert_table.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertTable/insert_table.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertTable/insert_table.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InsertTable/insert_table.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,63 @@
+InsertTable._pluginInfo={name:"InsertTable",origin:"Xinha Core",version:"$LastChangedRevision: 688 $".replace(/^[^:]*: (.*) \$$/,"$1"),developer:"The Xinha Core Developer Team",developer_url:"$HeadURL: http://svn.xinha.python-hosting.com/trunk/modules/InsertTable/insert_table.js $".replace(/^[^:]*: (.*) \$$/,"$1"),sponsor:"",sponsor_url:"",license:"htmlArea"};
+function InsertTable(_1){
+}
+Xinha.prototype._insertTable=function(){
+var _2=this.getSelection();
+var _3=this.createRange(_2);
+var _4=this;
+Dialog(_4.config.URIs.insert_table,function(_5){
+if(!_5){
+return false;
+}
+var _6=_4._doc;
+var _7=_6.createElement("table");
+for(var _8 in _5){
+var _9=_5[_8];
+if(!_9){
+continue;
+}
+switch(_8){
+case "f_width":
+_7.style.width=_9+_5.f_unit;
+break;
+case "f_align":
+_7.align=_9;
+break;
+case "f_border":
+_7.border=parseInt(_9,10);
+break;
+case "f_spacing":
+_7.cellSpacing=parseInt(_9,10);
+break;
+case "f_padding":
+_7.cellPadding=parseInt(_9,10);
+break;
+}
+}
+var _a=0;
+if(_5.f_fixed){
+_a=Math.floor(100/parseInt(_5.f_cols,10));
+}
+var _b=_6.createElement("tbody");
+_7.appendChild(_b);
+for(var i=0;i<_5.f_rows;++i){
+var tr=_6.createElement("tr");
+_b.appendChild(tr);
+for(var j=0;j<_5.f_cols;++j){
+var td=_6.createElement("td");
+if(_a){
+td.style.width=_a+"%";
+}
+tr.appendChild(td);
+td.appendChild(_6.createTextNode("\xa0"));
+}
+}
+if(Xinha.is_ie){
+_3.pasteHTML(_7.outerHTML);
+}else{
+_4.insertNodeAtSelection(_7);
+}
+return true;
+},null);
+};
+

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InternetExplorer/InternetExplorer.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InternetExplorer/InternetExplorer.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InternetExplorer/InternetExplorer.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/modules/InternetExplorer/InternetExplorer.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,217 @@
+InternetExplorer._pluginInfo={name:"Internet Explorer",origin:"Xinha Core",version:"$LastChangedRevision: 816 $".replace(/^[^:]*: (.*) \$$/,"$1"),developer:"The Xinha Core Developer Team",developer_url:"$HeadURL: http://svn.xinha.python-hosting.com/trunk/modules/InternetExplorer/InternetExplorer.js $".replace(/^[^:]*: (.*) \$$/,"$1"),sponsor:"",sponsor_url:"",license:"htmlArea"};
+function InternetExplorer(_1){
+this.editor=_1;
+_1.InternetExplorer=this;
+}
+InternetExplorer.prototype.onKeyPress=function(ev){
+if(this.editor.isShortCut(ev)){
+switch(this.editor.getKey(ev).toLowerCase()){
+case "n":
+this.editor.execCommand("formatblock",false,"<p>");
+Xinha._stopEvent(ev);
+return true;
+break;
+case "1":
+case "2":
+case "3":
+case "4":
+case "5":
+case "6":
+this.editor.execCommand("formatblock",false,"<h"+this.editor.getKey(ev).toLowerCase()+">");
+Xinha._stopEvent(ev);
+return true;
+break;
+}
+}
+switch(ev.keyCode){
+case 8:
+case 46:
+if(this.handleBackspace()){
+Xinha._stopEvent(ev);
+return true;
+}
+break;
+}
+return false;
+};
+InternetExplorer.prototype.handleBackspace=function(){
+var _3=this.editor;
+var _4=_3.getSelection();
+if(_4.type=="Control"){
+var _5=_3.activeElement(_4);
+Xinha.removeFromParent(_5);
+return true;
+}
+var _6=_3.createRange(_4);
+var r2=_6.duplicate();
+r2.moveStart("character",-1);
+var a=r2.parentElement();
+if(a!=_6.parentElement()&&(/^a$/i.test(a.tagName))){
+r2.collapse(true);
+r2.moveEnd("character",1);
+r2.pasteHTML("");
+r2.select();
+return true;
+}
+};
+InternetExplorer.prototype.inwardHtml=function(_9){
+_9=_9.replace(/<(\/?)del(\s|>|\/)/ig,"<$1strike$2");
+_9=_9.replace(/(&nbsp;)?([\s\S]*?)(<script|<!--)/i,"$2&nbsp;$3");
+return _9;
+};
+InternetExplorer.prototype.outwardHtml=function(_a){
+_a=_a.replace(/&nbsp;(\s*)(<script|<!--)/i,"$1$2");
+return _a;
+};
+Xinha.prototype.insertNodeAtSelection=function(_b){
+this.insertHTML(_b.outerHTML);
+};
+Xinha.prototype.getParentElement=function(_c){
+if(typeof _c=="undefined"){
+_c=this.getSelection();
+}
+var _d=this.createRange(_c);
+switch(_c.type){
+case "Text":
+var _e=_d.parentElement();
+while(true){
+var _f=_d.duplicate();
+_f.moveToElementText(_e);
+if(_f.inRange(_d)){
+break;
+}
+if((_e.nodeType!=1)||(_e.tagName.toLowerCase()=="body")){
+break;
+}
+_e=_e.parentElement;
+}
+return _e;
+case "None":
+return _d.parentElement();
+case "Control":
+return _d.item(0);
+default:
+return this._doc.body;
+}
+};
+Xinha.prototype.activeElement=function(sel){
+if((sel===null)||this.selectionEmpty(sel)){
+return null;
+}
+if(sel.type.toLowerCase()=="control"){
+return sel.createRange().item(0);
+}else{
+var _11=sel.createRange();
+var _12=this.getParentElement(sel);
+if(_12.innerHTML==_11.htmlText){
+return _12;
+}
+return null;
+}
+};
+Xinha.prototype.selectionEmpty=function(sel){
+if(!sel){
+return true;
+}
+return this.createRange(sel).htmlText==="";
+};
+Xinha.prototype.saveSelection=function(){
+return this.createRange(this._getSelection());
+};
+Xinha.prototype.restoreSelection=function(_14){
+_14.select();
+};
+Xinha.prototype.selectNodeContents=function(_15,pos){
+this.focusEditor();
+this.forceRedraw();
+var _17;
+var _18=typeof pos=="undefined"?true:false;
+if(_18&&_15.tagName&&_15.tagName.toLowerCase().match(/table|img|input|select|textarea/)){
+_17=this._doc.body.createControlRange();
+_17.add(_15);
+}else{
+_17=this._doc.body.createTextRange();
+_17.moveToElementText(_15);
+}
+_17.select();
+};
+Xinha.prototype.insertHTML=function(_19){
+this.focusEditor();
+var sel=this.getSelection();
+var _1b=this.createRange(sel);
+_1b.pasteHTML(_19);
+};
+Xinha.prototype.getSelectedHTML=function(){
+var sel=this.getSelection();
+var _1d=this.createRange(sel);
+if(_1d.htmlText){
+return _1d.htmlText;
+}else{
+if(_1d.length>=1){
+return _1d.item(0).outerHTML;
+}
+}
+return "";
+};
+Xinha.prototype.getSelection=function(){
+return this._doc.selection;
+};
+Xinha.prototype.createRange=function(sel){
+return sel.createRange();
+};
+Xinha.prototype.isKeyEvent=function(_1f){
+return _1f.type=="keydown";
+};
+Xinha.prototype.getKey=function(_20){
+return String.fromCharCode(_20.keyCode);
+};
+Xinha.getOuterHTML=function(_21){
+return _21.outerHTML;
+};
+Xinha.prototype.cc=String.fromCharCode(8201);
+Xinha.prototype.setCC=function(_22){
+if(_22=="textarea"){
+var ta=this._textArea;
+var pos=document.selection.createRange();
+pos.collapse();
+pos.text=this.cc;
+var _25=ta.value.indexOf(this.cc);
+var _26=ta.value.substring(0,_25);
+var _27=ta.value.substring(_25+this.cc.length,ta.value.length);
+if(_27.match(/^[^<]*>/)){
+var _28=_27.indexOf(">")+1;
+ta.value=_26+_27.substring(0,_28)+this.cc+_27.substring(_28,_27.length);
+}else{
+ta.value=_26+this.cc+_27;
+}
+}else{
+var sel=this.getSelection();
+var r=sel.createRange();
+if(sel.type=="Control"){
+var _2b=r.item(0);
+_2b.outerHTML+=this.cc;
+}else{
+r.collapse();
+r.text=this.cc;
+}
+}
+};
+Xinha.prototype.findCC=function(_2c){
+var _2d=(_2c=="textarea")?this._textArea:this._doc.body;
+range=_2d.createTextRange();
+if(range.findText(escape(this.cc))){
+range.select();
+range.text="";
+}
+if(range.findText(this.cc)){
+range.select();
+range.text="";
+}
+if(_2c=="textarea"){
+this._textArea.focus();
+}
+};
+Xinha.getDoctype=function(doc){
+return (doc.compatMode=="CSS1Compat")?"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">":"";
+};
+

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/my_config.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/my_config.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/my_config.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/my_config.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,102 @@
+    xinha_editors = null;
+    xinha_init    = null;
+    xinha_config  = null;
+    xinha_plugins = null;
+
+    // This contains the names of textareas we will make into Xinha editors
+    xinha_init = xinha_init ? xinha_init : function()
+    {
+      /** STEP 1 ***************************************************************
+       * First, what are the plugins you will be using in the editors on this
+       * page.  List all the plugins you will need, even if not all the editors
+       * will use all the plugins.
+       *
+       * The list of plugins below is a good starting point, but if you prefer
+       * a must simpler editor to start with then you can use the following 
+       * 
+       * xinha_plugins = xinha_plugins ? xinha_plugins : [ ];
+       *
+       * which will load no extra plugins at all.
+       ************************************************************************/
+
+      xinha_plugins = xinha_plugins ? xinha_plugins :
+      [
+       'CharacterMap',
+       'ContextMenu',
+       'ListType',
+       'Stylist',
+       'SuperClean',
+       'TableOperations'
+      ];
+//        'SpellChecker', does not work
+
+             // THIS BIT OF JAVASCRIPT LOADS THE PLUGINS, NO TOUCHING  :)
+             if(!Xinha.loadPlugins(xinha_plugins, xinha_init)) return;
+
+      /** STEP 2 ***************************************************************
+       * Now, what are the names of the textareas you will be turning into
+       * editors?
+       ************************************************************************/
+
+      xinha_editors = xinha_editors ? xinha_editors :
+      [
+        'editfield1',
+        'editfield2'
+      ];
+
+      /** STEP 3 ***************************************************************
+       * We create a default configuration to be used by all the editors.
+       * If you wish to configure some of the editors differently this will be
+       * done in step 5.
+       *
+       * If you want to modify the default config you might do something like this.
+       *
+       *   xinha_config = new Xinha.Config();
+       *   xinha_config.width  = '640px';
+       *   xinha_config.height = '420px';
+       *
+       *************************************************************************/
+
+       xinha_config = xinha_config ? xinha_config() : new Xinha.Config();
+xinha_config.height = '400px';
+
+      /** STEP 4 ***************************************************************
+       * We first create editors for the textareas.
+       *
+       * You can do this in two ways, either
+       *
+       *   xinha_editors   = Xinha.makeEditors(xinha_editors, xinha_config, xinha_plugins);
+       *
+       * if you want all the editor objects to use the same set of plugins, OR;
+       *
+       *   xinha_editors = Xinha.makeEditors(xinha_editors, xinha_config);
+       *   xinha_editors['myTextArea'].registerPlugins(['Stylist','FullScreen']);
+       *   xinha_editors['anotherOne'].registerPlugins(['CSS','SuperClean']);
+       *
+       * if you want to use a different set of plugins for one or more of the
+       * editors.
+       ************************************************************************/
+
+      xinha_editors   = Xinha.makeEditors(xinha_editors, xinha_config, xinha_plugins);
+
+      /** STEP 5 ***************************************************************
+       * If you want to change the configuration variables of any of the
+       * editors,  this is the place to do that, for example you might want to
+       * change the width and height of one of the editors, like this...
+       *
+       *   xinha_editors.myTextArea.config.width  = '640px';
+       *   xinha_editors.myTextArea.config.height = '480px';
+       *
+       ************************************************************************/
+
+
+      /** STEP 6 ***************************************************************
+       * Finally we "start" the editors, this turns the textareas into
+       * Xinha editors.
+       ************************************************************************/
+
+      Xinha.startEditors(xinha_editors);
+    }
+
+    Xinha._addEvent(window,'load', xinha_init); // this executes the xinha_init function on page load 
+                                                // and does not interfere with window.onload properties set by other scripts
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbr/de.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbr/de.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbr/de.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbr/de.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,40 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+// Author: Udo Schmal, <sc...@schaffrath-neuemedien.de>
+//
+// (c) Udo Schmal & Schaffrath NeueMedien 2004
+// Distributed under the same terms as HTMLArea itself.
+// This notice MUST stay intact for use (see license.txt).
+
+{
+  "Abs.": "Absatz",
+  "bspw.": "Beispielsweise",
+  "bzw.": "beziehungsweise",
+  "c/o": "care of / bei, zu Händen von",
+  "ca.": "circa",
+  "d.h.": "das heißt",
+  "d.J.": "des Jahres",
+  "Dr.": "Doktor",
+  "e.V.": "Eingetragener Verein",
+  "eG.": "Eingetragene Genossenschaft",
+  "ehem.": "ehemals",
+  "einschl.": "einschließlich",
+  "etc.": "et cetera / und so weiter",
+  "evtl.": "eventuell",
+  "ff.": "(fort) folgende",
+  "gem.": "gemäß",
+  "inkl.": "inklusive",
+  "max.": "maximal / maximum",
+  "min.": "mindestens / minimum / minimal",
+  "o.g.": "oben genannt",
+  "rd.": "rund",
+  "S.": "Seite",
+  "u.a.": "unter anderem",
+  "u.ä.": "und ähnlich",
+  "usw.": "und so weiter",
+  "vgl.": "vergleiche",
+  "z.B.": "zum Beispiel",
+  "z.T.": "zum Teil",
+  "z.Z.": "zur Zeit",
+  "zzgl.": "zuzüglich"
+};

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbr/en.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbr/en.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbr/en.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbr/en.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,16 @@
+// I18N constants
+// LANG: "en", ENCODING: UTF-8
+// Author: Udo Schmal, <sc...@schaffrath-neuemedien.de>
+//
+// (c) Udo Schmal & Schaffrath NeueMedien 2004
+// Distributed under the same terms as HTMLArea itself.
+// This notice MUST stay intact for use (see license.txt).
+
+{
+  "ANSI": "American National Standards Institute",  
+  "ASA": "American Standards Association",
+  "ISO": "International Organisation for Standardization",
+  "mime": "Multipurpose Internet Mail Extensions",
+  "UTF": "Unicode Transformation Format",
+  "W3C": "World Wide Web Consortium"
+};

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbreviation.css
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbreviation.css?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbreviation.css (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbreviation.css Fri Sep 21 03:36:30 2007
@@ -0,0 +1,11 @@
+abbr, acronym, span.abbr {
+  width: 18px;
+  height: 18px;
+	background-image: url(img/ed_abbreviation.gif);	
+	background-repeat: no-repeat;
+	background-position: left top;
+	white-space : nowrap;	
+	cursor: help;
+	border-bottom: 1px dashed #000;
+	padding-left: 19px;
+}
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbreviation.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbreviation.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbreviation.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/abbreviation.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,70 @@
+function Abbreviation(_1){
+this.editor=_1;
+var _2=_1.config;
+var _3=this;
+_2.registerButton({id:"abbreviation",tooltip:this._lc("Abbreviation"),image:_1.imgURL("ed_abbreviation.gif","Abbreviation"),textMode:false,action:function(_4){
+_3.buttonPress(_4);
+}});
+_2.addToolbarElement("abbreviation","inserthorizontalrule",1);
+}
+Abbreviation._pluginInfo={name:"Abbreviation",version:"1.0",developer:"Udo Schmal",developer_url:"",sponsor:"L.N.Schaffrath NeueMedien",sponsor_url:"http://www.schaffrath-neuemedien.de/",c_owner:"Udo Schmal & Schaffrath-NeueMedien",license:"htmlArea"};
+Abbreviation.prototype._lc=function(_5){
+return HTMLArea._lc(_5,"Abbreviation");
+};
+Abbreviation.prototype.onGenerate=function(){
+var _6="Abbr-style";
+var _7=this.editor._doc.getElementById(_6);
+if(_7==null){
+_7=this.editor._doc.createElement("link");
+_7.id=_6;
+_7.rel="stylesheet";
+_7.href=_editor_url+"plugins/Abbreviation/abbreviation.css";
+this.editor._doc.getElementsByTagName("HEAD")[0].appendChild(_7);
+}
+};
+Abbreviation.prototype.buttonPress=function(_8,_9,_a){
+var _b=null;
+var _c=_8.getSelectedHTML();
+var _d=_8._getSelection();
+var _e=_8._createRange(_d);
+var _f=_8._activeElement(_d);
+if(!(_f!=null&&_f.tagName.toLowerCase()=="abbr")){
+_f=_8._getFirstAncestor(_d,"abbr");
+}
+if(_f!=null&&_f.tagName.toLowerCase()=="abbr"){
+_b={title:_f.title,text:_f.innerHTML};
+}else{
+_b={title:"",text:_c};
+}
+_8._popupDialog("plugin://Abbreviation/abbreviation",function(_10){
+if(_10){
+var _11=_10["title"];
+if(_11==""||_11==null){
+if(_f){
+var _12=_f.innerHTML;
+_f.parentNode.removeChild(_f);
+_8.insertHTML(_12);
+}
+return;
+}
+try{
+var doc=_8._doc;
+if(!_f){
+_f=doc.createElement("abbr");
+_f.title=_11;
+_f.innerHTML=_c;
+if(HTMLArea.is_ie){
+_e.pasteHTML(_f.outerHTML);
+}else{
+_8.insertNodeAtSelection(_f);
+}
+}else{
+_f.title=_11;
+}
+}
+catch(e){
+}
+}
+},_b);
+};
+

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/img/ed_abbreviation.gif
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/img/ed_abbreviation.gif?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/img/ed_abbreviation.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/de.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/de.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/de.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/de.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+// Author: Udo Schmal (gocher), http://www.schaffrath-neuemedien.de/, udo.schmal@t-online.de
+{
+  "Abbreviation": "Abkürzung",
+  "Expansion:": "Erklärung:",
+  "Delete": "Löschen"
+};

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/fr.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/fr.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/fr.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/fr.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,7 @@
+// I18N constants
+// LANG: "fr", ENCODING: UTF-8
+{
+  "Abbreviation": "Abréviation",
+  "Expansion:": "Explication",
+  "Delete": "Supprimer"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/ja.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/ja.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/ja.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/ja.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,7 @@
+// I18N constants
+// LANG: "ja", ENCODING: UTF-8
+{
+  "Abbreviation": "略語",
+  "Expansion:": "展開される語:",
+  "Delete": "削除"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/nb.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/nb.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/nb.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/lang/nb.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Abbreviation": "Beskrive forkortelse",
+  "Expansion:": "Betydning:",
+  "Delete": "Fjerne"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/popups/abbreviation.html
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/popups/abbreviation.html?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/popups/abbreviation.html (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/Abbreviation/popups/abbreviation.html Fri Sep 21 03:36:30 2007
@@ -0,0 +1,93 @@
+<html>
+<head>
+  <title>Abbreviation</title>
+  <link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
+  <script type="text/javascript" src="../../../popups/popup.js"></script>
+
+<script type="text/javascript">
+var Abbreviation = window.opener.Abbreviation; // load the Abbreviation plugin and lang file ;-)
+
+function fillSelect(text) {
+  var abbr = window.location.href;
+  abbr = abbr.replace(/popups\/abbreviation.html/g, "abbr\/" + window.opener._editor_lang + ".js");
+  var abbrData = HTMLArea._geturlcontent(abbr);
+  if (abbrData) {
+    eval('abbrObj = ' + abbrData);
+    if (abbrObj != "") {
+      dest = document.getElementById("select");
+      for (var i in abbrObj) {
+        same = (i==text);
+	    dest.options[dest.options.length] = new Option(i + "=" + abbrObj[i], abbrObj[i], false, same);
+	    if (same)
+	      document.getElementById("title").value = abbrObj[i];
+      }
+    }
+  }
+}
+
+function Init() {
+  window.resizeTo(260, 160);
+  __dlg_translate("Abbreviation");
+  __dlg_init();
+  var param = window.dialogArguments;
+  var text = null;
+  if (param) {
+    text = param["text"];
+    document.getElementById("title").value = param["title"];
+  }
+  fillSelect(text);
+  document.getElementById("title").focus();
+};
+
+function onOK() {
+  var param = new Object();
+  param["title"] = document.getElementById("title").value;
+  __dlg_close(param);
+  return false;
+}
+
+
+function onDelete() {
+  // pass data back to the calling window
+  var param = new Object();
+  param["title"] = "";
+  __dlg_close(param);
+  return false;
+};
+
+function onCancel() {
+  __dlg_close(null);
+  return false;
+};
+</script>
+
+</head>
+<body class="dialog" onload="Init()">
+<div class="title">Abbreviation</div>
+<form name="form" action="">
+<table border="0" style="width: 100%;">
+  <tr>
+    <td class="lable">Expansion:</td>
+    <td>
+    <select id="select" name="select"
+	        onChange="document.form.title.value=document.form.select.options[document.form.select.selectedIndex].value"
+	        style="position:absolute; top:35px; left:100px; width:118px; clip:rect(0 120 22 100)">
+	  <option value=""></option>
+
+	</select>
+	<input type="title" id="title" name="text"
+	       onChange="document.form.select.selectedIndex=-1"
+           style="position:absolute; top:35px; left:100px; width:100px; border-right:0">
+    <!--<input type="text" id="title" name="title" value="" size="30">-->
+    </td>
+  </tr>
+</table>
+
+<div id="buttons">
+   <button type="submit" name="ok" onclick="return onOK();">OK</button>
+   <button type="button" name="delete" onclick="return onDelete();">Delete</button>
+   <button type="button" name="cancel" onclick="return onCancel();">Cancel</button>
+</div>
+</form>
+</body>
+</html>
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/background-image.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/background-image.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/background-image.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/background-image.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,52 @@
+// BackgroundImage plugin for Xinha
+// Sponsored by http://www.schaffrath-neuemedien.de
+// Implementation by Udo Schmal
+// based on TinyMCE (http://tinymce.moxiecode.com/) Distributed under LGPL by Moxiecode Systems AB
+//
+// Distributed under the same terms as HTMLArea itself.
+// This notice MUST stay intact for use (see license.txt).
+
+function BackgroundImage(editor) {
+  this.editor = editor;
+	var cfg = editor.config;
+	var self = this;
+  cfg.registerButton({
+                id       : "bgImage",
+                tooltip  : this._lc("Set page background image"),
+                image    : editor.imgURL("ed_bgimage.gif", "BackgroundImage"),
+                textMode : false,
+                action   : function(editor) {
+                                self.buttonPress(editor);
+                           }
+            })
+	cfg.addToolbarElement("bgImage", "inserthorizontalrule", 1);
+}
+
+BackgroundImage._pluginInfo = {
+	name          : "BackgroundImage",
+	version       : "1.0",
+	developer     : "Udo Schmal",
+	developer_url : "http://www.schaffrath-neuemedien.de/",
+	c_owner       : "Udo Schmal & Schaffrath NeueMedien",
+	sponsor       : "L.N.Schaffrath NeueMedien",
+	sponsor_url   : "http://www.schaffrath-neuemedien.de.de/",
+	license       : "htmlArea"
+};
+
+BackgroundImage.prototype._lc = function(string) {
+    return HTMLArea._lc(string, 'BackgroundImage');
+};
+
+BackgroundImage.prototype.buttonPress = function(editor) {
+		//var doc = this.editor._doc;
+    editor._popupDialog( "plugin://BackgroundImage/bgimage", function( bgImage ) {
+        if(bgImage) {
+					if(HTMLArea.is_ie) editor.focusEditor();
+					if(bgImage=="*") {
+						editor._doc.body.background = "";
+					} else {
+					  editor._doc.body.background = bgImage;
+					}
+				}	
+    }, null);
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/blufur.jpg
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/blufur.jpg?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/blufur.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/palecnvs.jpg
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/palecnvs.jpg?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/palecnvs.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/ppplcnvs.jpg
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/ppplcnvs.jpg?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/ppplcnvs.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/blufur.jpg
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/blufur.jpg?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/blufur.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/palecnvs.jpg
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/palecnvs.jpg?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/palecnvs.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/ppplcnvs.jpg
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/ppplcnvs.jpg?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/ppplcnvs.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/ylwsand.jpg
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/ylwsand.jpg?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/thumbnails/ylwsand.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/ylwsand.jpg
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/ylwsand.jpg?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/backgrounds/ylwsand.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/img/ed_bgimage.gif
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/img/ed_bgimage.gif?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/img/ed_bgimage.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/de.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/de.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/de.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/de.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,9 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+// Author: Udo Schmal (gocher), http://www.schaffrath-neuemedien.de/, udo.schmal@t-online.de
+{
+  "Set page background image": "Seiten-Hintergrundbild setzen",
+  "Set Page Background Image": "Seiten-Hintergrundbild setzen",
+  "Remove Current Background": "Aktuellen Hintergrund entfernen",
+  "Cancel": "Abbrechen"
+};

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/fr.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/fr.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/fr.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/fr.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "fr", ENCODING: UTF-8
+{
+  "Set page background image": "Définir l'image de fond",
+  "Set Page Background Image": "Définir l'Image de Fond",
+  "Remove Current Background": "Supprimer le fond actuel",
+  "Cancel": "Annuler"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/ja.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/ja.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/ja.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/ja.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "ja", ENCODING: UTF-8
+{
+  "Set page background image": "ページの背景画像を設定",
+  "Set Page Background Image": "ページの背景画像を設定",
+  "Remove Current Background": "現在の背景画像を除去",
+  "Cancel": "中止"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/nb.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/nb.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/nb.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/lang/nb.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,9 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Set page background image": "Velg bakgrunnsbilde på siden",
+  "Set Page Background Image": "Velg bakgrunnsbilde på Siden",
+  "Remove Current Background": "Fjern gjeldende bakgrunn",
+  "Cancel": "Avbryt"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/popups/bgimage.html
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/popups/bgimage.html?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/popups/bgimage.html (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/BackgroundImage/popups/bgimage.html Fri Sep 21 03:36:30 2007
@@ -0,0 +1,49 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<title>Set Page Background Image</title>
+<link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
+<script type="text/javascript" src="../../../popups/popup.js"></script>
+<script language='JavaScript' type='text/javascript'>
+window.resizeTo(350, 195);
+function Init() {
+	
+  __dlg_translate("BackgroundImage");
+  __dlg_init();
+
+}
+
+function onCancel() {
+  __dlg_close(null);
+  return false;
+}
+
+function insertbg(image) {
+	__dlg_close(window.opener._editor_url + "/plugins/BackgroundImage/backgrounds/" + image);
+	return false;
+}
+
+function onDelete() {
+  __dlg_close("*");
+  return false;
+}
+</script>
+</head>
+<body class="dialog" onload="Init()">
+<form action="" method="get">
+  <div class="title">Set Page Background Image</div>
+<table align="center" border="0" cellspacing="0" cellpadding="6">
+<tr align="center" valign="top">
+<td><img onclick="insertbg('blufur.jpg')" border="1" src="../backgrounds/thumbnails/blufur.jpg" width="50" height="50"></td>
+<td><img onclick="insertbg('palecnvs.jpg')" border="1" src="../backgrounds/thumbnails/palecnvs.jpg" width="50" height="50"></td>
+<td><img onclick="insertbg('ppplcnvs.jpg')" border="1" src="../backgrounds/thumbnails/ppplcnvs.jpg" width="50" height="50"></td>
+<td><img onclick="insertbg('ylwsand.jpg')" border="1" src="../backgrounds/thumbnails/ylwsand.jpg" width="50" height="50"></td>
+</tr>
+</table>
+<div class="space"></div>
+<div id="buttons">
+<button type="button" name="delete" onclick="return onDelete()" style="width:auto">Remove Current Background</button>
+<button type="button" name="cancel" onclick="return onCancel();">Cancel</button>
+</div>
+</body>
+</html>
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CSS/css.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CSS/css.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CSS/css.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CSS/css.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,74 @@
+HTMLArea.Config.prototype.cssPluginConfig={combos:[{label:"Syntax",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"}}]};
+function CSS(_1,_2){
+this.editor=_1;
+var _3=_1.config;
+var _4=this;
+var _5;
+if(_2&&_2.length){
+_5=_2[0];
+}else{
+_5=_1.config.cssPluginConfig;
+}
+var _6=_5.combos;
+for(var i=0;i<_6.length;i++){
+var _8=_6[i];
+var id="CSS-class"+i;
+var _a={id:id,options:_8.options,action:function(_b){
+_4.onSelect(_b,this,_8.context,_8.updatecontextclass);
+},refresh:function(_c){
+_4.updateValue(_c,this);
+},context:_8.context};
+_3.registerDropdown(_a);
+_3.addToolbarElement(["T["+_8.label+"]",id,"separator"],"formatblock",-1);
+}
+}
+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(_d,_e,_f,_10){
+var _11=_d._toolbarObjects[_e.id];
+var _12=_11.element.selectedIndex;
+var _13=_11.element.value;
+var _14=_d.getParentElement();
+var _15=true;
+var _16=(_14&&_14.tagName.toLowerCase()=="span");
+var _17=(_f&&_10&&_14&&_14.tagName.toLowerCase()==_f);
+if(_17){
+_14.className=_13;
+_d.updateToolbar();
+return;
+}
+if(_16&&_12==0&&!/\S/.test(_14.style.cssText)){
+while(_14.firstChild){
+_14.parentNode.insertBefore(_14.firstChild,_14);
+}
+_14.parentNode.removeChild(_14);
+_d.updateToolbar();
+return;
+}
+if(_16){
+if(_14.childNodes.length==1){
+_14.className=_13;
+_15=false;
+_d.updateToolbar();
+}
+}
+if(_15){
+_d.surroundHTML("<span class='"+_13+"'>","</span>");
+}
+};
+CSS.prototype.updateValue=function(_18,obj){
+var _1a=_18._toolbarObjects[obj.id].element;
+var _1b=_18.getParentElement();
+if(typeof _1b.className!="undefined"&&/\S/.test(_1b.className)){
+var _1c=_1a.options;
+var _1d=_1b.className;
+for(var i=_1c.length;--i>=0;){
+var _1f=_1c[i];
+if(_1d==_1f.value){
+_1a.selectedIndex=i;
+return;
+}
+}
+}
+_1a.selectedIndex=0;
+};
+

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/char-counter.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/char-counter.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/char-counter.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/char-counter.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,106 @@
+function CharCounter(_1){
+this.editor=_1;
+this._Chars=0;
+this._Words=0;
+this._HTML=0;
+this.onKeyPress=this.__onKeyPress;
+}
+HTMLArea.Config.prototype.CharCounter={"showChar":true,"showWord":true,"showHtml":true,"separator":" | ","maxHTML":-1};
+CharCounter._pluginInfo={name:"CharCounter",version:"1.31",developer:"Udo Schmal",developer_url:"http://www.schaffrath-neuemedien.de",sponsor:"L.N.Schaffrath NeueMedien",sponsor_url:"http://www.schaffrath-neuemedien.de",c_owner:"Udo Schmal & L.N.Schaffrath NeueMedien",license:"htmlArea"};
+CharCounter.prototype._lc=function(_2){
+return HTMLArea._lc(_2,"CharCounter");
+};
+CharCounter.prototype.onGenerateOnce=function(){
+var _3=this;
+if(this.charCount==null){
+var _4=document.createElement("span");
+_4.style.padding="2px 5px";
+if(HTMLArea.is_ie){
+_4.style.styleFloat="right";
+}else{
+_4.style.cssFloat="right";
+}
+var _5=document.createElement("div");
+_5.style.height=_5.style.width=_5.style.lineHeight=_5.style.fontSize="1px";
+_5.style.clear="both";
+if(HTMLArea.is_ie){
+this.editor._statusBarTree.style.styleFloat="left";
+}else{
+this.editor._statusBarTree.style.cssFloat="left";
+}
+this.editor._statusBar.appendChild(_4);
+this.editor._statusBar.appendChild(_5);
+this.charCount=_4;
+}
+};
+CharCounter.prototype.__onKeyPress=function(ev){
+if((ev.keyCode!=8)&&(ev.keyCode!=46)){
+if(this.editor.config.CharCounter.maxHTML!=-1){
+var _7=this.editor.getHTML();
+if(_7.length>=this.editor.config.CharCounter.maxHTML){
+HTMLArea._stopEvent(ev);
+return true;
+}
+}
+}
+};
+CharCounter.prototype._updateCharCount=function(){
+var _8=this.editor;
+var _9=_8.config;
+var _a=_8.getHTML();
+var _b=new Array();
+if(_9.CharCounter.showHtml){
+_b[_b.length]=this._lc("HTML")+": "+_a.length;
+}
+this._HTML=_a.length;
+if(_9.CharCounter.showWord||_9.CharCounter.showChar){
+_a=_a.replace(/<\/?\s*!--[^-->]*-->/gi,"");
+_a=_a.replace(/<(.+?)>/g,"");
+_a=_a.replace(/&nbsp;/gi," ");
+_a=_a.replace(/([\n\r\t])/g," ");
+_a=_a.replace(/(  +)/g," ");
+_a=_a.replace(/&(.*);/g," ");
+_a=_a.replace(/^\s*|\s*$/g,"");
+}
+if(_9.CharCounter.showWord){
+this._Words=0;
+for(var x=0;x<_a.length;x++){
+if(_a.charAt(x)==" "){
+this._Words++;
+}
+}
+if(this._Words>=1){
+this._Words++;
+}
+_b[_b.length]=this._lc("Words")+": "+this._Words;
+}
+if(_9.CharCounter.showChar){
+_b[_b.length]=this._lc("Chars")+": "+_a.length;
+this._Chars=_a.length;
+}
+this.charCount.innerHTML=_b.join(_9.CharCounter.separator);
+};
+CharCounter.prototype.onUpdateToolbar=function(){
+this.charCount.innerHTML=this._lc("... in progress");
+if(this._timeoutID){
+window.clearTimeout(this._timeoutID);
+}
+var e=this;
+this._timeoutID=window.setTimeout(function(){
+e._updateCharCount();
+},1000);
+};
+CharCounter.prototype.onMode=function(_e){
+switch(_e){
+case "textmode":
+this.charCount.style.display="none";
+break;
+case "wysiwyg":
+this.charCount.style.display="";
+break;
+default:
+alert("Mode <"+_e+"> not defined!");
+return false;
+}
+};
+

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/de.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/de.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/de.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/de.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+// Author: Udo Schmal (gocher), http://www.schaffrath-neuemedien.de/, udo.schmal@t-online.de
+{
+  "Chars": "Zeichen",
+  "Words": "Worte",
+  "... in progress": "... in Bearbeitung"
+};

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/fr.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/fr.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/fr.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/fr.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,6 @@
+// I18N constants
+// LANG: "fr", ENCODING: UTF-8
+{
+  "Chars": "Caractères",
+  "Words": "Mots"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/ja.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/ja.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/ja.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/ja.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,7 @@
+// I18N constants
+// LANG: "ja", ENCODING: UTF-8
+{
+  "Chars": "文字数",
+  "Words": "単語数",
+  "... in progress": "... 処理中"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/nb.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/nb.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/nb.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharCounter/lang/nb.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,6 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Chars": "Tegn"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/CharacterMap.css
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/CharacterMap.css?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/CharacterMap.css (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/CharacterMap.css Fri Sep 21 03:36:30 2007
@@ -0,0 +1,41 @@
+.CharacterMap { }
+.CharacterMap a.entity {
+  font-size:12px;
+  width:18px;
+  display:block;
+  float:left;
+  padding:2px;
+  text-decoration:none;
+  color:#000;
+  text-align:center;
+  
+}
+.CharacterMap a.light {
+  background-color:#ffffff;
+}
+.CharacterMap a.dark {
+  background-color:#f7f8fd;
+}
+.CharacterMap a.entity:hover {
+  background-color:#ffd760;
+  color:#000;
+}
+.popup td.character {
+  font-family:Verdana,Arial,Helvetica,sans-serif;
+  font-size:14px;
+  font-weight:bold;
+  text-align:center;
+  background:#fff;
+  padding:4px;
+}
+.popup td.character-hilite {
+  background:#ffd760;
+}
+.popup form {
+  text-align:center;
+}
+.popup table {
+  cursor:pointer;
+  background-color:#ADAD9C;
+  border:1px inset;
+}
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/character-map.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/character-map.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/character-map.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/character-map.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,68 @@
+HTMLArea.loadStyle("CharacterMap.css","CharacterMap");
+function CharacterMap(_1){
+this.editor=_1;
+var _2=_1.config;
+var _3=this;
+_2.registerButton({id:"insertcharacter",tooltip:HTMLArea._lc("Insert special character","CharacterMap"),image:_1.imgURL("ed_charmap.gif","CharacterMap"),textMode:false,action:function(_4){
+_3.buttonPress(_4);
+}});
+_2.addToolbarElement("insertcharacter","createlink",-1);
+if(_2.CharacterMap.mode=="panel"){
+_1._CharacterMap=_1.addPanel("right");
+HTMLArea._addClass(_1._CharacterMap,"CharacterMap");
+_1.notifyOn("modechange",function(e,_6){
+if(_6.mode=="text"){
+_1.hidePanel(_1._CharacterMap);
+}
+});
+var _7=["&Yuml;","&scaron;","&#064;","&quot;","&iexcl;","&cent;","&pound;","&curren;","&yen;","&brvbar;","&sect;","&uml;","&copy;","&ordf;","&laquo;","&not;","&macr;","&deg;","&plusmn;","&sup2;","&sup3;","&acute;","&micro;","&para;","&middot;","&cedil;","&sup1;","&ordm;","&raquo;","&frac14;","&frac12;","&frac34;","&iquest;","&times;","&Oslash;","&divide;","&oslash;","&fnof;","&circ;","&tilde;","&ndash;","&mdash;","&lsquo;","&rsquo;","&sbquo;","&ldquo;","&rdquo;","&bdquo;","&dagger;","&Dagger;","&bull;","&hellip;","&permil;","&lsaquo;","&rsaquo;","&euro;","&trade;","&Agrave;","&Aacute;","&Acirc;","&Atilde;","&Auml;","&Aring;","&AElig;","&Ccedil;","&Egrave;","&Eacute;","&Ecirc;","&Euml;","&Igrave;","&Iacute;","&Icirc;","&Iuml;","&ETH;","&Ntilde;","&Ograve;","&Oacute;","&Ocirc;","&Otilde;","&Ouml;","&reg;","&times;","&Ugrave;","&Uacute;","&Ucirc;","&Uuml;","&Yacute;","&THORN;","&szlig;","&agrave;","&aacute;","&acirc;","&atilde;","&auml;","&aring;","&aelig;","&ccedil;","&egrave;
 ","&eacute;","&ecirc;","&euml;","&igrave;","&iacute;","&icirc;","&iuml;","&eth;","&ntilde;","&ograve;","&oacute;","&ocirc;","&otilde;","&ouml;","&divide;","&oslash;","&ugrave;","&uacute;","&ucirc;","&uuml;","&yacute;","&thorn;","&yuml;","&OElig;","&oelig;","&Scaron;"];
+for(var i=0;i<_7.length;i++){
+this.addEntity(_7[i],i);
+}
+_1.hidePanel(_1._CharacterMap);
+}
+}
+HTMLArea.Config.prototype.CharacterMap={"mode":"popup"};
+CharacterMap._pluginInfo={name:"CharacterMap",version:"2.0",developer:"Laurent Vilday",developer_url:"http://www.mokhet.com/",c_owner:"Xinha community",sponsor:"",sponsor_url:"",license:"Creative Commons Attribution-ShareAlike License"};
+CharacterMap._isActive=false;
+CharacterMap.prototype.buttonPress=function(_9){
+var _a=_9.config;
+if(_a.CharacterMap.mode=="panel"){
+if(this._isActive){
+this._isActive=false;
+_9.hidePanel(_9._CharacterMap);
+}else{
+this._isActive=true;
+_9.showPanel(_9._CharacterMap);
+}
+}else{
+_9._popupDialog("plugin://CharacterMap/select_character",function(_b){
+if(!_b){
+return false;
+}
+if(HTMLArea.is_ie){
+_9.focusEditor();
+}
+_9.insertHTML(_b);
+},null);
+}
+};
+CharacterMap.prototype.addEntity=function(_c,_d){
+var _e=this.editor;
+var _f=this;
+var a=document.createElement("a");
+HTMLArea._addClass(a,"entity");
+a.innerHTML=_c;
+a.href="javascript:void(0)";
+HTMLArea._addClass(a,(_d%2)?"light":"dark");
+a.onclick=function(){
+if(HTMLArea.is_ie){
+_e.focusEditor();
+}
+_e.insertHTML(_c);
+return false;
+};
+_e._CharacterMap.appendChild(a);
+a=null;
+};
+

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/img/ed_charmap.gif
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/img/ed_charmap.gif?rev=578051&view=auto
==============================================================================
Binary file - no diff available.

Propchange: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/img/ed_charmap.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/de.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/de.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/de.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/de.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,11 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+// Sponsored by http://www.systemconcept.de
+// Author: Holger Hees, <hh...@systemconcept.de>
+// (c) systemconcept.de 2004
+// Distributed under the same terms as HTMLArea itself.
+// This notice MUST stay intact for use (see license.txt).
+{
+  "Insert special character": "Sonderzeichen einfügen",
+  "Cancel": "Abbrechen"
+}

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/fr.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/fr.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/fr.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/fr.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,6 @@
+// I18N constants
+// LANG: "fr", ENCODING: UTF-8
+{
+  "Insert special character": "Insérer un caractère spécial",
+  "Cancel": "Annuler"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/it.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/it.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/it.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/it.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,6 @@
+// I18N constants
+// LANG: "it", ENCODING: UTF-8
+{
+  "Insert special character": "Inserisca il carattere speciale",
+  "Cancel": "Annullamento"
+};

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/ja.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/ja.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/ja.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/ja.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,6 @@
+// I18N constants
+// LANG: "ja", ENCODING: UTF-8
+{
+  "Insert special character": "特殊文字を挿入",
+  "Cancel": "中止"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/nb.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/nb.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/nb.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/nb.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,7 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Insert special character": "Sett inn tegn",
+  "Cancel": "Avbryt"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/nl.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/nl.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/nl.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/nl.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,11 @@
+// I18N constants
+// LANG: "nl", ENCODING: UTF-8
+// Sponsored by http://www.systemconcept.de
+// Author: Holger Hees, <hh...@systemconcept.de>
+// (c) systemconcept.de 2004
+// Distributed under the same terms as HTMLArea itself.
+// This notice MUST stay intact for use (see license.txt).
+{
+  "Insert special character": "Speciaal character invoegen",
+  "Cancel": "Annuleer"
+};

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/ru.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/ru.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/ru.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/ru.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,7 @@
+// I18N constants
+// LANG: "ru", ENCODING: UTF-8
+// Author: Andrei Blagorazumov, a@fnr.ru
+{
+  "Insert special character": "Вставить специальный символ",
+  "Cancel": "Отменить"
+};
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/sv.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/sv.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/sv.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/lang/sv.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,7 @@
+// I18N constants
+// LANG: "sv" (Swedish), ENCODING: UTF-8
+// translated: Erik Dalén <da...@jpl.se>
+{
+  "Insert special character": "Infoga tecken",
+  "Cancel": "Avbryt"
+};

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/popups/select_character.html
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/popups/select_character.html?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/popups/select_character.html (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/CharacterMap/popups/select_character.html Fri Sep 21 03:36:30 2007
@@ -0,0 +1,184 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<title>Insert special character</title>
+<link rel="stylesheet" type="text/css" href="../CharacterMap.css" />
+<script type="text/javascript" src="../../../popups/popup.js"></script>
+<link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
+<script type="text/javascript">
+  window.resizeTo(480, 300);
+// HTMLSource based on HTMLArea XTD 1.5 modified by Holger Hees
+// Original Author - Bernhard Pfeifer novocaine@gmx.net
+HTMLArea = window.opener.HTMLArea;
+function Init() // run on page load
+{
+  __dlg_translate('CharacterMap');
+  __dlg_init();
+
+  var character = ''; // set default input to empty
+  View( null, character );
+  document.getElementById("cancel").focus();
+}
+var oldView = null;
+function View( td, character ) // preview character
+{
+  if (oldView)
+    HTMLArea._removeClass(oldView, 'character-hilite');
+  if (td) {
+    oldView = td;
+    HTMLArea._addClass(oldView, 'character-hilite');
+  }
+}
+function Set( string ) // return character
+{
+  var character = string;
+  __dlg_close( character );
+}
+function onCancel() // cancel selection
+{
+  __dlg_close( null );
+  return false;
+}
+
+</script>
+</head>
+<body class="dialog popup" onload="Init();">
+<table border="0" cellspacing="1" cellpadding="0" width="100%">
+<tr>
+<td class="character" onmouseover="View(this,'&amp;Yuml;')" onclick="Set('&Yuml;')">&Yuml;</td>
+<td class="character" onmouseover="View(this,'&amp;scaron;')" onclick="Set('&scaron;')">&scaron;</td>
+<td class="character" onmouseover="View(this,'&amp;#064;')" onclick="Set('&#064;')">@</td>
+<td class="character" onmouseover="View(this,'&amp;quot;')" onclick="Set('&quot;')">&quot;</td>
+<td class="character" onmouseover="View(this,'&amp;iexcl;')" onclick="Set('&iexcl;')">&iexcl;</td>
+<td class="character" onmouseover="View(this,'&amp;cent;')" onclick="Set('&cent;')">&cent;</td>
+<td class="character" onmouseover="View(this,'&amp;pound;')" onclick="Set('&pound;')">&pound;</td>
+<td class="character" onmouseover="View(this,'&amp;curren;')" onclick="Set('&curren;')">&curren;</td>
+<td class="character" onmouseover="View(this,'&amp;yen;')" onclick="Set('&yen;')">&yen;</td>
+<td class="character" onmouseover="View(this,'&amp;brvbar;')" onclick="Set('&brvbar;')">&brvbar;</td>
+<td class="character" onmouseover="View(this,'&amp;sect;')" onclick="Set('&sect;')">&sect;</td>
+<td class="character" onmouseover="View(this,'&amp;uml;')" onclick="Set('&uml;')">&uml;</td>
+<td class="character" onmouseover="View(this,'&amp;copy;')" onclick="Set('&copy;')">&copy;</td>
+<td class="character" onmouseover="View(this,'&amp;ordf;')" onclick="Set('&ordf;')">&ordf;</td>
+<td class="character" onmouseover="View(this,'&amp;laquo;')" onclick="Set('&laquo;')">&laquo;</td>
+<td class="character" onmouseover="View(this,'&amp;not;')" onclick="Set('&not;')">&not;</td>
+</tr><tr>
+<td class="character" onmouseover="View(this,'&amp;macr;')" onclick="Set('&macr;')">&macr;</td>
+<td class="character" onmouseover="View(this,'&amp;deg;')" onclick="Set('&deg;')">&deg;</td>
+<td class="character" onmouseover="View(this,'&amp;plusmn;')" onclick="Set('&plusmn;')">&plusmn;</td>
+<td class="character" onmouseover="View(this,'&amp;sup2;')" onclick="Set('&sup2;')">&sup2;</td>
+<td class="character" onmouseover="View(this,'&amp;sup3;')" onclick="Set('&sup3;')">&sup3;</td>
+<td class="character" onmouseover="View(this,'&amp;acute;')" onclick="Set('&acute;')">&acute;</td>
+<td class="character" onmouseover="View(this,'&amp;micro;')" onclick="Set('&micro;')">&micro;</td>
+<td class="character" onmouseover="View(this,'&amp;para;')" onclick="Set('&para;')">&para;</td>
+<td class="character" onmouseover="View(this,'&amp;middot;')" onclick="Set('&middot;')">&middot;</td>
+<td class="character" onmouseover="View(this,'&amp;cedil;')" onclick="Set('&cedil;')">&cedil;</td>
+<td class="character" onmouseover="View(this,'&amp;sup1;')" onclick="Set('&sup1;')">&sup1;</td>
+<td class="character" onmouseover="View(this,'&amp;ordm;')" onclick="Set('&ordm;')">&ordm;</td>
+<td class="character" onmouseover="View(this,'&amp;raquo;')" onclick="Set('&raquo;')">&raquo;</td>
+<td class="character" onmouseover="View(this,'&amp;frac14;')" onclick="Set('&frac14;')">&frac14;</td>
+<td class="character" onmouseover="View(this,'&amp;frac12;')" onclick="Set('&frac12;')">&frac12;</td>
+<td class="character" onmouseover="View(this,'&amp;frac34;')" onclick="Set('&frac34;')">&frac34;</td>
+</tr><tr>
+<td class="character" onmouseover="View(this,'&amp;iquest;')" onclick="Set('&iquest;')">&iquest;</td>
+<td class="character" onmouseover="View(this,'&amp;times;')" onclick="Set('&times;')">&times;</td>
+<td class="character" onmouseover="View(this,'&amp;Oslash;')" onclick="Set('&Oslash;')">&Oslash;</td>
+<td class="character" onmouseover="View(this,'&amp;divide;')" onclick="Set('&divide;')">&divide;</td>
+<td class="character" onmouseover="View(this,'&amp;oslash;')" onclick="Set('&oslash;')">&oslash;</td>
+<td class="character" onmouseover="View(this,'&amp;fnof;')" onclick="Set('&fnof;')">&fnof;</td>
+<td class="character" onmouseover="View(this,'&amp;circ;')" onclick="Set('&circ;')">&circ;</td>
+<td class="character" onmouseover="View(this,'&amp;tilde;')" onclick="Set('&tilde;')">&tilde;</td>
+<td class="character" onmouseover="View(this,'&amp;ndash;')" onclick="Set('&ndash;')">&ndash;</td>
+<td class="character" onmouseover="View(this,'&amp;mdash;')" onclick="Set('&mdash;')">&mdash;</td>
+<td class="character" onmouseover="View(this,'&amp;lsquo;')" onclick="Set('&lsquo;')">&lsquo;</td>
+<td class="character" onmouseover="View(this,'&amp;rsquo;')" onclick="Set('&rsquo;')">&rsquo;</td>
+<td class="character" onmouseover="View(this,'&amp;sbquo;')" onclick="Set('&sbquo;')">&sbquo;</td>
+<td class="character" onmouseover="View(this,'&amp;ldquo;')" onclick="Set('&ldquo;')">&ldquo;</td>
+<td class="character" onmouseover="View(this,'&amp;rdquo;')" onclick="Set('&rdquo;')">&rdquo;</td>
+<td class="character" onmouseover="View(this,'&amp;bdquo;')" onclick="Set('&bdquo;')">&bdquo;</td>
+</tr><tr>
+<td class="character" onmouseover="View(this,'&amp;dagger;')" onclick="Set('&dagger;')">&dagger;</td>
+<td class="character" onmouseover="View(this,'&amp;Dagger;')" onclick="Set('&Dagger;')">&Dagger;</td>
+<td class="character" onmouseover="View(this,'&amp;bull;')" onclick="Set('&bull;')">&bull;</td>
+<td class="character" onmouseover="View(this,'&amp;hellip;')" onclick="Set('&hellip;')">&hellip;</td>
+<td class="character" onmouseover="View(this,'&amp;permil;')" onclick="Set('&permil;')">&permil;</td>
+<td class="character" onmouseover="View(this,'&amp;lsaquo;')" onclick="Set('&lsaquo;')">&lsaquo;</td>
+<td class="character" onmouseover="View(this,'&amp;rsaquo;')" onclick="Set('&rsaquo;')">&rsaquo;</td>
+<td class="character" onmouseover="View(this,'&amp;euro;')" onclick="Set('&euro;')">&euro;</td>
+<td class="character" onmouseover="View(this,'&amp;trade;')" onclick="Set('&trade;')">&trade;</td>
+<td class="character" onmouseover="View(this,'&amp;Agrave;')" onclick="Set('&Agrave;')">&Agrave;</td>
+<td class="character" onmouseover="View(this,'&amp;Aacute;')" onclick="Set('&Aacute;')">&Aacute;</td>
+<td class="character" onmouseover="View(this,'&amp;Acirc;')" onclick="Set('&Acirc;')">&Acirc;</td>
+<td class="character" onmouseover="View(this,'&amp;Atilde;')" onclick="Set('&Atilde;')">&Atilde;</td>
+<td class="character" onmouseover="View(this,'&amp;Auml;')" onclick="Set('&Auml;')">&Auml;</td>
+<td class="character" onmouseover="View(this,'&amp;Aring;')" onclick="Set('&Aring;')">&Aring;</td>
+<td class="character" onmouseover="View(this,'&amp;AElig;')" onclick="Set('&AElig;')">&AElig;</td>
+</tr><tr>
+<td class="character" onmouseover="View(this,'&amp;Ccedil;')" onclick="Set('&Ccedil;')">&Ccedil;</td>
+<td class="character" onmouseover="View(this,'&amp;Egrave;')" onclick="Set('&Egrave;')">&Egrave;</td>
+<td class="character" onmouseover="View(this,'&amp;Eacute;')" onclick="Set('&Eacute;')">&Eacute;</td>
+<td class="character" onmouseover="View(this,'&amp;Ecirc;')" onclick="Set('&Ecirc;')">&Ecirc;</td>
+<td class="character" onmouseover="View(this,'&amp;Euml;')" onclick="Set('&Euml;')">&Euml;</td>
+<td class="character" onmouseover="View(this,'&amp;Igrave;')" onclick="Set('&Igrave;')">&Igrave;</td>
+<td class="character" onmouseover="View(this,'&amp;Iacute;')" onclick="Set('&Iacute;')">&Iacute;</td>
+<td class="character" onmouseover="View(this,'&amp;Icirc;')" onclick="Set('&Icirc;')">&Icirc;</td>
+<td class="character" onmouseover="View(this,'&amp;Iuml;')" onclick="Set('&Iuml;')">&Iuml;</td>
+<td class="character" onmouseover="View(this,'&amp;ETH;')" onclick="Set('&ETH;')">&ETH;</td>
+<td class="character" onmouseover="View(this,'&amp;Ntilde;')" onclick="Set('&Ntilde;')">&Ntilde;</td>
+<td class="character" onmouseover="View(this,'&amp;Ograve;')" onclick="Set('&Ograve;')">&Ograve;</td>
+<td class="character" onmouseover="View(this,'&amp;Oacute;')" onclick="Set('&Oacute;')">&Oacute;</td>
+<td class="character" onmouseover="View(this,'&amp;Ocirc;')" onclick="Set('&Ocirc;')">&Ocirc;</td>
+<td class="character" onmouseover="View(this,'&amp;Otilde;')" onclick="Set('&Otilde;')">&Otilde;</td>
+<td class="character" onmouseover="View(this,'&amp;Ouml;')" onclick="Set('&Ouml;')">&Ouml;</td>
+</tr><tr>
+<td class="character" onmouseover="View(this,'&amp;reg;')" onclick="Set('&reg;')">&reg;</td>
+<td class="character" onmouseover="View(this,'&amp;times;')" onclick="Set('&times;')">&times;</td>
+<td class="character" onmouseover="View(this,'&amp;Ugrave;')" onclick="Set('&Ugrave;')">&Ugrave;</td>
+<td class="character" onmouseover="View(this,'&amp;Uacute;')" onclick="Set('&Uacute;')">&Uacute;</td>
+<td class="character" onmouseover="View(this,'&amp;Ucirc;')" onclick="Set('&Ucirc;')">&Ucirc;</td>
+<td class="character" onmouseover="View(this,'&amp;Uuml;')" onclick="Set('&Uuml;')">&Uuml;</td>
+<td class="character" onmouseover="View(this,'&amp;Yacute;')" onclick="Set('&Yacute;')">&Yacute;</td>
+<td class="character" onmouseover="View(this,'&amp;THORN;')" onclick="Set('&THORN;')">&THORN;</td>
+<td class="character" onmouseover="View(this,'&amp;szlig;')" onclick="Set('&szlig;')">&szlig;</td>
+<td class="character" onmouseover="View(this,'&amp;agrave;')" onclick="Set('&agrave;')">&agrave;</td>
+<td class="character" onmouseover="View(this,'&amp;aacute;')" onclick="Set('&aacute;')">&aacute;</td>
+<td class="character" onmouseover="View(this,'&amp;acirc;')" onclick="Set('&acirc;')">&acirc;</td>
+<td class="character" onmouseover="View(this,'&amp;atilde;')" onclick="Set('&atilde;')">&atilde;</td>
+<td class="character" onmouseover="View(this,'&amp;auml;')" onclick="Set('&auml;')">&auml;</td>
+<td class="character" onmouseover="View(this,'&amp;aring;')" onclick="Set('&aring;')">&aring;</td>
+<td class="character" onmouseover="View(this,'&amp;aelig;')" onclick="Set('&aelig;')">&aelig;</td>
+</tr><tr>
+<td class="character" onmouseover="View(this,'&amp;ccedil;')" onclick="Set('&ccedil;')">&ccedil;</td>
+<td class="character" onmouseover="View(this,'&amp;egrave;')" onclick="Set('&egrave;')">&egrave;</td>
+<td class="character" onmouseover="View(this,'&amp;eacute;')" onclick="Set('&eacute;')">&eacute;</td>
+<td class="character" onmouseover="View(this,'&amp;ecirc;')" onclick="Set('&ecirc;')">&ecirc;</td>
+<td class="character" onmouseover="View(this,'&amp;euml;')" onclick="Set('&euml;')">&euml;</td>
+<td class="character" onmouseover="View(this,'&amp;igrave;')" onclick="Set('&igrave;')">&igrave;</td>
+<td class="character" onmouseover="View(this,'&amp;iacute;')" onclick="Set('&iacute;')">&iacute;</td>
+<td class="character" onmouseover="View(this,'&amp;icirc;')" onclick="Set('&icirc;')">&icirc;</td>
+<td class="character" onmouseover="View(this,'&amp;iuml;')" onclick="Set('&iuml;')">&iuml;</td>
+<td class="character" onmouseover="View(this,'&amp;eth;')" onclick="Set('&eth;')">&eth;</td>
+<td class="character" onmouseover="View(this,'&amp;ntilde;')" onclick="Set('&ntilde;')">&ntilde;</td>
+<td class="character" onmouseover="View(this,'&amp;ograve;')" onclick="Set('&ograve;')">&ograve;</td>
+<td class="character" onmouseover="View(this,'&amp;oacute;')" onclick="Set('&oacute;')">&oacute;</td>
+<td class="character" onmouseover="View(this,'&amp;ocirc;')" onclick="Set('&ocirc;')">&ocirc;</td>
+<td class="character" onmouseover="View(this,'&amp;otilde;')" onclick="Set('&otilde;')">&otilde;</td>
+<td class="character" onmouseover="View(this,'&amp;ouml;')" onclick="Set('&ouml;')">&ouml;</td>
+</tr><tr>
+<td class="character" onmouseover="View(this,'&amp;divide;')" onclick="Set('&divide;')">&divide;</td>
+<td class="character" onmouseover="View(this,'&amp;oslash;')" onclick="Set('&oslash;')">&oslash;</td>
+<td class="character" onmouseover="View(this,'&amp;ugrave;')" onclick="Set('&ugrave;')">&ugrave;</td>
+<td class="character" onmouseover="View(this,'&amp;uacute;')" onclick="Set('&uacute;')">&uacute;</td>
+<td class="character" onmouseover="View(this,'&amp;ucirc;')" onclick="Set('&ucirc;')">&ucirc;</td>
+<td class="character" onmouseover="View(this,'&amp;uuml;')" onclick="Set('&uuml;')">&uuml;</td>
+<td class="character" onmouseover="View(this,'&amp;yacute;')" onclick="Set('&yacute;')">&yacute;</td>
+<td class="character" onmouseover="View(this,'&amp;thorn;')" onclick="Set('&thorn;')">&thorn;</td>
+<td class="character" onmouseover="View(this,'&amp;yuml;')" onclick="Set('&yuml;')">&yuml;</td>
+<td class="character" onmouseover="View(this,'&amp;OElig;')" onclick="Set('&OElig;')">&OElig;</td>
+<td class="character" onmouseover="View(this,'&amp;oelig;')" onclick="Set('&oelig;')">&oelig;</td>
+<td class="character" onmouseover="View(this,'&amp;Scaron;')" onclick="Set('&Scaron;')">&Scaron;</td>
+<td class="character" colspan="4">&nbsp;</td>
+</tr>
+</table><br>
+<form action="#"><button type="button" id="cancel" name="cancel" onclick="return onCancel();">Cancel</button></form>
+</body>
+</html>
\ No newline at end of file

Added: lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/ClientsideSpellcheck/clientside-spellcheck.js
URL: http://svn.apache.org/viewvc/lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/ClientsideSpellcheck/clientside-spellcheck.js?rev=578051&view=auto
==============================================================================
--- lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/ClientsideSpellcheck/clientside-spellcheck.js (added)
+++ lenya/branches/revolution/1.3.x/src/webapp/lenya/modules/xinha/plugins/ClientsideSpellcheck/clientside-spellcheck.js Fri Sep 21 03:36:30 2007
@@ -0,0 +1,62 @@
+// IE Spell Implementation for XINHA
+//Client-side spell check plugin
+//This implements the API for ieSpell, which is owned by Red Egg Software 
+//For more info about ieSpell, go to http://www.iespell.com/index.htm
+// Distributed under the same terms as HTMLArea itself.
+// This notice MUST stay intact for use (see license.txt).
+
+
+function ClientsideSpellcheck(editor) {
+  this.editor = editor;
+
+  var cfg = editor.config;
+  var bl = ClientsideSpellcheck.btnList;
+  var self = this;
+
+  // see if we can find the mode switch button, insert this before that
+  var id = "clientsidespellcheck";
+  
+  
+  cfg.registerButton(id, this._lc("Spell Check using ieSpell"), editor.imgURL("clientside-spellcheck.gif", "ClientsideSpellcheck"), false,
+             function(editor, id) {
+               // dispatch button press event
+               self.buttonPress(editor, id);
+             });
+
+  if(HTMLArea.is_ie) {
+    cfg.addToolbarElement("clientsidespellcheck", "print", 1);
+}
+
+}
+
+ClientsideSpellcheck._pluginInfo = {
+  name          : "ClientsideSpellcheck",
+  version       : "1.0",
+  developer     : "Michael Harris",
+  developer_url : "http://www.jonesinternational.edu",
+  c_owner       : "Red Egg Software",
+  sponsor       : "Jones International University",
+  sponsor_url   : "http://www.jonesinternational.edu",
+  license       : "htmlArea"
+};
+
+
+ClientsideSpellcheck.prototype._lc = function(string) {
+  return HTMLArea._lc(string, 'ClientsideSpellcheck');
+};
+
+ClientsideSpellcheck.prototype.buttonPress = function(editor) {
+
+	try {
+		var tmpis = new ActiveXObject("ieSpell.ieSpellExtension");
+		tmpis.CheckAllLinkedDocuments(document);
+	}
+	catch(exception) {
+ 		if(exception.number==-2146827859) {
+			if (confirm(this.lc("ieSpell not detected.  Click Ok to go to download page.")))
+				window.open("http://www.iespell.com/download.php","DownLoad");
+		} else {
+			alert(this.lc("ieSpell can only be used in Internet Explorer"));
+		}
+	}
+};
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org