]> git.mjollnir.org Git - moodle.git/commitdiff
Modifications so that help falls back on parent language too
authormoodler <moodler>
Thu, 12 Jun 2003 11:35:12 +0000 (11:35 +0000)
committermoodler <moodler>
Thu, 12 Jun 2003 11:35:12 +0000 (11:35 +0000)
help.php

index abcfb995d413c6c768bfbc7a3f20751080f91e73..b10d813b0f1b9ac7e0b50cef861e42b6442de593 100644 (file)
--- a/help.php
+++ b/help.php
@@ -1,51 +1,50 @@
-<?PHP
-  /// help.php - prints a very simple page and includes a
-  ///            page content or a string from elsewhere
-  ///            Usually this will appear in a popup 
-  ///            See helpbutton() in lib/moodlelib.php
+<?PHP /// $Id$
+      /// help.php - prints a very simple page and includes a
+      ///            page content or a string from elsewhere
+      ///            Usually this will appear in a popup 
+      ///            See helpbutton() in lib/moodlelib.php
 
-  require_once("config.php");
+    require_once("config.php");
 
-  optional_variable($file, "");
-  optional_variable($text, "No text to display");
-  optional_variable($module, "moodle");
+    optional_variable($file, "");
+    optional_variable($text, "No text to display");
+    optional_variable($module, "moodle");
 
-  $lang = current_language();
+    print_header();
 
-  print_header();
-
-  if (detect_munged_arguments("$module/$file")) {
-      error("Filenames contain illegal characters!");
-  }
-
-  if ($file) {
-        if ($module == "moodle") {
-            $filepath = "$CFG->dirroot/lang/$lang/help/$file";
-        } else {
-            $filepath = "$CFG->dirroot/lang/$lang/help/$module/$file";
-        }
-
-        if (file_exists("$filepath")) {
-            require_once("$filepath");           // Chosen language
+    if (detect_munged_arguments("$module/$file")) {
+        error("Filenames contain illegal characters!");
+    }
 
-        } else {                                 // Fall back to English
+    $helpfound = false;
+  
+    if (!empty($file)) {
+        $langs = array(current_language(), get_string("parentlanguage"), "en");  // Fallback
+        foreach ($langs as $lang) {
+            if (empty($lang)) {
+                continue;
+            }
             if ($module == "moodle") {
-                $filepath = "$CFG->dirroot/lang/en/help/$file";
+                $filepath = "$CFG->dirroot/lang/$lang/help/$file";
             } else {
-                $filepath = "$CFG->dirroot/lang/en/help/$module/$file";
+                $filepath = "$CFG->dirroot/lang/$lang/help/$module/$file";
             }
-
+  
             if (file_exists("$filepath")) {
-                require_once("$filepath");
-            } else {
-                notify("Can not find the specified help file");
-                die;
+                $helpfound = true;
+                include("$filepath");   // The actual helpfile
+                break;
             }
         }
     } else {
         echo "<p>";
         echo $text;
         echo "</p>";
+        $helpfound = true;
+    }
+
+    if (!$helpfound) {
+        notify("Help file '$file' could not be found!");
     }
 
     close_window_button();