<?php
include 'config.php';
include '../system/start.php';
$title.='ЗЦ-Админка';
//админ
if($user[level]!='5'){
myheader('/');
}
$d=fint($_GET[d]);
$f=fint($_GET[f]);
switch($_GET[mode]){
//добавление папки
case 'dnew':
if(isset($_POST[name]))$_POST[name]=mysql_real_escape_string($_POST[name]);
if(isset($_GET[d]))$indata=mysql_result(mysql_query("SELECT `url` FROM `dc_dir` WHERE `id`='$d';"),0).'/';
else $indata=$dc[config][basedir];
if(isset($_POST[name])){
if(@mysql_num_rows(mysql_query("SELECT * FROM `dc_dir` WHERE `in`='$_GET[d]' AND `name`='$_POST[name]'"))!='0') $err='Ошибка! Раздел с таким именем уже существует';
$url=$indata.$_POST[url];
if(!@mkdir($url)) $err='Ошибка! Не удается создать папку '.$url;
if(!isset($err)){
mysql_query("INSERT INTO `dc_dir` SET `name`='$_POST[name]', `in`='$d', `url`='$url';");
$did=@mysql_result(mysql_query("SELECT `id` FROM `dc_dir` WHERE `name`='$_POST[name]' AND `in`='$d';"),0);
myheader('/dc/?d='.$did);
}
}
//панель навигации
$page.='<div class="linker"><a href="/">главная</a>| <a href="/dc/">загрузки</a>';
$ddata=mysql_fetch_array(mysql_query("SELECT * FROM `dc_dir` WHERE `id`='$d';"));
$i=0;
//навигация
for(;;){
if($ddata[in]==0) break;
$nav=mysql_fetch_array(mysql_query("SELECT * FROM `dc_dir` WHERE `id`='$ddata[in]';"));
$links[$i]='| <a href="?d='.$nav[id].'">'.$nav[name].'</a>';
$titles[$i]='|'.$nav[name];
$ddata[in]=$nav[in];
$i++;
}
for($j=(count($links)-1);$j>=0;$j--){
$page.=$links[$j];
$title.=$titles[$j];
}
$page.='| '.$ddata[name];
$title.='|'.$ddata[name];
$page.='| добавление раздела</div>
<div><form action="" method="post">
'.$err.'
<div>Наименование раздела:</div>
<div><input type="text" name="name" size="50"/></div>
<div>URL:</div>
<div><input type="text" name="url" size="50"/></div>
<div><input type="submit" value="Продолжить" /></divn>
</form>
</div>';
break;
case 'fedit':
if(isset($_POST[go])){
$_POST[name]=mysql_real_escape_string($_POST[name]);
mysql_query("UPDATE `dc_files` SET `name`='$_POST[name]', `about`='$_POST[about]' WHERE `id`='$f';");
myheader("/dc/$d/$f/");
}
$fdata=@mysql_fetch_array(mysql_query("SELECT `name`,`about` FROM `dc_files` WHERE `id`='$f';"));
$page.='<div class="border">'.$fdata[name].'</div>
<div>
<form action="" method="post">
<div>Название</div>
<div><input type="text" name="name" size="70" value="'.$fdata[name].'"/></div>
<div>Описание</div>
<div><textarea name="about" cols="60" rows="25">'.$fdata[about].'</textarea></div>
<div><input type="submit" name="go" value="Сохранить" /></div>
</form>
</div>';
break;
//добавление нового файла
case 'fnew':
if(isset($_POST[go])){
$_POST[name]=mysql_real_escape_string($_POST[name]);
if(@mysql_num_rows(mysql_query("SELECT * FROM `dc_files` WHERE `name`='$_POST[name]' AND `d`='$d';"))!=0) $err='Название дублируется';
//обработка скриншота
if(!empty($_FILES[userfile][type])){
switch($_FILES[userfile][type]){
case 'image/jpeg':
$im=imagecreatefromjpeg($_FILES[userfile][tmp_name]);
break;
case 'image/pjpeg':
$im=imagecreatefromjpeg($_FILES[userfile][tmp_name]);
break;
case 'image/gif':
$im=imagecreatefromgif($_FILES[userfile][tmp_name]);
break;
case 'image/png':
$im=imagecreatefrompng($_FILES[userfile][tmp_name]);
break;
}
$x=@imagesx($im);
$y=@imagesy($im);
//файл не явлется поддерживаемой картинкой
if(empty($x)){
$err='Неверный тип файла';
}
}
//создаем папку
if(!isset($err)){
if(isset($d))$indata=mysql_result(mysql_query("SELECT `url` FROM `dc_dir` WHERE `id`='$d';"),0).'/';
else $indata=$dc[config][basedir];
$url=$indata.$_POST[url];
if(!@mkdir($url)) $err='Ошибка! Не удается создать папку '.$url;
if(!isset($err)){
mysql_query("INSERT INTO `dc_files` SET `name`='$_POST[name]', `url`='$_POST[url]', `about`='".mysql_real_escape_string($_POST[about])."', `d`='$d';");
$data=@mysql_fetch_array(mysql_query("SELECT * FROM `dc_files` WHERE `name`='$_POST[name]' AND `d`='$d';"));
//сохраняем описание
$ft=fopen("$url/about.txt",'a+');
fwrite($ft,$_POST[about]);
fclose($ft);
//не анимация
if($_POST[stype]!='1'){
if($x>128){
$px=128;
$py=round($y/round($x/$px,1));
$img=imagecreatetruecolor($px,$py);
imagecopyresampled($img,$im,0,0,0,0,$px,$py,$x,$y);
$im=$img;
}
@imagejpeg($im,"$url/screen.jpg",100);
@imagedestroy($im);
}
else{
$ft=fopen("$url/screen.gif",'a+');
fwrite($ft,file_get_contents($_FILES[userfile][tmp_name]));
fclose($ft);
}
//добавляем в счетчики $d-папка в которой находится файл
$dt=$d;
for(;;){
$in=mysql_result(mysql_query("SELECT `in` FROM `dc_dir` WHERE `id`='$dt';"),0);
mysql_query("UPDATE `dc_dir` SET `sum`=`sum`+1 WHERE `id`='$dt'");
if($in==0){
@mysql_query("UPDATE `counter` SET `value`=`value`+1 WHERE `name`='dc';");
break;
}
$dt=$in;
}
//переходим в раздел файла
myheader(" /dc/?d=$d&f=$data[id]");
}
}
}
//панель навигации
$page.='<div class="linker"><a href="/">главная</a>| <a href="/dc/">загрузки</a>';
$ddata=mysql_fetch_array(mysql_query("SELECT * FROM `dc_dir` WHERE `id`='$d';"));
$i=0;
//навигация
for(;;){
if($ddata[in]==0) break;
$nav=mysql_fetch_array(mysql_query("SELECT * FROM `dc_dir` WHERE `id`='$ddata[in]';"));
$links[$i]='| <a href="?d='.$nav[id].'">'.$nav[name].'</a>';
$titles[$i]='|'.$nav[name];
$ddata[in]=$nav[in];
$i++;
}
for($j=(count($links)-1);$j>=0;$j--){
$page.=$links[$j];
$title.=$titles[$j];
}
$page.='| <a href="/dc/?d='.$ddata[id].'">'.$ddata[name].'</a>';
$title.='|'.$ddata[name];
$page.='| добавление файла</div>
<div>
<div>Скриншот</div>
<form enctype="multipart/form-data" action="" method="post">
<div><input name="userfile" type="file" accept="image/*,image/gif,image/png,image/jpeg" /></div>
<div><input type="checkbox" name="stype" value="1"/> Анимация</div>
<div>Название</div>
<div><input type="text" name="name" size="50"></div>
<div>Название папки</div>
<div><input type="text" name="url" size="50"></div>
<div style="#CC0000;">'.$err.'</div>
<div>Описание</div>
<div><textarea name="about" cols="60" rows="25"></textarea></div>
<div><input type="submit" name="go" value="Добавить" /></div>
</form>
</div>';
break;
//удаление ссылки
case 'ldel':
$u=fint($_GET[id]);
$udata=@mysql_fetch_array(mysql_query("SELECT `f`,`url`,`name` FROM `dc_urls` WHERE `id`='$u' LIMIT 1;"));
$fdata=@mysql_fetch_array(mysql_query("SELECT `d`,`url` FROM `dc_files` WHERE `id`='$udata[f]' LIMIT 1;"));
$ddata=@mysql_fetch_array(mysql_query("SELECT `url` FROM `dc_dir` WHERE `id`='$fdata[d]' LIMIT 1;"));
$lurl=$ddata[url].'/'.$fdata[url].'/'.$udata[url];
if(isset($_POST[go])){
if(@unlink($lurl)){
mysql_query("DELETE FROM `dc_urls` WHERE `id`='$u';");
myheader("/dc/$d/$f/");
}
else $err='<div class="error">Не удается удалить файл '.$lurl.'</div>';
}
$page.='<div class="border">Удаление файла</div>
<div>
<form action="" method="post">
<div>Будет удален файл '.$udata[name].'</div>
<div>URL:'.$udata[url].'</div>
'.$err.'
<div><input type="submit" name="go" value="Подтверждаю" /></div>
</form>
</div>';
break;
//редактирование ссылки
case 'ledit':
if(isset($_POST[go])){
mysql_query("UPDATE `dc_urls` SET `name`='$_POST[name]' WHERE `id`='$_GET[id]';");
myheader("/dc/$d/$f/");
}
$ldata=@mysql_fetch_array(mysql_query("SELECT `name`,`url` FROM `dc_urls` WHERE `id`='$_GET[id]';"));
$page.='<div class="border">'.$ldata[url].'</div>
<div>
<form action="" method="post">
<div>Название</div>
<div><input type="text" name="name" size="70" value="'.$ldata[name].'"/></div>
<div><input type="submit" name="go" value="Сохранить" /></div>
</form>
</div>';
break;
//добавление ссылки
case 'lnew':
if(isset($_POST[go])){
if(mysql_num_rows(mysql_query("SELECT * FROM `dc_urls` WHERE `url`='".$_FILES[userfile][name]."' AND `f`='$f';"))!='0') $err.='Дублирование имени файла';
//сохранение файла
if(!isset($err)){
$_POST[name]=$_POST[name1].' '.$_POST[name2];
if(!empty($_POST[name3]))$_POST[name]=$_POST[name].', '.$_POST[name3];
if(!empty($_POST[name4]))$_POST[name]=$_POST[name].', '.$_POST[name4];
if(!empty($_POST[model])) $_POST[name]=$_POST[name].' ('.$_POST[model].')';
if(empty($_POST[name])) $_POST[name]='Скачать';
mysql_query("INSERT INTO `dc_urls` SET `f`='$f', `name`='$_POST[name]', `url`='".$_FILES[userfile][name]."', `size`='".$_FILES[userfile][size]."', `time`='".time()."';");
mysql_query("UPDATE `dc_files` SET `time`='".time()."' WHERE `id`='$f';");
$data=mysql_fetch_array(mysql_query("SELECT * FROM `dc_urls` WHERE `name`='$_POST[name]' AND `f`='$f';"));
$fdata=mysql_result(mysql_query("SELECT `url` FROM `dc_files` WHERE `id`='$f';"),0);
$gdata=mysql_result(mysql_query("SELECT `url` FROM `dc_dir` WHERE `id`='$d';"),0);
$url=$gdata.'/'.$fdata.'/'.$data[url];
//записываем файл на диск
$ft=fopen($url,'a+');
fwrite($ft,file_get_contents($_FILES[userfile][tmp_name]));
fclose($ft);
//генерируем jad-файл
$pathinfo=pathinfo($url);
$type=$pathinfo[extension];
if($type=='jar'){
include $_SERVER[DOCUMENT_ROOT].'/system/lib/pclzip.lib.php';
$open = 'META-INF/MANIFEST.MF';
$zip = new PclZip($url);
$content = $zip->extract(PCLZIP_OPT_BY_NAME,$open,PCLZIP_OPT_EXTRACT_AS_STRING);
$jad=$content[0]['content']."
MIDlet-Jar-Size: ".$_FILES[userfile][size]."
MIDlet-Jar-URL: /dc/$url
MIDlet-Delete-Confirm: ".$dc[config][MIDletDeleteConfirm]."
MIDlet-Description: ".$dc[config][MIDletDescription];
//записываем файл на диск
$ft=fopen(preg_replace('~[.]jar$~iu','.jad',$url),'a+');
fwrite($ft,$jad);
fclose($ft);
}
myheader("/dc/?d=$d&f=$f");
}
}
$fldata=@mysql_result(mysql_query("SELECT `name` FROM `dc_files` WHERE `id`='$_GET[f]';"),0);
$page.='<div class="border">'.$fldata.'</div>
<div>
<form enctype="multipart/form-data" action="" method="post">
<div>Выберите файл</div>
<div><input name="userfile" type="file" size="140"/></div>
<div>Название</div>
<div>';
include 'namer.php';
$page.='Модель телефона
<input type="text" name="model" size="30"/></div>
<div style="color:#CC0000;">'.$err.'</div>
<div><input type="hidden" name="new" /></div>
<div><input type="submit" name="go" value="Добавить" /></div>
</form>
</div>';
break;
}
include '../system/pagegen.php';
?>