[Cluster-devel] conga/luci/cluster fence_device.js

kupcevic at sourceware.org kupcevic at sourceware.org
Tue Dec 12 13:37:26 UTC 2006


CVSROOT:	/cvs/cluster
Module name:	conga
Branch: 	RHEL5
Changes by:	kupcevic at sourceware.org	2006-12-12 13:37:25

Added files:
	luci/cluster   : fence_device.js 

Log message:
	Forgotten file

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/luci/cluster/fence_device.js.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=NONE&r2=1.2.2.1

/cvs/cluster/conga/luci/cluster/fence_device.js,v  -->  standard output
revision 1.2.2.1
--- conga/luci/cluster/fence_device.js
+++ -	2006-12-12 13:37:26.695843000 +0000
@@ -0,0 +1,95 @@
+function swap_fence_div(container_id, element_id) {
+	var container_element = document.getElementById(container_id);
+	if (!container_element) {
+		return (-1);
+	}
+
+	var child_element = document.getElementById(element_id);
+	if (!child_element) {
+		if (container_element.firstChild)
+			container_element.removeChild(container_element.firstChild);
+		return (-1);
+	}
+
+	if (container_element.firstChild)
+		container_element.removeChild(container_element.firstChild);
+	var target = child_element.cloneNode(1);
+	target.id = null;
+	container_element.appendChild(target);
+}
+
+function swap_node_fence_div(container_id, fence_opt) {
+	var container_element = document.getElementById(container_id);
+	if (!container_element || !fence_opt || !fence_opt.value)
+		return (-1);
+
+	var fence_id = fence_opt.value;
+	var child_element = document.getElementById(fence_id);
+	if (container_element.firstChild)
+		container_element.removeChild(container_element.firstChild);
+
+	if (!child_element)
+		return (-1);
+
+	var target = child_element.cloneNode(1);
+	target.id = null;
+
+	var fence_type = fence_id;
+	if (fence_opt.className.match(/shared_fencedev/)) {
+		var input_tags = target.getElementsByTagName('input');
+		for (var i = 0 ; i < input_tags.length ; i++) {
+			if (input_tags[i].type != 'button') {
+				input_tags[i].disabled = true;
+				if (input_tags[i].name == 'fence_type')
+					fence_type = input_tags[i].value;
+			}
+		}	
+	}
+
+	var fi_form = document.getElementById(fence_type + '_instance');
+	if (fi_form)
+		target.appendChild(fi_form.cloneNode(1));
+	container_element.appendChild(target);
+}
+
+var num_fences_level = Array(0, 0)
+
+function add_node_fence_device(fence_level) {
+	var cont_name = 'fence_list_level' + fence_level;
+	var container = document.getElementById(cont_name);
+	if (!container)
+		return (-1);
+
+	var chooser_elem = document.getElementById('fence_selection_block');
+	if (!chooser_elem)
+		return (-1);
+
+	var div_elem = document.createElement('div');
+	if (!div_elem)
+		return (-1);
+	var level_num_fences = num_fences_level[fence_level];
+
+	div_elem.id = 'fence' + fence_level + '_' + level_num_fences;
+	chooser_elem = chooser_elem.cloneNode(1);
+	chooser_elem.id = null;
+	chooser_elem.className = null;
+
+	var input_elems = chooser_elem.getElementsByTagName('input');
+	if (!input_elems || input_elems.length < 2)
+		return (-1);
+	for (var i = 0 ; i < input_elems.length ; i++) {
+		if (input_elems[i].name == 'fence_level')
+			input_elems[i].value = fence_level;
+		else if (input_elems[i].name == 'fence_num')
+			input_elems[i].value = level_num_fences++;
+	}
+
+	var select_elem = chooser_elem.getElementsByTagName('select');
+	if (!select_elem || select_elem.length != 1)
+		return (-1);
+	select_elem[0].setAttribute('onChange', "swap_node_fence_div('" + div_elem.id + "', this.options[this.selectedIndex])");
+
+	div_elem.appendChild(chooser_elem);
+	container.appendChild(div_elem);
+	num_fences_level[fence_level]++;
+}




More information about the Cluster-devel mailing list