File: 0.04.02a/server/web/main.php (View as HTML)

  1: <?php
  2: /* -------------------------------------------------------------
  3: This file is part of FreeNATS
  4: 
  5: FreeNATS is (C) Copyright 2008 PurplePixie Systems
  6: 
  7: FreeNATS is free software: you can redistribute it and/or modify
  8: it under the terms of the GNU General Public License as published by
  9: the Free Software Foundation, either version 3 of the License, or
 10: (at your option) any later version.
 11: 
 12: FreeNATS is distributed in the hope that it will be useful,
 13: but WITHOUT ANY WARRANTY; without even the implied warranty of
 14: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 15: GNU General Public License for more details.
 16: 
 17: You should have received a copy of the GNU General Public License
 18: along with FreeNATS.  If not, see www.gnu.org/licenses
 19: 
 20: For more information see www.purplepixie.org/freenats
 21: -------------------------------------------------------------- */
 22: 
 23: ob_start();
 24: require("include.php");
 25: $NATS->Start();
 26: if (!$NATS_Session->Check($NATS->DB))
 27: 	{
 28: 	header("Location: ./?login_msg=Invalid+Or+Expired+Session");
 29: 	exit();
 30: 	}
 31: ob_end_flush();
 32: Screen_Header("Monitoring Interface",1);
 33: 
 34: if (isset($_REQUEST['message'])) 
 35: 	{
 36: 	echo "<b>".$_REQUEST['message']."</b><br>";
 37: 	$poplist[]=$_REQUEST['message'];
 38: 	}
 39: 	
 40: if (isset($_REQUEST['nodemove'])) $nm=true;
 41: else $nm=false;
 42: 
 43: ?>
 44: <br>
 45: <?php
 46: if (isset($_REQUEST['check_updates']))
 47: 	{
 48: 	// check for updates
 49: 	$dq="?CheckVersion=".$NATS->Version."&JSMode=1";
 50: 	$dl="http://www.purplepixie.org/freenats/download.php";
 51: 	$du=$dl.$dq;
 52: 	echo "<b>Checking for Updates: ";
 53: 	echo "<script type=\"text/javascript\" src=\"".$du."\"></script>\n";
 54: 	echo "</b><br>";
 55: 	echo "If this test fails you can check on the <a href=http://www.purplepixie.org/freenats/>website</a>.<br>";
 56: 	echo "You are currently running version ";
 57: 	echo $NATS->Version.$NATS->Release.".";
 58: 	echo "<br><i>You can check regularly via the top-right admin link</i><br><br>";
 59: 	}
 60: 
 61: if ($nm)
 62: {
 63: $q="SELECT nodeid,weight FROM fnnode ORDER BY weight ASC";
 64: $r=$NATS->DB->Query($q);
 65: $nml="<span style=\"font-size: 8pt;\">Move Before </span><select name=move_before style=\"font-size: 8pt;\">";
 66: while ($row=$NATS->DB->Fetch_Array($r))
 67: 	{
 68: 	$nml.="<option value=".$row['weight'].">".$row['nodeid']."</option>";
 69: 	}
 70: $nml.="</select>";
 71: $NATS->DB->Free($r);	
 72: }
 73: 
 74: echo "<b class=\"subtitle\">Nodes</b> ".hlink("Node")."<br><br>";
 75: $q="SELECT nodeid,nodename,alertlevel,weight FROM fnnode ORDER BY weight ASC";
 76: $r=$NATS->DB->Query($q);
 77: 
 78: echo "<table class=\"nicetablehov\">";
 79: echo "<tr><td><b>Node</b></td><td><b>Options</b></td><td><a href=main.php?nodemove=1><b>Move</a></b></td></tr>";
 80: $f=0;
 81: $l=$NATS->DB->Num_Rows($r);
 82: while ($row=$NATS->DB->Fetch_Array($r))
 83: 	{
 84: 	//echo "<tr class=\"nicetablehov\" id=\"noderow_".$row['nodeid']."\" onmouseover=\"highlightrow('noderow_".$row['nodeid']."')\"><td align=left>";
 85: 	echo "<tr class=\"nicetablehov\"><td align=left>";
 86: 	echo "<a href=node.php?nodeid=".$row['nodeid'].">";
 87: 	
 88: 	echo "<b class=\"al".$row['alertlevel']."\">";
 89: 	echo $row['nodename'];
 90: 	echo "</b>";
 91: 	
 92: 	echo "</a> ";
 93: 	echo "(".$row['nodeid'].")";
 94: 	echo "</td><td align=left>";
 95: 	echo "&nbsp;<a href=node.edit.php?nodeid=".$row['nodeid']."><img src=images/options/application.png border=0 title=\"Edit Options\"></a>";
 96: 	echo "&nbsp;";
 97: 	echo "<a href=node.action.php?action=delete&nodeid=".$row['nodeid']."><img src=images/options/action_delete.png border=0></a> ";
 98: 	echo "</td>";
 99: 	
100: 	if ($nm) 
101: 		{
102: 		echo "<form action=node.action.php method=post>";
103: 		echo "<input type=hidden name=nodeid value=".$row['nodeid'].">";
104: 		echo "<input type=hidden name=action value=move_before>";
105: 		}
106: 	
107: 	echo "<td>";
108: 	if ($f==0) echo "<img src=images/arrows/off/arrow_top.png>";
109: 	else 
110: 		{
111: 		echo "<a href=node.action.php?nodeid=".$row['nodeid']."&action=move&dir=up>";
112: 		echo "<img src=\"images/arrows/on/arrow_top.png\" border=0>";
113: 		echo "</a>";
114: 		}
115: 	
116: 	if ($f>=($l-1)) echo "<img src=images/arrows/off/arrow_down.png>";
117: 	else 
118: 		{
119: 		echo "<a href=node.action.php?nodeid=".$row['nodeid']."&action=move&dir=down>";
120: 		echo "<img src=\"images/arrows/on/arrow_down.png\" border=0>";
121: 		echo "</a>";
122: 		}
123: 	
124: 	if ($nm)
125: 		{
126: 		echo "<span style=\"font-size: 8pt;\">&nbsp;[".$row['weight']."]&nbsp;</span>";
127: 		echo $nml;
128: 		echo " <input type=submit value=\"Go\" style=\"font-size: 8pt;\">";
129: 		}
130: 		
131: 	echo "</td>";
132: 	
133: 	if ($nm) echo "</form>"; 
134: 	$f++;
135: 	
136: 	echo "</tr>";
137: 	}
138: echo "<form action=node.action.php><input type=hidden name=action value=create>";
139: echo "<tr><td><input type=text name=nodeid size=20 maxlenth=32></td><td><input type=submit value=\"Create Node\"></td>";
140: echo "<td>".hlink("Node:Create");
141: if ($nm) echo " <a href=node.action.php?action=reorderweight>Refresh Weighting</a>";
142: echo "</td></tr></form>";
143: 
144: $fx=time();
145: $sx=$fx-(60*60*24);
146: echo "<tr><td colspan=2><b>Summary: </b><a href=summary.test.php?nodeid=*>Today</a> | ";
147: echo "<a href=summary.test.php?nodeid=*&startx=".$sx."&finishx=".$fx.">Last 24 Hrs</a>";
148: echo "</td></tr>";
149: 
150: echo "</table>";
151: 
152: echo "<br><br>";
153: echo "<b class=\"subtitle\">Node Groups</b> ".hlink("Group")."<br><br>";
154: 
155: $q="SELECT groupid,groupname FROM fngroup ORDER BY weight ASC";
156: $r=$NATS->DB->Query($q);
157: $f=0;
158: echo "<table class=\"nicetablehov\">";
159: $l=$NATS->DB->Num_Rows($r);
160: while ($row=$NATS->DB->Fetch_Array($r))
161: 	{
162: 	echo "<tr class=\"nicetablehov\">";
163: 	echo "<td><a href=group.php?groupid=".$row['groupid']."><b class=\"al".$NATS->GroupAlertLevel($row['groupid'])."\">".$row['groupname']."</b></a></td>";
164: 	echo "<td><a href=group.edit.php?groupid=".$row['groupid']."><img src=images/options/application.png border=0 title=\"Edit Options\"></a>";
165: 	echo "&nbsp;";
166: 	echo "<a href=group.action.php?action=delete&groupid=".$row['groupid']."><img src=images/options/action_delete.png border=0 title=\"Delete Group\"></a></td>";
167: 	echo "<td>";
168: 	
169: 	if ($f==0) echo "<img src=images/arrows/off/arrow_top.png>";
170: 	else 
171: 		{
172: 		echo "<a href=group.action.php?groupid=".$row['groupid']."&action=move&dir=up>";
173: 		echo "<img src=\"images/arrows/on/arrow_top.png\" border=0>";
174: 		echo "</a>";
175: 		}
176: 	
177: 	if ($f>=($l-1)) echo "<img src=images/arrows/off/arrow_down.png>";
178: 	else 
179: 		{
180: 		echo "<a href=group.action.php?groupid=".$row['groupid']."&action=move&dir=down>";
181: 		echo "<img src=\"images/arrows/on/arrow_down.png\" border=0>";
182: 		echo "</a>";
183: 		}
184: 		
185: 	echo "</td>";
186: 	$f++;
187: 	
188: 	echo "</tr>";
189: 	}
190: echo "<form action=group.action.php method=post>";
191: echo "<input type=hidden name=action value=create>";
192: echo "<tr><td><input type=text size=20 name=groupname maxlength=120></td><td><input type=submit value=\"Create Group\">";
193: echo "</td><td>".hlink("Group:Create")."</td></tr></form>";
194: echo "</table>";
195: 
196: 
197: echo "<br><br>";
198: echo "<b class=\"subtitle\">Views</b> ".hlink("View")."<br><br>";
199: echo "<table class=\"nicetablehov\">";
200: // get views...
201: $q="SELECT viewid,vtitle FROM fnview";
202: $r=$NATS->DB->Query($q);
203: while ($row=$NATS->DB->Fetch_Array($r))
204: 	{
205: 	echo "<tr class=\"nicetablehov\"><td>";
206: 	echo "<a href=view.php?viewid=".$row['viewid'].">".$row['vtitle']."</a>";
207: 	echo "</td><td>";
208: 	echo "<a href=view.edit.php?viewid=".$row['viewid']."><img src=images/options/application.png border=0 title=\"Edit View Options\"></a>";
209: 	echo "&nbsp;";
210: 	echo "<a href=view.edit.php?viewid=".$row['viewid']."&action=delete><img src=images/options/action_delete.png border=0 title=\"Delete View\"></a>";
211: 	echo "</td></tr>";
212: 	}
213: 
214: 
215: echo "<form action=view.edit.php method=post><input type=hidden name=action value=create>";
216: echo "<tr><td><input type=text name=vtitle size=20 maxlength=64></td><td><input type=submit value=\"Create View\"> ";
217: echo hlink("View:Create")."</td></tr></form>";
218: echo "</table>";
219: 
220: ?>
221: 
222: 
223: <?php
224: Screen_Footer();
225: /* old PhoneHome Ping Tracker - now in screen as a png
226: $t=$NATS->Cfg->Get("freenats.tracker");
227: if ( ($t!="") && ($t>0) )
228: 	$NATS->PhoneHome();
229: */
230: ?>
231: