Subversion Repositories Sites.tela-botanica.org

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
420 florian 1
function init() {
2
	tinyMCEPopup.resizeToInnerSize();
3
 
4
	// start with appropiate tab
5
	var task = (tinyMCE.getWindowArg("replacestring") != null) ? "replace" : "search";
6
	mcTabs.displayTab(task + '_tab', task +'_panel');
7
	manageReplaceButtons();
8
 
9
	var formObj = document.forms[0];
10
 
11
	formObj[task + "_panel_searchstring"].value = tinyMCE.getWindowArg("searchstring");
12
	formObj["replace_panel_replacestring"].value = (tinyMCE.getWindowArg("replacestring") != null) ? tinyMCE.getWindowArg("replacestring") : "";
13
	formObj[task + "_panel_casesensitivebox"].checked = tinyMCE.getWindowArg("casesensitive");
14
	formObj[task + "_panel_backwardsu"].checked = tinyMCE.getWindowArg("backwards");
15
	formObj[task + "_panel_backwardsd"].checked = !tinyMCE.getWindowArg("backwards");
16
}
17
 
18
function searchNext(replacemode) {
19
	// "search" or "replace" mode of operation?
20
	var task = (document.getElementById("search_tab").className == "current") ? "search" : "replace";
21
 
22
	var formObj = document.forms[0];
23
 
24
	if (task == "replace") {
25
		// Whats the point?
26
		if (formObj[task + "_panel_searchstring"].value == "" || formObj[task + "_panel_searchstring"].value == formObj[task + "_panel_replacestring"].value)
27
			return false;
28
	}
29
 
30
	// Do search
31
	tinyMCEPopup.execCommand('mceSearch', false, {
32
		string : formObj[task + "_panel_searchstring"].value,
33
		replacestring : formObj["replace_panel_replacestring"].value,
34
		replacemode : replacemode,
35
		casesensitive : formObj[task + "_panel_casesensitivebox"].checked,
36
		backwards : formObj[task + "_panel_backwardsu"].checked,
37
		win : window
38
		}, false);
39
 
40
	window.focus();
41
 
42
	return false;
43
}
44
 
45
function cancelAction() {
46
	tinyMCEPopup.close();
47
}
48
 
49
function manageReplaceButtons() {
50
	// "search" or "replace" mode of operation?
51
	var task = (document.getElementById("search_tab").className == "current") ? "search" : "replace";
52
	document.getElementById("replace_buttons").style.visibility = (task == "replace") ? "visible" : "hidden";
53
}
54
 
55
function copyValues(link) {
56
	// check if tab is already active
57
	var tab = link;
58
	while (tab.tagName && tab.tagName.toLowerCase() != "li") tab = tab.parentNode;
59
	if (tab.className) return false; // tab is already active -> no need to copy any values!
60
 
61
	// copy values from one panel to the other (if they exist there)
62
	var from_panel_name = tab.id.match(/^search/i) ? "replace_panel" : "search_panel";
63
	var to_panel_name = (from_panel_name == "search_panel") ? "replace_panel" : "search_panel";
64
 
65
	// find all elements with IDs to copy their values
66
	var elms = document.getElementById(from_panel_name).getElementsByTagName("*");
67
	for (var i = 0; i < elms.length; i++) {
68
		if (elms[i].id && elms[i].id != "") {
69
			var checked = "undefined";
70
			if (elms[i].type.toLowerCase() == "checkbox" || elms[i].type.toLowerCase() == "radio")
71
				checked = elms[i].checked;
72
 
73
			// copy values if element exists in other panel
74
			var to_elm_name = to_panel_name + elms[i].id.substring(from_panel_name.length, elms[i].id.length);
75
			var to_elm = document.getElementById(to_elm_name);
76
			if (to_elm) {
77
				if (checked != "undefined")
78
					to_elm.checked = checked;
79
				else
80
					to_elm.value = elms[i].value;
81
			}
82
		}
83
	}
84
 
85
	return false;
86
}