View file panel/files.php

File size: 19.32Kb
<?php
// mod by Golem http://veplog.ru

require_once"../template/start.php";
require_once"../template/regglobals.php";
require_once"../template/config.php";
require_once"../template/functions.php";
require_once"../template/antidos.php";
require_once"../template/cookies.php";
require_once"../template/gzip.php";
require_once"../template/header.php";
require_once"../template/referer.php";
include_once"../themes/$config_themes/index.php";
include_once"../template/isset.php";

$file = check($file);

if ($provlog==$_SESSION['log'] && $provpar==md5($_SESSION['par']) && $_SESSION['log']!="" && md5($_SESSION['par'])!="") {
if ($dostup==101 && $log==$config_nikname){


echo'<div class="tp">Редактирование страниц</div>';

if(!isset($action)){

echo '<div class=tpanel>Список файлов</div><div class=forum>';

$dir = opendir ("../local/datamain");
while ($file = readdir ($dir)) {
if (!eregi("[^a-z0-9_.-]",$file) && ereg("\.dat$", $file)) {$a[]=$file;}}
closedir ($dir);
sort($a);

$total = count($a);

$start = (int)$_GET['start'];
if($start < 0 || $start > $total){$start = 0;}
if ($total < $start + $config_editfiles){ $end = $total; }
else {$end = $start + $config_editfiles; }
for ($i = $start; $i < $end; $i++){

$filename = str_replace(".dat","",$a[$i]);
$siz= filesize("../local/datamain/$a[$i]");
$strok= count(file("../local/datamain/$a[$i]"));
$siz= round($siz/1024,2);

if($a[$i]=="index.dat"){

echo '<div class=r0><img src="../images/img/edit.gif" alt=""> <b><a href="../pages/index.php?action='.$filename.'&amp;'.SID.'"><font color="#FF0000">'.$a[$i].'</font></a></b> ('.$siz.' kb) (Строк: '.$strok.')<br>';
echo 'Изменен: '.date_fixed(filemtime("../local/datamain/$a[$i]")).'<br>';
echo '<a href="files.php?action=edit&amp;file='.$a[$i].'&amp;'.SID.'">[Ред]</a>';
echo '<a href="files.php?action=obzor&amp;file='.$a[$i].'&amp;'.SID.'">[Код]</a></div>';
}else{
echo '<div class=r0><img src="../images/img/edit.gif" alt=""> <b><a href="../pages/index.php?action='.$filename.'&amp;'.SID.'">'.$a[$i].'</a></b> ('.$siz.' kb) (Строк: '.$strok.')<br>';
echo 'Изменен: '.date_fixed(filemtime("../local/datamain/$a[$i]")).'<br>';
echo '<a href="files.php?action=edit&amp;file='.$a[$i].'&amp;'.SID.'">[Ред]</a> ';
echo '<a href="files.php?action=obzor&amp;file='.$a[$i].'&amp;'.SID.'">[Код]</a> ';
echo '<a href="files.php?action=poddel&amp;file='.$a[$i].'&amp;'.SID.'"><font color="#FF0000">[Уд]</font></a></div>';

}
}

if ($start != 0) {echo '</div><div class=body><a href="files.php?start='.($start - $config_editfiles).'&amp;'.SID.'">&lt;пред. </a>';}else{echo'&lt;пред.';}
echo' | ';
if ($total > $start + $config_editfiles) {echo ' <a href="files.php?start='.($start + $config_editfiles).'&amp;'.SID.'">след.&gt;</a>';}else{echo'след.&gt;';}


if($total>0){

$ba=ceil($total/$config_editfiles);
$ba2=$ba*$config_editfiles-$config_editfiles;

echo '<br>Стр.:';
$asd=$start-($config_editfiles*3);
$asd2=$start+($config_editfiles*4);

if($asd<$total && $asd>0){echo ' <a href="files.php?start=0&amp;'.SID.'">1</a> ... ';}

for($i=$asd; $i<$asd2;)
{
if($i<$total && $i>=0){
$ii=floor(1+$i/$config_editfiles);

if ($start==$i) {
echo ' <b>('.$ii.')</b>';
} else {
echo ' <a href="files.php?start='.$i.'&amp;'.SID.'">'.$ii.'</a>';
}}


$i=$i+$config_editfiles;}
if($asd2<$total){echo ' ... <a href="files.php?start='.$ba2.'&amp;'.SID.'">'.$ba.'</a>';}
}

echo '<div class=panel>Всего файлов: <b>'.(int)$total.'</b></div>';



echo'<div class=btm><img src="../images/img/plus.gif" alt=""> <a href="files.php?action=new&amp;'.SID.'">Создать</a><br>';
echo'<img src="../images/img/plus.gif" alt=""> <a href="files.php?action=faq&amp;'.SID.'">Помощь</a>';
}


//---------------------- Обзор файла -----------------------------//
if($action=="obzor"){
if($file!=""){
echo '<div class=tpanel><b>Просмотр файла '.$file.'</b><br>';


$opis=file_get_contents(BASEDIR."local/datamain/$file");
$count=count($opis);

echo 'Строчек: '.(int)$count.'<br></div>';

echo highlight_code(check($opis)).'<br>';

echo '<div class=btm><img src="../images/img/edit.gif" alt=""> <a href="files.php?action=edit&amp;file='.$file.'&amp;'.SID.'">Изменить</a><br>';
echo '<img src="../images/img/error.gif" alt=""> <a href="files.php?action=poddel&amp;file='.$file.'&amp;'.SID.'">Удалить</a>';

}
echo '<br><img src="../images/img/plus.gif" alt=""> <a href="files.php?'.SID.'">Вернуться</a>';
}

//---------------------- Подготовка к редактированию файла -----------------------------//
if($action=="edit"){
if(file_exists("../local/datamain/$file")){
if(!eregi("[^a-z0-9_@+\.-]",$file)){
if($file!=""){


$datamainfile=file_get_contents("../local/datamain/$file");
$datamainper=permissions("../local/datamain/$file");
$filename = str_replace(".dat","",$file);

$datamainfile = str_replace('&amp;','&',$datamainfile);
$datamainfile = str_replace('<?=SID?>','{SID}',$datamainfile);

$datamainfile = str_replace('<img src="<?=BASEDIR?>images/img/act.gif" alt="">','{IMG0}',$datamainfile);
$datamainfile = str_replace('<img src="<?=BASEDIR?>images/img/act1.gif" alt="">','{IMG1}',$datamainfile);
$datamainfile = str_replace('<img src="<?=BASEDIR?>images/img/act2.gif" alt="">','{IMG2}',$datamainfile);
$datamainfile = str_replace('<img src="<?=BASEDIR?>images/img/act3.gif" alt="">','{IMG3}',$datamainfile);
$datamainfile = str_replace('<img src="<?=BASEDIR?>images/img/act_home.gif" alt="">','{IMG4}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/localnews.php"; ?>','{NEWS}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/library.php"; ?>','{LIBRARY}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/down.php"; ?>','{DOWN}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/allforums.php"; ?>','{FORUM}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/localchat.php"; ?>','{CHAT}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/localbook.php"; ?>','{BOOK}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/fotogallery.php"; ?>','{GALLERY}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/allboards.php"; ?>','{BOARD}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/votes.php"; ?>','{VOTES}',$datamainfile);
$datamainfile = str_replace('<? include_once BASEDIR."template/link.php"; ?>','{LINK}',$datamainfile);
$datamainfile = str_replace('<?=BASEDIR?>','{BASEDIR}',$datamainfile);

$datamainfile = nosmiles($datamainfile);

echo '<div class=tpanel>Редактирование файла '.$file.'<br>';
echo 'Права доступа CHMOD '.$datamainper.'<br>';

if(is_writeable("../local/datamain/$file")){
echo '<font color="#00FF00">Файл доступен для записи</font></div>';
}else{
echo '<font color="#FF0000">Файл недоступен для записи</font></div>';}

echo '<div class=body><form action="files.php?action=editfile&amp;file='.$file.'&amp;'.SID.'" name="form" method="POST">';

echo '<textarea cols="110" rows="20" name="text_files">';
echo check($datamainfile);
echo '</textarea><br>';

if($config_themes!="wml"){
echo "<script language=\"JavaScript\" type=\"text/javascript\">
function tag(text1, text2) {
if ((document.selection)) {
document.form.text_files.focus();
document.form.document.selection.createRange().text = text1+document.form.document.selection.createRange().text+text2;
} else if(document.forms['form'].elements['text_files'].selectionStart != undefined) {
var element    = document.forms['form'].elements['text_files'];
var str     = element.value;
var start    = element.selectionStart;
var length    = element.selectionEnd - element.selectionStart;
element.value = str.substr(0, start) + text1 + str.substr(start, length) + text2 + str.substr(start + length);
} else document.form.text_files.value += text1+text2;
}
</script>";

include_once"../template/quicktags.php";
include_once"../template/quicksmiles.php";

}

echo '<input type="submit" value="Сохранить"></form></div>';

}else{ echo 'Произошла ошибка, не выбран файл<br>';}
}else{ echo 'Недопустимое название файла!<br>';}
}else{ echo 'Произошла ошибка, файл '.check($file).' не найден<br>';}
echo '<div class=btm><img src="../images/img/plus.gif" alt=""> <a href="files.php?'.SID.'">Вернуться</a><br>';
echo '<img src="../images/img/plus.gif" alt=""> <a href="../pages/index.php?action='.$filename.'&amp;'.SID.'">Просмотр</a>';
}
//---------------------- Редактирование файла -----------------------------//
if($action=="editfile"){
if($file!="" && $text_files!=""){

$text_files = str_replace('&','&amp;',$text_files);
$text_files = str_replace('{SID}','<?=SID?>',$text_files);

$text_files = str_replace('{IMG0}','<img src="<?=BASEDIR?>images/img/act.gif" alt="">',$text_files);
$text_files = str_replace('{IMG1}','<img src="<?=BASEDIR?>images/img/act1.gif" alt="">',$text_files);
$text_files = str_replace('{IMG2}','<img src="<?=BASEDIR?>images/img/act2.gif" alt="">',$text_files);
$text_files = str_replace('{IMG3}','<img src="<?=BASEDIR?>images/img/act3.gif" alt="">',$text_files);
$text_files = str_replace('{IMG4}','<img src="<?=BASEDIR?>images/img/act_home.gif" alt="">',$text_files);
$text_files = str_replace('{NEWS}','<? include_once BASEDIR."template/localnews.php"; ?>',$text_files);
$text_files = str_replace('{LIBRARY}','<? include_once BASEDIR."template/library.php"; ?>',$text_files);
$text_files = str_replace('{DOWN}','<? include_once BASEDIR."template/down.php"; ?>',$text_files);
$text_files = str_replace('{FORUM}','<? include_once BASEDIR."template/allforums.php"; ?>',$text_files);
$text_files = str_replace('{CHAT}','<? include_once BASEDIR."template/localchat.php"; ?>',$text_files);
$text_files = str_replace('{BOOK}','<? include_once BASEDIR."template/localbook.php"; ?>',$text_files);
$text_files = str_replace('{GALLERY}','<? include_once BASEDIR."template/fotogallery.php"; ?>',$text_files);
$text_files = str_replace('{BOARD}','<? include_once BASEDIR."template/allboards.php"; ?>',$text_files);
$text_files = str_replace('{VOTES}','<? include_once BASEDIR."template/votes.php"; ?>',$text_files);
$text_files = str_replace('{LINK}','<? include_once BASEDIR."template/link.php"; ?>',$text_files);

$text_files = str_replace('{BASEDIR}','<?=BASEDIR?>',$text_files);
$text_files = smiles($text_files);

$fp = fopen("../local/datamain/$file","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
fputs($fp,$text_files);
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);

}

header ("Location: files.php?action=edit&file=$file&isset=mp_editfiles&".SID);
}

//---------------------- Помощь по редактированию -----------------------------//
if($action=="faq"){
echo '<div class=tpanel><b>Сокрашенные коды сайта</b></div>';
echo '<div class=body>Сокрашенные коды позволяют вставлять некоторые переменные<br>';
echo 'К примеру в каждую внутреннюю ссылку необходимо прописывать SID-сессии, это позволит держать сессию при отключении куков в браузере,
в конце каждой ссылки необходимо вставлять код {SID}, для ссылок на чужие сайты это делать не нужно<br>';
echo 'В начале ссылки необходимо указать корень сайта поэтому нужно прописывать код {BASEDIR}, если ссылка начинается с http://, то этот код уже не нужен<br>';
echo 'Остальные коды полегче, коды {IMG1},{IMG2} и т.д. вставляют картинки, а {FORUM}, {BOOK} и т.д. выводят данные из форума и гостевой соответственно<br>';
echo 'Вы можете вставлять любой php-код, к примеру переменные пишутся так &lt;?=$udata[10]?&gt;, а инклюд &lt;? include_once BASEDIR."template/down.php"; ?&gt;</div>';

echo '<div class=tpanel><b>Быстрые теги </b></div>';
echo '<div class=body><img src="../images/editor/a.gif" alt=""> - Тег служит для создания гипертекста (ссылок). Гипертекст позволяет осуществлять мгновенный переход от одного фрагмента текста к другому.<br>';
echo '<img src="../images/editor/img.gif" alt=""> - Тег служит для внедрения графики на страницы. alt - Выводит текст к картинке. Полезно, если браузер не отображает графику на странице.<br>';
echo '<img src="../images/editor/br.gif" alt=""> - Тег служит для перевода текста на следующую строку<br>';
echo '<img src="../images/editor/hr.gif" alt=""> - Тег добавляет в HTML документ горизонтальную линию. Перед и после линии помещается пустая строка<br>';
echo '<img src="../images/editor/b.gif" alt=""> - Тег создает жирный текст<br>';
echo '<img src="../images/editor/big.gif" alt=""> - Тег выводит более крупный текст<br>';
echo '<img src="../images/editor/small.gif" alt=""> - Тег выводит более мелкий текст<br>';
echo '<img src="../images/editor/i.gif" alt=""> - Тег создает наклонный текст<br>';
echo '<img src="../images/editor/u.gif" alt=""> - Тег указывает, что текст должен быть подчеркнут<br>';
echo '<img src="../images/editor/right.gif" alt=""> - Тег создает новый блок. Текст выровнен по правому краю<br>';
echo '<img src="../images/editor/center.gif" alt=""> - Тег создает новый блок. Текст выровнен по центру<br>';
echo '<img src="../images/editor/left.gif" alt=""> - Тег создает новый блок. Текст выровнен по левому краю</div>';


echo ' <div class=tpanel><b>Коды сайта</b></div>';

echo '<div class=body><img src="../images/editor/sid.gif" alt=""> - Код служит для вставки сессии во внутренние ссылки движка<br>';
echo '<img src="../images/editor/dir.gif" alt=""> - Код служит для указания корня ссылок движка<br>';
echo '<img src="../images/editor/img1.gif" alt=""> - Код служит для вставки 1 (Верхней) картинки<br>';
echo '<img src="../images/editor/img2.gif" alt=""> - Код служит для вставки 2 (Средней) картинки<br>';
echo '<img src="../images/editor/img3.gif" alt=""> - Код служит для вставки 3 (Нижней) картинки<br>';
echo '<img src="../images/editor/img4.gif" alt=""> - Код служит для вставки картинки домик (Возврат назад)<br>';
echo '<img src="../images/editor/diva.gif" alt=""> - Код создает новый блок со стилем указанным в CSS<br>';
echo '<img src="../images/editor/divb.gif" alt=""> - Код создает новый блок со стилем указанным в CSS<br>';
echo '<img src="../images/editor/divc.gif" alt=""> - Код создает новый блок со стилем указанным в CSS</div>';

echo '<div class=btm><img src="../images/img/plus.gif" alt=""> <a href="files.php?'.SID.'">Вернуться</a>';
}

//---------------------- Подготовка к созданию нового файла -----------------------------//
if($action=="new"){
$datamainper=permissions("../local/datamain");
echo '<div class=tpanel>Создание нового файла<br>';
echo 'Права доступа директории CHMOD '.$datamainper.'<br>';
if(is_writeable("../local/datamain")){
echo '<font color="#00FF00">Директория доступна для создания файлов</font></div>';


echo '<div class=body><form method="post" action="files.php?action=addnew&amp;'.SID.'">';
echo 'Название файла [A-z-_0-9]:<br>';
echo '<input type="text" name="newfile" maxlength="20" /><br>';
echo '<input value="Создать файл" type="submit" /></form></div>';

}else{
echo '<font color="#FF0000">Директория недоступна для создания файлов</font><br>Необходимо войти по FTP и поставить права разрешающие запись в папку local/datamain (CHMOD-777)<br><br>';}
echo '<div class=btm><img src="../images/img/plus.gif" alt=""> <a href="files.php?'.SID.'">Вернуться</a>';
}


//---------------------- Создание нового файла -----------------------------//
if($action=="addnew"){
if(!eregi("[^a-z0-9_-]",$newfile) && $newfile!=""){

$newfiles="$newfile.dat";

if(!file_exists("../local/datamain/$newfiles")){

$allfile = fopen("../local/datamain/$newfiles", "a+");
fclose($allfile);
chmod ($allfile, 0666);
chmod ("../local/datamain/$newfiles", 0666);
}else{header ("Location: files.php?action=new&isset=mp_noyesfiles&".SID); exit;}
}else{header ("Location: files.php?action=new&isset=mp_nonewfiles&".SID); exit;}
header ("Location: files.php?action=edit&file=$newfiles&isset=mp_newfiles&".SID);
}


//---------------------- Подготовка к удалению файла -----------------------------//
if($action=="poddel"){
if($file!=""){
if($file!="index.dat"){
echo '<div class=body>Вы подтверждаете что хотите удалить файл <b>'.$file.'</b><br>';
echo '- <b><a href="files.php?action=del&amp;file='.$file.'&amp;'.SID.'">Удалить</a></b></div>';
}else{echo 'Ошибка! Файл index.dat удалять нельзя, это главная страница сайта!</div>';}
}else{echo 'Ошибка! Не выбран файл для удаления</div>';}
echo '<div class=btm><img src="../images/img/plus.gif" alt=""> <a href="files.php?'.SID.'">Вернуться</a>';
}

//---------------------- Удаление файла -----------------------------//
if($action=="del"){
if(file_exists("../local/datamain/$file") && $file!="index.dat"){
unlink (BASEDIR."local/datamain/$file");
}else{header ("Location: files.php?isset=mp_nodelfiles&".SID); exit;}
header ("Location: files.php?isset=mp_delfiles&".SID);
}




echo'<br><img src="../images/img/plus.gif" alt=""> <a href="index.php?'.SID.'">В админку</a><br>';
echo'<img src="../images/img/plus.gif" alt=""> <a href="../index.php?'.SID.'">На главную</a></div>';

} else {header ("Location: ../index.php?isset=404&".SID);}
} else {header ("Location: ../index.php?isset=404&".SID);}


include_once"../themes/$config_themes/foot.php";
?>