DEV: Изменения в Route
This commit is contained in:
parent
4ad067cc3c
commit
fcfb3e3410
25 changed files with 88 additions and 254 deletions
|
@ -133,7 +133,10 @@ class ActionController extends Controller
|
|||
|
||||
$type = Request::get('type');
|
||||
|
||||
$this->limitContentDay($type);
|
||||
// TODO: Изменим поля в DB для:
|
||||
if (!in_array($type, ['message', 'item'])) {
|
||||
$this->limitContentDay($type);
|
||||
}
|
||||
|
||||
if (in_array($type, ['post', 'page'])) {
|
||||
return (new Post\AddPostController)->create($type);
|
||||
|
@ -171,7 +174,7 @@ class ActionController extends Controller
|
|||
return (new \Modules\Catalog\App\Reply)->create($type);
|
||||
}
|
||||
|
||||
if ($type === 'web') {
|
||||
if ($type === 'item') {
|
||||
return (new \Modules\Catalog\App\Add)->create($type);
|
||||
}
|
||||
|
||||
|
@ -227,17 +230,13 @@ class ActionController extends Controller
|
|||
}
|
||||
}
|
||||
|
||||
// Лимит: за сутки для всех TL и лимит за день
|
||||
public function limitContentDay($type)
|
||||
{
|
||||
if (UserData::checkAdmin()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// TODO: Изменим поля в DB для:
|
||||
if ($type == 'message') {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Лимит за день для ВСЕХ уровней доверия
|
||||
$сount = ActionModel::getSpeedDay($this->user['id'], $type);
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ class AddFacetController extends Controller
|
|||
// Add form topic | blog | category
|
||||
public function index($type)
|
||||
{
|
||||
if (Access::limitFacet($facet_type) == false) {
|
||||
if (Access::limit($facet_type) == false) {
|
||||
redirect('/');
|
||||
}
|
||||
|
||||
|
@ -30,7 +30,7 @@ class AddFacetController extends Controller
|
|||
// Add topic | blog | category
|
||||
public function create($facet_type)
|
||||
{
|
||||
if (Access::limitFacet($facet_type) == false) {
|
||||
if (Access::limit($facet_type) == false) {
|
||||
return json_encode(['error' => 'redirect', 'text' => __('msg.went_wrong')]);
|
||||
}
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@ class AllFacetController extends Controller
|
|||
'facets' => $facets,
|
||||
'pagesCount' => ceil($pagesCount / $this->limit),
|
||||
'pNum' => $this->pageNumber,
|
||||
'access' => Access::limitFacet($type),
|
||||
'access' => Access::limit($type),
|
||||
]
|
||||
]
|
||||
);
|
||||
|
|
|
@ -14,7 +14,7 @@ class SettingController extends Controller
|
|||
{
|
||||
function index()
|
||||
{
|
||||
switch (Request::get('type')) {
|
||||
switch (Request::get('type')) {
|
||||
case 'avatar':
|
||||
return $this->avatarForm();
|
||||
break;
|
||||
|
@ -24,9 +24,31 @@ class SettingController extends Controller
|
|||
case 'notifications':
|
||||
return $this->notificationForm();
|
||||
break;
|
||||
case 'cover_remove':
|
||||
return $this->coverRemove();
|
||||
break;
|
||||
default:
|
||||
return $this->settingForm();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function change()
|
||||
{
|
||||
switch (Request::get('type')) {
|
||||
case 'avatar':
|
||||
return $this->avatarEdit();
|
||||
break;
|
||||
case 'security':
|
||||
return $this->securityEdit();
|
||||
break;
|
||||
case 'notification':
|
||||
return $this->notificationEdit();
|
||||
break;
|
||||
default:
|
||||
return $this->edit();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -106,7 +128,7 @@ class SettingController extends Controller
|
|||
return $this->render(
|
||||
'/user/setting/avatar',
|
||||
[
|
||||
'meta' => Meta::get(__('app.edit')),
|
||||
'meta' => Meta::get(__('app.avatar')),
|
||||
'data' => [
|
||||
'sheet' => 'avatar',
|
||||
'type' => 'user',
|
||||
|
@ -140,7 +162,7 @@ class SettingController extends Controller
|
|||
return $this->render(
|
||||
'/user/setting/security',
|
||||
[
|
||||
'meta' => Meta::get(__('app.edit_option', ['name' => __('app.password')])),
|
||||
'meta' => Meta::get(__('app.security')),
|
||||
'data' => [
|
||||
'password' => '',
|
||||
'password2' => '',
|
||||
|
|
|
@ -30,7 +30,7 @@ class Access
|
|||
|
||||
// Добавление тем и блогов
|
||||
// $type_content: topic | blog
|
||||
public static function limitFacet($type_content)
|
||||
public static function limit($type_content)
|
||||
{
|
||||
if (UserData::checkAdmin()) {
|
||||
return true;
|
||||
|
@ -54,7 +54,7 @@ class Access
|
|||
// TL автора и разрешенный TL
|
||||
public static function limitTl($allowed_tl)
|
||||
{
|
||||
if ($allowed_tl == true) {
|
||||
if ($allowed_tl === true) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,103 +0,0 @@
|
|||
<?php
|
||||
/*
|
||||
* Search engine setup
|
||||
* Настройка поисковой системы
|
||||
*/
|
||||
|
||||
use Modules\Search\App\Tokenizers\AlphaNumericTokenizer;
|
||||
use Modules\Search\App\Tokenizers\DateFormatTokenizer;
|
||||
use Modules\Search\App\Tokenizers\DateSplitTokenizer;
|
||||
use Modules\Search\App\Tokenizers\LowerCaseTokenizer;
|
||||
use Modules\Search\App\Tokenizers\RemoveAccentsTokenizer;
|
||||
use Modules\Search\App\Tokenizers\singleQuoteTokenizer;
|
||||
use Modules\Search\App\Tokenizers\WhiteSpaceTokenizer;
|
||||
|
||||
// Commented example for Romanian
|
||||
// Please note that if uncommented, then these classes should be added below
|
||||
// use Modules\Search\App\Tokenizers\RomanianStopWordsTokenizer;
|
||||
// use Modules\Search\App\Tokenizers\RomanianStemmingTokenizer;
|
||||
|
||||
// For English
|
||||
use Modules\Search\App\Tokenizers\EnglishStemmingTokenizer;
|
||||
use Modules\Search\App\Tokenizers\EnglishStopWordsTokenizer;
|
||||
|
||||
// Для русского языка
|
||||
use Modules\Search\App\Tokenizers\RussianStemmingTokenizer;
|
||||
use Modules\Search\App\Tokenizers\RussianStopWordsTokenizer;
|
||||
|
||||
return [
|
||||
'config' => [
|
||||
'var_dir' => HLEB_GLOBAL_DIRECTORY . DIRECTORY_SEPARATOR . 'storage/var',
|
||||
'index_dir' => DIRECTORY_SEPARATOR . 'engine' . DIRECTORY_SEPARATOR . 'index',
|
||||
'documents_dir' => DIRECTORY_SEPARATOR . 'engine' . DIRECTORY_SEPARATOR . 'documents',
|
||||
'cache_dir' => DIRECTORY_SEPARATOR . 'engine' . DIRECTORY_SEPARATOR . 'cache',
|
||||
'fuzzy_cost' => 1,
|
||||
'approximate_limit' => 5,
|
||||
'connex' => [
|
||||
'threshold' => 0.9,
|
||||
'min' => 3,
|
||||
'max' => 10,
|
||||
'limitToken' => 20,
|
||||
'limitDocs' => 10
|
||||
],
|
||||
'serializableObjects' => [
|
||||
|
||||
DateTime::class => function ($datetime) {
|
||||
/** @var DateTime $datetime */ return $datetime->getTimestamp();
|
||||
}
|
||||
]
|
||||
],
|
||||
'schemas' => [
|
||||
'example-url' => [
|
||||
'title' => [
|
||||
'_type' => 'string',
|
||||
'_indexed' => true,
|
||||
'_boost' => 10
|
||||
],
|
||||
'content' => [
|
||||
'_type' => 'text',
|
||||
'_indexed' => true,
|
||||
'_boost' => 0.5
|
||||
],
|
||||
'url' => [
|
||||
'_type' => 'string',
|
||||
'_indexed' => true,
|
||||
'_boost' => 6
|
||||
],
|
||||
'domain' => [
|
||||
'_type' => 'string',
|
||||
'_indexed' => true,
|
||||
'_boost' => 0.5
|
||||
],
|
||||
'cat' => [
|
||||
'_type' => 'list',
|
||||
'_type.' => 'string',
|
||||
'_indexed' => true,
|
||||
'_filterable' => true,
|
||||
'_boost' => 6
|
||||
],
|
||||
|
||||
]
|
||||
],
|
||||
'types' => [
|
||||
'datetime' => [
|
||||
DateFormatTokenizer::class,
|
||||
DateSplitTokenizer::class
|
||||
],
|
||||
'_default' => [
|
||||
RemoveAccentsTokenizer::class,
|
||||
LowerCaseTokenizer::class,
|
||||
WhiteSpaceTokenizer::class,
|
||||
singleQuoteTokenizer::class,
|
||||
AlphaNumericTokenizer::class,
|
||||
|
||||
// For English
|
||||
EnglishStemmingTokenizer::class,
|
||||
EnglishStopWordsTokenizer::class,
|
||||
|
||||
// Для русского языка
|
||||
RussianStemmingTokenizer::class,
|
||||
RussianStopWordsTokenizer::class,
|
||||
]
|
||||
]
|
||||
];
|
|
@ -5,7 +5,8 @@ namespace Modules\Catalog\App;
|
|||
use Hleb\Constructor\Handlers\Request;
|
||||
use Modules\Catalog\App\Models\WebModel;
|
||||
use App\Models\{SubscriptionModel, ActionModel, FacetModel, NotificationModel};
|
||||
use UserData, Meta, Validation;
|
||||
use Utopia\Domains\Domain;
|
||||
use UserData, Meta, Validation, Access;
|
||||
|
||||
class Add
|
||||
{
|
||||
|
@ -22,7 +23,9 @@ class Add
|
|||
{
|
||||
// Access rights by the trust level of the participant
|
||||
// Права доступа по уровню доверия участника
|
||||
(new \Modules\Catalog\App\Checks())->limit();
|
||||
if (Access::limitTl(config('trust-levels.tl_add_item')) == false) {
|
||||
redirect(url('web'));
|
||||
}
|
||||
|
||||
// Plugin for selecting facets
|
||||
Request::getResources()->addBottomStyles('/assets/js/tag/tagify.css');
|
||||
|
@ -51,17 +54,19 @@ class Add
|
|||
|
||||
// Access rights by the trust level of the participant
|
||||
// Права доступа по уровню доверия участника
|
||||
(new \Modules\Catalog\App\Checks())->limit();
|
||||
if (Access::limitTl(config('trust-levels.tl_add_item')) == false) {
|
||||
return json_encode(['error' => 'redirect', 'text' => __('msg.went_wrong')]);
|
||||
}
|
||||
|
||||
// Check if the domain exists in the system
|
||||
// Проверим наличие домена в системе
|
||||
if ($domain = (new \Modules\Catalog\App\Checks())->getDomain(Request::getPost('url'))) {
|
||||
if ($domain = self::getDomain(Request::getPost('url'))) {
|
||||
return json_encode(['error' => 'error', 'text' => __('web.site_replay')]);
|
||||
}
|
||||
|
||||
// Get a first level domain
|
||||
// Получим данные домена первого уровня
|
||||
$basic_host = (new \Modules\Catalog\App\Checks())->domain(Request::getPost('url'));
|
||||
$basic_host = self::domain(Request::getPost('url'));
|
||||
|
||||
// Check the length of the site name
|
||||
// Проверим длину названия сайта
|
||||
|
@ -138,4 +143,19 @@ class Add
|
|||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static function getDomain($url)
|
||||
{
|
||||
$basic_host = self::domain($url);
|
||||
|
||||
return WebModel::getItemOne($basic_host, 1);
|
||||
}
|
||||
|
||||
public static function domain($url)
|
||||
{
|
||||
$parse = parse_url($url);
|
||||
$domain = new Domain($parse['host']);
|
||||
|
||||
return $domain->getRegisterable();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,96 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace Modules\Catalog\App;
|
||||
|
||||
use Modules\Catalog\App\Models\{WebModel, UserAreaModel};
|
||||
use Utopia\Domains\Domain;
|
||||
use UserData, Html;
|
||||
|
||||
class Checks
|
||||
{
|
||||
public const USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0';
|
||||
|
||||
private $user;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->user = UserData::get();
|
||||
}
|
||||
|
||||
public static function length($content, $min, $max)
|
||||
{
|
||||
if (Html::getStrlen($content) < $min || Html::getStrlen($content) > $max) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static function getDomain($url)
|
||||
{
|
||||
$basic_host = self::domain($url);
|
||||
|
||||
return WebModel::getItemOne($basic_host, 1);
|
||||
}
|
||||
|
||||
public static function domain($url)
|
||||
{
|
||||
$parse = parse_url($url);
|
||||
$domain = new Domain($parse['host']);
|
||||
|
||||
return $domain->getRegisterable();
|
||||
}
|
||||
|
||||
public function limit()
|
||||
{
|
||||
$count = UserAreaModel::getUserSitesCount($this->user['id']);
|
||||
|
||||
$count_add = UserData::checkAdmin() ? 999 : config('trust-levels.count_add_site');
|
||||
|
||||
$in_total = $count_add - $count;
|
||||
|
||||
self::trustLevel($this->user['trust_level'], config('trust-levels.tl_add_site'), $count, $count_add);
|
||||
|
||||
if (!$in_total > 0) {
|
||||
redirect(url('web'));
|
||||
}
|
||||
|
||||
return $in_total;
|
||||
}
|
||||
|
||||
public static function trustLevel($trust_level, $allowed_tl, $count_content, $count_total)
|
||||
{
|
||||
if ($trust_level < $allowed_tl) {
|
||||
redirect('/');
|
||||
}
|
||||
|
||||
if ($count_content >= $count_total) {
|
||||
redirect('/');
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
public static function checkStatus(string $url)
|
||||
{
|
||||
$ch = curl_init();
|
||||
curl_setopt($ch, CURLOPT_URL, $url);
|
||||
curl_setopt($ch, CURLOPT_USERAGENT, self::USER_AGENT);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_VERBOSE, false);
|
||||
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
|
||||
curl_setopt($ch, CURLOPT_SSLVERSION, 3);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
|
||||
$page = curl_exec($ch);
|
||||
|
||||
$err = curl_error($ch);
|
||||
if (!empty($err))
|
||||
return $err;
|
||||
|
||||
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
|
||||
curl_close($ch);
|
||||
return $httpcode;
|
||||
}
|
||||
}
|
|
@ -6,7 +6,7 @@ use Hleb\Constructor\Handlers\Request;
|
|||
use Modules\Catalog\App\Models\WebModel;
|
||||
use App\Models\{FacetModel, PostModel, NotificationModel};
|
||||
use App\Models\User\UserModel;
|
||||
use Validation, UserData, Meta, Html, Access;
|
||||
use Validation, UserData, Meta, Access;
|
||||
|
||||
class Edit
|
||||
{
|
||||
|
@ -28,7 +28,7 @@ class Edit
|
|||
if (Access::author('item', $domain['item_user_id'], $domain['item_date'], 0) === true) {
|
||||
redirect(url('web'));
|
||||
}
|
||||
|
||||
|
||||
Request::getResources()->addBottomStyles('/assets/js/tag/tagify.css');
|
||||
Request::getResources()->addBottomScript('/assets/js/tag/tagify.min.js');
|
||||
Request::getResources()->addBottomScript('/assets/js/admin.js');
|
||||
|
@ -56,16 +56,15 @@ class Edit
|
|||
|
||||
public function edit()
|
||||
{
|
||||
// Only the site author and staff can edit
|
||||
// Редактировать может только автор сайта и персонал
|
||||
if (Access::author('item', $domain['item_user_id'], $domain['item_date'], 0) === true) {
|
||||
$data = Request::getPost();
|
||||
|
||||
if (!$item = WebModel::getItemId($data['item_id'])) {
|
||||
return true;
|
||||
}
|
||||
|
||||
$data = Request::getPost();
|
||||
|
||||
//$item_id = Request::getPostInt('item_id');
|
||||
if (!$item = WebModel::getItemId($data['item_id'])) {
|
||||
|
||||
// Only the site author and staff can edit
|
||||
// Редактировать может только автор сайта и персонал
|
||||
if (Access::author('item', $item['item_user_id'], $item['item_date'], 0) === true) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -58,9 +58,6 @@ class Reply
|
|||
redirect('/');
|
||||
}
|
||||
|
||||
// If the user is frozen
|
||||
(new \App\Controllers\AuditController())->stopContentQuietМode($this->user['limiting_mode']);
|
||||
|
||||
$redirect = url('website', ['slug' => $item['item_domain']]) . '#reply_' . $reply['reply_id'];
|
||||
|
||||
ReplyModel::edit(
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
<fieldset>
|
||||
<label for="content"><?= __('web.description'); ?> <strong class="red">*</strong></label>
|
||||
<textarea id="content" name="content" required=""></textarea>
|
||||
<textarea id="content" name="content" rows="5" required=""></textarea>
|
||||
<div class="help">> 24 <?= __('app.characters'); ?></div>
|
||||
</fieldset>
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
<fieldset>
|
||||
<label for="content"><?= __('web.description'); ?> <strong class="red">*</strong></label>
|
||||
<textarea id="content" name="content" required=""><?= $domain['item_content']; ?></textarea>
|
||||
<textarea id="content" name="content" rows="5" required=""><?= $domain['item_content']; ?></textarea>
|
||||
<div class="help">> 24 <?= __('app.characters'); ?></div>
|
||||
</fieldset>
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
</a>
|
||||
</li>
|
||||
|
||||
<?php if (UserData::getRegType(config('trust-levels.tl_add_item'))) : ?>
|
||||
<?php if (Access::limitTl(config('trust-levels.tl_add_item'))) : ?>
|
||||
<?php if (config('trust-levels.count_add_item') > $data['user_count_site']) : ?>
|
||||
<li>
|
||||
<a href="<?= url('web.add'); ?>">
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
<?= insert(
|
||||
'/_block/form/ajax',
|
||||
[
|
||||
'url' => url('content.create', ['type' => 'web']),
|
||||
'url' => url('content.create', ['type' => 'item']),
|
||||
'redirect' => UserData::checkAdmin() ? url('web') : url('web.user.sites'),
|
||||
'success' => __('msg.successfully'),
|
||||
'id' => 'form#addWebsite'
|
||||
|
|
|
@ -65,7 +65,7 @@ $domain = $data['domain'];
|
|||
<?= insert(
|
||||
'/_block/form/ajax',
|
||||
[
|
||||
'url' => url('content.change', ['type' => 'web']),
|
||||
'url' => url('content.change', ['type' => 'item']),
|
||||
'redirect' => UserData::checkAdmin() ? url('web') : url('web.user.sites'),
|
||||
'success' => __('msg.successfully'),
|
||||
'id' => 'form#editWebsite'
|
||||
|
|
|
@ -66,7 +66,7 @@ $item = $data['item'];
|
|||
</div>
|
||||
|
||||
<?php if ($item['item_close_replies'] == 0) : ?>
|
||||
<?php if (UserData::getRegType(config('trust-levels.tl_add_reply'))) : ?>
|
||||
<?php if (Access::limitTl(config('trust-levels.tl_add_reply'))) : ?>
|
||||
<form class="max-w780" action="<?= url('content.create', ['type' => 'reply']); ?>" accept-charset="UTF-8" method="post">
|
||||
<?= csrf_field() ?>
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<?= insert('/content/user/setting/nav', ['data' => $data]); ?>
|
||||
|
||||
<div class="box">
|
||||
<form method="POST" action="<?= url('setting.avatar.edit'); ?>" enctype="multipart/form-data">
|
||||
<form method="POST" action="<?= url('setting.change', ['type' => 'avatar']); ?>" enctype="multipart/form-data">
|
||||
<?= csrf_field() ?>
|
||||
|
||||
<div class="file-upload mb10" id="file-drag">
|
||||
|
@ -29,7 +29,7 @@
|
|||
<?php if ($data['user']['cover_art'] != 'cover_art.jpeg') : ?>
|
||||
<div class="relative mr15">
|
||||
<img class="block br-gray max-w-100" src="<?= Html::coverUrl($data['user']['cover_art'], 'user'); ?>">
|
||||
<a class="right text-sm" href="<?= url('delete.cover', ['login' => $data['user']['login']]); ?>">
|
||||
<a class="right text-sm" href="<?= url('setting', ['type' => 'cover_remove']); ?>">
|
||||
<?= __('app.remove'); ?>
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<?= insert(
|
||||
'/_block/form/ajax',
|
||||
[
|
||||
'url' => url('setting.notif.edit'),
|
||||
'url' => url('setting.change', ['type' => 'notification']),
|
||||
'redirect' => url('setting', ['type' => 'notifications']),
|
||||
'success' => __('msg.password_changed'),
|
||||
'id' => 'form#notif'
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<?= insert(
|
||||
'/_block/form/ajax',
|
||||
[
|
||||
'url' => url('setting.security.edit'),
|
||||
'url' => url('setting.change', ['type' => 'security']),
|
||||
'redirect' => url('setting', ['type' => 'security']),
|
||||
'success' => __('msg.successfully'),
|
||||
'id' => 'form#security'
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<?= insert(
|
||||
'/_block/form/ajax',
|
||||
[
|
||||
'url' => url('setting.edit'),
|
||||
'url' => url('setting.change', ['type' => 'setting']),
|
||||
'redirect' => url('setting'),
|
||||
'success' => __('msg.change_saved'),
|
||||
'id' => 'form#setting'
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<?= insert('/content/user/setting/nav', ['data' => $data]); ?>
|
||||
|
||||
<div class="bg-white box">
|
||||
<form method="POST" action="<?= url('setting.avatar.edit'); ?>" enctype="multipart/form-data">
|
||||
<form method="POST" action="<?= url('setting.change', ['type' => 'avatar']); ?>" enctype="multipart/form-data">
|
||||
<?= csrf_field() ?>
|
||||
|
||||
<div class="file-upload mb10" id="file-drag">
|
||||
|
@ -29,7 +29,7 @@
|
|||
<?php if ($data['user']['cover_art'] != 'cover_art.jpeg') : ?>
|
||||
<div class="relative mr15">
|
||||
<img class="block br-gray max-w-100" src="<?= Html::coverUrl($data['user']['cover_art'], 'user'); ?>">
|
||||
<a class="right text-sm" href="<?= url('delete.cover', ['login' => $data['user']['login']]); ?>">
|
||||
<a class="right text-sm" href="<?= url('setting', ['type' => 'cover_remove']); ?>">
|
||||
<?= __('app.remove'); ?>
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<?= insert(
|
||||
'/_block/form/ajax',
|
||||
[
|
||||
'url' => url('setting.notif.edit'),
|
||||
'url' => url('setting.change', ['type' => 'notification']),
|
||||
'redirect' => url('setting', ['type' => 'notifications']),
|
||||
'success' => __('msg.password_changed'),
|
||||
'id' => 'form#notif'
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<?= insert(
|
||||
'/_block/form/ajax',
|
||||
[
|
||||
'url' => url('setting.security.edit'),
|
||||
'url' => url('setting.change', ['type' => 'security']),
|
||||
'redirect' => url('setting', ['type' => 'security']),
|
||||
'success' => __('msg.password_changed'),
|
||||
'id' => 'form#security'
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<?= insert(
|
||||
'/_block/form/ajax',
|
||||
[
|
||||
'url' => url('setting.edit'),
|
||||
'url' => url('setting.change', ['type' => 'setting']),
|
||||
'redirect' => url('setting', ['type' => 'security']),
|
||||
'success' => __('msg.password_changed'),
|
||||
'id' => 'form#setting'
|
||||
|
|
|
@ -14,10 +14,7 @@ Route::before('Designator', [UserData::USER_FIRST_LEVEL, '>='])->getGroup();
|
|||
Route::get('/search/{type}')->controller('ActionController@select')->where(['type' => '[a-z]+']);
|
||||
|
||||
Route::getProtect();
|
||||
Route::get('/users/setting/edit')->controller('User\SettingController@edit')->name('setting.edit');
|
||||
Route::get('/users/setting/avatar/edit')->controller('User\SettingController@avatarEdit')->name('setting.avatar.edit');
|
||||
Route::get('/users/setting/security/edit')->controller('User\SettingController@securityEdit')->name('setting.security.edit');
|
||||
Route::get('/users/setting/notification/edit')->controller('User\SettingController@notificationEdit')->name('setting.notif.edit');
|
||||
Route::get('/user/edit/{type}')->controller('User\SettingController@change')->where(['type' => '[a-z]+'])->name('setting.change');
|
||||
// Отправка / изменение контента
|
||||
Route::get('/create/{type}')->controller('ActionController@create')->name('content.create');
|
||||
Route::get('/change/{type}')->controller('ActionController@change')->name('content.change');
|
||||
|
@ -36,7 +33,6 @@ Route::before('Designator', [UserData::USER_FIRST_LEVEL, '>='])->getGroup();
|
|||
Route::get('/add/post/{topic_id}')->controller('Post\AddPostController', ['post'])->where(['topic_id' => '[0-9]+']);
|
||||
|
||||
Route::get('/post/img/{id}/remove')->controller('Post\EditPostController@imgPostRemove')->where(['id' => '[0-9]+']);
|
||||
Route::get('/@{login}/delete/cover')->controller('User\SettingController@coverRemove')->where(['login' => '[A-Za-z0-9]+'])->name('delete.cover');
|
||||
|
||||
Route::get('/web/bookmarks')->module('catalog', 'App\UserArea@bookmarks')->name('web.bookmarks');
|
||||
Route::get('/web/my/{page?}')->module('catalog', 'App\UserArea')->name('web.user.sites');
|
||||
|
@ -46,7 +42,7 @@ Route::before('Designator', [UserData::USER_FIRST_LEVEL, '>='])->getGroup();
|
|||
Route::get('/team/edit/{id}')->module('teams', 'App\Edit')->where(['id' => '[0-9]+'])->name('team.edit');
|
||||
Route::get('/team/view/{id}')->module('teams', 'App\Teams@view')->where(['id' => '[0-9]+'])->name('team.view');
|
||||
|
||||
Route::get('/setting/{type?}')->controller('User\SettingController')->where(['section' => '[a-z]+'])->name('setting');
|
||||
Route::get('/setting/{type?}')->controller('User\SettingController')->where(['type' => '[a-z_]+'])->name('setting');
|
||||
|
||||
Route::get('/messages')->controller('MessagesController')->name('messages');
|
||||
Route::get('/messages/{id}')->controller('MessagesController@dialog')->where(['id' => '[0-9]+'])->name('dialogues');
|
||||
|
|
Loading…
Reference in a new issue