39496-vm/catalog.php
2026-04-07 17:29:38 +00:00

53 lines
3.4 KiB
PHP

<?php
require_once __DIR__ . '/includes/app.php';
$subjects = subjects_catalog();
render_head(
t('Subject catalog', 'كتالوج المواد'),
t('Browse the bilingual subject catalog, teachers, live sessions, and classroom details.', 'تصفح كتالوج المواد والمعلمين والجلسات المباشرة وتفاصيل الفصول باللغتين.')
);
render_nav('catalog.php');
?>
<main class="py-5">
<div class="container">
<div class="section-header mb-4">
<div>
<h1 class="section-title mb-2"><?= h(t('Explore subjects and live cohorts', 'استكشف المواد والمجموعات المباشرة')) ?></h1>
<p class="text-secondary mb-0"><?= h(t('Filter the catalog, review teachers, and open a subject detail page with modules and Meet access.', 'قم بتصفية الكتالوج ومراجعة المعلمين وفتح صفحة تفاصيل المادة مع الوحدات والوصول إلى Meet.')) ?></p>
</div>
<div class="catalog-search-wrap">
<label class="form-label small text-secondary mb-1" for="subject-search"><?= h(t('Quick filter', 'تصفية سريعة')) ?></label>
<input id="subject-search" class="form-control" type="search" placeholder="<?= h(t('Search subject or teacher', 'ابحث عن مادة أو معلم')) ?>" data-subject-search>
</div>
</div>
<div class="row g-3" id="subject-grid">
<?php foreach ($subjects as $subject): ?>
<div class="col-lg-6 subject-grid-item" data-filter-text="<?= h(strtolower($subject['title_en'] . ' ' . $subject['title_ar'] . ' ' . $subject['teacher_en'] . ' ' . $subject['teacher_ar'])) ?>">
<article class="subject-card h-100">
<div class="d-flex flex-wrap justify-content-between gap-2 align-items-start mb-3">
<div>
<span class="mini-tag mb-2 d-inline-flex"><?= h(subject_level($subject)) ?></span>
<h2 class="h5 mb-1"><?= h(subject_title($subject)) ?></h2>
<p class="small text-secondary mb-0"><?= h(subject_teacher($subject)) ?></p>
</div>
<span class="small text-secondary"><?= h(subject_duration($subject)) ?></span>
</div>
<p class="text-secondary mb-4"><?= h(subject_summary($subject)) ?></p>
<div class="subject-meta-grid mb-4">
<div><strong><?= h(t('Next live', 'الجلسة القادمة')) ?></strong><span><?= h(subject_next_live($subject)) ?></span></div>
<div><strong><?= h(t('Format', 'النوع')) ?></strong><span><?= h(t('Live + self-paced', 'مباشر + ذاتي')) ?></span></div>
</div>
<a class="btn btn-outline-dark" href="<?= h(app_url('subject.php', ['slug' => $subject['slug']])) ?>"><?= h(t('Open details', 'افتح التفاصيل')) ?></a>
</article>
</div>
<?php endforeach; ?>
</div>
<div class="empty-filter-state d-none" data-empty-state>
<div class="panel-card text-center mt-4">
<h2 class="h5 mb-2"><?= h(t('No subject matched your filter', 'لا توجد مادة تطابق التصفية')) ?></h2>
<p class="text-secondary mb-0"><?= h(t('Try a teacher name or a broader term like English, STEM, or Arabic.', 'جرّب اسم معلم أو مصطلحاً أوسع مثل الإنجليزية أو STEM أو العربية.')) ?></p>
</div>
</div>
</div>
</main>
<?php render_footer(); ?>