View file office/zakladki.php

File size: 4.28Kb
<?php
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";


function hex2bin($h){
if (!is_string($h)) return null;$r='';
for ($a=0; $a<strlen($h); $a+=2) { $r.=chr(hexdec($h{$a}.$h{($a+1)}));}
return $r;}
$zakl=1;

echo'<div class="tp">Закладки</div>';

if($action==''){
$file=explode('||',implode('',file(BASEDIR."local/zakl.dat")));
for($x=0; $x<count($file); $x++){
$fil=explode('|',$file[$x]);
if($fil[0]==$log){ $ix=$x;$x+=count($file);}}
$total = (count($fil)-1)/2;
if($total<1){echo 'Закладок еще нет!';}$i='';
for($i=1; $i<count($fil); $i+=2){
if($fil[$i]!='' && $fil[$i+1]!='')
echo '- <a href="'.$fil[$i+1].'"><b>'.$fil[$i].'</b></a><br>';}
$act='<div class="btm">[<a href="zakladki.php?action=new">Добавить закладку</a>]<br>[<a href="zakladki.php?action=udd">Удалить закладку</a>]<br>';
}

if($action=='new'){
echo'
<form action="'.$config_home.'/office/zakladki.php?action=add&amp;" method="post" name="zakladki">
<b>Название закладки:</b><br>
<input name="aname" type="text" value="Название"><br>
<b>Адрес:</b><br>
<input name="add" type="text" value="'.str_replace('|','',check(hex2bin($add))).'"><br>
<input name="submit" type="submit" value="Добавить"><div class="btm">
</form>';}

if($action=='add'){
$file=explode('||',implode('',file(BASEDIR."local/zakl.dat")));$ix='';
for($x=0; $x<count($file); $x++){
$fil=explode('|',$file[$x]);
if($fil[0]==$log){ $ix=$x;$x+=count($file);}}
if($ix==''){ $ix=count($file);
$fil[0]=$log;}
$x=count($fil);
if(count($fil)>21){echo'Ошибка, превышено допустимое количество закладок. Удалите старую закладку чтобы добавить новую<div class="btm">[<a href="zakladki.php">В закладки</a>]<br>';}else{
$aname=$_POST['aname'];$add=$_POST['add'];
if(strlen($aname)>30 || strlen($aname)<3){echo'Ошибка, слишком длинное или слишком короткое название ссылки ';}else{
if(strlen($add)>100 || strlen($add)<5){echo'Ошибка, слишком длинный или слишком короткий адрес!';}else{
$fil[$x]=str_replace('|','',check($aname)).'|'.str_replace('|','',check($add));
$file[$ix]=implode('|',$fil);
$file=implode('||',$file);
$fp=fopen(BASEDIR."local/zakl.dat","a+");
flock($fp,LOCK_EX);ftruncate($fp,0);fputs($fp,$file);fflush($fp);flock($fp,LOCK_UN);fclose($fp);unset($utext);
echo'Закладка успешно добавлена!';
$act='<div class="btm">[<a href="zakladki.php">В закладки</a>]<br>';
}}}}



if($action=='udd'){
$file=explode('||',implode('',file(BASEDIR."local/zakl.dat")));
for($x=0; $x<count($file); $x++){
$fil=explode('|',$file[$x]);
if($fil[0]==$log){ $ix=$x;$x+=count($file);}}
$total = (count($fil)-1)/2;
if($total<1){echo 'Закладок еще нет!';}$i='';
for($i=1; $i<count($fil); $i+=2){
if($fil[$i]!='' && $fil[$i+1]!='')
echo '<font color="red">-</font> <a href="zakladki.php?action=udl&udl='.bin2hex($fil[$i]).'"><b>'.$fil[$i+1].'</b></a><br>';}
$act='<div class="btm">[<a href="zakladki.php?action=new">Добавить закладку</a>]<br>';}

if($action=='udl'){
$file=explode('||',implode('',file(BASEDIR."local/zakl.dat")));
for($x=0; $x<count($file); $x++){
$fil=explode('|',$file[$x]);
if($fil[0]==$log){ $ix=$x;$x+=count($file);}}$x='';
for($x=1; $x<count($fil); $x+=2){
if($fil[$x]==hex2bin($_GET['udl'])){$fil[$x]='';$fil[$x+1]='';$x+=count($file);}}
$file[$ix]=implode('|',$fil);
$file=implode('||',$file);
$fp=fopen(BASEDIR."local/zakl.dat","a+");
flock($fp,LOCK_EX);ftruncate($fp,0);fputs($fp,$file);fflush($fp);flock($fp,LOCK_UN);fclose($fp);unset($utext);
echo'Закладка успешно удалена!<div class="btm">';
$act='[<a href="zakladki.php">В закладки</a>]<br>';}

echo ''.$act.'[<a href="../index.php?'.SID.'">На главную</a>]</div>';
include_once"../themes/$config_themes/foot.php";
?>