Создание поста
Метод API для создания поста; страница фронта и стили для него; новый тип ошибки при неудачной загрузке файла; фикс функции проверки строки на соответствие кодировке ASCII; фикс парсинга тегов; умное создание превью (проверка на случай, если превью получилось больше оригинала); исправление функции сохранения изображения; фикс функции создания поста, которая взаимодействует с БД; добавлена проверка корректности подписи к посту; добавление новых пунктов в навигацию; небольшое улучшение QoL в плане конфига.
This commit is contained in:
61
front/pages/new_post/page.php
Normal file
61
front/pages/new_post/page.php
Normal file
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
// Post creation page
|
||||
|
||||
|
||||
|
||||
// Includes
|
||||
require_once("api/post/create.php");
|
||||
require_once("front/pages/main_nav.php");
|
||||
require_once("front/notifications.php");
|
||||
|
||||
|
||||
|
||||
// Redirecting to main page if not logged in
|
||||
if (!$LOGGED_IN) {
|
||||
header("Location: .");
|
||||
exit();
|
||||
}
|
||||
|
||||
// Processing POST-request
|
||||
if (isset($_POST) && $_POST) {
|
||||
if (isset($_POST["tags"]) && $_POST["tags"] && isset($_FILES["pic"])) {
|
||||
if (isset($_POST["title"]) && !$_POST["title"])
|
||||
unset($_POST["title"]);
|
||||
|
||||
$result = Post_Create_Method($_POST, $_FILES);
|
||||
if ($result->IsError()) { // Something happened
|
||||
NTFY_AddNotice("Failed to create post! Reason:<br>" . $result->GetError());
|
||||
} /*else { // All OK
|
||||
header("Location: .");
|
||||
exit();
|
||||
} TODO: redirect to page with new post */
|
||||
} else {
|
||||
NTFY_AddNotice("You must supply image and tags for post");
|
||||
}
|
||||
}
|
||||
|
||||
NTFY_EchoAllNotices();
|
||||
|
||||
|
||||
|
||||
?>
|
||||
<div class="visualbox">
|
||||
<h1>New post</h1>
|
||||
<form class="basicform" action="./?do=new_post" accept-charset="UTF-8" method="post" enctype="multipart/form-data">
|
||||
<div>
|
||||
<label for="pic">Select image:</label><br>
|
||||
<input type="file" name="pic" id="pic">
|
||||
</div>
|
||||
<div>
|
||||
<label for="tags">Comma-separated tags list:</label><br>
|
||||
<textarea placeholder="tag_1, tag_2, tag_3, ..., tag_N" name="tags" id="tags" style="width: 98%;" rows="1"><?php if (isset($_POST["tags"])) { echo $_POST["tags"]; } ?></textarea>
|
||||
</div>
|
||||
<div>
|
||||
<label for="title">Post title:</label><br>
|
||||
<textarea placeholder="Lorem ipsum dolor sit amet..." name="title" id="title" style="width: 98%;" rows="2"><?php if (isset($_POST["title"]) && !$_POST["title"]) { echo $_POST["title"]; } ?></textarea>
|
||||
</div>
|
||||
<div>
|
||||
<input type="submit" value="Submit">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
Reference in New Issue
Block a user