File: 0.01.2a/web/admin.php (View as Code)

1: 2: ob_start(); 3: require("include.php"); 4: $NATS->Start(); 5: if (!$NATS_Session->Check($NATS->DB)) 6: { 7: header("Location: ./?login_msg=Invalid+Or+Expired+Session"); 8: exit(); 9: } 10: if ($NATS_Session->userlevel<9) UL_Error("Action Node"); 11: 12: if (isset($_REQUEST['action'])) 13: { 14: switch($_REQUEST['action']) 15: { 16: case "save_user": 17: $q="UPDATE fnuser SET realname=\"".ss($_REQUEST['realname'])."\",userlevel=".ss($_REQUEST['userlevel']); 18: if ((isset($_REQUEST['pword']))&&($_REQUEST['pword']!="_NOTTHIS_")) $q.=",password=MD5(\"".ss($_REQUEST['pword'])."\")"; 19: $q.=" WHERE username=\"".ss($_REQUEST['username'])."\""; 20: $NATS->DB->Query($q); 21: if ($NATS->DB->Affected_Rows()<=0) $amsg="Save User Failed or Nothing Changed"; 22: else $amsg="Save User ".$_REQUEST['username']." Succeeded"; 23: break; 24: 25: case "create_user": 26: $q="INSERT INTO fnuser(username,password,realname,userlevel) VALUES(\"".ss($_REQUEST['username'])."\","; 27: $q.="MD5(\"".ss($_REQUEST['pword'])."\"),\"".ss($_REQUEST['realname'])."\",".ss($_REQUEST['userlevel']).")"; 28: $NATS->DB->Query($q); 29: //echo $q; 30: if ($NATS->DB->Affected_Rows()<=0) $amsg="Create User Failed"; 31: else $amsg="User ".$_REQUEST['username']." Created"; 32: break; 33: 34: case "delete_user": 35: if ($_REQUEST['username']=="admin") 36: { 37: $amsg="Can't delete the admin user"; 38: break; 39: } 40: if (!isset($_REQUEST['confirmed'])) 41: { 42: $back=urlencode("admin.php?action=delete_user&username=".$_REQUEST['username']."&confirmed=1"); 43: $url="confirm.php?action=Delete+User+".$_REQUEST['username']."&back=".$back; 44: header("Location: ".$url); 45: exit(); 46: } 47: $q="DELETE FROM fnuser WHERE username=\"".ss($_REQUEST['username'])."\""; 48: $NATS->DB->Query($q); 49: $amsg="User ".$_REQUEST['username']." Deleted"; 50: break; 51: 52: case "var_save": 53: if ($_REQUEST['new_var']=="") // delete 54: { 55: $q="DELETE FROM fnconfig WHERE fnc_var=\"".ss($_REQUEST['orig_var'])."\""; 56: } 57: else // update 58: { 59: $q="UPDATE fnconfig SET fnc_var=\"".ss($_REQUEST['new_var'])."\",fnc_val=\"".ss($_REQUEST['new_val'])."\" "; 60: $q.="WHERE fnc_var=\"".ss($_REQUEST['orig_var'])."\""; 61: } 62: $NATS->DB->Query($q); 63: if ($NATS->DB->Affected_Rows()<=0) $amsg="Update/Delete Variable Failed"; 64: else $amsg="Updated/Deleted Variable"; 65: break; 66: case "var_new": 67: $q="INSERT INTO fnconfig(fnc_var,fnc_val) VALUES(\"".ss($_REQUEST['new_var'])."\",\"".ss($_REQUEST['new_val'])."\")"; 68: //echo $q; 69: $NATS->DB->Query($q); 70: if ($NATS->DB->Affected_Rows()<=0) $amsg="Create Variable Failed"; 71: else $amsg="Created Variable"; 72: break; 73: 74: case "save_aa": 75: $q="UPDATE fnalertaction SET "; 76: $q.="atype=\"".ss($_REQUEST['atype'])."\","; 77: $q.="aname=\"".ss($_REQUEST['aname'])."\","; 78: $q.="efrom=\"".ss($_REQUEST['efrom'])."\","; 79: $q.="etolist=\"".ss($_REQUEST['etolist'])."\","; 80: $q.="esubject=".ss($_REQUEST['esubject']).","; 81: $q.="etype=".ss($_REQUEST['etype']); 82: if (isset($_REQUEST['awarnings'])) $q.=",awarnings=".ss($_REQUEST['awarnings']); 83: else $q.=",awarnings=0"; 84: if (isset($_REQUEST['adecrease'])) $q.=",adecrease=".ss($_REQUEST['adecrease']); 85: else $q.=",adecrease=0"; 86: $q.=" WHERE aaid=".ss($_REQUEST['aaid']); 87: //echo $q; 88: $NATS->DB->Query($q); 89: if ($NATS->DB->Affected_Rows()<=0) $amsg="Action Update Failed or Nothing Changed"; 90: else $amsg="Action Updated"; 91: break; 92: 93: case "action_test": 94: $q="SELECT mdata FROM fnalertaction WHERE aaid=".ss($_REQUEST['aaid'])." LIMIT 0,1"; 95: $r=$NATS->DB->Query($q); 96: $row=$NATS->DB->Fetch_Array($r); 97: $oldm=$row['mdata']; 98: $q="UPDATE fnalertaction SET mdata=\"** ACTION TEST **\" WHERE aaid=".ss($_REQUEST['aaid']); 99: $NATS->DB->Query($q); 100: $NATS->ActionFlush(); 101: $q="UPDATE fnalertaction SET mdata=\"".ss($oldm)."\" WHERE aaid=".ss($_REQUEST['aaid']); 102: $NATS->DB->Query($q); 103: $amsg="Alert Action Tested & Flushed"; 104: break; 105: 106: case "action_create": 107: $q="INSERT INTO fnalertaction(atype) VALUES(\"\")"; 108: $NATS->DB->Query($q); 109: $amsg="Created New Alert Action"; 110: break; 111: 112: case "action_delete": 113: if (!isset($_REQUEST['confirmed'])) 114: { 115: $back=urlencode("admin.php?aaid_del=".$_REQUEST['aaid_del']."&action=action_delete&confirmed=1"); 116: $url="confirm.php?action=Delete+alert+action&back=".$back; 117: header("Location: ".$url); 118: exit(); 119: } 120: // otherwise confirmed 121: $q="DELETE FROM fnalertaction WHERE aaid=".ss($_REQUEST['aaid_del']); 122: $NATS->DB->Query($q); 123: if ($NATS->DB->Affected_Rows()>0) $amsg="Alert Action Deleted"; 124: else $amsg="Alert Action Delete Failed"; 125: $q="DELETE FROM fnnalink WHERE aaid=".ss($_REQUEST['aaid_del']); 126: $NATS->DB->Query($q); 127: break; 128: 129: } 130: } 131: 132: ob_end_flush(); 133: Screen_Header("Administration Interface",1); 134: 135: if (isset($_REQUEST['message'])) echo "
".$_REQUEST['message']."
";
136: if (isset($amsg)) echo "
".$amsg."
";
137: 138: ?> 139:
140: Users

141: 142: 143: function tul($l) 144: { 145: if ($l>9) return "Administrator"; 146: if ($l>4) return "Power User"; 147: if ($l>0) return "Normal User"; 148: return "Disabled"; 149: } 150: 151: $q="SELECT username,realname,userlevel FROM fnuser"; 152: $r=$NATS->DB->Query($q); 153: echo ""; 154: echo ""; 155: echo ""; 156: while ($row=$NATS->DB->Fetch_Array($r)) 157: { 158: echo "
";
159: echo ""; 160: echo ""; 161: echo ""; 162: echo ""; 163: echo ""; 171: echo ""; 172: echo ""; 173: echo ""; 174: echo ""; 175: } 176: echo "
";
177: echo ""; 178: echo ""; 179: echo ""; 180: echo ""; 186: echo ""; 187: echo ""; 188: echo ""; 189: echo "
Username Real NameUser LevelPasswordOptions
".$row['username'].""; 170: echo " Delete

";
190: echo "
";
191: $NATS->DB->Free($r); 192: 193: echo "Test Sessions

";
194: $q="SELECT * FROM fntestrun ORDER BY trid DESC"; 195: if (!isset($_REQUEST['ShowAllSessions'])) $q.=" LIMIT 0,5"; 196: $r=$NATS->DB->Query($q); 197: echo ""; 198: while ($row=$NATS->DB->Fetch_Array($r)) 199: { 200: echo ""; 201: echo ""; 205: } 206: echo "
run/".$row['trid']."".nicedt($row['startx'])." - "; 202: if ($row['finishx']>0) echo nicedt($row['finishx']); 203: else echo "Still Running"; 204: echo "
";
207: $NATS->DB->Free($r); 208: echo "
";
209: if (!isset($_REQUEST['ShowAllSessions'])) echo "Show All Testing Sessions

";
210: echo "
";
211: 212: echo "Alert Actions

";
213: 214: function aat_etype($type) 215: { 216: switch ($type) 217: { 218: case 0: return "Short"; 219: case 1: return "Long"; 220: default: return "Unknown"; 221: } 222: } 223: 224: function aat_esub($type) 225: { 226: switch ($type) 227: { 228: case 0: return "Blank"; 229: case 1: return "Short"; 230: case 2: return "Long"; 231: default: return "Unknown"; 232: } 233: } 234: 235: function aat_atype($type) 236: { 237: switch($type) 238: { 239: case "": case "Disabled": return "Disabled"; 240: case "email": return "EMail"; 241: default: return "Unknown"; 242: } 243: } 244: 245: 246: 247: if (isset($_REQUEST['aaid'])) 248: { // view/edit aaid 249: $q="SELECT * FROM fnalertaction WHERE aaid=".ss($_REQUEST['aaid']); 250: $r=$NATS->DB->Query($q); 251: if (!$row=$NATS->DB->Fetch_Array($r)) 252: { 253: echo "Error Fetching AAID

";
254: Screen_Footer(); 255: exit(); 256: } 257: echo ""; 258: echo "
";
259: echo ""; 260: echo ""; 261: echo ""; 262: 263: echo ""; 264: echo ""; 267: 268: echo ""; 275: 276: echo ""; 277: if ($row['awarnings']==1) $s=" checked"; 278: else $s=""; 279: echo ""; 280: 281: echo ""; 282: if ($row['adecrease']==1) $s=" checked"; 283: else $s=""; 284: echo ""; 285: 286: echo ""; 287: echo ""; 290: 291: echo ""; 299: 300: echo ""; 307: 308: echo ""; 311: 312: echo ""; 316: 317: echo "
ID : action/".$_REQUEST['aaid']."
Action Name : "; 265: echo ""; 266: echo "
Type : "; 269: echo ""; 274: echo "
Warnings :
Decreases :
Email From : "; 288: echo ""; 289: echo "
Email Subject : "; 292: echo ""; 298: echo "
Email Type : "; 301: echo ""; 306: echo "
Email To : "; 309: echo ""; 310: echo "
  Cancel Update | "; 313: echo "Test Action | "; 314: echo "Delete Action"; 315: echo "


";
318: $NATS->DB->Free($r); 319: } 320: 321: $q="SELECT aaid,atype,aname FROM fnalertaction"; 322: $r=$NATS->DB->Query($q); 323: while ($row=$NATS->DB->Fetch_Array($r)) 324: { 325: echo "action/".$row['aaid']." : ".$row['aname']." - "; 326: echo aat_atype($row['atype']); 327: echo "
";
328: } 329: 330: echo "
Create New Alert Action";
331: echo "

";
332: 333: echo "System Logs

";
334: echo "System Event Log

";
335: 336: echo "

";
337: 338: echo "Variables

";
339: $q="SELECT * FROM fnconfig ORDER BY fnc_var ASC"; 340: $r=$NATS->DB->Query($q); 341: echo ""; 342: while ($row=$NATS->DB->Fetch_Array($r)) 343: { 344: echo "
";
345: echo ""; 346: echo ""; 347: echo ""; 348: echo ""; 349: echo ""; 350: echo ""; 351: echo ""; 352: echo ""; 353: echo ""; 354: } 355: echo "
";
356: echo ""; 357: echo ""; 358: echo ""; 359: echo ""; 360: echo ""; 361: echo ""; 362: echo ""; 363: echo "
=
=
";
364: 365: ?> 366: 367: 368: 369: Screen_Footer(); 370: ?> 371: