Вход Регистрация
Файл: upload/core/ajax/work/load_more_comments.php
Строк: 50
<?php
require_once($_SERVER['DOCUMENT_ROOT'] . '/core/core.php');

header('Content-Type: application/json; charset=utf-8');

$id     intval($_POST['id'] ?? 0);
$offset intval($_POST['offset'] ?? 0);
$limit  20;

// Загружаем ВСЕ комментарии к ворку
$q dbquery("
    SELECT *
    FROM rating
    WHERE k_work = ?
    ORDER BY id DESC
"
, [$id]);

$filtered = [];

while (
$rt FetchAssoc($q)) {

    
// Загружаем автора комментария
    
$ank_rating FetchAssoc(dbquery("SELECT * FROM users WHERE id = ?", [$rt['us']]));

    
// Если пользователь удалён — пропускаем
    
if (!$ank_rating) continue;

    
$filtered[] = [
        
'rt' => $rt,
        
'ank_rating' => $ank_rating
    
];
}

$total count($filtered);

// Берём нужный кусок
$chunk array_slice($filtered$offset$limit);

// Собираем HTML
$html '';

foreach (
$chunk as $item) {
    
$rt $item['rt'];
    
$ank_rating $item['ank_rating'];

    
// Twig-компонент
    
$comment_box $view->render('components/comments/rating_box.html', [
        
'home' => homeLink(),
        
'user' => [
            
'avatar' => GetAvatar($ank_rating['avatar']),
            
'nick'   => nick($ank_rating['id'])
        ],
        
'rating' => [
            
'value'   => $rt['rating'],
            
'stars'   => rating_num_star_work($rt['rating']),
            
'comment' => $rt['k_comment'] ?? null
        
]
    ]);

    
$html .= $comment_box;
}

// Показывать ли кнопку "Показать ещё"
$show_more = ($offset $limit $total);

echo 
json_encode([
    
'html' => $html,
    
'show_more' => $show_more
], JSON_UNESCAPED_UNICODE);

exit;
?>
Онлайн: 5
Реклама