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