Began removing $Id$ tags. This will be an ongoing process.
[citadel.git] / webcit / tiny_mce / plugins / insertdatetime / editor_plugin_src.js
old mode 100755 (executable)
new mode 100644 (file)
index 7772cce..a2ae302
@@ -1,56 +1,56 @@
-/**\r
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
- *\r
- * @author Moxiecode\r
- * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
+/*\r
+ * Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved.\r
  */\r
 \r
-/* Import plugin specific language pack */\r
-tinyMCE.importPluginLanguagePack('insertdatetime');\r
-\r
-var TinyMCE_InsertDateTimePlugin = {\r
-       getInfo : function() {\r
-               return {\r
-                       longname : 'Insert date/time',\r
-                       author : 'Moxiecode Systems AB',\r
-                       authorurl : 'http://tinymce.moxiecode.com',\r
-                       infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/insertdatetime',\r
-                       version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
-               };\r
-       },\r
-\r
-       /**\r
-        * Returns the HTML contents of the insertdate, inserttime controls.\r
-        */\r
-       getControlHTML : function(cn) {\r
-               switch (cn) {\r
-                       case "insertdate":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_insertdate_desc', '{$pluginurl}/images/insertdate.gif', 'mceInsertDate');\r
-\r
-                       case "inserttime":\r
-                               return tinyMCE.getButtonHTML(cn, 'lang_inserttime_desc', '{$pluginurl}/images/inserttime.gif', 'mceInsertTime');\r
-               }\r
+(function() {\r
+       tinymce.create('tinymce.plugins.InsertDateTime', {\r
+               init : function(ed, url) {\r
+                       var t = this;\r
 \r
-               return "";\r
-       },\r
+                       t.editor = ed;\r
 \r
-       /**\r
-        * Executes the mceInsertDate command.\r
-        */\r
-       execCommand : function(editor_id, element, command, user_interface, value) {\r
-               /* Adds zeros infront of value */\r
-               function addZeros(value, len) {\r
-                       value = "" + value;\r
+                       ed.addCommand('mceInsertDate', function() {\r
+                               var str = t._getDateTime(new Date(), ed.getParam("plugin_insertdate_dateFormat", ed.getLang('insertdatetime.date_fmt')));\r
 \r
-                       if (value.length < len) {\r
-                               for (var i=0; i<(len-value.length); i++)\r
-                                       value = "0" + value;\r
-                       }\r
+                               ed.execCommand('mceInsertContent', false, str);\r
+                       });\r
 \r
-                       return value;\r
-               }\r
+                       ed.addCommand('mceInsertTime', function() {\r
+                               var str = t._getDateTime(new Date(), ed.getParam("plugin_insertdate_timeFormat", ed.getLang('insertdatetime.time_fmt')));\r
+\r
+                               ed.execCommand('mceInsertContent', false, str);\r
+                       });\r
+\r
+                       ed.addButton('insertdate', {title : 'insertdatetime.insertdate_desc', cmd : 'mceInsertDate'});\r
+                       ed.addButton('inserttime', {title : 'insertdatetime.inserttime_desc', cmd : 'mceInsertTime'});\r
+               },\r
+\r
+               getInfo : function() {\r
+                       return {\r
+                               longname : 'Insert date/time',\r
+                               author : 'Moxiecode Systems AB',\r
+                               authorurl : 'http://tinymce.moxiecode.com',\r
+                               infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/insertdatetime',\r
+                               version : tinymce.majorVersion + "." + tinymce.minorVersion\r
+                       };\r
+               },\r
+\r
+               // Private methods\r
+\r
+               _getDateTime : function(d, fmt) {\r
+                       var ed = this.editor;\r
+\r
+                       function addZeros(value, len) {\r
+                               value = "" + value;\r
+\r
+                               if (value.length < len) {\r
+                                       for (var i=0; i<(len-value.length); i++)\r
+                                               value = "0" + value;\r
+                               }\r
+\r
+                               return value;\r
+                       };\r
 \r
-               function getDateTime(d, fmt) {\r
                        fmt = fmt.replace("%D", "%m/%d/%y");\r
                        fmt = fmt.replace("%r", "%I:%M:%S %p");\r
                        fmt = fmt.replace("%Y", "" + d.getFullYear());\r
@@ -62,29 +62,16 @@ var TinyMCE_InsertDateTimePlugin = {
                        fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2));\r
                        fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1));\r
                        fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM"));\r
-                       fmt = fmt.replace("%B", "" + tinyMCE.getLang("lang_inserttime_months_long")[d.getMonth()]);\r
-                       fmt = fmt.replace("%b", "" + tinyMCE.getLang("lang_inserttime_months_short")[d.getMonth()]);\r
-                       fmt = fmt.replace("%A", "" + tinyMCE.getLang("lang_inserttime_day_long")[d.getDay()]);\r
-                       fmt = fmt.replace("%a", "" + tinyMCE.getLang("lang_inserttime_day_short")[d.getDay()]);\r
+                       fmt = fmt.replace("%B", "" + ed.getLang("insertdatetime.months_long").split(',')[d.getMonth()]);\r
+                       fmt = fmt.replace("%b", "" + ed.getLang("insertdatetime.months_short").split(',')[d.getMonth()]);\r
+                       fmt = fmt.replace("%A", "" + ed.getLang("insertdatetime.day_long").split(',')[d.getDay()]);\r
+                       fmt = fmt.replace("%a", "" + ed.getLang("insertdatetime.day_short").split(',')[d.getDay()]);\r
                        fmt = fmt.replace("%%", "%");\r
 \r
                        return fmt;\r
                }\r
+       });\r
 \r
-               // Handle commands\r
-               switch (command) {\r
-                       case "mceInsertDate":\r
-                               tinyMCE.execInstanceCommand(editor_id, 'mceInsertContent', false, getDateTime(new Date(), tinyMCE.getParam("plugin_insertdate_dateFormat", tinyMCE.getLang('lang_insertdate_def_fmt'))));\r
-                               return true;\r
-\r
-                       case "mceInsertTime":\r
-                               tinyMCE.execInstanceCommand(editor_id, 'mceInsertContent', false, getDateTime(new Date(), tinyMCE.getParam("plugin_insertdate_timeFormat", tinyMCE.getLang('lang_inserttime_def_fmt'))));\r
-                               return true;\r
-               }\r
-\r
-               // Pass to next handler in chain\r
-               return false;\r
-       }\r
-};\r
-\r
-tinyMCE.addPlugin("insertdatetime", TinyMCE_InsertDateTimePlugin);\r
+       // Register plugin\r
+       tinymce.PluginManager.add('insertdatetime', tinymce.plugins.InsertDateTime);\r
+})();\r