bug 2509: fix file permissions
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / js / tinymce / jscripts / tiny_mce / plugins / directionality / editor_plugin_src.js
1 /**\r
2  * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $\r
3  *\r
4  * @author Moxiecode\r
5  * @copyright Copyright © 2004-2007, Moxiecode Systems AB, All rights reserved.\r
6  */\r
7 \r
8 /* Import plugin specific language pack */\r
9 tinyMCE.importPluginLanguagePack('directionality');\r
10 \r
11 var TinyMCE_DirectionalityPlugin = {\r
12         getInfo : function() {\r
13                 return {\r
14                         longname : 'Directionality',\r
15                         author : 'Moxiecode Systems AB',\r
16                         authorurl : 'http://tinymce.moxiecode.com',\r
17                         infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality',\r
18                         version : tinyMCE.majorVersion + "." + tinyMCE.minorVersion\r
19                 };\r
20         },\r
21 \r
22         getControlHTML : function(cn) {\r
23                 switch (cn) {\r
24                         case "ltr":\r
25                                 return tinyMCE.getButtonHTML(cn, 'lang_directionality_ltr_desc', '{$pluginurl}/images/ltr.gif', 'mceDirectionLTR');\r
26 \r
27                         case "rtl":\r
28                                 return tinyMCE.getButtonHTML(cn, 'lang_directionality_rtl_desc', '{$pluginurl}/images/rtl.gif', 'mceDirectionRTL');\r
29                 }\r
30 \r
31                 return "";\r
32         },\r
33 \r
34         execCommand : function(editor_id, element, command, user_interface, value) {\r
35                 // Handle commands\r
36                 switch (command) {\r
37                         case "mceDirectionLTR":\r
38                                 var inst = tinyMCE.getInstanceById(editor_id);\r
39                                 var elm = tinyMCE.getParentElement(inst.getFocusElement(), "p,div,td,h1,h2,h3,h4,h5,h6,pre,address");\r
40 \r
41                                 if (elm)\r
42                                         elm.setAttribute("dir", "ltr");\r
43 \r
44                                 tinyMCE.triggerNodeChange(false);\r
45                                 return true;\r
46 \r
47                         case "mceDirectionRTL":\r
48                                 var inst = tinyMCE.getInstanceById(editor_id);\r
49                                 var elm = tinyMCE.getParentElement(inst.getFocusElement(), "p,div,td,h1,h2,h3,h4,h5,h6,pre,address");\r
50 \r
51                                 if (elm)\r
52                                         elm.setAttribute("dir", "rtl");\r
53 \r
54                                 tinyMCE.triggerNodeChange(false);\r
55                                 return true;\r
56                 }\r
57 \r
58                 // Pass to next handler in chain\r
59                 return false;\r
60         },\r
61 \r
62         handleNodeChange : function(editor_id, node, undo_index, undo_levels, visual_aid, any_selection) {\r
63                 function getAttrib(elm, name) {\r
64                         return elm.getAttribute(name) ? elm.getAttribute(name) : "";\r
65                 }\r
66 \r
67                 if (node == null)\r
68                         return;\r
69 \r
70                 var elm = tinyMCE.getParentElement(node, "p,div,td,h1,h2,h3,h4,h5,h6,pre,address");\r
71                 if (!elm) {\r
72                         tinyMCE.switchClass(editor_id + '_ltr', 'mceButtonDisabled');\r
73                         tinyMCE.switchClass(editor_id + '_rtl', 'mceButtonDisabled');\r
74                         return true;\r
75                 }\r
76 \r
77                 tinyMCE.switchClass(editor_id + '_ltr', 'mceButtonNormal');\r
78                 tinyMCE.switchClass(editor_id + '_rtl', 'mceButtonNormal');\r
79 \r
80                 var dir = getAttrib(elm, "dir");\r
81                 if (dir == "ltr" || dir == "")\r
82                         tinyMCE.switchClass(editor_id + '_ltr', 'mceButtonSelected');\r
83                 else\r
84                         tinyMCE.switchClass(editor_id + '_rtl', 'mceButtonSelected');\r
85 \r
86                 return true;\r
87         }\r
88 };\r
89 \r
90 tinyMCE.addPlugin("directionality", TinyMCE_DirectionalityPlugin);\r