<?php
/**
 * نی نی بلاگ - صفحه نتایج جستجو
 */
if (!defined('__TYPECHO_ROOT_DIR__')) exit;

/**
 * گرفتن امن کلمه جستجو (سازگار با PHP 8+ و همه نسخه‌های Typecho)
 */
 $searchQuery = '';
if ($this->is('search')) {
    // روش اول: تابع getKeywords
    if (method_exists($this, 'getKeywords') && !empty($this->getKeywords())) {
        $searchQuery = $this->getKeywords();
    }
    // روش دوم: متغیر _keywords
    elseif (isset($this->_keywords) && !empty($this->_keywords)) {
        $searchQuery = (string)$this->_keywords;
    }
    // روش سوم: از درخواست URL
    elseif ($this->request->is('s')) {
        $searchQuery = $this->request->get('s');
    }
    // روش چهارم: مستقیم از GET
    elseif (!empty($_GET['s'])) {
        $searchQuery = htmlspecialchars($_GET['s'], ENT_QUOTES, 'UTF-8');
    }
}

 $totalResults = $this->getTotal();

 $this->need('header.php');
?>

<main class="archive-main full-width">

    <!-- سربرگ مدرن جستجو -->
    <div class="archive-header-modern">
        <div class="container">
            <div class="archive-header-card">
                <div class="archive-header-icon">
                    <i class="fa-solid fa-magnifying-glass"></i>
                </div>

                <div class="archive-header-info">
                    <h1 class="archive-header-title">نتایج جستجو</h1>

                    <!-- فرم جستجوی کوچک -->
                    <form action="<?php $this->options->siteUrl(); ?>" method="get" class="search-form-mini">
                        <input 
                            type="text" 
                            name="s" 
                            value="<?php echo htmlspecialchars($searchQuery, ENT_QUOTES, 'UTF-8'); ?>" 
                            placeholder="جستجوی دوباره..."
                        >
                        <button type="submit">
                            <i class="fa-solid fa-magnifying-glass"></i>
                        </button>
                    </form>

                    <div class="archive-header-meta">
                        <?php if ($totalResults > 0): ?>
                            <span>
                                <i class="fa-regular fa-circle-check"></i>
                                جستجوی «<?php echo htmlspecialchars($searchQuery, ENT_QUOTES, 'UTF-8'); ?>»
                            </span>
                            <span>
                                <i class="fa-regular fa-file-lines"></i>
                                <?php echo toPersianNumbers($totalResults); ?> نتیجه
                            </span>
                        <?php else: ?>
                            <span>
                                <i class="fa fa-exclamation-circle"></i>
                                هیچ نتیجه‌ای برای «<?php echo htmlspecialchars($searchQuery, ENT_QUOTES, 'UTF-8'); ?>» یافت نشد
                            </span>
                        <?php endif; ?>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <!-- نتایج جستجو -->
    <section class="archive-posts-section">
        <div class="container">

            <?php if ($this->have()): ?>
                <div class="posts-grid grid-2-cols">

                    <?php while($this->next()): ?>
                        <article class="blog-card">

                            <div class="blog-card-img">
                                <a href="<?php $this->permalink(); ?>">
                                    <img 
                                        src="<?php echo getPostImage($this); ?>" 
                                        alt="<?php $this->title(); ?>" 
                                        loading="lazy"
                                    >
                                </a>

                                <?php if ($this->categories): ?>
                                    <span class="blog-card-category">
                                        <?php $this->category(','); ?>
                                    </span>
                                <?php endif; ?>
                            </div>

                            <div class="blog-card-body">

                                <div class="blog-card-meta">
                                    <span>
                                        <i class="fa-regular fa-user"></i>
                                        <a href="<?php $this->author->permalink(); ?>">
                                            <?php $this->author(); ?>
                                        </a>
                                    </span>
                                    <span>
                                        <i class="fa-regular fa-calendar"></i>
                                        <?php echo getLocalizedDate($this->created); ?>
                                    </span>
                                    <span>
                                        <i class="fa-regular fa-comment"></i>
                                        <?php $this->commentsNum('۰', '۱', '%d'); ?>
                                    </span>
                                </div>

                                <h2 class="blog-card-title">
                                    <a href="<?php $this->permalink(); ?>">
                                        <?php
                                        // هایلایت کلمه جستجو در عنوان
                                        $title = $this->title;

                                        if (!empty($searchQuery)) {
                                            $words = explode(' ', $searchQuery);

                                            foreach ($words as $word) {
                                                $word = trim($word);
                                                if (mb_strlen($word) > 1) {
                                                    $title = preg_replace(
                                                        '/' . preg_quote($word, '/') . '/iu',
                                                        '<mark>$0</mark>',
                                                        $title
                                                    );
                                                }
                                            }
                                        }

                                        echo $title;
                                        ?>
                                    </a>
                                </h2>

                                <p class="blog-card-excerpt">
                                    <?php $this->excerpt(120, '...'); ?>
                                </p>

                                <a href="<?php $this->permalink(); ?>" class="read-more-btn">
                                    ادامه مطلب <i class="fa-solid fa-arrow-left"></i>
                                </a>

                            </div>
                        </article>
                    <?php endwhile; ?>

                </div>

                <!-- صفحه‌بندی -->
                <nav class="archive-pagination">
                    <?php $this->pageNav(
                        '<i class="fa-solid fa-chevron-right"></i>',
                        '<i class="fa-solid fa-chevron-left"></i>',
                        2,
                        '...',
                        array(
                            'wrapTag' => 'ul',
                            'wrapClass' => 'page-navigator',
                            'itemTag' => 'li',
                            'textTag' => 'span',
                            'currentClass' => 'current',
                            'prevClass' => 'prev',
                            'nextClass' => 'next'
                        )
                    ); ?>
                </nav>

            <?php else: ?>

                <!-- حالت بدون نتیجه -->
                <div class="no-results-block">
                    <div class="no-results-icon">
                        <i class="fa-regular fa-face-frown"></i>
                    </div>

                    <h3>متاسفیم! نتیجه‌ای یافت نشد</h3>
                    <p>
                        ما نتوانستیم هیچ مقاله‌ای با عبارت
                        «<?php echo htmlspecialchars($searchQuery, ENT_QUOTES, 'UTF-8'); ?>»
                        پیدا کنیم.
                    </p>

                    <div class="search-suggestions">
                        <h4>پیشنهادات:</h4>
                        <ul>
                            <li>از کلمات کلیدی عمومی‌تر استفاده کنید</li>
                            <li>املای کلمات را بررسی کنید</li>
                            <li>از کلمات کمتر استفاده کنید</li>
                        </ul>
                    </div>

                    <a href="<?php $this->options->siteUrl(); ?>" class="btn-primary">
                        <i class="fa-solid fa-house"></i> صفحه اصلی
                    </a>
                </div>

            <?php endif; ?>

        </div>
    </section>
</main>

<?php $this->need('footer.php'); ?>
