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