<?php
define('_IN_JOHNCMS', 1);
$headmod = 'lib';
$textl = 'Библиотека';
require_once ("../incfiles/core.php");
require_once ("./inc/conf.php");
require_once ("../incfiles/head.php");
if($rights == 5 || $rights >= 6)
{
echo '<a href="admin.php?">В админку</a><br/>';
if(empty($id))
{
echo '<div class="phdr">Файл менеджер</div>';
}else{
////////////////////////////////////////////////////////////
// Получаем структуру каталогов //
////////////////////////////////////////////////////////////
$tree = array();
$dirid = $id;
while ($dirid != '0' && $dirid != "") {
$req = mysql_query("SELECT `name`,`fid` FROM `library` WHERE `type` = 'dir' and `id` = '" . $dirid . "' LIMIT 1");
$res = mysql_fetch_array($req);
$tree[] = '<a href="fileman.php?id=' . $dirid . '">' . $res['name'] . '</a>';
$dirid = $res['fid'];
}
krsort($tree);
$cdir = array_pop($tree);
echo '<div class="phdr"><a href="index.php">В библиотеку</a> | <a href="fileman.php">Файл менеджер</a> | ';
foreach ($tree as $value) {
echo $value . ' | ';
}
echo '<b>' . strip_tags($cdir) . '</b></div>';
}
$totaldir = mysql_result(mysql_query("select COUNT(*) from `library` where `type` = 'dir' and `fid` = '".$id."'"),0);
$totalfile = mysql_result(mysql_query("select COUNT(*) from `library` where `type` = 'file' and `fid` = '".$id."'"),0);
$total = $totaldir + $totalfile;
if($total > 0)
{
$sql = mysql_query("select * from `library` where `fid` = '".$id."' order by `type` ASC , `name` ASC , `file` ASC LIMIT ".$start.",".$kol_file."");
while($mas = mysql_fetch_array($sql))
{
if($totaldir > 0 && $mas['type'] == 'dir')
{
echo '<div class="list1">';
echo '»<img src="./img/'.($mas['type2'] == "YES" ? 'folder_user' : 'folder').'.png" alt="" /><a href="fileman.php?id='.$mas['id'].'">'.htmlentities($mas['name'],ENT_QUOTES,'utf-8').'</a>';
$count = 0;
$countnew = 0;
$count = mysql_result(mysql_query("select COUNT(*) from `library` where `type` = 'file' and `path` LIKE '".$mas['path']."%'"),0);
$countnew = mysql_result(mysql_query("select COUNT(*) from `library` where `type` = 'file' and `path` LIKE '".$mas['path']."%' and `time` > '".($realtime -($new_fil * 24 * 3600) )."'"),0);
echo '('.intval($count);
if($countnew !== "0"){ echo '/<span class="red">+'.intval($countnew).'</span>)';}else{echo ')';}
if(!empty($mas['opis']))
{
echo '<div class="sub">'.htmlentities($mas['opis'],ENT_QUOTES,'utf-8').'</div>';
}
echo '</div>';
}
if($totalfile > 0 && $mas['type'] == 'file')
{
echo '<div class="list2">';
echo '°<img src="./img/page_white_text.png" alt="" />'.htmlentities($mas['name'],ENT_QUOTES,'utf-8');
$c = mysql_result(mysql_query("select COUNT(*) from `lib_file` where `fid` = '".$mas['id']."'"),0);
if($c > 0)
{
$sql1 = mysql_query("select * from `lib_file` where `fid` = '".$mas['id']."'");
echo '<br/>';
echo '<div class="quote">Прикрепленные файлы:<br/>';
while($res = mysql_fetch_array($sql1))
{
echo '<a href="file.php?act=look&id='.$res['id'].'">'.htmlentities($res['name'],ENT_QUOTES,'utf-8').'</a>, ';
}
echo '</div>';
}
if(!empty($mas['opis']))
{
echo '<div class="sub">'.htmlentities($mas['opis'],ENT_QUOTES,'utf-8').'</div>';
}else{echo '<br/>';}
echo '<ul><small>';
echo '<li><a href="file.php?act=editfile&id='.$mas['id'].'">Редактировать</a></li>';
echo '<li><a href="file.php?act=delfile&id='.$mas['id'].'">Удалить</a></li>';
echo '<li><a href="file.php?act=perfile&id='.$mas['id'].'">Переместить</a></li>';
echo '<li><a href="file.php?act=precfile&id='.$mas['id'].'">Прекрипить сюда файл</a></li>';
if($c > 0){
echo '<li><a href="file.php?act=editprec&id='.$mas['id'].'">Управление Прек. файлами</a></li>';}
echo '</small></ul>';
echo '</div>';
}
}
}else{
echo '<strong>В даной категории статей нету!!!</strong><br/>';
}
if ($total > $kmess) {
echo '<p>' . pagenav('fileman.php?id=' . $id . '&', $start, $total, $kol_file) . '</p>';
}
echo '<hr/><div class="func">';
echo '<ul>';
echo '<li><a href="fileman.php?act=newdir&id='.$id.'">Создать каталог</a></li>';
if($act == 'newdir')
{
if(empty($_POST['submit']))
{
echo '<form method="post" action="fileman.php?act=newdir&id='.$id.'">';
echo '<div class="menu">';
echo 'Имя каталога:<br/><input name="dirname"/><br/>';
echo 'Описание каталога:<br/><textarea name="diropis"></textarea><br/>';
echo 'Разрешить добовлять статьи:<br/><select name="type">';
echo '<option value="YES">Да</option><option value="NO">Нет</option>';
echo '</select>';
echo '</div>';
echo '<input value="Создать" type="submit" name="submit"/></form>';
}else{
$dirname = trim($_POST['dirname']);
$diropis = trim($_POST['diropis']);
$type2 = trim($_POST['type']);
$co = mysql_result(mysql_query("select COUNT(*) from `library` where `name` = '".$dirname."' and `type` = 'dir'"),0);
$arr = mysql_query("select `path` from `library` where `id` = '".$id."' and `type` = 'dir'");
$sql = mysql_fetch_array($arr);
$path = $sql['path'].'/'.trans2($dirname);
if($co == "0" && !empty($dirname))
{
if(mysql_query("insert into `library` set
`fid` = '".$id."',
`path` = '".$path."',
`type` = 'dir',
`type2` = '".$type2."',
`name` = '".$dirname."',
`opis` = '".$diropis."',
`ip` = '".$ipp."',
`soft` = '".$agn."',
`time` = '".$realtime."';"))
{
echo 'Каталог успешно создан<br/> В каталог :<a href="fileman.php?id='.mysql_insert_id().'">'.$dirname.'</a><br/>';
}else{
echo 'ОШИБКА!!!<br/><a href="fileman.php?id='.$id.'">Назад</a><br/>';
}
}else{
echo 'ОШИБКА!!! Такой каталог уже существует<br/><a href="'.check($_SERVER['HTTP_REFERER']).'">Назад</a><br/>';
}
}
}
if(!empty($_GET['id']))
{
echo '<li><a href="fileman.php?act=deldir&id='.$id.'">Удалить каталог</a></li>';
if($act == 'deldir')
{
$aa = mysql_fetch_array(mysql_query("select `path` from `library` where `id` = '".$id."'"));
$sql = mysql_query("select * from `library` where `path` LIKE '".$aa['path']."%'");
$res_id = array();
$count_dir = 0;
$count_file = 0;
while($re = mysql_fetch_array($sql))
{
$res_id[]=$re['id'];
if($re['type'] == 'dir')
{
++$count_dir;
}
if($re['type'] == 'file')
{
++$count_file;
}
}
echo 'Вы собираетесь удалить <strong>'.$count_dir.'</strong> Каталогов и <strong>'.$count_file.'</strong> Статей<hr/>';
echo 'Если вы хотите удалить их нажмите <a href="fileman.php?act=deldir&id='.$id.'&yes"><strong>ДА</strong></a> или отмените <a href="fileman.php?id='.$id.'"><strong>НЕТ</strong></a>';
if(isset($_GET['yes']))
{
foreach($res_id as $v)
{
mysql_query("DELETE FROM `library` WHERE `id` = '".$v."'");
}
header("Location: fileman.php?");
}
}
echo '<li><a href="fileman.php?act=ren&id='.$id.'">Редактировать каталог</a></li>';
if($act == 'ren')
{
if(empty($_POST['submit']))
{
$sql = mysql_fetch_array(mysql_query("select `name`,`opis` from `library` where `id` = '".$id."' LIMIT 1"));
echo '<form method="post" action="fileman.php?act=ren&id='.$id.'">';
echo 'Новое имя каталога:<br/><input name="newname" value="'.$sql['name'].'"/><br/>';
echo 'Новое описание каталога:<br/><textarea name="newopis">'.$sql['opis'].'</textarea><br/>';
echo 'Разрешить добовлять статьи:<br/><select name="type">';
echo '<option value="YES">Да</option><option value="NO">Нет</option>';
echo '</select><br/>';
echo '<input value="Изменить" type="submit" name="submit"/></form>';
}else{
if(!empty($_POST['newname']))
{
$newname = trim($_POST['newname']);
$newopis = trim($_POST['newopis']);
$type2 = trim($_POST['type']);
$sql = mysql_fetch_array(mysql_query("select `path` from `library` where `id` = '".$id."'"));
$path = $sql['path'];
$exp = explode("/",$path);
unset($exp[count($exp)-1]);
$path = join("/",$exp);
if(mysql_query("update `library` set `name` = '".$newname."', `path` = '".$path.'/'.trans2($newname)."', `opis` = '".$newopis."', `type2` = '".$type2."' where `id` = '".$id."'"))
{
echo 'Каталог успешно переименован<br/>В каталог:<a href="fileman.php?id='.$id.'">'.$newname.'</a><br/>';
}else{
echo 'ОШИБКА !!!<br/><a href="fileman.php?id='.$id.'">Назад</a>';
}
}else{
echo 'ОШИБКА !!! Забыли ввести имя каталога<br/><a href="fileman.php?id='.$id.'">Назад</a>';
}
}
}
$sq = mysql_fetch_array(mysql_query("select `type2` from `library` where `id` = '".$id."' LIMIT 1"));
echo '<li><a href="file.php?act=upload&id='.$id.'">Выгрузить статью</a></li>';
echo '<li><a href="file.php?act=newstat&id='.$id.'">Написать статью</a></li>';
echo '<li><a href="fileman.php?act=mas&id='.$id.'">Массово выгрузить стаьи</a></li>';
if($act == 'mas')
{
if(empty($_POST['submit']))
{
echo '<form method="POST" action="fileman.php?act=mas&id='.$id.'"><p>';
$glob_do = glob('file/mas/*',GLOB_ONLYDIR);
if(count($glob_do) > 0)
{
echo '<div class="menu">Выберете каталог из которого<br/> будем импортировать статьи<br/><span class="red">Имя каталога должно быть обязательно написано латинскими буквами</span>:<br/><select name="dirdo">';
foreach($glob_do as $v)
{
$v = str_replace('file/mas/','',$v);
echo '<option value="'.$v.'">'.$v.'</option>';
}
echo '</select></div>';
}else{
echo '<div class="rmenu">Нечего добовлять</div>';
}
echo '<input value="Добавить" name="submit" type="submit"/></p></form>';
}else{
if(!empty($_POST['dirdo']))
{
$put = 'file/mas/'.trim($_POST['dirdo']).'/*.{txt,dat}';
$glob = glob($put,GLOB_BRACE);
if(count($glob) > 0)
{
foreach($glob as $v)
{
$d = str_replace('file/mas/'.trim($_POST['dirdo']).'/','',$v);
$name = iconv('windows-1251','UTF-8',$d);
$name1 = str_replace('.txt','',$name);
$txt = file_get_contents($v);
if (mb_check_encoding($txt, 'UTF-8')) {
}
elseif (mb_check_encoding($txt, 'windows-1251')) {
$txt = iconv("windows-1251", "UTF-8", $txt);
}
elseif (mb_check_encoding($txt, 'KOI8-R')) {
$txt = iconv("KOI8-R", "UTF-8", $txt);
}
$sql = mysql_fetch_array(mysql_query("select `path` from `library` where `id` = '".$id."' and `type` = 'dir' LIMIT 1"));
$path = $sql['path'];
$file = $name;
$moder = ($rights == 5 || $rights >= 6 ? '1' : "0");
mysql_query("insert into `library` set
`id` = '',
`fid` = '".$id."',
`path` = '".$path."',
`file` = '".$file."',
`type` = 'file',
`name` = '".$name1."',
`opis` = '',
`text` = '".mysql_real_escape_string($txt)."',
`ip` = '".$ipp."',
`soft` = '".$agn."',
`time` = '".$realtime."',
`count` = '0',
`id_avtor` = '".$user_id."',
`rating` = '0',
`moder` = '".$moder."';");
#@unlink($v);
}
echo 'Статьи успешно добавленны<br/><a href="fileman.php?id='.$id.'">Назад</a><br/>';
}else{
echo 'Нет статей для добовления<br/>';
}
}else{
echo 'Не выбрана категория для импорта<br/>';
}
}
}
}
echo '</ul>';
echo '</div>';
}
require_once ("../incfiles/end.php");
?>