Файл: modules/blogs/add.php
Строк: 44
<?php
html::title('Добавить запись в блог');
acms_header();
access('users');
if (config('PRIVATE_BLOGS') == 0){
error('Модуль отключен администратором');
redirect('/');
}
if (post('ok_blogs')){
valid::create(array(
'BLOGS_NAME' => ['name', 'text', [2, 200], 'Название', 0],
'BLOGS_PASSWORD' => ['password', 'text', [0, 12], 'Пароль', 0],
'BLOGS_PRIVATE' => ['private', 'number', [0, 5], 'Приватность'],
'BLOGS_PRIVATE_COMMENTS' => ['private_comments', 'number', [0, 5], 'Приватность комментариев'],
'BLOGS_ID_CATEGORY' => ['id_cat', 'number', [0, 99999], 'Категория'],
'BLOGS_MESSAGE' => ['message', 'text', [10, 20000], 'Содержание', 0]
));
if (str(BLOGS_PASSWORD) > 0){
$private = 4;
$password2 = md5(BLOGS_PASSWORD);
}else{
$private = BLOGS_PRIVATE;
$password2 = null;
}
if (db::get_column("SELECT COUNT(*) FROM `BLOGS` WHERE `USER_ID` = ? AND `MESSAGE` = ? LIMIT 1", [user('ID'), BLOGS_MESSAGE]) == 1){
error('Запись с таким содержимым уже существует в вашем блоге');
redirect('/m/blogs/add/');
}
if (ERROR_LOG == 1){
redirect('/m/blogs/add/');
}
$ID = db::get_add("INSERT INTO `BLOGS` (`NAME`, `PRIVATE`, `PRIVATE_COMMENTS`, `USER_ID`, `ID_CATEGORY`, `PASSWORD`, `PASSWORD_SHOW`, `MESSAGE`, `TIME`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)", [BLOGS_NAME, $private, BLOGS_PRIVATE_COMMENTS, user('ID'), BLOGS_ID_CATEGORY, $password2, BLOGS_PASSWORD, BLOGS_MESSAGE, TM]);
if (db::get_column("SELECT COUNT(*) FROM `ATTACHMENTS` WHERE `TYPE_POST` = ? AND `ID_POST` = ? LIMIT 1", ['blogs', 0]) > 0){
db::get_set("UPDATE `ATTACHMENTS` SET `ID_POST` = ?, `ACT` = '1' WHERE `USER_ID` = ? AND `ACT` = '0' AND `TYPE_POST` = ?", [$ID, user('ID'), 'blogs']);
}
balls_add('BLOGS');
rating_add('BLOGS');
/*
------------------------------
Отправляем подписчикам в ленту
------------------------------
*/
if ($private == 0){
$data = db::get_string_all("SELECT `MY_ID` FROM `SUBSCRIBERS` WHERE `USER_ID` = ?", [user('ID')]);
while ($list = $data->fetch()){
db::get_add("INSERT INTO `TAPE` (`USER_ID`, `OBJECT_ID`, `OBJECT_ID_LIST`, `TIME`, `TYPE`) VALUES (?, ?, ?, ?, ?)", [$list['MY_ID'], $ID, user('ID'), TM, 'blogs']);
}
}
success('Запись успешно создана');
redirect('/m/blogs/show/?id='.$ID);
}
?>
<div class='list'>
<form method='post' class='ajax-form' action='/m/blogs/add/'>
<?
html::input('name', 'Название', null, null, null, 'form-control-100', 'text', null, 'book');
define('ACTION', '/m/blogs/add/');
define('TYPE', 'blogs');
define('ID', 0);
html::textarea(null, 'message', 'Введите содержимое', null, 'form-control-textarea', 9);
?><br /><br /><?
$array = array();
$array[0] = ['Без категории', 0];
$data = db::get_string_all("SELECT * FROM `BLOGS_CATEGORIES` ORDER BY `ID` DESC");
while ($list = $data->fetch()){
$array[$list['ID']] = [$list['NAME'], (0 == $list['ID'] ? "selected" : null)];
}
html::select('id_cat', $array, 'Категория', 'form-control-100-modify-select', 'folder-open');
html::input('password', 'Пароль (по желанию)', null, null, null, 'form-control-100', 'text', null, 'key');
html::select('private', array(
0 => ['Всем', 0],
1 => ['Мне и друзьям', 1],
2 => ['Только мне', 2]
), 'Доступ', 'form-control-100-modify-select', 'lock');
html::select('private_comments', array(
0 => ['Всем', 0],
1 => ['Мне и друзьям', 1],
2 => ['Только мне', 2]
), 'Комментирование', 'form-control-100-modify-select', 'comment');
html::button('button ajax-button', 'ok_blogs', 'plus', 'Добавить');
?>
<a class='button-o' href='/m/blogs/users/?id=<?=user('ID')?>'><?=lg('Отмена')?></a>
</form>
</div>
<?
back('/m/blogs/users/?id='.user('ID'));
acms_footer();