Browse code

TinyMCE version directories relocated to /tinymce/ directory, each with its own version numbers: 2, 3, 4 - Slight naming tweak to TinyMCE dropdown in site settings

Clarissa Walker authored on 2026/07/27 13:46:03
Showing 1 changed files
1 1
deleted file mode 100644
... ...
@@ -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);
Browse code

Re-add TinyMCE 2.0.1 to the site settings list - TinyMCE directoy names changed - installer submission settings layout dirty fix

Clarissa Walker authored on 2026/07/27 11:20:38
Showing 1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,142 @@
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);