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

  1. <?php
  2.  
  3. /************************************************************************/
  4. /* PHP-NUKE: Web Portal System                                          */
  5. /* ===========================                                          */
  6. /*                                                                      */
  7. /* Copyright (c) 2002 by Francisco Burzi                                */
  8. /* http://phpnuke.org                                                   */
  9. /*                                                                      */
  10. /* This program is free software. You can redistribute it and/or modify */
  11. /* it under the terms of the GNU General Public License as published by */
  12. /* the Free Software Foundation; either version 2 of the License.       */
  13. /************************************************************************/
  14.  
  15. if (!eregi("admin.php", $PHP_SELF)) { die ("Access Denied"); }
  16.  
  17. $result = sql_query("select radminsection, radminsuper from ".$prefix."_authors where aid='$aid'", $dbi);
  18. list($radminsection, $radminsuper) = sql_fetch_row($result, $dbi);
  19. if (($radminsection==1) OR ($radminsuper==1)) {
  20.  
  21. /*********************************************************/
  22. /* Sections Manager Functions                            */
  23. /*********************************************************/
  24.  
  25. function sections() {
  26.     global $prefix, $dbi, $language, $multilingual;
  27.     include("header.php");
  28.     GraphicAdmin();
  29.     OpenTable();
  30.     echo "<center><font class=\"title\"><b>"._SECTIONSADMIN."</b></font></center>";
  31.     CloseTable();
  32.     $result = sql_query("select secid, secname from ".$prefix."_sections order by secid", $dbi);
  33.     if (sql_num_rows($result, $dbi) > 0) {
  34.     echo "<br>";
  35.     OpenTable();
  36.     echo "<center><b>"._ACTIVESECTIONS."</b><br><font class=\"content\">"._CLICK2EDITSEC."</font></center><br>"
  37.         ."<table border=0 width=100% align=center cellpadding=1 align=\"center\"><tr><td align=center>";
  38.     while(list($secid, $secname) = sql_fetch_array($result, $dbi)) {
  39.         echo "<strong><big>·</big></strong>  <a href=\"admin.php?op=sectionedit&secid=$secid\">$secname</a>";
  40.     }
  41.     echo "</td></tr></table>";
  42.     CloseTable();
  43.     echo "<br>";
  44.     OpenTable();
  45.     echo "<center><font class=\"option\"><b>"._ADDSECARTICLE."</b></font></center><br>"
  46.         ."<form action=\"admin.php\" method=\"post\">"
  47.         ."<b>"._TITLE."</b><br>"
  48.         ."<input type=\"text\" name=\"title\" size=\"60\"><br><br>"
  49.         ."<b>"._SELSECTION.":</b><br>";
  50.     $result = sql_query("select secid, secname from ".$prefix."_sections order by secid", $dbi);
  51.     while(list($secid, $secname) = sql_fetch_array($result, $dbi)) {
  52.         echo "<input type=\"radio\" name=\"secid\" value=\"$secid\"> $secname<br>";
  53.     }
  54.     echo "<font class=\"content\">"._DONTSELECT."</font><br>";
  55.     if ($multilingual == 1) {
  56.         echo "<br><b>"._LANGUAGE.": </b>"
  57.         ."<select name=\"slanguage\">";
  58.         $handle=opendir('language');
  59.         while ($file = readdir($handle)) {
  60.         if (preg_match("/^lang\-(.+)\.php/", $file, $matches)) {
  61.                 $langFound = $matches[1];
  62.             $languageslist .= "$langFound ";
  63.         }
  64.         }
  65.         closedir($handle);
  66.         $languageslist = explode(" ", $languageslist);
  67.         sort($languageslist);
  68.         for ($i=0; $i < sizeof($languageslist); $i++) {
  69.         if($languageslist[$i]!="") {
  70.             echo "<option value=\"$languageslist[$i]\" ";
  71.             if($languageslist[$i]==$language) echo "selected";
  72.             echo ">".ucfirst($languageslist[$i])."</option>\n";
  73.         }
  74.         }
  75.         echo "</select>";
  76.     } else {
  77.         echo "<input type=\"hidden\" name=\"slanguage\" value=\"$language\">";
  78.     }
  79.     echo "<br><br><b>"._CONTENT."</b><br>"
  80.         ."<textarea name=\"content\" cols=\"60\" rows=\"10\"></textarea><br>"
  81.         ."<font class=\"content\">"._PAGEBREAK."</font><br><br>"
  82.         ."<input type=\"hidden\" name=\"op\" value=\"secarticleadd\">"
  83.         ."<input type=\"submit\" value=\""._ADDARTICLE."\">"
  84.         ."</form>";
  85.     CloseTable();
  86.     echo "<br>";
  87.     OpenTable();
  88.     echo "<center><font class=\"option\"><b>"._LAST." 20 "._ARTICLES."</b></font></center><br>"
  89.         ."<ul>";
  90.     $result = sql_query("select artid, secid, title, content, slanguage from ".$prefix."_seccont order by artid desc limit 0,20", $dbi);
  91.     while(list($artid, $secid, $title, $content, $slanguage) = sql_fetch_array($result, $dbi)) {
  92.         $result2 = sql_query("select secid, secname from ".$prefix."_sections where secid='$secid'", $dbi);
  93.         list($secid, $secname) = sql_fetch_row($result2, $dbi);
  94.         echo "<li>$title - ($slanguage) - ($secname) [ <a href=\"admin.php?op=secartedit&artid=$artid\">"._EDIT."</a> | <a href=\"admin.php?op=secartdelete&artid=$artid&ok=0\">"._DELETE."</a> ]";
  95.     }
  96.     echo "</ul>"
  97.         ."<form action=\"admin.php\" method=\"post\">"
  98.         .""._EDITARTID.": <input type=\"text\" name=\"artid\" size=\"10\">  "
  99.         ."<input type=\"hidden\" name=\"op\" value=\"secartedit\">"
  100.         ."<input type=\"submit\" value=\""._OK."\">"
  101.         ."</form>";
  102.     CloseTable();
  103.     }
  104.     echo "<br>";
  105.     OpenTable();
  106.     echo "<center><font class=\"option\"><b>"._ADDSECTION."</b></font></center><br>"
  107.     ."<form action=\"admin.php\" method=\"post\"><br>"
  108.     ."<b>"._SECTIONNAME.":</b><br>"
  109.     ."<input type=\"text\" name=\"secname\" size=\"40\" maxlength=\"40\"><br><br>"
  110.     ."<b>"._SECTIONIMG."</b><br><font class=\"tiny\">"._SECIMGEXAMPLE."</font><br>"
  111.     ."<input type=\"text\" name=\"image\" size=\"40\" maxlength=\"50\"><br><br>"
  112.     ."<input type=\"hidden\" name=\"op\" value=\"sectionmake\">"
  113.     ."<INPUT type=\"submit\" value=\""._ADDSECTIONBUT."\">"
  114.     ."</form>";
  115.     CloseTable();
  116.     include("footer.php");
  117. }
  118.  
  119. function secarticleadd($secid, $title, $content, $slanguage) {
  120.     global $prefix, $dbi;
  121.     $title = stripslashes(FixQuotes($title));
  122.     $content = stripslashes(FixQuotes($content));
  123.     sql_query("INSERT INTO ".$prefix."_seccont VALUES (NULL,'$secid','$title','$content','0','$slanguage')", $dbi);
  124.     Header("Location: admin.php?op=sections");
  125. }
  126.  
  127. function secartedit($artid) {
  128.     global $prefix, $dbi, $multilingual;
  129.     include("header.php");
  130.     GraphicAdmin();
  131.     OpenTable();
  132.     echo "<center><font class=\"title\"><b>"._SECTIONSADMIN."</b></font></center>";
  133.     CloseTable();
  134.     echo "<br>";
  135.     $result = sql_query("select artid, secid, title, content, slanguage from ".$prefix."_seccont where artid='$artid'", $dbi);
  136.     list($artid, $secid, $title, $content, $slanguage) = sql_fetch_array($result, $dbi);
  137.     OpenTable();
  138.     echo "<center><font class=\"option\"><b>"._EDITARTICLE."</b></font></center><br>"
  139.     ."<form action=\"admin.php\" method=\"post\">"
  140.     ."<b>"._TITLE."</b><br>"
  141.     ."<input type=\"text\" name=\"title\" size=\"60\" value=\"$title\"><br><br>"
  142.     ."<b>"._SELSECTION.":</b><br>";
  143.     $result2 = sql_query("select secid, secname from ".$prefix."_sections order by secname", $dbi);
  144.     while(list($secid2, $secname) = sql_fetch_array($result2, $dbi)) {
  145.         if ($secid2==$secid) {
  146.         $che = "checked";
  147.         }
  148.         echo "<input type=\"radio\" name=\"secid\" value=\"$secid2\" $che>$secname<br>";
  149.         $che = "";
  150.     }
  151.     if ($multilingual == 1) {
  152.     echo "<br><b>"._LANGUAGE.": </b>"
  153.         ."<select name=\"slanguage\">";
  154.     $handle=opendir('language');
  155.     while ($file = readdir($handle)) {
  156.         if (preg_match("/^lang\-(.+)\.php/", $file, $matches)) {
  157.             $langFound = $matches[1];
  158.             $languageslist .= "$langFound ";
  159.         }
  160.     }
  161.     closedir($handle);
  162.     $languageslist = explode(" ", $languageslist);
  163.     sort($languageslist);
  164.     for ($i=0; $i < sizeof($languageslist); $i++) {
  165.         if($languageslist[$i]!="") {
  166.         echo "<option value=\"$languageslist[$i]\" ";
  167.         if($languageslist[$i]==$slanguage) echo "selected";
  168.         echo ">".ucfirst($languageslist[$i])."</option>\n";
  169.         }
  170.     }
  171.     echo "</select><br>";
  172.     } else {
  173.     echo "<input type=\"hidden\" name=\"slanguage\" value=\"$language\">";
  174.     }
  175.     echo "<br><b>"._CONTENT."</b><br>"
  176.     ."<textarea name=\"content\" cols=\"60\" rows=\"10\">$content</textarea><br><br>"
  177.     ."<input type=\"hidden\" name=\"artid\" value=\"$artid\">"
  178.     ."<input type=\"hidden\" name=\"op\" value=\"secartchange\">"
  179.     ."<input type=\"submit\" value=\""._SAVECHANGES."\"> [ <a href=\"admin.php?op=secartdelete&artid=$artid&ok=0\">"._DELETE."</a> ]"
  180.     ."</form>";
  181.     CloseTable();
  182.     include("footer.php");
  183. }
  184.  
  185. function sectionmake($secname, $image) {
  186.     global $prefix, $dbi;
  187.     $secname = stripslashes(FixQuotes($secname));
  188.     $image = stripslashes(FixQuotes($image));
  189.     sql_query("INSERT INTO ".$prefix."_sections VALUES (NULL,'$secname', '$image')", $dbi);
  190.     Header("Location: admin.php?op=sections");
  191. }
  192.  
  193. function sectionedit($secid) {
  194.     global $prefix, $dbi;
  195.     include("header.php");
  196.     GraphicAdmin();
  197.     OpenTable();
  198.     echo "<center><font class=\"title\"><b>"._SECTIONSADMIN."</b></font></center>";
  199.     CloseTable();
  200.     echo "<br>";
  201.     $result = sql_query("select secid, secname, image from ".$prefix."_sections where secid=$secid", $dbi);
  202.     list($secid, $secname, $image) = sql_fetch_array($result, $dbi);
  203.     $result2 = sql_query("select artid from ".$prefix."_seccont where secid=$secid", $dbi);
  204.     $number = sql_num_rows($result2, $dbi);
  205.     OpenTable();
  206.     echo "<img src=\"images/sections/$image\" border=\"0\" alt=\"\"><br><br>"
  207.     ."<font class=\"option\"><b>"._EDITSECTION.": $secname</b></font>"
  208.     ."<br>("._SECTIONHAS." $number "._ARTICLESATTACH.")"
  209.     ."<br><br>"
  210.     ."<form action=\"admin.php\" method=\"post\">"
  211.     ."<b>"._SECTIONNAME."</b><br><font class=\"tiny\">"._40CHARSMAX."</font><br>"
  212.     ."<input type=\"text\" name=\"secname\" size=\"40\" maxlength=\"40\" value=\"$secname\"><br><br>"
  213.     ."<b>"._SECTIONIMG."</b><br><font class=\"tiny\">"._SECIMGEXAMPLE."</font><br>"
  214.     ."<input type=\"text\" name=\"image\" size=\"40\" maxlength=\"50\" value=\"$image\"><br><br>"
  215.     ."<input type=\"hidden\" name=\"secid\" value=\"$secid\">"
  216.     ."<input type=\"hidden\" name=\"op\" value=\"sectionchange\">"
  217.     ."<input type=\"submit\" value=\""._SAVECHANGES."\"> [ <a href=\"admin.php?op=sectiondelete&secid=$secid&ok=0\">"._DELETE."</a> ]"
  218.     ."</form>";
  219.     CloseTable();
  220.     include("footer.php");
  221. }
  222.  
  223. function sectionchange($secid, $secname, $image) {
  224.     global $prefix, $dbi;
  225.     $secname = stripslashes(FixQuotes($secname));
  226.     $image = stripslashes(FixQuotes($image));
  227.     sql_query("update ".$prefix."_sections set secname='$secname', image='$image' where secid=$secid", $dbi);
  228.     Header("Location: admin.php?op=sections");
  229. }
  230.  
  231. function secartchange($artid, $secid, $title, $content, $slanguage) {
  232.     global $prefix, $dbi;
  233.     $title = stripslashes(FixQuotes($title));
  234.     $content = stripslashes(FixQuotes($content));
  235.     sql_query("update ".$prefix."_seccont set secid='$secid', title='$title', content='$content', slanguage='$slanguage' where artid=$artid", $dbi);
  236.     Header("Location: admin.php?op=sections");
  237. }
  238.  
  239. function sectiondelete($secid, $ok=0) {
  240.     global $prefix, $dbi;
  241.     if ($ok==1) {
  242.         sql_query("delete from ".$prefix."_seccont where secid='$secid'", $dbi);
  243.         sql_query("delete from ".$prefix."_sections where secid='$secid'", $dbi);
  244.         Header("Location: admin.php?op=sections");
  245.     } else {
  246.         include("header.php");
  247.         GraphicAdmin();
  248.     OpenTable();
  249.     echo "<center><font class=\"title\"><b>"._SECTIONSADMIN."</b></font></center>";
  250.     CloseTable();
  251.     echo "<br>";
  252.     $result=sql_query("select secname from ".$prefix."_sections where secid=$secid", $dbi);
  253.     list($secname) = sql_fetch_row($result, $dbi);
  254.     OpenTable();
  255.     echo "<center><b>"._DELSECTION.": $secname</b><br><br>"
  256.         .""._DELSECWARNING." $secname?<br>"
  257.         .""._DELSECWARNING1."<br><br>"
  258.         ."[ <a href=\"admin.php?op=sections\">"._NO."</a> | <a href=\"admin.php?op=sectiondelete&secid=$secid&ok=1\">"._YES."</a> ]</center>";
  259.     CloseTable();
  260.         include("footer.php");
  261.     }
  262. }
  263.  
  264. function secartdelete($artid, $ok=0) {
  265.     global $prefix, $dbi;
  266.     if ($ok==1) {
  267.         sql_query("delete from ".$prefix."_seccont where artid='$artid'", $dbi);
  268.         Header("Location: admin.php?op=sections");
  269.     } else {
  270.         include("header.php");
  271.         GraphicAdmin();
  272.     OpenTable();
  273.     echo "<center><font class=\"title\"><b>"._SECTIONSADMIN."</b></font></center>";
  274.     CloseTable();
  275.     echo "<br>";
  276.     $result = sql_query("select title from ".$prefix."_seccont where artid=$artid", $dbi);
  277.     list($title) = sql_fetch_row($result, $dbi);
  278.     OpenTable();
  279.     echo "<center><b>"._DELARTICLE.": $title</b><br><br>"
  280.         .""._DELARTWARNING."<br><br>"
  281.         ."[ <a href=\"admin.php?op=sections\">"._NO."</a> | <a href=\"admin.php?op=secartdelete&artid=$artid&ok=1\">"._YES."</a> ]</center>";
  282.     CloseTable();
  283.         include("footer.php");
  284.     }
  285. }
  286.  
  287. switch ($op) {
  288.  
  289.     case "sections":
  290.     sections();
  291.     break;
  292.  
  293.     case "sectionedit":
  294.     sectionedit($secid);
  295.     break;
  296.  
  297.     case "sectionmake":
  298.     sectionmake($secname, $image);
  299.     break;
  300.  
  301.     case "sectiondelete":
  302.     sectiondelete($secid, $ok);
  303.     break;
  304.  
  305.     case "sectionchange":
  306.     sectionchange($secid, $secname, $image);
  307.     break;
  308.  
  309.     case "secarticleadd":
  310.     secarticleadd($secid, $title, $content, $slanguage);
  311.     break;
  312.  
  313.     case "secartedit":
  314.     secartedit($artid);
  315.     break;
  316.  
  317.     case "secartchange":
  318.     secartchange($artid, $secid, $title, $content, $slanguage);
  319.     break;
  320.  
  321.     case "secartdelete":
  322.     secartdelete($artid, $ok);
  323.     break;
  324.  
  325. }
  326.  
  327. } else {
  328.     echo "Access Denied";
  329. }
  330.  
  331. ?>