]> git.mjollnir.org Git - moodle.git/commitdiff
First changes for creating help-translation system.
authorpaca70 <paca70>
Thu, 19 Feb 2004 10:13:07 +0000 (10:13 +0000)
committerpaca70 <paca70>
Thu, 19 Feb 2004 10:13:07 +0000 (10:13 +0000)
http://site/files/index.php?fi=lang
shows now selected language "lang" files.

files/index.php
lib/moodlelib.php

index 53332d4d81efdde7a0829afa5fee6747053cd286..9ff6e6192cb87ba63dcafa5def08c285e4953004 100644 (file)
     optional_variable($wdir, "");
     optional_variable($action, "");
 
-    if (! $course = get_record("course", "id", $id) ) {
-        error("That's an invalid course id");
-    }
+    if (! is_numeric($id)) {
+               // editing language
+        if (! isadmin()) {
+            error ("You must be site administrator to edit translations");
+        }    
+        
+        //$activelangs = get_list_of_languages();
+        //if (! in_array($id, $activelangs)) {
+        //    error("Selected translation is inactive. $activelangs");
+        //}
+
+        // Create "fake" course 
+        $course = new object;
+        $course->id = $id;
+        
+    } else {
+       if (! $course = get_record("course", "id", $id) ) {
+            error("That's an invalid course id");
+       }
 
-    require_login($course->id);
+        require_login($course->id);
 
-    if (! isteacheredit($course->id) ) {
-        error("You need to be a teacher with editing privileges");
+        if (! isteacheredit($course->id) ) {
+            error("You need to be a teacher with editing privileges");
+        }
     }
 
     function html_footer() {
@@ -40,6 +57,8 @@
 
         if ($course->id == $site->id) {
             $strfiles = get_string("sitefiles");
+        } else if (! is_numeric($course->id)){
+            $strfiles = $course->id;
         } else {
             $strfiles = get_string("files");
         }
         echo "<tr>";
         echo "<td colspan=\"2\">";
     }
-
-    if (! $basedir = make_upload_directory("$course->id")) {
+    
+    if (is_numeric($id)) {
+        $fileroot = $CFG->dataroot ;
+    } else {
+        $fileroot = $CFG->dirroot."/lang";
+    }    
+    if (! $basedir = mdl_mkdir($fileroot, "$course->id")) {
         error("The site administrator needs to fix the file permissions");
     }
 
@@ -657,9 +681,15 @@ function displaydir ($wdir) {
 
     $fullpath = $basedir.$wdir;
 
+    $dontshow = array ("." , "..");
+
+    if (! is_numeric($id)) { //editing language files
+        array_push($dontshow, "CVS");
+    }
+
     $directory = opendir($fullpath);             // Find all files
     while ($file = readdir($directory)) {
-        if ($file == "." || $file == "..") {
+        if (in_array($file , $dontshow)) {
             continue;
         }
         
index bb6ff024282c050dd5a9ea743d3f66287dd8929d..c81408160b282ed2580affbd5146305ea9662148 100644 (file)
@@ -1386,8 +1386,14 @@ function make_upload_directory($directory) {
             return false;
         }
     }
+    $currdir = mdl_mkdir($currdir, $directory); 
+    return $currdir;
+}
 
-    $dirarray = explode("/", $directory);
+function mdl_mkdir($currdir, $directory) {
+//Makes directory (or multiple directorys at once)
+
+    $dirarray = explode("/", $directory); 
 
     foreach ($dirarray as $dir) {
         $currdir = "$currdir/$dir";
@@ -1402,7 +1408,6 @@ function make_upload_directory($directory) {
 
     return $currdir;
 }
-
 function make_mod_upload_directory($courseid) {
 /// Makes an upload directory for a particular module
     global $CFG;