Viewing File server/web/nodeside.edit.php of 1.03.0a
|
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 Nodeside Test"); 32: 33: if (isset($_REQUEST['action'])) 34: { 35: switch($_REQUEST['action']) 36: { 37: case "enable": 38: $q="UPDATE fnnstest SET testenabled=1 WHERE nstestid=".ss($_REQUEST['nstestid']); 39: //echo $q; 40: $NATS->DB->Query($q); 41: //exit(); 42: header("Location: node.edit.php?nodeid=".$_REQUEST['nodeid']); 43: exit(); 44: case "disable": 45: $q="UPDATE fnnstest SET testenabled=0 WHERE nstestid=".ss($_REQUEST['nstestid']); 46: //echo $q; 47: $NATS->DB->Query($q); 48: //exit(); 49: header("Location: node.edit.php?nodeid=".$_REQUEST['nodeid']); 50: exit(); 51: case "save_form": 52: if (isset($_REQUEST['testalerts'])) $testalerts=1; 53: else $testalerts=0; 54: if (isset($_REQUEST['simpleeval'])) $simpleeval=1; 55: else $simpleeval=0; 56: if (isset($_REQUEST['testrecord'])) $testrecord=1; 57: else $testrecord=0; 58: $q="UPDATE fnnstest SET testalerts=".$testalerts.",simpleeval=".$simpleeval.",testname=\"".ss($_REQUEST['testname'])."\",testrecord=".$testrecord." "; 59: $q.="WHERE nstestid=".ss($_REQUEST['nstestid']); 60: //echo $q; 61: $NATS->DB->Query($q); 62: if ($NATS->DB->Affected_Rows()>0) $_REQUEST['message']="Changes Saved"; 63: else $_REQUEST['message']="Failed to Save or Nothing Changed"; 64: break; 65: } 66: } 67: 68: ob_end_flush(); 69: Screen_Header("Nodeside Test Editor",1,1,"","main","nodes"); 70: if (isset($_REQUEST['message'])) echo "<br><b>".$_REQUEST['message']."</b><br>"; 71: 72: $q="SELECT * FROM fnnstest WHERE nstestid=".ss($_REQUEST['nstestid'])." LIMIT 0,1"; 73: $r=$NATS->DB->Query($q); 74: 75: if (!$row=$NATS->DB->Fetch_Array($r)) 76: { 77: echo "Error fetching Nodeside Test"; 78: Screen_Footer(); 79: exit(); 80: } 81: $NATS->DB->Free($r); 82: 83: echo "<br>"; 84: echo "<b class=\"subtitle\">Editing Test: <a href=node.edit.php?nodeid=".$row['nodeid'].">".$row['nodeid']."</a> > "; 85: if ($row['testname']=="") echo $row['testtype']; 86: else echo $row['testname']; 87: echo "</b><br><br>"; 88: 89: $t="<b class=\"sectitle\">Nodeside Test ".$row['testtype']." on ".$row['nodeid']."</b>"; 90: Start_Round($t,600); 91: 92: echo "<table width=100% border=0>"; 93: echo "<form action=nodeside.edit.php method=post>"; 94: echo "<input type=hidden name=action value=save_form>"; 95: echo "<input type=hidden name=nstestid value=".$row['nstestid'].">"; 96: echo "<tr><td align=right>Test Type / UID :</td>"; 97: echo "<td align=left>".$row['testtype']."</td></tr>"; 98: echo "<tr><td align=right>Description :</td>"; 99: echo "<td align=left>".$row['testdesc']."</td></tr>"; 100: echo "<tr><td align=right>Custom Name :</td>"; 101: echo "<td align=left><input type=text name=testname value=\"".$row['testname']."\" size=30 maxlength=128></td></tr>"; 102: 103: if ($row['testalerts']==1) $s=" checked"; 104: else $s=""; 105: echo "<tr><td align=right>Test Alerts :</td>"; 106: echo "<td align=left>"; 107: echo "<input type=checkbox name=testalerts value=1".$s."> ".hlink("Test:TestAlerts"); 108: echo "</td></tr>"; 109: 110: if ($row['testrecord']==1) $s=" checked"; 111: else $s=""; 112: echo "<tr><td align=right>Recorded :</td>"; 113: echo "<td align=left>"; 114: echo "<input type=checkbox name=testrecord value=1".$s."> ".hlink("Test:Recorded"); 115: echo "</td></tr>"; 116: 117: if ($row['simpleeval']==1) $s=" checked"; 118: else $s=""; 119: echo "<tr><td align=right>Simple Evaluation :</td>"; 120: echo "<td align=left>"; 121: echo "<input type=checkbox name=simpleeval value=1".$s."> ".hlink("Test:SimpleEvaluation"); 122: echo "</td></tr>"; 123: 124: echo "<tr><td colspan=2><hr class=\"nspacer\"></td></tr>"; 125: echo "<tr><td align=right>Last Checked :</td>"; 126: echo "<td align=left>".nicedt($row['lastrunx'])." - ".dtago($row['lastrunx'])."</td></tr>"; 127: echo "<tr><td align=right>Last Result :</td>"; 128: echo "<td align=left>"; 129: echo "<b class=\"al".$row['alertlevel']."\">"; 130: echo oText($row['alertlevel']); 131: echo "</b>"; 132: echo "</td></tr>"; 133: echo "<tr><td align=right>Last Value :</td>"; 134: echo "<td align=left>".$row['lastvalue']."</td></tr>"; 135: echo "<tr><td colspan=2><hr class=\"nspacer\"></td></tr>"; 136: 137: echo "<tr><td> </td><td align=left><input type=submit value=\"Save Changes\"> "; 138: echo "<a href=node.edit.php?nodeid=".$row['nodeid'].">Abandon Changes</a>"; 139: echo "</td></tr></form>"; 140: echo "</table>"; 141: 142: End_Round(); 143: 144: 145: echo "<br><br>"; 146: 147: 148: 149: $t="<b class=\"sectitle\">Test Evaluators</b>"; 150: Start_Round($t,600); 151: 152: 153: echo "<table border=0 width=100%>"; 154: echo "<tr><td colspan=2> <br>"; 155: if ($row['simpleeval']==1) 156: { 157: echo "<i>Custom evaluators will not be processed as<br>Simple Evaluation is checked (above)</i><br>"; 158: } 159: echo "</td></tr>"; 160: 161: $q="SELECT * FROM fneval WHERE testid=\"N".ss($_REQUEST['nstestid'])."\" ORDER BY weight ASC"; 162: $r=$NATS->DB->Query($q); 163: while ($row=$NATS->DB->Fetch_Array($r)) 164: { 165: echo "<tr><td colspan=2>"; 166: echo "<a href=eval.action.php?action=delete&back=".urlencode("nodeside.edit.php?nstestid=".$_REQUEST['nstestid']."&message=Evaluator+Deleted")."&evalid=".$row['evalid'].">"; 167: echo "<img src=images/options/action_delete.png border=0 style=\"vertical-align: bottom;\"></a> "; 168: echo "Result ".eval_operator_text($row['eoperator'])." ".$row['evalue']." => ".oText($row['eoutcome']).""; 169: //echo " | <a href=eval.action.php?action=move&dir=up&evalid=".$row['evalid'].">Up</a>/<a href=eval.action.php?action=move&dir=dn&evalid=".$row['evalid'].">Down</a>"; 170: echo "</td></tr>"; 171: //echo "<tr><td colspan=2> </td></tr>"; 172: } 173: 174: echo "<form action=eval.action.php>"; 175: echo "<input type=hidden name=action value=create>"; 176: echo "<input type=hidden name=testid value=N".$_REQUEST['nstestid'].">"; 177: echo "<input type=hidden name=back value=\"nodeside.edit.php?nstestid=".$_REQUEST['nstestid']."\">"; 178: echo "<tr><td colspan=2> <br></td></tr>"; 179: echo "<tr><td><b>Add New :</b></td>"; 180: echo "<td><select name=eoperator>"; 181: echo "<option value=ET>Equal To</option><option value=LT>Less Than</option><option value=GT>Greater Than</option>"; 182: echo "</select> <input type=text name=evalue size=4 value=0> => "; 183: echo "<select name=eoutcome>"; 184: echo "<option value=1>Warning</option>"; 185: echo "<option value=2>Failure</option>"; 186: echo "</select> <input type=submit value=Add></td></tr>"; 187: echo "</form>"; 188: 189: 190: echo "</table>"; 191: End_Round(); 192: 193: Screen_Footer(); 194: ?> 195: