mirror of
https://github.com/UnickSoft/graphonline.git
synced 2026-04-23 16:36:38 +00:00
first commit
This commit is contained in:
57
tpl/admin/admin_menu.php
Executable file
57
tpl/admin/admin_menu.php
Executable file
@@ -0,0 +1,57 @@
|
||||
<?php IncludeCom('dev/bootstrap3')?>
|
||||
<head>
|
||||
<link rel="stylesheet" type="text/css" href="<?= Root('i/css/admin/admin_menu.css')?>" />
|
||||
</head>
|
||||
|
||||
|
||||
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation" id="admin-menu">
|
||||
<div class="container">
|
||||
|
||||
<!-- Логотип и кнопка открытия меню сгруппированы для лучшего отображения на мобильных устройствах -->
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-menu-collapse">
|
||||
<span class="sr-only">Меню</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<?php if (!empty($logo)):?>
|
||||
<a class="navbar-brand" href="<?= $logo['href']?>"><?= $logo['logo']?></a>
|
||||
<?php endif?>
|
||||
</div>
|
||||
|
||||
<!-- Содержит ссылки и прочий контент который можно будет показать/скрывать на мобильных устройствах -->
|
||||
<div class="collapse navbar-collapse nav-menu-collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<?php foreach ($menu as $v):?>
|
||||
<li class="<?= (isset($v['list']) && count($v['list'])) ? "dropdown" : ''?><?= isset($v['css']) ? " {$v['css']}" : ''?>">
|
||||
<a href="<?= $v['link']?>" title="<?= $v['label']?>"<?= (isset($v['list']) && count($v['list'])) ?' class="dropdown-toggle" data-toggle="dropdown"' : ''?>>
|
||||
<?= $v['name']?>
|
||||
</a>
|
||||
<?php if (isset($v['list']) && count($v['list'])):?>
|
||||
<ul class="dropdown-menu">
|
||||
<?php
|
||||
foreach ($v['list'] as $v)
|
||||
{
|
||||
if ($v === 'divider')
|
||||
{
|
||||
?><li class="divider"></li><?php
|
||||
}
|
||||
elseif (isset($v['divider_name']))
|
||||
{
|
||||
?><li class="dropdown-header"><?= $v['divider_name']?></li><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
?><li><a href="<?= $v['link']?>" title="<?= $v['label']?>"><?= $v['name']?></a></li><?php
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
<?php endif?>
|
||||
</li>
|
||||
<?php endforeach?>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
8
tpl/admin/home.php
Executable file
8
tpl/admin/home.php
Executable file
@@ -0,0 +1,8 @@
|
||||
|
||||
<div class="jumbotron">
|
||||
<div class="container">
|
||||
<h1>Административный раздел</h1>
|
||||
<p>Добро пожаловать в административный раздел сайта.</p>
|
||||
<p><a class="btn btn-primary btn-lg" href="<?= SiteRoot("admin/logout")?>">Выйти из раздела</a></p>
|
||||
</div>
|
||||
</div>
|
||||
26
tpl/admin/login.php
Executable file
26
tpl/admin/login.php
Executable file
@@ -0,0 +1,26 @@
|
||||
<h1>Вход в административный раздел</h1>
|
||||
<form action="<?= GetCurUrl()?>" method="post" class="form-horizontal" role="form">
|
||||
<input type="hidden" name="is_login" value="1">
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-6">
|
||||
<?= $msg?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="inputLogin" class="col-lg-2 control-label">Логин</label>
|
||||
<div class="col-lg-6">
|
||||
<input type="text" class="form-control" id="inputLogin" autocomplete="on" name="login" value="<?= Post("login")?>" placeholder="Введите ваш логин">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="inputPassword" class="col-lg-2 control-label">Пароль</label>
|
||||
<div class="col-lg-6">
|
||||
<input type="password" class="form-control" id="inputPassword" autocomplete="on" name="pwd" placeholder="Введите ваш пароль">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-6">
|
||||
<button type="submit" class="btn btn-primary">Войти</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
32
tpl/admin/main_tpl.php
Executable file
32
tpl/admin/main_tpl.php
Executable file
@@ -0,0 +1,32 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?= LANG?>" dir="ltr">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=<?= $g_config['charset']?>" />
|
||||
<title><?= L('m_title')?></title>
|
||||
<link rel="icon" href="<?= Root('favicon.ico')?>" type="image/x-icon" />
|
||||
<link rel="shortcut icon" href="<?= Root('favicon.ico')?>" type="image/x-icon" />
|
||||
<meta http-equiv="cleartype" content="on">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<script src="<?= Root("i/js/dev/jquery-2.0.3.js")?>" ></script>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="<?= Root('i/css/dev/funcs.css')?>" />
|
||||
<link rel="stylesheet" type="text/css" href="<?= Root('i/css/bootstrap.css')?>" />
|
||||
|
||||
<script src="<?= Root("i/js/dev/bootstrap3/bootstrap.min.js")?>" ></script>
|
||||
|
||||
<!-- extraPacker -->
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
</head>
|
||||
<body>
|
||||
<?php IncludeCom('admin/admin_menu', array('menu' => $menu, 'logo' => $logo))?>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<?= $content?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
53
tpl/admin/page_editor.php
Executable file
53
tpl/admin/page_editor.php
Executable file
@@ -0,0 +1,53 @@
|
||||
<h1>Редактирование страниц сайта</h1>
|
||||
<p>
|
||||
Если кнопка редактирования страницы на нужном языке отсутствует,
|
||||
то нужно выбрать редактирование этой страницы на языке по умолчанию (или другом доступном языке),
|
||||
заполнить её нужным текстом и в выпадающем списке "Сохранять для языка" выбрать нужный язык.
|
||||
</p>
|
||||
<?= $msg?>
|
||||
<form action="<?= GetCurUrl()?>" method="post">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered table-striped table-condensed">
|
||||
<?php foreach($all as $path => $pageLangs):?>
|
||||
<tr>
|
||||
<td class="path">
|
||||
<?php for ($i = 0; $i < substr_count(substr($path, 0, -1), '/'); ++$i):?>
|
||||
|
||||
<?php endfor;?>
|
||||
|
||||
<?php if (substr($path, -1) == "/"):?>
|
||||
<span class="glyphicon glyphicon-folder-open"></span>
|
||||
<em><?= basename($path)?></em>
|
||||
<?php else:?>
|
||||
<span class="glyphicon glyphicon-file"></span>
|
||||
<strong><?= str_replace(".php", "", basename($path))?></strong>
|
||||
<?php endif;?>
|
||||
|
||||
<?php if (isset($g_config['page_editor']['labels'][$path])):?>
|
||||
<span class="label label-default"><?= $g_config['page_editor']['labels'][$path]?></span>
|
||||
<?php endif;?>
|
||||
</td>
|
||||
<?php foreach ($g_arrLangs as $lang => $langInfo):?>
|
||||
<td width=1>
|
||||
<nobr>
|
||||
<?php if (substr($path, -1) != "/" && in_array($lang, $pageLangs)):?>
|
||||
<a href="<?= SiteRoot("admin/page_editor_page&lang=" . $lang . "&page=" . urlencode($path))?>" class="btn btn-sm btn-primary" title="Редактировать страницу на этом языке">
|
||||
<?= $langInfo['name']?>
|
||||
</a>
|
||||
<a target="_blank" href="<?= SiteRoot("{$lang}/" . str_replace(".php", "", $path))?>" class="btn btn-sm btn-default" title="Проверить страницу на этом языке">
|
||||
<span class="glyphicon glyphicon-open"></span>
|
||||
</a>
|
||||
<?php endif;?>
|
||||
</nobr>
|
||||
</td>
|
||||
<?php endforeach;?>
|
||||
<td width=1> <!-- @todo Добавить защиту от дурака (запрет на удаление файлов в dev, autoload и т.д.) -->
|
||||
<button class="btn btn-sm btn-danger" name="remove_page" value="<?= str_replace(".php", "", $path)?>" onclick="return confirm('Удалить данную страницу?')">
|
||||
<span class="glyphicon glyphicon-trash"></span>
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</table>
|
||||
</div>
|
||||
</form>
|
||||
25
tpl/admin/page_editor_add.php
Executable file
25
tpl/admin/page_editor_add.php
Executable file
@@ -0,0 +1,25 @@
|
||||
|
||||
<?php IncludeCom('dev/bootstrap3')?>
|
||||
|
||||
<h1>Добавление страницы</h1>
|
||||
<p>В названии страницы допускаются только маленькие латинские буквы и цифры.</p>
|
||||
|
||||
<form action="<?= GetCurUrl()?>" method="post" class="form-horizontal" role="form">
|
||||
<input type="hidden" name="is_add_page" value="1">
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-6">
|
||||
<?= $msg?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="inputName" class="col-lg-2 control-label">Название страницы</label>
|
||||
<div class="col-lg-6">
|
||||
<input type="text" class="form-control" id="inputName" autocomplete="on" name="name" value="<?= Post("name")?>" placeholder="Только маленькие латинские буквы и цифры">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-6">
|
||||
<button type="submit" class="btn btn-primary">Добавить</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
68
tpl/admin/page_editor_page.php
Executable file
68
tpl/admin/page_editor_page.php
Executable file
@@ -0,0 +1,68 @@
|
||||
<?php IncludeCom('dev/bootstrap3')?>
|
||||
<?php IncludeCom("dev/ckeditor4_head")?>
|
||||
|
||||
|
||||
<h1>Редактируем страницу <span class="label label-primary"><?= $file?></span> на языке <span class="label label-success"><?= $g_arrLangs[$lang]["name"]?></span></h1>
|
||||
<form action="<?= GetCurUrl()?>" role="form" method="post" <?= Uploader::FORM_LOAD?>>
|
||||
<?php if (count($g_arrLangs) > 1):?>
|
||||
<div class="well">
|
||||
<label for="inputLang">Сохранить для языка</label>
|
||||
<select class="form-control" name="___lang" id="inputLang">
|
||||
<?php foreach($g_arrLangs as $k => $v):?>
|
||||
<option value="<?= $k?>" <?= Post("___lang", $lang) == $k ? "selected" : ""?> ><?= $g_arrLangs[$k]['name']?></option>
|
||||
<?php endforeach;?>
|
||||
</select>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<h2>Задайте новые значения переменным:</h2>
|
||||
<input type="hidden" name="___is_apply" value="1">
|
||||
<?= $msg?>
|
||||
<?php foreach ($curLang as $k => $v):?>
|
||||
<?php if (!in_array($k, $seoVars)):?>
|
||||
<div class="form-group">
|
||||
<label for="input_<?= $k?>"><?= $k?>:</label>
|
||||
<?php if (strlen($v) == strlen(strip_tags($v)) || substr($k, -strlen("_no_tags")) == "_no_tags" || substr($k, -strlen("_notg")) == "_notg"):?>
|
||||
<textarea id="input_<?= $k?>" class="form-control" name="<?= $k?>"><?= Post($k, $v)?></textarea>
|
||||
<?php else:?>
|
||||
<?php IncludeCom("dev/richtext", array
|
||||
(
|
||||
"name" => $k,
|
||||
"value" => Post($k, $v, M_HTML_FILTER_OFF | M_XSS_FILTER_OFF),
|
||||
"mode" => "full"
|
||||
));
|
||||
?>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<?php endforeach;?>
|
||||
|
||||
<?php if ($showSEO):?>
|
||||
<h3>Задайте новые значения для SEO параметров:</h3>
|
||||
<p>
|
||||
SEO параметры нужны для продвижения сайта в интернете. Если вы не знаете, что в них вписать, то просто оставьте эти поля нетронутыми.<br>
|
||||
Помните, что если для страницы сайта не задан <em>title</em>, то он будет скопирован из тега <em>h1</em>.
|
||||
</p>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="inputTitle">Title:</label>
|
||||
<textarea id="inputTitle" class="form-control" name="m_title"><?= Post('m_title', @$curLang['m_title'])?></textarea>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="inputKeywords">Key words:</label>
|
||||
<textarea id="inputKeywords" class="form-control" name="m_keyWords"><?= Post('m_keyWords', @$curLang['m_keyWords'])?></textarea>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="inputDesc">Description:</label>
|
||||
<textarea id="inputDesc" class="form-control" name="m_description"><?= Post('m_description', @$curLang['m_description'])?></textarea>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<button class="btn btn-primary">
|
||||
<span class="glyphicon glyphicon-save"></span> Сохранить
|
||||
</button>
|
||||
<button class="btn btn-primary" name="___no_return" value="1">
|
||||
<span class="glyphicon glyphicon-ok"></span> Сохранить и продолжить редактировать
|
||||
</button>
|
||||
<a class="btn btn-default" href="<?= SiteRoot("admin/page_editor")?>">
|
||||
<span class="glyphicon glyphicon-ban-circle"></span> Отмена
|
||||
</a>
|
||||
</form>
|
||||
54
tpl/admin/page_example_graph.php
Normal file
54
tpl/admin/page_example_graph.php
Normal file
@@ -0,0 +1,54 @@
|
||||
|
||||
<?php IncludeCom('dev/bootstrap3')?>
|
||||
|
||||
<h1>Примеры графов</h1>
|
||||
|
||||
<form action="<?= GetCurUrl()?>" method="post" class="form-horizontal" role="form" class="form-inline">
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-6">
|
||||
<?= isset($msg) ? $msg : ""?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="inputName" class="col-lg-2 control-label">ID graph исходного графа</label>
|
||||
<input type="text" id="inputName" autocomplete="on" name="source_id" value="<?= Post("source_id")?>">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="inputName" class="col-lg-2 control-label">ID graph конечного графа</label>
|
||||
<input type="text" id="inputName" autocomplete="on" name="dest_id" value="<?= Post("dest_id")?>">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="inputName" class="col-lg-2 control-label">Русское название</label>
|
||||
<input type="text" id="inputName" autocomplete="on" name="title_ru" value="<?= Post("title_ru")?>">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="inputName" class="col-lg-2 control-label">Английское название</label>
|
||||
<input type="text" id="inputName" autocomplete="on" name="title_en" value="<?= Post("title_en")?>">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="inputName" class="col-lg-2 control-label">Изображение</label>
|
||||
<input type="text" id="inputName" autocomplete="on" name="image" value="<?= Post("image")?>">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-6">
|
||||
<button type="submit" class="btn btn-primary">Добавить</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div>
|
||||
<?php for ($i = 0; $i < count($examples); $i++): ?>
|
||||
<p>
|
||||
<?= $examples[$i]["title_ru"] ?> -
|
||||
<?= $examples[$i]["title_en"] ?> -
|
||||
<a href="/?graph=<?= $examples[$i]["id"] ?>" target="_blank">http://graphonline.ru/?graph=<?= $examples[$i]["id"] ?></a>
|
||||
</p>
|
||||
<?php endfor; ?>
|
||||
</div>
|
||||
|
||||
34
tpl/admin/page_saved_graph.php
Normal file
34
tpl/admin/page_saved_graph.php
Normal file
@@ -0,0 +1,34 @@
|
||||
|
||||
<?php IncludeCom('dev/bootstrap3')?>
|
||||
|
||||
<h1>Сохранённые файлы</h1>
|
||||
<div>
|
||||
<h2>Сохранённые графы</h2>
|
||||
<p>Всего сохранёных графов - <?= $totalGraphCount ?> шт</p>
|
||||
<p>Общий размер сохранённых графов - <?= $totalGraphSize ?> Кб</p>
|
||||
<p>За последние полгода сохранено - <?= $ageGraph / $totalGraphCount * 100 ?> %</p>
|
||||
<h2>Сохранённые изображения</h2>
|
||||
<p>Всего сохранёных изображений - <?= $totalImages ?> шт</p>
|
||||
<p>Общий размер сохранённых изображений - <?= $totalImagesSize ?> Кб</p>
|
||||
<p>За последние полгода сохранено - <?= $ageImage / $totalImages * 100 ?> %</p>
|
||||
</div>
|
||||
|
||||
<form action="<?= GetCurUrl()?>" method="post" class="form-horizontal" role="form">
|
||||
<input type="hidden" name="is_add_page" value="1">
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-6">
|
||||
<?= $msg?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="inputName" class="col-lg-2 control-label">Название страницы</label>
|
||||
<div class="col-lg-6">
|
||||
<input type="text" class="form-control" id="inputName" autocomplete="on" name="name" value="<?= Post("name")?>" placeholder="Только маленькие латинские буквы и цифры">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-6">
|
||||
<button type="submit" class="btn btn-primary">Добавить</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
Reference in New Issue
Block a user