spud_core 0.8.28 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- data/app/assets/javascripts/spud/admin/application.js +80 -39
- data/app/assets/javascripts/spud/admin/editor.js +91 -0
- data/app/assets/libs/bootstrap/css/bootstrap-responsive.css +799 -397
- data/app/assets/libs/bootstrap/css/bootstrap.css +3275 -1372
- data/app/assets/libs/bootstrap/img/glyphicons-halflings-white.png +0 -0
- data/app/assets/libs/bootstrap/img/glyphicons-halflings.png +0 -0
- data/app/assets/libs/bootstrap/js/bootstrap.js +716 -417
- data/app/assets/libs/datepicker/css/datepicker.css +223 -0
- data/app/assets/libs/datepicker/js/bootstrap-datepicker.js +779 -0
- data/app/assets/libs/datepicker/less/datepicker.less +122 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-bg_flat_0_eeeeee_40x100.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-bg_flat_55_ffffff_40x100.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-bg_highlight-soft_100_f6f6f6_1x100.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-bg_highlight-soft_25_0073ea_1x100.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-bg_highlight-soft_50_dddddd_1x100.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-icons_0073ea_256x240.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-icons_454545_256x240.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-icons_666666_256x240.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-icons_ff0084_256x240.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/images/ui-icons_ffffff_256x240.png +0 -0
- data/app/assets/libs/jquery-ui/css/flick/jquery-ui-1.9.1.custom.css +297 -0
- data/app/assets/libs/jquery-ui/css/flick/jquery-ui-1.9.1.custom.min.css +5 -0
- data/app/assets/libs/jquery-ui/js/jquery-ui-1.9.1.custom.js +4870 -0
- data/app/assets/libs/jquery-ui/js/jquery-ui-1.9.1.custom.min.js +6 -0
- data/app/assets/stylesheets/spud/admin/application.css +22 -4
- data/app/controllers/spud/admin/application_controller.rb +13 -4
- data/app/controllers/spud/admin/dashboard_controller.rb +1 -1
- data/app/controllers/spud/admin/users_controller.rb +4 -9
- data/app/controllers/spud/setup_controller.rb +3 -4
- data/app/models/spud_admin_permission.rb +1 -1
- data/app/models/spud_user.rb +4 -2
- data/app/views/layouts/spud/admin/application.html.erb +24 -5
- data/app/views/spud/admin/users/_edit.html.erb +2 -4
- data/app/views/spud/admin/users/_new.html.erb +3 -5
- data/app/views/spud/admin/users/index.html.erb +6 -5
- data/lib/spud_core/belongs_to_app.rb +9 -6
- data/lib/spud_core/configuration.rb +23 -1
- data/lib/spud_core/engine.rb +20 -28
- data/lib/spud_core/version.rb +1 -1
- data/spec/dummy/log/development.log +15 -37
- data/spec/dummy/log/test.log +72841 -25918
- metadata +25 -101
- data/app/assets/libs/bootstrap/css/bootstrap-responsive.min.css +0 -12
- data/app/assets/libs/bootstrap/css/bootstrap.min.css +0 -689
- data/app/assets/libs/bootstrap/js/bootstrap.min.js +0 -6
- data/app/assets/libs/tiny_mce/plugins/autosave/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/autosave/editor_plugin_src.js +0 -431
- data/app/assets/libs/tiny_mce/plugins/autosave/langs/en.js +0 -4
- data/app/assets/libs/tiny_mce/plugins/bbcode/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/bbcode/editor_plugin_src.js +0 -120
- data/app/assets/libs/tiny_mce/plugins/emotions/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/emotions/editor_plugin_src.js +0 -43
- data/app/assets/libs/tiny_mce/plugins/emotions/emotions.htm +0 -42
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-cool.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-cry.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-embarassed.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-frown.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-innocent.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-kiss.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-laughing.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-sealed.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-smile.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-surprised.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-undecided.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-wink.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/img/smiley-yell.gif +0 -0
- data/app/assets/libs/tiny_mce/plugins/emotions/js/emotions.js +0 -43
- data/app/assets/libs/tiny_mce/plugins/emotions/langs/en_dlg.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/fullpage/css/fullpage.css +0 -143
- data/app/assets/libs/tiny_mce/plugins/fullpage/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/fullpage/editor_plugin_src.js +0 -405
- data/app/assets/libs/tiny_mce/plugins/fullpage/fullpage.htm +0 -259
- data/app/assets/libs/tiny_mce/plugins/fullpage/js/fullpage.js +0 -232
- data/app/assets/libs/tiny_mce/plugins/fullpage/langs/en_dlg.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/fullscreen/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/fullscreen/editor_plugin_src.js +0 -159
- data/app/assets/libs/tiny_mce/plugins/fullscreen/fullscreen.htm +0 -110
- data/app/assets/libs/tiny_mce/plugins/insertdatetime/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/insertdatetime/editor_plugin_src.js +0 -83
- data/app/assets/libs/tiny_mce/plugins/legacyoutput/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/legacyoutput/editor_plugin_src.js +0 -139
- data/app/assets/libs/tiny_mce/plugins/nonbreaking/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/nonbreaking/editor_plugin_src.js +0 -54
- data/app/assets/libs/tiny_mce/plugins/noneditable/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/noneditable/editor_plugin_src.js +0 -454
- data/app/assets/libs/tiny_mce/plugins/pagebreak/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/pagebreak/editor_plugin_src.js +0 -74
- data/app/assets/libs/tiny_mce/plugins/preview/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/preview/editor_plugin_src.js +0 -53
- data/app/assets/libs/tiny_mce/plugins/preview/example.html +0 -28
- data/app/assets/libs/tiny_mce/plugins/preview/jscripts/embed.js +0 -73
- data/app/assets/libs/tiny_mce/plugins/preview/preview.html +0 -17
- data/app/assets/libs/tiny_mce/plugins/print/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/print/editor_plugin_src.js +0 -34
- data/app/assets/libs/tiny_mce/plugins/save/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/save/editor_plugin_src.js +0 -101
- data/app/assets/libs/tiny_mce/plugins/searchreplace/css/searchreplace.css +0 -6
- data/app/assets/libs/tiny_mce/plugins/searchreplace/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/searchreplace/editor_plugin_src.js +0 -61
- data/app/assets/libs/tiny_mce/plugins/searchreplace/js/searchreplace.js +0 -142
- data/app/assets/libs/tiny_mce/plugins/searchreplace/langs/en_dlg.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/searchreplace/searchreplace.htm +0 -100
- data/app/assets/libs/tiny_mce/plugins/tabfocus/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/tabfocus/editor_plugin_src.js +0 -122
- data/app/assets/libs/tiny_mce/plugins/template/blank.htm +0 -12
- data/app/assets/libs/tiny_mce/plugins/template/css/template.css +0 -23
- data/app/assets/libs/tiny_mce/plugins/template/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/template/editor_plugin_src.js +0 -159
- data/app/assets/libs/tiny_mce/plugins/template/js/template.js +0 -106
- data/app/assets/libs/tiny_mce/plugins/template/langs/en_dlg.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/template/template.htm +0 -31
- data/app/assets/libs/tiny_mce/plugins/visualblocks/css/visualblocks.css +0 -21
- data/app/assets/libs/tiny_mce/plugins/visualblocks/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/visualblocks/editor_plugin_src.js +0 -63
- data/app/assets/libs/tiny_mce/plugins/visualchars/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/visualchars/editor_plugin_src.js +0 -83
- data/app/assets/libs/tiny_mce/plugins/wordcount/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/wordcount/editor_plugin_src.js +0 -122
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/abbr.htm +0 -142
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/acronym.htm +0 -142
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/attributes.htm +0 -149
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/cite.htm +0 -142
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/css/attributes.css +0 -11
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/css/popup.css +0 -9
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/del.htm +0 -162
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/editor_plugin.js +0 -1
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js +0 -132
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/ins.htm +0 -162
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/js/abbr.js +0 -28
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/js/acronym.js +0 -28
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/js/attributes.js +0 -111
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/js/cite.js +0 -28
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/js/del.js +0 -53
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/js/element_common.js +0 -229
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/js/ins.js +0 -53
- data/app/assets/libs/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js +0 -1
@@ -1,142 +0,0 @@
|
|
1
|
-
tinyMCEPopup.requireLangPack();
|
2
|
-
|
3
|
-
var SearchReplaceDialog = {
|
4
|
-
init : function(ed) {
|
5
|
-
var t = this, f = document.forms[0], m = tinyMCEPopup.getWindowArg("mode");
|
6
|
-
|
7
|
-
t.switchMode(m);
|
8
|
-
|
9
|
-
f[m + '_panel_searchstring'].value = tinyMCEPopup.getWindowArg("search_string");
|
10
|
-
|
11
|
-
// Focus input field
|
12
|
-
f[m + '_panel_searchstring'].focus();
|
13
|
-
|
14
|
-
mcTabs.onChange.add(function(tab_id, panel_id) {
|
15
|
-
t.switchMode(tab_id.substring(0, tab_id.indexOf('_')));
|
16
|
-
});
|
17
|
-
},
|
18
|
-
|
19
|
-
switchMode : function(m) {
|
20
|
-
var f, lm = this.lastMode;
|
21
|
-
|
22
|
-
if (lm != m) {
|
23
|
-
f = document.forms[0];
|
24
|
-
|
25
|
-
if (lm) {
|
26
|
-
f[m + '_panel_searchstring'].value = f[lm + '_panel_searchstring'].value;
|
27
|
-
f[m + '_panel_backwardsu'].checked = f[lm + '_panel_backwardsu'].checked;
|
28
|
-
f[m + '_panel_backwardsd'].checked = f[lm + '_panel_backwardsd'].checked;
|
29
|
-
f[m + '_panel_casesensitivebox'].checked = f[lm + '_panel_casesensitivebox'].checked;
|
30
|
-
}
|
31
|
-
|
32
|
-
mcTabs.displayTab(m + '_tab', m + '_panel');
|
33
|
-
document.getElementById("replaceBtn").style.display = (m == "replace") ? "inline" : "none";
|
34
|
-
document.getElementById("replaceAllBtn").style.display = (m == "replace") ? "inline" : "none";
|
35
|
-
this.lastMode = m;
|
36
|
-
}
|
37
|
-
},
|
38
|
-
|
39
|
-
searchNext : function(a) {
|
40
|
-
var ed = tinyMCEPopup.editor, se = ed.selection, r = se.getRng(), f, m = this.lastMode, s, b, fl = 0, w = ed.getWin(), wm = ed.windowManager, fo = 0;
|
41
|
-
|
42
|
-
// Get input
|
43
|
-
f = document.forms[0];
|
44
|
-
s = f[m + '_panel_searchstring'].value;
|
45
|
-
b = f[m + '_panel_backwardsu'].checked;
|
46
|
-
ca = f[m + '_panel_casesensitivebox'].checked;
|
47
|
-
rs = f['replace_panel_replacestring'].value;
|
48
|
-
|
49
|
-
if (tinymce.isIE) {
|
50
|
-
r = ed.getDoc().selection.createRange();
|
51
|
-
}
|
52
|
-
|
53
|
-
if (s == '')
|
54
|
-
return;
|
55
|
-
|
56
|
-
function fix() {
|
57
|
-
// Correct Firefox graphics glitches
|
58
|
-
// TODO: Verify if this is actually needed any more, maybe it was for very old FF versions?
|
59
|
-
r = se.getRng().cloneRange();
|
60
|
-
ed.getDoc().execCommand('SelectAll', false, null);
|
61
|
-
se.setRng(r);
|
62
|
-
};
|
63
|
-
|
64
|
-
function replace() {
|
65
|
-
ed.selection.setContent(rs); // Needs to be duplicated due to selection bug in IE
|
66
|
-
};
|
67
|
-
|
68
|
-
// IE flags
|
69
|
-
if (ca)
|
70
|
-
fl = fl | 4;
|
71
|
-
|
72
|
-
switch (a) {
|
73
|
-
case 'all':
|
74
|
-
// Move caret to beginning of text
|
75
|
-
ed.execCommand('SelectAll');
|
76
|
-
ed.selection.collapse(true);
|
77
|
-
|
78
|
-
if (tinymce.isIE) {
|
79
|
-
ed.focus();
|
80
|
-
r = ed.getDoc().selection.createRange();
|
81
|
-
|
82
|
-
while (r.findText(s, b ? -1 : 1, fl)) {
|
83
|
-
r.scrollIntoView();
|
84
|
-
r.select();
|
85
|
-
replace();
|
86
|
-
fo = 1;
|
87
|
-
|
88
|
-
if (b) {
|
89
|
-
r.moveEnd("character", -(rs.length)); // Otherwise will loop forever
|
90
|
-
}
|
91
|
-
}
|
92
|
-
|
93
|
-
tinyMCEPopup.storeSelection();
|
94
|
-
} else {
|
95
|
-
while (w.find(s, ca, b, false, false, false, false)) {
|
96
|
-
replace();
|
97
|
-
fo = 1;
|
98
|
-
}
|
99
|
-
}
|
100
|
-
|
101
|
-
if (fo)
|
102
|
-
tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.allreplaced'));
|
103
|
-
else
|
104
|
-
tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));
|
105
|
-
|
106
|
-
return;
|
107
|
-
|
108
|
-
case 'current':
|
109
|
-
if (!ed.selection.isCollapsed())
|
110
|
-
replace();
|
111
|
-
|
112
|
-
break;
|
113
|
-
}
|
114
|
-
|
115
|
-
se.collapse(b);
|
116
|
-
r = se.getRng();
|
117
|
-
|
118
|
-
// Whats the point
|
119
|
-
if (!s)
|
120
|
-
return;
|
121
|
-
|
122
|
-
if (tinymce.isIE) {
|
123
|
-
ed.focus();
|
124
|
-
r = ed.getDoc().selection.createRange();
|
125
|
-
|
126
|
-
if (r.findText(s, b ? -1 : 1, fl)) {
|
127
|
-
r.scrollIntoView();
|
128
|
-
r.select();
|
129
|
-
} else
|
130
|
-
tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));
|
131
|
-
|
132
|
-
tinyMCEPopup.storeSelection();
|
133
|
-
} else {
|
134
|
-
if (!w.find(s, ca, b, false, false, false, false))
|
135
|
-
tinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));
|
136
|
-
else
|
137
|
-
fix();
|
138
|
-
}
|
139
|
-
}
|
140
|
-
};
|
141
|
-
|
142
|
-
tinyMCEPopup.onInit.add(SearchReplaceDialog.init, SearchReplaceDialog);
|
@@ -1 +0,0 @@
|
|
1
|
-
tinyMCE.addI18n('en.searchreplace_dlg',{findwhat:"Find What",replacewith:"Replace with",direction:"Direction",up:"Up",down:"Down",mcase:"Match Case",findnext:"Find Next",allreplaced:"All occurrences of the search string were replaced.","searchnext_desc":"Find Again",notfound:"The search has been completed. The search string could not be found.","search_title":"Find","replace_title":"Find/Replace",replaceall:"Replace All",replace:"Replace"});
|
@@ -1,100 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
2
|
-
<html xmlns="http://www.w3.org/1999/xhtml">
|
3
|
-
<head>
|
4
|
-
<title>{#searchreplace_dlg.replace_title}</title>
|
5
|
-
<script type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
6
|
-
<script type="text/javascript" src="../../utils/mctabs.js"></script>
|
7
|
-
<script type="text/javascript" src="../../utils/form_utils.js"></script>
|
8
|
-
<script type="text/javascript" src="js/searchreplace.js"></script>
|
9
|
-
<link rel="stylesheet" type="text/css" href="css/searchreplace.css" />
|
10
|
-
</head>
|
11
|
-
<body style="display:none;" role="application" aria-labelledby="app_title">
|
12
|
-
<span id="app_title" style="display:none">{#searchreplace_dlg.replace_title}</span>
|
13
|
-
<form onsubmit="SearchReplaceDialog.searchNext('none');return false;" action="#">
|
14
|
-
<div class="tabs">
|
15
|
-
<ul>
|
16
|
-
<li id="search_tab" aria-controls="search_panel"><span><a href="javascript:SearchReplaceDialog.switchMode('search');" onmousedown="return false;">{#searchreplace.search_desc}</a></span></li>
|
17
|
-
<li id="replace_tab" aria-controls="replace_panel"><span><a href="javascript:SearchReplaceDialog.switchMode('replace');" onmousedown="return false;">{#searchreplace_dlg.replace}</a></span></li>
|
18
|
-
</ul>
|
19
|
-
</div>
|
20
|
-
|
21
|
-
<div class="panel_wrapper">
|
22
|
-
<div id="search_panel" class="panel">
|
23
|
-
<table role="presentation" border="0" cellspacing="0" cellpadding="2">
|
24
|
-
<tr>
|
25
|
-
<td><label for="search_panel_searchstring">{#searchreplace_dlg.findwhat}</label></td>
|
26
|
-
<td><input type="text" id="search_panel_searchstring" name="search_panel_searchstring" style="width: 200px" aria-required="true" /></td>
|
27
|
-
</tr>
|
28
|
-
<tr>
|
29
|
-
<td colspan="2">
|
30
|
-
<table role="presentation" border="0" cellspacing="0" cellpadding="0" class="direction">
|
31
|
-
<tr role="group" aria-labelledby="search_panel_backwards_label">
|
32
|
-
<td><label id="search_panel_backwards_label">{#searchreplace_dlg.direction}</label></td>
|
33
|
-
<td><input id="search_panel_backwardsu" name="search_panel_backwards" class="radio" type="radio" /></td>
|
34
|
-
<td><label for="search_panel_backwardsu">{#searchreplace_dlg.up}</label></td>
|
35
|
-
<td><input id="search_panel_backwardsd" name="search_panel_backwards" class="radio" type="radio" checked="checked" /></td>
|
36
|
-
<td><label for="search_panel_backwardsd">{#searchreplace_dlg.down}</label></td>
|
37
|
-
</tr>
|
38
|
-
</table>
|
39
|
-
</td>
|
40
|
-
</tr>
|
41
|
-
<tr>
|
42
|
-
<td colspan="2">
|
43
|
-
<table role="presentation" border="0" cellspacing="0" cellpadding="0">
|
44
|
-
<tr>
|
45
|
-
<td><input id="search_panel_casesensitivebox" name="search_panel_casesensitivebox" class="checkbox" type="checkbox" /></td>
|
46
|
-
<td><label for="search_panel_casesensitivebox">{#searchreplace_dlg.mcase}</label></td>
|
47
|
-
</tr>
|
48
|
-
</table>
|
49
|
-
</td>
|
50
|
-
</tr>
|
51
|
-
</table>
|
52
|
-
</div>
|
53
|
-
|
54
|
-
<div id="replace_panel" class="panel">
|
55
|
-
<table role="presentation" border="0" cellspacing="0" cellpadding="2">
|
56
|
-
<tr>
|
57
|
-
<td><label for="replace_panel_searchstring">{#searchreplace_dlg.findwhat}</label></td>
|
58
|
-
<td><input type="text" id="replace_panel_searchstring" name="replace_panel_searchstring" style="width: 200px" aria-required="true" /></td>
|
59
|
-
</tr>
|
60
|
-
<tr>
|
61
|
-
<td><label for="replace_panel_replacestring">{#searchreplace_dlg.replacewith}</label></td>
|
62
|
-
<td><input type="text" id="replace_panel_replacestring" name="replace_panel_replacestring" style="width: 200px" aria-required="true" /></td>
|
63
|
-
</tr>
|
64
|
-
<tr>
|
65
|
-
<td colspan="2">
|
66
|
-
<table role="presentation" border="0" cellspacing="0" cellpadding="0" class="direction">
|
67
|
-
<tr role="group" aria-labelledby="replace_panel_dir_label">
|
68
|
-
<td><label id="replace_panel_dir_label">{#searchreplace_dlg.direction}</label></td>
|
69
|
-
<td><input id="replace_panel_backwardsu" name="replace_panel_backwards" class="radio" type="radio" /></td>
|
70
|
-
<td><label for="replace_panel_backwardsu">{#searchreplace_dlg.up}</label></td>
|
71
|
-
<td><input id="replace_panel_backwardsd" name="replace_panel_backwards" class="radio" type="radio" checked="checked" /></td>
|
72
|
-
<td><label for="replace_panel_backwardsd">{#searchreplace_dlg.down}</label></td>
|
73
|
-
</tr>
|
74
|
-
</table>
|
75
|
-
</td>
|
76
|
-
</tr>
|
77
|
-
<tr>
|
78
|
-
<td colspan="2">
|
79
|
-
<table role="presentation" border="0" cellspacing="0" cellpadding="0">
|
80
|
-
<tr>
|
81
|
-
<td><input id="replace_panel_casesensitivebox" name="replace_panel_casesensitivebox" class="checkbox" type="checkbox" /></td>
|
82
|
-
<td><label for="replace_panel_casesensitivebox">{#searchreplace_dlg.mcase}</label></td>
|
83
|
-
</tr>
|
84
|
-
</table>
|
85
|
-
</td>
|
86
|
-
</tr>
|
87
|
-
</table>
|
88
|
-
</div>
|
89
|
-
|
90
|
-
</div>
|
91
|
-
|
92
|
-
<div class="mceActionPanel">
|
93
|
-
<input type="submit" id="insert" name="insert" value="{#searchreplace_dlg.findnext}" />
|
94
|
-
<input type="button" class="button" id="replaceBtn" name="replaceBtn" value="{#searchreplace_dlg.replace}" onclick="SearchReplaceDialog.searchNext('current');" />
|
95
|
-
<input type="button" class="button" id="replaceAllBtn" name="replaceAllBtn" value="{#searchreplace_dlg.replaceall}" onclick="SearchReplaceDialog.searchNext('all');" />
|
96
|
-
<input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
|
97
|
-
</div>
|
98
|
-
</form>
|
99
|
-
</body>
|
100
|
-
</html>
|
@@ -1 +0,0 @@
|
|
1
|
-
(function(){var c=tinymce.DOM,a=tinymce.dom.Event,d=tinymce.each,b=tinymce.explode;tinymce.create("tinymce.plugins.TabFocusPlugin",{init:function(f,g){function e(i,j){if(j.keyCode===9){return a.cancel(j)}}function h(l,p){var j,m,o,n,k;function q(t){n=c.select(":input:enabled,*[tabindex]:not(iframe)");function s(v){return v.nodeName==="BODY"||(v.type!="hidden"&&!(v.style.display=="none")&&!(v.style.visibility=="hidden")&&s(v.parentNode))}function i(v){return v.attributes.tabIndex.specified||v.nodeName=="INPUT"||v.nodeName=="TEXTAREA"}function u(){return tinymce.isIE6||tinymce.isIE7}function r(v){return((!u()||i(v)))&&v.getAttribute("tabindex")!="-1"&&s(v)}d(n,function(w,v){if(w.id==l.id){j=v;return false}});if(t>0){for(m=j+1;m<n.length;m++){if(r(n[m])){return n[m]}}}else{for(m=j-1;m>=0;m--){if(r(n[m])){return n[m]}}}return null}if(p.keyCode===9){k=b(l.getParam("tab_focus",l.getParam("tabfocus_elements",":prev,:next")));if(k.length==1){k[1]=k[0];k[0]=":prev"}if(p.shiftKey){if(k[0]==":prev"){n=q(-1)}else{n=c.get(k[0])}}else{if(k[1]==":next"){n=q(1)}else{n=c.get(k[1])}}if(n){if(n.id&&(l=tinymce.get(n.id||n.name))){l.focus()}else{window.setTimeout(function(){if(!tinymce.isWebKit){window.focus()}n.focus()},10)}return a.cancel(p)}}}f.onKeyUp.add(e);if(tinymce.isGecko){f.onKeyPress.add(h);f.onKeyDown.add(e)}else{f.onKeyDown.add(h)}},getInfo:function(){return{longname:"Tabfocus",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("tabfocus",tinymce.plugins.TabFocusPlugin)})();
|
@@ -1,122 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* editor_plugin_src.js
|
3
|
-
*
|
4
|
-
* Copyright 2009, Moxiecode Systems AB
|
5
|
-
* Released under LGPL License.
|
6
|
-
*
|
7
|
-
* License: http://tinymce.moxiecode.com/license
|
8
|
-
* Contributing: http://tinymce.moxiecode.com/contributing
|
9
|
-
*/
|
10
|
-
|
11
|
-
(function() {
|
12
|
-
var DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, explode = tinymce.explode;
|
13
|
-
|
14
|
-
tinymce.create('tinymce.plugins.TabFocusPlugin', {
|
15
|
-
init : function(ed, url) {
|
16
|
-
function tabCancel(ed, e) {
|
17
|
-
if (e.keyCode === 9)
|
18
|
-
return Event.cancel(e);
|
19
|
-
}
|
20
|
-
|
21
|
-
function tabHandler(ed, e) {
|
22
|
-
var x, i, f, el, v;
|
23
|
-
|
24
|
-
function find(d) {
|
25
|
-
el = DOM.select(':input:enabled,*[tabindex]:not(iframe)');
|
26
|
-
|
27
|
-
function canSelectRecursive(e) {
|
28
|
-
return e.nodeName==="BODY" || (e.type != 'hidden' &&
|
29
|
-
!(e.style.display == "none") &&
|
30
|
-
!(e.style.visibility == "hidden") && canSelectRecursive(e.parentNode));
|
31
|
-
}
|
32
|
-
function canSelectInOldIe(el) {
|
33
|
-
return el.attributes["tabIndex"].specified || el.nodeName == "INPUT" || el.nodeName == "TEXTAREA";
|
34
|
-
}
|
35
|
-
function isOldIe() {
|
36
|
-
return tinymce.isIE6 || tinymce.isIE7;
|
37
|
-
}
|
38
|
-
function canSelect(el) {
|
39
|
-
return ((!isOldIe() || canSelectInOldIe(el))) && el.getAttribute("tabindex") != '-1' && canSelectRecursive(el);
|
40
|
-
}
|
41
|
-
|
42
|
-
each(el, function(e, i) {
|
43
|
-
if (e.id == ed.id) {
|
44
|
-
x = i;
|
45
|
-
return false;
|
46
|
-
}
|
47
|
-
});
|
48
|
-
if (d > 0) {
|
49
|
-
for (i = x + 1; i < el.length; i++) {
|
50
|
-
if (canSelect(el[i]))
|
51
|
-
return el[i];
|
52
|
-
}
|
53
|
-
} else {
|
54
|
-
for (i = x - 1; i >= 0; i--) {
|
55
|
-
if (canSelect(el[i]))
|
56
|
-
return el[i];
|
57
|
-
}
|
58
|
-
}
|
59
|
-
|
60
|
-
return null;
|
61
|
-
}
|
62
|
-
|
63
|
-
if (e.keyCode === 9) {
|
64
|
-
v = explode(ed.getParam('tab_focus', ed.getParam('tabfocus_elements', ':prev,:next')));
|
65
|
-
|
66
|
-
if (v.length == 1) {
|
67
|
-
v[1] = v[0];
|
68
|
-
v[0] = ':prev';
|
69
|
-
}
|
70
|
-
|
71
|
-
// Find element to focus
|
72
|
-
if (e.shiftKey) {
|
73
|
-
if (v[0] == ':prev')
|
74
|
-
el = find(-1);
|
75
|
-
else
|
76
|
-
el = DOM.get(v[0]);
|
77
|
-
} else {
|
78
|
-
if (v[1] == ':next')
|
79
|
-
el = find(1);
|
80
|
-
else
|
81
|
-
el = DOM.get(v[1]);
|
82
|
-
}
|
83
|
-
|
84
|
-
if (el) {
|
85
|
-
if (el.id && (ed = tinymce.get(el.id || el.name)))
|
86
|
-
ed.focus();
|
87
|
-
else
|
88
|
-
window.setTimeout(function() {
|
89
|
-
if (!tinymce.isWebKit)
|
90
|
-
window.focus();
|
91
|
-
el.focus();
|
92
|
-
}, 10);
|
93
|
-
|
94
|
-
return Event.cancel(e);
|
95
|
-
}
|
96
|
-
}
|
97
|
-
}
|
98
|
-
|
99
|
-
ed.onKeyUp.add(tabCancel);
|
100
|
-
|
101
|
-
if (tinymce.isGecko) {
|
102
|
-
ed.onKeyPress.add(tabHandler);
|
103
|
-
ed.onKeyDown.add(tabCancel);
|
104
|
-
} else
|
105
|
-
ed.onKeyDown.add(tabHandler);
|
106
|
-
|
107
|
-
},
|
108
|
-
|
109
|
-
getInfo : function() {
|
110
|
-
return {
|
111
|
-
longname : 'Tabfocus',
|
112
|
-
author : 'Moxiecode Systems AB',
|
113
|
-
authorurl : 'http://tinymce.moxiecode.com',
|
114
|
-
infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus',
|
115
|
-
version : tinymce.majorVersion + "." + tinymce.minorVersion
|
116
|
-
};
|
117
|
-
}
|
118
|
-
});
|
119
|
-
|
120
|
-
// Register plugin
|
121
|
-
tinymce.PluginManager.add('tabfocus', tinymce.plugins.TabFocusPlugin);
|
122
|
-
})();
|
@@ -1,12 +0,0 @@
|
|
1
|
-
<html xmlns="http://www.w3.org/1999/xhtml">
|
2
|
-
<head>
|
3
|
-
<title>blank_page</title>
|
4
|
-
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
5
|
-
<script type="text/javascript">
|
6
|
-
parent.TemplateDialog.loadCSSFiles(document);
|
7
|
-
</script>
|
8
|
-
</head>
|
9
|
-
<body id="mceTemplatePreview" class="mceContentBody">
|
10
|
-
|
11
|
-
</body>
|
12
|
-
</html>
|
@@ -1,23 +0,0 @@
|
|
1
|
-
#frmbody {
|
2
|
-
padding: 10px;
|
3
|
-
background-color: #FFF;
|
4
|
-
border: 1px solid #CCC;
|
5
|
-
}
|
6
|
-
|
7
|
-
.frmRow {
|
8
|
-
margin-bottom: 10px;
|
9
|
-
}
|
10
|
-
|
11
|
-
#templatesrc {
|
12
|
-
border: none;
|
13
|
-
width: 320px;
|
14
|
-
height: 240px;
|
15
|
-
}
|
16
|
-
|
17
|
-
.title {
|
18
|
-
padding-bottom: 5px;
|
19
|
-
}
|
20
|
-
|
21
|
-
.mceActionPanel {
|
22
|
-
padding-top: 5px;
|
23
|
-
}
|
@@ -1 +0,0 @@
|
|
1
|
-
(function(){var a=tinymce.each;tinymce.create("tinymce.plugins.TemplatePlugin",{init:function(b,c){var d=this;d.editor=b;b.addCommand("mceTemplate",function(e){b.windowManager.open({file:c+"/template.htm",width:b.getParam("template_popup_width",750),height:b.getParam("template_popup_height",600),inline:1},{plugin_url:c})});b.addCommand("mceInsertTemplate",d._insertTemplate,d);b.addButton("template",{title:"template.desc",cmd:"mceTemplate"});b.onPreProcess.add(function(e,g){var f=e.dom;a(f.select("div",g.node),function(h){if(f.hasClass(h,"mceTmpl")){a(f.select("*",h),function(i){if(f.hasClass(i,e.getParam("template_mdate_classes","mdate").replace(/\s+/g,"|"))){i.innerHTML=d._getDateTime(new Date(),e.getParam("template_mdate_format",e.getLang("template.mdate_format")))}});d._replaceVals(h)}})})},getInfo:function(){return{longname:"Template plugin",author:"Moxiecode Systems AB",authorurl:"http://www.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_insertTemplate:function(i,j){var k=this,g=k.editor,f,c,d=g.dom,b=g.selection.getContent();f=j.content;a(k.editor.getParam("template_replace_values"),function(l,h){if(typeof(l)!="function"){f=f.replace(new RegExp("\\{\\$"+h+"\\}","g"),l)}});c=d.create("div",null,f);n=d.select(".mceTmpl",c);if(n&&n.length>0){c=d.create("div",null);c.appendChild(n[0].cloneNode(true))}function e(l,h){return new RegExp("\\b"+h+"\\b","g").test(l.className)}a(d.select("*",c),function(h){if(e(h,g.getParam("template_cdate_classes","cdate").replace(/\s+/g,"|"))){h.innerHTML=k._getDateTime(new Date(),g.getParam("template_cdate_format",g.getLang("template.cdate_format")))}if(e(h,g.getParam("template_mdate_classes","mdate").replace(/\s+/g,"|"))){h.innerHTML=k._getDateTime(new Date(),g.getParam("template_mdate_format",g.getLang("template.mdate_format")))}if(e(h,g.getParam("template_selected_content_classes","selcontent").replace(/\s+/g,"|"))){h.innerHTML=b}});k._replaceVals(c);g.execCommand("mceInsertContent",false,c.innerHTML);g.addVisual()},_replaceVals:function(c){var d=this.editor.dom,b=this.editor.getParam("template_replace_values");a(d.select("*",c),function(f){a(b,function(g,e){if(d.hasClass(f,e)){if(typeof(b[e])=="function"){b[e](f)}}})})},_getDateTime:function(e,b){if(!b){return""}function c(g,d){var f;g=""+g;if(g.length<d){for(f=0;f<(d-g.length);f++){g="0"+g}}return g}b=b.replace("%D","%m/%d/%y");b=b.replace("%r","%I:%M:%S %p");b=b.replace("%Y",""+e.getFullYear());b=b.replace("%y",""+e.getYear());b=b.replace("%m",c(e.getMonth()+1,2));b=b.replace("%d",c(e.getDate(),2));b=b.replace("%H",""+c(e.getHours(),2));b=b.replace("%M",""+c(e.getMinutes(),2));b=b.replace("%S",""+c(e.getSeconds(),2));b=b.replace("%I",""+((e.getHours()+11)%12+1));b=b.replace("%p",""+(e.getHours()<12?"AM":"PM"));b=b.replace("%B",""+this.editor.getLang("template_months_long").split(",")[e.getMonth()]);b=b.replace("%b",""+this.editor.getLang("template_months_short").split(",")[e.getMonth()]);b=b.replace("%A",""+this.editor.getLang("template_day_long").split(",")[e.getDay()]);b=b.replace("%a",""+this.editor.getLang("template_day_short").split(",")[e.getDay()]);b=b.replace("%%","%");return b}});tinymce.PluginManager.add("template",tinymce.plugins.TemplatePlugin)})();
|
@@ -1,159 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* editor_plugin_src.js
|
3
|
-
*
|
4
|
-
* Copyright 2009, Moxiecode Systems AB
|
5
|
-
* Released under LGPL License.
|
6
|
-
*
|
7
|
-
* License: http://tinymce.moxiecode.com/license
|
8
|
-
* Contributing: http://tinymce.moxiecode.com/contributing
|
9
|
-
*/
|
10
|
-
|
11
|
-
(function() {
|
12
|
-
var each = tinymce.each;
|
13
|
-
|
14
|
-
tinymce.create('tinymce.plugins.TemplatePlugin', {
|
15
|
-
init : function(ed, url) {
|
16
|
-
var t = this;
|
17
|
-
|
18
|
-
t.editor = ed;
|
19
|
-
|
20
|
-
// Register commands
|
21
|
-
ed.addCommand('mceTemplate', function(ui) {
|
22
|
-
ed.windowManager.open({
|
23
|
-
file : url + '/template.htm',
|
24
|
-
width : ed.getParam('template_popup_width', 750),
|
25
|
-
height : ed.getParam('template_popup_height', 600),
|
26
|
-
inline : 1
|
27
|
-
}, {
|
28
|
-
plugin_url : url
|
29
|
-
});
|
30
|
-
});
|
31
|
-
|
32
|
-
ed.addCommand('mceInsertTemplate', t._insertTemplate, t);
|
33
|
-
|
34
|
-
// Register buttons
|
35
|
-
ed.addButton('template', {title : 'template.desc', cmd : 'mceTemplate'});
|
36
|
-
|
37
|
-
ed.onPreProcess.add(function(ed, o) {
|
38
|
-
var dom = ed.dom;
|
39
|
-
|
40
|
-
each(dom.select('div', o.node), function(e) {
|
41
|
-
if (dom.hasClass(e, 'mceTmpl')) {
|
42
|
-
each(dom.select('*', e), function(e) {
|
43
|
-
if (dom.hasClass(e, ed.getParam('template_mdate_classes', 'mdate').replace(/\s+/g, '|')))
|
44
|
-
e.innerHTML = t._getDateTime(new Date(), ed.getParam("template_mdate_format", ed.getLang("template.mdate_format")));
|
45
|
-
});
|
46
|
-
|
47
|
-
t._replaceVals(e);
|
48
|
-
}
|
49
|
-
});
|
50
|
-
});
|
51
|
-
},
|
52
|
-
|
53
|
-
getInfo : function() {
|
54
|
-
return {
|
55
|
-
longname : 'Template plugin',
|
56
|
-
author : 'Moxiecode Systems AB',
|
57
|
-
authorurl : 'http://www.moxiecode.com',
|
58
|
-
infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template',
|
59
|
-
version : tinymce.majorVersion + "." + tinymce.minorVersion
|
60
|
-
};
|
61
|
-
},
|
62
|
-
|
63
|
-
_insertTemplate : function(ui, v) {
|
64
|
-
var t = this, ed = t.editor, h, el, dom = ed.dom, sel = ed.selection.getContent();
|
65
|
-
|
66
|
-
h = v.content;
|
67
|
-
|
68
|
-
each(t.editor.getParam('template_replace_values'), function(v, k) {
|
69
|
-
if (typeof(v) != 'function')
|
70
|
-
h = h.replace(new RegExp('\\{\\$' + k + '\\}', 'g'), v);
|
71
|
-
});
|
72
|
-
|
73
|
-
el = dom.create('div', null, h);
|
74
|
-
|
75
|
-
// Find template element within div
|
76
|
-
n = dom.select('.mceTmpl', el);
|
77
|
-
if (n && n.length > 0) {
|
78
|
-
el = dom.create('div', null);
|
79
|
-
el.appendChild(n[0].cloneNode(true));
|
80
|
-
}
|
81
|
-
|
82
|
-
function hasClass(n, c) {
|
83
|
-
return new RegExp('\\b' + c + '\\b', 'g').test(n.className);
|
84
|
-
};
|
85
|
-
|
86
|
-
each(dom.select('*', el), function(n) {
|
87
|
-
// Replace cdate
|
88
|
-
if (hasClass(n, ed.getParam('template_cdate_classes', 'cdate').replace(/\s+/g, '|')))
|
89
|
-
n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_cdate_format", ed.getLang("template.cdate_format")));
|
90
|
-
|
91
|
-
// Replace mdate
|
92
|
-
if (hasClass(n, ed.getParam('template_mdate_classes', 'mdate').replace(/\s+/g, '|')))
|
93
|
-
n.innerHTML = t._getDateTime(new Date(), ed.getParam("template_mdate_format", ed.getLang("template.mdate_format")));
|
94
|
-
|
95
|
-
// Replace selection
|
96
|
-
if (hasClass(n, ed.getParam('template_selected_content_classes', 'selcontent').replace(/\s+/g, '|')))
|
97
|
-
n.innerHTML = sel;
|
98
|
-
});
|
99
|
-
|
100
|
-
t._replaceVals(el);
|
101
|
-
|
102
|
-
ed.execCommand('mceInsertContent', false, el.innerHTML);
|
103
|
-
ed.addVisual();
|
104
|
-
},
|
105
|
-
|
106
|
-
_replaceVals : function(e) {
|
107
|
-
var dom = this.editor.dom, vl = this.editor.getParam('template_replace_values');
|
108
|
-
|
109
|
-
each(dom.select('*', e), function(e) {
|
110
|
-
each(vl, function(v, k) {
|
111
|
-
if (dom.hasClass(e, k)) {
|
112
|
-
if (typeof(vl[k]) == 'function')
|
113
|
-
vl[k](e);
|
114
|
-
}
|
115
|
-
});
|
116
|
-
});
|
117
|
-
},
|
118
|
-
|
119
|
-
_getDateTime : function(d, fmt) {
|
120
|
-
if (!fmt)
|
121
|
-
return "";
|
122
|
-
|
123
|
-
function addZeros(value, len) {
|
124
|
-
var i;
|
125
|
-
|
126
|
-
value = "" + value;
|
127
|
-
|
128
|
-
if (value.length < len) {
|
129
|
-
for (i=0; i<(len-value.length); i++)
|
130
|
-
value = "0" + value;
|
131
|
-
}
|
132
|
-
|
133
|
-
return value;
|
134
|
-
}
|
135
|
-
|
136
|
-
fmt = fmt.replace("%D", "%m/%d/%y");
|
137
|
-
fmt = fmt.replace("%r", "%I:%M:%S %p");
|
138
|
-
fmt = fmt.replace("%Y", "" + d.getFullYear());
|
139
|
-
fmt = fmt.replace("%y", "" + d.getYear());
|
140
|
-
fmt = fmt.replace("%m", addZeros(d.getMonth()+1, 2));
|
141
|
-
fmt = fmt.replace("%d", addZeros(d.getDate(), 2));
|
142
|
-
fmt = fmt.replace("%H", "" + addZeros(d.getHours(), 2));
|
143
|
-
fmt = fmt.replace("%M", "" + addZeros(d.getMinutes(), 2));
|
144
|
-
fmt = fmt.replace("%S", "" + addZeros(d.getSeconds(), 2));
|
145
|
-
fmt = fmt.replace("%I", "" + ((d.getHours() + 11) % 12 + 1));
|
146
|
-
fmt = fmt.replace("%p", "" + (d.getHours() < 12 ? "AM" : "PM"));
|
147
|
-
fmt = fmt.replace("%B", "" + this.editor.getLang("template_months_long").split(',')[d.getMonth()]);
|
148
|
-
fmt = fmt.replace("%b", "" + this.editor.getLang("template_months_short").split(',')[d.getMonth()]);
|
149
|
-
fmt = fmt.replace("%A", "" + this.editor.getLang("template_day_long").split(',')[d.getDay()]);
|
150
|
-
fmt = fmt.replace("%a", "" + this.editor.getLang("template_day_short").split(',')[d.getDay()]);
|
151
|
-
fmt = fmt.replace("%%", "%");
|
152
|
-
|
153
|
-
return fmt;
|
154
|
-
}
|
155
|
-
});
|
156
|
-
|
157
|
-
// Register plugin
|
158
|
-
tinymce.PluginManager.add('template', tinymce.plugins.TemplatePlugin);
|
159
|
-
})();
|