<?php

declare(strict_types=1);

use app\models\Search;
use app\models\Settings;

if (isset($history) && $history) {
    // Отображение истории

    if (yii::$app->user->isGuest) {
        // Не аутентифицирован

        // В будущем выводить историю из cookie

        echo <<<HTML
            <p class="m-0 py-2 d-flex justify-content-center">Войдите для просмотра истории поиска</p>
        HTML;
    } else if ($rows = Search::searchByEdge(
        from: 'account',
        to: 'search',
        sort: ['DESC'],
        where: ['search.type' => 'general']
    )) {
        // История поиска существует

        preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::searchActive()['timezone_default'] ?? 'UTC+3', $timezone);
        $timezone = $timezone[1][0];

        foreach ($rows as $row) {
            // Инициализация
            $time = $row->jrnl;
            $date = empty($time) ? '' : (new DateTime())->setTimestamp(end($time)['date'])->setTimezone(new DateTimeZone($timezone))->format('H:i d.m.Y');

            echo <<<HTML
                <a class="dropdown-item d-flex button_white text-dark" href="/search?type=product&q=$row->text">$row->text<span class="ml-auto">$date</span></a>
            HTML;
        }
    }
} else if (isset($response) && $response) {
    // Ответ получен

    foreach ($response as $row) {
        // Перебор найденных данных

        $catn = $row['catn'];
        $prod = $row['prod'];
        $_catn = urlencode($row['catn']);
        $_prod = urlencode($row['prod']);

        echo <<<HTML
            <a class="d-flex dropdown-item button_white text-dark" href="/product/$_prod/$_catn"><span class="col-auto pl-0">$catn</span><b class="col-auto ml-auto px-0 text-right">$prod</b></a>
        HTML;
    }
} else {
    echo <<<HTML
        <p class="m-0 py-2 d-flex justify-content-center">Ничего не найдено</p>
    HTML;
}
?>
