<?php
require __DIR__ . '/helpers.php';

$lang = (isset($_GET['lang']) && strtolower($_GET['lang']) === 'de') ? 'de' : 'en';
$copy = [
    'en' => [
        'home' => 'Home',
        'latest' => 'Latest',
        'basics' => 'Basics',
        'not_found' => 'Recipe not found',
        'not_found_sub' => 'Try searching for something else.',
        'back_home' => '← Back to all recipes',
        'ingredients' => 'Ingredients',
        'utensils' => 'Utensils',
        'steps' => 'Steps',
        'also_tasty' => 'Also tasty',
        'more_dishes' => 'More dishes to keep you cooking.',
        'prep' => 'Prep',
        'cook' => 'Cook',
        'total' => 'Total',
        'serves' => 'Serves',
        'level' => 'Level',
    ],
    'de' => [
        'home' => 'Start',
        'latest' => 'Neueste',
        'basics' => 'Basics',
        'not_found' => 'Rezept nicht gefunden',
        'not_found_sub' => 'Versuche eine andere Suche.',
        'back_home' => '← Zurück zu allen Rezepten',
        'ingredients' => 'Zutaten',
        'utensils' => 'Küchenwerkzeug',
        'steps' => 'Schritte',
        'also_tasty' => 'Auch lecker',
        'more_dishes' => 'Noch mehr zum Nachkochen.',
        'prep' => 'Vorbereitung',
        'cook' => 'Garen',
        'total' => 'Gesamt',
        'serves' => 'Portionen',
        'level' => 'Level',
    ],
];
$t = $copy[$lang];

$allRecipes = load_recipes();
$slug = isset($_GET['slug']) ? trim($_GET['slug']) : '';
$recipeRaw = $slug ? find_recipe_by_slug($allRecipes, $slug) : null;
$recipe = $recipeRaw ? localize_recipe($recipeRaw, $lang) : null;
$allRecipesLocalized = localize_recipes($allRecipes, $lang);

$langSwitchLabel = $lang === 'de' ? 'EN' : 'DE';
$langSwitchHref = lang_url($lang === 'de' ? 'en' : 'de');
$navHome = $t['home'];
$navLatest = $t['latest'];
$navBasics = $t['basics'];

if (!$recipe) {
    http_response_code(404);
    $pageTitle = $t['not_found'] . ' | FlixCooks';
    $description = $t['not_found_sub'];
    include __DIR__ . '/partials/head.php';
    include __DIR__ . '/partials/header.php';
    ?>
    <main class="not-found">
      <h1><?php echo e($t['not_found']); ?></h1>
      <p><?php echo e($t['not_found_sub']); ?></p>
      <a class="button" href="/index.php?lang=<?php echo e($lang); ?>#recipes-start"><?php echo e($t['back_home']); ?></a>
    </main>
    <?php
    include __DIR__ . '/partials/footer.php';
    exit;
}

$pageTitle = e($recipe['title']) . ' | FlixCooks';
$description = $recipe['description'] ?? '';
include __DIR__ . '/partials/head.php';
include __DIR__ . '/partials/header.php';
?>

<article class="recipe">
  <div class="recipe__hero">
    <img src="<?php echo e($recipe['hero']); ?>" alt="<?php echo e($recipe['title']); ?>">
    <div class="recipe__hero__copy">
      <p class="pill pill--ghost"><?php echo e($recipe['category']); ?></p>
      <h1><?php echo e($recipe['title']); ?></h1>
      <p class="lede"><?php echo e($recipe['description']); ?></p>
      <div class="meta meta--row">
        <span><?php echo e($t['prep']); ?>: <?php echo format_minutes((int) $recipe['prep_time']); ?></span>
        <span><?php echo e($t['cook']); ?>: <?php echo format_minutes((int) $recipe['cook_time']); ?></span>
        <span><?php echo e($t['total']); ?>: <?php echo format_minutes((int) $recipe['total_time']); ?></span>
        <span><?php echo e($t['serves']); ?>: <?php echo e($recipe['servings']); ?></span>
        <span><?php echo e($t['level']); ?>: <?php echo e($recipe['difficulty']); ?></span>
      </div>
      <a class="button" href="/index.php?lang=<?php echo e($lang); ?>#recipes-start"><?php echo e($t['back_home']); ?></a>
    </div>
  </div>

  <div class="recipe__body">
    <section class="panel">
      <h2><?php echo e($t['ingredients']); ?></h2>
      <ul class="ingredients">
        <?php foreach ($recipe['ingredients'] as $item): ?>
          <li><?php echo e($item); ?></li>
        <?php endforeach; ?>
      </ul>
    </section>

    <?php if (!empty($recipe['utensils'])): ?>
    <section class="panel">
      <h2><?php echo e($t['utensils']); ?></h2>
      <ul class="ingredients">
        <?php foreach ($recipe['utensils'] as $item): ?>
          <li><?php echo e($item); ?></li>
        <?php endforeach; ?>
      </ul>
    </section>
    <?php endif; ?>

    <section class="panel">
      <h2><?php echo e($t['steps']); ?></h2>
      <ol class="steps">
        <?php foreach ($recipe['steps'] as $step): ?>
          <li><?php echo e($step); ?></li>
        <?php endforeach; ?>
      </ol>
    </section>
  </div>

  <section class="more">
    <div class="section-header">
      <h3><?php echo e($t['also_tasty']); ?></h3>
      <p><?php echo e($t['more_dishes']); ?></p>
    </div>
    <div class="grid grid--tight">
      <?php foreach ($allRecipesLocalized as $other): ?>
        <?php if ($other['slug'] === $recipe['slug'] || !empty($other['coming_soon'])) continue; ?>
        <article class="card card--bare">
          <h4><a href="/recipe.php?<?php echo http_build_query(['slug' => $other['slug'], 'lang' => $lang]); ?>"><?php echo e($other['title']); ?></a></h4>
          <p><?php echo e($other['description']); ?></p>
          <div class="meta">
            <span>⏱ <?php echo format_minutes((int) ($other['total_time'] ?? 0)); ?></span>
            <span>🙂 <?php echo e($other['difficulty']); ?></span>
          </div>
        </article>
      <?php endforeach; ?>
    </div>
  </section>
</article>

<?php include __DIR__ . '/partials/footer.php'; ?>
