OSDN Git Service

Added edit reply/topic and fixed some errors.
[idb/iDB.git.git] / inc / groupsetup.php
1 <?php
2 /*
3     This program is free software; you can redistribute it and/or modify
4     it under the terms of the Revised BSD License.
5
6     This program is distributed in the hope that it will be useful,
7     but WITHOUT ANY WARRANTY; without even the implied warranty of
8     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9     Revised BSD License for more details.
10
11     Copyright 2004-2007 Cool Dude 2k - http://intdb.sourceforge.net/
12     Copyright 2004-2007 Game Maker 2k - http://upload.idb.s1.jcink.com/
13
14     $FileInfo: groupsetup.php - Last Update: 08/02/2007 SVN 62 - Author: cooldude2k $
15 */
16 $File3Name = basename($_SERVER['SCRIPT_NAME']);
17 if ($File3Name=="groupsetup.php"||$File3Name=="/groupsetup.php") {
18         require('index.php');
19         exit(); }
20 // Member Group Setup
21 if(!isset($_SESSION['UserGroup'])) { $_SESSION['UserGroup'] = null; }
22 if($_SESSION['UserGroup']==null) { 
23 $_SESSION['UserGroup']=$Settings['GuestGroup']; } $GruError = null;
24 $gruquery = query("select * from `".$Settings['sqltable']."groups` WHERE `Name`='%s'", array($_SESSION['UserGroup']));
25 $gruresult=mysql_query($gruquery);
26 $grunum=mysql_num_rows($gruresult);
27 if($grunum<=0) { $GruError = true; @mysql_free_result($gruresult);
28 @header("Content-Type: text/plain; charset=".$Settings['charset']); 
29 ob_clean(); echo "Sorry could not find group data in database.\nContact the board admin about error."; 
30 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
31 if($grunum>=1) {
32 $GroupInfo['ID']=mysql_result($gruresult,0,"id");
33 if(!is_numeric($GroupInfo['ID'])) { $GruError = true; }
34 $GroupInfo['Name']=mysql_result($gruresult,0,"Name");
35 $GroupInfo['PermissionID']=mysql_result($gruresult,0,"PermissionID");
36 if(!is_numeric($GroupInfo['PermissionID'])) { $GruError = true; }
37 $GroupInfo['NamePrefix']=mysql_result($gruresult,0,"NamePrefix");
38 $GroupInfo['NameSuffix']=mysql_result($gruresult,0,"NameSuffix");
39 $GroupInfo['CanViewBoard']=mysql_result($gruresult,0,"CanViewBoard");
40 if($GroupInfo['CanViewBoard']!="yes"&&$GroupInfo['CanViewBoard']!="no") {
41                 $GruError = true; }
42 $GroupInfo['CanEditProfile']=mysql_result($gruresult,0,"CanEditProfile");
43 if($GroupInfo['CanEditProfile']!="yes"&&$GroupInfo['CanEditProfile']!="no") {
44                 $GruError = true; }
45 $GroupInfo['CanAddEvents']=mysql_result($gruresult,0,"CanAddEvents");
46 if($GroupInfo['CanAddEvents']!="yes"&&$GroupInfo['CanAddEvents']!="no") {
47                 $GruError = true; }
48 $GroupInfo['CanPM']=mysql_result($gruresult,0,"CanPM");
49 if($GroupInfo['CanPM']!="yes"&&$GroupInfo['CanPM']!="no") {
50                 $GruError = true; }
51 $GroupInfo['CanSearch']=mysql_result($gruresult,0,"CanSearch");
52 if($GroupInfo['CanSearch']!="yes"&&$GroupInfo['CanSearch']!="no") {
53                 $GruError = true; }
54 $GroupInfo['PromoteTo']=mysql_result($gruresult,0,"PromoteTo");
55 $GroupInfo['PromotePosts']=mysql_result($gruresult,0,"PromotePosts");
56 if(!is_numeric($GroupInfo['PromotePosts'])) { 
57         $GroupInfo['PromotePosts'] = 0; $GroupInfo['PromoteTo'] = "none"; }
58 $GroupInfo['HasModCP']=mysql_result($gruresult,0,"HasModCP");
59 if($GroupInfo['HasModCP']!="yes"&&$GroupInfo['HasModCP']!="no") {
60         $GroupInfo['HasModCP'] = "no"; }
61 $GroupInfo['HasAdminCP']=mysql_result($gruresult,0,"HasAdminCP");
62 if($GroupInfo['HasAdminCP']!="yes"&&$GroupInfo['HasAdminCP']!="no") {
63         $GroupInfo['HasAdminCP'] = "no"; }
64 $GroupInfo['ViewDBInfo']=mysql_result($gruresult,0,"ViewDBInfo"); 
65 if($GroupInfo['ViewDBInfo']!="yes"&&$GroupInfo['ViewDBInfo']!="no") {
66         $GroupInfo['ViewDBInfo'] = "no"; }
67 if($GruError==true) {
68 @header("Content-Type: text/plain; charset=".$Settings['charset']); @mysql_free_result($gruresult);
69 ob_clean(); echo "Sorry could not load all group data in database.\nContact the board admin about error."; 
70 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); } }
71 @mysql_free_result($gruresult);
72 if($GroupInfo['CanViewBoard']=="no") { 
73 @header("Content-Type: text/plain; charset=".$Settings['charset']); 
74 ob_clean(); echo "Sorry you can not view the board."; 
75 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
76 // Member Group Permissions Setup
77 $perquery = query("select * from `".$Settings['sqltable']."permissions` WHERE `PermissionID`=%i ORDER BY `ForumID` ASC", array($GroupInfo['PermissionID']));
78 $peresult=mysql_query($perquery);
79 $pernum=mysql_num_rows($peresult);
80 $peri=0; $PerError = null;
81 if($pernum<=0) { $PerError = true; @mysql_free_result($peresult);
82 @header("Content-Type: text/plain; charset=".$Settings['charset']); 
83 ob_clean(); echo "Sorry could not find permission data in database.\nContact the board admin about error."; 
84 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
85 if($pernum>=1) { while ($peri < $pernum) {
86 $PerForumID=mysql_result($peresult,$peri,"ForumID");
87 if(!is_numeric($PerForumID)) { $PerError = true; }
88 $PermissionInfo['ID'][$PerForumID]=mysql_result($peresult,$peri,"ID");
89 if(!is_numeric($PermissionInfo['ID'][$PerForumID])) { $PerError = true; }
90 $PermissionInfo['PermissionID'][$PerForumID]=mysql_result($peresult,$peri,"PermissionID");
91 if(!is_numeric($PermissionInfo['PermissionID'][$PerForumID])) { $PerError = true; }
92 $PermissionInfo['Name'][$PerForumID]=mysql_result($peresult,$peri,"Name");
93 $PermissionInfo['ForumID'][$PerForumID]=mysql_result($peresult,$peri,"ForumID");
94 if(!is_numeric($PermissionInfo['ForumID'][$PerForumID])) { $PerError = true; }
95 $PermissionInfo['CanViewForum'][$PerForumID]=mysql_result($peresult,$peri,"CanViewForum");
96 if($PermissionInfo['CanViewForum'][$PerForumID]!="yes"&&$PermissionInfo['CanViewForum'][$PerForumID]!="no") {
97                 $PerError = true; }
98 $PermissionInfo['CanMakeTopics'][$PerForumID]=mysql_result($peresult,$peri,"CanMakeTopics");
99 if($PermissionInfo['CanMakeTopics'][$PerForumID]!="yes"&&$PermissionInfo['CanMakeTopics'][$PerForumID]!="no") {
100                 $PerError = true; }
101 $PermissionInfo['CanMakeReplys'][$PerForumID]=mysql_result($peresult,$peri,"CanMakeReplys");
102 if($PermissionInfo['CanMakeReplys'][$PerForumID]!="yes"&&$PermissionInfo['CanMakeReplys'][$PerForumID]!="no") {
103                 $PerError = true; }
104 $PermissionInfo['CanEditTopics'][$PerForumID]=mysql_result($peresult,$peri,"CanEditTopics");
105 if($PermissionInfo['CanEditTopics'][$PerForumID]!="yes"&&$PermissionInfo['CanEditTopics'][$PerForumID]!="no") {
106         $PermissionInfo['CanEditTopics'][$PerForumID] = "no"; }
107 $PermissionInfo['CanEditReplys'][$PerForumID]=mysql_result($peresult,$peri,"CanEditReplys");
108 if($PermissionInfo['CanEditReplys'][$PerForumID]!="yes"&&$PermissionInfo['CanEditReplys'][$PerForumID]!="no") {
109         $PermissionInfo['CanEditReplys'][$PerForumID] = "no"; }
110 $PermissionInfo['CanDeleteTopics'][$PerForumID]=mysql_result($peresult,$peri,"CanDeleteTopics");
111 if($PermissionInfo['CanDeleteTopics'][$PerForumID]!="yes"&&$PermissionInfo['CanDeleteTopics'][$PerForumID]!="no") {
112         $PermissionInfo['CanDeleteTopics'][$PerForumID] = "no"; }
113 $PermissionInfo['CanDeleteReplys'][$PerForumID]=mysql_result($peresult,$peri,"CanDeleteReplys");
114 if($PermissionInfo['CanDeleteReplys'][$PerForumID]!="yes"&&$PermissionInfo['CanDeleteReplys'][$PerForumID]!="no") {
115         $PermissionInfo['CanDeleteReplys'][$PerForumID] = "no"; }
116 $PermissionInfo['CanDohtml'][$PerForumID]=mysql_result($peresult,$peri,"CanDohtml");
117 if($PermissionInfo['CanDohtml'][$PerForumID]!="yes"&&$PermissionInfo['CanDohtml'][$PerForumID]!="no") {
118         $PermissionInfo['CanDohtml'][$PerForumID] = "no"; }
119 $PermissionInfo['CanUseBBags'][$PerForumID]=mysql_result($peresult,$peri,"CanUseBBags");
120 if($PermissionInfo['CanUseBBags'][$PerForumID]!="yes"&&$PermissionInfo['CanUseBBags'][$PerForumID]!="no") {
121         $PermissionInfo['CanUseBBags'][$PerForumID] = "no"; }
122 $PermissionInfo['CanModForum'][$PerForumID]=mysql_result($peresult,$peri,"CanModForum");
123 if($PermissionInfo['CanModForum'][$PerForumID]!="yes"&&$PermissionInfo['CanModForum'][$PerForumID]!="no") {
124         $PermissionInfo['CanModForum'][$PerForumID] = "no"; }
125 if($PerError==true) { $peri = $pernum; }
126 ++$peri; } if($PerError==true) {
127 @header("Content-Type: text/plain; charset=".$Settings['charset']); @mysql_free_result($peresult);
128 ob_clean(); echo "Sorry could not load all permission data in database.\nContact the board admin about error."; 
129 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); } }
130 @mysql_free_result($peresult);
131 $per2query = query("select * from `".$Settings['sqltable']."catpermissions` WHERE `PermissionID`=%i ORDER BY `CategoryID` ASC", array($GroupInfo['PermissionID']));
132 $per2esult=mysql_query($per2query);
133 $per2num=mysql_num_rows($per2esult);
134 $per2i=0; $Per2Error = null;
135 if($per2num<=0) { $Per2Error = true; @mysql_free_result($per2esult);
136 @header("Content-Type: text/plain; charset=".$Settings['charset']); 
137 ob_clean(); echo "Sorry could not find permission data in database.\nContact the board admin about error."; 
138 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); }
139 if($per2num>=1) { while ($per2i < $per2num) {
140 $PerCatID=mysql_result($per2esult,$per2i,"CategoryID");
141 if(!is_numeric($PerCatID)) { $Per2Error = true; }
142 $CatPermissionInfo['ID'][$PerCatID]=mysql_result($per2esult,$per2i,"id");
143 if(!is_numeric($CatPermissionInfo['ID'][$PerCatID])) { $Per2Error = true; }
144 $CatPermissionInfo['PermissionID'][$PerCatID]=mysql_result($per2esult,$per2i,"PermissionID");
145 if(!is_numeric($CatPermissionInfo['PermissionID'][$PerCatID])) { $Per2Error = true; }
146 $CatPermissionInfo['Name'][$PerCatID]=mysql_result($per2esult,$per2i,"Name");
147 $CatPermissionInfo['CategoryID'][$PerCatID]=mysql_result($per2esult,$per2i,"CategoryID");
148 if(!is_numeric($CatPermissionInfo['CategoryID'][$PerCatID])) { $Per2Error = true; }
149 $CatPermissionInfo['CanViewCategory'][$PerCatID]=mysql_result($per2esult,$per2i,"CanViewCategory");
150 if($CatPermissionInfo['CanViewCategory'][$PerCatID]!="yes"&&$CatPermissionInfo['CanViewCategory'][$PerCatID]!="no") {
151                 $Per2Error = true; }
152 if($Per2Error==true) { $per2i = $per2num; }
153 ++$per2i; } if($Per2Error==true) {
154 @header("Content-Type: text/plain; charset=".$Settings['charset']); @mysql_free_result($per2esult);
155 ob_clean(); echo "Sorry could not load all permission data in database.\nContact the board admin about error."; 
156 gzip_page($Settings['use_gzip'],$GZipEncode['Type']); @mysql_close(); die(); } }
157 @mysql_free_result($per2esult);
158 ?>