inital git commit
[phpns.git] / inc / js / tinymce / themes / advanced / jscripts / charmap.js
blobeaa6a94b65479653ed26e8d9041f926bde0db222
1 function init() {\r
2         tinyMCEPopup.resizeToInnerSize();\r
3 }\r
4 \r
5 var charmap = new Array();\r
6 \r
7 // for mor details please see w3c.org\r
8 // now here is the complete list ;)\r
9 \r
10 charmap = [\r
11         [' ',    ' ',  true, 'no-break space'],\r
12         ['&',     '&',   true, 'ampersand'],\r
13         ['"',    '"',   true, 'quotation mark'],\r
14 // finance\r
15         ['¢',    '¢',  true, 'cent sign'],\r
16         ['€',    '€', true, 'euro sign'],\r
17         ['£',   '£',  true, 'pound sign'],\r
18         ['¥',     '¥',  true, 'yen sign'],\r
19 // signs\r
20         ['©',    '©',  true, 'copyright sign'],\r
21         ['®',     '®',  true, 'registered sign'],\r
22         ['™',   '™', true, 'trade mark sign'],\r
23         ['‰',  '‰', true, 'per mille sign'],\r
24         ['µ',   'µ',  true, 'micro sign'],\r
25         ['·',  '·',  true, 'middle dot'],\r
26         ['•',    '•', true, 'bullet'],\r
27         ['…',  '…', true, 'three dot leader'],\r
28         ['′',   '′', true, 'minutes / feet'],\r
29         ['″',   '″', true, 'seconds / inches'],\r
30         ['§',    '§',  true, 'section sign'],\r
31         ['¶',    '¶',  true, 'paragraph sign'],\r
32         ['ß',   'ß',  true, 'sharp s / ess-zed'],\r
33 // quotations\r
34         ['‹',  '‹', true, 'single left-pointing angle quotation mark'],\r
35         ['›',  '›', true, 'single right-pointing angle quotation mark'],\r
36         ['«',   '«',  true, 'left pointing guillemet'],\r
37         ['»',   '»',  true, 'right pointing guillemet'],\r
38         ['‘',   '‘', true, 'left single quotation mark'],\r
39         ['’',   '’', true, 'right single quotation mark'],\r
40         ['“',   '“', true, 'left double quotation mark'],\r
41         ['”',   '”', true, 'right double quotation mark'],\r
42         ['‚',   '‚', true, 'single low-9 quotation mark'],\r
43         ['„',   '„', true, 'double low-9 quotation mark'],\r
44         ['<',      '<',   true, 'less-than sign'],\r
45         ['>',      '>',   true, 'greater-than sign'],\r
46         ['≤',      '≤', true, 'less-than or equal to'],\r
47         ['≥',      '≥', true, 'greater-than or equal to'],\r
48         ['–',   '–', true, 'en dash'],\r
49         ['—',   '—', true, 'em dash'],\r
50         ['¯',    '¯',  true, 'macron'],\r
51         ['‾',   '‾', true, 'overline'],\r
52         ['¤',  '¤',  true, 'currency sign'],\r
53         ['¦',  '¦',  true, 'broken bar'],\r
54         ['¨',     '¨',  true, 'diaeresis'],\r
55         ['¡',   '¡',  true, 'inverted exclamation mark'],\r
56         ['¿',  '¿',  true, 'turned question mark'],\r
57         ['ˆ',    'ˆ',  true, 'circumflex accent'],\r
58         ['˜',   '˜',  true, 'small tilde'],\r
59         ['°',     '°',  true, 'degree sign'],\r
60         ['−',   '−', true, 'minus sign'],\r
61         ['±',  '±',  true, 'plus-minus sign'],\r
62         ['÷',  '÷',  true, 'division sign'],\r
63         ['⁄',   '⁄', true, 'fraction slash'],\r
64         ['×',   '×',  true, 'multiplication sign'],\r
65         ['¹',    '¹',  true, 'superscript one'],\r
66         ['²',    '²',  true, 'superscript two'],\r
67         ['³',    '³',  true, 'superscript three'],\r
68         ['¼',  '¼',  true, 'fraction one quarter'],\r
69         ['½',  '½',  true, 'fraction one half'],\r
70         ['¾',  '¾',  true, 'fraction three quarters'],\r
71 // math / logical\r
72         ['ƒ',    'ƒ',  true, 'function / florin'],\r
73         ['∫',     '∫', true, 'integral'],\r
74         ['∑',     '∑', true, 'n-ary sumation'],\r
75         ['∞',   '∞', true, 'infinity'],\r
76         ['√',   '√', true, 'square root'],\r
77         ['∼',     '∼', false,'similar to'],\r
78         ['≅',    '≅', false,'approximately equal to'],\r
79         ['≈',   '≈', true, 'almost equal to'],\r
80         ['≠',      '≠', true, 'not equal to'],\r
81         ['≡',   '≡', true, 'identical to'],\r
82         ['∈',    '∈', false,'element of'],\r
83         ['∉',   '∉', false,'not an element of'],\r
84         ['∋',      '∋', false,'contains as member'],\r
85         ['∏',    '∏', true, 'n-ary product'],\r
86         ['∧',     '∧', false,'logical and'],\r
87         ['∨',      '∨', false,'logical or'],\r
88         ['¬',     '¬',  true, 'not sign'],\r
89         ['∩',     '∩', true, 'intersection'],\r
90         ['∪',     '∪', false,'union'],\r
91         ['∂',    '∂', true, 'partial differential'],\r
92         ['∀',  '∀', false,'for all'],\r
93         ['∃',   '∃', false,'there exists'],\r
94         ['∅',   '∅', false,'diameter'],\r
95         ['∇',   '∇', false,'backward difference'],\r
96         ['∗',  '∗', false,'asterisk operator'],\r
97         ['∝',    '∝', false,'proportional to'],\r
98         ['∠',     '∠', false,'angle'],\r
99 // undefined\r
100         ['´',   '´',  true, 'acute accent'],\r
101         ['¸',   '¸',  true, 'cedilla'],\r
102         ['ª',    'ª',  true, 'feminine ordinal indicator'],\r
103         ['º',    'º',  true, 'masculine ordinal indicator'],\r
104         ['†',  '†', true, 'dagger'],\r
105         ['‡',  '‡', true, 'double dagger'],\r
106 // alphabetical special chars\r
107         ['À',  'À',  true, 'A - grave'],\r
108         ['Á',  'Á',  true, 'A - acute'],\r
109         ['Â',   'Â',  true, 'A - circumflex'],\r
110         ['Ã',  'Ã',  true, 'A - tilde'],\r
111         ['Ä',    'Ä',  true, 'A - diaeresis'],\r
112         ['Å',   'Å',  true, 'A - ring above'],\r
113         ['Æ',   'Æ',  true, 'ligature AE'],\r
114         ['Ç',  'Ç',  true, 'C - cedilla'],\r
115         ['È',  'È',  true, 'E - grave'],\r
116         ['É',  'É',  true, 'E - acute'],\r
117         ['Ê',   'Ê',  true, 'E - circumflex'],\r
118         ['Ë',    'Ë',  true, 'E - diaeresis'],\r
119         ['Ì',  'Ì',  true, 'I - grave'],\r
120         ['Í',  'Í',  true, 'I - acute'],\r
121         ['Î',   'Î',  true, 'I - circumflex'],\r
122         ['Ï',    'Ï',  true, 'I - diaeresis'],\r
123         ['Ð',     'Ð',  true, 'ETH'],\r
124         ['Ñ',  'Ñ',  true, 'N - tilde'],\r
125         ['Ò',  'Ò',  true, 'O - grave'],\r
126         ['Ó',  'Ó',  true, 'O - acute'],\r
127         ['Ô',   'Ô',  true, 'O - circumflex'],\r
128         ['Õ',  'Õ',  true, 'O - tilde'],\r
129         ['Ö',    'Ö',  true, 'O - diaeresis'],\r
130         ['Ø',  'Ø',  true, 'O - slash'],\r
131         ['Œ',   'Œ',  true, 'ligature OE'],\r
132         ['Š',  'Š',  true, 'S - caron'],\r
133         ['Ù',  'Ù',  true, 'U - grave'],\r
134         ['Ú',  'Ú',  true, 'U - acute'],\r
135         ['Û',   'Û',  true, 'U - circumflex'],\r
136         ['Ü',    'Ü',  true, 'U - diaeresis'],\r
137         ['Ý',  'Ý',  true, 'Y - acute'],\r
138         ['Ÿ',    'Ÿ',  true, 'Y - diaeresis'],\r
139         ['Þ',   'Þ',  true, 'THORN'],\r
140         ['à',  'à',  true, 'a - grave'],\r
141         ['á',  'á',  true, 'a - acute'],\r
142         ['â',   'â',  true, 'a - circumflex'],\r
143         ['ã',  'ã',  true, 'a - tilde'],\r
144         ['ä',    'ä',  true, 'a - diaeresis'],\r
145         ['å',   'å',  true, 'a - ring above'],\r
146         ['æ',   'æ',  true, 'ligature ae'],\r
147         ['ç',  'ç',  true, 'c - cedilla'],\r
148         ['è',  'è',  true, 'e - grave'],\r
149         ['é',  'é',  true, 'e - acute'],\r
150         ['ê',   'ê',  true, 'e - circumflex'],\r
151         ['ë',    'ë',  true, 'e - diaeresis'],\r
152         ['ì',  'ì',  true, 'i - grave'],\r
153         ['í',  'í',  true, 'i - acute'],\r
154         ['î',   'î',  true, 'i - circumflex'],\r
155         ['ï',    'ï',  true, 'i - diaeresis'],\r
156         ['ð',     'ð',  true, 'eth'],\r
157         ['ñ',  'ñ',  true, 'n - tilde'],\r
158         ['ò',  'ò',  true, 'o - grave'],\r
159         ['ó',  'ó',  true, 'o - acute'],\r
160         ['ô',   'ô',  true, 'o - circumflex'],\r
161         ['õ',  'õ',  true, 'o - tilde'],\r
162         ['ö',    'ö',  true, 'o - diaeresis'],\r
163         ['ø',  'ø',  true, 'o slash'],\r
164         ['œ',   'œ',  true, 'ligature oe'],\r
165         ['š',  'š',  true, 's - caron'],\r
166         ['ù',  'ù',  true, 'u - grave'],\r
167         ['ú',  'ú',  true, 'u - acute'],\r
168         ['û',   'û',  true, 'u - circumflex'],\r
169         ['ü',    'ü',  true, 'u - diaeresis'],\r
170         ['ý',  'ý',  true, 'y - acute'],\r
171         ['þ',   'þ',  true, 'thorn'],\r
172         ['ÿ',    'ÿ',  true, 'y - diaeresis'],\r
173     ['Α',   'Α',  true, 'Alpha'],\r
174         ['Β',    'Β',  true, 'Beta'],\r
175         ['Γ',   'Γ',  true, 'Gamma'],\r
176         ['Δ',   'Δ',  true, 'Delta'],\r
177         ['Ε', 'Ε',  true, 'Epsilon'],\r
178         ['Ζ',    'Ζ',  true, 'Zeta'],\r
179         ['Η',     'Η',  true, 'Eta'],\r
180         ['Θ',   'Θ',  true, 'Theta'],\r
181         ['Ι',    'Ι',  true, 'Iota'],\r
182         ['Κ',   'Κ',  true, 'Kappa'],\r
183         ['Λ',  'Λ',  true, 'Lambda'],\r
184         ['Μ',      'Μ',  true, 'Mu'],\r
185         ['Ν',      'Ν',  true, 'Nu'],\r
186         ['Ξ',      'Ξ',  true, 'Xi'],\r
187         ['Ο', 'Ο',  true, 'Omicron'],\r
188         ['Π',      'Π',  true, 'Pi'],\r
189         ['Ρ',     'Ρ',  true, 'Rho'],\r
190         ['Σ',   'Σ',  true, 'Sigma'],\r
191         ['Τ',     'Τ',  true, 'Tau'],\r
192         ['Υ', 'Υ',  true, 'Upsilon'],\r
193         ['Φ',     'Φ',  true, 'Phi'],\r
194         ['Χ',     'Χ',  true, 'Chi'],\r
195         ['Ψ',     'Ψ',  true, 'Psi'],\r
196         ['Ω',   'Ω',  true, 'Omega'],\r
197         ['α',   'α',  true, 'alpha'],\r
198         ['β',    'β',  true, 'beta'],\r
199         ['γ',   'γ',  true, 'gamma'],\r
200         ['δ',   'δ',  true, 'delta'],\r
201         ['ε', 'ε',  true, 'epsilon'],\r
202         ['ζ',    'ζ',  true, 'zeta'],\r
203         ['η',     'η',  true, 'eta'],\r
204         ['θ',   'θ',  true, 'theta'],\r
205         ['ι',    'ι',  true, 'iota'],\r
206         ['κ',   'κ',  true, 'kappa'],\r
207         ['λ',  'λ',  true, 'lambda'],\r
208         ['μ',      'μ',  true, 'mu'],\r
209         ['ν',      'ν',  true, 'nu'],\r
210         ['ξ',      'ξ',  true, 'xi'],\r
211         ['ο', 'ο',  true, 'omicron'],\r
212         ['π',      'π',  true, 'pi'],\r
213         ['ρ',     'ρ',  true, 'rho'],\r
214         ['ς',  'ς',  true, 'final sigma'],\r
215         ['σ',   'σ',  true, 'sigma'],\r
216         ['τ',     'τ',  true, 'tau'],\r
217         ['υ', 'υ',  true, 'upsilon'],\r
218         ['φ',     'φ',  true, 'phi'],\r
219         ['χ',     'χ',  true, 'chi'],\r
220         ['ψ',     'ψ',  true, 'psi'],\r
221         ['ω',   'ω',  true, 'omega'],\r
222 // symbols\r
223         ['ℵ', 'ℵ', false,'alef symbol'],\r
224         ['ϖ',     'ϖ',  false,'pi symbol'],\r
225         ['ℜ',    'ℜ', false,'real part symbol'],\r
226         ['ϑ','ϑ',  false,'theta symbol'],\r
227         ['ϒ',   'ϒ',  false,'upsilon - hook symbol'],\r
228         ['℘',  '℘', false,'Weierstrass p'],\r
229         ['ℑ',   'ℑ', false,'imaginary part'],\r
230 // arrows\r
231         ['←',    '←', true, 'leftwards arrow'],\r
232         ['↑',    '↑', true, 'upwards arrow'],\r
233         ['→',    '→', true, 'rightwards arrow'],\r
234         ['↓',    '↓', true, 'downwards arrow'],\r
235         ['↔',    '↔', true, 'left right arrow'],\r
236         ['↵',   '↵', false,'carriage return'],\r
237         ['⇐',    '⇐', false,'leftwards double arrow'],\r
238         ['⇑',    '⇑', false,'upwards double arrow'],\r
239         ['⇒',    '⇒', false,'rightwards double arrow'],\r
240         ['⇓',    '⇓', false,'downwards double arrow'],\r
241         ['⇔',    '⇔', false,'left right double arrow'],\r
242         ['∴',  '∴', false,'therefore'],\r
243         ['⊂',     '⊂', false,'subset of'],\r
244         ['⊃',     '⊃', false,'superset of'],\r
245         ['⊄',    '⊄', false,'not a subset of'],\r
246         ['⊆',    '⊆', false,'subset of or equal to'],\r
247         ['⊇',    '⊇', false,'superset of or equal to'],\r
248         ['⊕',   '⊕', false,'circled plus'],\r
249         ['⊗',  '⊗', false,'circled times'],\r
250         ['⊥',    '⊥', false,'perpendicular'],\r
251         ['⋅',    '⋅', false,'dot operator'],\r
252         ['⌈',   '⌈', false,'left ceiling'],\r
253         ['⌉',   '⌉', false,'right ceiling'],\r
254         ['⌊',  '⌊', false,'left floor'],\r
255         ['⌋',  '⌋', false,'right floor'],\r
256         ['⟨',    '〈', false,'left-pointing angle bracket'],\r
257         ['⟩',    '〉', false,'right-pointing angle bracket'],\r
258         ['◊',     '◊', true,'lozenge'],\r
259         ['♠',  '♠', false,'black spade suit'],\r
260         ['♣',   '♣', true, 'black club suit'],\r
261         ['♥',  '♥', true, 'black heart suit'],\r
262         ['♦',   '♦', true, 'black diamond suit'],\r
263         [' ',    ' ', false,'en space'],\r
264         [' ',    ' ', false,'em space'],\r
265         [' ',  ' ', false,'thin space'],\r
266         ['‌',    '‌', false,'zero width non-joiner'],\r
267         ['‍',     '‍', false,'zero width joiner'],\r
268         ['‎',     '‎', false,'left-to-right mark'],\r
269         ['‏',     '‏', false,'right-to-left mark'],\r
270         ['­',     '­',  false,'soft hyphen']\r
271 ];\r
273 function renderCharMapHTML() {\r
274         var charsPerRow = 20, tdWidth=20, tdHeight=20;\r
275         var html = '<table border="0" cellspacing="1" cellpadding="0" width="' + (tdWidth*charsPerRow) + '"><tr height="' + tdHeight + '">';\r
276         var cols=-1;\r
277         for (var i=0; i<charmap.length; i++) {\r
278                 if (charmap[i][2]==true) {\r
279                         cols++;\r
280                         html += ''\r
281                                 + '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap"'\r
282                                 + ' onmouseover="this.className=\'charmapOver\';'\r
283                                 + 'previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');"'\r
284                                 + ' onmouseout="this.className=\'charmap\';"'\r
285                                 + ' nowrap="nowrap" onclick="insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');"><a style="text-decoration: none;" onfocus="previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');" href="javascript:insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');" onclick="return false;" onmousedown="return false;" title="' + charmap[i][3] + '">'\r
286                                 + charmap[i][1]\r
287                                 + '</a></td>';\r
288                         if ((cols+1) % charsPerRow == 0)\r
289                                 html += '</tr><tr height="' + tdHeight + '">';\r
290                 }\r
291          }\r
292         if (cols % charsPerRow > 0) {\r
293                 var padd = charsPerRow - (cols % charsPerRow);\r
294                 for (var i=0; i<padd-1; i++)\r
295                         html += '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap">&nbsp;</td>';\r
296         }\r
297         html += '</tr></table>';\r
298         document.write(html);\r
301 function insertChar(chr) {\r
302         tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';');\r
304         // Refocus in window\r
305         if (tinyMCEPopup.isWindow)\r
306                 window.focus();\r
308         tinyMCEPopup.close();\r
311 function previewChar(codeA, codeB, codeN) {\r
312         var elmA = document.getElementById('codeA');\r
313         var elmB = document.getElementById('codeB');\r
314         var elmV = document.getElementById('codeV');\r
315         var elmN = document.getElementById('codeN');\r
317         if (codeA=='#160;') {\r
318                 elmV.innerHTML = '__';\r
319         } else {\r
320                 elmV.innerHTML = '&' + codeA;\r
321         }\r
323         elmB.innerHTML = '&amp;' + codeA;\r
324         elmA.innerHTML = '&amp;' + codeB;\r
325         elmN.innerHTML = codeN;\r