roller-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From snoopd...@apache.org
Subject svn commit: r454197 [24/29] - in /incubator/roller/trunk/web: WEB-INF/classes/ roller-ui/authoring/editors/ roller-ui/authoring/editors/xinha/ roller-ui/authoring/editors/xinha/conf/ roller-ui/authoring/editors/xinha/contrib/ roller-ui/authoring/editor...
Date Sun, 08 Oct 2006 19:54:16 GMT
Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/nb.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/nb.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/nb.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/nb.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,12 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Decimal numbers": "Desimaltall",
+  "Lower roman numbers": "Lower roman numbers",
+  "Upper roman numbers": "Upper roman numbers",
+  "Lower latin letters": "Lower latin letters",
+  "Upper latin letters": "Upper latin letters",
+  "Lower greek letters": "Lower greek letters",
+  "Choose list style type (for ordered lists)": "Velg listetype (for nummererte lister)"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/nl.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/nl.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/nl.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/nl.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,12 @@
+// I18N constants
+// LANG: "nl", ENCODING: UTF-8
+// Author: Mihai Bazon, http://dynarch.com/mishoo
+{
+  "Decimal numbers": "Decimale nummers",
+  "Lower roman numbers": "Romeinse nummers klein",
+  "Upper roman numbers": "Romeinse nummers groot",
+  "Lower latin letters": "Latijnse letters klein",
+  "Upper latin letters": "Latijnse letters groot",
+  "Lower greek letters": "Griekse letters",
+  "Choose list style type (for ordered lists)": "Kies stijl type (voor ordered lists)"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/no.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/no.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/no.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/no.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,12 @@
+// I18N constants
+// LANG: "no", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Decimal numbers": "Desimaltall",
+  "Lower roman numbers": "Lower roman numbers",
+  "Upper roman numbers": "Upper roman numbers",
+  "Lower latin letters": "Lower latin letters",
+  "Upper latin letters": "Upper latin letters",
+  "Lower greek letters": "Lower greek letters",
+  "Choose list style type (for ordered lists)": "Velg listetype (for nummererte lister)"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/pl.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/pl.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/pl.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/pl.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,12 @@
+// I18N constants
+// LANG: "pl", ENCODING: UTF-8
+// translated: Krzysztof Kotowicz, koto1sa@o2.pl, http://www.eskot.krakow.pl/portfolio
+{
+  "Decimal numbers": "Cyfry arabskie",
+  "Lower roman numbers": "Małe rzymskie",
+  "Upper roman numbers": "Duże rzymskie",
+  "Lower latin letters": "Małe litery",
+  "Upper latin letters": "Duże litery",
+  "Lower greek letters": "Małe litery greckie",
+  "Choose list style type (for ordered lists)": "Wybierz typ listy numerowanej"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/ru.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/ru.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/ru.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/ru.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,12 @@
+// I18N constants
+// LANG: "ru", ENCODING: UTF-8
+// Author: Andrei Blagorazumov, a@fnr.ru
+{
+  "Decimal numbers": "Десятичные числа",
+  "Lower roman numbers": "Строчные романские числа",
+  "Upper roman numbers": "Заглавные романские числа",
+  "Lower latin letters": "Строчные латинские символы",
+  "Upper latin letters": "Заглавные латинские символы",
+  "Lower greek letters": "Строчные греческие символы",
+  "Choose list style type (for ordered lists)": "Выберите стиль списков (для упорядоченных списков)"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/sv.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/sv.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/sv.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/sv.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,12 @@
+// I18N constants
+// LANG: "sv" (Swedish), ENCODING: UTF-8
+// translated: Erik Dalén, <dalen@jpl.se>
+{
+  "Decimal numbers": "Desimaltal",
+  "Lower roman numbers": "Små romerska siffror",
+  "Upper roman numbers": "Stora romerska siffror",
+  "Lower latin letters": "Små latinska bokstäver",
+  "Upper latin letters": "Stora latinska bokstäver",
+  "Lower greek letters": "Små grekiska bokstäver",
+  "Choose list style type (for ordered lists)": "Välj listtyp (för numrerade listor)"
+};

Propchange: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/lang/sv.js
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/list-type.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/list-type.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/list-type.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/ListType/list-type.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,191 @@
+// ListType Plugin for Xinha
+// Toolbar Implementation by Mihai Bazon, http://dynarch.com/mishoo/
+HTMLArea.loadStyle( 'ListType.css', 'ListType' );
+
+function ListType( editor )
+{
+  this.editor = editor;
+  var cfg = editor.config;
+  var self = this;
+
+  if ( cfg.ListType.mode == 'toolbar' )
+  {
+  var options = {};
+    options[HTMLArea._lc( "Decimal numbers", "ListType" )] = "decimal";
+    options[HTMLArea._lc( "Lower roman numbers", "ListType" )] = "lower-roman";
+    options[HTMLArea._lc( "Upper roman numbers", "ListType" )] = "upper-roman";
+    options[HTMLArea._lc( "Lower latin letters", "ListType" )] = "lower-alpha";
+    options[HTMLArea._lc( "Upper latin letters", "ListType" )] = "upper-alpha";
+    if (!HTMLArea.is_ie)
+      // IE doesn't support this property; even worse, it complains
+      // with a gross error message when we tried to select it,
+      // therefore let's hide it from the damn "browser".
+      options[HTMLArea._lc( "Lower greek letters", "ListType" )] = "lower-greek";
+    var obj =
+    {
+      id            : "listtype",
+      tooltip       : HTMLArea._lc( "Choose list style type (for ordered lists)", "ListType" ),
+      options       : options,
+      action        : function( editor ) { self.onSelect( editor, this ); },
+      refresh       : function( editor ) { self.updateValue( editor, this ); },
+      context       : "ol"
+    };
+    cfg.registerDropdown( obj );
+    cfg.addToolbarElement( "listtype", ["insertorderedlist","orderedlist"], 1 );
+  }
+  else
+  {
+    editor._ListType = editor.addPanel( 'right' );
+    HTMLArea.freeLater( editor, '_ListType' );
+    HTMLArea.addClass( editor._ListType, 'ListType' );
+    // hurm, ok it's pretty to use the background color for the whole panel,
+    // but should not it be set by default when creating the panel ?
+    HTMLArea.addClass( editor._ListType.parentNode, 'dialog' );
+
+    editor.notifyOn( 'modechange',
+      function(e,args)
+      {
+        if ( args.mode == 'text' ) editor.hidePanel( editor._ListType );
+      }
+    );
+
+    var elts_ul = ['disc', 'circle', 'square', 'none'];
+    var elts_ol = ['decimal', 'lower-alpha', 'upper-alpha', 'lower-roman', 'upper-roman', 'none'];
+    var divglobal = document.createElement( 'div' );
+    divglobal.style.height = '90px';
+    var div = document.createElement( 'div' );
+    div.id = 'LTdivUL';
+    div.style.display = 'none';
+    for ( var i=0; i<elts_ul.length; i++ )
+    {
+      div.appendChild( this.createImage( elts_ul[i] ) );
+    }
+    divglobal.appendChild( div );
+    var div = document.createElement( 'div' );
+    div.id = 'LTdivOL';
+    div.style.display = 'none';
+    for ( var i=0; i<elts_ol.length; i++ )
+    {
+      div.appendChild( this.createImage( elts_ol[i] ) );
+    }
+    divglobal.appendChild( div );
+
+    editor._ListType.appendChild( divglobal );
+
+    editor.hidePanel( editor._ListType );
+  }
+}
+
+HTMLArea.Config.prototype.ListType =
+{
+  'mode': 'toolbar' // configuration mode : toolbar or panel
+};
+
+ListType._pluginInfo =
+{
+  name          : "ListType",
+  version       : "2.1",
+  developer     : "Laurent Vilday",
+  developer_url : "http://www.mokhet.com/",
+  c_owner       : "Xinha community",
+  sponsor       : "",
+  sponsor_url   : "",
+  license       : "Creative Commons Attribution-ShareAlike License"
+};
+
+ListType.prototype.onSelect = function( editor, combo )
+{
+  var tbobj = editor._toolbarObjects[ combo.id ].element;
+  var parent = editor.getParentElement();
+  while (!/^ol$/i.test( parent.tagName ))
+    parent = parent.parentNode;
+  parent.style.listStyleType = tbobj.value;
+};
+
+ListType.prototype.updateValue = function( editor, combo )
+{
+  var tbobj = editor._toolbarObjects[ combo.id ].element;
+  var parent = editor.getParentElement();
+  while ( parent && !/^ol$/i.test( parent.tagName ) )
+    parent = parent.parentNode;
+  if (!parent)
+  {
+    tbobj.selectedIndex = 0;
+    return;
+  }
+  var type = parent.style.listStyleType;
+  if (!type)
+  {
+    tbobj.selectedIndex = 0;
+  }
+  else
+  {
+    for ( var i = tbobj.firstChild; i; i = i.nextSibling )
+    {
+      i.selected = (type.indexOf(i.value) != -1);
+    }
+  }
+};
+
+ListType.prototype.onUpdateToolbar = function()
+{
+  if ( this.editor.config.ListType.mode == 'toolbar' ) return ;
+  var parent = this.editor.getParentElement();
+  while ( parent && !/^[o|u]l$/i.test( parent.tagName ) )
+    parent = parent.parentNode;
+  if (parent && /^[o|u]l$/i.test( parent.tagName ) )
+  {
+    this.showPanel( parent );
+  }
+  else if (this.editor._ListType.style.display != 'none')
+  {
+    this.editor.hidePanel( this.editor._ListType );
+  }
+};
+
+ListType.prototype.createImage = function( listStyleType )
+{
+  var self = this;
+  var editor = this.editor;
+  var a = document.createElement( 'a' );
+  a.href = 'javascript:void(0)';
+  HTMLArea._addClass( a, listStyleType );
+  HTMLArea._addEvent( a, "click", function ()
+    {
+      var parent = editor._ListType.currentListTypeParent;
+      parent.style.listStyleType = listStyleType;
+      self.showActive( parent );
+      return false;
+    }
+  );
+  return a;
+};
+
+ListType.prototype.showActive = function( parent )
+{
+  var activeDiv = document.getElementById( ( parent.tagName.toLowerCase() == 'ul' )? 'LTdivUL':'LTdivOL' );
+  document.getElementById( 'LTdivUL' ).style.display = 'none';
+  document.getElementById( 'LTdivOL' ).style.display = 'none';
+  activeDiv.style.display = 'block';
+  var defaultType = parent.style.listStyleType;
+  if ( '' == defaultType ) defaultType = ( parent.tagName.toLowerCase() == 'ul' )? 'disc':'decimal';
+  for ( var i=0; i<activeDiv.childNodes.length; i++ )
+  {
+    var elt = activeDiv.childNodes[i];
+    if ( HTMLArea._hasClass( elt, defaultType ) )
+    {
+      HTMLArea._addClass( elt, 'active' );
+    }
+    else
+    {
+      HTMLArea._removeClass( elt, 'active' );
+    }
+  }
+};
+
+ListType.prototype.showPanel = function( parent )
+{
+  this.editor._ListType.currentListTypeParent = parent;
+  this.showActive(parent);
+  this.editor.showPanel( this.editor._ListType );
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/img/note.gif
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/img/note.gif?view=auto&rev=454197
==============================================================================
Binary file - no diff available.

Propchange: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/img/note.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/de.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/de.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/de.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/de.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,21 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8 | ISO-8859-1
+// Sponsored by http://www.systemconcept.de
+// Author: Holger Hees, <hhees@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 GUIDO Music Notation": "Einfügung einer GUIDO Musik-Tonfolge",
+  "Guido code": "Guido code",
+  "Options": "Einstellungen",
+  "Format": "Format",
+  "Image in applet": "Bild im Applet",
+  "Zoom": "Zoom",
+  "MIDI File": "MIDI Datei",
+  "Image Preview": "Bild Voransicht",
+  "Source Code": "Quell-Code",
+  "Preview": "Voransicht",
+  "Add MIDI link to allow students to hear the music": "MIDI-Link hinzufügen um Studenten das hören der Musik zu ermöglichen",
+  "Add GUIDO Code in a textbox on the page": "GUIDO Code in einer Textbox auf der Seite anzeigen"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/fr.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/fr.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/fr.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/fr.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,16 @@
+// I18N constants
+// LANG: "fr", ENCODING: UTF-8
+{
+  "Insert GUIDO Music Notation": "Insérer une partition musicale GUIDO",
+  "Guido code": "Code Guido",
+  "Options": "Options",
+  "Format": "Format",
+  "Image in applet": "Image dans une applet",
+  "Zoom": "Zoom",
+  "MIDI File": "Fichier MIDI",
+  "Image Preview": "Aperçu de l'image",
+  "Source Code": "Code source",
+  "Preview": "Aperçu ",
+  "Add MIDI link to allow students to hear the music": "Ajouter un lien MIDI pour permettre aux étudiants d'écouter la partition",
+  "Add GUIDO Code in a textbox on the page": "Ajouter le code source GUIDO dans un cadre"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/nb.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/nb.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/nb.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/nb.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,17 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Insert GUIDO Music Notation": "Sett inn GUIDO-noter",
+  "Guido code": "GUIDO-kode",
+  "Options": "Muligheter",
+  "Format": "Format",
+  "Image in applet": "Bilde i applet",
+  "Zoom": "Forstørr",
+  "MIDI File": "MIDIfil",
+  "Image Preview": "Bilde forhåndsvisning",
+  "Source Code": "Kildekode",
+  "Preview": "Preview",
+  "Add MIDI link to allow students to hear the music": "Legg til MIDI-link for at studenter kan høre musikken",
+  "Add GUIDO Code in a textbox on the page": "Sett inn GUIDO-kode i et tekstfelt på siden"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/no.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/no.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/no.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/lang/no.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,17 @@
+// I18N constants
+// LANG: "no", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Insert GUIDO Music Notation": "Sett inn GUIDO-noter",
+  "Guido code": "GUIDO-kode",
+  "Options": "Muligheter",
+  "Format": "Format",
+  "Image in applet": "Bilde i applet",
+  "Zoom": "Forstørr",
+  "MIDI File": "MIDIfil",
+  "Image Preview": "Bilde forhåndsvisning",
+  "Source Code": "Kildekode",
+  "Preview": "Preview",
+  "Add MIDI link to allow students to hear the music": "Legg til MIDI-link for at studenter kan høre musikken",
+  "Add GUIDO Code in a textbox on the page": "Sett inn GUIDO-kode i et tekstfelt på siden"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/note-server.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/note-server.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/note-server.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/note-server.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,208 @@
+// GUIDO Music Notation plugin for HTMLArea
+// Implementation by Richard Christophe
+// Original Author - Richard Christophe cvrichard@infonie.fr
+//
+// Distributed under the same terms as HTMLArea itself.
+// This notice MUST stay intact for use (see license.txt).
+
+// this is a collection of JavaScript routines that
+// facilitate accessing the GUIDO NoteServer.
+//
+// These Functions can be used within WEB-Pages
+// examples can be found at
+// www.noteserver.org/javascript/index.html
+//
+
+function NoteServer(editor) {
+  this.editor = editor;
+  var cfg = editor.config;
+  var self = this;
+
+  cfg.registerButton({
+                id       : "insertscore",
+                tooltip  : this._lc("Insert GUIDO Music Notation"),
+                image    : editor.imgURL("note.gif", "NoteServer"),
+                textMode : false,
+                action   : function(editor) {
+                                self.buttonPress(editor);
+                           }
+            });
+	cfg.addToolbarElement("insertscore", "insertimage", 1);
+}
+
+NoteServer._pluginInfo = {
+  name          : "NoteServer",
+  version       : "1.1",
+  developer     : "Richard Christophe",
+  developer_url : "http://piano-go.chez.tiscali.fr/guido.html",
+  c_owner       : "Richard Christophe",
+  sponsor       : "",
+  sponsor_url   : "",
+  license       : "htmlArea"
+};
+
+NoteServer.prototype._lc = function(string) {
+  return HTMLArea._lc(string, 'NoteServer');
+};
+
+NoteServer.prototype.buttonPress = function(editor) {
+  editor._popupDialog( "plugin://NoteServer/codenote", function(param) {
+    if (!param) {	// user must have pressed Cancel
+      return false;
+    } else IncludeGuido(editor,param);
+  }, null);
+};
+
+// this variable is the address of the noteserver
+// can be set to another address (local address if availalble) 
+
+// var noteserveraddress = "www.noteserver.org";
+// var htmlbase = "";
+
+// alternative: specify server-adress directly:
+var noteserveraddress = "clef.cs.ubc.ca"; //"www.noteserver.org"
+var htmlbase = "/salieri/nview";
+
+
+// this is the version of the NoteServer used.
+// one of "0_4", "0_5", "0_6", or "0_7", or ""
+// "" means: take the current version
+// var versionstring = "0_7";
+var versionstring = "";
+
+// this functions takes a GMN-string and returns the URL
+// that converts it into a GIF-file
+function GetGIFURL(gmnstring,zoom,pagenum) {
+  gmnstring = escape(gmnstring);
+  gmnstring = gmnstring.replace(/\//g,"%2F");
+
+  if (!zoom) {
+    zoom = "1.0";
+  }
+  if (!pagenum) {
+    pagenum = "1";
+  }
+
+  var string = "http://" + noteserveraddress +
+               "/scripts/salieri" + versionstring +
+               "/gifserv.pl?" +
+               "pagewidth=21" +
+               "&pageheight=29.7" +
+               "&zoomfactor=" + zoom +
+               "&pagesizeadjust=yes" +
+               "&outputformat=gif87" +
+               "&pagenum=" + pagenum +
+               "&gmndata=" + gmnstring;
+
+  //	document.write(string);
+  return string;
+}
+
+// this functions takes a GMN-string and returns the URL
+// that converts it into a MIDI-file
+function GetMIDIURL(gmnstring) {
+  gmnstring = escape(gmnstring);
+  gmnstring = gmnstring.replace(/\//g,"%2F");
+
+  var string = "http://" + noteserveraddress +
+               "/scripts/salieri" + versionstring + 
+               "/midserv.pl?" +
+               "gmndata=" + gmnstring;
+
+  return string;
+}
+
+// this functions takes a GMN-string and returns the URL
+// that insert Applet
+function GetAPPLETURL(gmnstring,zoom) {
+  gmnstring = escape(gmnstring);
+  gmnstring = gmnstring.replace(/\//g,"%2F");
+
+  var string = '<applet ' +
+               'code="NoteServerApplet" ' +
+               'codebase="http://' +
+               noteserveraddress + htmlbase + '/java" ' +
+               ' width=700 height=300>' +
+               '<param name=server value="' +
+               noteserveraddress + '">' +
+               '<param name=serverVersion value="' +
+               versionstring + '">' +
+               '<param name=zoomFactor value="' +
+               zoom + '">' +
+               '<param name=pageWidth value="21">' +
+               '<param name=pageHeight value="29.7">' +
+               '<param name=gmn value="' +
+               gmnstring + '">' +
+               '</applet>';
+
+  return string;
+}
+
+// This function takes a GUIDO string, accesses the
+// NoteServer (address specified as a constant above)
+// and then embeds the GIF-Image in the document.
+
+
+function IncludeGuido(editor,param) {
+  // this  holds the URL for retrieving the picture ...
+
+  if (!param["f_zoom"])
+    zoom = "";
+  //if (!pagenum)
+   // pagenum = "";
+
+  var string = GetGIFURL(param["f_code"],param["f_zoom"],"");
+  var stringmidi = GetMIDIURL(param["f_code"]);
+  var string2 = "<br>";
+
+if (param["f_applet"] == false ){
+  if (((navigator.userAgent.toLowerCase().indexOf("msie") != -1)
+    && (navigator.userAgent.toLowerCase().indexOf("opera") == -1))) {
+    editor.focusEditor();
+    editor.insertHTML("<img src=" + string + ">");
+  }	else {
+    img = new Image();
+    img.src = string;
+
+    var doc = editor._doc;
+    var sel = editor._getSelection();
+    var range = editor._createRange(sel);
+    editor._doc.execCommand("insertimage", false, img.src);
+  }
+} else {
+  var stringapplet = GetAPPLETURL(param["f_code"],param["f_zoom"]);
+  string2 = string2 + stringapplet + "<br>";
+}
+
+// To test code source in textarea
+//if (param["f_affcode"]) string2 = string2 + HTMLArea._lc("Source Code","NoteServer") + " :" + '<br> <textarea  cols=60 rows=10 style = "background: #FFFFE6">' +  param["f_code"] + '</textarea> <br>';
+
+if (param["f_affcode"]) string2 = string2 + HTMLArea._lc("GUIDO Code","NoteServer") + " : "  + param["f_code"] + "<br>";
+if (param["f_midi"]) string2 = string2 + "<a href=" + stringmidi + ">" + HTMLArea._lc("MIDI File","NoteServer") + "</a> <br>";
+
+  editor.focusEditor();
+  editor.insertHTML(string2);
+
+    //var html = linktext.link(stringmidi);
+    //editor.insertHTML(html);
+}
+
+// this routine includes the applet-definition 
+function IncludeGuidoStringAsApplet(editor, gmnstring, zoom) {
+  gmnstring = escape(gmnstring);
+  gmnstring = gmnstring.replace(/\//g,"%2F");
+
+  var string = '<applet ' + 
+               'codebase="http://' + noteserveraddress + htmlbase + '/java"\n' +
+               'code="NoteServerApplet" width=480 height=230>' +
+               "<PARAM NAME=server VALUE='" + noteserveraddress + "'>" +
+               "<PARAM NAME=serverVersion VALUE='" + versionstring + "'>" +
+               "<PARAM NAME=zoomFactor VALUE='"	+ zoom + "'>" +
+               '<param name=pageWidth value="21">' +
+               '<param name=pageHeight value="29.7">' +
+               "<PARAM NAME=gmn VALUE='" + gmnstring + "'>" +
+               "</applet>";
+  alert(string);
+  editor.focusEditor();
+  editor.insertHTML(string);
+}
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/popups/codenote.html
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/popups/codenote.html?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/popups/codenote.html (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/NoteServer/popups/codenote.html Sun Oct  8 12:53:13 2006
@@ -0,0 +1,162 @@
+<html>
+
+<head>
+
+<title>Insert GUIDO Music Notation</title>
+<link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
+<script type="text/javascript"  src="../note-server.js"></script>
+<script type="text/javascript" src="../../../popups/popup.js"></script>
+
+<script type="text/javascript">
+
+window.resizeTo(500, 200);
+
+NoteServer = window.opener.NoteServer;
+
+var editor = null;
+function Init() {
+  __dlg_translate('NoteServer');
+  __dlg_init();
+
+//   var param = window.dialogArguments;
+//  if (param) {
+//    document.getElementById("f_midi").value = param["f_midi"];
+//    document.getElementById("f_code").value = param["f_code"];
+//    document.getElementById("f_zoom").value = param["f_zoom"];
+//    document.getElementById("f_affcode").value = param["f_affcode"];
+//    document.getElementById("f_applet").value = param["f_applet"];
+//  }
+//  editor = param.editor;
+  document.getElementById("f_code").focus();
+//  document.getElementById("f_code").select();
+}
+
+function onOK() {
+  var f_code = document.getElementById("f_code");
+  if (!f_code.value) {
+    alert("You have to enter GUIDO code");
+    f_code.focus();
+    return false;
+}
+
+  // pass data back to the calling window
+
+  var param = {};
+  param["f_code"] = f_code.value;
+  var f_zoom = document.getElementById("f_zoom");
+  var z = "1.0";
+  if (f_zoom.value == "1.0" || f_zoom.value == "100%") z = 1.0;
+  else if (f_zoom.value == "0.8" || f_zoom.value == "80%") z = 0.8;
+  else if (f_zoom.value == "1.2" || f_zoom.value == "120%") z = 1.2;
+  else if (f_zoom.value == "1.5" || f_zoom.value == "150%") z = 1.5;
+
+  param["f_zoom"] = z;
+
+  param["f_midi"] = document.getElementById("f_midi").checked;
+
+  param["f_affcode"] = document.getElementById("f_affcode").checked;
+  param["f_applet"] = document.getElementById("f_applet").checked;
+
+  __dlg_close(param);
+  return false;
+}
+
+function onCancel() {
+  __dlg_close(null);
+  return false;
+
+}
+
+
+function message(){
+if (document.getElementById("f_applet").checked)
+  if (!((navigator.userAgent.toLowerCase().indexOf("msie") != -1)
+    && (navigator.userAgent.toLowerCase().indexOf("opera") == -1))) {
+    alert("With Mozilla, the applet will not be visible in editor, but only in Web page after submitting.");
+  }
+}
+
+function onPreview() {
+
+  var f_code = document.getElementById("f_code");
+  var f_zoom = document.getElementById("f_zoom");
+
+var z = "1.0";
+if (f_zoom.value == "1.0" || f_zoom.value == "100%") z = 1.0;
+else if (f_zoom.value == "0.8" || f_zoom.value == "80%") z = 0.8;
+else if (f_zoom.value == "1.2" || f_zoom.value == "120%") z = 1.2;
+else if (f_zoom.value == "1.5" || f_zoom.value == "150%") z = 1.5;
+
+  var url = GetGIFURL(f_code.value,z,"");
+  if (!f_code.value) {
+    alert("You have to enter GUIDO code");
+    f_code.focus();
+    return false;
+ }
+
+
+  window.ipreview.location.replace(url);
+
+  return false;
+}
+
+</script>
+</head>
+
+<body class="Dialog" onload="Init()">
+<div class="title">Insert GUIDO Music Notation</div>
+
+<span>Guido code</span> :
+  <br><textarea rows="7" id="f_code" cols="55"></textarea><br>
+
+<div class="space"></div>
+<fieldset style="float: left; margin-left: 5px;">
+<legend>Options</legend>
+  <input type="checkbox" id="f_midi" value="ON"> <span>Add MIDI link to allow students to hear the music</span>
+  <div class="space"></div>
+  <input type="checkbox" id="f_affcode" value="ON"> <span>Add GUIDO Code in a textbox on the page</span>
+  <div class="space"></div>
+</fieldset>
+
+<fieldset style="float: right; margin-left: 5px;">
+<legend>Format</legend>
+  <input type="checkbox" id="f_applet" value="ON" onclick="message();" > <span>Image in applet</span>
+  <div class="space"></div>
+  <span>Zoom</span> :
+  <select size="1" id="f_zoom" title="Zoom :">
+    <option value="0.8">80%</option>
+    <option selected="1.0">100%</option>
+    <option value="1.2">120%</option>
+    <option value="1.5">150%</option>
+  </select>
+  <div class="space"></div>
+</fieldset>
+
+<br clear="all" />
+
+<table width="100%" style="margin-bottom: 0.2em">
+ <tr>
+  <td valign="bottom">
+    <span>Image Preview</span>:<br />
+    <iframe name="ipreview" id="ipreview" frameborder="0" style="border : 1px solid gray;" height="200" width="350" src=""></iframe>
+  </td>
+
+  <td valign="bottom" style="text-align: right">
+    <button type="button" name="preview" onclick="return onPreview();"
+      title="Preview the image in a new window">Preview</button><br>
+    <button type="button" name="ok" onclick="return onOK();"><span>OK</span></button><br>
+    <button type="button" name="cancel" onclick="return onCancel();"><span>Cancel</span></button>
+  </td>
+ </tr>
+ <tr>
+  <td colspan="2">
+   <p>Sample Guido Codes:</p>
+   <p><a href="http://piano-go.chez.tiscali.fr/rachmaninoff.gmn" target="_blank">Code Sample 1</a> or type [ do re mi fa sol la si ] | <a href="http://www.informatik.tu-darmstadt.de/AFS/SALIERI/guido/demos.html" target="_blank">Code Sample 2</a></p>
+   <p>Resources: </p>
+   <p>The Guido Specification (<a href="http://piano-go.chez.tiscali.fr/GUIDO-Music%20Notation%20Format.pdf" target="_blank">PDF)</a> | <a href="http://www.salieri.org/guido/doc.html" target="_blank">(HTML)</a></p>
+   <p><a href="http://www.salieri.org/guido/" target="_blank">GUIDO Music Notation Format Site</a> | <a href="http://www.noteserver.org/" target="_blank">Guido Note Server</a> | <a href="http://sourceforge.net/projects/guidolib/" target="_blank">SourceForge Homepage</a></p>
+  </td>
+ </tr>
+</table>
+</body>
+</html>
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/img/ed_paste_text.gif
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/img/ed_paste_text.gif?view=auto&rev=454197
==============================================================================
Binary file - no diff available.

Propchange: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/img/ed_paste_text.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/de.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/de.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/de.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/de.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,5 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+{
+  "Paste as Plain Text": "unformatierten Text einfügen"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/es.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/es.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/es.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/es.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,6 @@
+// I18N constants
+
+// LANG: "es", ENCODING: UTF-8
+{
+	"Paste as Plain Text"       			: "Paste as Plain Text"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/fr.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/fr.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/fr.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/fr.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,5 @@
+// I18N constants
+// LANG: "fr", ENCODING: UTF-8
+{
+  "Paste as Plain Text": "Copier comme texte pur"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/nb.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/nb.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/nb.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/nb.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,6 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Paste as Plain Text": "Lim inn som ren tekst"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/no.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/no.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/no.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/no.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,6 @@
+// I18N constants
+// LANG: "no", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Paste as Plain Text": "Lim inn som ren tekst"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/pl.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/pl.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/pl.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/lang/pl.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,6 @@
+// I18N constants
+// LANG: "pl", ENCODING: UTF-8
+// translated: Krzysztof Kotowicz, http://www.eskot.krakow.pl/portfolio/, koto@webworkers.pl
+{
+  "Paste as Plain Text": "Wklej jako czysty tekst"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/paste-text.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/paste-text.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/paste-text.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/paste-text.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,54 @@
+// Paste Plain Text plugin for HTMLArea
+
+// Distributed under the same terms as HTMLArea itself.
+// This notice MUST stay intact for use (see license.txt).
+
+function PasteText(editor) {
+  this.editor = editor;
+	var cfg = editor.config;
+	var self = this;
+        
+	cfg.registerButton({
+                id       : "pastetext",
+                tooltip  : this._lc("Paste as Plain Text"),
+                image    : editor.imgURL("ed_paste_text.gif", "PasteText"),
+                textMode : false,
+                action   : function(editor) {
+                             self.buttonPress(editor);
+                           }
+            });
+
+  cfg.addToolbarElement("pastetext", ["paste", "killword"], 1);
+
+}
+
+PasteText._pluginInfo = {
+	name          : "PasteText",
+	version       : "1.1",
+	developer     : "Michael Harris",
+	developer_url : "http://www.jonesadvisorygroup.com",
+	c_owner       : "Jones Advisory Group",
+	sponsor       : "Jones International University",
+	sponsor_url   : "http://www.jonesinternational.edu",
+	license       : "htmlArea"
+};
+
+PasteText.prototype._lc = function(string) {
+    return HTMLArea._lc(string, 'PasteText');
+};
+
+PasteText.prototype.buttonPress = function(editor) {
+
+	outparam = {
+		
+	}; 
+	html=" ";
+	editor._popupDialog( "plugin://PasteText/paste_text", function( html ) {
+		html = html.replace(/</g, "&lt;");
+  		html = html.replace(/>/g, "&gt;");
+		html = html.replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;");
+		html = html.replace(/\n/g,"</p><p>");
+		html="<p>"+html;
+		editor.insertHTML(html);
+	}, outparam);
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/popups/paste_text.html
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/popups/paste_text.html?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/popups/paste_text.html (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/PasteText/popups/paste_text.html Sun Oct  8 12:53:13 2006
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+  <title>Paste Text</title>
+  <link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
+  <script type="text/javascript" src="../../../popups/popup.js"></script>
+<script language="javascript">
+
+function _CloseOnEsc(event) {
+  if ( event.keyCode == 27 ) {
+    window.close();
+    return;
+  }
+}
+
+function Init() {
+  __dlg_translate("PasteText");
+  __dlg_init();
+  window.resizeTo(600, 450);
+  var param = window.dialogArguments;
+  document.getElementById("SCREEN").focus();
+}
+
+function onCancel() {
+  __dlg_close( null );
+  return false;
+}
+
+function onOK() {
+  var ret = document.getElementById("SCREEN").value;
+  __dlg_close( ret );
+}
+</script>
+</head>
+
+<body class="dialog" onload="Init();">
+<div class="title">Paste as Plain Text</div>
+<textarea name="SCREEN" id="SCREEN" cols=22 rows=5 style="width: 100%; height: 315px; margin-top: 8px; margin-bottom: 4px; font-family: monospace; font-size: 11px;"></textarea>
+<div id="buttons">
+    <button type="submit" name="ok" onclick="return onOK();">OK</button>
+    <button type="button" name="cancel" onclick="return onCancel();">Cancel</button>
+</div>
+</body>
+</html>
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/img/ed_quicktag.gif
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/img/ed_quicktag.gif?view=auto&rev=454197
==============================================================================
Binary file - no diff available.

Propchange: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/img/ed_quicktag.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/de.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/de.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/de.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/de.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,16 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+{ 
+  "Quick Tag Editor": "Quick TAG Editor",
+  "Enter the TAG you want to insert": "Enter the TAG you want to insert",
+  "You have to select some text": "You have to select some text",
+  "There are some unclosed quote": "There are some unclosed quote",
+  "This attribute already exists in the TAG": "This attribute already exists in the TAG",
+  "No CSS class avaiable": "No CSS classes avaiable",
+  "OPTIONS": "OPTIONS",
+  "ATTRIBUTES": "ATTRIBUTES",
+  "TAGs": "TAGs",
+  "Colors": "Colors",
+  "Ok": "Ok",
+  "Cancel": "Cancel"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/fr.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/fr.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/fr.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/fr.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,16 @@
+// I18N constants
+// LANG: "fr", ENCODING: UTF-8
+{ 
+  "Quick Tag Editor": "Editeur rapide de balise",
+  "Enter the TAG you want to insert": "Entrez la balise que vous voulez insérer",
+  "You have to select some text": "Vous devez sélectionner du texte",
+  "There are some unclosed quote": "Il y a des apostrophes mal fermées",
+  "This attribute already exists in the TAG": "Cet attribute existe déjà sur cette balise",
+  "No CSS class avaiable": "Pas de classe CSS accessible",
+  "OPTIONS": "OPTIONS",
+  "ATTRIBUTES": "ATTRIBUTS",
+  "TAGs": "Balises",
+  "Colors": "Couleurs",
+  "Ok": "OK",
+  "Cancel": "Annuler"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/nb.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/nb.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/nb.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/nb.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,17 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{ 
+  "Quick Tag Editor": "Kjapp TAGG-Editor",
+  "Enter the TAG you want to insert": "Skriv inn taggen du vil ønsker å sette inn",
+  "You have to select some text": "Du må velge noe tekst",
+  "There are some unclosed quote": "Det mangler et hermetegn",
+  "This attribute already exists in the TAG": "Denne attributten eksisterer allerede i taggen",
+  "No CSS class avaiable": "Ingen CSS klasse tilgjengelig",
+  "OPTIONS": "EGENSKAPER",
+  "ATTRIBUTES": "ATTRIBUTTER",
+  "TAGs": "TAGGer",
+  "Colors": "Farger",
+  "Ok": "OK",
+  "Cancel": "Avbryt"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/no.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/no.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/no.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/no.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,17 @@
+// I18N constants
+// LANG: "no", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{ 
+  "Quick Tag Editor": "Kjapp TAGG-Editor",
+  "Enter the TAG you want to insert": "Skriv inn taggen du vil ønsker å sette inn",
+  "You have to select some text": "Du må velge noe tekst",
+  "There are some unclosed quote": "Det mangler et hermetegn",
+  "This attribute already exists in the TAG": "Denne attributten eksisterer allerede i taggen",
+  "No CSS class avaiable": "Ingen CSS klasse tilgjengelig",
+  "OPTIONS": "EGENSKAPER",
+  "ATTRIBUTES": "ATTRIBUTTER",
+  "TAGs": "TAGGer",
+  "Colors": "Farger",
+  "Ok": "OK",
+  "Cancel": "Avbryt"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/pl.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/pl.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/pl.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/pl.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,17 @@
+// I18N constants
+// LANG: "pl", ENCODING: UTF-8
+// translated: Krzysztof Kotowicz, http://www.eskot.krakow.pl/portfolio/, koto@webworkers.pl
+{ 
+  "Quick Tag Editor": "Edytor Quick Tag",
+  "Enter the TAG you want to insert": "Podaj TAG, który chcesz wstawić",
+  "You have to select some text": "Musisz zaznaczyć tekst.",
+  "There are some unclosed quote": "Są jakieś niezamknięte cudzysłowia",
+  "This attribute already exists in the TAG": "TAG posiada już ten atrybut",
+  "No CSS class avaiable": "Brak dostępnych klas CSS",
+  "OPTIONS": "OPCJE",
+  "ATTRIBUTES": "ATRYBUTY",
+  "TAGs": "TAGi",
+  "Colors": "Kolory",
+  "Ok": "Ok",
+  "Cancel": "Anuluj"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/pt_br.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/pt_br.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/pt_br.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/lang/pt_br.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,16 @@
+// I18N constants
+// LANG: "pt_br", ENCODING: UTF-8
+{ 
+  "Quick Tag Editor": "Editor Rápido",
+  "Enter the TAG you want to insert": "Edite a TAG que deseja inserir",
+  "You have to select some text": "É preciso selecionar algum texto",
+  "No CSS class avaiable": "Não há classes CSS",
+  "There are some unclosed quote...": "Há uma ou mais aspas sem fechamento",
+  "This attribute already exists in the TAG": "Esse atributo já existe na TAG",
+  "OPTIONS": "OPÇÕES",
+  "ATTRIBUTES": "ATRIBUTOS",
+  "TAGs": "TAGs",
+  "Colors": "Cores",
+  "Ok": "Ok",
+  "Cancel": "Cancelar"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/popups/quicktag.html
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/popups/quicktag.html?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/popups/quicktag.html (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/popups/quicktag.html Sun Oct  8 12:53:13 2006
@@ -0,0 +1,356 @@
+<html>
+<head>
+<title>Quick Tag Editor</title>
+<script type="text/javascript" src="../tag-lib.js"></script>
+<script type="text/javascript" src="../../../popups/popup.js"></script>
+<script type="text/javascript">
+
+window.resizeTo(400, 180);
+var QuickTag = window.opener.QuickTag;
+var curTag = 'none';
+var curTagOpt = false;
+var CSSEdit = false;
+var editor = null;
+
+function Init() {
+  __dlg_translate("QuickTag");
+  __dlg_init();
+
+  var param = window.dialogArguments;
+  editor = param['editor'];
+  var selectext = param['selectedText']; // sem uso...
+
+  if(!document.all) window.resizeTo(400, 180); // i don't undertand why...
+
+  createDropdown("tags");
+
+  var to = document.getElementById('tagopen');
+  if (document.all) 
+    to.attachEvent("onkeypress", function(e) { choice_dropdown(e) });
+  else 
+    to.addEventListener("keypress", function(e) { choice_dropdown(e) }, true);
+  to.focus();
+
+  document.getElementById('bt_colors').style.display = 'none';
+  document.body.onkeypress = __dlg_key_press;
+}
+
+function onCancel() {
+  __dlg_close(null);
+  return false;
+}
+
+function quoteTest(val) {
+  var er = /^\w+\s*(\w+=\"[^\"]*\"\s*|\w+=\'[^\']*\'\s*)*$/;
+  return er.test(val);
+}
+
+function onOK() {
+  var el = document.getElementById('tagopen');
+  if(!el.value) {
+  alert(HTMLArea._lc("Enter the TAG you want to insert", "QuickTag"));
+  el.focus();
+  return false;
+  }
+  if(!quoteTest(el.value)) {
+    alert(HTMLArea._lc("There are some unclosed quote", "QuickTag"));
+    el.focus();
+    el.select();
+    return false;
+  }
+  var param = {};
+  var cleanTO = document.getElementById('tagopen').value.replace(/(<|>)/g,"");
+  param.tagopen = "<"+cleanTO+">";
+  param.tagclose = param.tagopen.replace(/^<(\w+) ?.*>/,"</$1>");
+
+  var subtag = subTagLib[curTag];
+  if(typeof subtag == 'object') {
+    param.tagopen = param.tagopen+subtag.op;
+    param.tagclose = subtag.cl+param.tagclose;
+  }
+
+  __dlg_close(param);
+  return false;
+}
+
+function __dlg_key_press(ev) {
+  ev || (ev = window.event);
+  switch(ev.keyCode) {
+    case 13:
+    document.getElementById('bt_ok').click();
+      break;
+    case 27:
+    __dlg_close();
+    return false;
+  }
+  return true;
+}
+
+function selchange() {
+  var toadd = document.getElementById('selectag').value;
+  var oldval = document.getElementById('tagopen').value;
+  var text = (oldval+toadd).replace(/^\s*(.+)\s*$/,"$1");
+  var atrib = /(\w+)=\"$/.test(toadd) ? toadd.replace(/(\w+)=\"$/, "$1") : null;
+  var showcolors = (/color\: ?$/.test(toadd)) ? true : false;
+  var noCSSclasses = false;
+  var obj = null;
+  curTag = text.replace(/(^\w+) ?.*$/, "$1");
+  curTagOpt = (tagLib[curTag] == true);
+
+  if(atrib) {
+    var atrer = eval('/'+atrib+'=/ig');
+    if(atrer.test(oldval) && !(/[^=]\"$/.test(toadd))) {
+      alert(HTMLArea._lc("This attribute already exists in the TAG", "QuickTag"));
+      return false;
+    }
+
+    switch(atrib) {
+    case 'style':
+      CSSEdit = true;
+      break;
+    case 'class':
+      if(captureClasses() == 0) noCSSclasses = true;
+      break;
+    case 'color': case 'bgcolor': case 'bordercolor':
+    case 'bordercolorlight': case 'bordercolordark':
+      showcolors = true;
+      break;
+    }
+
+    if(curTagOpt == true)
+      obj = eval('opAtt_'+curTag+'["'+atrib+'"]');
+    else
+      obj = opAtt_all[atrib];
+  }
+  else if(!CSSEdit && (/(^\w+$|\"$)/.test(toadd))) {
+    obj = 'all';
+    if(curTagOpt == true) obj = curTag;
+    toadd += ' ';
+  }
+
+  if(CSSEdit && quoteTest(text))
+    CSSEdit = false;
+
+  if(showcolors)
+    document.getElementById('bt_colors').style.display = '';
+
+  if(obj)
+    createDropdown(obj);
+  else if(!CSSEdit)
+    document.getElementById('showselect').style.visibility = 'hidden';
+
+  if(noCSSclasses) {
+    document.getElementById('showselect').innerHTML = HTMLArea._lc("No CSS class avaiable", "QuickTag");
+    document.getElementById('showselect').style.visibility = 'visible';
+  }
+
+  addchanges();
+
+  function addchanges() {
+    document.getElementById('tagopen').focus();
+    document.getElementById('tagopen').value += toadd;
+  }
+}
+
+function captureClasses() {
+  var cont = 0;
+  // If there is no '<HTML>' in the HTMLArea content, when using
+  // styleSheets[..].rule, IE generates an error.
+  // In this case, we lost the classes in external CSS files.
+  // If FullPage is loaded, there is no problem.
+  if(!(/<\s*html\s*>/i.test(editor.getHTML())) && document.all) {
+    var styles = editor._doc.getElementsByTagName("style");
+    for(var i in styles) {
+      var cont = styles[i].innerHTML;
+      if(typeof cont != 'undefined') {
+        var cls = cont.match(/\.\w+/ig,"");
+        for(j in cls) if(/^\.\w+$/.test(cls[j])) {
+          var classname = cls[j].replace(/\./,"")+'"';
+          opAtt_all['class'][cls[j]] = classname;
+          cont++;
+        }
+      }
+    }
+    return cont;
+  }
+
+  var styleSheet = null;
+  var styles = editor._doc.styleSheets;
+
+  for (var i = 0; i < styles.length; i++) {
+    styleSheet = styles[i];
+    if(document.all)
+      var _rules = styleSheet.rules;
+    else
+      var _rules = styleSheet.cssRules;
+    for (var j = 0; j < _rules.length; j++) {
+      rule = _rules[j];
+      if(/^\.\w+$/.test(rule.selectorText)) {
+        var classname = rule.selectorText.replace(/\./,"")+'"';
+        opAtt_all['class'][rule.selectorText] = classname;
+        cont++;
+      }
+    }
+  }
+  return cont;
+}
+
+function choice_dropdown(e) {
+  if (document.all) Key = e.keyCode;
+  else Key = e.charCode;
+
+  if(Key != 32) return;
+
+  var text = document.getElementById('tagopen').value.replace(/^\s*([^\s]+)\s*$/,"$1");
+
+  if(CSSEdit && quoteTest(text)) CSSEdit = false;
+  if(CSSEdit) return;
+
+  if(curTag == 'none') {
+    curTag = text.replace(/(^\w+) ?.*$/, "$1");
+    curTagOpt = tagLib[curTag];
+  }
+
+  if(!/\w/.test(text)) {
+    document.getElementById('tagopen').value = '';
+    createDropdown("tags");
+    return;
+  }
+
+  var att = 'all';
+  if(curTagOpt == true)
+    att = curTag;
+
+  createDropdown(att);
+}
+
+function createDropdown(type) {
+  var _div = document.getElementById('showselect');
+  while(_div.hasChildNodes())
+    _div.removeChild(_div.firstChild);
+  _div.style.visibility = 'visible';
+
+  var _sel = document.createElement("select");
+  _sel.id = "selectag";
+  _sel.onchange = function() { selchange(); };
+
+  if(typeof type == 'object') {
+    var obj = type;
+    forObj(HTMLArea._lc("OPTIONS", "QuickTag"));
+    _div.appendChild(_sel);
+    return;
+  }
+
+  if(type == 'tags') {
+    var obj = allTags;
+    forObj(HTMLArea._lc("TAGs", "QuickTag"));
+    _div.appendChild(_sel);
+    return;
+  }
+
+  type = type.replace(/^h[1-6]$/,"h");
+  var topt = eval('opTag_'+type);
+  if(typeof topt == 'object') 
+    var obj = topt;
+  else 
+    return;
+
+  forObj(HTMLArea._lc("ATTRIBUTES", "QuickTag"));
+  _div.appendChild(_sel);
+
+  function forObj(first) {
+    if(first) {
+      var _op = document.createElement("option");
+      _op.appendChild(document.createTextNode(first));
+      _sel.appendChild(_op);
+    }
+    for(i in obj) {
+      var opt = document.createElement("option");
+      opt.appendChild(document.createTextNode(i));
+      opt.value = obj[i];
+      _sel.appendChild(opt);
+    }
+  }
+}
+
+function colors() {
+  var colloc = window.location.toString().replace(/plugins.+$/,"") +
+               "popups/select_color.html";
+  window.open(colloc, 'colors', "toolbar=no,location=no,directories=no," +
+              "status=no,menubar=no,scrollbars=no,resizable=no,width=240,height=182");
+}
+
+// simulation of Dialog._return - select_color.html needs it.
+var Dialog = new Object();
+Dialog._return = function (val) {
+  if(val != null) {
+    if(CSSEdit)
+      val += '; ';
+    else
+      val += '"';
+    document.getElementById('tagopen').focus();
+    document.getElementById('tagopen').value += "#"+val;
+    document.getElementById('bt_colors').style.display = 'none';
+  }
+};
+</script>
+<style type="text/css">
+html, body {
+background: ButtonFace;
+color: ButtonText;
+font: 11px Tahoma,Verdana,sans-serif;
+margin: 0px;
+padding: 0px;
+border-width: 0px;
+}
+body { padding: 5px; }
+table { font: 11px Tahoma,Verdana,sans-serif; }
+select, input, button { font: 11px Tahoma,Verdana,sans-serif; }
+button { width: 70px; }
+.space { padding: 2px; }
+.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 {
+border-top: 1px solid #999;
+padding: 5px;
+text-align: right;
+height: 20px;
+}
+form { padding: 0px; margin: 0px; }
+</style>
+</head>
+  <body class="dialog" onload="Init()">
+<form action="" method="get">
+  <div class="title" style="width: 360px">Quick Tag Editor</div>
+  <div align="center">
+  <table border="0" width="370">
+    <tbody>
+      <tr>
+        <td colspan="2" align="center" style="padding: 3px; background-color: #e9e9e9;">
+        <strong style="font-size: 14px">&lt;</strong>
+        <input id="tagopen" type="text" style="background-color: #e9e9e9; width: 327px; border-width: 0px;">
+        <strong style="font-size: 14px">&gt;</strong>
+        </td>
+      </tr>
+    </tbody>
+  </table>
+  </div>
+<div class="space"></div>
+<div class="buttons">
+<button type="button" id="bt_colors" onclick="colors();">Colors</button>
+<button type="button" id="bt_ok" onclick="return onOK();">Ok</button>
+<button type="button" onclick="return onCancel();">Cancel</button>
+</div>
+<div id="showselect" style="position:absolute; left:7px; top:75px; width:150px; z-index:100; visibility: visible; height: 13px; color: red;">
+</div>
+</form>
+</body>
+</html>
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/quick-tag.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/quick-tag.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/quick-tag.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/quick-tag.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,53 @@
+/*---------------------------------------*\
+ Quick Tag Editor Plugin for HTMLArea-3.0
+ -----------------------------------------
+ author: Cau guanabara 
+ e-mail: caugb@ibest.com.br
+\*---------------------------------------*/
+
+function QuickTag(editor) {
+  var cfg = editor.config;
+  var self = this;
+
+  cfg.registerButton({
+	id       : "quickeditor",
+	tooltip  : this._lc("Quick Tag Editor"),
+	image    : editor.imgURL("ed_quicktag.gif", "QuickTag"), 
+	textMode : false,
+  action   : function(editor) { 
+               self.buttonPress(editor); 
+             }
+  });
+  cfg.addToolbarElement("quickeditor", "htmlmode", 1);  
+}
+
+QuickTag.prototype.buttonPress = function(editor) { 
+var self = this;
+var sel = editor.getSelectedHTML().replace(/(<[^>]*>|&nbsp;|\n|\r)/g,""); 
+var param = new Object();
+param.editor = editor;
+
+  if(/\w/.test(sel))
+    editor._popupDialog("plugin://QuickTag/quicktag", function(p) { self.setTag(editor, p); }, param);
+  else
+    alert(this._lc('You have to select some text'));
+};
+
+QuickTag.prototype.setTag = function(editor, param) {
+editor.surroundHTML(param.tagopen,param.tagclose);
+};
+
+QuickTag._pluginInfo = {
+name          : "QuickTag",
+version       : "1.0 - beta",
+developer     : "Cau Guanabara",
+developer_url : "mailto:caugb@ibest.com.br",
+c_owner       : "Cau Guanabara",
+sponsor       : "Independent production",
+sponsor_url   : "http://www.netflash.com.br/gb/HA3-rc1/examples/quick-tag.html",
+license       : "htmlArea"
+};
+
+QuickTag.prototype._lc = function(string) {
+    return HTMLArea._lc(string, 'QuickTag');
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/tag-lib.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/tag-lib.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/tag-lib.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/QuickTag/tag-lib.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,356 @@
+/*
+  TAG Library for QuickTag Plugin  
+  -------------------------------
+  
+  allTags = All tags that appears in the first dropdown ('TAGS') {'caption': 'value'}  
+  tagLib = The tags with options (just to check if current TAG have options) {'[TAG]': true}
+  subTagLib = Complements for some tags that needs it (TABLE) 
+    {'[TAG]': {'op': 'after tag open', 'cl': 'before tag close'}}
+  opTag_all = Common attributes to all TAGS {'caption': 'value'}  
+  opAtt_all = Options for the common attributes {'attribute': {'caption': 'value'}}
+  opTag_[TAG] = Attributes for [TAG] {'caption': 'value'}
+  opAtt_[TAG] = Options for the [TAG] attributes {'attribute': {'caption': 'value'}}
+  
+*/
+
+var allTags = {
+'a': 'a',
+'a (full)': 'a href="" target=""',
+'address': 'address',
+'b': 'b',
+'big': 'big',
+'blockquote': 'blockquote',
+'code': 'code',
+'div': 'div',
+'em': 'em',
+'fieldset': 'fieldset',
+'font': 'font',
+'font (full)': 'font face="" size="" color=""',
+'h1': 'h1',
+'h2': 'h2',
+'h3': 'h3',
+'h4': 'h4',
+'h5': 'h5',
+'h6': 'h6',
+'i': 'i',
+'legend': 'legend',
+'li': 'li',
+'ol': 'ol',
+'ul': 'ul',
+'p': 'p',
+'pre': 'pre',
+'small': 'small',
+'span': 'span',
+'strong': 'strong',
+'sub': 'sub',
+'sup': 'sup',
+'table': 'table'
+};
+
+// tags with options
+var tagLib =  {
+'a': true, 
+'div': true, 
+'font': true, 
+'h1': true,
+'h2': true,
+'h3': true,
+'h4': true,
+'h5': true,
+'h6': true,
+'p': true,
+'table': true
+};
+// tags that needs some complement
+var subTagLib = {'table': {'op': '<tbody><tr><td>',
+                           'cl': '</td></tr></tbody>'}
+};
+
+var opTag_a = {
+'href': 'href="',
+'name': 'name="',
+'target': 'target="'
+};
+var opAtt_a = {
+'href': {'http://': 'http://',
+         'https://': 'https://',
+         'ftp://': 'ftp://',
+         'mailto:': 'mailto:',
+         '#': '#"'},
+'target': {'_top': '_top"',
+           '_self': '_self"',
+           '_parent': '_parent"',
+           '_blank': '_blank"'}
+};
+
+var opTag_font = {
+'face': 'face="',
+'size': 'size="',
+'color': 'color="'
+};
+var opAtt_font = {
+'face': {'Verdana': 'Verdana"',
+         'Arial': 'Arial"',
+         'Tahoma': 'Tahoma"',
+         'Courier New': 'Courier New"',
+         'Times New Roman': 'Times New Roman"'},
+'size': {'1': '1"','2': '2"','3': '3"','4': '4"','5': '5"','6': '6"',
+         '+1': '+1"','+2': '+2"','+3': '+3"','+4': '+4"','+5': '+5"','+6': '+6"',
+         '-1': '-1"','-2': '-2"','-3': '-3"','-4': '-4"','-5': '-5"','-6': '-6"'}
+};
+
+var opTag_div = {
+'align': 'align="'
+};
+var opAtt_div = {
+'align': {'center': 'center"',
+          'left': 'left"',
+          'right': 'right"',
+          'justify': 'justify"'}
+};
+
+var opTag_h = {
+'align': 'align="'
+};
+var opAtt_h = {
+'align': {'center': 'center"',
+          'left': 'left"',
+          'right': 'right"',
+          'justify': 'justify"'}
+};
+
+var opTag_p = {
+'align': 'align="'
+};
+var opAtt_p = {
+'align': {'center': 'center"',
+          'left': 'left"',
+          'right': 'right"',
+          'justify': 'justify"'}
+};
+
+var opTag_table = {
+'align': 'align="',
+'width': 'width="',
+'height': 'height="',
+'cellpadding': 'cellpadding="',
+'cellspacing': 'cellspacing="',
+'background': 'background="',
+'bgcolor': 'bgcolor="',
+'border': 'border="',
+'bordercolor': 'bordercolor="',
+'bordercolorlight': 'bordercolorlight="',
+'bordercolordark': 'bordercolordark="'
+};
+var opAtt_table = {
+'align': {'center': 'center"',
+          'left': 'left"',
+          'right': 'right"'}
+};
+
+// for all tags 
+var opTag_all = {
+'class': 'class="',
+'dir': 'dir="',
+'id': 'id="',
+'lang': 'lang="',
+'onFocus': 'onFocus="',
+'onBlur': 'onBlur="',
+'onClick': 'onClick="',
+'onDblClick': 'onDblClick="',
+'onMouseDown': 'onMouseDown="',
+'onMouseUp': 'onMouseUp="',
+'onMouseOver': 'onMouseOver="',
+'onMouseMove': 'onMouseMove="',
+'onMouseOut': 'onMouseOut="',
+'onKeyPress': 'onKeyPress="',
+'onKeyDown': 'onKeyDown="',
+'onKeyUp': 'onKeyUp="',
+'style': 'style="',
+'title': 'title="'
+};
+var opAtt_all = {
+'class': {},
+'dir': {'rtl': 'rtl"','ltr': 'ltr"'},
+'lang': {'Afrikaans ': 'af"',
+         'Albanian ': 'sq"',
+         'Arabic ': 'ar"',
+         'Basque ': 'eu"',
+         'Breton ': 'br"',
+         'Bulgarian ': 'bg"',
+         'Belarusian ': 'be"',
+         'Catalan ': 'ca"',
+         'Chinese ': 'zh"',
+         'Croatian ': 'hr"',
+         'Czech ': 'cs"',
+         'Danish ': 'da"',
+         'Dutch ': 'nl"',
+         'English ': 'en"',
+         'Estonian ': 'et"',
+         'Faeroese ': 'fo"',
+         'Farsi ': 'fa"',
+         'Finnish ': 'fi"',
+         'French ': 'fr"',
+         'Gaelic ': 'gd"',
+         'German ': 'de"',
+         'Greek ': 'el"',
+         'Hebrew ': 'he"',
+         'Hindi ': 'hi"',
+         'Hungarian ': 'hu"',
+         'Icelandic ': 'is"',
+         'Indonesian ': 'id"',
+         'Italian ': 'it"',
+         'Japanese ': 'ja"',
+         'Korean ': 'ko"',
+         'Latvian ': 'lv"',
+         'Lithuanian ': 'lt"',
+         'Macedonian ': 'mk"',
+         'Malaysian ': 'ms"',
+         'Maltese ': 'mt"',
+         'Norwegian ': 'no"',
+         'Polish ': 'pl"',
+         'Portuguese ': 'pt"',
+         'Rhaeto-Romanic ': 'rm"',
+         'Romanian ': 'ro"',
+         'Russian ': 'ru"',
+         'Sami ': 'sz"',
+         'Serbian ': 'sr"',
+         'Setswana ': 'tn"',
+         'Slovak ': 'sk"',
+         'Slovenian ': 'sl"',
+         'Spanish ': 'es"',
+         'Sutu ': 'sx"',
+         'Swedish ': 'sv"',
+         'Thai ': 'th"',
+         'Tsonga ': 'ts"',
+         'Turkish ': 'tr"',
+         'Ukrainian ': 'uk"',
+         'Urdu ': 'ur"',
+         'Vietnamese ': 'vi"',
+         'Xhosa ': 'xh"',
+         'Yiddish ': 'yi"',
+         'Zulu': 'zu"'},
+'style': {'azimuth': 'azimuth: ',
+          'background': 'background: ',
+          'background-attachment': 'background-attachment: ',
+          'background-color': 'background-color: ',
+          'background-image': 'background-image: ',
+          'background-position': 'background-position: ',
+          'background-repeat': 'background-repeat: ',
+          'border': 'border: ',
+          'border-bottom': 'border-bottom: ',
+          'border-left': 'border-left: ',
+          'border-right': 'border-right: ',
+          'border-top': 'border-top: ',
+          'border-bottom-color': 'border-bottom-color: ',
+          'border-left-color': 'border-left-color: ',
+          'border-right-color': 'border-right-color: ',
+          'border-top-color': 'border-top-color: ',
+          'border-bottom-style': 'border-bottom-style: ',
+          'border-left-style': 'border-left-style: ',
+          'border-right-style': 'border-right-style: ',
+          'border-top-style': 'border-top-style: ',
+          'border-bottom-width': 'border-bottom-width: ',
+          'border-left-width': 'border-left-width: ',
+          'border-right-width': 'border-right-width: ',
+          'border-top-width': 'border-top-width: ',
+          'border-collapse': 'border-collapse: ',
+          'border-color': 'border-color: ',
+          'border-style': 'border-style: ',
+          'border-width': 'border-width: ',
+          'bottom': 'bottom: ',
+          'caption-side': 'caption-side: ',
+          'cell-spacing': 'cell-spacing: ',
+          'clear': 'clear: ',
+          'clip': 'clip: ',
+          'color': 'color: ',
+          'column-span': 'column-span: ',
+          'content': 'content: ',
+          'cue': 'cue: ',
+          'cue-after': 'cue-after: ',
+          'cue-before': 'cue-before: ',
+          'cursor': 'cursor: ',
+          'direction': 'direction: ',
+          'display': 'display: ',
+          'elevation': 'elevation: ',
+          'filter': 'filter: ',
+          'float': 'float: ',
+          'font-family': 'font-family: ',
+          'font-size': 'font-size: ',
+          'font-size-adjust': 'font-size-adjust: ',
+          'font-style': 'font-style: ',
+          'font-variant': 'font-variant: ',
+          'font-weight': 'font-weight: ',
+          'height': 'height: ',
+          '!important': '!important: ',
+          'left': 'left: ',
+          'letter-spacing': 'letter-spacing: ',
+          'line-height': 'line-height: ',
+          'list-style': 'list-style: ',
+          'list-style-image': 'list-style-image: ',
+          'list-style-position': 'list-style-position: ',
+          'list-style-type': 'list-style-type: ',
+          'margin': 'margin: ',
+          'margin-bottom': 'margin-bottom: ',
+          'margin-left': 'margin-left: ',
+          'margin-right': 'margin-right: ',
+          'margin-top': 'margin-top: ',
+          'marks': 'marks: ',
+          'max-height': 'max-height: ',
+          'min-height': 'min-height: ',
+          'max-width': 'max-width: ',
+          'min-width': 'min-width: ',
+          'orphans': 'orphans: ',
+          'overflow': 'overflow: ',
+          'padding': 'padding: ',
+          'padding-bottom': 'padding-bottom: ',
+          'padding-left': 'padding-left: ',
+          'padding-right': 'padding-right: ',
+          'padding-top': 'padding-top: ',
+          'page-break-after': 'page-break-after: ',
+          'page-break-before': 'page-break-before: ',
+          'pause': 'pause: ',
+          'pause-after': 'pause-after: ',
+          'pause-before': 'pause-before: ',
+          'pitch': 'pitch: ',
+          'pitch-range': 'pitch-range: ',
+          'play-during': 'play-during: ',
+          'position': 'position: ',
+          'richness': 'richness: ',
+          'right': 'right: ',
+          'row-span': 'row-span: ',
+          'size': 'size: ',
+          'speak': 'speak: ',
+          'speak-date': 'speak-date: ',
+          'speak-header': 'speak-header: ',
+          'speak-numeral': 'speak-numeral: ',
+          'speak-punctuation': 'speak-punctuation: ',
+          'speak-time': 'speak-time: ',
+          'speech-rate': 'speech-rate: ',
+          'stress': 'stress: ',
+          'table-layout': 'table-layout: ',
+          'text-align': 'text-align: ',
+          'text-decoration': 'text-decoration: ',
+          'text-indent': 'text-indent: ',
+          'text-shadow': 'text-shadow: ',
+          'text-transform': 'text-transform: ',
+          'top': 'top: ',
+          'vertical-align': 'vertical-align: ',
+          'visibility': 'visibility: ',
+          'voice-family': 'voice-family: ',
+          'volume': 'volume: ',
+          'white-space': 'white-space: ',
+          'widows': 'widows: ',
+          'width': 'width: ',
+          'word-spacing': 'word-spacing: ',
+          'z-index': 'z-index: ' }
+};
+
+// add the common items to all objects
+for(var i in tagLib) {
+i = i.replace(/^h[1-6]$/,"h"); // h1 .. h6
+  for(var j in opTag_all)
+    eval('opTag_'+i+'["'+j+'"] = opTag_all["'+j+'"];');
+  for(var j in opAtt_all)
+    eval('opAtt_'+i+'["'+j+'"] = opAtt_all["'+j+'"];');
+}
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/img/ed_save_green.gif
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/img/ed_save_green.gif?view=auto&rev=454197
==============================================================================
Binary file - no diff available.

Propchange: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/img/ed_save_green.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/img/ed_save_red.gif
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/img/ed_save_red.gif?view=auto&rev=454197
==============================================================================
Binary file - no diff available.

Propchange: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/img/ed_save_red.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/lang/de.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/lang/de.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/lang/de.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/lang/de.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+{ 
+	"Save": "Speichern",
+	"Saving...": "Speichern...",
+	"in progress": "in Arbeit",
+	"Ready": "Fertig"
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/save-submit.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/save-submit.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/save-submit.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SaveSubmit/save-submit.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,170 @@
+/*------------------------------------------*\
+SaveSubmit for Xinha
+____________________
+
+Registers a button for submiting the Xinha form using asynchronous
+postback for sending the data to the server
+
+Usage: This should be a drop-in replacement for a normal submit button.
+While saving a message is displayed to inform the user what's going on.
+On successful transmission the output of the target script is shown, so it should print some information
+about the success of saving.
+
+\*------------------------------------------*/
+
+function SaveSubmit(editor) {
+	this.editor = editor;
+	this.initial_html = null;
+	this.changed = false;
+	var self = this;
+	var cfg = editor.config;
+	this.textarea = this.editor._textArea;
+
+	this.imgage_changed = _editor_url+"plugins/SaveSubmit/img/ed_save_red.gif";
+	this.imgage_unchanged = _editor_url+"plugins/SaveSubmit/img/ed_save_green.gif";
+	cfg.registerButton({
+	id       : "savesubmit",
+	tooltip  : self._lc("Save"),
+	image    : this.imgage_unchanged,
+	textMode : false,
+	action   :  function(editor) {
+			self.save(editor);
+		}
+	});
+	cfg.addToolbarElement("savesubmit", "popupeditor", -1);
+};
+
+SaveSubmit.prototype._lc = function(string) {
+    return HTMLArea._lc(string, 'SaveSubmit');
+};
+
+SaveSubmit._pluginInfo = {
+  name          : "SaveSubmit",
+  version       : "1.0",
+  developer     : "Raimund Meyer",
+  developer_url : "http://rheinauf.de",
+  c_owner       : "Raimund Meyer",
+  sponsor       : "",
+  sponsor_url   : "",
+  license       : "htmlArea"
+};
+
+SaveSubmit.prototype.onGenerate = function() {
+	var self = this;
+	var doc = this.editordoc = this.editor._iframe.contentWindow.document;
+	HTMLArea._addEvents(doc, ["mouseup","keyup","keypress","keydown"],
+			    function (event) {
+			    return self.onEvent(HTMLArea.is_ie ? self.editor._iframe.contentWindow.event : event);
+			    });
+};
+
+SaveSubmit.prototype.onEvent = function(ev) {
+
+	var keyEvent = (HTMLArea.is_ie && ev.type == "keydown") || (!HTMLArea.is_ie && ev.type == "keypress");
+
+	if (keyEvent && ev.ctrlKey && String.fromCharCode(HTMLArea.is_ie ? ev.keyCode : ev.charCode).toLowerCase() == 's') {
+			this.save(this.editor);
+	}
+	else {
+		if (!this.changed) {
+			if (this.getChanged()) this.setChanged();
+		};
+	};
+};
+
+SaveSubmit.prototype.getChanged = function() {
+	if (this.initial_html == null) this.initial_html = this.editor.getHTML();
+	if (this.initial_html != this.editor.getHTML() && this.changed == false) {
+
+		this.changed = true;
+		return true;
+	}
+	else return false;
+}
+SaveSubmit.prototype.setChanged = function() {
+	toolbar_objects = this.editor._toolbarObjects;
+	for (var i in toolbar_objects) {
+		var btn = toolbar_objects[i];
+		if (btn.name == 'savesubmit') {
+			btn.swapImage(this.imgage_changed);
+		};
+	};
+	this.editor.updateToolbar();
+};
+SaveSubmit.prototype.changedReset = function() {
+	this.changed = false;
+	this.initial_html = null;
+	toolbar_objects = this.editor._toolbarObjects;
+	for (var i in toolbar_objects) {
+		var btn = toolbar_objects[i];
+		if (btn.name == 'savesubmit') {
+			btn.swapImage(this.imgage_unchanged);
+		};
+	};
+};
+
+SaveSubmit.prototype.save =  function(editor) {
+	this.buildMessage()
+	var self =this;
+	var form = editor._textArea.form;
+	form.onsubmit();
+
+	var content ='';
+
+	for (var i=0;i<form.elements.length;i++)
+	{
+		content += ((i>0) ? '&' : '') + form.elements[i].name + '=' + encodeURIComponent(form.elements[i].value);
+	}
+
+	HTMLArea._postback(editor._textArea.form.action, content, function(getback) {
+
+		if (getback) {
+			self.setMessage(getback);
+			//self.setMessage(self._lc("Ready"));
+			self.changedReset();
+		};
+		removeMessage = function() { self.removeMessage()} ;
+		window.setTimeout("removeMessage()",1000);
+
+	});
+};
+
+SaveSubmit.prototype.setMessage = function(string) {
+  var textarea = this.textarea;
+  if ( !document.getElementById("message_sub_" + textarea.name)) { return ; }
+  var elt = document.getElementById("message_sub_" + textarea.name);
+  elt.innerHTML = HTMLArea._lc(string, 'SaveSubmit');
+};
+
+SaveSubmit.prototype.removeMessage = function() {
+  var textarea = this.textarea;
+  if (!document.getElementById("message_" + textarea.name)) { return ; }
+  document.body.removeChild(document.getElementById("message_" + textarea.name));
+};
+
+//ripped mokhet's loading message function
+SaveSubmit.prototype.buildMessage   = function() {
+
+	var textarea = this.textarea;
+	var htmlarea = this.editor._htmlArea;
+	var loading_message = document.createElement("div");
+	loading_message.id = "message_" + textarea.name;
+	loading_message.className = "loading";
+	loading_message.style.width    = htmlarea.offsetWidth +'px' ;//(this.editor._iframe.offsetWidth != 0) ? this.editor._iframe.offsetWidth +'px' : this.editor._initial_ta_size.w;
+
+	loading_message.style.left     = HTMLArea.findPosX(htmlarea) +  'px';
+	loading_message.style.top      = (HTMLArea.findPosY(htmlarea) + parseInt(htmlarea.offsetHeight) / 2) - 50 +  'px';
+
+	var loading_main = document.createElement("div");
+	loading_main.className = "loading_main";
+	loading_main.id = "loading_main_" + textarea.name;
+	loading_main.appendChild(document.createTextNode(this._lc("Saving...")));
+
+	var loading_sub = document.createElement("div");
+	loading_sub.className = "loading_sub";
+	loading_sub.id = "message_sub_" + textarea.name;
+	loading_sub.appendChild(document.createTextNode(this._lc("in progress")));
+	loading_message.appendChild(loading_main);
+	loading_message.appendChild(loading_sub);
+	document.body.appendChild(loading_message);
+};
\ No newline at end of file

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/img/placeholder.gif
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/img/placeholder.gif?view=auto&rev=454197
==============================================================================
Binary file - no diff available.

Propchange: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/img/placeholder.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/img/set-id.gif
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/img/set-id.gif?view=auto&rev=454197
==============================================================================
Binary file - no diff available.

Propchange: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/img/set-id.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/de.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/de.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/de.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/de.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "de", ENCODING: UTF-8
+// translated: Raimund Meyer xinha@ray-of-light.org
+{
+  "Set Id and Name": "Objekt ID und Name einfügen",
+  "Name/Id": "Name (ID)",
+  "Delete": "Löschen"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/nb.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/nb.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/nb.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/nb.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "nb", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Set Id and Name": "Sett ID og navn",
+  "Name/Id": "Navn (ID)",
+  "Delete": "Slett"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/no.js
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/no.js?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/no.js (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/lang/no.js Sun Oct  8 12:53:13 2006
@@ -0,0 +1,8 @@
+// I18N constants
+// LANG: "no", ENCODING: UTF-8
+// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
+{
+  "Set Id and Name": "Sett ID og navn",
+  "Name/Id": "Navn (ID)",
+  "Delete": "Slett"
+};

Added: incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/popups/set_id.html
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/popups/set_id.html?view=auto&rev=454197
==============================================================================
--- incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/popups/set_id.html (added)
+++ incubator/roller/trunk/web/roller-ui/authoring/editors/xinha/plugins/SetId/popups/set_id.html Sun Oct  8 12:53:13 2006
@@ -0,0 +1,58 @@
+<html>
+<head>
+  <title>Set Id/Name</title>
+  <link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
+  <script type="text/javascript" src="../../../popups/popup.js"></script>
+  <script type="text/javascript">
+
+function Init() {
+  __dlg_translate("SetId");
+  __dlg_init();
+  var param = window.dialogArguments;
+  if (param) {
+    document.getElementById("name").value = param["name"];
+  }
+  document.getElementById("name").focus();
+}
+
+function onOK() {
+  // pass data back to the calling window
+  var param = new Object();
+  param["name"] = document.getElementById("name").value;
+  __dlg_close(param);
+  return false;
+}
+
+function onDelete() {
+  // pass data back to the calling window
+  var param = new Object();
+  param["name"] = "";
+  __dlg_close(param);
+  return false;
+}
+
+function onCancel() {
+  __dlg_close(null);
+  return false;
+}
+</script>
+</head>
+
+<body class="dialog" onload="Init()">
+<div class="title">Set ID/Name</div>
+<form>
+<table border="0" style="width: 300px;">
+  <tr>
+    <td class="label">ID/Name:</td>
+    <td><input type="text" id="name" style="width: 200px" /></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



Mime
View raw message