Просмотр файла panel/templates.php

Размер файла: 4.35Kb
<?php
// by mides, 1da.su

require_once '../system/sys.php';
require_once '../system/auth_a.php';
require_once '../system/header.php';

if (!access(3)) {
	redirect(HTTPHOME);
}

switch ($act) {
	default:
		$current_ext = 'mp3';
		$allowed_ext=explode('|', $config['allowed_ext']); 
		if(!in_array($current_ext, $allowed_ext)){ 
			echo 'error!';
		}
	
		echo '<div class="title">Внутренние страницы(<a href="?act=create">+</a>)</div><div class="list">';
		note();
		
		$arrfiles = array();
        $globfiles = glob('../inc/templates/*.tpl');
        foreach ($globfiles as $filename) {
            $arrfiles[] = basename($filename);
        } 

        $total = count($arrfiles);
		if ($total > 0) {
			
			$pages = ceil($total / $config['onpage']);
			if ($page > $pages or $page == 0) {
				$page = 1;
			}
			$begin = ($page - 1) * $config['onpage'];
			
            if ($total < $begin + $config['onpage']) {
                $end = $total;
            } else {
                $end = $begin + $config['onpage'];
            } 
						
			for ($i = $begin; $i < $end; $i++) {
				$size = size(filesize('../inc/templates/'.$arrfiles[$i]));
				$tplname = str_replace('.tpl', '', $arrfiles[$i]);
				$edited = ccdate(filemtime('../inc/templates/'.$arrfiles[$i]), 0);
				
				if (!isset($num) ) $num = 1;  
				$num++;
				$row_class = (!($num % 2)) ? 'row1' : 'row2';
				
				echo '<div class="'.$row_class.'"><a href="../index.php?act='.$tplname.'">'.$tplname.'</a> ('.$size.') <a href="?act=edit&amp;tpl='.$arrfiles[$i].'">ред</a>';
				if ($arrfiles[$i] !== 'index.tpl') {
					echo ', <a href="?act=del&amp;tpl='.$arrfiles[$i].'">del</a>';
				}
				echo '<br />Изменен: '.$edited.'</div>';
			}
			
		}
		navig($page, '?', $pages);
		nav('./');
	break;
	
	case 'create':
		if ($ok) {
			if (!empty($_POST['name'])) {
				$filename = check($_POST['name']).'.tpl';
				if (!file_exists('../inc/templates/'.$filename)) {
					$create = fopen('../inc/templates/'.$filename, 'a+');
					if ($create == TRUE) {
						$_SESSION['note'] = 'Файл создан.';
						redirect('?act=edit&tpl='.$filename);
					} else {
						$_SESSION['note'] = 'Ошибка. Возможно неверные CHMOD на папку templates.';
						redirect('?');
					}
				} else {
					$_SESSION['note'] = 'Файл с таким названием уже есть.';
					redirect('?act=create');
				}
			} else {
				redirect('?act=create');
			}
		} else {
			tp('Создать страницу');
			note();
			echo '<form name="form" action="?act=create&amp;ok=1" method="post" name="form">
			Название(a-z, 0-9):<br /><input name="name" type="text" maxlength="25" /><br />
			<input name="submit" type="submit" value="Ok" />
			</form>';
			nav('?');
		}
	break;
	
	case 'edit':
		$tpl = check($_GET['tpl']);
		$file = '../inc/templates/'.$tpl;
		if (file_exists($file)) {
			if ($ok) {
				$fp = fopen($file, 'a+');
				ftruncate($fp, 0);
				$text = $_POST['text'];
				fputs($fp, $text);
				redirect('?act=edit&tpl='.$tpl);
			} else {
				$tplname = str_replace('.tpl', '', $tpl);
				tp('Ред-е файла <a href="../index.php?act='.$tplname.'">'.$tplname.'</a>');
				note();
				echo '<form name="form" action="?act=edit&amp;tpl='.$tpl.'&amp;ok=1" method="post" name="form">
				<textarea name="text" cols="" rows="8">'.file_get_contents($file).'</textarea>
				<input name="submit" type="submit" value="Ok" />
				</form>';
				nav('?');
			}
		} else {
			redirect('?');
		}
	break;
	
	case 'del':
		$tpl = check($_GET['tpl']);
		if (file_exists('../inc/templates/'.$tpl)) {
			if ($ok) {
				$deletion = unlink('../inc/templates/'.$tpl);
				if ($deletion == TRUE) {
					$_SESSION['note'] = 'Удалено.';
				} else {
					$_SESSION['note'] = 'Ошибка. Удалите вручную через FTP.';
				}
				redirect('?');
			} else {
				tp('Подтверждение');
				echo 'Вы действительно хотите удалить файл '.$tpl.'?<br />
				<form name="form" action="?act=del&tpl='.$tpl.'&amp;ok=1" method="post" name="form">
				<input name="submit" type="submit" value="Ok" />
				</form>';
				nav('?');
			}
		} else {
			redirect('?');
		}
	break;
	
	
	
	
	
	
}

require_once '../system/tail_p.php';
?>