Commit a634d2fb authored by Administrator's avatar Administrator 💬

fix: do not require lessons definition in other languages

parent 7ae25447
......@@ -298,11 +298,13 @@ class M3P2Plugin extends Plugin
$target_pages = array_filter($pages->instances(), function (Page $p) use ($lesson_slug) {
$page_config = $p->header();
if ( ! isset($page_config->lessons) || empty($page_config->lessons)) {
return false;
}
foreach ($page_config->lessons as $lesson) {
if ( ! isset($lesson['slug'])) {
......@@ -333,11 +335,11 @@ class M3P2Plugin extends Plugin
};
$mar = array_filter($ha->lessons, $fdp);
assert($mar && !empty($mar), "No lesson found for $lesson_slug in page ".$a->url());
assert($mar && ! empty($mar), "No lesson found for $lesson_slug in page ".$a->url());
$ma = array_shift($mar);
$mbr = array_filter($hb->lessons, $fdp);
assert($mbr && !empty($mbr), "No lesson found for $lesson_slug in page ".$b->url());
assert($mbr && ! empty($mbr), "No lesson found for $lesson_slug in page ".$b->url());
$mb = array_shift($mbr);
if ($ma && isset($ma['order'])) {
......@@ -350,23 +352,25 @@ class M3P2Plugin extends Plugin
return $la - $lb;
});
if (empty($target_pages)) {
return;
return false;
}
$current_lesson_lang = $target_pages[0]->language();
$current_lesson_name = "";
$current_lesson_name = ""; // unused for now
$current_found = false;
$previous_found = false;
$next_found = false;
$previous_lesson_slug = "";
$previous_lesson_name = "";
$previous_lesson_name = ""; // unused for now
$next_lesson_slug = "";
$other_lessons = []; // of slug => ['name' => …, 'slug' => …]
foreach ($target_pages as $target_page) {
$page_config = $target_page->header();
if ( ! isset($page_config->lessons) || empty($page_config->lessons)) {
return false;
// Unless we edit the code above, this _should_ never happen.
die("Some pages are lacking a lessons configuration.");
}
foreach ($page_config->lessons as $page_lesson) {
if ( ! isset($page_lesson['slug'])) {
......@@ -415,7 +419,7 @@ class M3P2Plugin extends Plugin
$page_config = $translated_target_page->header();
if ( ! isset($page_config->lessons) || empty($page_config->lessons)) {
return false;
continue; // other languages may not define lessons
}
foreach ($page_config->lessons as $lesson) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment