summaryrefslogtreecommitdiffstats
path: root/usr/local/www/javascript/index/sajax.js
blob: 56722c79e67f02e7d7152b58c50da84ce338c24e (plain)
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127

// Seconds * 1000 = value
var update_interval = 7000;


function updateMeters()
{
	x_get_stats(stats);

	window.setTimeout('updateMeters()', update_interval);
}

function stats(x) {

	var values = x.split("|");

	for(var counter=0; counter<x.length; x++) {
		if(values[counter] == 'undefined' || values[counter] == null)
			return;
	}	

	updateCPU(values[0]);
	updateMemory(values[1]);
	updateUptime(values[2]);
	updateState(values[3]);
	updateTemp(values[4]);
	updateDateTime(values[5]);
	updateInterfaceStats(values[6]);
	updateInterfaces(values[7]);
	
}

function updateMemory(x)
{
	document.getElementById("memusagemeter").value = x + '%';

	document.getElementById("memwidtha").style.width = x + 'px';
	document.getElementById("memwidthb").style.width = (100 - x) + 'px';
}

function updateCPU(x)
{
	document.getElementById("cpumeter").value = x + '%';
	
	document.getElementById("cpuwidtha").style.width = x + 'px';
	document.getElementById("cpuwidthb").style.width = (100 - x) + 'px';
}

function updateTemp(x)
{
	if(document.getElementById("tempmeter") != null) {
		document.getElementById("tempmeter").value = x + 'C';
		document.getElementById("tempwidtha").style.width = x + 'px';
		document.getElementById("tempwidthb").style.width = (100 - x) + 'px';
	}
}

function updateDateTime(x) {
	if(!$('datetime')) 
		return;		
	if(document.getElementById("datetime") == null)
		return;		
	document.getElementById("datetime").firstChild.data = x;
}

function updateUptime(x)
{
	document.getElementById("uptime").value = x;
}

function updateState(x)
{
	document.getElementById("pfstate").value = x;
}

function updateInterfaceStats(x){
	if (widgetActive("interface_statistics")){
		statistics_split = x.split(",");
		var counter = 1;
		for (var y=0; y<statistics_split.length-1; y++){
			document.getElementById('stat' + counter).innerHTML = statistics_split[y];
			counter++;	
		}
	}
}

function updateInterfaces(x){
	if (widgetActive("interfaces")){
		interfaces = x.split("~");
		for (var z=0; z<interfaces.length-1; z++){
			details = interfaces[z].split(",");	
			if (details[1] == "up"){
				document.getElementById(details[0] + '-up').style.display = "inline";	 
				document.getElementById(details[0] + '-down').style.display = "none";
				document.getElementById(details[0] + '-block').style.display = "none";
				document.getElementById(details[0] + '-ip').innerHTML = details[2]; 
				document.getElementById(details[0] + '-media').innerHTML = details[3];
			} else if (details[1] == "down"){
				document.getElementById(details[0] + '-down').style.display = "inline";	 
				document.getElementById(details[0] + '-up').style.display = "none";
				document.getElementById(details[0] + '-block').style.display = "none";
				document.getElementById(details[0] + '-ip').innerHTML = details[2]; 
				document.getElementById(details[0] + '-media').innerHTML = details[3];			
			} else if (details[1] == "block"){
				document.getElementById(details[0] + '-block').style.display = "inline";	 
				document.getElementById(details[0] + '-down').style.display = "none";
				document.getElementById(details[0] + '-up').style.display = "none";			
			}
			
		}
	}
}

function widgetActive(x){
	var widget = document.getElementById(x + '-container');
	if (widget.style.display != "none")
		return true;
	else
		return false;
}

/* start ajax helper "thread" if not started */
if(!ajaxStarted) {
	window.setTimeout('updateMeters()', update_interval);
	var ajaxStarted = true;
}

OpenPOWER on IntegriCloud