load news after creating

This commit is contained in:
themohooks 2024-07-21 17:28:10 +03:00
parent f887b1f0a9
commit f5d26107b8
4 changed files with 78 additions and 43 deletions

View file

@ -0,0 +1,20 @@
<?php
namespace App\Controllers\Api\Admin;
use App\Services\{Auth, Router, GenerateRandomStr, DB, Json, EXIF, Date};
use App\Models\{User, Vote, Photo};
class LoadNews
{
public function __construct()
{
$news = DB::query('SELECT * FROM news ORDER BY id');
foreach ($news as $n) {
echo '<div class="card mb-3"><div class="card-body">' . Date::zmdate($n['time']) . '<br>' . $n['body'] . '</div></div>';
}
}
}

View file

@ -17,6 +17,7 @@ use \App\Controllers\Api\Images\Comments\Rate as PhotoCommentVote;
use \App\Controllers\Api\Profile\Update as ProfileUpdate; use \App\Controllers\Api\Profile\Update as ProfileUpdate;
use \App\Controllers\Api\Admin\Images\SetVisibility as AdminPhotoSetVisibility; use \App\Controllers\Api\Admin\Images\SetVisibility as AdminPhotoSetVisibility;
use \App\Controllers\Api\Admin\CreateNews as AdminCreateNews; use \App\Controllers\Api\Admin\CreateNews as AdminCreateNews;
use \App\Controllers\Api\Admin\LoadNews as AdminLoadNews;
class ApiController class ApiController
{ {
@ -63,6 +64,9 @@ class ApiController
public static function admincreatenews() { public static function admincreatenews() {
return new AdminCreateNews(); return new AdminCreateNews();
} }
public static function adminloadnews() {
return new AdminLoadNews();
}
} }

View file

@ -56,6 +56,7 @@ class Routes
Router::any('/admin', 'AdminController@index'); Router::any('/admin', 'AdminController@index');
Router::any('/api/admin/images/setvisibility', 'ApiController@adminsetvis'); Router::any('/api/admin/images/setvisibility', 'ApiController@adminsetvis');
Router::any('/api/admin/createnews', 'ApiController@admincreatenews'); Router::any('/api/admin/createnews', 'ApiController@admincreatenews');
Router::any('/api/admin/loadnews', 'ApiController@adminloadnews');
} }
Router::get('/logout', 'MainController@logout'); Router::get('/logout', 'MainController@logout');
Router::get('/404', 'ExceptionRegister@notfound'); Router::get('/404', 'ExceptionRegister@notfound');

View file

@ -11,51 +11,61 @@ use \App\Models\User;
<a data-bs-toggle="modal" data-bs-target="#createNewsModal" href="#" class="btn btn-primary">Создать</a> <a data-bs-toggle="modal" data-bs-target="#createNewsModal" href="#" class="btn btn-primary">Создать</a>
<div class="modal fade" id="createNewsModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true"> <div class="modal fade" id="createNewsModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog"> <div class="modal-dialog">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h1 class="modal-title fs-5" id="exampleModalLabel"><b>Создать новость</b></h1> <h1 class="modal-title fs-5" id="exampleModalLabel"><b>Создать новость</b></h1>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<div class="mb-3"> <div class="mb-3">
<label for="body" class="form-label">Содержание</label> <label for="body" class="form-label">Содержание</label>
<textarea class="form-control" id="body" name="body" rows="3"></textarea> <textarea class="form-control" id="body" name="body" rows="3"></textarea>
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<a type="button" class="btn btn-secondary" data-bs-dismiss="modal">Отмена</a> <a type="button" class="btn btn-secondary" data-bs-dismiss="modal">Отмена</a>
<a href="#" onclick="createNews(); return false;" data-bs-dismiss="modal" class="btn btn-primary">Создать</a> <a href="#" onclick="createNews(); return false;" data-bs-dismiss="modal" class="btn btn-primary">Создать</a>
</div> </div>
</div>
</div> </div>
</div>
</div> </div>
<?php <div id="news">
$news = DB::query('SELECT * FROM news ORDER BY id'); <?php
foreach ($news as $n) { $news = DB::query('SELECT * FROM news ORDER BY id');
echo '<div class="card"><div class="card-body">'.Date::zmdate($n['time']).'<br>'.$n['body'].'</div></div>'; foreach ($news as $n) {
} echo '<div class="card mb-3"><div class="card-body">' . Date::zmdate($n['time']) . '<br>' . $n['body'] . '</div></div>';
?> }
?>
</div>
<script> <script>
function photoAction(photo_id, decline_reason, mod) { function createNews() {
$.ajax({ $.ajax({
type: "GET", type: "POST",
url: '/api/admin/createnews', url: '/api/admin/createnews',
data: { data: {
body: $('#body').val() body: $('#body').val()
}, },
success: function(response) { success: function(response) {
$('#pht'+photo_id).remove(); Notify.noty('success', 'OK!');
Notify.noty('success', 'OK!'); $.ajax({
//$("#result").html("<div class='alert alert-successnew container mt-5' role='alert'>Успешный вход!</div>"); type: "GET",
url: '/api/admin/loadnews',
success: function(response) {
$('#news').html(response);
} }
}); });
}
</script>
}
});
}
</script>