File: 0.02.69a/server/web/view.edit.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: if ($NATS_Session->userlevel<5) UL_Error("Edit View");
 32: 
 33: function chs($var,$def=0)
 34: {
 35: if (isset($_REQUEST[$var])) return ss($_REQUEST[$var]);
 36: else return $def;
 37: }
 38: 
 39: 
 40: if (isset($_REQUEST['action']))
 41: 	{
 42: 	switch ($_REQUEST['action'])
 43: 		{
 44: 		case "create":
 45: 			$q="INSERT INTO fnview(vtitle,vclick,vstyle) VALUES(\"".ss($_REQUEST['vtitle'])."\",\"standard\",\"standard\")";
 46: 			$NATS->DB->Query($q);
 47: 			$_REQUEST['viewid']=$NATS->DB->Insert_Id();
 48: 			$_REQUEST['show_options']=1;
 49: 			$msg="Created View";
 50: 			break;
 51: 			
 52: 		case "delete":
 53: 			if (!isset($_REQUEST['confirmed']))
 54: 				{
 55: 				$back=urlencode("view.edit.php?action=delete&confirmed=1&viewid=".$_REQUEST['viewid']);
 56: 				$link="confirm.php?action=Delete+View&back=".$back;
 57: 				header("Location: ".$link);
 58: 				exit();
 59: 				}
 60: 			// otherwise delete
 61: 			$qi="DELETE FROM fnviewitem WHERE viewid=".ss($_REQUEST['viewid']);
 62: 			$NATS->DB->Query($qi);
 63: 			$idel=$NATS->DB->Affected_Rows();
 64: 			$q="DELETE FROM fnview WHERE viewid=".ss($_REQUEST['viewid']);
 65: 			$NATS->DB->Query($q);
 66: 			$vdel=$NATS->DB->Affected_Rows();
 67: 			$msg="Deleted ".$vdel." Views (".$idel." Items)";
 68: 			header("Location: main.php?message=".urlencode($msg));
 69: 			exit();
 70: 			break;
 71: 			
 72: 		case "save_edit":
 73: 			if (isset($_REQUEST['vpublic'])) $public=1;
 74: 			else $public=0;
 75: 			if (isset($_REQUEST['vcolon'])) $colon=1;
 76: 			else $colon=0;
 77: 			if (isset($_REQUEST['vdashes'])) $dashes=1;
 78: 			else $dashes=0;
 79: 			if (isset($_REQUEST['vtimeago'])) $ago=1;
 80: 			else $ago=0;
 81: 			if (!is_numeric($_REQUEST['vrefresh'])) $vref=0;
 82: 			else $vref=ss($_REQUEST['vrefresh']);
 83: 			$q="UPDATE fnview SET vtitle=\"".ss($_REQUEST['vtitle'])."\",vstyle=\"".ss($_REQUEST['vstyle'])."\",";
 84: 			$q.="vclick=\"".ss($_REQUEST['vclick'])."\",vpublic=".$public.",vlinkv=".ss($_REQUEST['vlinkv']).",vrefresh=".$vref;
 85: 			$q.=",vcolumns=".ss($_REQUEST['vcolumns']).",vdashes=".$dashes.",vcolon=".$colon.",vtimeago=".$ago;
 86: 			$q.=" WHERE viewid=".ss($_REQUEST['viewid']);
 87: 			$NATS->DB->Query($q);
 88: 			if ($NATS->DB->Affected_Rows()<=0) $msg="Failed to update or nothing changed";
 89: 			else $msg="Saved changes ok";
 90: 			break;
 91: 			
 92: 		case "create_item":
 93: 			$wq="SELECT iweight FROM fnviewitem WHERE viewid=".ss($_REQUEST['viewid'])." ORDER BY iweight DESC LIMIT 0,1";
 94: 			$wr=$NATS->DB->Query($wq);
 95: 			if ($row=$NATS->DB->Fetch_Array($wr))
 96: 				{
 97: 				$iweight=$row['iweight']+10;
 98: 				}
 99: 			else $iweight=10;
100: 			$NATS->DB->Free($wr);
101: 		
102: 			if (isset($_REQUEST['iname'])) $iname=ss($_REQUEST['iname']);
103: 			else $iname="";
104: 			
105: 			$itype=ss($_REQUEST['itype']);
106: 			if ($itype=="node") $ioption=ss($_REQUEST['ioption_node']);
107: 			else if($itype=="group") $ioption=ss($_REQUEST['ioption_group']);
108: 			else if($itype=="testgraph") $ioption=ss($_REQUEST['ioption_testgraph']."/".$_REQUEST['ioption_testgraph_time']);
109: 			else if($itype=="testdetail") 
110: 				{
111: 				$ioption=ss($_REQUEST['ioption_testdetail']);
112: 				$iname=ss($_REQUEST['iname_testdetail']);
113: 				}
114: 			else if($itype=="title") $ioption=ss($_REQUEST['ioption_title']);
115: 			else $ioption="";
116: 			$q="INSERT INTO fnviewitem(viewid,itype,ioption,iweight,iname) VALUES(".ss($_REQUEST['viewid']).",";
117: 			$q.="\"".$itype."\",\"".$ioption."\",".$iweight.",\"".$iname."\")";
118: 			$NATS->DB->Query($q);
119: 			if ($NATS->DB->Affected_Rows()>0) $msg="Created Item";
120: 			else $msg="Create Item Failed";
121: 			break;
122: 			
123: 		case "del_item":
124: 			$q="DELETE FROM fnviewitem WHERE viewitemid=".ss($_REQUEST['viewitemid']);
125: 			$NATS->DB->Query($q);
126: 			if ($NATS->DB->Affected_Rows()>0) $msg="Deleted Item";
127: 			else $msg="Delete Item Failed";
128: 			break;
129: 			
130: 		case "save_view_item":
131: 			$icol=chs("icolour",0);
132: 			$itxt=chs("itextstatus",0);
133: 			$isize=chs("isize",0);
134: 			$igraphic=chs("igraphic",0);
135: 			$idetail=chs("idetail",0);
136: 			$q="UPDATE fnviewitem SET ";
137: 			$q.="icolour=".$icol.",";
138: 			$q.="itextstatus=".$itxt.",";
139: 			$q.="isize=".$isize.",";
140: 			$q.="igraphic=".$igraphic.",";
141: 			$q.="idetail=".$idetail." ";
142: 			$q.="WHERE viewitemid=".ss($_REQUEST['viewitemid']);
143: 			$NATS->DB->Query($q);
144: 			//echo $q;
145: 			if ($NATS->DB->Affected_Rows()<=0) $msg="Save Failed or Nothing Changed";
146: 			else $msg="Saved Item Changes";
147: 			break;
148: 		
149: 		case "move_item":
150: 			if (isset($_REQUEST['dir'])) $dir=$_REQUEST['dir'];
151: 			else $dir="up";
152: 			
153: 			$mywq="SELECT iweight FROM fnviewitem WHERE viewitemid=".ss($_REQUEST['viewitemid']);
154: 			$mywr=$NATS->DB->Query($mywq);
155: 			$row=$NATS->DB->Fetch_Array($mywr);
156: 			$myweight=$row['iweight'];
157: 			$NATS->DB->Free($mywr);
158: 			
159: 			if ($dir=="up") // get the next lowest one down
160: 				{
161: 				$q="SELECT viewitemid,iweight FROM fnviewitem WHERE viewid=".ss($_REQUEST['viewid'])." AND iweight<".$myweight." ";
162: 				$q.="ORDER BY iweight DESC LIMIT 0,1";
163: 				$r=$NATS->DB->Query($q);
164: 				if ($row=$NATS->DB->Fetch_Array($r)) // found one to swap with
165: 					{
166: 					$uq="UPDATE fnviewitem SET iweight=".$myweight." WHERE viewitemid=".$row['viewitemid'];
167: 					$NATS->DB->Query($uq);
168: 					$uq="UPDATE fnviewitem SET iweight=".$row['iweight']." WHERE viewitemid=".ss($_REQUEST['viewitemid']);
169: 					$NATS->DB->Query($uq);
170: 					$msg="Moved Item";
171: 					}
172: 				else $msg="Nowhere to Move Item To";
173: 				}
174: 			else if ($dir=="down") // get the next highest
175: 				{
176: 				$q="SELECT viewitemid,iweight FROM fnviewitem WHERE viewid=".ss($_REQUEST['viewid'])." AND iweight>".$myweight." ";
177: 				$q.="ORDER BY iweight DESC LIMIT 0,1";
178: 				$r=$NATS->DB->Query($q);
179: 				if ($row=$NATS->DB->Fetch_Array($r)) // found one to swap with
180: 					{
181: 					$uq="UPDATE fnviewitem SET iweight=".$myweight." WHERE viewitemid=".$row['viewitemid'];
182: 					$NATS->DB->Query($uq);
183: 					$uq="UPDATE fnviewitem SET iweight=".$row['iweight']." WHERE viewitemid=".ss($_REQUEST['viewitemid']);
184: 					$NATS->DB->Query($uq);
185: 					$msg="Moved Item";
186: 					}
187: 				else $msg="Nowhere to Move Item To";
188: 				}
189: 				
190: 			break;
191: 		
192: 		default: $msg="Unknown Action";
193: 		}
194: 	}
195: 
196: ob_end_flush();
197: Screen_Header("View Editor",1);
198: 	
199: 
200: $q="SELECT * FROM fnview WHERE viewid=".ss($_REQUEST['viewid'])." LIMIT 0,1";
201: $r=$NATS->DB->Query($q);
202: if (!$row=$NATS->DB->Fetch_Array($r))
203: 	{
204: 	echo "No such view.<br><br>";
205: 	Screen_Footer();
206: 	exit();
207: 	}
208: 	
209: $NATS->DB->Free($r);
210: if (isset($msg))
211: 	{
212: 	echo "<b>".$msg."</b><br><br>";
213: 	$poplist[]=$msg;
214: 	}
215: 	
216: echo "<table width=100% border=0 cellspacing=0 cellpadding=0><tr><td align=left>";
217: echo "<b class=\"minortitle\">Editing View: <a href=view.php?viewid=".$_REQUEST['viewid'].">".$row['vtitle']."</a></b>";
218: echo "</td><td align=right><b class=\"minortitle\"><a href=\"view.php?viewid=".$_REQUEST['viewid']."\" target=top>Preview View</a> / ";
219: echo "<a href=view.link.php?viewid=".$_REQUEST['viewid'].">Link to View</a></b>";
220: echo "</td></tr></table>";
221: echo "<br>";
222: 
223: echo "<form action=view.edit.php method=post>";
224: echo "<div id=\"view_edit_options\">";
225: echo "<table class=\"nicetable\">";
226: 
227: echo "<input type=hidden name=action value=save_edit>";
228: echo "<input type=hidden name=viewid value=".$_REQUEST['viewid'].">";
229: 
230: echo "<tr><td align=left valign=top><b>View Title";
231: echo "</b></td><td align=left>";
232: echo "<input type=text name=vtitle size=30 maxlength=64 value=\"".$row['vtitle']."\">";
233: echo "</td></tr>";
234: echo "<tr><td colspan=2>&nbsp;<br></td></tr>";
235: 
236: echo "<tr><td><b>Public View</b></td>";
237: echo "<td>";
238: if ($row['vpublic']==1) $s=" checked";
239: else $s="";
240: echo "<input type=checkbox name=vpublic value=1".$s."> ".hlink("View:Public");
241: echo "</td></tr>";
242: echo "<tr><td colspan=2>&nbsp;<br></td></tr>";
243: 
244: echo "<tr><td align=left valign=top><b>Page Style</b></td>";
245: echo "<td>";
246: if ($row['vstyle']=="standard") $s=" checked";
247: else $s="";
248: echo "<b><input type=radio name=vstyle value=standard".$s."> Standard</b><br>";
249: echo "Standard full-page headers and footers with &quot;local&quot; page and style includes<br><br>";
250: if ($row['vstyle']=="mobile") $s=" checked";
251: else $s="";
252: echo "<b><input type=radio name=vstyle value=mobile".$s."> Mobile/Minimal</b><br>";
253: echo "Very minimal and absolute page style suitable for mobile browser and/or inline JS usage<br><br>";
254: if ($row['vstyle']=="plain") $s=" checked";
255: else $s="";
256: echo "<b><input type=radio name=vstyle value=plain".$s."> Plain</b><br>";
257: echo "Totally plain output<br><br>";
258: 
259: echo "</td></tr>";
260: 
261: echo "<tr><td align=left valign=top><b>Link Types</b></td>";
262: echo "<td>";
263: if ($row['vclick']=="standard") $s=" checked";
264: else $s="";
265: echo "<b><input type=radio name=vclick value=standard".$s."> Standard</b><br>";
266: echo "Standard <i>a href</i> links for same window/frame<br><br>";
267: if ($row['vclick']=="frametop") $s=" checked";
268: else $s="";
269: echo "<b><input type=radio name=vclick value=frametop".$s."> Same Window (Frame Top)</b><br>";
270: echo "<i>a href</i> link to the window/frame top<br><br>";
271: if ($row['vclick']=="newwindow") $s=" checked";
272: else $s="";
273: echo "<b><input type=radio name=vclick value=newwindow".$s."> New Window</b><br>";
274: echo "Open a New Window<br><br>";
275: if ($row['vclick']=="disabled") $s=" checked";
276: else $s="";
277: echo "<b><input type=radio name=vclick value=disabled".$s."> Disabled</b><br>";
278: echo "No links (disabled)<br><br>";
279: if ($row['vlinkv']==0) $s=""; else $s=" selected";
280: $lq="SELECT viewid,vtitle FROM fnview WHERE viewid!=".ss($_REQUEST['viewid']);
281: $lr=$NATS->DB->Query($lq);
282: echo "<b>Links to Another View: </b>";
283: echo "<select name=vlinkv>";
284: echo "<option value=0".$s.">No (Go to FreeNATS)</option>";
285: while ($lrow=$NATS->DB->Fetch_Array($lr))
286: 	{
287: 	if ($lrow['viewid']==$row['vlinkv']) $s=" selected";
288: 	else $s="";
289: 	echo "<option value=\"".$lrow['viewid']."\"".$s.">".$lrow['vtitle']."</option>";
290: 	}
291: echo "</select> ".hlink("View:LinkAnotherView")."<br><br>";
292: $NATS->DB->Free($lr);
293: echo "</td></tr>";
294: 
295: echo "<tr><td><b>Colons (before text status)</b></td>";
296: echo "<td>";
297: if ($row['vcolon']==1) $s=" checked";
298: else $s="";
299: echo "<input type=checkbox name=vcolon value=1".$s."> ".hlink("View:Colons");
300: echo "</td></tr>";
301: 
302: echo "<tr><td><b>Dashes (before times)</b></td>";
303: echo "<td>";
304: if ($row['vdashes']==1) $s=" checked";
305: else $s="";
306: echo "<input type=checkbox name=vdashes value=1".$s."> ".hlink("View:Public");
307: echo "</td></tr>";
308: 
309: echo "<tr><td><b>Times use XX:XX ago</b></td>";
310: echo "<td>";
311: if ($row['vtimeago']==1) $s=" checked";
312: else $s="";
313: echo "<input type=checkbox name=vtimeago value=1".$s."> ".hlink("View:TimeAgo");
314: echo "</td></tr>";
315: 
316: echo "<tr><td><b>Columns";
317: echo "</b></td><td align=left>";
318: echo "<input type=text name=vcolumns size=4 maxlength=2 value=\"".$row['vcolumns']."\"> ".hlink("View:Columns");
319: echo "</td></tr>";
320: echo "<tr><td><b>Refresh";
321: echo "</b></td><td align=left>";
322: echo "<input type=text name=vrefresh size=6 maxlength=6 value=\"".$row['vrefresh']."\"> ".hlink("View:Refresh");
323: echo "</td></tr>";
324: echo "<tr><td><b>Save</b></td><td><input type=submit value=\"Save View Settings\"> ";
325: echo "<a href=view.edit.php?viewid=".$_REQUEST['viewid'].">Cancel / Abandon Changes</a>";
326: echo "</td></tr>";
327: echo "</table>";
328: echo "</div>";
329: echo "</form>";
330: echo "\n<script type=\"text/javascript\">\n";
331: echo "var editData=document.getElementById('view_edit_options').innerHTML;\n";
332: echo "function show_edit_options()\n";
333: echo "{\n";
334: echo "document.getElementById('view_edit_options').innerHTML=editData;\n";
335: echo "}\n";
336: if (!isset($_REQUEST['show_options']))
337:  echo "document.getElementById('view_edit_options').innerHTML=\"<b>[ <a href=\\\"javascript:show_edit_options()\\\">Expand View Options</a> ]</b>\";\n";
338: echo "</script>\n";
339: 
340: //echo "<br><br>";
341: $q="SELECT * FROM fnviewitem WHERE viewid=".ss($_REQUEST['viewid'])." ORDER BY iweight ASC";
342: $r=$NATS->DB->Query($q);
343: if ($NATS->DB->Num_Rows($r)<=0) echo "<i>No view objects yet defined.</i><br><br>";
344: else $l=$NATS->DB->Num_Rows($r);
345: $f=0;
346: 
347: 
348: while ($row=$NATS->DB->Fetch_Array($r))
349: 	{
350: 	echo "<a name=#".$row['viewitemid']."></a>";
351: 	echo "<table width=600 class=\"nicetable\">";
352: 	echo "<form action=view.edit.php#".$row['viewitemid']." method=post>";
353: 	echo "<input type=hidden name=viewid value=".$_REQUEST['viewid'].">";
354: 	echo "<input type=hidden name=action value=save_view_item>";
355: 	echo "<input type=hidden name=viewitemid value=".$row['viewitemid'].">";
356: 	echo "<tr><td align=left valign=top colspan=4>";
357: 	echo "Item Type: <b>";
358: 	echo ViewItemTxt($row['itype'],$row['ioption']);
359: 	echo "</b>";
360: 	echo "</td></tr>";
361: 	
362: 	echo "<tr><td width=25% align=right>";
363: 	echo "Use Colour :";
364: 	echo "</td><td align=left width=25%>";
365: 	if ($row['icolour']==1) $s=" checked";
366: 	else $s="";
367: 	echo "<input type=checkbox name=icolour value=1".$s.">";
368: 	echo " ".hlink("View:UseColour");
369: 	echo "</td>";
370: 	
371: 	echo "<td align=right width=25%>";
372: 	echo "Text Status :";
373: 	echo "</td><td align=left width=25%>";
374: 	if ($row['itextstatus']==1) $s=" checked";
375: 	else $s="";
376: 	echo "<input type=checkbox name=itextstatus value=1".$s.">";
377: 	echo " ".hlink("View:TextStatus");
378: 	echo "</td></tr>";
379: 	
380: 	echo "<tr><td align=right>";
381: 	echo "Item Size :";
382: 	echo "</td><td align=left>";
383: 	echo "<select name=isize>";
384: 	if ($row['isize']>0) echo "<option value=1 checked>Large</option>";
385: 	else echo "<option value=0 checked>Small</option>";
386: 	echo "<option value=1>";
387: 	echo "Large</option>";
388: 	echo "<option value=0>";
389: 	echo "Small</option>";
390: 	echo "</select>";
391: 	echo "</td>";
392: 	echo "<td align=right>";
393: 	echo "Graphics :";
394: 	echo "</td><td align=left>";
395: 	echo "<select name=igraphic>";
396: 	if ($row['igraphic']==2) echo "<option value=2 checked>Node/Group</option>";
397: 	else if ($row['igraphic']==1) echo "<option value=1 checked>Status Light</option>";
398: 	else echo "<option value=0 checked>No Graphic</option>";
399: 	echo "<option value=2>";
400: 	echo "Node/Group</option>";
401: 	echo "<option value=1>";
402: 	echo "Status Light</option>";
403: 	echo "<option value=0>";
404: 	echo "No Graphic</option>";
405: 	echo "</select>";
406: 	echo "</td></tr>";
407: 	
408: 	echo "<tr><td width=25% align=right>";
409: 	echo "Show Detail :";
410: 	echo "</td><td align=left width=25%>";
411: 	if ($row['idetail']>0) $s=" checked";
412: 	else $s="";
413: 	echo "<input type=checkbox name=idetail value=1".$s.">";
414: 	echo " ".hlink("View:ShowDetail");
415: 	echo "</td>";
416: 	
417: 	echo "<td align=center colspan=2><input type=submit value=\"Save Changes to Item\"></td></tr>";
418: 	
419: 	echo "<tr><td colspan=2 align=left><b>Move: </b>";
420: 	
421: 	if ($f==0) echo "<img src=images/arrows/off/arrow_top.png>";
422: 	else 
423: 		{
424: 		echo "<a href=view.edit.php?viewid=".$_REQUEST['viewid']."&action=move_item&dir=up&viewitemid=".$row['viewitemid'].">";
425: 		echo "<img src=\"images/arrows/on/arrow_top.png\" border=0>";
426: 		echo "</a>";
427: 		}
428: 	
429: 	if ($f>=($l-1)) echo "<img src=images/arrows/off/arrow_down.png>";
430: 	else 
431: 		{
432: 		echo "<a href=view.edit.php?viewid=".$_REQUEST['viewid']."&action=move_item&dir=down&viewitemid=".$row['viewitemid'].">";
433: 		echo "<img src=\"images/arrows/on/arrow_down.png\" border=0>";
434: 		echo "</a>";
435: 		}
436: 		
437: 	$f++;
438: 	
439: 	echo "</td><td colspan=2 align=right><b><a href=view.edit.php?viewid=".$_REQUEST['viewid']."&action=del_item&viewitemid=".$row['viewitemid'].">Delete Item</a>";
440: 	echo "</b></td></tr>";
441: 	
442: 	echo "</form></table><br>";
443: 	}
444: 	
445: $NATS->DB->Free($r);
446: 
447: echo "<br><br>";
448: echo "<table width=600 class=\"nicetable\">";
449: echo "<form action=view.edit.php method=post>";
450: echo "<input type=hidden name=viewid value=".$_REQUEST['viewid'].">";
451: echo "<input type=hidden name=action value=create_item>";
452: echo "<tr><td colspan=4><b>Create New Item</b></td></tr>";
453: 
454: echo "<tr><td width=25% align=center>";
455: echo "<input type=radio name=itype value=node checked>";
456: echo "</td><td colspan=3 align=left>";
457: echo "<b>Individual Node: </b>";
458: echo "<select name=ioption_node>";
459: $nq="SELECT nodeid,nodename FROM fnnode";
460: $nr=$NATS->DB->Query($nq);
461: while ($node=$NATS->DB->Fetch_Array($nr))
462: 	{
463: 	echo "<option value=".$node['nodeid'].">".$node['nodename']." (".$node['nodeid'].")</option>";
464: 	}
465: $NATS->DB->Free($nr);
466: echo "</select>";
467: echo "</td></tr>";
468: 
469: echo "<tr><td width=25% align=center>";
470: echo "<input type=radio name=itype value=group>";
471: echo "</td><td colspan=3 align=left>";
472: echo "<b>Individual Group: </b>";
473: echo "<select name=ioption_group>";
474: $nq="SELECT groupid,groupname FROM fngroup";
475: $nr=$NATS->DB->Query($nq);
476: while ($group=$NATS->DB->Fetch_Array($nr))
477: 	{
478: 	echo "<option value=".$group['groupid'].">".$group['groupname']." (".$group['groupid'].")</option>";
479: 	}
480: $NATS->DB->Free($nr);
481: echo "</select>";
482: echo "</td></tr>";
483: 
484: $tests=array();
485: $tq="SELECT localtestid,nodeid,testname,testtype,testparam,testrecord FROM fnlocaltest ORDER BY nodeid";
486: $tr=$NATS->DB->Query($tq);
487: while ($test=$NATS->DB->Fetch_Array($tr))
488: 	{
489: 	$tid="L".$test['localtestid'];
490: 	$tests[$tid]=$test;
491: 	$tests[$tid]['testid']=$tid;
492: 	}
493: $NATS->DB->Free($tr);
494: 
495: echo "<tr><td align=center>";
496: echo "<input type=radio name=itype value=allnodes>";
497: echo "</td><td colspan=3 align=left><b>";
498: echo "List All (Enabled) Nodes";
499: echo "</b></td></tr>";
500: 
501: echo "<tr><td align=center>";
502: echo "<input type=radio name=itype value=allgroups>";
503: echo "</td><td colspan=3 align=left><b>";
504: echo "List All Groups";
505: echo "</b></td></tr>";
506: 
507: echo "<tr><td align=center>";
508: echo "<input type=radio name=itype value=alertnodes>";
509: echo "</td><td colspan=3 align=left><b>";
510: echo "List Alerting Nodes";
511: echo "</b></td></tr>";
512: 
513: echo "<tr><td align=center>";
514: echo "<input type=radio name=itype value=alertgroups>";
515: echo "</td><td colspan=3 align=left><b>";
516: echo "List Alerting Groups";
517: echo "</b></td></tr>";
518: 
519: echo "<tr><td align=center>";
520: echo "<input type=radio name=itype value=alerts>";
521: echo "</td><td colspan=3 align=left><b>";
522: echo "List All Current Alerts";
523: echo "</b></td></tr>";
524: 
525: echo "<tr><td align=center>";
526: echo "<input type=radio name=itype value=testdetail>";
527: echo "</td><td colspan=3 align=left><b>";
528: echo "Detail for Test ";
529: echo "<select name=ioption_testdetail>";
530: foreach($tests as $test)
531: 	{
532: 	echo "<option value=".$test['testid'].">";
533: 	if ($test['testname']!="") $tn=$test['testname'];
534: 	else $tn=$test['testtype']." (".$test['testparam'].")";
535: 	echo $test['nodeid']." &gt; ".$tn;
536: 	echo "</option>";
537: 	}
538: echo "</select>";
539: echo "</b><br>";
540: echo "Name: <input type=text name=iname_testdetail size=30 maxlength=64></td></tr>";
541: 
542: echo "<tr><td align=center>";
543: echo "<input type=radio name=itype value=testgraph>";
544: echo "</td><td colspan=3 align=left><b>";
545: echo "Graph for Test </b>";
546: echo "<select name=ioption_testgraph>";
547: foreach($tests as $test)
548: 	{
549: 	if ($test['testrecord']>0)
550: 		{
551: 		echo "<option value=".$test['testid'].">";
552: 		if ($test['testname']!="") $tn=$test['testname'];
553: 		else $tn=$test['testtype']." (".$test['testparam'].")";
554: 		echo $test['nodeid']." &gt; ".$tn;
555: 		echo "</option>";
556: 		}
557: 	}
558: echo "</select><br>";
559: echo "Show Last <input type=text size=4 maxlength=4 name=ioption_testgraph_time value=24> Hours";
560: echo "</td></tr>";
561: 
562: echo "<tr><td align=center>";
563: echo "<input type=radio name=itype value=title>";
564: echo "</td><td colspan=3 align=left><b>";
565: echo "Title: </b><input type=text name=ioption_title size=30 maxlength=120>";
566: echo "</td></tr>";
567: 
568: echo "<tr><td>&nbsp;</td><td colspan=3>";
569: echo "<input type=submit value=\"Create New Item\"> ";
570: //echo "<select name=create_position><option value=end checked>At the End</option><option value=start>At the Top</option></select>";
571: echo "</td></tr>";
572: /* TODO - if ok don't be lazy and put the def options in here */
573: 
574: echo "</form></table>";
575: ?>
576: 
577: 
578: <?php
579: Screen_Footer();
580: ?>
581: