Blame view

framework/thirdparty/tinymce_ssmacron/js/macron.js 2.35 KB
0084d336   Administrator   Importers CRUD
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
  tinyMCEPopup.requireLangPack();
  
  var charmap = [
  	['Ā',    'Ā',  true, 'A - macron'],
  	['Ē',    'Ē',  true, 'E - macron'],
  	['Ī',    'Ī',  true, 'I - macron'], 
  	['Ō',    'Ō',  true, 'O - macron'], 
  	['Ū',    'Ū',  true, 'U - macron'], 
  	['ā',    'ā',  true, 'a - macron'], 
  	['ē',    'ē',  true, 'e - macron'], 
  	['ī',    'ī',  true, 'i - macron'], 
  	['ō',    'ō',  true, 'o - macron'], 
  	['ū',    'ū',  true, 'u - macron']
  ];
  
  tinyMCEPopup.onInit.add(function() {
  	tinyMCEPopup.dom.setHTML('charmapView', renderCharMapHTML());
  });
  
  function renderCharMapHTML() {
  	var charsPerRow = 5, tdWidth=20, tdHeight=20, i;
  	var html = '<table border="0" cellspacing="1" cellpadding="0" width="' + (tdWidth*charsPerRow) + '"><tr height="' + tdHeight + '">';
  	var cols=-1;
  
  	for (i=0; i<charmap.length; i++) {
  		if (charmap[i][2]==true) {
  			cols++;
  			html += ''
  				+ '<td class="charmap">'
  				+ '<a onmouseover="previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');" 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:void(0)" onclick="insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');" onclick="return false;" onmousedown="return false;" title="' + charmap[i][3] + '">'
  				+ charmap[i][1]
  				+ '</a></td>';
  			if ((cols+1) % charsPerRow == 0)
  				html += '</tr><tr height="' + tdHeight + '">';
  		}
  	 }
  
  	if (cols % charsPerRow > 0) {
  		var padd = charsPerRow - (cols % charsPerRow);
  		for (var i=0; i<padd-1; i++)
  			html += '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap">&nbsp;</td>';
  	}
  
  	html += '</tr></table>';
  
  	return html;
  }
  
  function insertChar(chr) {
  	tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';');
  
  	// Refocus in window
  	if (tinyMCEPopup.isWindow)
  		window.focus();
  
  	tinyMCEPopup.editor.focus();
  	tinyMCEPopup.close();
  }
  
  function previewChar(codeA, codeB, codeN) {
  	var elmV = document.getElementById('codeV');
  	var elmN = document.getElementById('codeN');
  
  	if (codeA=='#160;') {
  		elmV.innerHTML = '__';
  	} else {
  		elmV.innerHTML = '&' + codeA;
  	}
  
  	elmN.innerHTML = codeN;
  }