Файл: fo/admin.php
Строк: 203
<?php
require '../system/sid.php';
require '../system/config.php';
include '../system/user.php';
include '../system/head.php';
include '../system/navigator.php';
whorm(0, 'adminka');
if ($user['level'] != 4 && $user['level'] != 5) {
    header('Location: index.php?');
    die();
}
$do = isset($_GET['do']) ? $_GET['do'] : NULL;
switch($do) {
default:
echo $div_title . 'Зона обмена' . $div_end;
$num_r = mysql_result(mysql_query("SELECT COUNT(id) FROM `fo_cat`"), 0);
$num_p = mysql_result(mysql_query("SELECT COUNT(id) FROM `fo_pod`"), 0);
  echo '» <a href="admin.php?do=fo_razdel">Разделы</a> (' . $num_r . ')<br/>
        » <a href="admin.php?do=fo_podrazdel">Подразделы</a> (' . $num_p . ')<br/>
        » <a href="admin.php?do=fo_sys">Система</a>';
break;
// разделы обменника
case fo_razdel:
echo $div_title . 'Разделы' . $div_end;
    // создание раздела
    if (isset($_POST['add']))
    {
       $nazv = trim(mysql_real_escape_string(check($_POST['nazv'])));
       $empty = mysql_query("SELECT `id` FROM `fo_cat` WHERE `title` = '$nazv' LIMIT 1");
       if (empty($nazv)) {
          err('Не заполнено название раздела!');
       } elseif (mysql_num_rows($empty) != FALSE) {
          err('Раздел с таким названием уже создан!');
       } else {
          mysql_query("INSERT INTO `fo_cat` SET `title` = '$nazv'");
          header('Location: admin.php?do=fo_razdel');
       }
    }
    // удаление раздела
    if (isset($_GET['del']))
    {
       $del = my_int($_GET['del']);
       // проверка существовани раздела
       $empty = mysql_query("SELECT * FROM `fo_cat` WHERE `id` = '$del' LIMIT 1");
       if (mysql_num_rows($empty) != FALSE)
       {
          while($q = mysql_fetch_assoc($empty))
          {
              // выборка подразделов
              $pd = mysql_fetch_assoc(mysql_query("SELECT `id` FROM `fo_pod` WHERE `cid` = '$q[id]'"));
              // выборка файлов
              $files = mysql_fetch_assoc(mysql_query("SELECT `id`, `url` FROM `fo_files` WHERE `rid` = '$del'"));
              // удаление файлов с папки
              if (file_exists($files['url'])) unlink($files['url']);
              // удаление файлов с базы
              mysql_query("DELETE FROM `fo_files` WHERE `rid` = '$del'");
              // удаление рейтинга файла
              mysql_query("DELETE FROM `rating_files` WHERE `uid` = '$files[id]'");
              // удаление комментариев файла
                mysql_query("DELETE FROM `fo_komm` WHERE `uid` = '$files[id]'");
              // удаление подразделов
              mysql_query("DELETE FROM `fo_pod` WHERE `cid` = '$q[id]'");
          }
          // удаление раздела
          mysql_query("DELETE FROM `fo_cat` WHERE `id` = '$del' LIMIT 1");
          header('Location: admin.php?do=fo_razdel');
       } else {
         err('Раздела не существует!');
       }
    }
     // завершение редактирования
     if (isset($_POST['edit_ok'])) {
        $idr = my_int($_POST['idr']);
        $sql_1 = mysql_query("SELECT `id` FROM `fo_cat` WHERE `id` = '$idr' LIMIT 1");
        $nazv = trim(mysql_real_escape_string(check($_POST['nazv'])));
        $sql_2 = mysql_query("SELECT `id` FROM `fo_cat` WHERE `title` = '$nazv' AND `id` != '$idr' LIMIT 1");
       if (empty($nazv)) {
          err('Не заполнено название раздела!');
       } elseif (mysql_num_rows($sql_2) != FALSE) {
          err('Раздел с таким названием уже создан!');
       } elseif (mysql_num_rows($sql_1) == FALSE) {
          err('Раздела не существует!');
       } else {
            mysql_query("UPDATE `fo_cat` SET `title` = '$nazv' WHERE `id` = '$idr' LIMIT 1");
            header('Location: admin.php?do=fo_razdel');
        }
     }
     // редактирование раздела
     if (isset($_GET['ed'])) {
        $ed = my_int($_GET['ed']);
        $empty = mysql_query("SELECT * FROM `fo_cat` WHERE `id` = '$ed' LIMIT 1");
        if (mysql_num_rows($empty) != FALSE) {
         $i = mysql_fetch_assoc($empty);
           echo '<FORM method="POST" action="admin.php?do=fo_razdel">
                 <label>Изменить имя:</label><br/>
                 <input type="text" name="nazv" value="' . $i['title'] . '"/>
                 <br/>
                 <input type="hidden" name="idr" value="' . $ed . '"/>
                 <input type="submit" name="edit_ok" value="Изменить"/>
                 </FORM>';
        } else {
              err('Раздела не существует!');
       }
     } else {
    echo '<FORM method="POST" action="admin.php?do=fo_razdel">
          <label>Новый раздел:</label><br/>
          <input type="text" name="nazv"/>
          <br/>
          <input type="submit" name="add" value="Создать"/>
          </FORM>';
      }
    $look = mysql_result(mysql_query("SELECT COUNT(id) FROM `fo_cat`"), 0);
    $n = new navigator($look, 10, '?do=fo_razdel&');
    $view = mysql_query("SELECT `fo_cat`.*,(SELECT COUNT(id) FROM `fo_pod` WHERE `fo_pod`.`cid` = `fo_cat`.`id`) AS c FROM `fo_cat` ORDER BY `fo_cat`.`id` ASC {$n->limit}");
     if ($look != FALSE) {
       $i = 0;
       while($a = mysql_fetch_assoc($view)) {
        $del = ' <a href="admin.php?do=fo_razdel&del='.$a['id'].'"><img src="../ico/delete.gif" alt=""/></a> ';
        $ed = '<a href="admin.php?do=fo_razdel&ed='.$a['id'].'"><img src="../ico/edit.gif" alt=""/></a>';
            echo ($i ++ % 2) ? $div_tworazdel : $div_razdel;
            echo $ed . $del . $a['title'] . ' (' . $a['c'] . ')' . $div_end;
       }
        echo $n->navi();
     } else {
        echo 'Разделы не созданы!<br/>';
     }
break;
// подразделы
case fo_podrazdel:
echo $div_title . 'Подразделы' . $div_end;
    // создание подраздела
    if (isset($_POST['add'])) {
       $nazv = trim(mysql_real_escape_string(check($_POST['nazv'])));
       $r = my_int($_POST['r']);
       $empty = mysql_query("SELECT `id` FROM `fo_pod` WHERE `cid` = '$r' AND `title` = '$nazv' LIMIT 1");
        if (empty($nazv)) {
            err('Не заполнено название подраздела!');
        } elseif (mysql_num_rows($empty) != FALSE) {
            err('Подраздел с таким названием уже создан!');
        } elseif (empty($r)) {
            err('Не выбран раздел!');
        } else {
            $ins = "INSERT INTO `fo_pod` SET `cid` = '$r', `title` = '$nazv'";
            if (mysql_query($ins)) {
                  header('Location: admin.php?do=fo_podrazdel');
              } else {
                  echo mysql_error();
              }
           }
    }
    // удаление подраздела
    if (isset($_GET['del'])) {
       $del = my_int($_GET['del']);
       $empty = mysql_query("SELECT `id` FROM `fo_pod` WHERE `id` = '$del' LIMIT 1");
       if (mysql_num_rows($empty) != FALSE) {
          while($i = mysql_fetch_assoc($empty)) {
              $files = mysql_fetch_assoc(mysql_query("SELECT `id`, `url` FROM `fo_files` WHERE `rid` = '$i[id]'"));
              if (file_exists($files['url'])) unlink($files['url']);
              mysql_query("DELETE FROM `fo_files` WHERE `id` = '$files[id]' LIMIT 1");
              // удаление рейтинга файла
              mysql_query("DELETE FROM `rating_files` WHERE `uid` = '$files[id]'");
              // удаление комментариев файла
                mysql_query("DELETE FROM `fo_komm` WHERE `uid` = '$files[id]'");
          }
          // удаление подраздела
          mysql_query("DELETE FROM `fo_pod` WHERE `id` = '$del' LIMIT 1");
          header('Location: admin.php?do=fo_podrazdel');
       } else {
         err('Подраздела не существует!');
       }
    }
    echo '<FORM method="POST" action="admin.php?do=fo_podrazdel">
          <label>Новый подраздел:</label><br/>
          <input type="text" name="nazv"/>
          <br/>
          <label>В разделе:</label><br/>
          <select name="r">';
          $razdels = mysql_query("SELECT * FROM `fo_cat`");
          while($sel = mysql_fetch_assoc($razdels)) {
             echo '<option value="' . $sel['id'] . '">' . $sel['title'] . '</option>';
          }
    echo '</select>
          <br/>
          <input type="submit" name="add" value="Создать"/>
          </FORM>';
    $view = mysql_query("SELECT * FROM `fo_cat` ORDER BY `id` ASC");
       if (mysql_num_rows($view) != FALSE) {
         while($q = mysql_fetch_assoc($view)) {
           echo $div_menu . $q['title'] . $div_end;
            $in_view = mysql_query("SELECT `fo_pod`.*,(SELECT COUNT(id) FROM `fo_files` WHERE `fo_files`.`cat` = `fo_pod`.`id`) AS c FROM `fo_pod` WHERE `fo_pod`.`cid` = '$q[id]' ORDER BY `id` ASC");
            $i = 0;
        if (mysql_num_rows($in_view) != FALSE) {
       while($a = mysql_fetch_assoc($in_view)) {
        $del = ' <a href="admin.php?do=fo_podrazdel&del='.$a['id'].'"><img src="../ico/delete.gif" alt=""/></a> ';
        $ed = '<a href="admin.php?do=edit&e='.$a['id'].'"><img src="../ico/edit.gif" alt=""/></a>';
            echo ($i ++ % 2) ? $div_tworazdel : $div_razdel;
            echo $ed . $del . $a['title'] . ' (' . $a['c'] . ')' . $div_end;
       }
     } else {
       echo '(Пусто)<br/>';
           }
       }
     } else {
       echo 'Подразделы не созданы!<br/>';
    }
break;
// редактирования подраздела
case edit:
echo $div_title . 'Изменить' . $div_end;
    $e = my_int($_GET['e']);
     // завершение редактирования
     if (isset($_POST['ok'])) {
        $nazv = trim(mysql_real_escape_string(check($_POST['nazv'])));
        $forms = trim(mysql_real_escape_string(check($_POST['forms'])));
        $sql_1 = mysql_query("SELECT * FROM `fo_pod` WHERE `id` = '$e' LIMIT 1");
        $insql = mysql_fetch_array($sql_1);
        $sql_2 = mysql_query("SELECT `id` FROM `fo_pod` WHERE `cid` = '$insql[cid]' AND `id` != '$e' AND `title` = '$nazv' LIMIT 1");
       if (mysql_num_rows($sql_2) != FALSE) {
              err('Подраздел с таким названием уже создан!');
           } elseif (empty($nazv)) {
              err('Не заполнено название подраздела!');
           } elseif (mysql_num_rows($sql_1) == FALSE) {
              err('Подраздела не существует!');
           } else {
            mysql_query("UPDATE `fo_pod` SET `title` = '$nazv' WHERE `id` = '$e' LIMIT 1");
            header('Location: admin.php?do=fo_podrazdel');
        }
     }
        $empty = mysql_query("SELECT `title` FROM `fo_pod` WHERE `id` = '$e' LIMIT 1");
        if (mysql_num_rows($empty) != FALSE) {
         $i = mysql_fetch_assoc($empty);
           echo '<FORM method="POST" action="admin.php?do=edit&e='.$e.'">
                 <label>Изменить имя:</label><br/>
                 <input type="text" name="nazv" value="' . $i['title'] . '"/>
                 <br/>
                 <input type="submit" name="ok" value="Изменить"/>
                 </FORM>';
        } else {
              err('Подраздела не существует.');
       }
break;
// настройка З.О.
case fo_sys:
echo $div_title . 'Подразделы' . $div_end;
  $set = mysql_fetch_array(mysql_query("SELECT `fo_moder`, `fo_limit` FROM `setting` WHERE `ids` = '1'"));
  if ($set[0] == 0) $_mod_1 = 'checked="checked"';
  elseif ($set[0] == 1) $_mod_2 = 'checked="checked"';
   if (isset($_GET['ok'])) msg('Настройки успешно сохранены!');
   if (isset($_POST['save'])) {
      $mod = my_int($_POST['mod']);
      $limit = my_int($_POST['limit']);
      mysql_query("UPDATE `setting` SET `fo_moder` = '$mod', `fo_limit` = '$limit' WHERE `ids` = '1'");
      header('Location: admin.php?do=fo_sys&ok');
   }
   $mod_files = mysql_result(mysql_query("SELECT COUNT(*) FROM `fo_files` WHERE `moder` = '1'"), 0);
   echo '<FORM method="POST" action="admin.php?do=fo_sys">
         ' . $div_razdel . '
         <label>Модерация файлов:</label>
         ' . $div_end . $div_tworazdel . '
         <input type="radio" name="mod" ' . $_mod_2 . ' value="1"/> Включить
         <br/>
         <input type="radio" name="mod" ' . $_mod_1 . ' value="0"/> Выключить
         ' . $div_end  . $div_razdel . '
         <label>Лимит загрузки:</label>
         ' . $div_end . $div_tworazdel . '
         <input type="text" name="limit" size="2" maxlength="2" value="' . $set[1] . '"/> Mb.
         ' . $div_end . '
         <input type="submit" name="save" value="Сохранить"/>
         </FORM>
         » <a href="admin.php?do=fo_moder">Файлы на модерации</a> (' . $mod_files . ')';
break;
case fo_moder:
echo $div_title . 'Файлы на модерации' . $div_end;
   if (isset($_GET['yes'])) {
      $yes = my_int($_GET['yes']);
      $sql = mysql_query("SELECT `id` FROM `fo_files` WHERE `id` = '$yes' AND `moder` = '1' LIMIT 1");
        if (mysql_num_rows($sql) != FALSE) {
           mysql_query("UPDATE `fo_files` SET `moder` = '0' WHERE `id` = '$yes' LIMIT 1");
           header('Location: admin.php?do=fo_moder');
        } else {
           err('Такого файла нет на модерации!');
        }
   }
   if (isset($_GET['no'])) {
      $no = my_int($_GET['no']);
      $sql = mysql_query("SELECT * FROM `fo_files` WHERE `id` = '$no' AND `moder` = '1' LIMIT 1");
        if (mysql_num_rows($sql) != FALSE) {
           $inf = mysql_fetch_assoc($sql);
           if (file_exists($inf['url'])) unlink($inf['url']);
           mysql_query("DELETE FROM `fo_files` WHERE `id` = '$no' AND `moder` = '1' LIMIT 1");
           header('Location: admin.php?do=fo_moder');
        } else {
           err('Такого файла нет на модерации!');
        }
   }
$look = mysql_result(mysql_query("SELECT COUNT(id) FROM `fo_files` WHERE `moder` = '1'"), 0);
    $n = new navigator($look, 10, '?do=fo_moder&');
    $view = mysql_query("SELECT * FROM `fo_files` WHERE `moder` = '1' ORDER BY `id` DESC {$n->limit}");
     if ($look != FALSE) {
       $i = 0;
       while($a = mysql_fetch_assoc($view)) {
               $ext = strtolower(end(explode('.', $info['url'])));
            if ($ext == 'zip') $format = '<img src="img/zip.gif" alt="*"/> ';
            elseif ($ext == 'rar') $format = '<img src="img/rar.gif" alt="*"/> ';
            elseif ($ext == 'gz') $format = '<img src="img/gz.gif" alt="*"/> ';
            elseif ($ext == 'tar') $format = '<img src="img/tar.gif" alt="*"/> ';
            else $format = '<img src="img/unknown.gif" alt="*"/> ';
            #######################
        $yes = ' <a href="admin.php?do=fo_moder&yes='.$a['id'].'"><span class="next"><img src="../ico/ok.gif" alt=""/>доб</a></span>';
        $no = ' <a href="admin.php?do=fo_moder&no='.$a['id'].'"><span class="next"><img src="../ico/delete.gif" alt=""/>уд</a></span>';
          echo ($i ++ % 2) ? $div_tworazdel : $div_razdel;
          echo $format . '<a href="'.$a['url'].'">' . $a['title'] . '</a>' . $yes . $no . $div_end;
       }
        echo $n->navi();
     } else {
       echo 'Файлов на модерации нет!<br/>';
     }
break;
}
echo $block . '« <a href="../admin.php?">Админ-панель</a>';
include '../system/foot.php';
?>