File: 0.01.2a/web/group.action.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<5) UL_Error("Action Group"); 11: $msg=""; 12: 13: switch($_REQUEST['action']) 14: { 15: case "delete": 16: if (!isset($_REQUEST['confirm'])) 17: { 18: $go="confirm.php?action=Delete+Group&back="; 19: $go.=urlencode("group.action.php?action=delete&groupid=".$_REQUEST['groupid']."&confirm=1"); 20: header("Location: ".$go); 21: exit(); 22: } 23: // delete it and shit! 24: 25: // group + links + lt results 26: $q="DELETE FROM fngroup WHERE groupid=".ss($_REQUEST['groupid']); 27: $NATS->DB->Query($q); 28: $q="DELETE FROM fngrouplink WHERE groupid=".ss($_REQUEST['groupid']); 29: $NATS->DB->Query($q); 30: $msg="Group Deleted"; 31: break; 32: 33: case "create": 34: // get highest weight 35: $wq="SELECT weight FROM fngroup ORDER BY weight DESC LIMIT 0,1"; 36: $wr=$NATS->DB->Query($wq); 37: if ($wrow=$NATS->DB->Fetch_Array($wr)) $we=($wrow['weight'])+10; 38: else $we=10; 39: 40: $q="INSERT INTO fngroup(groupname,weight) VALUES(\"".ss($_REQUEST['groupname'])."\",".$we.")"; 41: if ($_REQUEST['groupname']!="") 42: { 43: $NATS->DB->Query($q); 44: $msg="Created New Group"; 45: } 46: else $msg="Invalid Group Name"; 47: break; 48: 49: case "save_edit": 50: $q="UPDATE fngroup SET "; 51: $q.="groupname=\"".ss($_REQUEST['groupname'])."\","; 52: $q.="groupdesc=\"".ss($_REQUEST['groupdesc'])."\","; 53: $q.="groupicon=\"".ss($_REQUEST['groupicon'])."\""; 54: $q.=" WHERE groupid=".ss($_REQUEST['groupid']); 55: $NATS->DB->Query($q); 56: $msg="Saved Group Changes"; 57: break; 58: 59: case "save_members": 60: 61: // da two list nonsense again 62: /* 63: $nl=array(); 64: $nc=0; 65: $cur=array(); 66: $cc=0; 67: 68: foreach($_REQUEST['members'] as $newmem) 69: { 70: $nl[$newmem]['proc']=false; 71: $nl[$newmem]['nodeid']=$newmem; 72: $nl++; 73: } 74: */ // no let's try this and see if we get any errors and stuff 75: 76: $q="DELETE FROM fngrouplink WHERE groupid=".ss($_REQUEST['groupid']); 77: $NATS->DB->Query($q); 78: foreach($_REQUEST['members'] as $newmem) 79: { 80: $q="INSERT INTO fngrouplink(groupid,nodeid) VALUES(".ss($_REQUEST['groupid']).",\"".ss($newmem)."\")"; 81: $NATS->DB->Query($q); 82: } 83: $msg="Updated Group Membership"; 84: break; 85: 86: case "move": 87: // get my weight 88: $q="SELECT weight FROM fngroup WHERE groupid=\"".ss($_REQUEST['groupid'])."\""; 89: $r=$NATS->DB->Query($q); 90: $row=$NATS->DB->Fetch_Array($r); 91: $myweight=$row['weight']; 92: $NATS->DB->Free($r); 93: 94: // get next/prev one 95: $q="SELECT groupid,weight FROM fngroup WHERE "; 96: if ($_REQUEST['dir']=="up") $q.="weight<".$myweight." ORDER BY weight DESC LIMIT 0,1"; 97: else $q.="weight>".$myweight." ORDER BY weight ASC LIMIT 0,1"; 98: $r=$NATS->DB->Query($q); 99: if ($row=$NATS->DB->Fetch_Array($r)) 100: { 101: // swap 'em 102: $uq="UPDATE fngroup SET weight=".$myweight." WHERE groupid=".$row['groupid']; 103: $NATS->DB->Query($uq); 104: $uq="UPDATE fngroup SET weight=".$row['weight']." WHERE groupid=".ss($_REQUEST['groupid']); 105: $NATS->DB->Query($uq); 106: $msg="Updated Group Display Order"; 107: } 108: else $msg="No Higher/Lower Group"; 109: break; 110: 111: 112: 113: default: $msg="Unknown Group Action"; 114: } 115: header("Location: main.php?message=".urlencode($msg)); 116: exit(); 117: 118: ?> 119: