home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2003 May / INTERNET103.ISO / pc / software / windows / building / php_nuke / html / modules / forums / topicadmin.php < prev    next >
Encoding:
PHP Script  |  2002-09-16  |  12.5 KB  |  310 lines

  1. <?php
  2.  
  3. ######################################################################
  4. # Modulo Splatt Forum per PHP-NUKE 
  5. #-------------------------
  6. # Versione: 3.2
  7. #
  8. # Copyright (c) 2002 by:
  9. #
  10. # Giorgio Ciranni (~Splatt~)
  11. # (http://www.splatt.it)
  12. # (webmaster@splatt.it)
  13. #
  14. # Supporto tecnico disponibile sul Forum di www.splatt.it
  15. ######################################################################
  16. # Splatt Forum is free software. You can redistribute it and/or modify
  17. # it under the terms of the GNU General Public License as published by
  18. # the Free Software Foundation; either version 2 of the License.
  19. # Splatt Forum is distributed in the hope that it will be useful,
  20. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  21. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  22. # GNU General Public License for more details.
  23. #
  24. # You should have received a copy of the GNU General Public License
  25. # along with this program; if not, write to the Free Software
  26. # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA   
  27. # 02111-1307  USA
  28. ######################################################################
  29.  
  30. $module_name = "$name";
  31.  
  32. include("config.php");
  33. include("modules/".$module_name."/functions.php");
  34. include("modules/".$module_name."/auth.php");
  35. include("header.php");
  36.  
  37. if($submit) {
  38.  
  39.  
  40.  
  41.         $mod_data = get_userdata($username, $db);
  42.         $moderators = get_moderators($forum, $db);
  43.         reset ($moderators);
  44.         while(list($null, $mods) = each($moderators)) {
  45.                 while(list($mod_id, $mod_name) = each($mods)) {
  46.  
  47.                         if ($mod_data[uid] == $mod_id) {
  48.                                 $mod = $mod_id;
  49.                                 break 2;
  50.                         }
  51.                 }
  52.         }
  53.  
  54.     
  55.  
  56.         if ($username == '' || $passwd == '')
  57.                 die(""._FENTNIPAS."");
  58.  
  59.         if($mod != $mod_data[uid] && $level >= 2)
  60.                 die(""._FTUNOMOD."");
  61.  
  62.  
  63.  
  64.  
  65.  
  66. $dbpass=$mod_data[pass];
  67. $non_crypt_pass = $passwd;
  68. $old_crypt_pass = crypt($passwd,substr($dbpass,0,2));
  69. $password = md5($passwd);
  70.     if (($dbpass == $non_crypt_pass) OR ($dbpass ==
  71. $old_crypt_pass) OR ($dbpass == $password))
  72.         {
  73.             $password=$dbpass;
  74.         }
  75.  
  76.  
  77.     if($mod_data[pass] != $password )
  78.         die(""._ERRORPASS."");
  79.  
  80.     echo "<center>";
  81.  
  82.         switch($mode) {
  83.                 case 'del':
  84.                         $sql = "DELETE FROM ${prefix}_posts WHERE topic_id = '$topic'";
  85.                         if(!$result = mysql_query($sql, $db))
  86.                                 die("Error - Could not remove posts from the database!");
  87.                         $sql = "DELETE FROM ${prefix}_forumtopics WHERE topic_id = '$topic'";
  88.                         if(!$result = mysql_query($sql, $db))
  89.                                 die("Error - Could not remove posts from the database!");
  90.                         echo ""._FTOPDEL."<br><a href=\"modules.php?op=modload&name=".$module_name."&file=viewforum&forum=$forum\">"._FCLIKTORET."</a><br><a href=\"modules.php?op=modload&name=".$module_name."&file=index\">"._CLIKRET."</a>";
  91.                 break;
  92.                 case 'move':
  93.                         $sql = "UPDATE ${prefix}_forumtopics SET forum_id = '$newforum' WHERE topic_id = '$topic'";
  94.                         if(!$r = mysql_query($sql, $db))
  95.                                 die("Error - Could not move selected topic to selected forum. Please go back and try again.");
  96.                         $sql = "UPDATE ${prefix}_posts SET forum_id = '$newforum' WHERE topic_id = '$topic'";
  97.                         if(!$r = mysql_query($sql, $db))
  98.                                 die("Error - Could not move selected topic to selected forum. Please go back and try again.");
  99.                         echo ""._FTOPMOV."<br><a href=\"modules.php?op=modload&name=".$module_name."&file=viewtopic&topic=$topic&forum=$newforum\">"._CLIKVUPD."</a><br><a href=\"modules.php?op=modload&name=".$module_name."&file=index\">"._CLIKRET."</a>";
  100.                 break;
  101.                 case 'lock':
  102.                         $sql = "UPDATE ${prefix}_forumtopics SET topic_status = 1 WHERE topic_id = '$topic'";
  103.                         if(!$r = mysql_query($sql, $db))
  104.                                 die("Error - Could not lock the selected topic. Please go back and try again.");
  105.                         echo ""._FTOPLOK."<br><a href=\"modules.php?op=modload&name=".$module_name."&file=viewtopic&topic=$topic&forum=$forum\">"._CLIKVUPD."</a><br><a href=\"modules.php?op=modload&name=".$module_name."&file=index\">"._CLIKRET."</a>";
  106.                 break;
  107.                 case 'unlock':
  108.                         $sql = "UPDATE ${prefix}_forumtopics SET topic_status = '0' WHERE topic_id = '$topic'";
  109.                         if(!$r = mysql_query($sql, $db))
  110.                                 die("Error - Could not unlock the selected topic. Please go back and try again.");
  111.                         echo ""._FTOPSBLOK."<br><a href=\"modules.php?op=modload&name=".$module_name."&file=viewtopic&topic=$topic&forum=$forum\">"._CLIKVUPD."</a><br><a href=\"modules.php?op=modload&name=".$module_name."&file=index\">"._CLIKRET."</a>";
  112.                 break;
  113.                 case 'viewip':
  114.                         $sql = "SELECT u.uname, p.poster_ip FROM ".$user_prefix."_users u, ${prefix}_posts p WHERE p.post_id = '$post' AND u.uid = p.poster_id";
  115.                         if(!$r = mysql_query($sql, $db))
  116.                                 die("Error - Could not query the database. <BR>Error: mysql_error()");
  117.                         if(!$m = mysql_fetch_array($r))
  118.                                 die("Error - No such user or post in the database.");
  119. ?>
  120. <TABLE BORDER="0" CELLPADDING="1" CELLSPACEING="0" ALIGN="CENTER" VALIGN="TOP" WIDTH="95%"><TR><TD BGCOLOR="<?php echo $table_bgcolor?>">
  121. <TABLE BORDER="0" CELLPADDING="1" CELLSPACEING="1" WIDTH="100%">
  122. <TR BGCOLOR="<?php echo $bgcolor3?>" ALIGN="LEFT">
  123.         <TD COLSPAN="2" ALIGN="CENTER"><?php echo _FUSIP;?></TD>
  124. </TR>
  125. <TR BGCOLOR="<?php echo $bgcolor1?>" ALIGN="LEFT">
  126.         <TD><?php echo _FNICK;?></TD>
  127.         <TD><?php echo $m[uname]?></TD>
  128. </TR>
  129. <TR BGCOLOR="<?php echo $bgcolor1?>" ALIGN="LEFT">
  130.         <TD><?php echo _FFUSIP;?></TD>
  131.         <TD><?php echo $m[poster_ip]?></TD>
  132. </TR>
  133. </TABLE></TD></TR></TABLE>
  134. <A HREF="javascript:history.go(-2)">Back</a>
  135. <?php
  136.                 break;
  137.  
  138.         }
  139.         echo "</center>";
  140. }
  141. else {
  142.                $user = base64_decode($user);
  143.                $userdata = explode(":", $user);
  144.                $userdata = get_userdata_from_id($userdata[0], $db);
  145.  
  146.  
  147.                 $moderators = get_moderators($forum, $db);
  148.                 reset ($moderators);
  149.                 while(list($null, $mods) = each($moderators)) {
  150.                         while(list($mod_id, $mod_name) = each($mods)) {
  151.  
  152.                                 if ($userdata[0] == $mod_id) {
  153.                                         $mod = $mod_id;
  154.                                         break 2;
  155.                                 }
  156.                         }
  157.                 }
  158.  
  159.                if ($userdata[user_level] >= 2 && $userdata[uid] == $mod || $userdata[user_level] == 3) {
  160. ?>
  161. <FORM ACTION="modules.php?op=modload&name=<?php echo $module_name?>&file=topicadmin" METHOD="POST">
  162. <TABLE BORDER="0" CELLPADDING="1" CELLSPACING="0" ALIGN="CENTER" VALIGN="TOP" WIDTH="100%"><TR><TD>
  163. <TABLE BORDER="0" CELLPADDING="1" CELLSPACING="1" WIDTH="100%">
  164. <TR BGCOLOR="<?php echo $bgcolor3?>" ALIGN="LEFT">
  165. <?php
  166.         switch($mode) {
  167.                 case 'del':
  168. ?>
  169.         <TD COLSPAN=2><B><?php echo _FREDVIS;?></b><br><?php echo _FIDENTMOD; ?><br><FONT SIZE=1><i><?php echo _FONCEDEL;?></FONT></i></TD>
  170. <?php
  171.                 break;
  172.                 case 'move':
  173. ?>
  174.         <TD COLSPAN=2><B><?php echo _FREDVIS;?></b><br><?php echo _FIDENTMOD; ?><br><FONT SIZE=1><i><?php echo _FONCEMOV;?></i></FONT></TD>
  175. <?php
  176.                 break;
  177.                 case 'lock':
  178. ?>
  179.         <TD COLSPAN=2><B><?php echo _FREDVIS;?></b><br><?php echo _FIDENTMOD; ?><br><FONT SIZE=1><i><?php echo _FONCELOK;?></FONT></i></TD>
  180. <?php
  181.                 break;
  182.                 case 'unlock':
  183. ?>
  184.         <TD COLSPAN=2><B><?php echo _FREDVIS;?></b><br><?php echo _FIDENTMOD; ?><br><FONT SIZE=1><i><?php echo _FONCEUNLOK;?></i></FONT></TD>
  185. <?php
  186.                 break;
  187.                 case 'viewip':
  188. ?>
  189.         <TD COLSPAN=2><B><?php echo _FREDVIS;?></b><?php echo _FIDENTMOD; ?></FONT></TD>
  190. <?php
  191.                 break;
  192.         }
  193. ?>
  194. </TR>
  195. <TR>
  196.         <TD BGCOLOR="<?php echo $bgcolor3?>">User:</TD>
  197.         <TD BGCOLOR="<?php echo $bgcolor1?>"><INPUT CLASS=textbox TYPE="TEXT" NAME="username" SIZE="25" MAXLENGTH="40"></TD>
  198. </TR>
  199. <TR>
  200.         <TD BGCOLOR="<?php echo $bgcolor3?>">Password:</TD>
  201.         <TD BGCOLOR="<?php echo $bgcolor1?>"><INPUT CLASS=textbox TYPE="PASSWORD" NAME="passwd" SIZE="25" MAXLENGTH="25"></TD>
  202. </TR>
  203. <?php
  204.         if($mode == 'move') {
  205. ?>
  206. <TR>
  207.         <TD BGCOLOR="<?php echo $bgcolor3?>"><?php echo _FMOVETO;?></TD>
  208.         <TD BGCOLOR="<?php echo $bgcolor1?>"><SELECT NAME="newforum" SIZE="0">
  209. <?php
  210.         $sql = "SELECT forum_id, forum_name FROM ${prefix}_forums WHERE forum_id != '$forum' ORDER BY forum_id";
  211.         if($result = mysql_query($sql, $db)) {
  212.                 if($myrow = mysql_fetch_array($result)) {
  213.                         do {
  214.                                 echo "<OPTION VALUE=\"$myrow[forum_id]\">$myrow[forum_name]</OPTION>\n";
  215.                         } while($myrow = mysql_fetch_array($result));
  216.                 }
  217.                 else {
  218.                         echo "<OPTION VALUE=\"-1\">"._FNOMORE."</OPTION>\n";
  219.                 }
  220.         }
  221.         else {
  222.                 echo "<OPTION VALUE=\"-1\">Database Error</OPTION>\n";
  223.         }
  224. ?>
  225.         </SELECT></TD>
  226. </TR>
  227. <?php
  228.         }
  229. ?>
  230. <TR BGCOLOR="<?php echo $bgcolor3?>">
  231.         <TD COLSPAN="2" ALIGN="CENTER">
  232. <?php
  233.         switch($mode) {
  234.                 case 'del':
  235. ?>
  236.                 <INPUT TYPE="HIDDEN" NAME="mode" VALUE="del">
  237.                 <INPUT TYPE="HIDDEN" NAME="topic" VALUE="<?php echo $topic?>">
  238.                 <INPUT TYPE="HIDDEN" NAME="forum" VALUE="<?php echo $forum?>">
  239.                 <INPUT TYPE="SUBMIT" NAME="submit" VALUE="<?php echo _FDELT;?>">
  240. <?php
  241.                 break;
  242.                 case 'move':
  243. ?>
  244.                 <INPUT TYPE="HIDDEN" NAME="mode" VALUE="move">
  245.                 <INPUT TYPE="HIDDEN" NAME="topic" VALUE="<?php echo $topic?>">
  246.                 <INPUT TYPE="HIDDEN" NAME="forum" VALUE="<?php echo $forum?>">
  247.                 <INPUT TYPE="SUBMIT" NAME="submit" VALUE="<?php echo _FMOVET;?>">
  248. <?php
  249.                 break;
  250.                 case 'lock':
  251. ?>
  252.                 <INPUT TYPE="HIDDEN" NAME="mode" VALUE="lock">
  253.                 <INPUT TYPE="HIDDEN" NAME="topic" VALUE="<?php echo $topic?>">
  254.                 <INPUT TYPE="HIDDEN" NAME="forum" VALUE="<?php echo $forum?>">
  255.                 <INPUT TYPE="SUBMIT" NAME="submit" VALUE="<?php echo _LOCKTHIS;?>">
  256. <?php
  257.                 break;
  258.                 case 'unlock':
  259. ?>
  260.                 <INPUT TYPE="HIDDEN" NAME="mode" VALUE="unlock">
  261.                 <INPUT TYPE="HIDDEN" NAME="topic" VALUE="<?php echo $topic?>">
  262.                 <INPUT TYPE="HIDDEN" NAME="forum" VALUE="<?php echo $forum?>">
  263.                 <INPUT TYPE="SUBMIT" NAME="submit" VALUE="<?php echo _UNLOCKTHIS;?>">
  264. <?php
  265.                 break;
  266.                 case 'viewip':
  267. ?>
  268.                 <INPUT TYPE="HIDDEN" NAME="mode" VALUE="viewip">
  269.                 <INPUT TYPE="HIDDEN" NAME="post" VALUE="<?php echo $post?>">
  270.                 <INPUT TYPE="HIDDEN" NAME="forum" VALUE="<?php echo $forum?>">
  271.                 <INPUT TYPE="SUBMIT" NAME="submit" VALUE="<?php echo _FVIEWIP;?>">
  272. <?php
  273.                 break;
  274.         }
  275. ?>
  276. <INPUT TYPE="HIDDEN" NAME="level" VALUE="<?php echo $userdata[user_level];?>">
  277. </TD></TR>
  278. </FORM>
  279. </TABLE></TD></TR></TABLE></TD></TR></TABLE>
  280. <?php
  281. }
  282. else {
  283. ?>
  284. <TABLE BORDER="0" CELLPADDING="1" CELLSPACING=0" ALIGN="CENTER" VALIGN="TOP" WIDTH="100%"><TR><TD>
  285. <TABLE BORDER="0" CELLPADDING="1" CELLSPACING=1" WIDTH="100%">
  286. <TR BGCOLOR="<?php echo $bgcolor3?>">
  287. <TD ALIGN="CENTER">
  288. <?php echo _FTUNOMOD;?><br>
  289. <A HREF="javascript:history.go(-1)">back</a>
  290. </TD>
  291. </TR>
  292. </TABLE></TD></TR></TABLE>
  293.  
  294. <!-- Don't touch the lines below please! --> 
  295. <?php
  296. echo"<p align=\"center\">Splatt Forum © By: <a href=\"http://www.splatt.it\" target=\"_blank\">Splatt.it</a><br>Version: $forumver</font></p><br><br>";
  297. }
  298. }
  299.  
  300. include('footer.php');
  301. ?>
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.