From: tjhunt <tjhunt> Date: Mon, 30 Mar 2009 02:21:27 +0000 (+0000) Subject: get_string: Refactoring, performance improvements, bug fixes and unit tests X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=bb45fe62c497f20232d722f70da0faac9fc15aba;p=moodle.git get_string: Refactoring, performance improvements, bug fixes and unit tests MDL-18669 get_string refactored to elimiate duplicate code and make it easier to understand. MDL-17763 parent language not processed correctly when getting a plugin string. MDL-16181 more intelligent caching to avoid repeated file_exists checks. MDL-12434 move values to array keys to improve lookup times. The main part of the refactoring is to create a singleton string_manager class to encapsulate the cached data and the processing, while breaking the code up into more smaller methods. Other performance improvements include: * Cache results of plugin name -> locations to search array. * Cache parent lang lookup. * Skip eval if the string does not contain $ \ or %. * Remove the unnecessary sprintf from the eval. There is a performance testing script in lib/simpletest/getstringperformancetester.php. For now this script has the old get_string implementation copied and pasted to the end, and renamed to old_get_string to allow for comparitive timings. There are now some unit tests for get_string in lib/simpletest/teststringmanager.php. I think I have managed to cover most of the tricky cases. --- diff --git a/help.php b/help.php index 86d07211e9..3c9844de81 100644 --- a/help.php +++ b/help.php @@ -14,8 +14,8 @@ require_once('config.php'); // Get URL parameters. -$file = optional_param('file', '', PARAM_PATH); -$text = optional_param('text', 'No text to display', PARAM_CLEAN); +$file = optional_param('file', '', PARAM_PATH); +$text = optional_param('text', 'No text to display', PARAM_CLEAN); $module = optional_param('module', 'moodle', PARAM_ALPHAEXT); $forcelang = optional_param('forcelang', '', PARAM_SAFEDIR); $skiplocal = optional_param('skiplocal', 0, PARAM_INT); // shall _local help files be skipped? @@ -30,89 +30,27 @@ ob_start(); if (!empty($file)) { // The help to display is from a help file. + list($filepath, $foundlang) = string_manager::instance()->find_help_file($file, $module, $forcelang, $skiplocal); - // Get the list of parent languages. - if (empty($forcelang)) { - $langs = array(current_language(), get_string('parentlanguage'), 'en_utf8'); // Fallback - } else { - $langs = array($forcelang, 'en_utf8'); - } - - if (!$skiplocal) { - // _local language packs take precedence with both forced language and non-forced language settings - $xlangs = array(); - foreach ($langs as $lang) { - if (!empty($lang)) { - $xlangs[] = $lang . '_local'; - $xlangs[] = $lang; - } - } - $langs = $xlangs; - unset($xlangs); - } - -// Define possible locations for help file similar to locations for language strings -// Note: Always retain module directory as before - $locations = array(); - if ($module == 'moodle') { - $locations[$CFG->dataroot.'/lang/'] = $file; - $locations[$CFG->dirroot.'/lang/'] = $file; - } else { - $modfile = $module.'/'.$file; - $locations[$CFG->dataroot.'/lang/'] = $modfile; - $locations[$CFG->dirroot.'/lang/'] = $modfile; + if ($filepath) { + $helpfound = true; + @include($filepath); // The actual helpfile - $rules = places_to_search_for_lang_strings(); - $exceptions = $rules['__exceptions']; - unset($rules['__exceptions']); - - if (!in_array($module, $exceptions)) { - $dividerpos = strpos($module, '_'); - if ($dividerpos === false) { - $type = ''; - $plugin = $module; - } else { - $type = substr($module, 0, $dividerpos + 1); - $plugin = substr($module, $dividerpos + 1); - } - if (!empty($rules[$type])) { - foreach ($rules[$type] as $location) { - $locations[$CFG->dirroot . "/$location/$plugin/lang/"] = "$plugin/$file"; - } - } + // Now, we process some special cases. + if ($module == 'moodle' and ($file == 'index.html' or $file == 'mods.html')) { + include_help_for_each_module($file, $forcelang, $skiplocal); + } + if ($module == 'question' && $file == 'types.html') { + include_help_for_each_qtype(); } - } - - // Work through the possible languages, starting with the most specific. - while (!$helpfound && (list(,$lang) = each($langs)) && !empty($lang)) { - - while (!$helpfound && (list($locationprefix,$locationsuffix) = each($locations))) { - $filepath = $locationprefix.$lang.'/help/'.$locationsuffix; - - // Now, try to include the help text from this file, if we can. - if (file_exists_and_readable($filepath)) { - $helpfound = true; - @include($filepath); // The actual helpfile - - // Now, we process some special cases. - $helpdir = $locationprefix.$lang.'/help'; - if ($module == 'moodle' and ($file == 'index.html' or $file == 'mods.html')) { - include_help_for_each_module($file, $langs, $helpdir); - } - if ($module == 'question' and ($file == 'types.html')) { - include_help_for_each_qtype(); - } - // The remaining horrible hardcoded special cases should be delegated to modules somehow. - if ($module == 'moodle' and ($file == 'resource/types.html')) { // RESOURCES - include_help_for_each_resource($file, $langs, $helpdir); - } - if ($module == 'moodle' and ($file == 'assignment/types.html')) { // ASSIGNMENTS - include_help_for_each_assignment_type(); - } - } + // The remaining horrible hardcoded special cases should be delegated to modules somehow. + if ($module == 'moodle'&& $file == 'resource/types.html') { // RESOURCES + include_help_for_each_resource($forcelang, $skiplocal); + } + if ($module == 'moodle' && $file == 'assignment/types.html') { // ASSIGNMENTS + include_help_for_each_assignment_type($forcelang, $skiplocal); } - reset($locations); } } else { // The help to display was given as an argument to this function. @@ -121,26 +59,26 @@ if (!empty($file)) { } // Finish buffer -$output=ob_get_contents(); +$output = ob_get_contents(); ob_end_clean(); // Determine title -$title=get_string('help'); // Default is just 'Help' -$matches=array(); +$title = get_string('help'); // Default is just 'Help' +$matches = array(); // You can include a <title> tag to override the standard behaviour: // 'Help - title contents'. Otherwise it looks for the text of the first // heading: 'Help - heading text'. If there aren't even any headings // you just get 'Help' -if(preg_match('~^(.*?)<title>(.*?)</title>(.*)$~s',$output,$matches)) { +if (preg_match('~^(.*?)<title>(.*?)</title>(.*)$~s', $output, $matches)) { // Extract title - $title=$title.' - '.$matches[2]; + $title = $title.' - '.$matches[2]; // Strip title from output - $output=$matches[1].$matches[3]; + $output = $matches[1].$matches[3]; } else if(preg_match('~<h[0-9]+(\s[^>]*)?>(.*?)</h[0-9]+>~s',$output,$matches)) { // Use first heading as title (obviously leave it in output too). Strip // any tags from inside - $matches[2]=preg_replace('~<[^>]*>~s','',$matches[2]); - $title=$title.' - '.$matches[2]; + $matches[2] = preg_replace('~<[^>]*>~s','',$matches[2]); + $title = $title.' - '.$matches[2]; } // use ##emoticons_html## to replace the emoticons documentation @@ -161,27 +99,21 @@ if (!$helpfound) { // End of page. close_window_button(); -echo '<p class="helpindex"><a href="help.php?file=index.html">'. get_string('helpindex') .'</a>'; +echo '<p class="helpindex"><a href="help.php?file=index.html">'. get_string('helpindex') .'</a></p>'; // Offer a link to the alternative help file language -if (($helpfound) and (((current_language() != 'en_utf8') and $lang != 'en_utf8') or ($forcelang === 'en_utf8'))) { - $linklang = "{$CFG->wwwroot}/help.php?"; - $linklang .= !empty($module) ? "module=$module&" : ''; - $linklang .= !empty($file) ? "file=$file&" : ''; - $linklang .= !empty($skiplocal) ? "skiplocal=$skiplocal&" : ''; - - if (empty($forcelang) or $forcelang === current_language()) { - $nextlang = 'en_utf8'; - $nextlangname = 'English'; +$currentlang = current_language(); +if ($helpfound && ($foundlang != 'en_utf8' || ($forcelang == 'en_utf8' && current_language() != 'en_utf8'))) { + $url = new moodle_url(); + if ($foundlang != 'en_utf8') { + $url->param('forcelang', 'en_utf8'); + $nextlangname = get_string('english'); } else { - $nextlang = current_language(); + $url->param('forcelang', $currentlang); $nextlangname = get_string('thislanguage'); } - - $linklang .= "forcelang=$nextlang"; - echo "<br /><a href=\"$linklang\">" . get_string('showthishelpinlanguage', 'moodle', $nextlangname) . '</a>'; + echo '<p><a href="' . $url->out() . '">' . get_string('showthishelpinlanguage', 'moodle', $nextlangname) . '</a></p>'; } -echo '</p>'; $CFG->docroot = ''; // We don't want a doc link here print_footer('none'); @@ -192,13 +124,14 @@ function file_exists_and_readable($filepath) { // Some functions for handling special cases ======================================== -function include_help_for_each_module($file, $langs, $helpdir) { +function include_help_for_each_module($file, $forcelang, $skiplocal) { global $CFG, $DB; - if (!$modules = $DB->get_records('modules', array('visible'=>1))) { - print_error('nomodules', 'debug'); // Should never happen + if (!$modules = $DB->get_records('modules', array('visible'=> 1))) { + print_error('nomodules', 'debug'); // Should never happen } - + + // Horrible hack to show the help about grades here too. $grade = new stdClass(); $grade->name = 'grade'; $modules[] = $grade; @@ -210,23 +143,10 @@ function include_help_for_each_module($file, $langs, $helpdir) { ksort($modulebyname, SORT_LOCALE_STRING); foreach ($modulebyname as $mod) { - foreach ($langs as $lang) { - if (empty($lang)) { - continue; - } - - $filepath = "$helpdir/$mod->name/$file"; - - // If that does not exist, try a fallback into the module code folder. - if (!file_exists($filepath)) { - $filepath = "$CFG->dirroot/mod/$mod->name/lang/$lang/help/$mod->name/$file"; - } - - if (file_exists_and_readable($filepath)) { - echo '<hr />'; - @include($filepath); // The actual helpfile - break; // Out of loop over languages. - } + list($filepath, $foundlang) = string_manager::instance()->find_help_file($file, $mod->name, $forcelang, $skiplocal); + if ($filepath) { + echo '<hr />'; + include($filepath); } } } @@ -253,12 +173,12 @@ function include_help_for_qtype($qtype, $localizedname) { echo '<p>' . get_string($qtype . 'summary', 'qtype_' . $qtype) . "</p>\n\n"; } -function include_help_for_each_resource($file, $langs, $helpdir) { +function include_help_for_each_resource($forcelang, $skiplocal) { global $CFG; require_once($CFG->dirroot .'/mod/resource/lib.php'); $typelist = resource_get_types(); - + //add label type $labelType = new object(); $labelType->modclass = MOD_CLASS_RESOURCE; @@ -269,19 +189,10 @@ function include_help_for_each_resource($file, $langs, $helpdir) { $typelist[] = $labelType; foreach ($typelist as $type) { - - foreach ($langs as $lang) { - if (empty($lang)) { - continue; - } - - $filepath = "$helpdir/resource/type/".$type->name.".html"; - - if (file_exists_and_readable($filepath)) { - echo '<hr />'; - @include($filepath); // The actual helpfile - break; // Out of loop over languages. - } + list($filepath, $foundlang) = string_manager::instance()->find_help_file('type/' . $type->name . '.html', 'resource', $forcelang, $skiplocal); + if ($filepath) { + echo '<hr />'; + include($filepath); } } } @@ -293,9 +204,9 @@ function include_help_for_each_assignment_type() { $typelist = assignment_types(); foreach ($typelist as $type => $name) { - echo '<p><b>'.$name.'</b></p>'; + echo '<h2>'.$name.'</h2>'; echo get_string('help'.$type, 'assignment'); - echo '<hr size="1" />'; + echo '<hr />'; } } ?> diff --git a/lang/en_utf8/moodle.php b/lang/en_utf8/moodle.php index 154f97f6db..817f6513ee 100644 --- a/lang/en_utf8/moodle.php +++ b/lang/en_utf8/moodle.php @@ -589,6 +589,7 @@ The new password was automatically generated - you might like to <a href=\"$a->link\">change your password</a> to something easier to remember.'; $string['enable'] = 'Enable'; $string['encryptedcode'] = 'Encrypted code'; +$string['english'] = 'English'; $string['enroldate'] = 'Date range'; $string['enroldetails'] = 'Enrolment details'; $string['enrolenddate'] = 'End date'; diff --git a/lib/moodlelib.php b/lib/moodlelib.php index 2108df744f..1dd58ef9fb 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -5206,187 +5206,147 @@ function get_parent_language($lang=null) { * within translation strings */ function print_string($identifier, $module='', $a=NULL) { - echo get_string($identifier, $module, $a); -} - -/** - * fix up the optional data in get_string()/print_string() etc - * ensure possible sprintf() format characters are escaped correctly - * needs to handle arbitrary strings and objects - * @param mixed $a An object, string or number that can be used - * @return mixed the supplied parameter 'cleaned' - */ -function clean_getstring_data( $a ) { - if (is_string($a)) { - return str_replace( '%','%%',$a ); - } - elseif (is_object($a)) { - $a_vars = get_object_vars( $a ); - $new_a_vars = array(); - foreach ($a_vars as $fname => $a_var) { - $new_a_vars[$fname] = clean_getstring_data( $a_var ); + echo string_manager::instance()->get_string($identifier, $module, $a); +} + +/** + * Singleton class for managing the search for language strings. + * + * Not that performance of this class is important. If you decide to change + * this class, please use the lib/simpletest/getstringperformancetester.php + * script to make sure your changes do not cause a performance problem. + */ +class string_manager { + private $parentlangs = array('en_utf8' => NULL); + private $searchpathsformodule = array(); + private $strings = array(); + private $nonpluginfiles = array('moodle' => 1, 'langconfig' => 1); + private $langconfigstrs = array('alphabet' => 1, 'backupnameformat' => 1, 'decsep' => 1, + 'firstdayofweek' => 1, 'listsep' => 1, 'locale' => 1, 'localewin' => 1, + 'localewincharset' => 1, 'oldcharset' => 1, 'parentlanguage' => 1, + 'strftimedate' => 1, 'strftimedateshort' => 1, 'strftimedatefullshort' => 1, + 'strftimedatetime' => 1, 'strftimedaydate' => 1, 'strftimedaydatetime' => 1, + 'strftimedayshort' => 1, 'strftimedaytime' => 1, 'strftimemonthyear' => 1, + 'strftimerecent' => 1, 'strftimerecentfull' => 1, 'strftimetime' => 1, + 'thischarset' => 1, 'thisdirection' => 1, 'thislanguage' => 1, + 'strftimedatetimeshort' => 1, 'thousandssep' => 1); + private $searchplacesbyplugintype; + private $dirroot; + private $corelocations; + private $installstrings = NULL; + private $parentlangfile = 'langconfig.php'; + private $logtofile = false; + private static $singletoninstance = NULL; + + public static function instance() { + if (is_null(self::$singletoninstance)) { + global $CFG; + self::$singletoninstance = new self($CFG->dirroot, $CFG->dataroot, $CFG->admin, isset($CFG->running_installer)); + // Uncomment the followign line to log every call to get_string + // to a file in $CFG->dataroot/temp/getstringlog/... + // self::$singletoninstance->start_logging(); + } + return self::$singletoninstance; + } + + // Some of our arrays need $CFG. + protected function __construct($dirroot, $dataroot, $admin, $runninginstaller) { + $this->dirroot = $dirroot; + $this->corelocations = array( + $dirroot . '/lang/' => '', + $dataroot . '/lang/' => '', + ); + $this->searchplacesbyplugintype = array( + 'assignment_' => array('mod/assignment/type'), + 'auth_' => array('auth'), + 'block_' => array('blocks'), + 'datafield_' => array('mod/data/field'), + 'datapreset_' => array('mod/data/preset'), + 'enrol_' => array('enrol'), + 'filter_' => array('filter'), + 'format_' => array('course/format'), + 'quiz_' => array('mod/quiz/report'), + 'qtype_' => array('question/type'), + 'qformat_' => array('question/format'), + 'report_' => array($admin.'/report', 'course/report'), + 'repository_'=>array('repository'), + 'resource_' => array('mod/resource/type'), + 'gradereport_' => array('grade/report'), + 'gradeimport_' => array('grade/import'), + 'gradeexport_' => array('grade/export'), + 'profilefield_' => array('user/profile/field'), + 'portfolio_' => array('portfolio/type'), + '' => array('mod') + ); + if ($runninginstaller) { + $stringnames = file($dirroot . '/install/stringnames.txt'); + $this->installstrings = array_map('trim', $stringnames); + $this->parentlangfile = 'installer.php'; } - return (object)$new_a_vars; } - else { - return $a; - } -} - -/** - * @return array places to look for lang strings based on the prefix to the - * module name. For example qtype_ in question/type. Used by get_string and - * help.php. - */ -function places_to_search_for_lang_strings() { - global $CFG; - return array( - '__exceptions' => array('moodle', 'langconfig'), - 'assignment_' => array('mod/assignment/type'), - 'auth_' => array('auth'), - 'block_' => array('blocks'), - 'datafield_' => array('mod/data/field'), - 'datapreset_' => array('mod/data/preset'), - 'enrol_' => array('enrol'), - 'filter_' => array('filter'), - 'format_' => array('course/format'), - 'quiz_' => array('mod/quiz/report'), - 'qtype_' => array('question/type'), - 'qformat_' => array('question/format'), - 'report_' => array($CFG->admin.'/report', 'course/report'), - 'repository_'=>array('repository'), - 'resource_' => array('mod/resource/type'), - 'gradereport_' => array('grade/report'), - 'gradeimport_' => array('grade/import'), - 'gradeexport_' => array('grade/export'), - 'profilefield_' => array('user/profile/field'), - 'portfolio_' => array('portfolio/type'), - '' => array('mod') - ); -} - -/** - * Returns a localized string. - * - * Returns the translated string specified by $identifier as - * for $module. Uses the same format files as STphp. - * $a is an object, string or number that can be used - * within translation strings - * - * eg "hello \$a->firstname \$a->lastname" - * or "hello \$a" - * - * If you would like to directly echo the localized string use - * the function {@link print_string()} - * - * Example usage of this function involves finding the string you would - * like a local equivalent of and using its identifier and module information - * to retrive it.<br/> - * If you open moodle/lang/en/moodle.php and look near line 1031 - * you will find a string to prompt a user for their word for student - * <code> - * $string['wordforstudent'] = 'Your word for Student'; - * </code> - * So if you want to display the string 'Your word for student' - * in any language that supports it on your site - * you just need to use the identifier 'wordforstudent' - * <code> - * $mystring = '<strong>'. get_string('wordforstudent') .'</strong>'; -or - * </code> - * If the string you want is in another file you'd take a slightly - * different approach. Looking in moodle/lang/en/calendar.php you find - * around line 75: - * <code> - * $string['typecourse'] = 'Course event'; - * </code> - * If you want to display the string "Course event" in any language - * supported you would use the identifier 'typecourse' and the module 'calendar' - * (because it is in the file calendar.php): - * <code> - * $mystring = '<h1>'. get_string('typecourse', 'calendar') .'</h1>'; - * </code> - * - * As a last resort, should the identifier fail to map to a string - * the returned string will be [[ $identifier ]] - * - * @uses $CFG - * @param string $identifier The key identifier for the localized string - * @param string $module The module where the key identifier is stored, - * usually expressed as the filename in the language pack without the - * .php on the end but can also be written as mod/forum or grade/export/xls. - * If none is specified then moodle.php is used. - * @param mixed $a An object, string or number that can be used - * within translation strings - * @param array $extralocations DEPRICATED. An array of strings with other - * locations to look for string files. This used to be used by plugins so - * they could package their language strings in the plugin folder, however, - * There is now a better way to achieve this. See - * http://docs.moodle.org/en/Development:Places_to_search_for_lang_strings. - * @return string The localized string. - */ -function get_string($identifier, $module='', $a=NULL, $extralocations=NULL) { - global $CFG; - -/// originally these special strings were stored in moodle.php now we are only in langconfig.php - $langconfigstrs = array('alphabet', 'backupnameformat', 'decsep', 'firstdayofweek', 'listsep', 'locale', - 'localewin', 'localewincharset', 'oldcharset', 'parentlanguage', - 'strftimedate', 'strftimedateshort', 'strftimedatefullshort', 'strftimedatetime', - 'strftimedaydate', 'strftimedaydatetime', 'strftimedayshort', 'strftimedaytime', - 'strftimemonthyear', 'strftimerecent', 'strftimerecentfull', 'strftimetime', - 'thischarset', 'thisdirection', 'thislanguage', 'strftimedatetimeshort', 'thousandssep'); - - $filetocheck = 'langconfig.php'; - $defaultlang = 'en_utf8'; - if (in_array($identifier, $langconfigstrs)) { - $module = 'langconfig'; //This strings are under langconfig.php for 1.6 lang packs - } - - $lang = current_language(); - - if ($module == '') { - $module = 'moodle'; - } - -/// If the "module" is actually a pathname, then automatically derive the proper module name - if (strpos($module, '/') !== false) { + protected function fix_deprecated_module_name($module) { + debugging('The module name you passed to get_string is the deprecated format ' . + 'like mod/mymod or block/myblock. The correct form looks like mymod, or block_myblock.' , DEBUG_DEVELOPER); $modulepath = split('/', $module); switch ($modulepath[0]) { - case 'mod': - $module = $modulepath[1]; - break; - + return $modulepath[1]; case 'blocks': case 'block': - $module = 'block_'.$modulepath[1]; - break; - + return 'block_'.$modulepath[1]; case 'enrol': - $module = 'enrol_'.$modulepath[1]; - break; - + return 'enrol_'.$modulepath[1]; case 'format': - $module = 'format_'.$modulepath[1]; - break; - + return 'format_'.$modulepath[1]; case 'grade': - $module = 'grade'.$modulepath[1].'_'.$modulepath[2]; - break; + return 'grade'.$modulepath[1].'_'.$modulepath[2]; + default: + return $module; } } -/// if $a happens to have % in it, double it so sprintf() doesn't break - if ($a) { - $a = clean_getstring_data( $a ); + protected function locations_to_search($module) { + if (isset($this->searchpathsformodule[$module])) { + return $this->searchpathsformodule[$module]; + } + + $locations = $this->corelocations; + + if (!array_key_exists($module, $this->nonpluginfiles)) { + foreach ($locations as $location => $ignored) { + $locations[$location] = $module . '/'; + } + if ($module == 'local') { + $locations[$this->dirroot . '/local/lang/'] = 'local/'; + } else { + list($type, $plugin) = $this->parse_module_name($module); + if (isset($this->searchplacesbyplugintype[$type])) { + foreach ($this->searchplacesbyplugintype[$type] as $location) { + $locations[$this->dirroot . "/$location/$plugin/lang/"] = $plugin . '/'; + } + } + } + } + + $this->searchpathsformodule[$module] = $locations; + return $locations; } -/// Define the two or three major locations of language strings for this module - $locations = array(); + protected function parse_module_name($module) { + $dividerpos = strpos($module, '_'); + if ($dividerpos === false) { + $type = ''; + $plugin = $module; + } else { + $type = substr($module, 0, $dividerpos + 1); + $plugin = substr($module, $dividerpos + 1); + } + return array($type, $plugin); + } - if (!empty($extralocations)) { + protected function add_extra_locations($locations, $extralocations) { // This is an old, deprecated mechanism that predates the // places_to_search_for_lang_strings mechanism that comes later in // this function. So tell people who use it to change. @@ -5394,197 +5354,224 @@ function get_string($identifier, $module='', $a=NULL, $extralocations=NULL) { 'See http://docs.moodle.org/en/Development:Places_to_search_for_lang_strings ' . 'for a better way to package language strings with your plugin.', DEBUG_DEVELOPER); if (is_array($extralocations)) { - $locations += $extralocations; + $locations = array_merge($locations, $extralocations); } else if (is_string($extralocations)) { $locations[] = $extralocations; } else { debugging('Bad lang path provided'); } + return $locations; } - if (!empty($CFG->running_installer) and $lang !== 'en_utf8') { - static $stringnames = null; - if (!$stringnames) { - $stringnames = file($CFG->dirroot.'/install/stringnames.txt'); - $stringnames = array_map('trim', $stringnames); + protected function get_parent_language($lang) { + if (array_key_exists($lang, $this->parentlangs)) { + return $this->parentlangs[$lang]; } - if (array_search($identifier, $stringnames) !== false) { - $module = 'installer'; - $filetocheck = 'installer.php'; - $defaultlang = 'en_utf8'; - $locations[] = $CFG->dirroot.'/install/lang/'; + $parent = 'en_utf8'; // Will be used if nothing is specified explicitly. + foreach ($this->corelocations as $location => $ignored) { + foreach (array('_local', '') as $suffix) { + $file = $location . $lang . $suffix . '/' . $this->parentlangfile; + if ($result = $this->get_string_from_file('parentlanguage', $file, NULL)) { + $parent = $result; + break 2; + } + } } + $this->parentlangs[$lang] = $parent; + return $parent; } - $locations[] = $CFG->dataroot.'/lang/'; - $locations[] = $CFG->dirroot.'/lang/'; - $locations[] = $CFG->dirroot.'/local/lang/'; - -/// Add extra places to look for strings for particular plugin types. - $rules = places_to_search_for_lang_strings(); - $exceptions = $rules['__exceptions']; - unset($rules['__exceptions']); - - if (!in_array($module, $exceptions)) { - $dividerpos = strpos($module, '_'); - if ($dividerpos === false) { - $type = ''; - $plugin = $module; - } else { - $type = substr($module, 0, $dividerpos + 1); - $plugin = substr($module, $dividerpos + 1); + protected function load_lang_file($langfile) { + if (isset($this->strings[$langfile])) { + return $this->strings[$langfile]; } - if (!empty($rules[$type])) { - foreach ($rules[$type] as $location) { - $locations[] = $CFG->dirroot . "/$location/$plugin/lang/"; - } + $string = array(); + if (file_exists($langfile)) { + include($langfile); } + $this->strings[$langfile] = $string; + return $string; } -/// First check all the normal locations for the string in the current language - $resultstring = ''; - foreach ($locations as $location) { - $locallangfile = $location.$lang.'_local'.'/'.$module.'.php'; //first, see if there's a local file - if (file_exists($locallangfile)) { - if ($result = get_string_from_file($identifier, $locallangfile, "\$resultstring")) { - if (eval($result) === FALSE) { - trigger_error('Lang error: '.$identifier.':'.$locallangfile, E_USER_NOTICE); - } - return $resultstring; - } + protected function get_string_from_file($identifier, $langfile, $a) { + $string = &$this->load_lang_file($langfile); + if (!isset($string[$identifier])) { + return false; } - //if local directory not found, or particular string does not exist in local direcotry - $langfile = $location.$lang.'/'.$module.'.php'; - if (file_exists($langfile)) { - if ($result = get_string_from_file($identifier, $langfile, "\$resultstring")) { - if (eval($result) === FALSE) { - trigger_error('Lang error: '.$identifier.':'.$langfile, E_USER_NOTICE); - } - return $resultstring; - } - } + $result = $string[$identifier]; + // Skip the eval if we can - slight performance win. Pity there are 3 + // different problem characters, so we have to use preg_match, + // rather than a faster str... function. + if (!preg_match('/[%$\\\\]/', $result)) { + return $result; + } + // Moodle used to use $code = '$result = sprintf("' . $result . ')";' for no good reason, + // (it had done that since revision 1.1 of moodllib.php if you check CVS). However, this + // meant you had to double up '%' chars in $a first. We now skip that. However, lang strings + // still contain %% as a result, so we need to fix those. + $result = str_replace('%%', '%', $result); + $code = '$result = "' . $result . '";'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + return $result; } -/// If the preferred language was English (utf8) we can abort now -/// saving some checks beacuse it's the only "root" lang - if ($lang == 'en_utf8') { - return '[['. $identifier .']]'; - } + public function find_help_file($file, $module, $forcelang, $skiplocal) { + if ($forcelang) { + $langs = array($forcelang, 'en_utf8'); + } else { + $langs = array(); + for ($lang = current_language(); $lang; $lang = $this->get_parent_language($lang)) { + $langs[] = $lang; + } + } -/// Is a parent language defined? If so, try to find this string in a parent language file + $locations = $this->locations_to_search($module); - foreach ($locations as $location) { - $langfile = $location.$lang.'/'.$filetocheck; - if (file_exists($langfile)) { - if ($result = get_string_from_file('parentlanguage', $langfile, "\$parentlang")) { - if (eval($result) === FALSE) { - trigger_error('Lang error: '.$identifier.':'.$langfile, E_USER_NOTICE); - } - if (!empty($parentlang) and strpos($parentlang, '<') === false) { // found it! - - //first, see if there's a local file for parent - $locallangfile = $location.$parentlang.'_local'.'/'.$module.'.php'; - if (file_exists($locallangfile)) { - if ($result = get_string_from_file($identifier, $locallangfile, "\$resultstring")) { - if (eval($result) === FALSE) { - trigger_error('Lang error: '.$identifier.':'.$locallangfile, E_USER_NOTICE); - } - return $resultstring; - } - } + if ($skiplocal) { + $localsuffices = array(''); + } else { + $localsuffices = array('_local', ''); + } - //if local directory not found, or particular string does not exist in local direcotry - $langfile = $location.$parentlang.'/'.$module.'.php'; - if (file_exists($langfile)) { - if ($result = get_string_from_file($identifier, $langfile, "\$resultstring")) { - eval($result); - return $resultstring; - } + foreach ($langs as $lang) { + foreach ($locations as $location => $locationsuffix) { + foreach ($localsuffices as $localsuffix) { + $filepath = $location . $lang . $localsuffix . '/help/' . $locationsuffix . $file; + // Now, try to include the help text from this file, if we can. + if (file_exists_and_readable($filepath)) { + return array($filepath, $lang); } } } } + + return array('', ''); } -/// Our only remaining option is to try English + private function start_logging() { + $this->logtofile = true; + } - foreach ($locations as $location) { - $locallangfile = $location.$defaultlang.'_local/'.$module.'.php'; //first, see if there's a local file - if (file_exists($locallangfile)) { - if ($result = get_string_from_file($identifier, $locallangfile, "\$resultstring")) { - eval($result); - return $resultstring; - } + private function log_get_string_call($identifier, $module, $a) { + global $CFG; + if ($this->logtofile === true) { + $logdir = $CFG->dataroot . '/temp/getstringlog'; + $filename = strtr(str_replace($CFG->wwwroot . '/', '', qualified_me()), ':/', '__') . '_get_string.log.php'; + @mkdir($logdir, $CFG->directorypermissions, true); + $this->logtofile = fopen("$logdir/$filename", 'w'); + fwrite($this->logtofile, "<?php\n// Sequence of get_string calls for page " . qualified_me() . "\n"); } + fwrite($this->logtofile, "get_string('$identifier', '$module', " . var_export($a, true) . ");\n"); + } - //if local_en not found, or string not found in local_en - $langfile = $location.$defaultlang.'/'.$module.'.php'; + public function get_string($identifier, $module='', $a=NULL, $extralocations=NULL) { + if ($this->logtofile) { + $this->log_get_string_call($identifier, $module, $a); + } - if (file_exists($langfile)) { - if ($result = get_string_from_file($identifier, $langfile, "\$resultstring")) { - eval($result); - return $resultstring; - } + /// Preprocess the arguments. + if ($module == '') { + $module = 'moodle'; } - } -/// And, because under 1.6 en is defined as en_utf8 child, me must try -/// if it hasn't been queried before. - if ($defaultlang == 'en') { - $defaultlang = 'en_utf8'; - foreach ($locations as $location) { - $locallangfile = $location.$defaultlang.'_local/'.$module.'.php'; //first, see if there's a local file - if (file_exists($locallangfile)) { - if ($result = get_string_from_file($identifier, $locallangfile, "\$resultstring")) { - eval($result); - return $resultstring; - } - } + if ($module == 'moodle' && array_key_exists($identifier, $this->langconfigstrs)) { + $module = 'langconfig'; + } + + if (strpos($module, '/') !== false) { + $module = $this->fix_deprecated_module_name($module); + } - //if local_en not found, or string not found in local_en - $langfile = $location.$defaultlang.'/'.$module.'.php'; + $locations = $this->locations_to_search($module); - if (file_exists($langfile)) { - if ($result = get_string_from_file($identifier, $langfile, "\$resultstring")) { - eval($result); - return $resultstring; + if (!is_null($this->installstrings) && in_array($identifier, $this->installstrings)) { + $module = 'installer'; + array_unshift($locations, $this->dirroot . '/install/lang/'); + } + + if ($extralocations) { + $locations = $this->add_extra_locations($locations, $extralocations); + } + + /// Now do the search. + for ($lang = current_language(); $lang; $lang = $this->get_parent_language($lang)) { + foreach ($locations as $location => $ignored) { + foreach (array('_local', '') as $suffix) { + $file = $location . $lang . $suffix . '/' . $module . '.php'; + if ($result = $this->get_string_from_file($identifier, $file, $a)) { + return $result; + } } } } - } - return '[['.$identifier.']]'; // Last resort + return '[[' . $identifier . ']]'; // Last resort. + } } /** - * This function is only used from {@link get_string()}. + * Returns a localized string. + * + * Returns the translated string specified by $identifier as + * for $module. Uses the same format files as STphp. + * $a is an object, string or number that can be used + * within translation strings + * + * eg "hello \$a->firstname \$a->lastname" + * or "hello \$a" + * + * If you would like to directly echo the localized string use + * the function {@link print_string()} * - * @internal Only used from get_string, not meant to be public API - * @param string $identifier ? - * @param string $langfile ? - * @param string $destination ? - * @return string|false ? - * @staticvar array $strings Localized strings - * @access private - * @todo Finish documenting this function. + * Example usage of this function involves finding the string you would + * like a local equivalent of and using its identifier and module information + * to retrive it.<br/> + * If you open moodle/lang/en/moodle.php and look near line 1031 + * you will find a string to prompt a user for their word for student + * <code> + * $string['wordforstudent'] = 'Your word for Student'; + * </code> + * So if you want to display the string 'Your word for student' + * in any language that supports it on your site + * you just need to use the identifier 'wordforstudent' + * <code> + * $mystring = '<strong>'. get_string('wordforstudent') .'</strong>'; +or + * </code> + * If the string you want is in another file you'd take a slightly + * different approach. Looking in moodle/lang/en/calendar.php you find + * around line 75: + * <code> + * $string['typecourse'] = 'Course event'; + * </code> + * If you want to display the string "Course event" in any language + * supported you would use the identifier 'typecourse' and the module 'calendar' + * (because it is in the file calendar.php): + * <code> + * $mystring = '<h1>'. get_string('typecourse', 'calendar') .'</h1>'; + * </code> + * + * As a last resort, should the identifier fail to map to a string + * the returned string will be [[ $identifier ]] + * + * @param string $identifier The key identifier for the localized string + * @param string $module The module where the key identifier is stored, + * usually expressed as the filename in the language pack without the + * .php on the end but can also be written as mod/forum or grade/export/xls. + * If none is specified then moodle.php is used. + * @param mixed $a An object, string or number that can be used + * within translation strings + * @param array $extralocations DEPRICATED. An array of strings with other + * locations to look for string files. This used to be used by plugins so + * they could package their language strings in the plugin folder, however, + * There is now a better way to achieve this. See + * http://docs.moodle.org/en/Development:Places_to_search_for_lang_strings. + * @return string The localized string. */ -function get_string_from_file($identifier, $langfile, $destination) { - - static $strings; // Keep the strings cached in memory. - - if (empty($strings[$langfile])) { - $string = array(); - include ($langfile); - $strings[$langfile] = $string; - } else { - $string = &$strings[$langfile]; - } - - if (!isset ($string[$identifier])) { - return false; - } - - return $destination .'= sprintf("'. $string[$identifier] .'");'; +function get_string($identifier, $module='', $a=NULL, $extralocations=NULL) { + return string_manager::instance()->get_string($identifier, $module, $a, $extralocations); } /** @@ -5592,13 +5579,12 @@ function get_string_from_file($identifier, $langfile, $destination) { * * @param array $array An array of strings * @param string $module The language module that these strings can be found in. - * @return string + * @return array and array of translated strings. */ function get_strings($array, $module='') { - - $string = NULL; + $string = new stdClass; foreach ($array as $item) { - $string->$item = get_string($item, $module); + $string->$item = string_manager::instance()->get_string($item, $module); } return $string; } diff --git a/lib/simpletest/get_string_fixtures/moodle/blocks/mrbs/lang/en_utf8/block_mrbs.php b/lib/simpletest/get_string_fixtures/moodle/blocks/mrbs/lang/en_utf8/block_mrbs.php new file mode 100644 index 0000000000..a82aff4f06 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodle/blocks/mrbs/lang/en_utf8/block_mrbs.php @@ -0,0 +1,3 @@ +<?php +$string['yes'] = 'Yes'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodle/blocks/mrbs/lang/fr_utf8/block_mrbs.php b/lib/simpletest/get_string_fixtures/moodle/blocks/mrbs/lang/fr_utf8/block_mrbs.php new file mode 100644 index 0000000000..0ce399a5c1 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodle/blocks/mrbs/lang/fr_utf8/block_mrbs.php @@ -0,0 +1,3 @@ +<?php +$string['yes'] = 'Oui'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8/moodle.php b/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8/moodle.php new file mode 100644 index 0000000000..39a50cf8fc --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8/moodle.php @@ -0,0 +1,4 @@ +<?php +$string['test'] = 'Test'; +$string['locallyoverridden'] = 'Not used'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8/test.php b/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8/test.php new file mode 100644 index 0000000000..e079506281 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8/test.php @@ -0,0 +1,5 @@ +<?php +$string['hello'] = 'Hello \'world\'!'; +$string['hellox'] = 'Hello $a!'; +$string['results'] = 'Dear $a->firstname $a->lastname,\n\nOn test \"$a->testname\" you scored $a->grade%% which earns you \$100.'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8_local/moodle.php b/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8_local/moodle.php new file mode 100644 index 0000000000..b3d35a3f62 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodle/lang/en_utf8_local/moodle.php @@ -0,0 +1,3 @@ +<?php +$string['locallyoverridden'] = 'Should see this'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodle/lang/es_ar_utf8_local/langconfig.php b/lib/simpletest/get_string_fixtures/moodle/lang/es_ar_utf8_local/langconfig.php new file mode 100644 index 0000000000..b1d732a41e --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodle/lang/es_ar_utf8_local/langconfig.php @@ -0,0 +1,3 @@ +<?php +$string['parentlanguage'] = 'es_mx_utf8'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodledata/lang/es_ar_utf8/langconfig.php b/lib/simpletest/get_string_fixtures/moodledata/lang/es_ar_utf8/langconfig.php new file mode 100644 index 0000000000..6767ae8ee1 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodledata/lang/es_ar_utf8/langconfig.php @@ -0,0 +1,3 @@ +<?php +$string['parentlanguage'] = 'es_utf8'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodledata/lang/fr_ca_utf8/langconfig.php b/lib/simpletest/get_string_fixtures/moodledata/lang/fr_ca_utf8/langconfig.php new file mode 100644 index 0000000000..a0156df76f --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodledata/lang/fr_ca_utf8/langconfig.php @@ -0,0 +1,3 @@ +<?php +$string['parentlanguage'] = 'fr_utf8'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodledata/lang/fr_ca_utf8/test.php b/lib/simpletest/get_string_fixtures/moodledata/lang/fr_ca_utf8/test.php new file mode 100644 index 0000000000..2d728dd945 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodledata/lang/fr_ca_utf8/test.php @@ -0,0 +1,3 @@ +<?php +$string['hello'] = 'Bonjour Québec!'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/moodledata/lang/fr_utf8/test.php b/lib/simpletest/get_string_fixtures/moodledata/lang/fr_utf8/test.php new file mode 100644 index 0000000000..0a0fbd1d6d --- /dev/null +++ b/lib/simpletest/get_string_fixtures/moodledata/lang/fr_utf8/test.php @@ -0,0 +1,4 @@ +<?php +$string['hello'] = 'Bonjour tout le monde!'; +$string['hellox'] = 'Bonjour $a!'; +?> \ No newline at end of file diff --git a/lib/simpletest/get_string_fixtures/pagelogs/admin_index.php_get_string.log.php b/lib/simpletest/get_string_fixtures/pagelogs/admin_index.php_get_string.log.php new file mode 100644 index 0000000000..e73150d3a0 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/pagelogs/admin_index.php_get_string.log.php @@ -0,0 +1,2010 @@ +<?php +// Sequence of get_string calls for page http://tim.moodle.com/moodle/admin/index.php +get_string('locale', '', NULL); +get_string('thisdirection', '', NULL); +get_string('administration', '', NULL); +get_string('activities', '', NULL); +get_string('administration', '', NULL); +get_string('adminbookmarks', '', NULL); +get_string('administrationsite', '', NULL); +get_string('blockmenutitle', 'blog', NULL); +get_string('blocktagstitle', 'blog', NULL); +get_string('calendar', 'calendar', NULL); +get_string('upcomingevents', 'calendar', NULL); +get_string('courses', '', NULL); +get_string('pagedescription', 'block_course_summary', NULL); +get_string('blockname', 'block_glossary_random', NULL); +get_string('html', 'block_html', NULL); +get_string('loancalc', 'block_loancalc', NULL); +get_string('login', '', NULL); +get_string('blockname', 'block_mentees', NULL); +get_string('messages', 'message', NULL); +get_string('mnet_hosts', 'block_mnet_hosts', NULL); +get_string('latestnews', '', NULL); +get_string('blockname', 'block_online_users', NULL); +get_string('people', '', NULL); +get_string('formaltitle', 'block_quiz_results', NULL); +get_string('recentactivity', '', NULL); +get_string('feedstitle', 'block_rss_client', NULL); +get_string('blockname', 'block_search', NULL); +get_string('blocktitle', 'block_search_forums', NULL); +get_string('blockname', 'block_section_links', NULL); +get_string('mainmenu', '', NULL); +get_string('blockname', 'block_social_activities', NULL); +get_string('defaulttile', 'block_tag_flickr', NULL); +get_string('blockname', 'block_tag_youtube', NULL); +get_string('blocktagstitle', 'tag', NULL); +get_string('locale', '', NULL); +get_string('thisdirection', '', NULL); +get_string('administration', '', NULL); +get_string('notifications', '', NULL); +get_string('registration', 'admin', NULL); +get_string('upgradesettings', 'admin', NULL); +get_string('advancedfeatures', 'admin', NULL); +get_string('users', 'admin', NULL); +get_string('courses', 'admin', NULL); +get_string('grades', '', NULL); +get_string('location', 'admin', NULL); +get_string('language', '', NULL); +get_string('plugins', 'admin', NULL); +get_string('security', 'admin', NULL); +get_string('appearance', 'admin', NULL); +get_string('frontpage', 'admin', NULL); +get_string('server', 'admin', NULL); +get_string('net', 'mnet', NULL); +get_string('reports', '', NULL); +get_string('development', 'admin', NULL); +get_string('unsupported', 'admin', NULL); +get_string('searchresults', '', NULL); +get_string('themes', '', NULL); +get_string('themesettings', 'admin', NULL); +get_string('themelist', 'admin', NULL); +get_string('configthemelist', 'admin', NULL); +get_string('allowuserthemes', 'admin', NULL); +get_string('configallowuserthemes', 'admin', NULL); +get_string('allowcoursethemes', 'admin', NULL); +get_string('configallowcoursethemes', 'admin', NULL); +get_string('allowcategorythemes', 'admin', NULL); +get_string('configallowcategorythemes', 'admin', NULL); +get_string('allowuserblockhiding', 'admin', NULL); +get_string('configallowuserblockhiding', 'admin', NULL); +get_string('showblocksonmodpages', 'admin', NULL); +get_string('configshowblocksonmodpages', 'admin', NULL); +get_string('hideactivitytypenavlink', 'admin', NULL); +get_string('confighideactivitytypenavlink', 'admin', NULL); +get_string('hidefromnone', 'admin', NULL); +get_string('hidefromstudents', 'admin', NULL); +get_string('hidefromall', 'admin', NULL); +get_string('themeselector', 'admin', NULL); +get_string('calendarsettings', 'admin', NULL); +get_string('adminseesall', 'admin', NULL); +get_string('helpadminseesall', 'admin', NULL); +get_string('pref_timeformat', 'calendar', NULL); +get_string('explain_site_timeformat', 'calendar', NULL); +get_string('default', 'calendar', NULL); +get_string('timeformat_12', 'calendar', NULL); +get_string('timeformat_24', 'calendar', NULL); +get_string('configstartwday', 'admin', NULL); +get_string('helpstartofweek', 'admin', NULL); +get_string('sunday', 'calendar', NULL); +get_string('monday', 'calendar', NULL); +get_string('tuesday', 'calendar', NULL); +get_string('wednesday', 'calendar', NULL); +get_string('thursday', 'calendar', NULL); +get_string('friday', 'calendar', NULL); +get_string('saturday', 'calendar', NULL); +get_string('calendar_weekend', 'admin', NULL); +get_string('helpweekenddays', 'admin', NULL); +get_string('configlookahead', 'admin', NULL); +get_string('helpupcominglookahead', 'admin', NULL); +get_string('configmaxevents', 'admin', NULL); +get_string('helpupcomingmaxevents', 'admin', NULL); +get_string('enablecalendarexport', 'admin', NULL); +get_string('configenablecalendarexport', 'admin', NULL); +get_string('calendarexportsalt', 'admin', NULL); +get_string('configcalendarexportsalt', 'admin', NULL); +get_string('htmleditor', 'admin', NULL); +get_string('htmleditorsettings', 'admin', NULL); +get_string('defaulthtmleditor', 'admin', NULL); +get_string('usehtmleditor', 'admin', NULL); +get_string('confightmleditor', 'admin', NULL); +get_string('emoticons', 'admin', NULL); +get_string('configemoticons', 'admin', NULL); +get_string('htmlsettings', 'admin', NULL); +get_string('stripalltitletags', 'admin', NULL); +get_string('configstripalltitletags', 'admin', NULL); +get_string('moodledocs', '', NULL); +get_string('docroot', 'admin', NULL); +get_string('configdocroot', 'admin', NULL); +get_string('doctonewwindow', 'admin', NULL); +get_string('configdoctonewwindow', 'admin', NULL); +get_string('mymoodle', 'admin', NULL); +get_string('mymoodleredirect', 'admin', NULL); +get_string('configmymoodleredirect', 'admin', NULL); +get_string('coursemanager', 'admin', NULL); +get_string('coursemanager', 'admin', NULL); +get_string('configcoursemanager', 'admin', NULL); +get_string('ajaxuse', '', NULL); +get_string('enableajax', 'admin', NULL); +get_string('configenableajax', 'admin', NULL); +get_string('useexternalyui', 'admin', NULL); +get_string('configuseexternalyui', 'admin', NULL); +get_string('disablecourseajax', 'admin', NULL); +get_string('configdisablecourseajax', 'admin', NULL); +get_string('managetags', 'tag', NULL); +get_string('coursemgmt', 'admin', NULL); +get_string('enrolments', '', NULL); +get_string('coursesettings', '', NULL); +get_string('formatscorm', 'format_scorm', NULL); +get_string('formatscorm', '', NULL); +get_string('formatsocial', 'format_social', NULL); +get_string('formatsocial', '', NULL); +get_string('formattopics', 'format_topics', NULL); +get_string('formattopics', '', NULL); +get_string('formatweeks', 'format_weeks', NULL); +get_string('formatweeks', '', NULL); +get_string('format', '', NULL); +get_string('coursehelpformat', '', NULL); +get_string('numberweeks', '', NULL); +get_string('coursehelpnumberweeks', '', NULL); +get_string('hiddensectionscollapsed', '', NULL); +get_string('hiddensectionsinvisible', '', NULL); +get_string('hiddensections', '', NULL); +get_string('coursehelphiddensections', '', NULL); +get_string('newsitemsnumber', '', NULL); +get_string('coursehelpnewsitemsnumber', '', NULL); +get_string('showgrades', '', NULL); +get_string('coursehelpshowgrades', '', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('showreports', '', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('sizegb', '', NULL); +get_string('sizemb', '', NULL); +get_string('sizekb', '', NULL); +get_string('sizeb', '', NULL); +get_string('maximumupload', '', NULL); +get_string('coursehelpmaximumupload', '', NULL); +get_string('metacourse', '', NULL); +get_string('coursehelpmetacourse', '', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('enrolments', '', NULL); +get_string('enrolname', 'enrol_manual', NULL); +get_string('sitedefault', '', NULL); +get_string('enrolname', 'enrol_manual', NULL); +get_string('enrolmentplugins', '', NULL); +get_string('coursehelpenrolmentplugins', '', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('enroldate', '', NULL); +get_string('enrollable', '', NULL); +get_string('coursehelpenrollable', '', NULL); +get_string('unlimited', '', NULL); +get_string('numdays', '', 1); +get_string('numdays', '', 2); +get_string('numdays', '', 3); +get_string('numdays', '', 4); +get_string('numdays', '', 5); +get_string('numdays', '', 6); +get_string('numdays', '', 7); +get_string('numdays', '', 8); +get_string('numdays', '', 9); +get_string('numdays', '', 10); +get_string('numdays', '', 11); +get_string('numdays', '', 12); +get_string('numdays', '', 13); +get_string('numdays', '', 14); +get_string('numdays', '', 15); +get_string('numdays', '', 16); +get_string('numdays', '', 17); +get_string('numdays', '', 18); +get_string('numdays', '', 19); +get_string('numdays', '', 20); +get_string('numdays', '', 21); +get_string('numdays', '', 22); +get_string('numdays', '', 23); +get_string('numdays', '', 24); +get_string('numdays', '', 25); +get_string('numdays', '', 26); +get_string('numdays', '', 27); +get_string('numdays', '', 28); +get_string('numdays', '', 29); +get_string('numdays', '', 30); +get_string('numdays', '', 31); +get_string('numdays', '', 32); +get_string('numdays', '', 33); +get_string('numdays', '', 34); +get_string('numdays', '', 35); +get_string('numdays', '', 36); +get_string('numdays', '', 37); +get_string('numdays', '', 38); +get_string('numdays', '', 39); +get_string('numdays', '', 40); +get_string('numdays', '', 41); +get_string('numdays', '', 42); +get_string('numdays', '', 43); +get_string('numdays', '', 44); +get_string('numdays', '', 45); +get_string('numdays', '', 46); +get_string('numdays', '', 47); +get_string('numdays', '', 48); +get_string('numdays', '', 49); +get_string('numdays', '', 50); +get_string('numdays', '', 51); +get_string('numdays', '', 52); +get_string('numdays', '', 53); +get_string('numdays', '', 54); +get_string('numdays', '', 55); +get_string('numdays', '', 56); +get_string('numdays', '', 57); +get_string('numdays', '', 58); +get_string('numdays', '', 59); +get_string('numdays', '', 60); +get_string('numdays', '', 61); +get_string('numdays', '', 62); +get_string('numdays', '', 63); +get_string('numdays', '', 64); +get_string('numdays', '', 65); +get_string('numdays', '', 66); +get_string('numdays', '', 67); +get_string('numdays', '', 68); +get_string('numdays', '', 69); +get_string('numdays', '', 70); +get_string('numdays', '', 71); +get_string('numdays', '', 72); +get_string('numdays', '', 73); +get_string('numdays', '', 74); +get_string('numdays', '', 75); +get_string('numdays', '', 76); +get_string('numdays', '', 77); +get_string('numdays', '', 78); +get_string('numdays', '', 79); +get_string('numdays', '', 80); +get_string('numdays', '', 81); +get_string('numdays', '', 82); +get_string('numdays', '', 83); +get_string('numdays', '', 84); +get_string('numdays', '', 85); +get_string('numdays', '', 86); +get_string('numdays', '', 87); +get_string('numdays', '', 88); +get_string('numdays', '', 89); +get_string('numdays', '', 90); +get_string('numdays', '', 91); +get_string('numdays', '', 92); +get_string('numdays', '', 93); +get_string('numdays', '', 94); +get_string('numdays', '', 95); +get_string('numdays', '', 96); +get_string('numdays', '', 97); +get_string('numdays', '', 98); +get_string('numdays', '', 99); +get_string('numdays', '', 100); +get_string('numdays', '', 101); +get_string('numdays', '', 102); +get_string('numdays', '', 103); +get_string('numdays', '', 104); +get_string('numdays', '', 105); +get_string('numdays', '', 106); +get_string('numdays', '', 107); +get_string('numdays', '', 108); +get_string('numdays', '', 109); +get_string('numdays', '', 110); +get_string('numdays', '', 111); +get_string('numdays', '', 112); +get_string('numdays', '', 113); +get_string('numdays', '', 114); +get_string('numdays', '', 115); +get_string('numdays', '', 116); +get_string('numdays', '', 117); +get_string('numdays', '', 118); +get_string('numdays', '', 119); +get_string('numdays', '', 120); +get_string('numdays', '', 121); +get_string('numdays', '', 122); +get_string('numdays', '', 123); +get_string('numdays', '', 124); +get_string('numdays', '', 125); +get_string('numdays', '', 126); +get_string('numdays', '', 127); +get_string('numdays', '', 128); +get_string('numdays', '', 129); +get_string('numdays', '', 130); +get_string('numdays', '', 131); +get_string('numdays', '', 132); +get_string('numdays', '', 133); +get_string('numdays', '', 134); +get_string('numdays', '', 135); +get_string('numdays', '', 136); +get_string('numdays', '', 137); +get_string('numdays', '', 138); +get_string('numdays', '', 139); +get_string('numdays', '', 140); +get_string('numdays', '', 141); +get_string('numdays', '', 142); +get_string('numdays', '', 143); +get_string('numdays', '', 144); +get_string('numdays', '', 145); +get_string('numdays', '', 146); +get_string('numdays', '', 147); +get_string('numdays', '', 148); +get_string('numdays', '', 149); +get_string('numdays', '', 150); +get_string('numdays', '', 151); +get_string('numdays', '', 152); +get_string('numdays', '', 153); +get_string('numdays', '', 154); +get_string('numdays', '', 155); +get_string('numdays', '', 156); +get_string('numdays', '', 157); +get_string('numdays', '', 158); +get_string('numdays', '', 159); +get_string('numdays', '', 160); +get_string('numdays', '', 161); +get_string('numdays', '', 162); +get_string('numdays', '', 163); +get_string('numdays', '', 164); +get_string('numdays', '', 165); +get_string('numdays', '', 166); +get_string('numdays', '', 167); +get_string('numdays', '', 168); +get_string('numdays', '', 169); +get_string('numdays', '', 170); +get_string('numdays', '', 171); +get_string('numdays', '', 172); +get_string('numdays', '', 173); +get_string('numdays', '', 174); +get_string('numdays', '', 175); +get_string('numdays', '', 176); +get_string('numdays', '', 177); +get_string('numdays', '', 178); +get_string('numdays', '', 179); +get_string('numdays', '', 180); +get_string('numdays', '', 181); +get_string('numdays', '', 182); +get_string('numdays', '', 183); +get_string('numdays', '', 184); +get_string('numdays', '', 185); +get_string('numdays', '', 186); +get_string('numdays', '', 187); +get_string('numdays', '', 188); +get_string('numdays', '', 189); +get_string('numdays', '', 190); +get_string('numdays', '', 191); +get_string('numdays', '', 192); +get_string('numdays', '', 193); +get_string('numdays', '', 194); +get_string('numdays', '', 195); +get_string('numdays', '', 196); +get_string('numdays', '', 197); +get_string('numdays', '', 198); +get_string('numdays', '', 199); +get_string('numdays', '', 200); +get_string('numdays', '', 201); +get_string('numdays', '', 202); +get_string('numdays', '', 203); +get_string('numdays', '', 204); +get_string('numdays', '', 205); +get_string('numdays', '', 206); +get_string('numdays', '', 207); +get_string('numdays', '', 208); +get_string('numdays', '', 209); +get_string('numdays', '', 210); +get_string('numdays', '', 211); +get_string('numdays', '', 212); +get_string('numdays', '', 213); +get_string('numdays', '', 214); +get_string('numdays', '', 215); +get_string('numdays', '', 216); +get_string('numdays', '', 217); +get_string('numdays', '', 218); +get_string('numdays', '', 219); +get_string('numdays', '', 220); +get_string('numdays', '', 221); +get_string('numdays', '', 222); +get_string('numdays', '', 223); +get_string('numdays', '', 224); +get_string('numdays', '', 225); +get_string('numdays', '', 226); +get_string('numdays', '', 227); +get_string('numdays', '', 228); +get_string('numdays', '', 229); +get_string('numdays', '', 230); +get_string('numdays', '', 231); +get_string('numdays', '', 232); +get_string('numdays', '', 233); +get_string('numdays', '', 234); +get_string('numdays', '', 235); +get_string('numdays', '', 236); +get_string('numdays', '', 237); +get_string('numdays', '', 238); +get_string('numdays', '', 239); +get_string('numdays', '', 240); +get_string('numdays', '', 241); +get_string('numdays', '', 242); +get_string('numdays', '', 243); +get_string('numdays', '', 244); +get_string('numdays', '', 245); +get_string('numdays', '', 246); +get_string('numdays', '', 247); +get_string('numdays', '', 248); +get_string('numdays', '', 249); +get_string('numdays', '', 250); +get_string('numdays', '', 251); +get_string('numdays', '', 252); +get_string('numdays', '', 253); +get_string('numdays', '', 254); +get_string('numdays', '', 255); +get_string('numdays', '', 256); +get_string('numdays', '', 257); +get_string('numdays', '', 258); +get_string('numdays', '', 259); +get_string('numdays', '', 260); +get_string('numdays', '', 261); +get_string('numdays', '', 262); +get_string('numdays', '', 263); +get_string('numdays', '', 264); +get_string('numdays', '', 265); +get_string('numdays', '', 266); +get_string('numdays', '', 267); +get_string('numdays', '', 268); +get_string('numdays', '', 269); +get_string('numdays', '', 270); +get_string('numdays', '', 271); +get_string('numdays', '', 272); +get_string('numdays', '', 273); +get_string('numdays', '', 274); +get_string('numdays', '', 275); +get_string('numdays', '', 276); +get_string('numdays', '', 277); +get_string('numdays', '', 278); +get_string('numdays', '', 279); +get_string('numdays', '', 280); +get_string('numdays', '', 281); +get_string('numdays', '', 282); +get_string('numdays', '', 283); +get_string('numdays', '', 284); +get_string('numdays', '', 285); +get_string('numdays', '', 286); +get_string('numdays', '', 287); +get_string('numdays', '', 288); +get_string('numdays', '', 289); +get_string('numdays', '', 290); +get_string('numdays', '', 291); +get_string('numdays', '', 292); +get_string('numdays', '', 293); +get_string('numdays', '', 294); +get_string('numdays', '', 295); +get_string('numdays', '', 296); +get_string('numdays', '', 297); +get_string('numdays', '', 298); +get_string('numdays', '', 299); +get_string('numdays', '', 300); +get_string('numdays', '', 301); +get_string('numdays', '', 302); +get_string('numdays', '', 303); +get_string('numdays', '', 304); +get_string('numdays', '', 305); +get_string('numdays', '', 306); +get_string('numdays', '', 307); +get_string('numdays', '', 308); +get_string('numdays', '', 309); +get_string('numdays', '', 310); +get_string('numdays', '', 311); +get_string('numdays', '', 312); +get_string('numdays', '', 313); +get_string('numdays', '', 314); +get_string('numdays', '', 315); +get_string('numdays', '', 316); +get_string('numdays', '', 317); +get_string('numdays', '', 318); +get_string('numdays', '', 319); +get_string('numdays', '', 320); +get_string('numdays', '', 321); +get_string('numdays', '', 322); +get_string('numdays', '', 323); +get_string('numdays', '', 324); +get_string('numdays', '', 325); +get_string('numdays', '', 326); +get_string('numdays', '', 327); +get_string('numdays', '', 328); +get_string('numdays', '', 329); +get_string('numdays', '', 330); +get_string('numdays', '', 331); +get_string('numdays', '', 332); +get_string('numdays', '', 333); +get_string('numdays', '', 334); +get_string('numdays', '', 335); +get_string('numdays', '', 336); +get_string('numdays', '', 337); +get_string('numdays', '', 338); +get_string('numdays', '', 339); +get_string('numdays', '', 340); +get_string('numdays', '', 341); +get_string('numdays', '', 342); +get_string('numdays', '', 343); +get_string('numdays', '', 344); +get_string('numdays', '', 345); +get_string('numdays', '', 346); +get_string('numdays', '', 347); +get_string('numdays', '', 348); +get_string('numdays', '', 349); +get_string('numdays', '', 350); +get_string('numdays', '', 351); +get_string('numdays', '', 352); +get_string('numdays', '', 353); +get_string('numdays', '', 354); +get_string('numdays', '', 355); +get_string('numdays', '', 356); +get_string('numdays', '', 357); +get_string('numdays', '', 358); +get_string('numdays', '', 359); +get_string('numdays', '', 360); +get_string('numdays', '', 361); +get_string('numdays', '', 362); +get_string('numdays', '', 363); +get_string('numdays', '', 364); +get_string('numdays', '', 365); +get_string('enrolperiod', '', NULL); +get_string('expirynotify', '', NULL); +get_string('notify', '', NULL); +get_string('coursehelpnotify', '', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('expirynotifystudents', '', NULL); +get_string('coursehelpexpirynotifystudents', '', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('numdays', '', 1); +get_string('numdays', '', 2); +get_string('numdays', '', 3); +get_string('numdays', '', 4); +get_string('numdays', '', 5); +get_string('numdays', '', 6); +get_string('numdays', '', 7); +get_string('numdays', '', 8); +get_string('numdays', '', 9); +get_string('numdays', '', 10); +get_string('numdays', '', 11); +get_string('numdays', '', 12); +get_string('numdays', '', 13); +get_string('numdays', '', 14); +get_string('numdays', '', 15); +get_string('numdays', '', 16); +get_string('numdays', '', 17); +get_string('numdays', '', 18); +get_string('numdays', '', 19); +get_string('numdays', '', 20); +get_string('numdays', '', 21); +get_string('numdays', '', 22); +get_string('numdays', '', 23); +get_string('numdays', '', 24); +get_string('numdays', '', 25); +get_string('numdays', '', 26); +get_string('numdays', '', 27); +get_string('numdays', '', 28); +get_string('numdays', '', 29); +get_string('numdays', '', 30); +get_string('expirythreshold', '', NULL); +get_string('coursehelpexpirythreshold', '', NULL); +get_string('groups', 'group', NULL); +get_string('groupsnone', 'group', NULL); +get_string('groupsseparate', 'group', NULL); +get_string('groupsvisible', 'group', NULL); +get_string('groupmode', '', NULL); +get_string('force', '', NULL); +get_string('coursehelpforce', '', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('availability', '', NULL); +get_string('courseavailablenot', '', NULL); +get_string('courseavailable', '', NULL); +get_string('visible', '', NULL); +get_string('enrolmentkey', '', NULL); +get_string('coursehelpenrolmentkey', '', NULL); +get_string('guestsno', '', NULL); +get_string('guestsyes', '', NULL); +get_string('guestskey', '', NULL); +get_string('opentoguests', '', NULL); +get_string('language', '', NULL); +get_string('forceno', '', NULL); +get_string('forcelanguage', '', NULL); +get_string('progress', 'completion', NULL); +get_string('completion', 'completion', NULL); +get_string('completiondisabled', 'completion', NULL); +get_string('completionenabled', 'completion', NULL); +get_string('courserequest', '', NULL); +get_string('enablecourserequests', 'admin', NULL); +get_string('configenablecourserequests', 'admin', NULL); +get_string('defaultrequestcategory', 'admin', NULL); +get_string('configdefaultrequestcategory', 'admin', NULL); +get_string('courserequestnotify', 'admin', NULL); +get_string('configcourserequestnotify2', 'admin', NULL); +get_string('nobody', '', NULL); +get_string('site:approvecourse', 'role', NULL); +get_string('everyonewhocan', 'admin', 'Approve course creation'); +get_string('backups', 'admin', NULL); +get_string('includemodules', '', NULL); +get_string('backupincludemoduleshelp', '', NULL); +get_string('includemoduleuserdata', '', NULL); +get_string('backupincludemoduleuserdatahelp', '', NULL); +get_string('metacourse', '', NULL); +get_string('backupmetacoursehelp', '', NULL); +get_string('users', '', NULL); +get_string('backupusershelp', '', NULL); +get_string('all', '', NULL); +get_string('course', '', NULL); +get_string('logs', '', NULL); +get_string('backuplogshelp', '', NULL); +get_string('userfiles', '', NULL); +get_string('backupuserfileshelp', '', NULL); +get_string('coursefiles', '', NULL); +get_string('backupcoursefileshelp', '', NULL); +get_string('sitefiles', '', NULL); +get_string('backupsitefileshelp', '', NULL); +get_string('gradebookhistories', 'grades', NULL); +get_string('backupgradebookhistoryhelp', '', NULL); +get_string('messages', 'message', NULL); +get_string('backupmessageshelp', 'message', NULL); +get_string('blogs', 'blog', NULL); +get_string('backupblogshelp', 'blog', NULL); +get_string('all', '', NULL); +get_string('keep', '', NULL); +get_string('backupkeephelp', '', NULL); +get_string('active', '', NULL); +get_string('backupactivehelp', '', NULL); +get_string('schedule', '', NULL); +get_string('backupschedulehelp', '', NULL); +get_string('executeat', '', NULL); +get_string('backupexecuteathelp', '', NULL); +get_string('saveto', '', NULL); +get_string('backupsavetohelp', '', NULL); +get_string('experimental', 'admin', NULL); +get_string('experimentalsettings', 'admin', NULL); +get_string('enableglobalsearch', 'admin', NULL); +get_string('configenableglobalsearch', 'admin', NULL); +get_string('smartpix', 'admin', NULL); +get_string('configsmartpix', 'admin', NULL); +get_string('enablehtmlpurifier', 'admin', NULL); +get_string('configenablehtmlpurifier', 'admin', NULL); +get_string('experimentalsplitrestore', 'admin', NULL); +get_string('configexperimentalsplitrestore', 'admin', NULL); +get_string('dbtransfer', 'dbtransfer', NULL); +get_string('dbexport', 'dbtransfer', NULL); +get_string('xmldbeditor', '', NULL); +get_string('frontpagesettings', 'admin', NULL); +get_string('fullsitename', '', NULL); +get_string('shortsitename', '', NULL); +get_string('frontpagedescription', '', NULL); +get_string('frontpagedescriptionhelp', '', NULL); +get_string('frontpage', 'admin', NULL); +get_string('configfrontpage', 'admin', NULL); +get_string('frontpageloggedin', 'admin', NULL); +get_string('configfrontpageloggedin', 'admin', NULL); +get_string('unlimited', '', NULL); +get_string('configsitemaxcategorydepth', 'admin', NULL); +get_string('configsitemaxcategorydepthhelp', 'admin', NULL); +get_string('sitesection', '', NULL); +get_string('sitesectionhelp', 'admin', NULL); +get_string('newsitemsnumber', '', NULL); +get_string('coursesperpage', 'admin', NULL); +get_string('configcoursesperpage', 'admin', NULL); +get_string('allowvisiblecoursesinhiddencategories', 'admin', NULL); +get_string('configvisiblecourses', 'admin', NULL); +get_string('none', '', NULL); +get_string('frontpagedefaultrole', 'admin', NULL); +get_string('frontpageroles', 'admin', NULL); +get_string('frontpagebackup', 'admin', NULL); +get_string('frontpagerestore', 'admin', NULL); +get_string('frontpagequestions', 'admin', NULL); +get_string('sitefiles', '', NULL); +get_string('real', 'grades', NULL); +get_string('percentage', 'grades', NULL); +get_string('letter', 'grades', NULL); +get_string('realpercentage', 'grades', NULL); +get_string('realletter', 'grades', NULL); +get_string('letterreal', 'grades', NULL); +get_string('letterpercentage', 'grades', NULL); +get_string('percentageletter', 'grades', NULL); +get_string('percentagereal', 'grades', NULL); +get_string('generalsettings', 'grades', NULL); +get_string('gradebookroles', 'admin', NULL); +get_string('configgradebookroles', 'admin', NULL); +get_string('profilereport', 'grades', NULL); +get_string('configprofilereport', 'grades', NULL); +get_string('aggregationposition', 'grades', NULL); +get_string('configaggregationposition', 'grades', NULL); +get_string('positionfirst', 'grades', NULL); +get_string('positionlast', 'grades', NULL); +get_string('includescalesinaggregation', 'grades', NULL); +get_string('configincludescalesinaggregation', 'grades', NULL); +get_string('hiddenasdate', 'grades', NULL); +get_string('confighiddenasdate', 'grades', NULL); +get_string('gradepublishing', 'grades', NULL); +get_string('configgradepublishing', 'grades', NULL); +get_string('gradeexportdisplaytype', 'grades', NULL); +get_string('configgradeexportdisplaytype', 'grades', NULL); +get_string('gradeexportdecimalpoints', 'grades', NULL); +get_string('configexportdecimalpoints', 'grades', NULL); +get_string('navmethod', 'grades', NULL); +get_string('dropdown', 'grades', NULL); +get_string('tabs', 'grades', NULL); +get_string('combo', 'grades', NULL); +get_string('gradeexport', 'admin', NULL); +get_string('configgradeexport', 'admin', NULL); +get_string('gradecategorysettings', 'grades', NULL); +get_string('hideforcedsettings', 'grades', NULL); +get_string('confighideforcedsettings', 'grades', NULL); +get_string('noforce', 'grades', NULL); +get_string('aggregatemean', 'grades', NULL); +get_string('aggregateweightedmean', 'grades', NULL); +get_string('aggregateweightedmean2', 'grades', NULL); +get_string('aggregateextracreditmean', 'grades', NULL); +get_string('aggregatemedian', 'grades', NULL); +get_string('aggregatemin', 'grades', NULL); +get_string('aggregatemax', 'grades', NULL); +get_string('aggregatemode', 'grades', NULL); +get_string('aggregatesum', 'grades', NULL); +get_string('aggregation', 'grades', NULL); +get_string('aggregationhelp', 'grades', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('aggregateonlygraded', 'grades', NULL); +get_string('aggregateonlygradedhelp', 'grades', NULL); +get_string('aggregateoutcomes', 'grades', NULL); +get_string('aggregateoutcomeshelp', 'grades', NULL); +get_string('aggregatesubcats', 'grades', NULL); +get_string('aggregatesubcatshelp', 'grades', NULL); +get_string('none', '', NULL); +get_string('keephigh', 'grades', NULL); +get_string('keephighhelp', 'grades', NULL); +get_string('droplow', 'grades', NULL); +get_string('droplowhelp', 'grades', NULL); +get_string('gradeitemsettings', 'grades', NULL); +get_string('gradedisplaytype', 'grades', NULL); +get_string('configgradedisplaytype', 'grades', NULL); +get_string('decimalpoints', 'grades', NULL); +get_string('configdecimalpoints', 'grades', NULL); +get_string('gradeitemadvanced', 'grades', NULL); +get_string('configgradeitemadvanced', 'grades', NULL); +get_string('iteminfo', 'grades', NULL); +get_string('idnumbermod', '', NULL); +get_string('gradetype', 'grades', NULL); +get_string('scale', '', NULL); +get_string('grademin', 'grades', NULL); +get_string('grademax', 'grades', NULL); +get_string('gradepass', 'grades', NULL); +get_string('plusfactor', 'grades', NULL); +get_string('multfactor', 'grades', NULL); +get_string('gradedisplaytype', 'grades', NULL); +get_string('decimalpoints', 'grades', NULL); +get_string('hidden', 'grades', NULL); +get_string('hiddenuntil', 'grades', NULL); +get_string('locked', 'grades', NULL); +get_string('locktime', 'grades', NULL); +get_string('aggregationcoef', 'grades', NULL); +get_string('parentcategory', 'grades', NULL); +get_string('scales', '', NULL); +get_string('outcomes', 'grades', NULL); +get_string('letters', 'grades', NULL); +get_string('reportsettings', 'grades', NULL); +get_string('modulename', 'gradereport_grader', NULL); +get_string('inherit', 'grades', NULL); +get_string('percentage', 'grades', NULL); +get_string('real', 'grades', NULL); +get_string('letter', 'grades', NULL); +get_string('inherit', 'grades', NULL); +get_string('studentsperpage', 'grades', NULL); +get_string('configstudentsperpage', 'grades', NULL); +get_string('quickgrading', 'grades', NULL); +get_string('configquickgrading', 'grades', NULL); +get_string('quickfeedback', 'grades', NULL); +get_string('configshowquickfeedback', 'grades', NULL); +get_string('fixedstudents', 'grades', NULL); +get_string('configfixedstudents', 'grades', NULL); +get_string('aggregationview', 'grades', NULL); +get_string('configaggregationview', 'grades', NULL); +get_string('full', 'grades', NULL); +get_string('aggregatesonly', 'grades', NULL); +get_string('gradesonly', 'grades', NULL); +get_string('meanselection', 'grades', NULL); +get_string('configmeanselection', 'grades', NULL); +get_string('meanall', 'grades', NULL); +get_string('meangraded', 'grades', NULL); +get_string('enableajax', 'grades', NULL); +get_string('configenableajax', 'grades', NULL); +get_string('showcalculations', 'grades', NULL); +get_string('configshowcalculations', 'grades', NULL); +get_string('showeyecons', 'grades', NULL); +get_string('configshoweyecons', 'grades', NULL); +get_string('showaverages', 'grades', NULL); +get_string('configshowaverages', 'grades', NULL); +get_string('showgroups', 'grades', NULL); +get_string('configshowgroups', 'grades', NULL); +get_string('showlocks', 'grades', NULL); +get_string('configshowlocks', 'grades', NULL); +get_string('showranges', 'grades', NULL); +get_string('configshowranges', 'grades', NULL); +get_string('showuserimage', 'grades', NULL); +get_string('configshowuserimage', 'grades', NULL); +get_string('showuseridnumber', 'grades', NULL); +get_string('configshowuseridnumber', 'grades', NULL); +get_string('showactivityicons', 'grades', NULL); +get_string('configshowactivityicons', 'grades', NULL); +get_string('shownumberofgrades', 'grades', NULL); +get_string('configshownumberofgrades', 'grades', NULL); +get_string('averagesdisplaytype', 'grades', NULL); +get_string('configaveragesdisplaytype', 'grades', NULL); +get_string('rangesdisplaytype', 'grades', NULL); +get_string('configrangesdisplaytype', 'grades', NULL); +get_string('averagesdecimalpoints', 'grades', NULL); +get_string('configaveragesdecimalpoints', 'grades', NULL); +get_string('rangesdecimalpoints', 'grades', NULL); +get_string('configrangesdecimalpoints', 'grades', NULL); +get_string('modulename', 'gradereport_overview', NULL); +get_string('showrank', 'grades', NULL); +get_string('configshowrank', 'grades', NULL); +get_string('modulename', 'gradereport_stats', NULL); +get_string('statsshow', 'gradereport_stats', NULL); +get_string('aggregationposition', 'grades', NULL); +get_string('configaggregationposition', 'grades', NULL); +get_string('positionfirst', 'grades', NULL); +get_string('positionlast', 'grades', NULL); +get_string('highest', 'gradereport_stats', NULL); +get_string('stats:stat:highest', 'gradereport_stats', NULL); +get_string('lowest', 'gradereport_stats', NULL); +get_string('stats:stat:lowest', 'gradereport_stats', NULL); +get_string('mean', 'gradereport_stats', NULL); +get_string('stats:stat:mean', 'gradereport_stats', NULL); +get_string('median', 'gradereport_stats', NULL); +get_string('stats:stat:median', 'gradereport_stats', NULL); +get_string('mode', 'gradereport_stats', NULL); +get_string('stats:stat:mode', 'gradereport_stats', NULL); +get_string('pass_percent', 'gradereport_stats', NULL); +get_string('stats:stat:passpercent', 'gradereport_stats', NULL); +get_string('standarddeviation', 'gradereport_stats', NULL); +get_string('stats:stat:standarddeviation', 'gradereport_stats', NULL); +get_string('showgroups', 'gradereport_stats', NULL); +get_string('showgroups', 'gradereport_stats', NULL); +get_string('showranges', 'gradereport_stats', NULL); +get_string('showranges', 'gradereport_stats', NULL); +get_string('shownumgrades', 'gradereport_stats', NULL); +get_string('shownumgrades', 'gradereport_stats', NULL); +get_string('showscaleitems', 'gradereport_stats', NULL); +get_string('showscaleitems', 'gradereport_stats', NULL); +get_string('showvalueitems', 'gradereport_stats', NULL); +get_string('showvalueitems', 'gradereport_stats', NULL); +get_string('showinverted', 'gradereport_stats', NULL); +get_string('showinverted', 'gradereport_stats', NULL); +get_string('incompleasmin', 'gradereport_stats', NULL); +get_string('incompleasmin', 'gradereport_stats', NULL); +get_string('usehidden', 'gradereport_stats', NULL); +get_string('usehidden', 'gradereport_stats', NULL); +get_string('uselocked', 'gradereport_stats', NULL); +get_string('uselocked', 'gradereport_stats', NULL); +get_string('modulename', 'gradereport_user', NULL); +get_string('showrank', 'grades', NULL); +get_string('configshowrank', 'grades', NULL); +get_string('showpercentage', 'grades', NULL); +get_string('configshowpercentage', 'grades', NULL); +get_string('shownohidden', 'grades', NULL); +get_string('showhiddenuntilonly', 'grades', NULL); +get_string('showallhidden', 'grades', NULL); +get_string('showhiddenitems', 'grades', NULL); +get_string('configshowhiddenitems', 'grades', NULL); +get_string('importsettings', 'grades', NULL); +get_string('exportsettings', 'grades', NULL); +get_string('languagesettings', 'admin', NULL); +get_string('autolang', 'admin', NULL); +get_string('configautolang', 'admin', NULL); +get_string('lang', 'admin', NULL); +get_string('configlang', 'admin', NULL); +get_string('langmenu', 'admin', NULL); +get_string('configlangmenu', 'admin', NULL); +get_string('langlist', 'admin', NULL); +get_string('configlanglist', 'admin', NULL); +get_string('langcache', 'admin', NULL); +get_string('configlangcache', 'admin', NULL); +get_string('localetext', 'admin', NULL); +get_string('configlocale', 'admin', NULL); +get_string('latinexcelexport', 'admin', NULL); +get_string('configlatinexcelexport', 'admin', NULL); +get_string('langedit', 'admin', NULL); +get_string('langpacks', 'admin', NULL); +get_string('multilangupgrade', 'admin', NULL); +get_string('locationsettings', 'admin', NULL); +get_string('serverlocaltime', '', NULL); +get_string('timezone', 'admin', NULL); +get_string('configtimezone', 'admin', NULL); +get_string('timezonenotforced', 'admin', NULL); +get_string('forcetimezone', 'admin', NULL); +get_string('helpforcetimezone', 'admin', NULL); +get_string('choose', '', NULL); +get_string('country', 'admin', NULL); +get_string('configcountry', 'admin', NULL); +get_string('iplookup', 'admin', NULL); +get_string('iplookupinfo', 'admin', NULL); +get_string('geoipfile', 'admin', NULL); +get_string('configgeoipfile', 'admin', '/var/www/moodledata/geoip/'); +get_string('googlemapkey', 'admin', NULL); +get_string('configgooglemapkey', 'admin', 'http://tim.moodle.com/moodle'); +get_string('updatetimezones', 'admin', NULL); +get_string('settings', 'mnet', NULL); +get_string('mnetpeers', 'mnet', NULL); +get_string('ssoaccesscontrol', 'mnet', NULL); +get_string('mnetenrol', 'mnet', NULL); +get_string('trustedhosts', 'mnet', NULL); +get_string('ipblocker', 'admin', NULL); +get_string('allowbeforeblock', 'admin', NULL); +get_string('allowbeforeblockdesc', 'admin', NULL); +get_string('allowediplist', 'admin', NULL); +get_string('blockediplist', 'admin', NULL); +get_string('webservices', 'admin', NULL); +get_string('webserviceprotocols', 'admin', NULL); +get_string('managewsprotocols', 'admin', NULL); +get_string('managews', 'admin', NULL); +get_string('webservicesystemsettings', 'admin', NULL); +get_string('ipwhitelist', 'admin', NULL); +get_string('webserviceusersettings', 'admin', NULL); +get_string('managewsusersettings', 'admin', NULL); +get_string('sitepolicies', 'admin', NULL); +get_string('protectusernames', 'admin', NULL); +get_string('configprotectusernames', 'admin', NULL); +get_string('forcelogin', 'admin', NULL); +get_string('configforcelogin', 'admin', NULL); +get_string('forceloginforprofiles', 'admin', NULL); +get_string('configforceloginforprofiles', 'admin', NULL); +get_string('opentogoogle', 'admin', NULL); +get_string('configopentogoogle', 'admin', NULL); +get_string('serverlimit', 'admin', NULL); +get_string('maxbytes', 'admin', NULL); +get_string('configmaxbytes', 'admin', NULL); +get_string('allowobjectembed', 'admin', NULL); +get_string('configallowobjectembed', 'admin', NULL); +get_string('enabletrusttext', 'admin', NULL); +get_string('configenabletrusttext', 'admin', NULL); +get_string('maxeditingtime', 'admin', NULL); +get_string('configmaxeditingtime', 'admin', NULL); +get_string('numminutes', '', 1); +get_string('numminutes', '', 5); +get_string('numminutes', '', 15); +get_string('numminutes', '', 30); +get_string('numminutes', '', 45); +get_string('numminutes', '', 60); +get_string('fullnamedisplay', 'admin', NULL); +get_string('configfullnamedisplay', 'admin', NULL); +get_string('language', '', NULL); +get_string('firstname', '', NULL); +get_string('lastname', '', NULL); +get_string('lastname', '', NULL); +get_string('firstname', '', NULL); +get_string('firstname', '', NULL); +get_string('extendedusernamechars', 'admin', NULL); +get_string('configextendedusernamechars', 'admin', NULL); +get_string('sitepolicy', 'admin', NULL); +get_string('configsitepolicy', 'admin', NULL); +get_string('keeptagnamecase', 'admin', NULL); +get_string('configkeeptagnamecase', 'admin', NULL); +get_string('profilesforenrolledusersonly', 'admin', NULL); +get_string('configprofilesforenrolledusersonly', 'admin', NULL); +get_string('cronclionly', 'admin', NULL); +get_string('configcronclionly', 'admin', NULL); +get_string('cronremotepassword', 'admin', NULL); +get_string('configcronremotepassword', 'admin', NULL); +get_string('passwordpolicy', 'admin', NULL); +get_string('configpasswordpolicy', 'admin', NULL); +get_string('minpasswordlength', 'admin', NULL); +get_string('configminpasswordlength', 'admin', NULL); +get_string('minpassworddigits', 'admin', NULL); +get_string('configminpassworddigits', 'admin', NULL); +get_string('minpasswordlower', 'admin', NULL); +get_string('configminpasswordlower', 'admin', NULL); +get_string('minpasswordupper', 'admin', NULL); +get_string('configminpasswordupper', 'admin', NULL); +get_string('minpasswordnonalphanum', 'admin', NULL); +get_string('configminpasswordnonalphanum', 'admin', NULL); +get_string('disableuserimages', 'admin', NULL); +get_string('configdisableuserimages', 'admin', NULL); +get_string('emailchangeconfirmation', 'admin', NULL); +get_string('configemailchangeconfirmation', 'admin', NULL); +get_string('httpsecurity', 'admin', NULL); +get_string('loginhttps', 'admin', NULL); +get_string('configloginhttps', 'admin', NULL); +get_string('cookiesecure', 'admin', NULL); +get_string('configcookiesecure', 'admin', NULL); +get_string('cookiehttponly', 'admin', NULL); +get_string('configcookiehttponly', 'admin', NULL); +get_string('modulesecurity', 'admin', NULL); +get_string('restrictmodulesfor', 'admin', NULL); +get_string('configrestrictmodulesfor', 'admin', NULL); +get_string('restrictbydefault', 'admin', NULL); +get_string('configrestrictbydefault', 'admin', NULL); +get_string('defaultallowedmodules', 'admin', NULL); +get_string('configdefaultallowedmodules', 'admin', NULL); +get_string('notifications', 'admin', NULL); +get_string('displayloginfailures', 'admin', NULL); +get_string('configdisplayloginfailures', 'admin', NULL); +get_string('nobody', '', NULL); +get_string('administrators', '', NULL); +get_string('administratorsandteachers', '', NULL); +get_string('everybody', '', NULL); +get_string('notifyloginfailures', 'admin', NULL); +get_string('confignotifyloginfailures', 'admin', NULL); +get_string('nobody', '', NULL); +get_string('site:config', 'role', NULL); +get_string('everyonewhocan', 'admin', 'Change site configuration'); +get_string('notifyloginthreshold', 'admin', NULL); +get_string('confignotifyloginthreshold', 'admin', NULL); +get_string('antivirus', 'admin', NULL); +get_string('runclamavonupload', 'admin', NULL); +get_string('configrunclamavonupload', 'admin', NULL); +get_string('pathtoclam', 'admin', NULL); +get_string('configpathtoclam', 'admin', NULL); +get_string('quarantinedir', 'admin', NULL); +get_string('configquarantinedir', 'admin', NULL); +get_string('clamfailureonupload', 'admin', NULL); +get_string('configclamfailureonupload', 'admin', NULL); +get_string('configclamdonothing', 'admin', NULL); +get_string('configclamactlikevirus', 'admin', NULL); +get_string('systempaths', 'admin', NULL); +get_string('gdversion', 'admin', NULL); +get_string('configgdversion', 'admin', NULL); +get_string('gdnot', '', NULL); +get_string('gd1', '', NULL); +get_string('gd2', '', NULL); +get_string('pathtodu', 'admin', NULL); +get_string('configpathtodu', 'admin', NULL); +get_string('aspellpath', 'admin', NULL); +get_string('edhelpaspellpath', '', NULL); +get_string('mail', 'admin', NULL); +get_string('smtphosts', 'admin', NULL); +get_string('configsmtphosts', 'admin', NULL); +get_string('smtpuser', 'admin', NULL); +get_string('configsmtpuser', 'admin', NULL); +get_string('smtppass', 'admin', NULL); +get_string('configsmtpuser', 'admin', NULL); +get_string('smtpmaxbulk', 'admin', NULL); +get_string('configsmtpmaxbulk', 'admin', NULL); +get_string('noreplyaddress', 'admin', NULL); +get_string('confignoreplyaddress', 'admin', NULL); +get_string('digestmailtime', 'admin', NULL); +get_string('configdigestmailtime', 'admin', NULL); +get_string('sitemailcharset', 'admin', NULL); +get_string('configsitemailcharset', 'admin', NULL); +get_string('allowusermailcharset', 'admin', NULL); +get_string('configallowusermailcharset', 'admin', NULL); +get_string('mailnewline', 'admin', NULL); +get_string('configmailnewline', 'admin', NULL); +get_string('supportname', 'admin', NULL); +get_string('configsupportname', 'admin', NULL); +get_string('supportemail', 'admin', NULL); +get_string('configsupportemail', 'admin', NULL); +get_string('supportpage', 'admin', NULL); +get_string('configsupportpage', 'admin', NULL); +get_string('sessionhandling', 'admin', NULL); +get_string('dbsessions', 'admin', NULL); +get_string('configdbsessions', 'admin', NULL); +get_string('sessiontimeout', 'admin', NULL); +get_string('configsessiontimeout', 'admin', NULL); +get_string('numhours', '', 4); +get_string('numhours', '', 3); +get_string('numhours', '', 2); +get_string('numhours', '', '1.5'); +get_string('numminutes', '', 60); +get_string('numminutes', '', 45); +get_string('numminutes', '', 30); +get_string('numminutes', '', 15); +get_string('numminutes', '', 5); +get_string('sessioncookie', 'admin', NULL); +get_string('configsessioncookie', 'admin', NULL); +get_string('sessioncookiepath', 'admin', NULL); +get_string('configsessioncookiepath', 'admin', NULL); +get_string('sessioncookiedomain', 'admin', NULL); +get_string('configsessioncookiedomain', 'admin', NULL); +get_string('debugging', 'admin', NULL); +get_string('debug', 'admin', NULL); +get_string('configdebug', 'admin', NULL); +get_string('debugdisplay', 'admin', NULL); +get_string('configdebugdisplay', 'admin', NULL); +get_string('xmlstrictheaders', 'admin', NULL); +get_string('configxmlstrictheaders', 'admin', NULL); +get_string('debugsmtp', 'admin', NULL); +get_string('configdebugsmtp', 'admin', NULL); +get_string('perfdebug', 'admin', NULL); +get_string('configperfdebug', 'admin', NULL); +get_string('stats', '', NULL); +get_string('statsfirstrun', 'admin', NULL); +get_string('configstatsfirstrun', 'admin', NULL); +get_string('none', '', NULL); +get_string('numweeks', 'moodle', 1); +get_string('numweeks', 'moodle', 2); +get_string('numweeks', 'moodle', 3); +get_string('nummonths', 'moodle', 1); +get_string('nummonths', 'moodle', 2); +get_string('nummonths', 'moodle', 3); +get_string('nummonths', 'moodle', 4); +get_string('nummonths', 'moodle', 5); +get_string('nummonths', 'moodle', 6); +get_string('all', '', NULL); +get_string('statsmaxruntime', 'admin', NULL); +get_string('configstatsmaxruntime3', 'admin', NULL); +get_string('untilcomplete', '', NULL); +get_string('minutes', '', NULL); +get_string('minutes', '', NULL); +get_string('hour', '', NULL); +get_string('hours', '', NULL); +get_string('hours', '', NULL); +get_string('hours', '', NULL); +get_string('hours', '', NULL); +get_string('hours', '', NULL); +get_string('hours', '', NULL); +get_string('hours', '', NULL); +get_string('statsruntimedays', 'admin', NULL); +get_string('configstatsruntimedays', 'admin', NULL); +get_string('statsruntimestart', 'admin', NULL); +get_string('configstatsruntimestart', 'admin', NULL); +get_string('statsuserthreshold', 'admin', NULL); +get_string('configstatsuserthreshold', 'admin', NULL); +get_string('statscatdepth', 'admin', NULL); +get_string('configstatscatdepth', 'admin', NULL); +get_string('http', 'admin', NULL); +get_string('framename', 'admin', NULL); +get_string('configframename', 'admin', NULL); +get_string('slasharguments', 'admin', NULL); +get_string('configslasharguments', 'admin', NULL); +get_string('reverseproxy', 'admin', NULL); +get_string('getremoteaddrconf', 'admin', NULL); +get_string('configgetremoteaddrconf', 'admin', NULL); +get_string('webproxy', 'admin', NULL); +get_string('webproxyinfo', 'admin', NULL); +get_string('proxyhost', 'admin', NULL); +get_string('configproxyhost', 'admin', NULL); +get_string('proxyport', 'admin', NULL); +get_string('configproxyport', 'admin', NULL); +get_string('proxytype', 'admin', NULL); +get_string('configproxytype', 'admin', NULL); +get_string('proxyuser', 'admin', NULL); +get_string('configproxyuser', 'admin', NULL); +get_string('proxypassword', 'admin', NULL); +get_string('configproxypassword', 'admin', NULL); +get_string('proxybypass', 'admin', NULL); +get_string('configproxybypass', 'admin', NULL); +get_string('sitemaintenancemode', 'admin', NULL); +get_string('cleanup', 'admin', NULL); +get_string('longtimenosee', 'admin', NULL); +get_string('configlongtimenosee', 'admin', NULL); +get_string('never', '', NULL); +get_string('numdays', '', 1000); +get_string('numdays', '', 365); +get_string('numdays', '', 180); +get_string('numdays', '', 150); +get_string('numdays', '', 120); +get_string('numdays', '', 90); +get_string('numdays', '', 60); +get_string('numdays', '', 30); +get_string('numdays', '', 21); +get_string('numdays', '', 14); +get_string('numdays', '', 7); +get_string('deleteunconfirmed', 'admin', NULL); +get_string('configdeleteunconfirmed', 'admin', NULL); +get_string('never', '', NULL); +get_string('numdays', '', 7); +get_string('numdays', '', 6); +get_string('numdays', '', 5); +get_string('numdays', '', 4); +get_string('numdays', '', 3); +get_string('numdays', '', 2); +get_string('numdays', '', 1); +get_string('numhours', '', 12); +get_string('numhours', '', 6); +get_string('numhours', '', 1); +get_string('deleteincompleteusers', 'admin', NULL); +get_string('configdeleteincompleteusers', 'admin', NULL); +get_string('never', '', NULL); +get_string('numdays', '', 7); +get_string('numdays', '', 6); +get_string('numdays', '', 5); +get_string('numdays', '', 4); +get_string('numdays', '', 3); +get_string('numdays', '', 2); +get_string('numdays', '', 1); +get_string('loglifetime', 'admin', NULL); +get_string('configloglifetime', 'admin', NULL); +get_string('neverdeletelogs', '', NULL); +get_string('numdays', '', 1000); +get_string('numdays', '', 365); +get_string('numdays', '', 180); +get_string('numdays', '', 150); +get_string('numdays', '', 120); +get_string('numdays', '', 90); +get_string('numdays', '', 60); +get_string('numdays', '', 35); +get_string('numdays', '', 10); +get_string('numdays', '', 5); +get_string('numdays', '', 2); +get_string('disablegradehistory', 'grades', NULL); +get_string('configdisablegradehistory', 'grades', NULL); +get_string('gradehistorylifetime', 'grades', NULL); +get_string('configgradehistorylifetime', 'grades', NULL); +get_string('neverdeletehistory', 'grades', NULL); +get_string('numdays', '', 1000); +get_string('numdays', '', 365); +get_string('numdays', '', 180); +get_string('numdays', '', 150); +get_string('numdays', '', 120); +get_string('numdays', '', 90); +get_string('numdays', '', 60); +get_string('numdays', '', 30); +get_string('environment', 'admin', NULL); +get_string('phpinfo', '', NULL); +get_string('performance', 'admin', NULL); +get_string('cachetype', 'admin', NULL); +get_string('configcachetype', 'admin', NULL); +get_string('none', '', NULL); +get_string('rcache', 'admin', NULL); +get_string('configrcache', 'admin', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('rcachettl', 'admin', NULL); +get_string('configrcachettl', 'admin', NULL); +get_string('intcachemax', 'admin', NULL); +get_string('configintcachemax', 'admin', NULL); +get_string('memcachedhosts', 'admin', NULL); +get_string('configmemcachedhosts', 'admin', NULL); +get_string('memcachedpconn', 'admin', NULL); +get_string('configmemcachedpconn', 'admin', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('registration', 'admin', NULL); +get_string('enablegroupings', 'admin', NULL); +get_string('configenablegroupings', 'admin', NULL); +get_string('enableoutcomes', 'grades', NULL); +get_string('configenableoutcomes', 'grades', NULL); +get_string('usetags', 'admin', NULL); +get_string('configusetags', 'admin', NULL); +get_string('enablenotes', 'notes', NULL); +get_string('configenablenotes', 'notes', NULL); +get_string('enabled', 'portfolio', NULL); +get_string('enableddesc', 'portfolio', NULL); +get_string('enablewebservices', 'admin', NULL); +get_string('configenablewebservices', 'admin', NULL); +get_string('messaging', 'admin', NULL); +get_string('configmessaging', 'admin', NULL); +get_string('enablestats', 'admin', NULL); +get_string('configenablestats', 'admin', NULL); +get_string('enablerssfeeds', 'admin', NULL); +get_string('configenablerssfeeds', 'admin', NULL); +get_string('bloglevel', 'admin', NULL); +get_string('configbloglevel', 'admin', NULL); +get_string('worldblogs', 'blog', NULL); +get_string('siteblogs', 'blog', NULL); +get_string('courseblogs', 'blog', NULL); +get_string('groupblogs', 'blog', NULL); +get_string('personalblogs', 'blog', NULL); +get_string('disableblogs', 'blog', NULL); +get_string('off', 'mnet', NULL); +get_string('on', 'mnet', NULL); +get_string('net', 'mnet', NULL); +get_string('configmnet', 'mnet', NULL); +get_string('enablecompletion', 'completion', NULL); +get_string('configenablecompletion', 'completion', NULL); +get_string('progresstrackedroles', 'completion', NULL); +get_string('configprogresstrackedroles', 'completion', NULL); +get_string('enableavailability', 'condition', NULL); +get_string('configenableavailability', 'condition', NULL); +get_string('healthcenter', '', NULL); +get_string('authentication', 'admin', NULL); +get_string('accounts', 'admin', NULL); +get_string('permissions', 'role', NULL); +get_string('authsettings', 'admin', NULL); +get_string('authsettings', 'admin', NULL); +get_string('commonsettings', 'admin', NULL); +get_string('selfregistration', 'auth', NULL); +get_string('selfregistration_help', 'auth', NULL); +get_string('guestloginbutton', 'auth', NULL); +get_string('showguestlogin', 'auth', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('alternateloginurl', 'auth', NULL); +get_string('alternatelogin', 'auth', 'http://tim.moodle.com/moodle/login/index.php'); +get_string('forgottenpasswordurl', 'auth', NULL); +get_string('forgottenpassword', 'auth', NULL); +get_string('instructions', 'auth', NULL); +get_string('authinstructions', 'auth', NULL); +get_string('allowemailaddresses', 'admin', NULL); +get_string('configallowemailaddresses', 'admin', NULL); +get_string('denyemailaddresses', 'admin', NULL); +get_string('configdenyemailaddresses', 'admin', NULL); +get_string('verifychangedemail', 'admin', NULL); +get_string('configverifychangedemail', 'admin', NULL); +get_string('recaptchapublickey', 'admin', NULL); +get_string('configrecaptchapublickey', 'admin', NULL); +get_string('recaptchaprivatekey', 'admin', NULL); +get_string('configrecaptchaprivatekey', 'admin', NULL); +get_string('auth_castitle', 'auth', NULL); +get_string('auth_dbtitle', 'auth', NULL); +get_string('auth_emailtitle', 'auth', NULL); +get_string('auth_fctitle', 'auth', NULL); +get_string('auth_imaptitle', 'auth', NULL); +get_string('auth_ldaptitle', 'auth', NULL); +get_string('auth_manualtitle', 'auth', NULL); +get_string('auth_mnettitle', 'auth', NULL); +get_string('auth_nntptitle', 'auth', NULL); +get_string('auth_nologintitle', 'auth', NULL); +get_string('auth_nonetitle', 'auth', NULL); +get_string('auth_pamtitle', 'auth', NULL); +get_string('auth_pop3title', 'auth', NULL); +get_string('auth_radiustitle', 'auth', NULL); +get_string('auth_shibbolethtitle', 'auth', NULL); +get_string('userlist', 'admin', NULL); +get_string('userbulk', 'admin', NULL); +get_string('addnewuser', '', NULL); +get_string('uploadusers', '', NULL); +get_string('uploadpictures', 'admin', NULL); +get_string('profilefields', 'admin', NULL); +get_string('userpolicies', 'admin', NULL); +get_string('notloggedinroleid', 'admin', NULL); +get_string('confignotloggedinroleid', 'admin', NULL); +get_string('guestroleid', 'admin', NULL); +get_string('configguestroleid', 'admin', NULL); +get_string('defaultuserroleid', 'admin', NULL); +get_string('configdefaultuserroleid', 'admin', NULL); +get_string('nodefaultuserrolelists', 'admin', NULL); +get_string('confignodefaultuserrolelists', 'admin', NULL); +get_string('defaultcourseroleid', 'admin', NULL); +get_string('configdefaultcourseroleid', 'admin', NULL); +get_string('creatornewroleid', 'admin', NULL); +get_string('configcreatornewroleid', 'admin', NULL); +get_string('autologinguests', 'admin', NULL); +get_string('configautologinguests', 'admin', NULL); +get_string('nonmetacoursesyncroleids', 'admin', NULL); +get_string('confignonmetacoursesyncroleids', 'admin', NULL); +get_string('hiddenuserfields', 'admin', NULL); +get_string('confighiddenuserfields', 'admin', NULL); +get_string('description', '', NULL); +get_string('city', '', NULL); +get_string('country', '', NULL); +get_string('webpage', '', NULL); +get_string('icqnumber', '', NULL); +get_string('skypeid', '', NULL); +get_string('yahooid', '', NULL); +get_string('aimid', '', NULL); +get_string('msnid', '', NULL); +get_string('firstaccess', '', NULL); +get_string('lastaccess', '', NULL); +get_string('mycourses', '', NULL); +get_string('extrauserselectorfields', 'admin', NULL); +get_string('configextrauserselectorfields', 'admin', NULL); +get_string('email', '', NULL); +get_string('idnumber', '', NULL); +get_string('username', '', NULL); +get_string('defineroles', 'role', NULL); +get_string('assignglobalroles', 'role', NULL); +get_string('checkglobalpermissions', 'role', NULL); +get_string('activitymodules', '', NULL); +get_string('modsettings', 'admin', NULL); +get_string('modulename', 'assignment', NULL); +get_string('modulename', 'choice', NULL); +get_string('modulename', 'data', NULL); +get_string('modulename', 'forum', NULL); +get_string('modulename', 'glossary', NULL); +get_string('modulename', 'label', NULL); +get_string('modulename', 'resource', NULL); +get_string('modulename', 'scorm', NULL); +get_string('modulename', 'survey', NULL); +get_string('modulename', 'hotpot', NULL); +get_string('modulename', 'wiki', NULL); +get_string('modulename', 'lesson', NULL); +get_string('modulename', 'quiz', NULL); +get_string('modulename', 'chat', NULL); +get_string('modulename', 'feedback', NULL); +get_string('maximumsize', 'assignment', NULL); +get_string('configmaxbytes', 'assignment', NULL); +get_string('numwords', '', NULL); +get_string('numletters', '', NULL); +get_string('itemstocount', 'assignment', NULL); +get_string('configitemstocount', 'assignment', NULL); +get_string('showrecentsubmissions', 'assignment', NULL); +get_string('configshowrecentsubmissions', 'assignment', NULL); +get_string('generalconfig', 'chat', NULL); +get_string('explaingeneralconfig', 'chat', NULL); +get_string('methodnormal', 'chat', NULL); +get_string('methoddaemon', 'chat', NULL); +get_string('method', 'chat', NULL); +get_string('configmethod', 'chat', NULL); +get_string('refreshuserlist', 'chat', NULL); +get_string('configrefreshuserlist', 'chat', NULL); +get_string('oldping', 'chat', NULL); +get_string('configoldping', 'chat', NULL); +get_string('methodnormal', 'chat', NULL); +get_string('explainmethodnormal', 'chat', NULL); +get_string('refreshroom', 'chat', NULL); +get_string('configrefreshroom', 'chat', NULL); +get_string('normalkeepalive', 'chat', NULL); +get_string('normalstream', 'chat', NULL); +get_string('updatemethod', 'chat', NULL); +get_string('confignormalupdatemode', 'chat', NULL); +get_string('methoddaemon', 'chat', NULL); +get_string('explainmethoddaemon', 'chat', NULL); +get_string('serverhost', 'chat', NULL); +get_string('configserverhost', 'chat', NULL); +get_string('serverip', 'chat', NULL); +get_string('configserverip', 'chat', NULL); +get_string('serverport', 'chat', NULL); +get_string('configserverport', 'chat', NULL); +get_string('servermax', 'chat', NULL); +get_string('configservermax', 'chat', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('configenablerssfeeds', 'data', NULL); +get_string('enablerssfeeds', 'admin', NULL); +get_string('displaymode', 'forum', NULL); +get_string('configdisplaymode', 'forum', NULL); +get_string('modeflatoldestfirst', 'forum', NULL); +get_string('modeflatnewestfirst', 'forum', NULL); +get_string('modethreaded', 'forum', NULL); +get_string('modenested', 'forum', NULL); +get_string('replytouser', 'forum', NULL); +get_string('configreplytouser', 'forum', NULL); +get_string('shortpost', 'forum', NULL); +get_string('configshortpost', 'forum', NULL); +get_string('longpost', 'forum', NULL); +get_string('configlongpost', 'forum', NULL); +get_string('manydiscussions', 'forum', NULL); +get_string('configmanydiscussions', 'forum', NULL); +get_string('maxattachmentsize', 'forum', NULL); +get_string('configmaxbytes', 'forum', NULL); +get_string('maxattachments', 'forum', NULL); +get_string('configmaxattachments', 'forum', NULL); +get_string('trackforum', 'forum', NULL); +get_string('configtrackreadposts', 'forum', NULL); +get_string('oldpostdays', 'forum', NULL); +get_string('configoldpostdays', 'forum', NULL); +get_string('usermarksread', 'forum', NULL); +get_string('configusermarksread', 'forum', NULL); +get_string('cleanreadtime', 'forum', NULL); +get_string('configcleanreadtime', 'forum', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('configenablerssfeeds', 'forum', NULL); +get_string('enablerssfeeds', 'admin', NULL); +get_string('timedposts', 'forum', NULL); +get_string('configenabletimedposts', 'forum', NULL); +get_string('logblocked', 'forum', NULL); +get_string('configlogblocked', 'forum', NULL); +get_string('ajaxrating', 'forum', NULL); +get_string('configajaxrating', 'forum', NULL); +get_string('glossaryleveldefaultsettings', 'glossary', NULL); +get_string('entbypage', 'glossary', NULL); +get_string('entbypage', 'glossary', NULL); +get_string('allowduplicatedentries', 'glossary', NULL); +get_string('cnfallowdupentries', 'glossary', NULL); +get_string('allowcomments', 'glossary', NULL); +get_string('cnfallowcomments', 'glossary', NULL); +get_string('usedynalink', 'glossary', NULL); +get_string('cnflinkglossaries', 'glossary', NULL); +get_string('defaultapproval', 'glossary', NULL); +get_string('cnfapprovalstatus', 'glossary', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('configenablerssfeeds', 'glossary', NULL); +get_string('enablerssfeeds', 'admin', NULL); +get_string('entryleveldefaultsettings', 'glossary', NULL); +get_string('usedynalink', 'glossary', NULL); +get_string('cnflinkentry', 'glossary', NULL); +get_string('casesensitive', 'glossary', NULL); +get_string('cnfcasesensitive', 'glossary', NULL); +get_string('fullmatch', 'glossary', NULL); +get_string('cnffullmatch', 'glossary', NULL); +get_string('displayformatcontinuous', 'glossary', NULL); +get_string('displayformatdictionary', 'glossary', NULL); +get_string('displayformatencyclopedia', 'glossary', NULL); +get_string('displayformatentrylist', 'glossary', NULL); +get_string('displayformatfaq', 'glossary', NULL); +get_string('displayformatfullwithauthor', 'glossary', NULL); +get_string('displayformatfullwithoutauthor', 'glossary', NULL); +get_string('edit', '', NULL); +get_string('edit', '', NULL); +get_string('hide', '', NULL); +get_string('edit', '', NULL); +get_string('edit', '', NULL); +get_string('hide', '', NULL); +get_string('edit', '', NULL); +get_string('edit', '', NULL); +get_string('hide', '', NULL); +get_string('edit', '', NULL); +get_string('edit', '', NULL); +get_string('hide', '', NULL); +get_string('edit', '', NULL); +get_string('edit', '', NULL); +get_string('hide', '', NULL); +get_string('edit', '', NULL); +get_string('edit', '', NULL); +get_string('hide', '', NULL); +get_string('edit', '', NULL); +get_string('edit', '', NULL); +get_string('hide', '', NULL); +get_string('displayformatssetup', 'glossary', NULL); +get_string('showtimes', 'hotpot', NULL); +get_string('configshowtimes', 'hotpot', NULL); +get_string('excelencodings', 'hotpot', NULL); +get_string('configexcelencodings', 'hotpot', NULL); +get_string('modulename', 'quiz', NULL); +get_string('configintro', 'quiz', NULL); +get_string('timelimitsec', 'quiz', NULL); +get_string('configtimelimitsec', 'quiz', NULL); +get_string('unlimited', '', NULL); +get_string('attemptsallowed', 'quiz', NULL); +get_string('configattemptsallowed', 'quiz', NULL); +get_string('grademethod', 'quiz', NULL); +get_string('configgrademethod', 'quiz', NULL); +get_string('gradehighest', 'quiz', NULL); +get_string('gradeaverage', 'quiz', NULL); +get_string('attemptfirst', 'quiz', NULL); +get_string('attemptlast', 'quiz', NULL); +get_string('maximumgrade', '', NULL); +get_string('configmaximumgrade', 'quiz', NULL); +get_string('shufflequestions', 'quiz', NULL); +get_string('configshufflequestions', 'quiz', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('never', '', NULL); +get_string('aftereachquestion', 'quiz', NULL); +get_string('afternquestions', 'quiz', 2); +get_string('afternquestions', 'quiz', 3); +get_string('afternquestions', 'quiz', 4); +get_string('afternquestions', 'quiz', 5); +get_string('afternquestions', 'quiz', 6); +get_string('afternquestions', 'quiz', 7); +get_string('afternquestions', 'quiz', 8); +get_string('afternquestions', 'quiz', 9); +get_string('afternquestions', 'quiz', 10); +get_string('afternquestions', 'quiz', 11); +get_string('afternquestions', 'quiz', 12); +get_string('afternquestions', 'quiz', 13); +get_string('afternquestions', 'quiz', 14); +get_string('afternquestions', 'quiz', 15); +get_string('afternquestions', 'quiz', 16); +get_string('afternquestions', 'quiz', 17); +get_string('afternquestions', 'quiz', 18); +get_string('afternquestions', 'quiz', 19); +get_string('afternquestions', 'quiz', 20); +get_string('afternquestions', 'quiz', 21); +get_string('afternquestions', 'quiz', 22); +get_string('afternquestions', 'quiz', 23); +get_string('afternquestions', 'quiz', 24); +get_string('afternquestions', 'quiz', 25); +get_string('afternquestions', 'quiz', 26); +get_string('afternquestions', 'quiz', 27); +get_string('afternquestions', 'quiz', 28); +get_string('afternquestions', 'quiz', 29); +get_string('afternquestions', 'quiz', 30); +get_string('afternquestions', 'quiz', 31); +get_string('afternquestions', 'quiz', 32); +get_string('afternquestions', 'quiz', 33); +get_string('afternquestions', 'quiz', 34); +get_string('afternquestions', 'quiz', 35); +get_string('afternquestions', 'quiz', 36); +get_string('afternquestions', 'quiz', 37); +get_string('afternquestions', 'quiz', 38); +get_string('afternquestions', 'quiz', 39); +get_string('afternquestions', 'quiz', 40); +get_string('afternquestions', 'quiz', 41); +get_string('afternquestions', 'quiz', 42); +get_string('afternquestions', 'quiz', 43); +get_string('afternquestions', 'quiz', 44); +get_string('afternquestions', 'quiz', 45); +get_string('afternquestions', 'quiz', 46); +get_string('afternquestions', 'quiz', 47); +get_string('afternquestions', 'quiz', 48); +get_string('afternquestions', 'quiz', 49); +get_string('afternquestions', 'quiz', 50); +get_string('newpageevery', 'quiz', NULL); +get_string('confignewpageevery', 'quiz', NULL); +get_string('shufflewithin', 'quiz', NULL); +get_string('configshufflewithin', 'quiz', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('adaptive', 'quiz', NULL); +get_string('configadaptive', 'quiz', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('penaltyscheme', 'quiz', NULL); +get_string('configpenaltyscheme', 'quiz', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('eachattemptbuildsonthelast', 'quiz', NULL); +get_string('configeachattemptbuildsonthelast', 'quiz', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('reviewoptions', 'quiz', NULL); +get_string('configreviewoptions', 'quiz', NULL); +get_string('showuserpicture', 'quiz', NULL); +get_string('configshowuserpicture', 'quiz', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('decimalplaces', 'quiz', NULL); +get_string('configdecimalplaces', 'quiz', NULL); +get_string('sameasoverall', 'quiz', NULL); +get_string('decimalplacesquestion', 'quiz', NULL); +get_string('configdecimalplacesquestion', 'quiz', NULL); +get_string('requirepassword', 'quiz', NULL); +get_string('configrequirepassword', 'quiz', NULL); +get_string('requiresubnet', 'quiz', NULL); +get_string('configrequiresubnet', 'quiz', NULL); +get_string('delay1st2nd', 'quiz', NULL); +get_string('configdelay1st2nd', 'quiz', NULL); +get_string('delaylater', 'quiz', NULL); +get_string('configdelaylater', 'quiz', NULL); +get_string('showinsecurepopup', 'quiz', NULL); +get_string('configpopup', 'quiz', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('framesize', 'resource', NULL); +get_string('configframesize', 'resource', NULL); +get_string('websearchdefault', 'resource', NULL); +get_string('configwebsearch', 'resource', NULL); +get_string('resourcedefaulturl', 'resource', NULL); +get_string('configdefaulturl', 'resource', NULL); +get_string('password', '', NULL); +get_string('configsecretphrase', 'resource', NULL); +get_string('allowlocalfiles', 'resource', NULL); +get_string('configallowlocalfiles', 'resource', NULL); +get_string('pagewindow', 'resource', NULL); +get_string('newwindow', 'resource', NULL); +get_string('display', 'resource', NULL); +get_string('configpopup', 'resource', NULL); +get_string('newresizable', 'resource', NULL); +get_string('configpopupresizable', 'resource', NULL); +get_string('newscrollbars', 'resource', NULL); +get_string('configpopupscrollbars', 'resource', NULL); +get_string('newdirectories', 'resource', NULL); +get_string('configpopupdirectories', 'resource', NULL); +get_string('newlocation', 'resource', NULL); +get_string('configpopuplocation', 'resource', NULL); +get_string('newmenubar', 'resource', NULL); +get_string('configpopupmenubar', 'resource', NULL); +get_string('newtoolbar', 'resource', NULL); +get_string('configpopuptoolbar', 'resource', NULL); +get_string('newstatus', 'resource', NULL); +get_string('configpopupstatus', 'resource', NULL); +get_string('newwidth', 'resource', NULL); +get_string('configpopupwidth', 'resource', NULL); +get_string('newheight', 'resource', NULL); +get_string('configpopupheight', 'resource', NULL); +get_string('autofilerename', 'resource', NULL); +get_string('configautofilerenamesettings', 'resource', NULL); +get_string('blockdeletingfile', 'resource', NULL); +get_string('configblockdeletingfilesettings', 'resource', NULL); +get_string('no', '', NULL); +get_string('yes', '', NULL); +get_string('grademethod', 'scorm', NULL); +get_string('grademethoddesc', 'scorm', NULL); +get_string('gradescoes', 'scorm', NULL); +get_string('gradehighest', 'scorm', NULL); +get_string('gradeaverage', 'scorm', NULL); +get_string('gradesum', 'scorm', NULL); +get_string('maximumgrade', '', NULL); +get_string('maximumgradedesc', 'scorm', NULL); +get_string('maximumattempts', 'scorm', NULL); +get_string('displayattemptstatus', 'scorm', NULL); +get_string('displayattemptstatusdesc', 'scorm', NULL); +get_string('displaycoursestructure', 'scorm', NULL); +get_string('displaycoursestructuredesc', 'scorm', NULL); +get_string('forcecompleted', 'scorm', NULL); +get_string('forcecompleteddesc', 'scorm', NULL); +get_string('forcenewattempt', 'scorm', NULL); +get_string('forcenewattemptdesc', 'scorm', NULL); +get_string('lastattemptlock', 'scorm', NULL); +get_string('lastattemptlockdesc', 'scorm', NULL); +get_string('whatgrade', 'scorm', NULL); +get_string('whatgradedesc', 'scorm', NULL); +get_string('highestattempt', 'scorm', NULL); +get_string('averageattempt', 'scorm', NULL); +get_string('firstattempt', 'scorm', NULL); +get_string('lastattempt', 'scorm', NULL); +get_string('width', 'scorm', NULL); +get_string('framewidth', 'scorm', NULL); +get_string('height', 'scorm', NULL); +get_string('frameheight', 'scorm', NULL); +get_string('display', 'scorm', NULL); +get_string('displaydesc', 'scorm', NULL); +get_string('iframe', 'scorm', NULL); +get_string('popup', 'scorm', NULL); +get_string('resizable', 'scorm', NULL); +get_string('scrollbars', 'scorm', NULL); +get_string('directories', 'scorm', NULL); +get_string('location', 'scorm', NULL); +get_string('menubar', 'scorm', NULL); +get_string('toolbar', 'scorm', NULL); +get_string('status', 'scorm', NULL); +get_string('skipview', 'scorm', NULL); +get_string('skipviewdesc', 'scorm', NULL); +get_string('never', '', NULL); +get_string('firstaccess', 'scorm', NULL); +get_string('always', '', NULL); +get_string('hidebrowse', 'scorm', NULL); +get_string('hidebrowsedesc', 'scorm', NULL); +get_string('hidetoc', 'scorm', NULL); +get_string('hidetocdesc', 'scorm', NULL); +get_string('sided', 'scorm', NULL); +get_string('hidden', 'scorm', NULL); +get_string('popupmenu', 'scorm', NULL); +get_string('hidenav', 'scorm', NULL); +get_string('hidenavdesc', 'scorm', NULL); +get_string('autocontinue', 'scorm', NULL); +get_string('autocontinuedesc', 'scorm', NULL); +get_string('updatefreq', 'scorm', NULL); +get_string('updatefreqdesc', 'scorm', NULL); +get_string('never', '', NULL); +get_string('onchanges', 'scorm', NULL); +get_string('everyday', 'scorm', NULL); +get_string('everytime', 'scorm', NULL); +get_string('updatetime', 'scorm', NULL); +get_string('allowtypeexternal', 'scorm', NULL); +get_string('allowtypelocalsync', 'scorm', NULL); +get_string('allowtypeimsrepository', 'scorm', NULL); +get_string('allowapidebug', 'scorm', NULL); +get_string('apidebugmask', 'scorm', NULL); +get_string('blocks', '', NULL); +get_string('blocksettings', 'admin', NULL); +get_string('stickyblocks', 'admin', NULL); +get_string('activities', '', NULL); +get_string('administration', '', NULL); +get_string('adminbookmarks', '', NULL); +get_string('administrationsite', '', NULL); +get_string('blockmenutitle', 'blog', NULL); +get_string('blocktagstitle', 'blog', NULL); +get_string('calendar', 'calendar', NULL); +get_string('upcomingevents', 'calendar', NULL); +get_string('courses', '', NULL); +get_string('pagedescription', 'block_course_summary', NULL); +get_string('blockname', 'block_glossary_random', NULL); +get_string('html', 'block_html', NULL); +get_string('loancalc', 'block_loancalc', NULL); +get_string('login', '', NULL); +get_string('blockname', 'block_mentees', NULL); +get_string('messages', 'message', NULL); +get_string('mnet_hosts', 'block_mnet_hosts', NULL); +get_string('latestnews', '', NULL); +get_string('blockname', 'block_online_users', NULL); +get_string('people', '', NULL); +get_string('formaltitle', 'block_quiz_results', NULL); +get_string('recentactivity', '', NULL); +get_string('feedstitle', 'block_rss_client', NULL); +get_string('blockname', 'block_search', NULL); +get_string('blocktitle', 'block_search_forums', NULL); +get_string('blockname', 'block_section_links', NULL); +get_string('mainmenu', '', NULL); +get_string('blockname', 'block_social_activities', NULL); +get_string('defaulttile', 'block_tag_flickr', NULL); +get_string('blockname', 'block_tag_youtube', NULL); +get_string('blocktagstitle', 'tag', NULL); +get_string('allcourses', 'block_course_list', NULL); +get_string('owncourses', 'block_course_list', NULL); +get_string('adminview', 'block_course_list', NULL); +get_string('configadminview', 'block_course_list', NULL); +get_string('hideallcourseslink', 'block_course_list', NULL); +get_string('confighideallcourseslink', 'block_course_list', NULL); +get_string('timetosee', 'block_online_users', NULL); +get_string('configtimetosee', 'block_online_users', NULL); +get_string('numentries', 'block_rss_client', NULL); +get_string('clientnumentries', 'block_rss_client', NULL); +get_string('timeout2', 'block_rss_client', NULL); +get_string('timeout', 'block_rss_client', NULL); +get_string('everybody', '', NULL); +get_string('administrators', '', NULL); +get_string('administratorsandteachers', '', NULL); +get_string('submitters2', 'block_rss_client', NULL); +get_string('submitters', 'block_rss_client', NULL); +get_string('feedsaddedit', 'block_rss_client', NULL); +get_string('showcoursetags', 'block_tags', NULL); +get_string('showcoursetagsdef', 'block_tags', NULL); +get_string('managefilters', '', NULL); +get_string('filtersettings', 'admin', NULL); +get_string('filtersettings', 'admin', NULL); +get_string('commonsettings', 'admin', NULL); +get_string('cachetext', 'admin', NULL); +get_string('configcachetext', 'admin', NULL); +get_string('numdays', '', 7); +get_string('numdays', '', 1); +get_string('numhours', '', 12); +get_string('numhours', '', 3); +get_string('numhours', '', 2); +get_string('numhours', '', 1); +get_string('numminutes', '', 45); +get_string('numminutes', '', 30); +get_string('numminutes', '', 15); +get_string('numminutes', '', 10); +get_string('numminutes', '', 9); +get_string('numminutes', '', 8); +get_string('numminutes', '', 7); +get_string('numminutes', '', 6); +get_string('numminutes', '', 5); +get_string('numminutes', '', 4); +get_string('numminutes', '', 3); +get_string('numminutes', '', 2); +get_string('numminutes', '', 1); +get_string('numseconds', '', 30); +get_string('no', '', NULL); +get_string('filteruploadedfiles', 'admin', NULL); +get_string('configfilteruploadedfiles', 'admin', NULL); +get_string('none', '', NULL); +get_string('allfiles', '', NULL); +get_string('htmlfilesonly', '', NULL); +get_string('filtermatchoneperpage', 'admin', NULL); +get_string('configfiltermatchoneperpage', 'admin', NULL); +get_string('filtermatchonepertext', 'admin', NULL); +get_string('configfiltermatchonepertext', 'admin', NULL); +get_string('filterall', 'admin', NULL); +get_string('configfilterall', 'admin', NULL); +get_string('filtername', 'assignment', NULL); +get_string('filtername', 'chat', NULL); +get_string('filtername', 'choice', NULL); +get_string('filtername', 'data', NULL); +get_string('filtername', 'feedback', NULL); +get_string('filtername', 'forum', NULL); +get_string('filtername', 'glossary', NULL); +get_string('filtername', 'hotpot', NULL); +get_string('filtername', 'label', NULL); +get_string('filtername', 'lesson', NULL); +get_string('filtername', 'quiz', NULL); +get_string('filtername', 'resource', NULL); +get_string('filtername', 'scorm', NULL); +get_string('filtername', 'survey', NULL); +get_string('filtername', 'wiki', NULL); +get_string('filtername', 'activitynames', NULL); +get_string('filtername', 'algebra', NULL); +get_string('filtername', 'censor', NULL); +get_string('filtername', 'emailprotect', NULL); +get_string('filtername', 'mediaplugin', NULL); +get_string('filtername', 'multilang', NULL); +get_string('filtername', 'tex', NULL); +get_string('filtername', 'tidy', NULL); +get_string('multilangforceold', 'admin', NULL); +get_string('mediapluginmp3', 'admin', NULL); +get_string('mediapluginswf', 'admin', NULL); +get_string('mediapluginswfnote', 'admin', NULL); +get_string('mediapluginmov', 'admin', NULL); +get_string('mediapluginwmv', 'admin', NULL); +get_string('mediapluginmpg', 'admin', NULL); +get_string('mediapluginavi', 'admin', NULL); +get_string('mediapluginflv', 'admin', NULL); +get_string('mediapluginram', 'admin', NULL); +get_string('mediapluginrpm', 'admin', NULL); +get_string('mediapluginrm', 'admin', NULL); +get_string('mediapluginyoutube', 'admin', NULL); +get_string('latexsettings', 'admin', NULL); +get_string('latexpreamble', 'admin', NULL); +get_string('backgroundcolour', 'admin', NULL); +get_string('density', 'admin', NULL); +get_string('density', 'admin', NULL); +get_string('pathlatex', 'admin', NULL); +get_string('pathdvips', 'admin', NULL); +get_string('pathconvert', 'admin', NULL); +get_string('badwordslist', 'admin', NULL); +get_string('badwordsconfig', 'admin', NULL); +get_string('badwordsdefault', 'admin', NULL); +get_string('portfolios', 'portfolio', NULL); +get_string('manageportfolios', 'portfolio', NULL); +get_string('manageportfolios', 'portfolio', NULL); +get_string('activeportfolios', 'portfolio', NULL); +get_string('manageportfolio', 'portfolio', NULL); +get_string('commonsettings', 'admin', NULL); +get_string('commonsettingsdesc', 'portfolio', NULL); +get_string('moderatefilesizethreshold', 'portfolio', NULL); +get_string('moderatefilesizethresholddesc', 'portfolio', NULL); +get_string('highfilesizethreshold', 'portfolio', NULL); +get_string('highfilesizethresholddesc', 'portfolio', NULL); +get_string('moderatedbsizethreshold', 'portfolio', NULL); +get_string('moderatedbsizethresholddesc', 'portfolio', NULL); +get_string('highdbsizethreshold', 'portfolio', NULL); +get_string('highdbsizethresholddesc', 'portfolio', NULL); +get_string('addnewportfolio', 'portfolio', NULL); +get_string('deleteportfolio', 'portfolio', NULL); +get_string('manageportfolios', 'portfolio', NULL); +get_string('repositories', 'repository', NULL); +get_string('manage', 'repository', NULL); +get_string('activerepository', 'repository', NULL); +get_string('managerepository', 'repository', NULL); +get_string('commonsettings', 'admin', NULL); +get_string('cacheexpire', 'repository', NULL); +get_string('configcacheexpire', 'repository', NULL); +get_string('addplugin', 'repository', NULL); +get_string('deleterepository', 'repository', NULL); +get_string('managerepositories', 'repository', NULL); +get_string('createrepository', 'repository', NULL); +get_string('editrepositoryinstance', 'repository', NULL); +get_string('questiontypes', 'admin', NULL); +get_string('manageqtypes', 'admin', NULL); +get_string('sojunit', 'qtype_sojunit', NULL); +get_string('pathtojava', 'qtype_sojunit', NULL); +get_string('configpathtojava', 'qtype_sojunit', NULL); +get_string('pathtojavac', 'qtype_sojunit', NULL); +get_string('configpathtojavac', 'qtype_sojunit', NULL); +get_string('pathtojunit', 'qtype_sojunit', NULL); +get_string('configpathtojunit', 'qtype_sojunit', NULL); +get_string('backups', 'admin', NULL); +get_string('capability', 'report_capability', NULL); +get_string('configlog', 'report_configlog', NULL); +get_string('courseoverview', 'admin', NULL); +get_string('log', 'admin', NULL); +get_string('loglive', 'coursereport_log', NULL); +get_string('questioninstances', 'report_questioninstances', NULL); +get_string('reportsecurity', 'report_security', NULL); +get_string('spamcleaner', 'report_spamcleaner', NULL); +get_string('stats', 'admin', NULL); +get_string('systemimages', 'report_systemimages', NULL); +get_string('simpletest', 'admin', NULL); +get_string('dbtest', 'admin', NULL); +get_string('sunday', 'calendar', NULL); +get_string('monday', 'calendar', NULL); +get_string('tuesday', 'calendar', NULL); +get_string('wednesday', 'calendar', NULL); +get_string('thursday', 'calendar', NULL); +get_string('friday', 'calendar', NULL); +get_string('saturday', 'calendar', NULL); +get_string('locale', '', NULL); +get_string('thisdirection', '', NULL); +get_string('blocksediton', '', NULL); +get_string('youarehere', 'access', NULL); +get_string('thisdirection', '', NULL); +get_string('loggedinas', 'moodle', '<a href="http://tim.moodle.com/moodle/user/view.php?id=2&course=1">Admin User</a>'); +get_string('logout', '', NULL); +get_string('thisdirection', '', NULL); +get_string('thisdirection', '', NULL); +get_string('administrationsite', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderopened', '', NULL); +get_string('folderclosed', '', NULL); +get_string('searchinsettings', 'admin', NULL); +get_string('search', '', NULL); +get_string('showblocka', 'access', 'Site Administration'); +get_string('hideblocka', 'access', 'Site Administration'); +get_string('skipa', 'access', 'Site Administration'); +get_string('showblocka', 'access', 'Site Administration'); +get_string('hideblocka', 'access', 'Site Administration'); +get_string('adminbookmarks', '', NULL); +get_string('bookmarkthispage', 'admin', NULL); +get_string('showblocka', 'access', 'Admin bookmarks'); +get_string('hideblocka', 'access', 'Admin bookmarks'); +get_string('skipa', 'access', 'Admin bookmarks'); +get_string('showblocka', 'access', 'Admin bookmarks'); +get_string('hideblocka', 'access', 'Admin bookmarks'); +get_string('displayerrorswarning', 'admin', NULL); +get_string('installation', 'install', NULL); +get_string('helpprefix2', '', 'Installation'); +get_string('newwindow', '', NULL); +get_string('cronwarning', 'admin', NULL); +get_string('home', '', NULL); +get_string('loggedinas', 'moodle', '<a href="http://tim.moodle.com/moodle/user/view.php?id=2&course=1">Admin User</a>'); +get_string('logout', '', NULL); +get_string('moodledocslink', '', NULL); diff --git a/lib/simpletest/get_string_fixtures/pagelogs/admin_index.php_old_get_string.log.php b/lib/simpletest/get_string_fixtures/pagelogs/admin_index.php_old_get_string.log.php new file mode 100644 index 0000000000..ba1eb44a15 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/pagelogs/admin_index.php_old_get_string.log.php @@ -0,0 +1,2010 @@ +<?php +// Sequence of get_string calls for page http://tim.moodle.com/moodle/admin/index.php +old_get_string('locale', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('administration', '', NULL); +old_get_string('activities', '', NULL); +old_get_string('administration', '', NULL); +old_get_string('adminbookmarks', '', NULL); +old_get_string('administrationsite', '', NULL); +old_get_string('blockmenutitle', 'blog', NULL); +old_get_string('blocktagstitle', 'blog', NULL); +old_get_string('calendar', 'calendar', NULL); +old_get_string('upcomingevents', 'calendar', NULL); +old_get_string('courses', '', NULL); +old_get_string('pagedescription', 'block_course_summary', NULL); +old_get_string('blockname', 'block_glossary_random', NULL); +old_get_string('html', 'block_html', NULL); +old_get_string('loancalc', 'block_loancalc', NULL); +old_get_string('login', '', NULL); +old_get_string('blockname', 'block_mentees', NULL); +old_get_string('messages', 'message', NULL); +old_get_string('mnet_hosts', 'block_mnet_hosts', NULL); +old_get_string('latestnews', '', NULL); +old_get_string('blockname', 'block_online_users', NULL); +old_get_string('people', '', NULL); +old_get_string('formaltitle', 'block_quiz_results', NULL); +old_get_string('recentactivity', '', NULL); +old_get_string('feedstitle', 'block_rss_client', NULL); +old_get_string('blockname', 'block_search', NULL); +old_get_string('blocktitle', 'block_search_forums', NULL); +old_get_string('blockname', 'block_section_links', NULL); +old_get_string('mainmenu', '', NULL); +old_get_string('blockname', 'block_social_activities', NULL); +old_get_string('defaulttile', 'block_tag_flickr', NULL); +old_get_string('blockname', 'block_tag_youtube', NULL); +old_get_string('blocktagstitle', 'tag', NULL); +old_get_string('locale', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('administration', '', NULL); +old_get_string('notifications', '', NULL); +old_get_string('registration', 'admin', NULL); +old_get_string('upgradesettings', 'admin', NULL); +old_get_string('advancedfeatures', 'admin', NULL); +old_get_string('users', 'admin', NULL); +old_get_string('courses', 'admin', NULL); +old_get_string('grades', '', NULL); +old_get_string('location', 'admin', NULL); +old_get_string('language', '', NULL); +old_get_string('plugins', 'admin', NULL); +old_get_string('security', 'admin', NULL); +old_get_string('appearance', 'admin', NULL); +old_get_string('frontpage', 'admin', NULL); +old_get_string('server', 'admin', NULL); +old_get_string('net', 'mnet', NULL); +old_get_string('reports', '', NULL); +old_get_string('development', 'admin', NULL); +old_get_string('unsupported', 'admin', NULL); +old_get_string('searchresults', '', NULL); +old_get_string('themes', '', NULL); +old_get_string('themesettings', 'admin', NULL); +old_get_string('themelist', 'admin', NULL); +old_get_string('configthemelist', 'admin', NULL); +old_get_string('allowuserthemes', 'admin', NULL); +old_get_string('configallowuserthemes', 'admin', NULL); +old_get_string('allowcoursethemes', 'admin', NULL); +old_get_string('configallowcoursethemes', 'admin', NULL); +old_get_string('allowcategorythemes', 'admin', NULL); +old_get_string('configallowcategorythemes', 'admin', NULL); +old_get_string('allowuserblockhiding', 'admin', NULL); +old_get_string('configallowuserblockhiding', 'admin', NULL); +old_get_string('showblocksonmodpages', 'admin', NULL); +old_get_string('configshowblocksonmodpages', 'admin', NULL); +old_get_string('hideactivitytypenavlink', 'admin', NULL); +old_get_string('confighideactivitytypenavlink', 'admin', NULL); +old_get_string('hidefromnone', 'admin', NULL); +old_get_string('hidefromstudents', 'admin', NULL); +old_get_string('hidefromall', 'admin', NULL); +old_get_string('themeselector', 'admin', NULL); +old_get_string('calendarsettings', 'admin', NULL); +old_get_string('adminseesall', 'admin', NULL); +old_get_string('helpadminseesall', 'admin', NULL); +old_get_string('pref_timeformat', 'calendar', NULL); +old_get_string('explain_site_timeformat', 'calendar', NULL); +old_get_string('default', 'calendar', NULL); +old_get_string('timeformat_12', 'calendar', NULL); +old_get_string('timeformat_24', 'calendar', NULL); +old_get_string('configstartwday', 'admin', NULL); +old_get_string('helpstartofweek', 'admin', NULL); +old_get_string('sunday', 'calendar', NULL); +old_get_string('monday', 'calendar', NULL); +old_get_string('tuesday', 'calendar', NULL); +old_get_string('wednesday', 'calendar', NULL); +old_get_string('thursday', 'calendar', NULL); +old_get_string('friday', 'calendar', NULL); +old_get_string('saturday', 'calendar', NULL); +old_get_string('calendar_weekend', 'admin', NULL); +old_get_string('helpweekenddays', 'admin', NULL); +old_get_string('configlookahead', 'admin', NULL); +old_get_string('helpupcominglookahead', 'admin', NULL); +old_get_string('configmaxevents', 'admin', NULL); +old_get_string('helpupcomingmaxevents', 'admin', NULL); +old_get_string('enablecalendarexport', 'admin', NULL); +old_get_string('configenablecalendarexport', 'admin', NULL); +old_get_string('calendarexportsalt', 'admin', NULL); +old_get_string('configcalendarexportsalt', 'admin', NULL); +old_get_string('htmleditor', 'admin', NULL); +old_get_string('htmleditorsettings', 'admin', NULL); +old_get_string('defaulthtmleditor', 'admin', NULL); +old_get_string('usehtmleditor', 'admin', NULL); +old_get_string('confightmleditor', 'admin', NULL); +old_get_string('emoticons', 'admin', NULL); +old_get_string('configemoticons', 'admin', NULL); +old_get_string('htmlsettings', 'admin', NULL); +old_get_string('stripalltitletags', 'admin', NULL); +old_get_string('configstripalltitletags', 'admin', NULL); +old_get_string('moodledocs', '', NULL); +old_get_string('docroot', 'admin', NULL); +old_get_string('configdocroot', 'admin', NULL); +old_get_string('doctonewwindow', 'admin', NULL); +old_get_string('configdoctonewwindow', 'admin', NULL); +old_get_string('mymoodle', 'admin', NULL); +old_get_string('mymoodleredirect', 'admin', NULL); +old_get_string('configmymoodleredirect', 'admin', NULL); +old_get_string('coursemanager', 'admin', NULL); +old_get_string('coursemanager', 'admin', NULL); +old_get_string('configcoursemanager', 'admin', NULL); +old_get_string('ajaxuse', '', NULL); +old_get_string('enableajax', 'admin', NULL); +old_get_string('configenableajax', 'admin', NULL); +old_get_string('useexternalyui', 'admin', NULL); +old_get_string('configuseexternalyui', 'admin', NULL); +old_get_string('disablecourseajax', 'admin', NULL); +old_get_string('configdisablecourseajax', 'admin', NULL); +old_get_string('managetags', 'tag', NULL); +old_get_string('coursemgmt', 'admin', NULL); +old_get_string('enrolments', '', NULL); +old_get_string('coursesettings', '', NULL); +old_get_string('formatscorm', 'format_scorm', NULL); +old_get_string('formatscorm', '', NULL); +old_get_string('formatsocial', 'format_social', NULL); +old_get_string('formatsocial', '', NULL); +old_get_string('formattopics', 'format_topics', NULL); +old_get_string('formattopics', '', NULL); +old_get_string('formatweeks', 'format_weeks', NULL); +old_get_string('formatweeks', '', NULL); +old_get_string('format', '', NULL); +old_get_string('coursehelpformat', '', NULL); +old_get_string('numberweeks', '', NULL); +old_get_string('coursehelpnumberweeks', '', NULL); +old_get_string('hiddensectionscollapsed', '', NULL); +old_get_string('hiddensectionsinvisible', '', NULL); +old_get_string('hiddensections', '', NULL); +old_get_string('coursehelphiddensections', '', NULL); +old_get_string('newsitemsnumber', '', NULL); +old_get_string('coursehelpnewsitemsnumber', '', NULL); +old_get_string('showgrades', '', NULL); +old_get_string('coursehelpshowgrades', '', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('showreports', '', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('sizegb', '', NULL); +old_get_string('sizemb', '', NULL); +old_get_string('sizekb', '', NULL); +old_get_string('sizeb', '', NULL); +old_get_string('maximumupload', '', NULL); +old_get_string('coursehelpmaximumupload', '', NULL); +old_get_string('metacourse', '', NULL); +old_get_string('coursehelpmetacourse', '', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('enrolments', '', NULL); +old_get_string('enrolname', 'enrol_manual', NULL); +old_get_string('sitedefault', '', NULL); +old_get_string('enrolname', 'enrol_manual', NULL); +old_get_string('enrolmentplugins', '', NULL); +old_get_string('coursehelpenrolmentplugins', '', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('enroldate', '', NULL); +old_get_string('enrollable', '', NULL); +old_get_string('coursehelpenrollable', '', NULL); +old_get_string('unlimited', '', NULL); +old_get_string('numdays', '', 1); +old_get_string('numdays', '', 2); +old_get_string('numdays', '', 3); +old_get_string('numdays', '', 4); +old_get_string('numdays', '', 5); +old_get_string('numdays', '', 6); +old_get_string('numdays', '', 7); +old_get_string('numdays', '', 8); +old_get_string('numdays', '', 9); +old_get_string('numdays', '', 10); +old_get_string('numdays', '', 11); +old_get_string('numdays', '', 12); +old_get_string('numdays', '', 13); +old_get_string('numdays', '', 14); +old_get_string('numdays', '', 15); +old_get_string('numdays', '', 16); +old_get_string('numdays', '', 17); +old_get_string('numdays', '', 18); +old_get_string('numdays', '', 19); +old_get_string('numdays', '', 20); +old_get_string('numdays', '', 21); +old_get_string('numdays', '', 22); +old_get_string('numdays', '', 23); +old_get_string('numdays', '', 24); +old_get_string('numdays', '', 25); +old_get_string('numdays', '', 26); +old_get_string('numdays', '', 27); +old_get_string('numdays', '', 28); +old_get_string('numdays', '', 29); +old_get_string('numdays', '', 30); +old_get_string('numdays', '', 31); +old_get_string('numdays', '', 32); +old_get_string('numdays', '', 33); +old_get_string('numdays', '', 34); +old_get_string('numdays', '', 35); +old_get_string('numdays', '', 36); +old_get_string('numdays', '', 37); +old_get_string('numdays', '', 38); +old_get_string('numdays', '', 39); +old_get_string('numdays', '', 40); +old_get_string('numdays', '', 41); +old_get_string('numdays', '', 42); +old_get_string('numdays', '', 43); +old_get_string('numdays', '', 44); +old_get_string('numdays', '', 45); +old_get_string('numdays', '', 46); +old_get_string('numdays', '', 47); +old_get_string('numdays', '', 48); +old_get_string('numdays', '', 49); +old_get_string('numdays', '', 50); +old_get_string('numdays', '', 51); +old_get_string('numdays', '', 52); +old_get_string('numdays', '', 53); +old_get_string('numdays', '', 54); +old_get_string('numdays', '', 55); +old_get_string('numdays', '', 56); +old_get_string('numdays', '', 57); +old_get_string('numdays', '', 58); +old_get_string('numdays', '', 59); +old_get_string('numdays', '', 60); +old_get_string('numdays', '', 61); +old_get_string('numdays', '', 62); +old_get_string('numdays', '', 63); +old_get_string('numdays', '', 64); +old_get_string('numdays', '', 65); +old_get_string('numdays', '', 66); +old_get_string('numdays', '', 67); +old_get_string('numdays', '', 68); +old_get_string('numdays', '', 69); +old_get_string('numdays', '', 70); +old_get_string('numdays', '', 71); +old_get_string('numdays', '', 72); +old_get_string('numdays', '', 73); +old_get_string('numdays', '', 74); +old_get_string('numdays', '', 75); +old_get_string('numdays', '', 76); +old_get_string('numdays', '', 77); +old_get_string('numdays', '', 78); +old_get_string('numdays', '', 79); +old_get_string('numdays', '', 80); +old_get_string('numdays', '', 81); +old_get_string('numdays', '', 82); +old_get_string('numdays', '', 83); +old_get_string('numdays', '', 84); +old_get_string('numdays', '', 85); +old_get_string('numdays', '', 86); +old_get_string('numdays', '', 87); +old_get_string('numdays', '', 88); +old_get_string('numdays', '', 89); +old_get_string('numdays', '', 90); +old_get_string('numdays', '', 91); +old_get_string('numdays', '', 92); +old_get_string('numdays', '', 93); +old_get_string('numdays', '', 94); +old_get_string('numdays', '', 95); +old_get_string('numdays', '', 96); +old_get_string('numdays', '', 97); +old_get_string('numdays', '', 98); +old_get_string('numdays', '', 99); +old_get_string('numdays', '', 100); +old_get_string('numdays', '', 101); +old_get_string('numdays', '', 102); +old_get_string('numdays', '', 103); +old_get_string('numdays', '', 104); +old_get_string('numdays', '', 105); +old_get_string('numdays', '', 106); +old_get_string('numdays', '', 107); +old_get_string('numdays', '', 108); +old_get_string('numdays', '', 109); +old_get_string('numdays', '', 110); +old_get_string('numdays', '', 111); +old_get_string('numdays', '', 112); +old_get_string('numdays', '', 113); +old_get_string('numdays', '', 114); +old_get_string('numdays', '', 115); +old_get_string('numdays', '', 116); +old_get_string('numdays', '', 117); +old_get_string('numdays', '', 118); +old_get_string('numdays', '', 119); +old_get_string('numdays', '', 120); +old_get_string('numdays', '', 121); +old_get_string('numdays', '', 122); +old_get_string('numdays', '', 123); +old_get_string('numdays', '', 124); +old_get_string('numdays', '', 125); +old_get_string('numdays', '', 126); +old_get_string('numdays', '', 127); +old_get_string('numdays', '', 128); +old_get_string('numdays', '', 129); +old_get_string('numdays', '', 130); +old_get_string('numdays', '', 131); +old_get_string('numdays', '', 132); +old_get_string('numdays', '', 133); +old_get_string('numdays', '', 134); +old_get_string('numdays', '', 135); +old_get_string('numdays', '', 136); +old_get_string('numdays', '', 137); +old_get_string('numdays', '', 138); +old_get_string('numdays', '', 139); +old_get_string('numdays', '', 140); +old_get_string('numdays', '', 141); +old_get_string('numdays', '', 142); +old_get_string('numdays', '', 143); +old_get_string('numdays', '', 144); +old_get_string('numdays', '', 145); +old_get_string('numdays', '', 146); +old_get_string('numdays', '', 147); +old_get_string('numdays', '', 148); +old_get_string('numdays', '', 149); +old_get_string('numdays', '', 150); +old_get_string('numdays', '', 151); +old_get_string('numdays', '', 152); +old_get_string('numdays', '', 153); +old_get_string('numdays', '', 154); +old_get_string('numdays', '', 155); +old_get_string('numdays', '', 156); +old_get_string('numdays', '', 157); +old_get_string('numdays', '', 158); +old_get_string('numdays', '', 159); +old_get_string('numdays', '', 160); +old_get_string('numdays', '', 161); +old_get_string('numdays', '', 162); +old_get_string('numdays', '', 163); +old_get_string('numdays', '', 164); +old_get_string('numdays', '', 165); +old_get_string('numdays', '', 166); +old_get_string('numdays', '', 167); +old_get_string('numdays', '', 168); +old_get_string('numdays', '', 169); +old_get_string('numdays', '', 170); +old_get_string('numdays', '', 171); +old_get_string('numdays', '', 172); +old_get_string('numdays', '', 173); +old_get_string('numdays', '', 174); +old_get_string('numdays', '', 175); +old_get_string('numdays', '', 176); +old_get_string('numdays', '', 177); +old_get_string('numdays', '', 178); +old_get_string('numdays', '', 179); +old_get_string('numdays', '', 180); +old_get_string('numdays', '', 181); +old_get_string('numdays', '', 182); +old_get_string('numdays', '', 183); +old_get_string('numdays', '', 184); +old_get_string('numdays', '', 185); +old_get_string('numdays', '', 186); +old_get_string('numdays', '', 187); +old_get_string('numdays', '', 188); +old_get_string('numdays', '', 189); +old_get_string('numdays', '', 190); +old_get_string('numdays', '', 191); +old_get_string('numdays', '', 192); +old_get_string('numdays', '', 193); +old_get_string('numdays', '', 194); +old_get_string('numdays', '', 195); +old_get_string('numdays', '', 196); +old_get_string('numdays', '', 197); +old_get_string('numdays', '', 198); +old_get_string('numdays', '', 199); +old_get_string('numdays', '', 200); +old_get_string('numdays', '', 201); +old_get_string('numdays', '', 202); +old_get_string('numdays', '', 203); +old_get_string('numdays', '', 204); +old_get_string('numdays', '', 205); +old_get_string('numdays', '', 206); +old_get_string('numdays', '', 207); +old_get_string('numdays', '', 208); +old_get_string('numdays', '', 209); +old_get_string('numdays', '', 210); +old_get_string('numdays', '', 211); +old_get_string('numdays', '', 212); +old_get_string('numdays', '', 213); +old_get_string('numdays', '', 214); +old_get_string('numdays', '', 215); +old_get_string('numdays', '', 216); +old_get_string('numdays', '', 217); +old_get_string('numdays', '', 218); +old_get_string('numdays', '', 219); +old_get_string('numdays', '', 220); +old_get_string('numdays', '', 221); +old_get_string('numdays', '', 222); +old_get_string('numdays', '', 223); +old_get_string('numdays', '', 224); +old_get_string('numdays', '', 225); +old_get_string('numdays', '', 226); +old_get_string('numdays', '', 227); +old_get_string('numdays', '', 228); +old_get_string('numdays', '', 229); +old_get_string('numdays', '', 230); +old_get_string('numdays', '', 231); +old_get_string('numdays', '', 232); +old_get_string('numdays', '', 233); +old_get_string('numdays', '', 234); +old_get_string('numdays', '', 235); +old_get_string('numdays', '', 236); +old_get_string('numdays', '', 237); +old_get_string('numdays', '', 238); +old_get_string('numdays', '', 239); +old_get_string('numdays', '', 240); +old_get_string('numdays', '', 241); +old_get_string('numdays', '', 242); +old_get_string('numdays', '', 243); +old_get_string('numdays', '', 244); +old_get_string('numdays', '', 245); +old_get_string('numdays', '', 246); +old_get_string('numdays', '', 247); +old_get_string('numdays', '', 248); +old_get_string('numdays', '', 249); +old_get_string('numdays', '', 250); +old_get_string('numdays', '', 251); +old_get_string('numdays', '', 252); +old_get_string('numdays', '', 253); +old_get_string('numdays', '', 254); +old_get_string('numdays', '', 255); +old_get_string('numdays', '', 256); +old_get_string('numdays', '', 257); +old_get_string('numdays', '', 258); +old_get_string('numdays', '', 259); +old_get_string('numdays', '', 260); +old_get_string('numdays', '', 261); +old_get_string('numdays', '', 262); +old_get_string('numdays', '', 263); +old_get_string('numdays', '', 264); +old_get_string('numdays', '', 265); +old_get_string('numdays', '', 266); +old_get_string('numdays', '', 267); +old_get_string('numdays', '', 268); +old_get_string('numdays', '', 269); +old_get_string('numdays', '', 270); +old_get_string('numdays', '', 271); +old_get_string('numdays', '', 272); +old_get_string('numdays', '', 273); +old_get_string('numdays', '', 274); +old_get_string('numdays', '', 275); +old_get_string('numdays', '', 276); +old_get_string('numdays', '', 277); +old_get_string('numdays', '', 278); +old_get_string('numdays', '', 279); +old_get_string('numdays', '', 280); +old_get_string('numdays', '', 281); +old_get_string('numdays', '', 282); +old_get_string('numdays', '', 283); +old_get_string('numdays', '', 284); +old_get_string('numdays', '', 285); +old_get_string('numdays', '', 286); +old_get_string('numdays', '', 287); +old_get_string('numdays', '', 288); +old_get_string('numdays', '', 289); +old_get_string('numdays', '', 290); +old_get_string('numdays', '', 291); +old_get_string('numdays', '', 292); +old_get_string('numdays', '', 293); +old_get_string('numdays', '', 294); +old_get_string('numdays', '', 295); +old_get_string('numdays', '', 296); +old_get_string('numdays', '', 297); +old_get_string('numdays', '', 298); +old_get_string('numdays', '', 299); +old_get_string('numdays', '', 300); +old_get_string('numdays', '', 301); +old_get_string('numdays', '', 302); +old_get_string('numdays', '', 303); +old_get_string('numdays', '', 304); +old_get_string('numdays', '', 305); +old_get_string('numdays', '', 306); +old_get_string('numdays', '', 307); +old_get_string('numdays', '', 308); +old_get_string('numdays', '', 309); +old_get_string('numdays', '', 310); +old_get_string('numdays', '', 311); +old_get_string('numdays', '', 312); +old_get_string('numdays', '', 313); +old_get_string('numdays', '', 314); +old_get_string('numdays', '', 315); +old_get_string('numdays', '', 316); +old_get_string('numdays', '', 317); +old_get_string('numdays', '', 318); +old_get_string('numdays', '', 319); +old_get_string('numdays', '', 320); +old_get_string('numdays', '', 321); +old_get_string('numdays', '', 322); +old_get_string('numdays', '', 323); +old_get_string('numdays', '', 324); +old_get_string('numdays', '', 325); +old_get_string('numdays', '', 326); +old_get_string('numdays', '', 327); +old_get_string('numdays', '', 328); +old_get_string('numdays', '', 329); +old_get_string('numdays', '', 330); +old_get_string('numdays', '', 331); +old_get_string('numdays', '', 332); +old_get_string('numdays', '', 333); +old_get_string('numdays', '', 334); +old_get_string('numdays', '', 335); +old_get_string('numdays', '', 336); +old_get_string('numdays', '', 337); +old_get_string('numdays', '', 338); +old_get_string('numdays', '', 339); +old_get_string('numdays', '', 340); +old_get_string('numdays', '', 341); +old_get_string('numdays', '', 342); +old_get_string('numdays', '', 343); +old_get_string('numdays', '', 344); +old_get_string('numdays', '', 345); +old_get_string('numdays', '', 346); +old_get_string('numdays', '', 347); +old_get_string('numdays', '', 348); +old_get_string('numdays', '', 349); +old_get_string('numdays', '', 350); +old_get_string('numdays', '', 351); +old_get_string('numdays', '', 352); +old_get_string('numdays', '', 353); +old_get_string('numdays', '', 354); +old_get_string('numdays', '', 355); +old_get_string('numdays', '', 356); +old_get_string('numdays', '', 357); +old_get_string('numdays', '', 358); +old_get_string('numdays', '', 359); +old_get_string('numdays', '', 360); +old_get_string('numdays', '', 361); +old_get_string('numdays', '', 362); +old_get_string('numdays', '', 363); +old_get_string('numdays', '', 364); +old_get_string('numdays', '', 365); +old_get_string('enrolperiod', '', NULL); +old_get_string('expirynotify', '', NULL); +old_get_string('notify', '', NULL); +old_get_string('coursehelpnotify', '', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('expirynotifystudents', '', NULL); +old_get_string('coursehelpexpirynotifystudents', '', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('numdays', '', 1); +old_get_string('numdays', '', 2); +old_get_string('numdays', '', 3); +old_get_string('numdays', '', 4); +old_get_string('numdays', '', 5); +old_get_string('numdays', '', 6); +old_get_string('numdays', '', 7); +old_get_string('numdays', '', 8); +old_get_string('numdays', '', 9); +old_get_string('numdays', '', 10); +old_get_string('numdays', '', 11); +old_get_string('numdays', '', 12); +old_get_string('numdays', '', 13); +old_get_string('numdays', '', 14); +old_get_string('numdays', '', 15); +old_get_string('numdays', '', 16); +old_get_string('numdays', '', 17); +old_get_string('numdays', '', 18); +old_get_string('numdays', '', 19); +old_get_string('numdays', '', 20); +old_get_string('numdays', '', 21); +old_get_string('numdays', '', 22); +old_get_string('numdays', '', 23); +old_get_string('numdays', '', 24); +old_get_string('numdays', '', 25); +old_get_string('numdays', '', 26); +old_get_string('numdays', '', 27); +old_get_string('numdays', '', 28); +old_get_string('numdays', '', 29); +old_get_string('numdays', '', 30); +old_get_string('expirythreshold', '', NULL); +old_get_string('coursehelpexpirythreshold', '', NULL); +old_get_string('groups', 'group', NULL); +old_get_string('groupsnone', 'group', NULL); +old_get_string('groupsseparate', 'group', NULL); +old_get_string('groupsvisible', 'group', NULL); +old_get_string('groupmode', '', NULL); +old_get_string('force', '', NULL); +old_get_string('coursehelpforce', '', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('availability', '', NULL); +old_get_string('courseavailablenot', '', NULL); +old_get_string('courseavailable', '', NULL); +old_get_string('visible', '', NULL); +old_get_string('enrolmentkey', '', NULL); +old_get_string('coursehelpenrolmentkey', '', NULL); +old_get_string('guestsno', '', NULL); +old_get_string('guestsyes', '', NULL); +old_get_string('guestskey', '', NULL); +old_get_string('opentoguests', '', NULL); +old_get_string('language', '', NULL); +old_get_string('forceno', '', NULL); +old_get_string('forcelanguage', '', NULL); +old_get_string('progress', 'completion', NULL); +old_get_string('completion', 'completion', NULL); +old_get_string('completiondisabled', 'completion', NULL); +old_get_string('completionenabled', 'completion', NULL); +old_get_string('courserequest', '', NULL); +old_get_string('enablecourserequests', 'admin', NULL); +old_get_string('configenablecourserequests', 'admin', NULL); +old_get_string('defaultrequestcategory', 'admin', NULL); +old_get_string('configdefaultrequestcategory', 'admin', NULL); +old_get_string('courserequestnotify', 'admin', NULL); +old_get_string('configcourserequestnotify2', 'admin', NULL); +old_get_string('nobody', '', NULL); +old_get_string('site:approvecourse', 'role', NULL); +old_get_string('everyonewhocan', 'admin', 'Approve course creation'); +old_get_string('backups', 'admin', NULL); +old_get_string('includemodules', '', NULL); +old_get_string('backupincludemoduleshelp', '', NULL); +old_get_string('includemoduleuserdata', '', NULL); +old_get_string('backupincludemoduleuserdatahelp', '', NULL); +old_get_string('metacourse', '', NULL); +old_get_string('backupmetacoursehelp', '', NULL); +old_get_string('users', '', NULL); +old_get_string('backupusershelp', '', NULL); +old_get_string('all', '', NULL); +old_get_string('course', '', NULL); +old_get_string('logs', '', NULL); +old_get_string('backuplogshelp', '', NULL); +old_get_string('userfiles', '', NULL); +old_get_string('backupuserfileshelp', '', NULL); +old_get_string('coursefiles', '', NULL); +old_get_string('backupcoursefileshelp', '', NULL); +old_get_string('sitefiles', '', NULL); +old_get_string('backupsitefileshelp', '', NULL); +old_get_string('gradebookhistories', 'grades', NULL); +old_get_string('backupgradebookhistoryhelp', '', NULL); +old_get_string('messages', 'message', NULL); +old_get_string('backupmessageshelp', 'message', NULL); +old_get_string('blogs', 'blog', NULL); +old_get_string('backupblogshelp', 'blog', NULL); +old_get_string('all', '', NULL); +old_get_string('keep', '', NULL); +old_get_string('backupkeephelp', '', NULL); +old_get_string('active', '', NULL); +old_get_string('backupactivehelp', '', NULL); +old_get_string('schedule', '', NULL); +old_get_string('backupschedulehelp', '', NULL); +old_get_string('executeat', '', NULL); +old_get_string('backupexecuteathelp', '', NULL); +old_get_string('saveto', '', NULL); +old_get_string('backupsavetohelp', '', NULL); +old_get_string('experimental', 'admin', NULL); +old_get_string('experimentalsettings', 'admin', NULL); +old_get_string('enableglobalsearch', 'admin', NULL); +old_get_string('configenableglobalsearch', 'admin', NULL); +old_get_string('smartpix', 'admin', NULL); +old_get_string('configsmartpix', 'admin', NULL); +old_get_string('enablehtmlpurifier', 'admin', NULL); +old_get_string('configenablehtmlpurifier', 'admin', NULL); +old_get_string('experimentalsplitrestore', 'admin', NULL); +old_get_string('configexperimentalsplitrestore', 'admin', NULL); +old_get_string('dbtransfer', 'dbtransfer', NULL); +old_get_string('dbexport', 'dbtransfer', NULL); +old_get_string('xmldbeditor', '', NULL); +old_get_string('frontpagesettings', 'admin', NULL); +old_get_string('fullsitename', '', NULL); +old_get_string('shortsitename', '', NULL); +old_get_string('frontpagedescription', '', NULL); +old_get_string('frontpagedescriptionhelp', '', NULL); +old_get_string('frontpage', 'admin', NULL); +old_get_string('configfrontpage', 'admin', NULL); +old_get_string('frontpageloggedin', 'admin', NULL); +old_get_string('configfrontpageloggedin', 'admin', NULL); +old_get_string('unlimited', '', NULL); +old_get_string('configsitemaxcategorydepth', 'admin', NULL); +old_get_string('configsitemaxcategorydepthhelp', 'admin', NULL); +old_get_string('sitesection', '', NULL); +old_get_string('sitesectionhelp', 'admin', NULL); +old_get_string('newsitemsnumber', '', NULL); +old_get_string('coursesperpage', 'admin', NULL); +old_get_string('configcoursesperpage', 'admin', NULL); +old_get_string('allowvisiblecoursesinhiddencategories', 'admin', NULL); +old_get_string('configvisiblecourses', 'admin', NULL); +old_get_string('none', '', NULL); +old_get_string('frontpagedefaultrole', 'admin', NULL); +old_get_string('frontpageroles', 'admin', NULL); +old_get_string('frontpagebackup', 'admin', NULL); +old_get_string('frontpagerestore', 'admin', NULL); +old_get_string('frontpagequestions', 'admin', NULL); +old_get_string('sitefiles', '', NULL); +old_get_string('real', 'grades', NULL); +old_get_string('percentage', 'grades', NULL); +old_get_string('letter', 'grades', NULL); +old_get_string('realpercentage', 'grades', NULL); +old_get_string('realletter', 'grades', NULL); +old_get_string('letterreal', 'grades', NULL); +old_get_string('letterpercentage', 'grades', NULL); +old_get_string('percentageletter', 'grades', NULL); +old_get_string('percentagereal', 'grades', NULL); +old_get_string('generalsettings', 'grades', NULL); +old_get_string('gradebookroles', 'admin', NULL); +old_get_string('configgradebookroles', 'admin', NULL); +old_get_string('profilereport', 'grades', NULL); +old_get_string('configprofilereport', 'grades', NULL); +old_get_string('aggregationposition', 'grades', NULL); +old_get_string('configaggregationposition', 'grades', NULL); +old_get_string('positionfirst', 'grades', NULL); +old_get_string('positionlast', 'grades', NULL); +old_get_string('includescalesinaggregation', 'grades', NULL); +old_get_string('configincludescalesinaggregation', 'grades', NULL); +old_get_string('hiddenasdate', 'grades', NULL); +old_get_string('confighiddenasdate', 'grades', NULL); +old_get_string('gradepublishing', 'grades', NULL); +old_get_string('configgradepublishing', 'grades', NULL); +old_get_string('gradeexportdisplaytype', 'grades', NULL); +old_get_string('configgradeexportdisplaytype', 'grades', NULL); +old_get_string('gradeexportdecimalpoints', 'grades', NULL); +old_get_string('configexportdecimalpoints', 'grades', NULL); +old_get_string('navmethod', 'grades', NULL); +old_get_string('dropdown', 'grades', NULL); +old_get_string('tabs', 'grades', NULL); +old_get_string('combo', 'grades', NULL); +old_get_string('gradeexport', 'admin', NULL); +old_get_string('configgradeexport', 'admin', NULL); +old_get_string('gradecategorysettings', 'grades', NULL); +old_get_string('hideforcedsettings', 'grades', NULL); +old_get_string('confighideforcedsettings', 'grades', NULL); +old_get_string('noforce', 'grades', NULL); +old_get_string('aggregatemean', 'grades', NULL); +old_get_string('aggregateweightedmean', 'grades', NULL); +old_get_string('aggregateweightedmean2', 'grades', NULL); +old_get_string('aggregateextracreditmean', 'grades', NULL); +old_get_string('aggregatemedian', 'grades', NULL); +old_get_string('aggregatemin', 'grades', NULL); +old_get_string('aggregatemax', 'grades', NULL); +old_get_string('aggregatemode', 'grades', NULL); +old_get_string('aggregatesum', 'grades', NULL); +old_get_string('aggregation', 'grades', NULL); +old_get_string('aggregationhelp', 'grades', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('aggregateonlygraded', 'grades', NULL); +old_get_string('aggregateonlygradedhelp', 'grades', NULL); +old_get_string('aggregateoutcomes', 'grades', NULL); +old_get_string('aggregateoutcomeshelp', 'grades', NULL); +old_get_string('aggregatesubcats', 'grades', NULL); +old_get_string('aggregatesubcatshelp', 'grades', NULL); +old_get_string('none', '', NULL); +old_get_string('keephigh', 'grades', NULL); +old_get_string('keephighhelp', 'grades', NULL); +old_get_string('droplow', 'grades', NULL); +old_get_string('droplowhelp', 'grades', NULL); +old_get_string('gradeitemsettings', 'grades', NULL); +old_get_string('gradedisplaytype', 'grades', NULL); +old_get_string('configgradedisplaytype', 'grades', NULL); +old_get_string('decimalpoints', 'grades', NULL); +old_get_string('configdecimalpoints', 'grades', NULL); +old_get_string('gradeitemadvanced', 'grades', NULL); +old_get_string('configgradeitemadvanced', 'grades', NULL); +old_get_string('iteminfo', 'grades', NULL); +old_get_string('idnumbermod', '', NULL); +old_get_string('gradetype', 'grades', NULL); +old_get_string('scale', '', NULL); +old_get_string('grademin', 'grades', NULL); +old_get_string('grademax', 'grades', NULL); +old_get_string('gradepass', 'grades', NULL); +old_get_string('plusfactor', 'grades', NULL); +old_get_string('multfactor', 'grades', NULL); +old_get_string('gradedisplaytype', 'grades', NULL); +old_get_string('decimalpoints', 'grades', NULL); +old_get_string('hidden', 'grades', NULL); +old_get_string('hiddenuntil', 'grades', NULL); +old_get_string('locked', 'grades', NULL); +old_get_string('locktime', 'grades', NULL); +old_get_string('aggregationcoef', 'grades', NULL); +old_get_string('parentcategory', 'grades', NULL); +old_get_string('scales', '', NULL); +old_get_string('outcomes', 'grades', NULL); +old_get_string('letters', 'grades', NULL); +old_get_string('reportsettings', 'grades', NULL); +old_get_string('modulename', 'gradereport_grader', NULL); +old_get_string('inherit', 'grades', NULL); +old_get_string('percentage', 'grades', NULL); +old_get_string('real', 'grades', NULL); +old_get_string('letter', 'grades', NULL); +old_get_string('inherit', 'grades', NULL); +old_get_string('studentsperpage', 'grades', NULL); +old_get_string('configstudentsperpage', 'grades', NULL); +old_get_string('quickgrading', 'grades', NULL); +old_get_string('configquickgrading', 'grades', NULL); +old_get_string('quickfeedback', 'grades', NULL); +old_get_string('configshowquickfeedback', 'grades', NULL); +old_get_string('fixedstudents', 'grades', NULL); +old_get_string('configfixedstudents', 'grades', NULL); +old_get_string('aggregationview', 'grades', NULL); +old_get_string('configaggregationview', 'grades', NULL); +old_get_string('full', 'grades', NULL); +old_get_string('aggregatesonly', 'grades', NULL); +old_get_string('gradesonly', 'grades', NULL); +old_get_string('meanselection', 'grades', NULL); +old_get_string('configmeanselection', 'grades', NULL); +old_get_string('meanall', 'grades', NULL); +old_get_string('meangraded', 'grades', NULL); +old_get_string('enableajax', 'grades', NULL); +old_get_string('configenableajax', 'grades', NULL); +old_get_string('showcalculations', 'grades', NULL); +old_get_string('configshowcalculations', 'grades', NULL); +old_get_string('showeyecons', 'grades', NULL); +old_get_string('configshoweyecons', 'grades', NULL); +old_get_string('showaverages', 'grades', NULL); +old_get_string('configshowaverages', 'grades', NULL); +old_get_string('showgroups', 'grades', NULL); +old_get_string('configshowgroups', 'grades', NULL); +old_get_string('showlocks', 'grades', NULL); +old_get_string('configshowlocks', 'grades', NULL); +old_get_string('showranges', 'grades', NULL); +old_get_string('configshowranges', 'grades', NULL); +old_get_string('showuserimage', 'grades', NULL); +old_get_string('configshowuserimage', 'grades', NULL); +old_get_string('showuseridnumber', 'grades', NULL); +old_get_string('configshowuseridnumber', 'grades', NULL); +old_get_string('showactivityicons', 'grades', NULL); +old_get_string('configshowactivityicons', 'grades', NULL); +old_get_string('shownumberofgrades', 'grades', NULL); +old_get_string('configshownumberofgrades', 'grades', NULL); +old_get_string('averagesdisplaytype', 'grades', NULL); +old_get_string('configaveragesdisplaytype', 'grades', NULL); +old_get_string('rangesdisplaytype', 'grades', NULL); +old_get_string('configrangesdisplaytype', 'grades', NULL); +old_get_string('averagesdecimalpoints', 'grades', NULL); +old_get_string('configaveragesdecimalpoints', 'grades', NULL); +old_get_string('rangesdecimalpoints', 'grades', NULL); +old_get_string('configrangesdecimalpoints', 'grades', NULL); +old_get_string('modulename', 'gradereport_overview', NULL); +old_get_string('showrank', 'grades', NULL); +old_get_string('configshowrank', 'grades', NULL); +old_get_string('modulename', 'gradereport_stats', NULL); +old_get_string('statsshow', 'gradereport_stats', NULL); +old_get_string('aggregationposition', 'grades', NULL); +old_get_string('configaggregationposition', 'grades', NULL); +old_get_string('positionfirst', 'grades', NULL); +old_get_string('positionlast', 'grades', NULL); +old_get_string('highest', 'gradereport_stats', NULL); +old_get_string('stats:stat:highest', 'gradereport_stats', NULL); +old_get_string('lowest', 'gradereport_stats', NULL); +old_get_string('stats:stat:lowest', 'gradereport_stats', NULL); +old_get_string('mean', 'gradereport_stats', NULL); +old_get_string('stats:stat:mean', 'gradereport_stats', NULL); +old_get_string('median', 'gradereport_stats', NULL); +old_get_string('stats:stat:median', 'gradereport_stats', NULL); +old_get_string('mode', 'gradereport_stats', NULL); +old_get_string('stats:stat:mode', 'gradereport_stats', NULL); +old_get_string('pass_percent', 'gradereport_stats', NULL); +old_get_string('stats:stat:passpercent', 'gradereport_stats', NULL); +old_get_string('standarddeviation', 'gradereport_stats', NULL); +old_get_string('stats:stat:standarddeviation', 'gradereport_stats', NULL); +old_get_string('showgroups', 'gradereport_stats', NULL); +old_get_string('showgroups', 'gradereport_stats', NULL); +old_get_string('showranges', 'gradereport_stats', NULL); +old_get_string('showranges', 'gradereport_stats', NULL); +old_get_string('shownumgrades', 'gradereport_stats', NULL); +old_get_string('shownumgrades', 'gradereport_stats', NULL); +old_get_string('showscaleitems', 'gradereport_stats', NULL); +old_get_string('showscaleitems', 'gradereport_stats', NULL); +old_get_string('showvalueitems', 'gradereport_stats', NULL); +old_get_string('showvalueitems', 'gradereport_stats', NULL); +old_get_string('showinverted', 'gradereport_stats', NULL); +old_get_string('showinverted', 'gradereport_stats', NULL); +old_get_string('incompleasmin', 'gradereport_stats', NULL); +old_get_string('incompleasmin', 'gradereport_stats', NULL); +old_get_string('usehidden', 'gradereport_stats', NULL); +old_get_string('usehidden', 'gradereport_stats', NULL); +old_get_string('uselocked', 'gradereport_stats', NULL); +old_get_string('uselocked', 'gradereport_stats', NULL); +old_get_string('modulename', 'gradereport_user', NULL); +old_get_string('showrank', 'grades', NULL); +old_get_string('configshowrank', 'grades', NULL); +old_get_string('showpercentage', 'grades', NULL); +old_get_string('configshowpercentage', 'grades', NULL); +old_get_string('shownohidden', 'grades', NULL); +old_get_string('showhiddenuntilonly', 'grades', NULL); +old_get_string('showallhidden', 'grades', NULL); +old_get_string('showhiddenitems', 'grades', NULL); +old_get_string('configshowhiddenitems', 'grades', NULL); +old_get_string('importsettings', 'grades', NULL); +old_get_string('exportsettings', 'grades', NULL); +old_get_string('languagesettings', 'admin', NULL); +old_get_string('autolang', 'admin', NULL); +old_get_string('configautolang', 'admin', NULL); +old_get_string('lang', 'admin', NULL); +old_get_string('configlang', 'admin', NULL); +old_get_string('langmenu', 'admin', NULL); +old_get_string('configlangmenu', 'admin', NULL); +old_get_string('langlist', 'admin', NULL); +old_get_string('configlanglist', 'admin', NULL); +old_get_string('langcache', 'admin', NULL); +old_get_string('configlangcache', 'admin', NULL); +old_get_string('localetext', 'admin', NULL); +old_get_string('configlocale', 'admin', NULL); +old_get_string('latinexcelexport', 'admin', NULL); +old_get_string('configlatinexcelexport', 'admin', NULL); +old_get_string('langedit', 'admin', NULL); +old_get_string('langpacks', 'admin', NULL); +old_get_string('multilangupgrade', 'admin', NULL); +old_get_string('locationsettings', 'admin', NULL); +old_get_string('serverlocaltime', '', NULL); +old_get_string('timezone', 'admin', NULL); +old_get_string('configtimezone', 'admin', NULL); +old_get_string('timezonenotforced', 'admin', NULL); +old_get_string('forcetimezone', 'admin', NULL); +old_get_string('helpforcetimezone', 'admin', NULL); +old_get_string('choose', '', NULL); +old_get_string('country', 'admin', NULL); +old_get_string('configcountry', 'admin', NULL); +old_get_string('iplookup', 'admin', NULL); +old_get_string('iplookupinfo', 'admin', NULL); +old_get_string('geoipfile', 'admin', NULL); +old_get_string('configgeoipfile', 'admin', '/var/www/moodledata/geoip/'); +old_get_string('googlemapkey', 'admin', NULL); +old_get_string('configgooglemapkey', 'admin', 'http://tim.moodle.com/moodle'); +old_get_string('updatetimezones', 'admin', NULL); +old_get_string('settings', 'mnet', NULL); +old_get_string('mnetpeers', 'mnet', NULL); +old_get_string('ssoaccesscontrol', 'mnet', NULL); +old_get_string('mnetenrol', 'mnet', NULL); +old_get_string('trustedhosts', 'mnet', NULL); +old_get_string('ipblocker', 'admin', NULL); +old_get_string('allowbeforeblock', 'admin', NULL); +old_get_string('allowbeforeblockdesc', 'admin', NULL); +old_get_string('allowediplist', 'admin', NULL); +old_get_string('blockediplist', 'admin', NULL); +old_get_string('webservices', 'admin', NULL); +old_get_string('webserviceprotocols', 'admin', NULL); +old_get_string('managewsprotocols', 'admin', NULL); +old_get_string('managews', 'admin', NULL); +old_get_string('webservicesystemsettings', 'admin', NULL); +old_get_string('ipwhitelist', 'admin', NULL); +old_get_string('webserviceusersettings', 'admin', NULL); +old_get_string('managewsusersettings', 'admin', NULL); +old_get_string('sitepolicies', 'admin', NULL); +old_get_string('protectusernames', 'admin', NULL); +old_get_string('configprotectusernames', 'admin', NULL); +old_get_string('forcelogin', 'admin', NULL); +old_get_string('configforcelogin', 'admin', NULL); +old_get_string('forceloginforprofiles', 'admin', NULL); +old_get_string('configforceloginforprofiles', 'admin', NULL); +old_get_string('opentogoogle', 'admin', NULL); +old_get_string('configopentogoogle', 'admin', NULL); +old_get_string('serverlimit', 'admin', NULL); +old_get_string('maxbytes', 'admin', NULL); +old_get_string('configmaxbytes', 'admin', NULL); +old_get_string('allowobjectembed', 'admin', NULL); +old_get_string('configallowobjectembed', 'admin', NULL); +old_get_string('enabletrusttext', 'admin', NULL); +old_get_string('configenabletrusttext', 'admin', NULL); +old_get_string('maxeditingtime', 'admin', NULL); +old_get_string('configmaxeditingtime', 'admin', NULL); +old_get_string('numminutes', '', 1); +old_get_string('numminutes', '', 5); +old_get_string('numminutes', '', 15); +old_get_string('numminutes', '', 30); +old_get_string('numminutes', '', 45); +old_get_string('numminutes', '', 60); +old_get_string('fullnamedisplay', 'admin', NULL); +old_get_string('configfullnamedisplay', 'admin', NULL); +old_get_string('language', '', NULL); +old_get_string('firstname', '', NULL); +old_get_string('lastname', '', NULL); +old_get_string('lastname', '', NULL); +old_get_string('firstname', '', NULL); +old_get_string('firstname', '', NULL); +old_get_string('extendedusernamechars', 'admin', NULL); +old_get_string('configextendedusernamechars', 'admin', NULL); +old_get_string('sitepolicy', 'admin', NULL); +old_get_string('configsitepolicy', 'admin', NULL); +old_get_string('keeptagnamecase', 'admin', NULL); +old_get_string('configkeeptagnamecase', 'admin', NULL); +old_get_string('profilesforenrolledusersonly', 'admin', NULL); +old_get_string('configprofilesforenrolledusersonly', 'admin', NULL); +old_get_string('cronclionly', 'admin', NULL); +old_get_string('configcronclionly', 'admin', NULL); +old_get_string('cronremotepassword', 'admin', NULL); +old_get_string('configcronremotepassword', 'admin', NULL); +old_get_string('passwordpolicy', 'admin', NULL); +old_get_string('configpasswordpolicy', 'admin', NULL); +old_get_string('minpasswordlength', 'admin', NULL); +old_get_string('configminpasswordlength', 'admin', NULL); +old_get_string('minpassworddigits', 'admin', NULL); +old_get_string('configminpassworddigits', 'admin', NULL); +old_get_string('minpasswordlower', 'admin', NULL); +old_get_string('configminpasswordlower', 'admin', NULL); +old_get_string('minpasswordupper', 'admin', NULL); +old_get_string('configminpasswordupper', 'admin', NULL); +old_get_string('minpasswordnonalphanum', 'admin', NULL); +old_get_string('configminpasswordnonalphanum', 'admin', NULL); +old_get_string('disableuserimages', 'admin', NULL); +old_get_string('configdisableuserimages', 'admin', NULL); +old_get_string('emailchangeconfirmation', 'admin', NULL); +old_get_string('configemailchangeconfirmation', 'admin', NULL); +old_get_string('httpsecurity', 'admin', NULL); +old_get_string('loginhttps', 'admin', NULL); +old_get_string('configloginhttps', 'admin', NULL); +old_get_string('cookiesecure', 'admin', NULL); +old_get_string('configcookiesecure', 'admin', NULL); +old_get_string('cookiehttponly', 'admin', NULL); +old_get_string('configcookiehttponly', 'admin', NULL); +old_get_string('modulesecurity', 'admin', NULL); +old_get_string('restrictmodulesfor', 'admin', NULL); +old_get_string('configrestrictmodulesfor', 'admin', NULL); +old_get_string('restrictbydefault', 'admin', NULL); +old_get_string('configrestrictbydefault', 'admin', NULL); +old_get_string('defaultallowedmodules', 'admin', NULL); +old_get_string('configdefaultallowedmodules', 'admin', NULL); +old_get_string('notifications', 'admin', NULL); +old_get_string('displayloginfailures', 'admin', NULL); +old_get_string('configdisplayloginfailures', 'admin', NULL); +old_get_string('nobody', '', NULL); +old_get_string('administrators', '', NULL); +old_get_string('administratorsandteachers', '', NULL); +old_get_string('everybody', '', NULL); +old_get_string('notifyloginfailures', 'admin', NULL); +old_get_string('confignotifyloginfailures', 'admin', NULL); +old_get_string('nobody', '', NULL); +old_get_string('site:config', 'role', NULL); +old_get_string('everyonewhocan', 'admin', 'Change site configuration'); +old_get_string('notifyloginthreshold', 'admin', NULL); +old_get_string('confignotifyloginthreshold', 'admin', NULL); +old_get_string('antivirus', 'admin', NULL); +old_get_string('runclamavonupload', 'admin', NULL); +old_get_string('configrunclamavonupload', 'admin', NULL); +old_get_string('pathtoclam', 'admin', NULL); +old_get_string('configpathtoclam', 'admin', NULL); +old_get_string('quarantinedir', 'admin', NULL); +old_get_string('configquarantinedir', 'admin', NULL); +old_get_string('clamfailureonupload', 'admin', NULL); +old_get_string('configclamfailureonupload', 'admin', NULL); +old_get_string('configclamdonothing', 'admin', NULL); +old_get_string('configclamactlikevirus', 'admin', NULL); +old_get_string('systempaths', 'admin', NULL); +old_get_string('gdversion', 'admin', NULL); +old_get_string('configgdversion', 'admin', NULL); +old_get_string('gdnot', '', NULL); +old_get_string('gd1', '', NULL); +old_get_string('gd2', '', NULL); +old_get_string('pathtodu', 'admin', NULL); +old_get_string('configpathtodu', 'admin', NULL); +old_get_string('aspellpath', 'admin', NULL); +old_get_string('edhelpaspellpath', '', NULL); +old_get_string('mail', 'admin', NULL); +old_get_string('smtphosts', 'admin', NULL); +old_get_string('configsmtphosts', 'admin', NULL); +old_get_string('smtpuser', 'admin', NULL); +old_get_string('configsmtpuser', 'admin', NULL); +old_get_string('smtppass', 'admin', NULL); +old_get_string('configsmtpuser', 'admin', NULL); +old_get_string('smtpmaxbulk', 'admin', NULL); +old_get_string('configsmtpmaxbulk', 'admin', NULL); +old_get_string('noreplyaddress', 'admin', NULL); +old_get_string('confignoreplyaddress', 'admin', NULL); +old_get_string('digestmailtime', 'admin', NULL); +old_get_string('configdigestmailtime', 'admin', NULL); +old_get_string('sitemailcharset', 'admin', NULL); +old_get_string('configsitemailcharset', 'admin', NULL); +old_get_string('allowusermailcharset', 'admin', NULL); +old_get_string('configallowusermailcharset', 'admin', NULL); +old_get_string('mailnewline', 'admin', NULL); +old_get_string('configmailnewline', 'admin', NULL); +old_get_string('supportname', 'admin', NULL); +old_get_string('configsupportname', 'admin', NULL); +old_get_string('supportemail', 'admin', NULL); +old_get_string('configsupportemail', 'admin', NULL); +old_get_string('supportpage', 'admin', NULL); +old_get_string('configsupportpage', 'admin', NULL); +old_get_string('sessionhandling', 'admin', NULL); +old_get_string('dbsessions', 'admin', NULL); +old_get_string('configdbsessions', 'admin', NULL); +old_get_string('sessiontimeout', 'admin', NULL); +old_get_string('configsessiontimeout', 'admin', NULL); +old_get_string('numhours', '', 4); +old_get_string('numhours', '', 3); +old_get_string('numhours', '', 2); +old_get_string('numhours', '', '1.5'); +old_get_string('numminutes', '', 60); +old_get_string('numminutes', '', 45); +old_get_string('numminutes', '', 30); +old_get_string('numminutes', '', 15); +old_get_string('numminutes', '', 5); +old_get_string('sessioncookie', 'admin', NULL); +old_get_string('configsessioncookie', 'admin', NULL); +old_get_string('sessioncookiepath', 'admin', NULL); +old_get_string('configsessioncookiepath', 'admin', NULL); +old_get_string('sessioncookiedomain', 'admin', NULL); +old_get_string('configsessioncookiedomain', 'admin', NULL); +old_get_string('debugging', 'admin', NULL); +old_get_string('debug', 'admin', NULL); +old_get_string('configdebug', 'admin', NULL); +old_get_string('debugdisplay', 'admin', NULL); +old_get_string('configdebugdisplay', 'admin', NULL); +old_get_string('xmlstrictheaders', 'admin', NULL); +old_get_string('configxmlstrictheaders', 'admin', NULL); +old_get_string('debugsmtp', 'admin', NULL); +old_get_string('configdebugsmtp', 'admin', NULL); +old_get_string('perfdebug', 'admin', NULL); +old_get_string('configperfdebug', 'admin', NULL); +old_get_string('stats', '', NULL); +old_get_string('statsfirstrun', 'admin', NULL); +old_get_string('configstatsfirstrun', 'admin', NULL); +old_get_string('none', '', NULL); +old_get_string('numweeks', 'moodle', 1); +old_get_string('numweeks', 'moodle', 2); +old_get_string('numweeks', 'moodle', 3); +old_get_string('nummonths', 'moodle', 1); +old_get_string('nummonths', 'moodle', 2); +old_get_string('nummonths', 'moodle', 3); +old_get_string('nummonths', 'moodle', 4); +old_get_string('nummonths', 'moodle', 5); +old_get_string('nummonths', 'moodle', 6); +old_get_string('all', '', NULL); +old_get_string('statsmaxruntime', 'admin', NULL); +old_get_string('configstatsmaxruntime3', 'admin', NULL); +old_get_string('untilcomplete', '', NULL); +old_get_string('minutes', '', NULL); +old_get_string('minutes', '', NULL); +old_get_string('hour', '', NULL); +old_get_string('hours', '', NULL); +old_get_string('hours', '', NULL); +old_get_string('hours', '', NULL); +old_get_string('hours', '', NULL); +old_get_string('hours', '', NULL); +old_get_string('hours', '', NULL); +old_get_string('hours', '', NULL); +old_get_string('statsruntimedays', 'admin', NULL); +old_get_string('configstatsruntimedays', 'admin', NULL); +old_get_string('statsruntimestart', 'admin', NULL); +old_get_string('configstatsruntimestart', 'admin', NULL); +old_get_string('statsuserthreshold', 'admin', NULL); +old_get_string('configstatsuserthreshold', 'admin', NULL); +old_get_string('statscatdepth', 'admin', NULL); +old_get_string('configstatscatdepth', 'admin', NULL); +old_get_string('http', 'admin', NULL); +old_get_string('framename', 'admin', NULL); +old_get_string('configframename', 'admin', NULL); +old_get_string('slasharguments', 'admin', NULL); +old_get_string('configslasharguments', 'admin', NULL); +old_get_string('reverseproxy', 'admin', NULL); +old_get_string('getremoteaddrconf', 'admin', NULL); +old_get_string('configgetremoteaddrconf', 'admin', NULL); +old_get_string('webproxy', 'admin', NULL); +old_get_string('webproxyinfo', 'admin', NULL); +old_get_string('proxyhost', 'admin', NULL); +old_get_string('configproxyhost', 'admin', NULL); +old_get_string('proxyport', 'admin', NULL); +old_get_string('configproxyport', 'admin', NULL); +old_get_string('proxytype', 'admin', NULL); +old_get_string('configproxytype', 'admin', NULL); +old_get_string('proxyuser', 'admin', NULL); +old_get_string('configproxyuser', 'admin', NULL); +old_get_string('proxypassword', 'admin', NULL); +old_get_string('configproxypassword', 'admin', NULL); +old_get_string('proxybypass', 'admin', NULL); +old_get_string('configproxybypass', 'admin', NULL); +old_get_string('sitemaintenancemode', 'admin', NULL); +old_get_string('cleanup', 'admin', NULL); +old_get_string('longtimenosee', 'admin', NULL); +old_get_string('configlongtimenosee', 'admin', NULL); +old_get_string('never', '', NULL); +old_get_string('numdays', '', 1000); +old_get_string('numdays', '', 365); +old_get_string('numdays', '', 180); +old_get_string('numdays', '', 150); +old_get_string('numdays', '', 120); +old_get_string('numdays', '', 90); +old_get_string('numdays', '', 60); +old_get_string('numdays', '', 30); +old_get_string('numdays', '', 21); +old_get_string('numdays', '', 14); +old_get_string('numdays', '', 7); +old_get_string('deleteunconfirmed', 'admin', NULL); +old_get_string('configdeleteunconfirmed', 'admin', NULL); +old_get_string('never', '', NULL); +old_get_string('numdays', '', 7); +old_get_string('numdays', '', 6); +old_get_string('numdays', '', 5); +old_get_string('numdays', '', 4); +old_get_string('numdays', '', 3); +old_get_string('numdays', '', 2); +old_get_string('numdays', '', 1); +old_get_string('numhours', '', 12); +old_get_string('numhours', '', 6); +old_get_string('numhours', '', 1); +old_get_string('deleteincompleteusers', 'admin', NULL); +old_get_string('configdeleteincompleteusers', 'admin', NULL); +old_get_string('never', '', NULL); +old_get_string('numdays', '', 7); +old_get_string('numdays', '', 6); +old_get_string('numdays', '', 5); +old_get_string('numdays', '', 4); +old_get_string('numdays', '', 3); +old_get_string('numdays', '', 2); +old_get_string('numdays', '', 1); +old_get_string('loglifetime', 'admin', NULL); +old_get_string('configloglifetime', 'admin', NULL); +old_get_string('neverdeletelogs', '', NULL); +old_get_string('numdays', '', 1000); +old_get_string('numdays', '', 365); +old_get_string('numdays', '', 180); +old_get_string('numdays', '', 150); +old_get_string('numdays', '', 120); +old_get_string('numdays', '', 90); +old_get_string('numdays', '', 60); +old_get_string('numdays', '', 35); +old_get_string('numdays', '', 10); +old_get_string('numdays', '', 5); +old_get_string('numdays', '', 2); +old_get_string('disablegradehistory', 'grades', NULL); +old_get_string('configdisablegradehistory', 'grades', NULL); +old_get_string('gradehistorylifetime', 'grades', NULL); +old_get_string('configgradehistorylifetime', 'grades', NULL); +old_get_string('neverdeletehistory', 'grades', NULL); +old_get_string('numdays', '', 1000); +old_get_string('numdays', '', 365); +old_get_string('numdays', '', 180); +old_get_string('numdays', '', 150); +old_get_string('numdays', '', 120); +old_get_string('numdays', '', 90); +old_get_string('numdays', '', 60); +old_get_string('numdays', '', 30); +old_get_string('environment', 'admin', NULL); +old_get_string('phpinfo', '', NULL); +old_get_string('performance', 'admin', NULL); +old_get_string('cachetype', 'admin', NULL); +old_get_string('configcachetype', 'admin', NULL); +old_get_string('none', '', NULL); +old_get_string('rcache', 'admin', NULL); +old_get_string('configrcache', 'admin', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('rcachettl', 'admin', NULL); +old_get_string('configrcachettl', 'admin', NULL); +old_get_string('intcachemax', 'admin', NULL); +old_get_string('configintcachemax', 'admin', NULL); +old_get_string('memcachedhosts', 'admin', NULL); +old_get_string('configmemcachedhosts', 'admin', NULL); +old_get_string('memcachedpconn', 'admin', NULL); +old_get_string('configmemcachedpconn', 'admin', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('registration', 'admin', NULL); +old_get_string('enablegroupings', 'admin', NULL); +old_get_string('configenablegroupings', 'admin', NULL); +old_get_string('enableoutcomes', 'grades', NULL); +old_get_string('configenableoutcomes', 'grades', NULL); +old_get_string('usetags', 'admin', NULL); +old_get_string('configusetags', 'admin', NULL); +old_get_string('enablenotes', 'notes', NULL); +old_get_string('configenablenotes', 'notes', NULL); +old_get_string('enabled', 'portfolio', NULL); +old_get_string('enableddesc', 'portfolio', NULL); +old_get_string('enablewebservices', 'admin', NULL); +old_get_string('configenablewebservices', 'admin', NULL); +old_get_string('messaging', 'admin', NULL); +old_get_string('configmessaging', 'admin', NULL); +old_get_string('enablestats', 'admin', NULL); +old_get_string('configenablestats', 'admin', NULL); +old_get_string('enablerssfeeds', 'admin', NULL); +old_get_string('configenablerssfeeds', 'admin', NULL); +old_get_string('bloglevel', 'admin', NULL); +old_get_string('configbloglevel', 'admin', NULL); +old_get_string('worldblogs', 'blog', NULL); +old_get_string('siteblogs', 'blog', NULL); +old_get_string('courseblogs', 'blog', NULL); +old_get_string('groupblogs', 'blog', NULL); +old_get_string('personalblogs', 'blog', NULL); +old_get_string('disableblogs', 'blog', NULL); +old_get_string('off', 'mnet', NULL); +old_get_string('on', 'mnet', NULL); +old_get_string('net', 'mnet', NULL); +old_get_string('configmnet', 'mnet', NULL); +old_get_string('enablecompletion', 'completion', NULL); +old_get_string('configenablecompletion', 'completion', NULL); +old_get_string('progresstrackedroles', 'completion', NULL); +old_get_string('configprogresstrackedroles', 'completion', NULL); +old_get_string('enableavailability', 'condition', NULL); +old_get_string('configenableavailability', 'condition', NULL); +old_get_string('healthcenter', '', NULL); +old_get_string('authentication', 'admin', NULL); +old_get_string('accounts', 'admin', NULL); +old_get_string('permissions', 'role', NULL); +old_get_string('authsettings', 'admin', NULL); +old_get_string('authsettings', 'admin', NULL); +old_get_string('commonsettings', 'admin', NULL); +old_get_string('selfregistration', 'auth', NULL); +old_get_string('selfregistration_help', 'auth', NULL); +old_get_string('guestloginbutton', 'auth', NULL); +old_get_string('showguestlogin', 'auth', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('alternateloginurl', 'auth', NULL); +old_get_string('alternatelogin', 'auth', 'http://tim.moodle.com/moodle/login/index.php'); +old_get_string('forgottenpasswordurl', 'auth', NULL); +old_get_string('forgottenpassword', 'auth', NULL); +old_get_string('instructions', 'auth', NULL); +old_get_string('authinstructions', 'auth', NULL); +old_get_string('allowemailaddresses', 'admin', NULL); +old_get_string('configallowemailaddresses', 'admin', NULL); +old_get_string('denyemailaddresses', 'admin', NULL); +old_get_string('configdenyemailaddresses', 'admin', NULL); +old_get_string('verifychangedemail', 'admin', NULL); +old_get_string('configverifychangedemail', 'admin', NULL); +old_get_string('recaptchapublickey', 'admin', NULL); +old_get_string('configrecaptchapublickey', 'admin', NULL); +old_get_string('recaptchaprivatekey', 'admin', NULL); +old_get_string('configrecaptchaprivatekey', 'admin', NULL); +old_get_string('auth_castitle', 'auth', NULL); +old_get_string('auth_dbtitle', 'auth', NULL); +old_get_string('auth_emailtitle', 'auth', NULL); +old_get_string('auth_fctitle', 'auth', NULL); +old_get_string('auth_imaptitle', 'auth', NULL); +old_get_string('auth_ldaptitle', 'auth', NULL); +old_get_string('auth_manualtitle', 'auth', NULL); +old_get_string('auth_mnettitle', 'auth', NULL); +old_get_string('auth_nntptitle', 'auth', NULL); +old_get_string('auth_nologintitle', 'auth', NULL); +old_get_string('auth_nonetitle', 'auth', NULL); +old_get_string('auth_pamtitle', 'auth', NULL); +old_get_string('auth_pop3title', 'auth', NULL); +old_get_string('auth_radiustitle', 'auth', NULL); +old_get_string('auth_shibbolethtitle', 'auth', NULL); +old_get_string('userlist', 'admin', NULL); +old_get_string('userbulk', 'admin', NULL); +old_get_string('addnewuser', '', NULL); +old_get_string('uploadusers', '', NULL); +old_get_string('uploadpictures', 'admin', NULL); +old_get_string('profilefields', 'admin', NULL); +old_get_string('userpolicies', 'admin', NULL); +old_get_string('notloggedinroleid', 'admin', NULL); +old_get_string('confignotloggedinroleid', 'admin', NULL); +old_get_string('guestroleid', 'admin', NULL); +old_get_string('configguestroleid', 'admin', NULL); +old_get_string('defaultuserroleid', 'admin', NULL); +old_get_string('configdefaultuserroleid', 'admin', NULL); +old_get_string('nodefaultuserrolelists', 'admin', NULL); +old_get_string('confignodefaultuserrolelists', 'admin', NULL); +old_get_string('defaultcourseroleid', 'admin', NULL); +old_get_string('configdefaultcourseroleid', 'admin', NULL); +old_get_string('creatornewroleid', 'admin', NULL); +old_get_string('configcreatornewroleid', 'admin', NULL); +old_get_string('autologinguests', 'admin', NULL); +old_get_string('configautologinguests', 'admin', NULL); +old_get_string('nonmetacoursesyncroleids', 'admin', NULL); +old_get_string('confignonmetacoursesyncroleids', 'admin', NULL); +old_get_string('hiddenuserfields', 'admin', NULL); +old_get_string('confighiddenuserfields', 'admin', NULL); +old_get_string('description', '', NULL); +old_get_string('city', '', NULL); +old_get_string('country', '', NULL); +old_get_string('webpage', '', NULL); +old_get_string('icqnumber', '', NULL); +old_get_string('skypeid', '', NULL); +old_get_string('yahooid', '', NULL); +old_get_string('aimid', '', NULL); +old_get_string('msnid', '', NULL); +old_get_string('firstaccess', '', NULL); +old_get_string('lastaccess', '', NULL); +old_get_string('mycourses', '', NULL); +old_get_string('extrauserselectorfields', 'admin', NULL); +old_get_string('configextrauserselectorfields', 'admin', NULL); +old_get_string('email', '', NULL); +old_get_string('idnumber', '', NULL); +old_get_string('username', '', NULL); +old_get_string('defineroles', 'role', NULL); +old_get_string('assignglobalroles', 'role', NULL); +old_get_string('checkglobalpermissions', 'role', NULL); +old_get_string('activitymodules', '', NULL); +old_get_string('modsettings', 'admin', NULL); +old_get_string('modulename', 'assignment', NULL); +old_get_string('modulename', 'choice', NULL); +old_get_string('modulename', 'data', NULL); +old_get_string('modulename', 'forum', NULL); +old_get_string('modulename', 'glossary', NULL); +old_get_string('modulename', 'label', NULL); +old_get_string('modulename', 'resource', NULL); +old_get_string('modulename', 'scorm', NULL); +old_get_string('modulename', 'survey', NULL); +old_get_string('modulename', 'hotpot', NULL); +old_get_string('modulename', 'wiki', NULL); +old_get_string('modulename', 'lesson', NULL); +old_get_string('modulename', 'quiz', NULL); +old_get_string('modulename', 'chat', NULL); +old_get_string('modulename', 'feedback', NULL); +old_get_string('maximumsize', 'assignment', NULL); +old_get_string('configmaxbytes', 'assignment', NULL); +old_get_string('numwords', '', NULL); +old_get_string('numletters', '', NULL); +old_get_string('itemstocount', 'assignment', NULL); +old_get_string('configitemstocount', 'assignment', NULL); +old_get_string('showrecentsubmissions', 'assignment', NULL); +old_get_string('configshowrecentsubmissions', 'assignment', NULL); +old_get_string('generalconfig', 'chat', NULL); +old_get_string('explaingeneralconfig', 'chat', NULL); +old_get_string('methodnormal', 'chat', NULL); +old_get_string('methoddaemon', 'chat', NULL); +old_get_string('method', 'chat', NULL); +old_get_string('configmethod', 'chat', NULL); +old_get_string('refreshuserlist', 'chat', NULL); +old_get_string('configrefreshuserlist', 'chat', NULL); +old_get_string('oldping', 'chat', NULL); +old_get_string('configoldping', 'chat', NULL); +old_get_string('methodnormal', 'chat', NULL); +old_get_string('explainmethodnormal', 'chat', NULL); +old_get_string('refreshroom', 'chat', NULL); +old_get_string('configrefreshroom', 'chat', NULL); +old_get_string('normalkeepalive', 'chat', NULL); +old_get_string('normalstream', 'chat', NULL); +old_get_string('updatemethod', 'chat', NULL); +old_get_string('confignormalupdatemode', 'chat', NULL); +old_get_string('methoddaemon', 'chat', NULL); +old_get_string('explainmethoddaemon', 'chat', NULL); +old_get_string('serverhost', 'chat', NULL); +old_get_string('configserverhost', 'chat', NULL); +old_get_string('serverip', 'chat', NULL); +old_get_string('configserverip', 'chat', NULL); +old_get_string('serverport', 'chat', NULL); +old_get_string('configserverport', 'chat', NULL); +old_get_string('servermax', 'chat', NULL); +old_get_string('configservermax', 'chat', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('configenablerssfeeds', 'data', NULL); +old_get_string('enablerssfeeds', 'admin', NULL); +old_get_string('displaymode', 'forum', NULL); +old_get_string('configdisplaymode', 'forum', NULL); +old_get_string('modeflatoldestfirst', 'forum', NULL); +old_get_string('modeflatnewestfirst', 'forum', NULL); +old_get_string('modethreaded', 'forum', NULL); +old_get_string('modenested', 'forum', NULL); +old_get_string('replytouser', 'forum', NULL); +old_get_string('configreplytouser', 'forum', NULL); +old_get_string('shortpost', 'forum', NULL); +old_get_string('configshortpost', 'forum', NULL); +old_get_string('longpost', 'forum', NULL); +old_get_string('configlongpost', 'forum', NULL); +old_get_string('manydiscussions', 'forum', NULL); +old_get_string('configmanydiscussions', 'forum', NULL); +old_get_string('maxattachmentsize', 'forum', NULL); +old_get_string('configmaxbytes', 'forum', NULL); +old_get_string('maxattachments', 'forum', NULL); +old_get_string('configmaxattachments', 'forum', NULL); +old_get_string('trackforum', 'forum', NULL); +old_get_string('configtrackreadposts', 'forum', NULL); +old_get_string('oldpostdays', 'forum', NULL); +old_get_string('configoldpostdays', 'forum', NULL); +old_get_string('usermarksread', 'forum', NULL); +old_get_string('configusermarksread', 'forum', NULL); +old_get_string('cleanreadtime', 'forum', NULL); +old_get_string('configcleanreadtime', 'forum', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('configenablerssfeeds', 'forum', NULL); +old_get_string('enablerssfeeds', 'admin', NULL); +old_get_string('timedposts', 'forum', NULL); +old_get_string('configenabletimedposts', 'forum', NULL); +old_get_string('logblocked', 'forum', NULL); +old_get_string('configlogblocked', 'forum', NULL); +old_get_string('ajaxrating', 'forum', NULL); +old_get_string('configajaxrating', 'forum', NULL); +old_get_string('glossaryleveldefaultsettings', 'glossary', NULL); +old_get_string('entbypage', 'glossary', NULL); +old_get_string('entbypage', 'glossary', NULL); +old_get_string('allowduplicatedentries', 'glossary', NULL); +old_get_string('cnfallowdupentries', 'glossary', NULL); +old_get_string('allowcomments', 'glossary', NULL); +old_get_string('cnfallowcomments', 'glossary', NULL); +old_get_string('usedynalink', 'glossary', NULL); +old_get_string('cnflinkglossaries', 'glossary', NULL); +old_get_string('defaultapproval', 'glossary', NULL); +old_get_string('cnfapprovalstatus', 'glossary', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('configenablerssfeeds', 'glossary', NULL); +old_get_string('enablerssfeeds', 'admin', NULL); +old_get_string('entryleveldefaultsettings', 'glossary', NULL); +old_get_string('usedynalink', 'glossary', NULL); +old_get_string('cnflinkentry', 'glossary', NULL); +old_get_string('casesensitive', 'glossary', NULL); +old_get_string('cnfcasesensitive', 'glossary', NULL); +old_get_string('fullmatch', 'glossary', NULL); +old_get_string('cnffullmatch', 'glossary', NULL); +old_get_string('displayformatcontinuous', 'glossary', NULL); +old_get_string('displayformatdictionary', 'glossary', NULL); +old_get_string('displayformatencyclopedia', 'glossary', NULL); +old_get_string('displayformatentrylist', 'glossary', NULL); +old_get_string('displayformatfaq', 'glossary', NULL); +old_get_string('displayformatfullwithauthor', 'glossary', NULL); +old_get_string('displayformatfullwithoutauthor', 'glossary', NULL); +old_get_string('edit', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('edit', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('displayformatssetup', 'glossary', NULL); +old_get_string('showtimes', 'hotpot', NULL); +old_get_string('configshowtimes', 'hotpot', NULL); +old_get_string('excelencodings', 'hotpot', NULL); +old_get_string('configexcelencodings', 'hotpot', NULL); +old_get_string('modulename', 'quiz', NULL); +old_get_string('configintro', 'quiz', NULL); +old_get_string('timelimitsec', 'quiz', NULL); +old_get_string('configtimelimitsec', 'quiz', NULL); +old_get_string('unlimited', '', NULL); +old_get_string('attemptsallowed', 'quiz', NULL); +old_get_string('configattemptsallowed', 'quiz', NULL); +old_get_string('grademethod', 'quiz', NULL); +old_get_string('configgrademethod', 'quiz', NULL); +old_get_string('gradehighest', 'quiz', NULL); +old_get_string('gradeaverage', 'quiz', NULL); +old_get_string('attemptfirst', 'quiz', NULL); +old_get_string('attemptlast', 'quiz', NULL); +old_get_string('maximumgrade', '', NULL); +old_get_string('configmaximumgrade', 'quiz', NULL); +old_get_string('shufflequestions', 'quiz', NULL); +old_get_string('configshufflequestions', 'quiz', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('never', '', NULL); +old_get_string('aftereachquestion', 'quiz', NULL); +old_get_string('afternquestions', 'quiz', 2); +old_get_string('afternquestions', 'quiz', 3); +old_get_string('afternquestions', 'quiz', 4); +old_get_string('afternquestions', 'quiz', 5); +old_get_string('afternquestions', 'quiz', 6); +old_get_string('afternquestions', 'quiz', 7); +old_get_string('afternquestions', 'quiz', 8); +old_get_string('afternquestions', 'quiz', 9); +old_get_string('afternquestions', 'quiz', 10); +old_get_string('afternquestions', 'quiz', 11); +old_get_string('afternquestions', 'quiz', 12); +old_get_string('afternquestions', 'quiz', 13); +old_get_string('afternquestions', 'quiz', 14); +old_get_string('afternquestions', 'quiz', 15); +old_get_string('afternquestions', 'quiz', 16); +old_get_string('afternquestions', 'quiz', 17); +old_get_string('afternquestions', 'quiz', 18); +old_get_string('afternquestions', 'quiz', 19); +old_get_string('afternquestions', 'quiz', 20); +old_get_string('afternquestions', 'quiz', 21); +old_get_string('afternquestions', 'quiz', 22); +old_get_string('afternquestions', 'quiz', 23); +old_get_string('afternquestions', 'quiz', 24); +old_get_string('afternquestions', 'quiz', 25); +old_get_string('afternquestions', 'quiz', 26); +old_get_string('afternquestions', 'quiz', 27); +old_get_string('afternquestions', 'quiz', 28); +old_get_string('afternquestions', 'quiz', 29); +old_get_string('afternquestions', 'quiz', 30); +old_get_string('afternquestions', 'quiz', 31); +old_get_string('afternquestions', 'quiz', 32); +old_get_string('afternquestions', 'quiz', 33); +old_get_string('afternquestions', 'quiz', 34); +old_get_string('afternquestions', 'quiz', 35); +old_get_string('afternquestions', 'quiz', 36); +old_get_string('afternquestions', 'quiz', 37); +old_get_string('afternquestions', 'quiz', 38); +old_get_string('afternquestions', 'quiz', 39); +old_get_string('afternquestions', 'quiz', 40); +old_get_string('afternquestions', 'quiz', 41); +old_get_string('afternquestions', 'quiz', 42); +old_get_string('afternquestions', 'quiz', 43); +old_get_string('afternquestions', 'quiz', 44); +old_get_string('afternquestions', 'quiz', 45); +old_get_string('afternquestions', 'quiz', 46); +old_get_string('afternquestions', 'quiz', 47); +old_get_string('afternquestions', 'quiz', 48); +old_get_string('afternquestions', 'quiz', 49); +old_get_string('afternquestions', 'quiz', 50); +old_get_string('newpageevery', 'quiz', NULL); +old_get_string('confignewpageevery', 'quiz', NULL); +old_get_string('shufflewithin', 'quiz', NULL); +old_get_string('configshufflewithin', 'quiz', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('adaptive', 'quiz', NULL); +old_get_string('configadaptive', 'quiz', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('penaltyscheme', 'quiz', NULL); +old_get_string('configpenaltyscheme', 'quiz', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('eachattemptbuildsonthelast', 'quiz', NULL); +old_get_string('configeachattemptbuildsonthelast', 'quiz', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('reviewoptions', 'quiz', NULL); +old_get_string('configreviewoptions', 'quiz', NULL); +old_get_string('showuserpicture', 'quiz', NULL); +old_get_string('configshowuserpicture', 'quiz', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('decimalplaces', 'quiz', NULL); +old_get_string('configdecimalplaces', 'quiz', NULL); +old_get_string('sameasoverall', 'quiz', NULL); +old_get_string('decimalplacesquestion', 'quiz', NULL); +old_get_string('configdecimalplacesquestion', 'quiz', NULL); +old_get_string('requirepassword', 'quiz', NULL); +old_get_string('configrequirepassword', 'quiz', NULL); +old_get_string('requiresubnet', 'quiz', NULL); +old_get_string('configrequiresubnet', 'quiz', NULL); +old_get_string('delay1st2nd', 'quiz', NULL); +old_get_string('configdelay1st2nd', 'quiz', NULL); +old_get_string('delaylater', 'quiz', NULL); +old_get_string('configdelaylater', 'quiz', NULL); +old_get_string('showinsecurepopup', 'quiz', NULL); +old_get_string('configpopup', 'quiz', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('framesize', 'resource', NULL); +old_get_string('configframesize', 'resource', NULL); +old_get_string('websearchdefault', 'resource', NULL); +old_get_string('configwebsearch', 'resource', NULL); +old_get_string('resourcedefaulturl', 'resource', NULL); +old_get_string('configdefaulturl', 'resource', NULL); +old_get_string('password', '', NULL); +old_get_string('configsecretphrase', 'resource', NULL); +old_get_string('allowlocalfiles', 'resource', NULL); +old_get_string('configallowlocalfiles', 'resource', NULL); +old_get_string('pagewindow', 'resource', NULL); +old_get_string('newwindow', 'resource', NULL); +old_get_string('display', 'resource', NULL); +old_get_string('configpopup', 'resource', NULL); +old_get_string('newresizable', 'resource', NULL); +old_get_string('configpopupresizable', 'resource', NULL); +old_get_string('newscrollbars', 'resource', NULL); +old_get_string('configpopupscrollbars', 'resource', NULL); +old_get_string('newdirectories', 'resource', NULL); +old_get_string('configpopupdirectories', 'resource', NULL); +old_get_string('newlocation', 'resource', NULL); +old_get_string('configpopuplocation', 'resource', NULL); +old_get_string('newmenubar', 'resource', NULL); +old_get_string('configpopupmenubar', 'resource', NULL); +old_get_string('newtoolbar', 'resource', NULL); +old_get_string('configpopuptoolbar', 'resource', NULL); +old_get_string('newstatus', 'resource', NULL); +old_get_string('configpopupstatus', 'resource', NULL); +old_get_string('newwidth', 'resource', NULL); +old_get_string('configpopupwidth', 'resource', NULL); +old_get_string('newheight', 'resource', NULL); +old_get_string('configpopupheight', 'resource', NULL); +old_get_string('autofilerename', 'resource', NULL); +old_get_string('configautofilerenamesettings', 'resource', NULL); +old_get_string('blockdeletingfile', 'resource', NULL); +old_get_string('configblockdeletingfilesettings', 'resource', NULL); +old_get_string('no', '', NULL); +old_get_string('yes', '', NULL); +old_get_string('grademethod', 'scorm', NULL); +old_get_string('grademethoddesc', 'scorm', NULL); +old_get_string('gradescoes', 'scorm', NULL); +old_get_string('gradehighest', 'scorm', NULL); +old_get_string('gradeaverage', 'scorm', NULL); +old_get_string('gradesum', 'scorm', NULL); +old_get_string('maximumgrade', '', NULL); +old_get_string('maximumgradedesc', 'scorm', NULL); +old_get_string('maximumattempts', 'scorm', NULL); +old_get_string('displayattemptstatus', 'scorm', NULL); +old_get_string('displayattemptstatusdesc', 'scorm', NULL); +old_get_string('displaycoursestructure', 'scorm', NULL); +old_get_string('displaycoursestructuredesc', 'scorm', NULL); +old_get_string('forcecompleted', 'scorm', NULL); +old_get_string('forcecompleteddesc', 'scorm', NULL); +old_get_string('forcenewattempt', 'scorm', NULL); +old_get_string('forcenewattemptdesc', 'scorm', NULL); +old_get_string('lastattemptlock', 'scorm', NULL); +old_get_string('lastattemptlockdesc', 'scorm', NULL); +old_get_string('whatgrade', 'scorm', NULL); +old_get_string('whatgradedesc', 'scorm', NULL); +old_get_string('highestattempt', 'scorm', NULL); +old_get_string('averageattempt', 'scorm', NULL); +old_get_string('firstattempt', 'scorm', NULL); +old_get_string('lastattempt', 'scorm', NULL); +old_get_string('width', 'scorm', NULL); +old_get_string('framewidth', 'scorm', NULL); +old_get_string('height', 'scorm', NULL); +old_get_string('frameheight', 'scorm', NULL); +old_get_string('display', 'scorm', NULL); +old_get_string('displaydesc', 'scorm', NULL); +old_get_string('iframe', 'scorm', NULL); +old_get_string('popup', 'scorm', NULL); +old_get_string('resizable', 'scorm', NULL); +old_get_string('scrollbars', 'scorm', NULL); +old_get_string('directories', 'scorm', NULL); +old_get_string('location', 'scorm', NULL); +old_get_string('menubar', 'scorm', NULL); +old_get_string('toolbar', 'scorm', NULL); +old_get_string('status', 'scorm', NULL); +old_get_string('skipview', 'scorm', NULL); +old_get_string('skipviewdesc', 'scorm', NULL); +old_get_string('never', '', NULL); +old_get_string('firstaccess', 'scorm', NULL); +old_get_string('always', '', NULL); +old_get_string('hidebrowse', 'scorm', NULL); +old_get_string('hidebrowsedesc', 'scorm', NULL); +old_get_string('hidetoc', 'scorm', NULL); +old_get_string('hidetocdesc', 'scorm', NULL); +old_get_string('sided', 'scorm', NULL); +old_get_string('hidden', 'scorm', NULL); +old_get_string('popupmenu', 'scorm', NULL); +old_get_string('hidenav', 'scorm', NULL); +old_get_string('hidenavdesc', 'scorm', NULL); +old_get_string('autocontinue', 'scorm', NULL); +old_get_string('autocontinuedesc', 'scorm', NULL); +old_get_string('updatefreq', 'scorm', NULL); +old_get_string('updatefreqdesc', 'scorm', NULL); +old_get_string('never', '', NULL); +old_get_string('onchanges', 'scorm', NULL); +old_get_string('everyday', 'scorm', NULL); +old_get_string('everytime', 'scorm', NULL); +old_get_string('updatetime', 'scorm', NULL); +old_get_string('allowtypeexternal', 'scorm', NULL); +old_get_string('allowtypelocalsync', 'scorm', NULL); +old_get_string('allowtypeimsrepository', 'scorm', NULL); +old_get_string('allowapidebug', 'scorm', NULL); +old_get_string('apidebugmask', 'scorm', NULL); +old_get_string('blocks', '', NULL); +old_get_string('blocksettings', 'admin', NULL); +old_get_string('stickyblocks', 'admin', NULL); +old_get_string('activities', '', NULL); +old_get_string('administration', '', NULL); +old_get_string('adminbookmarks', '', NULL); +old_get_string('administrationsite', '', NULL); +old_get_string('blockmenutitle', 'blog', NULL); +old_get_string('blocktagstitle', 'blog', NULL); +old_get_string('calendar', 'calendar', NULL); +old_get_string('upcomingevents', 'calendar', NULL); +old_get_string('courses', '', NULL); +old_get_string('pagedescription', 'block_course_summary', NULL); +old_get_string('blockname', 'block_glossary_random', NULL); +old_get_string('html', 'block_html', NULL); +old_get_string('loancalc', 'block_loancalc', NULL); +old_get_string('login', '', NULL); +old_get_string('blockname', 'block_mentees', NULL); +old_get_string('messages', 'message', NULL); +old_get_string('mnet_hosts', 'block_mnet_hosts', NULL); +old_get_string('latestnews', '', NULL); +old_get_string('blockname', 'block_online_users', NULL); +old_get_string('people', '', NULL); +old_get_string('formaltitle', 'block_quiz_results', NULL); +old_get_string('recentactivity', '', NULL); +old_get_string('feedstitle', 'block_rss_client', NULL); +old_get_string('blockname', 'block_search', NULL); +old_get_string('blocktitle', 'block_search_forums', NULL); +old_get_string('blockname', 'block_section_links', NULL); +old_get_string('mainmenu', '', NULL); +old_get_string('blockname', 'block_social_activities', NULL); +old_get_string('defaulttile', 'block_tag_flickr', NULL); +old_get_string('blockname', 'block_tag_youtube', NULL); +old_get_string('blocktagstitle', 'tag', NULL); +old_get_string('allcourses', 'block_course_list', NULL); +old_get_string('owncourses', 'block_course_list', NULL); +old_get_string('adminview', 'block_course_list', NULL); +old_get_string('configadminview', 'block_course_list', NULL); +old_get_string('hideallcourseslink', 'block_course_list', NULL); +old_get_string('confighideallcourseslink', 'block_course_list', NULL); +old_get_string('timetosee', 'block_online_users', NULL); +old_get_string('configtimetosee', 'block_online_users', NULL); +old_get_string('numentries', 'block_rss_client', NULL); +old_get_string('clientnumentries', 'block_rss_client', NULL); +old_get_string('timeout2', 'block_rss_client', NULL); +old_get_string('timeout', 'block_rss_client', NULL); +old_get_string('everybody', '', NULL); +old_get_string('administrators', '', NULL); +old_get_string('administratorsandteachers', '', NULL); +old_get_string('submitters2', 'block_rss_client', NULL); +old_get_string('submitters', 'block_rss_client', NULL); +old_get_string('feedsaddedit', 'block_rss_client', NULL); +old_get_string('showcoursetags', 'block_tags', NULL); +old_get_string('showcoursetagsdef', 'block_tags', NULL); +old_get_string('managefilters', '', NULL); +old_get_string('filtersettings', 'admin', NULL); +old_get_string('filtersettings', 'admin', NULL); +old_get_string('commonsettings', 'admin', NULL); +old_get_string('cachetext', 'admin', NULL); +old_get_string('configcachetext', 'admin', NULL); +old_get_string('numdays', '', 7); +old_get_string('numdays', '', 1); +old_get_string('numhours', '', 12); +old_get_string('numhours', '', 3); +old_get_string('numhours', '', 2); +old_get_string('numhours', '', 1); +old_get_string('numminutes', '', 45); +old_get_string('numminutes', '', 30); +old_get_string('numminutes', '', 15); +old_get_string('numminutes', '', 10); +old_get_string('numminutes', '', 9); +old_get_string('numminutes', '', 8); +old_get_string('numminutes', '', 7); +old_get_string('numminutes', '', 6); +old_get_string('numminutes', '', 5); +old_get_string('numminutes', '', 4); +old_get_string('numminutes', '', 3); +old_get_string('numminutes', '', 2); +old_get_string('numminutes', '', 1); +old_get_string('numseconds', '', 30); +old_get_string('no', '', NULL); +old_get_string('filteruploadedfiles', 'admin', NULL); +old_get_string('configfilteruploadedfiles', 'admin', NULL); +old_get_string('none', '', NULL); +old_get_string('allfiles', '', NULL); +old_get_string('htmlfilesonly', '', NULL); +old_get_string('filtermatchoneperpage', 'admin', NULL); +old_get_string('configfiltermatchoneperpage', 'admin', NULL); +old_get_string('filtermatchonepertext', 'admin', NULL); +old_get_string('configfiltermatchonepertext', 'admin', NULL); +old_get_string('filterall', 'admin', NULL); +old_get_string('configfilterall', 'admin', NULL); +old_get_string('filtername', 'assignment', NULL); +old_get_string('filtername', 'chat', NULL); +old_get_string('filtername', 'choice', NULL); +old_get_string('filtername', 'data', NULL); +old_get_string('filtername', 'feedback', NULL); +old_get_string('filtername', 'forum', NULL); +old_get_string('filtername', 'glossary', NULL); +old_get_string('filtername', 'hotpot', NULL); +old_get_string('filtername', 'label', NULL); +old_get_string('filtername', 'lesson', NULL); +old_get_string('filtername', 'quiz', NULL); +old_get_string('filtername', 'resource', NULL); +old_get_string('filtername', 'scorm', NULL); +old_get_string('filtername', 'survey', NULL); +old_get_string('filtername', 'wiki', NULL); +old_get_string('filtername', 'activitynames', NULL); +old_get_string('filtername', 'algebra', NULL); +old_get_string('filtername', 'censor', NULL); +old_get_string('filtername', 'emailprotect', NULL); +old_get_string('filtername', 'mediaplugin', NULL); +old_get_string('filtername', 'multilang', NULL); +old_get_string('filtername', 'tex', NULL); +old_get_string('filtername', 'tidy', NULL); +old_get_string('multilangforceold', 'admin', NULL); +old_get_string('mediapluginmp3', 'admin', NULL); +old_get_string('mediapluginswf', 'admin', NULL); +old_get_string('mediapluginswfnote', 'admin', NULL); +old_get_string('mediapluginmov', 'admin', NULL); +old_get_string('mediapluginwmv', 'admin', NULL); +old_get_string('mediapluginmpg', 'admin', NULL); +old_get_string('mediapluginavi', 'admin', NULL); +old_get_string('mediapluginflv', 'admin', NULL); +old_get_string('mediapluginram', 'admin', NULL); +old_get_string('mediapluginrpm', 'admin', NULL); +old_get_string('mediapluginrm', 'admin', NULL); +old_get_string('mediapluginyoutube', 'admin', NULL); +old_get_string('latexsettings', 'admin', NULL); +old_get_string('latexpreamble', 'admin', NULL); +old_get_string('backgroundcolour', 'admin', NULL); +old_get_string('density', 'admin', NULL); +old_get_string('density', 'admin', NULL); +old_get_string('pathlatex', 'admin', NULL); +old_get_string('pathdvips', 'admin', NULL); +old_get_string('pathconvert', 'admin', NULL); +old_get_string('badwordslist', 'admin', NULL); +old_get_string('badwordsconfig', 'admin', NULL); +old_get_string('badwordsdefault', 'admin', NULL); +old_get_string('portfolios', 'portfolio', NULL); +old_get_string('manageportfolios', 'portfolio', NULL); +old_get_string('manageportfolios', 'portfolio', NULL); +old_get_string('activeportfolios', 'portfolio', NULL); +old_get_string('manageportfolio', 'portfolio', NULL); +old_get_string('commonsettings', 'admin', NULL); +old_get_string('commonsettingsdesc', 'portfolio', NULL); +old_get_string('moderatefilesizethreshold', 'portfolio', NULL); +old_get_string('moderatefilesizethresholddesc', 'portfolio', NULL); +old_get_string('highfilesizethreshold', 'portfolio', NULL); +old_get_string('highfilesizethresholddesc', 'portfolio', NULL); +old_get_string('moderatedbsizethreshold', 'portfolio', NULL); +old_get_string('moderatedbsizethresholddesc', 'portfolio', NULL); +old_get_string('highdbsizethreshold', 'portfolio', NULL); +old_get_string('highdbsizethresholddesc', 'portfolio', NULL); +old_get_string('addnewportfolio', 'portfolio', NULL); +old_get_string('deleteportfolio', 'portfolio', NULL); +old_get_string('manageportfolios', 'portfolio', NULL); +old_get_string('repositories', 'repository', NULL); +old_get_string('manage', 'repository', NULL); +old_get_string('activerepository', 'repository', NULL); +old_get_string('managerepository', 'repository', NULL); +old_get_string('commonsettings', 'admin', NULL); +old_get_string('cacheexpire', 'repository', NULL); +old_get_string('configcacheexpire', 'repository', NULL); +old_get_string('addplugin', 'repository', NULL); +old_get_string('deleterepository', 'repository', NULL); +old_get_string('managerepositories', 'repository', NULL); +old_get_string('createrepository', 'repository', NULL); +old_get_string('editrepositoryinstance', 'repository', NULL); +old_get_string('questiontypes', 'admin', NULL); +old_get_string('manageqtypes', 'admin', NULL); +old_get_string('sojunit', 'qtype_sojunit', NULL); +old_get_string('pathtojava', 'qtype_sojunit', NULL); +old_get_string('configpathtojava', 'qtype_sojunit', NULL); +old_get_string('pathtojavac', 'qtype_sojunit', NULL); +old_get_string('configpathtojavac', 'qtype_sojunit', NULL); +old_get_string('pathtojunit', 'qtype_sojunit', NULL); +old_get_string('configpathtojunit', 'qtype_sojunit', NULL); +old_get_string('backups', 'admin', NULL); +old_get_string('capability', 'report_capability', NULL); +old_get_string('configlog', 'report_configlog', NULL); +old_get_string('courseoverview', 'admin', NULL); +old_get_string('log', 'admin', NULL); +old_get_string('loglive', 'coursereport_log', NULL); +old_get_string('questioninstances', 'report_questioninstances', NULL); +old_get_string('reportsecurity', 'report_security', NULL); +old_get_string('spamcleaner', 'report_spamcleaner', NULL); +old_get_string('stats', 'admin', NULL); +old_get_string('systemimages', 'report_systemimages', NULL); +old_get_string('simpletest', 'admin', NULL); +old_get_string('dbtest', 'admin', NULL); +old_get_string('sunday', 'calendar', NULL); +old_get_string('monday', 'calendar', NULL); +old_get_string('tuesday', 'calendar', NULL); +old_get_string('wednesday', 'calendar', NULL); +old_get_string('thursday', 'calendar', NULL); +old_get_string('friday', 'calendar', NULL); +old_get_string('saturday', 'calendar', NULL); +old_get_string('locale', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('blocksediton', '', NULL); +old_get_string('youarehere', 'access', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('loggedinas', 'moodle', '<a href="http://tim.moodle.com/moodle/user/view.php?id=2&course=1">Admin User</a>'); +old_get_string('logout', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('administrationsite', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderopened', '', NULL); +old_get_string('folderclosed', '', NULL); +old_get_string('searchinsettings', 'admin', NULL); +old_get_string('search', '', NULL); +old_get_string('showblocka', 'access', 'Site Administration'); +old_get_string('hideblocka', 'access', 'Site Administration'); +old_get_string('skipa', 'access', 'Site Administration'); +old_get_string('showblocka', 'access', 'Site Administration'); +old_get_string('hideblocka', 'access', 'Site Administration'); +old_get_string('adminbookmarks', '', NULL); +old_get_string('bookmarkthispage', 'admin', NULL); +old_get_string('showblocka', 'access', 'Admin bookmarks'); +old_get_string('hideblocka', 'access', 'Admin bookmarks'); +old_get_string('skipa', 'access', 'Admin bookmarks'); +old_get_string('showblocka', 'access', 'Admin bookmarks'); +old_get_string('hideblocka', 'access', 'Admin bookmarks'); +old_get_string('displayerrorswarning', 'admin', NULL); +old_get_string('installation', 'install', NULL); +old_get_string('helpprefix2', '', 'Installation'); +old_get_string('newwindow', '', NULL); +old_get_string('cronwarning', 'admin', NULL); +old_get_string('home', '', NULL); +old_get_string('loggedinas', 'moodle', '<a href="http://tim.moodle.com/moodle/user/view.php?id=2&course=1">Admin User</a>'); +old_get_string('logout', '', NULL); +old_get_string('moodledocslink', '', NULL); diff --git a/lib/simpletest/get_string_fixtures/pagelogs/course_view.php_get_string.log.php b/lib/simpletest/get_string_fixtures/pagelogs/course_view.php_get_string.log.php new file mode 100644 index 0000000000..c5f812d846 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/pagelogs/course_view.php_get_string.log.php @@ -0,0 +1,353 @@ +<?php +// Sequence of get_string calls for page http://tim.moodle.com/moodle/course/view.php?id=2&edit=1&sesskey=1NzQu8osJ5 +get_string('locale', '', NULL); +get_string('thisdirection', '', NULL); +get_string('locale', '', NULL); +get_string('thisdirection', '', NULL); +get_string('course', '', NULL); +get_string('youarehere', 'access', NULL); +get_string('thisdirection', '', NULL); +get_string('switchroleto', '', NULL); +get_string('switchroleto', '', NULL); +get_string('go', '', NULL); +get_string('helpprefix2', '', 'Switch role to'); +get_string('newwindow', '', NULL); +get_string('turneditingoff', '', NULL); +get_string('loggedinas', 'moodle', '<a href="http://tim.moodle.com/moodle/user/view.php?id=2&course=2">Admin User</a>'); +get_string('logout', '', NULL); +get_string('thisdirection', '', NULL); +get_string('thisdirection', '', NULL); +get_string('tocontent', 'access', NULL); +get_string('modulenameplural', 'forum', NULL); +get_string('modulenameplural', 'quiz', NULL); +get_string('modulenameplural', 'choice', NULL); +get_string('modulename', 'assignment', NULL); +get_string('modulenameplural', 'assignment', NULL); +get_string('modulename', 'choice', NULL); +get_string('modulenameplural', 'choice', NULL); +get_string('modulename', 'data', NULL); +get_string('modulenameplural', 'data', NULL); +get_string('modulename', 'forum', NULL); +get_string('modulenameplural', 'forum', NULL); +get_string('modulename', 'glossary', NULL); +get_string('modulenameplural', 'glossary', NULL); +get_string('modulename', 'label', NULL); +get_string('modulenameplural', 'label', NULL); +get_string('modulename', 'resource', NULL); +get_string('modulenameplural', 'resource', NULL); +get_string('modulename', 'scorm', NULL); +get_string('modulenameplural', 'scorm', NULL); +get_string('modulename', 'survey', NULL); +get_string('modulenameplural', 'survey', NULL); +get_string('modulename', 'lesson', NULL); +get_string('modulenameplural', 'lesson', NULL); +get_string('modulename', 'quiz', NULL); +get_string('modulenameplural', 'quiz', NULL); +get_string('modulename', 'chat', NULL); +get_string('modulenameplural', 'chat', NULL); +get_string('modulename', 'feedback', NULL); +get_string('modulenameplural', 'feedback', NULL); +get_string('editsummary', '', NULL); +get_string('add', '', NULL); +get_string('activities', '', NULL); +get_string('showallweeks', '', NULL); +get_string('week', '', NULL); +get_string('groups', '', NULL); +get_string('groupmy', '', NULL); +get_string('hideweekfromothers', '', NULL); +get_string('showweekfromothers', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('people', '', NULL); +get_string('listofallpeople', '', NULL); +get_string('participants', '', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('listofallpeople', '', NULL); +get_string('participants', '', NULL); +get_string('showblocka', 'access', 'People'); +get_string('hideblocka', 'access', 'People'); +get_string('skipa', 'access', 'People'); +get_string('showblocka', 'access', 'People'); +get_string('hideblocka', 'access', 'People'); +get_string('activities', '', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('showblocka', 'access', 'Activities'); +get_string('hideblocka', 'access', 'Activities'); +get_string('skipa', 'access', 'Activities'); +get_string('showblocka', 'access', 'Activities'); +get_string('hideblocka', 'access', 'Activities'); +get_string('blocktitle', 'block_search_forums', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('advancedsearch', 'block_search_forums', NULL); +get_string('search', '', NULL); +get_string('helpprefix2', '', 'Advanced search'); +get_string('newwindow', '', NULL); +get_string('showblocka', 'access', 'Search Forums'); +get_string('hideblocka', 'access', 'Search Forums'); +get_string('skipa', 'access', 'Search Forums'); +get_string('showblocka', 'access', 'Search Forums'); +get_string('hideblocka', 'access', 'Search Forums'); +get_string('administration', '', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('turneditingoff', '', NULL); +get_string('settings', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('grades', '', NULL); +get_string('outcomes', 'grades', NULL); +get_string('groups', '', NULL); +get_string('backup', '', NULL); +get_string('restore', '', NULL); +get_string('import', '', NULL); +get_string('reset', '', NULL); +get_string('reports', '', NULL); +get_string('questions', 'quiz', NULL); +get_string('files', '', NULL); +get_string('profile', '', NULL); +get_string('showblocka', 'access', 'Administration'); +get_string('hideblocka', 'access', 'Administration'); +get_string('skipa', 'access', 'Administration'); +get_string('showblocka', 'access', 'Administration'); +get_string('hideblocka', 'access', 'Administration'); +get_string('courses', '', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('coursecategory', '', NULL); +get_string('fulllistofcourses', '', NULL); +get_string('categories', '', NULL); +get_string('showblocka', 'access', 'Course categories'); +get_string('hideblocka', 'access', 'Course categories'); +get_string('skipa', 'access', 'Course categories'); +get_string('showblocka', 'access', 'Course categories'); +get_string('hideblocka', 'access', 'Course categories'); +get_string('latestnews', '', NULL); +get_string('addanewtopic', 'forum', NULL); +get_string('strftimerecent', '', NULL); +get_string('more', 'forum', NULL); +get_string('oldertopics', 'forum', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('showblocka', 'access', 'Latest News'); +get_string('hideblocka', 'access', 'Latest News'); +get_string('skipa', 'access', 'Latest News'); +get_string('showblocka', 'access', 'Latest News'); +get_string('hideblocka', 'access', 'Latest News'); +get_string('blockname', 'block_online_users', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('periodnminutes', 'block_online_users', 5); +get_string('day', '', NULL); +get_string('days', '', NULL); +get_string('hour', '', NULL); +get_string('hours', '', NULL); +get_string('min', '', NULL); +get_string('mins', '', NULL); +get_string('sec', '', NULL); +get_string('secs', '', NULL); +get_string('year', '', NULL); +get_string('years', '', NULL); +get_string('showblocka', 'access', 'Online Users'); +get_string('hideblocka', 'access', 'Online Users'); +get_string('skipa', 'access', 'Online Users'); +get_string('showblocka', 'access', 'Online Users'); +get_string('hideblocka', 'access', 'Online Users'); +get_string('recentactivity', '', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('strftimedaydatetime', 'langconfig', NULL); +get_string('activitysince', '', 'Wednesday, 25 March 2009, 02:39 PM'); +get_string('recentactivityreport', '', NULL); +get_string('publishanonymous', 'choice', NULL); +get_string('publishnames', 'choice', NULL); +get_string('publishnot', 'choice', NULL); +get_string('publishafteranswer', 'choice', NULL); +get_string('publishafterclose', 'choice', NULL); +get_string('publishalways', 'choice', NULL); +get_string('displayhorizontal', 'choice', NULL); +get_string('displayvertical', 'choice', NULL); +get_string('nothingnew', '', NULL); +get_string('showblocka', 'access', 'Recent Activity'); +get_string('hideblocka', 'access', 'Recent Activity'); +get_string('skipa', 'access', 'Recent Activity'); +get_string('showblocka', 'access', 'Recent Activity'); +get_string('hideblocka', 'access', 'Recent Activity'); +get_string('feedstitle', 'block_rss_client', NULL); +get_string('remotenewsfeed', 'block_rss_client', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('feedsconfigurenewinstance', 'block_rss_client', NULL); +get_string('feedsconfigurenewinstance', 'block_rss_client', NULL); +get_string('showblocka', 'access', 'Remote News Feed'); +get_string('hideblocka', 'access', 'Remote News Feed'); +get_string('skipa', 'access', 'Remote News Feed'); +get_string('showblocka', 'access', 'Remote News Feed'); +get_string('hideblocka', 'access', 'Remote News Feed'); +get_string('html', 'block_html', NULL); +get_string('newhtmlblock', 'block_html', NULL); +get_string('delete', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('configuration', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('showblocka', 'access', '(new HTML block)'); +get_string('hideblocka', 'access', '(new HTML block)'); +get_string('skipa', 'access', '(new HTML block)'); +get_string('showblocka', 'access', '(new HTML block)'); +get_string('hideblocka', 'access', '(new HTML block)'); +get_string('blocks', '', NULL); +get_string('add', '', NULL); +get_string('adminbookmarks', '', NULL); +get_string('blockmenutitle', 'blog', NULL); +get_string('blocktagstitle', 'blog', NULL); +get_string('calendar', 'calendar', NULL); +get_string('upcomingevents', 'calendar', NULL); +get_string('pagedescription', 'block_course_summary', NULL); +get_string('blockname', 'block_glossary_random', NULL); +get_string('html', 'block_html', NULL); +get_string('loancalc', 'block_loancalc', NULL); +get_string('blockname', 'block_mentees', NULL); +get_string('messages', 'message', NULL); +get_string('mnet_hosts', 'block_mnet_hosts', NULL); +get_string('formaltitle', 'block_quiz_results', NULL); +get_string('feedstitle', 'block_rss_client', NULL); +get_string('blockname', 'block_search', NULL); +get_string('blockname', 'block_section_links', NULL); +get_string('blocktagstitle', 'tag', NULL); +get_string('skipa', 'access', ''); +get_string('showblocka', 'access', ''); +get_string('hideblocka', 'access', ''); +get_string('weeklyoutline', '', NULL); +get_string('assignroles', 'role', NULL); +get_string('delete', '', NULL); +get_string('move', '', NULL); +get_string('moveup', '', NULL); +get_string('movedown', '', NULL); +get_string('moveright', '', NULL); +get_string('moveleft', '', NULL); +get_string('update', '', NULL); +get_string('duplicate', '', NULL); +get_string('hide', '', NULL); +get_string('show', '', NULL); +get_string('clicktochange', '', NULL); +get_string('forcedmode', '', NULL); +get_string('groupsnone', '', NULL); +get_string('groupsseparate', '', NULL); +get_string('groupsvisible', '', NULL); +get_string('modulenameplural', 'assignment', NULL); +get_string('typeupload', 'assignment', NULL); +get_string('typeonline', 'assignment', NULL); +get_string('typeuploadsingle', 'assignment', NULL); +get_string('typeoffline', 'assignment', NULL); +get_string('resourcetypelabel', 'resource', NULL); +get_string('resourcetypetext', 'resource', NULL); +get_string('resourcetypehtml', 'resource', NULL); +get_string('resourcetypefile', 'resource', NULL); +get_string('resourcetypedirectory', 'resource', NULL); +get_string('resourcetypeims', 'resource', NULL); +get_string('addactivity', '', NULL); +get_string('addresource', '', NULL); +get_string('helpprefix2', '', 'Add a resource'); +get_string('newwindow', '', NULL); +get_string('helpprefix2', '', 'Add an activity'); +get_string('newwindow', '', NULL); +get_string('strftimedateshort', '', NULL); +get_string('showonlyweek', '', 1); +get_string('addactivity', '', NULL); +get_string('addresource', '', NULL); +get_string('helpprefix2', '', 'Add a resource'); +get_string('newwindow', '', NULL); +get_string('helpprefix2', '', 'Add an activity'); +get_string('newwindow', '', NULL); +get_string('showonlyweek', '', 2); +get_string('addactivity', '', NULL); +get_string('addresource', '', NULL); +get_string('helpprefix2', '', 'Add a resource'); +get_string('newwindow', '', NULL); +get_string('helpprefix2', '', 'Add an activity'); +get_string('newwindow', '', NULL); +get_string('currentweek', 'access', NULL); +get_string('showonlyweek', '', 3); +get_string('addactivity', '', NULL); +get_string('addresource', '', NULL); +get_string('helpprefix2', '', 'Add a resource'); +get_string('newwindow', '', NULL); +get_string('helpprefix2', '', 'Add an activity'); +get_string('newwindow', '', NULL); +get_string('home', '', NULL); +get_string('loggedinas', 'moodle', '<a href="http://tim.moodle.com/moodle/user/view.php?id=2&course=2">Admin User</a>'); +get_string('logout', '', NULL); +get_string('sizegb', '', NULL); +get_string('sizemb', '', NULL); +get_string('sizekb', '', NULL); +get_string('sizeb', '', NULL); +get_string('moodledocslink', '', NULL); diff --git a/lib/simpletest/get_string_fixtures/pagelogs/course_view.php_old_get_string.log.php b/lib/simpletest/get_string_fixtures/pagelogs/course_view.php_old_get_string.log.php new file mode 100644 index 0000000000..e6694038ae --- /dev/null +++ b/lib/simpletest/get_string_fixtures/pagelogs/course_view.php_old_get_string.log.php @@ -0,0 +1,353 @@ +<?php +// Sequence of get_string calls for page http://tim.moodle.com/moodle/course/view.php?id=2&edit=1&sesskey=1NzQu8osJ5 +old_get_string('locale', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('locale', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('course', '', NULL); +old_get_string('youarehere', 'access', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('switchroleto', '', NULL); +old_get_string('switchroleto', '', NULL); +old_get_string('go', '', NULL); +old_get_string('helpprefix2', '', 'Switch role to'); +old_get_string('newwindow', '', NULL); +old_get_string('turneditingoff', '', NULL); +old_get_string('loggedinas', 'moodle', '<a href="http://tim.moodle.com/moodle/user/view.php?id=2&course=2">Admin User</a>'); +old_get_string('logout', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('thisdirection', '', NULL); +old_get_string('tocontent', 'access', NULL); +old_get_string('modulenameplural', 'forum', NULL); +old_get_string('modulenameplural', 'quiz', NULL); +old_get_string('modulenameplural', 'choice', NULL); +old_get_string('modulename', 'assignment', NULL); +old_get_string('modulenameplural', 'assignment', NULL); +old_get_string('modulename', 'choice', NULL); +old_get_string('modulenameplural', 'choice', NULL); +old_get_string('modulename', 'data', NULL); +old_get_string('modulenameplural', 'data', NULL); +old_get_string('modulename', 'forum', NULL); +old_get_string('modulenameplural', 'forum', NULL); +old_get_string('modulename', 'glossary', NULL); +old_get_string('modulenameplural', 'glossary', NULL); +old_get_string('modulename', 'label', NULL); +old_get_string('modulenameplural', 'label', NULL); +old_get_string('modulename', 'resource', NULL); +old_get_string('modulenameplural', 'resource', NULL); +old_get_string('modulename', 'scorm', NULL); +old_get_string('modulenameplural', 'scorm', NULL); +old_get_string('modulename', 'survey', NULL); +old_get_string('modulenameplural', 'survey', NULL); +old_get_string('modulename', 'lesson', NULL); +old_get_string('modulenameplural', 'lesson', NULL); +old_get_string('modulename', 'quiz', NULL); +old_get_string('modulenameplural', 'quiz', NULL); +old_get_string('modulename', 'chat', NULL); +old_get_string('modulenameplural', 'chat', NULL); +old_get_string('modulename', 'feedback', NULL); +old_get_string('modulenameplural', 'feedback', NULL); +old_get_string('editsummary', '', NULL); +old_get_string('add', '', NULL); +old_get_string('activities', '', NULL); +old_get_string('showallweeks', '', NULL); +old_get_string('week', '', NULL); +old_get_string('groups', '', NULL); +old_get_string('groupmy', '', NULL); +old_get_string('hideweekfromothers', '', NULL); +old_get_string('showweekfromothers', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('people', '', NULL); +old_get_string('listofallpeople', '', NULL); +old_get_string('participants', '', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('listofallpeople', '', NULL); +old_get_string('participants', '', NULL); +old_get_string('showblocka', 'access', 'People'); +old_get_string('hideblocka', 'access', 'People'); +old_get_string('skipa', 'access', 'People'); +old_get_string('showblocka', 'access', 'People'); +old_get_string('hideblocka', 'access', 'People'); +old_get_string('activities', '', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('showblocka', 'access', 'Activities'); +old_get_string('hideblocka', 'access', 'Activities'); +old_get_string('skipa', 'access', 'Activities'); +old_get_string('showblocka', 'access', 'Activities'); +old_get_string('hideblocka', 'access', 'Activities'); +old_get_string('blocktitle', 'block_search_forums', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('advancedsearch', 'block_search_forums', NULL); +old_get_string('search', '', NULL); +old_get_string('helpprefix2', '', 'Advanced search'); +old_get_string('newwindow', '', NULL); +old_get_string('showblocka', 'access', 'Search Forums'); +old_get_string('hideblocka', 'access', 'Search Forums'); +old_get_string('skipa', 'access', 'Search Forums'); +old_get_string('showblocka', 'access', 'Search Forums'); +old_get_string('hideblocka', 'access', 'Search Forums'); +old_get_string('administration', '', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('turneditingoff', '', NULL); +old_get_string('settings', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('grades', '', NULL); +old_get_string('outcomes', 'grades', NULL); +old_get_string('groups', '', NULL); +old_get_string('backup', '', NULL); +old_get_string('restore', '', NULL); +old_get_string('import', '', NULL); +old_get_string('reset', '', NULL); +old_get_string('reports', '', NULL); +old_get_string('questions', 'quiz', NULL); +old_get_string('files', '', NULL); +old_get_string('profile', '', NULL); +old_get_string('showblocka', 'access', 'Administration'); +old_get_string('hideblocka', 'access', 'Administration'); +old_get_string('skipa', 'access', 'Administration'); +old_get_string('showblocka', 'access', 'Administration'); +old_get_string('hideblocka', 'access', 'Administration'); +old_get_string('courses', '', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('coursecategory', '', NULL); +old_get_string('fulllistofcourses', '', NULL); +old_get_string('categories', '', NULL); +old_get_string('showblocka', 'access', 'Course categories'); +old_get_string('hideblocka', 'access', 'Course categories'); +old_get_string('skipa', 'access', 'Course categories'); +old_get_string('showblocka', 'access', 'Course categories'); +old_get_string('hideblocka', 'access', 'Course categories'); +old_get_string('latestnews', '', NULL); +old_get_string('addanewtopic', 'forum', NULL); +old_get_string('strftimerecent', '', NULL); +old_get_string('more', 'forum', NULL); +old_get_string('oldertopics', 'forum', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('showblocka', 'access', 'Latest News'); +old_get_string('hideblocka', 'access', 'Latest News'); +old_get_string('skipa', 'access', 'Latest News'); +old_get_string('showblocka', 'access', 'Latest News'); +old_get_string('hideblocka', 'access', 'Latest News'); +old_get_string('blockname', 'block_online_users', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('periodnminutes', 'block_online_users', 5); +old_get_string('day', '', NULL); +old_get_string('days', '', NULL); +old_get_string('hour', '', NULL); +old_get_string('hours', '', NULL); +old_get_string('min', '', NULL); +old_get_string('mins', '', NULL); +old_get_string('sec', '', NULL); +old_get_string('secs', '', NULL); +old_get_string('year', '', NULL); +old_get_string('years', '', NULL); +old_get_string('showblocka', 'access', 'Online Users'); +old_get_string('hideblocka', 'access', 'Online Users'); +old_get_string('skipa', 'access', 'Online Users'); +old_get_string('showblocka', 'access', 'Online Users'); +old_get_string('hideblocka', 'access', 'Online Users'); +old_get_string('recentactivity', '', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('strftimedaydatetime', 'langconfig', NULL); +old_get_string('activitysince', '', 'Wednesday, 25 March 2009, 02:39 PM'); +old_get_string('recentactivityreport', '', NULL); +old_get_string('publishanonymous', 'choice', NULL); +old_get_string('publishnames', 'choice', NULL); +old_get_string('publishnot', 'choice', NULL); +old_get_string('publishafteranswer', 'choice', NULL); +old_get_string('publishafterclose', 'choice', NULL); +old_get_string('publishalways', 'choice', NULL); +old_get_string('displayhorizontal', 'choice', NULL); +old_get_string('displayvertical', 'choice', NULL); +old_get_string('nothingnew', '', NULL); +old_get_string('showblocka', 'access', 'Recent Activity'); +old_get_string('hideblocka', 'access', 'Recent Activity'); +old_get_string('skipa', 'access', 'Recent Activity'); +old_get_string('showblocka', 'access', 'Recent Activity'); +old_get_string('hideblocka', 'access', 'Recent Activity'); +old_get_string('feedstitle', 'block_rss_client', NULL); +old_get_string('remotenewsfeed', 'block_rss_client', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('feedsconfigurenewinstance', 'block_rss_client', NULL); +old_get_string('feedsconfigurenewinstance', 'block_rss_client', NULL); +old_get_string('showblocka', 'access', 'Remote News Feed'); +old_get_string('hideblocka', 'access', 'Remote News Feed'); +old_get_string('skipa', 'access', 'Remote News Feed'); +old_get_string('showblocka', 'access', 'Remote News Feed'); +old_get_string('hideblocka', 'access', 'Remote News Feed'); +old_get_string('html', 'block_html', NULL); +old_get_string('newhtmlblock', 'block_html', NULL); +old_get_string('delete', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('configuration', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('showblocka', 'access', '(new HTML block)'); +old_get_string('hideblocka', 'access', '(new HTML block)'); +old_get_string('skipa', 'access', '(new HTML block)'); +old_get_string('showblocka', 'access', '(new HTML block)'); +old_get_string('hideblocka', 'access', '(new HTML block)'); +old_get_string('blocks', '', NULL); +old_get_string('add', '', NULL); +old_get_string('adminbookmarks', '', NULL); +old_get_string('blockmenutitle', 'blog', NULL); +old_get_string('blocktagstitle', 'blog', NULL); +old_get_string('calendar', 'calendar', NULL); +old_get_string('upcomingevents', 'calendar', NULL); +old_get_string('pagedescription', 'block_course_summary', NULL); +old_get_string('blockname', 'block_glossary_random', NULL); +old_get_string('html', 'block_html', NULL); +old_get_string('loancalc', 'block_loancalc', NULL); +old_get_string('blockname', 'block_mentees', NULL); +old_get_string('messages', 'message', NULL); +old_get_string('mnet_hosts', 'block_mnet_hosts', NULL); +old_get_string('formaltitle', 'block_quiz_results', NULL); +old_get_string('feedstitle', 'block_rss_client', NULL); +old_get_string('blockname', 'block_search', NULL); +old_get_string('blockname', 'block_section_links', NULL); +old_get_string('blocktagstitle', 'tag', NULL); +old_get_string('skipa', 'access', ''); +old_get_string('showblocka', 'access', ''); +old_get_string('hideblocka', 'access', ''); +old_get_string('weeklyoutline', '', NULL); +old_get_string('assignroles', 'role', NULL); +old_get_string('delete', '', NULL); +old_get_string('move', '', NULL); +old_get_string('moveup', '', NULL); +old_get_string('movedown', '', NULL); +old_get_string('moveright', '', NULL); +old_get_string('moveleft', '', NULL); +old_get_string('update', '', NULL); +old_get_string('duplicate', '', NULL); +old_get_string('hide', '', NULL); +old_get_string('show', '', NULL); +old_get_string('clicktochange', '', NULL); +old_get_string('forcedmode', '', NULL); +old_get_string('groupsnone', '', NULL); +old_get_string('groupsseparate', '', NULL); +old_get_string('groupsvisible', '', NULL); +old_get_string('modulenameplural', 'assignment', NULL); +old_get_string('typeupload', 'assignment', NULL); +old_get_string('typeonline', 'assignment', NULL); +old_get_string('typeuploadsingle', 'assignment', NULL); +old_get_string('typeoffline', 'assignment', NULL); +old_get_string('resourcetypelabel', 'resource', NULL); +old_get_string('resourcetypetext', 'resource', NULL); +old_get_string('resourcetypehtml', 'resource', NULL); +old_get_string('resourcetypefile', 'resource', NULL); +old_get_string('resourcetypedirectory', 'resource', NULL); +old_get_string('resourcetypeims', 'resource', NULL); +old_get_string('addactivity', '', NULL); +old_get_string('addresource', '', NULL); +old_get_string('helpprefix2', '', 'Add a resource'); +old_get_string('newwindow', '', NULL); +old_get_string('helpprefix2', '', 'Add an activity'); +old_get_string('newwindow', '', NULL); +old_get_string('strftimedateshort', '', NULL); +old_get_string('showonlyweek', '', 1); +old_get_string('addactivity', '', NULL); +old_get_string('addresource', '', NULL); +old_get_string('helpprefix2', '', 'Add a resource'); +old_get_string('newwindow', '', NULL); +old_get_string('helpprefix2', '', 'Add an activity'); +old_get_string('newwindow', '', NULL); +old_get_string('showonlyweek', '', 2); +old_get_string('addactivity', '', NULL); +old_get_string('addresource', '', NULL); +old_get_string('helpprefix2', '', 'Add a resource'); +old_get_string('newwindow', '', NULL); +old_get_string('helpprefix2', '', 'Add an activity'); +old_get_string('newwindow', '', NULL); +old_get_string('currentweek', 'access', NULL); +old_get_string('showonlyweek', '', 3); +old_get_string('addactivity', '', NULL); +old_get_string('addresource', '', NULL); +old_get_string('helpprefix2', '', 'Add a resource'); +old_get_string('newwindow', '', NULL); +old_get_string('helpprefix2', '', 'Add an activity'); +old_get_string('newwindow', '', NULL); +old_get_string('home', '', NULL); +old_get_string('loggedinas', 'moodle', '<a href="http://tim.moodle.com/moodle/user/view.php?id=2&course=2">Admin User</a>'); +old_get_string('logout', '', NULL); +old_get_string('sizegb', '', NULL); +old_get_string('sizemb', '', NULL); +old_get_string('sizekb', '', NULL); +old_get_string('sizeb', '', NULL); +old_get_string('moodledocslink', '', NULL); diff --git a/lib/simpletest/get_string_fixtures/pagelogs/empty.log.php b/lib/simpletest/get_string_fixtures/pagelogs/empty.log.php new file mode 100644 index 0000000000..860a37d223 --- /dev/null +++ b/lib/simpletest/get_string_fixtures/pagelogs/empty.log.php @@ -0,0 +1,2 @@ +<?php +// Blank file, like the real ones, so we can time doing nothing for comparison. diff --git a/lib/simpletest/getstringperformancetester.php b/lib/simpletest/getstringperformancetester.php new file mode 100644 index 0000000000..4d23672994 --- /dev/null +++ b/lib/simpletest/getstringperformancetester.php @@ -0,0 +1,626 @@ +<?php // $Id$ + +/////////////////////////////////////////////////////////////////////////// +// // +// NOTICE OF COPYRIGHT // +// // +// Moodle - Modular Object-Oriented Dynamic Learning Environment // +// http://moodle.org // +// // +// Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com // +// // +// This program is free software; you can redistribute it and/or modify // +// it under the terms of the GNU General Public License as published by // +// the Free Software Foundation; either version 2 of the License, or // +// (at your option) any later version. // +// // +// This program is distributed in the hope that it will be useful, // +// but WITHOUT ANY WARRANTY; without even the implied warranty of // +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // +// GNU General Public License for more details: // +// // +// http://www.gnu.org/copyleft/gpl.html // +// // +/////////////////////////////////////////////////////////////////////////// + +/** + * A simple test script that hammers get_string, and times how long it takes. + * + * @license http://www.gnu.org/copyleft/gpl.html GNU Public License + * @package moodlecore + *//** */ + +require_once(dirname(__FILE__) . '/../../config.php'); +require_once($CFG->libdir . '/moodlelib.php'); + +define('NUM_CALLS', 20000); +define('NUM_REPITITIONS', 3); +$TEST_LANGUAGES = array('en_utf8', 'fr_utf8', 'fr_ca_utf8', 'nonexistant'); + +require_login(); +require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM)); + +$title = 'get_string performance test'; +print_header($title, $title, build_navigation($title)); + +$installedlangs = get_list_of_languages(); +$requiredlangs = $TEST_LANGUAGES; +array_pop($requiredlangs); +foreach ($requiredlangs as $lang) { + if (!isset($installedlangs[$lang])) { + notify('You must install the following language packs to run these test: ' . implode(', ', $requiredlangs)); + print_footer(); + die; + } +} + +time_for_loop(); +print_heading('Timing calling functions'); +time_function_call('dummy_function'); +time_function_call('simple_eval'); +time_function_call('simple_eval_with_interp'); +time_function_call('sprintf_eval'); +time_function_call('sprintf_eval_with_interp'); +time_function_call('strtr_eval'); +time_function_call('strtr_eval_with_interp'); +time_function_call('proposed'); +time_function_call('proposed_with_interp'); +time_log_file('empty.log.php'); + +unset($COURSE->lang); +if (isset($SESSION->lang)) { + $originalsessionlang = $SESSION->lang; +} else { + $originalsessionlang = null; +} +try { + + foreach ($TEST_LANGUAGES as $lang) { + print_heading("Language '$lang'"); + $SESSION->lang = $lang; + + time_log_file('admin_index.php_get_string.log.php'); + time_log_file('course_view.php_get_string.log.php'); + time_log_file('admin_index.php_old_get_string.log.php'); + time_log_file('course_view.php_old_get_string.log.php'); + +// test_one_case('info', '', null); +// test_one_case('attemptquiznow', 'quiz', null); +// $a = new stdClass; +// $a->firstname = 'Martin'; +// $a->lastname = 'Dougiamas'; +// test_one_case('fullnamedisplay', '', $a); +// test_one_case('stringthatdoesnotexistinanyfile', 'qtype_shortanswer', null); + } + +} catch(Exception $e) { // Did they really leave finally out of PHP? + if (is_null($originalsessionlang)) { + unset($SESSION->lang); + } else { + $SESSION->lang = $originalsessionlang; + } +} + +print_footer(); + +/** + * plays back one of the files recored by turning on the logging option in string_manager. + * @param $filename + * @return unknown_type + */ +function time_log_file($filename) { + global $CFG; + print_heading("Playing back calls from $filename", '', 3); + $fullpath = $CFG->libdir . '/simpletest/get_string_fixtures/pagelogs/' . $filename; + for ($i = 0; $i < NUM_REPITITIONS; ++$i) { + set_time_limit(60); + $startime = microtime(true); + include($fullpath); + $duration = microtime(true) - $startime; + echo '<p>Time for ' . $filename . ': <b>' . format_float($duration, 3) . "s</b>.</p>\n"; + flush(); + } +} + +/** + * Repeat one call to get_string NUM_CALLS times. + * @param $string + * @param $module + * @param $a + */ +function test_one_case($string, $module, $a) { + print_heading("get_string('$string', '$module', " . print_r($a, true) . ")", '', 3); + echo '<p>Resulting string: ' . get_string($string, $module, $a) . "</p>\n"; + for ($i = 0; $i < NUM_REPITITIONS; ++$i) { + set_time_limit(60); + $startime = microtime(true); + for ($j = 0; $j < NUM_CALLS; $j++) { + get_string($string, $module, $a); + } + $duration = microtime(true) - $startime; + print_result_line($duration, 'calls to get_string'); + } +} + +function time_for_loop() { + print_heading('Timing an empty for loop'); + $startime = microtime(true); + for ($i = 0; $i < NUM_CALLS; $i++) { + } + $duration = microtime(true) - $startime; + print_result_line($duration, 'trips through an empty for loop', 'iterations per second'); +} + +function simple_eval($string, $module, $a) { + $result = ''; + $code = '$result = "Language string";'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + return $result; +} +function simple_eval_with_interp($string, $module, $a) { + $result = ''; + $code = '$result = "Language string $a->field.";'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + return $result; +} +function sprintf_eval($string, $module, $a) { + $result = ''; + $code = '$result = sprintf("Language string");'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + return $result; + } +function sprintf_eval_with_interp($string, $module, $a) { + $result = ''; + $code = '$result = sprintf("Language string $a->field.");'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + return $result; +} +function strtr_eval($string, $module, $a) { + $result = ''; + $code = '$result = strtr("Language string", "", "");'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + return $result; +} +function strtr_eval_with_interp($string, $module, $a) { + $result = ''; + $code = '$result = strtr("Language string $a->field.", "", "");'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + return $result; +} +function proposed($string, $module, $a) { + $result = 'Language string'; + if (strpos($result, '$') !== false) { + $code = '$result = strtr("' . $result . '", "", "");'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + } + return $result; +} +function proposed_with_interp($string, $module, $a) { + $result = 'Language string $a->field.'; + if (strpos($result, '$') !== false) { + $code = '$result = strtr("' . $result . '", "", "");'; + if (eval($code) === FALSE) { // Means parse error. + debugging('Parse error while trying to load string "'.$identifier.'" from file "' . $langfile . '".', DEBUG_DEVELOPER); + } + } + return $result; +} +function dummy_function($string, $module, $a) { +} +function time_function_call($functionname) { + $string = 'string'; + $module = 'module'; + $a = new stdClass; + $a->field = 'value'; + $startime = microtime(true); + for ($i = 0; $i < NUM_CALLS; $i++) { + $functionname($string, $module, $a); + } + $duration = microtime(true) - $startime; + print_result_line($duration, 'calls to ' . $functionname); +} + +function print_result_line($duration, $action1, $action2 = 'calls per second') { + echo '<p>Time for ' . format_float(NUM_CALLS, 0) . ' ' . $action1 . ': <b>' . + format_float($duration, 3) . 's</b> which is ' . + format_float((NUM_CALLS / $duration), 0) . ' ' . $action2 . ".</p>\n"; + flush(); +} + +// ============================================================================= +// The rest of this file is the old implementation of get_string, with get_string +// renamed to old_get_string, so we can do comparative timings. + +/** + * fix up the optional data in get_string()/print_string() etc + * ensure possible sprintf() format characters are escaped correctly + * needs to handle arbitrary strings and objects + * @param mixed $a An object, string or number that can be used + * @return mixed the supplied parameter 'cleaned' + */ +function clean_getstring_data( $a ) { + if (is_string($a)) { + return str_replace( '%','%%',$a ); + } + elseif (is_object($a)) { + $a_vars = get_object_vars( $a ); + $new_a_vars = array(); + foreach ($a_vars as $fname => $a_var) { + $new_a_vars[$fname] = clean_getstring_data( $a_var ); + } + return (object)$new_a_vars; + } + else { + return $a; + } +} + +/** + * @return array places to look for lang strings based on the prefix to the + * module name. For example qtype_ in question/type. Used by get_string and + * help.php. + */ +function places_to_search_for_lang_strings() { + global $CFG; + + return array( + '__exceptions' => array('moodle', 'langconfig'), + 'assignment_' => array('mod/assignment/type'), + 'auth_' => array('auth'), + 'block_' => array('blocks'), + 'datafield_' => array('mod/data/field'), + 'datapreset_' => array('mod/data/preset'), + 'enrol_' => array('enrol'), + 'filter_' => array('filter'), + 'format_' => array('course/format'), + 'quiz_' => array('mod/quiz/report'), + 'qtype_' => array('question/type'), + 'qformat_' => array('question/format'), + 'report_' => array($CFG->admin.'/report', 'course/report'), + 'repository_'=>array('repository'), + 'resource_' => array('mod/resource/type'), + 'gradereport_' => array('grade/report'), + 'gradeimport_' => array('grade/import'), + 'gradeexport_' => array('grade/export'), + 'profilefield_' => array('user/profile/field'), + 'portfolio_' => array('portfolio/type'), + '' => array('mod') + ); +} + +/** + * Returns a localized string. + * + * Returns the translated string specified by $identifier as + * for $module. Uses the same format files as STphp. + * $a is an object, string or number that can be used + * within translation strings + * + * eg "hello \$a->firstname \$a->lastname" + * or "hello \$a" + * + * If you would like to directly echo the localized string use + * the function {@link print_string()} + * + * Example usage of this function involves finding the string you would + * like a local equivalent of and using its identifier and module information + * to retrive it.<br/> + * If you open moodle/lang/en/moodle.php and look near line 1031 + * you will find a string to prompt a user for their word for student + * <code> + * $string['wordforstudent'] = 'Your word for Student'; + * </code> + * So if you want to display the string 'Your word for student' + * in any language that supports it on your site + * you just need to use the identifier 'wordforstudent' + * <code> + * $mystring = '<strong>'. get_string('wordforstudent') .'</strong>'; +or + * </code> + * If the string you want is in another file you'd take a slightly + * different approach. Looking in moodle/lang/en/calendar.php you find + * around line 75: + * <code> + * $string['typecourse'] = 'Course event'; + * </code> + * If you want to display the string "Course event" in any language + * supported you would use the identifier 'typecourse' and the module 'calendar' + * (because it is in the file calendar.php): + * <code> + * $mystring = '<h1>'. get_string('typecourse', 'calendar') .'</h1>'; + * </code> + * + * As a last resort, should the identifier fail to map to a string + * the returned string will be [[ $identifier ]] + * + * @uses $CFG + * @param string $identifier The key identifier for the localized string + * @param string $module The module where the key identifier is stored, + * usually expressed as the filename in the language pack without the + * .php on the end but can also be written as mod/forum or grade/export/xls. + * If none is specified then moodle.php is used. + * @param mixed $a An object, string or number that can be used + * within translation strings + * @param array $extralocations DEPRICATED. An array of strings with other + * locations to look for string files. This used to be used by plugins so + * they could package their language strings in the plugin folder, however, + * There is now a better way to achieve this. See + * http://docs.moodle.org/en/Development:Places_to_search_for_lang_strings. + * @return string The localized string. + */ +function old_get_string($identifier, $module='', $a=NULL, $extralocations=NULL) { + global $CFG; + +/// originally these special strings were stored in moodle.php now we are only in langconfig.php + $langconfigstrs = array('alphabet', 'backupnameformat', 'decsep', 'firstdayofweek', 'listsep', 'locale', + 'localewin', 'localewincharset', 'oldcharset', 'parentlanguage', + 'strftimedate', 'strftimedateshort', 'strftimedatefullshort', 'strftimedatetime', + 'strftimedaydate', 'strftimedaydatetime', 'strftimedayshort', 'strftimedaytime', + 'strftimemonthyear', 'strftimerecent', 'strftimerecentfull', 'strftimetime', + 'thischarset', 'thisdirection', 'thislanguage', 'strftimedatetimeshort', 'thousandssep'); + + $filetocheck = 'langconfig.php'; + $defaultlang = 'en_utf8'; + if (in_array($identifier, $langconfigstrs)) { + $module = 'langconfig'; //This strings are under langconfig.php for 1.6 lang packs + } + + $lang = current_language(); + + if ($module == '') { + $module = 'moodle'; + } + +/// If the "module" is actually a pathname, then automatically derive the proper module name + if (strpos($module, '/') !== false) { + $modulepath = split('/', $module); + + switch ($modulepath[0]) { + + case 'mod': + $module = $modulepath[1]; + break; + + case 'blocks': + case 'block': + $module = 'block_'.$modulepath[1]; + break; + + case 'enrol': + $module = 'enrol_'.$modulepath[1]; + break; + + case 'format': + $module = 'format_'.$modulepath[1]; + break; + + case 'grade': + $module = 'grade'.$modulepath[1].'_'.$modulepath[2]; + break; + } + } + +/// if $a happens to have % in it, double it so sprintf() doesn't break + if ($a) { + $a = clean_getstring_data( $a ); + } + +/// Define the two or three major locations of language strings for this module + $locations = array(); + + if (!empty($extralocations)) { + // This is an old, deprecated mechanism that predates the + // places_to_search_for_lang_strings mechanism that comes later in + // this function. So tell people who use it to change. + debugging('The fourth, $extralocations parameter to get_string is deprecated. ' . + 'See http://docs.moodle.org/en/Development:Places_to_search_for_lang_strings ' . + 'for a better way to package language strings with your plugin.', DEBUG_DEVELOPER); + if (is_array($extralocations)) { + $locations += $extralocations; + } else if (is_string($extralocations)) { + $locations[] = $extralocations; + } else { + debugging('Bad lang path provided'); + } + } + + if (!empty($CFG->running_installer) and $lang !== 'en_utf8') { + static $stringnames = null; + if (!$stringnames) { + $stringnames = file($CFG->dirroot.'/install/stringnames.txt'); + $stringnames = array_map('trim', $stringnames); + } + if (array_search($identifier, $stringnames) !== false) { + $module = 'installer'; + $filetocheck = 'installer.php'; + $defaultlang = 'en_utf8'; + $locations[] = $CFG->dirroot.'/install/lang/'; + } + } + + $locations[] = $CFG->dataroot.'/lang/'; + $locations[] = $CFG->dirroot.'/lang/'; + $locations[] = $CFG->dirroot.'/local/lang/'; + +/// Add extra places to look for strings for particular plugin types. + $rules = places_to_search_for_lang_strings(); + $exceptions = $rules['__exceptions']; + unset($rules['__exceptions']); + + if (!in_array($module, $exceptions)) { + $dividerpos = strpos($module, '_'); + if ($dividerpos === false) { + $type = ''; + $plugin = $module; + } else { + $type = substr($module, 0, $dividerpos + 1); + $plugin = substr($module, $dividerpos + 1); + } + if (!empty($rules[$type])) { + foreach ($rules[$type] as $location) { + $locations[] = $CFG->dirroot . "/$location/$plugin/lang/"; + } + } + } + +/// First check all the normal locations for the string in the current language + $resultstring = ''; + foreach ($locations as $location) { + $locallangfile = $location.$lang.'_local'.'/'.$module.'.php'; //first, see if there's a local file + if (file_exists($locallangfile)) { + if ($result = get_string_from_file($identifier, $locallangfile, "\$resultstring")) { + if (eval($result) === FALSE) { + trigger_error('Lang error: '.$identifier.':'.$locallangfile, E_USER_NOTICE); + } + return $resultstring; + } + } + //if local directory not found, or particular string does not exist in local direcotry + $langfile = $location.$lang.'/'.$module.'.php'; + if (file_exists($langfile)) { + if ($result = get_string_from_file($identifier, $langfile, "\$resultstring")) { + if (eval($result) === FALSE) { + trigger_error('Lang error: '.$identifier.':'.$langfile, E_USER_NOTICE); + } + return $resultstring; + } + } + } + +/// If the preferred language was English (utf8) we can abort now +/// saving some checks beacuse it's the only "root" lang + if ($lang == 'en_utf8') { + return '[['. $identifier .']]'; + } + +/// Is a parent language defined? If so, try to find this string in a parent language file + + foreach ($locations as $location) { + $langfile = $location.$lang.'/'.$filetocheck; + if (file_exists($langfile)) { + if ($result = get_string_from_file('parentlanguage', $langfile, "\$parentlang")) { + if (eval($result) === FALSE) { + trigger_error('Lang error: '.$identifier.':'.$langfile, E_USER_NOTICE); + } + if (!empty($parentlang) and strpos($parentlang, '<') === false) { // found it! + + //first, see if there's a local file for parent + $locallangfile = $location.$parentlang.'_local'.'/'.$module.'.php'; + if (file_exists($locallangfile)) { + if ($result = get_string_from_file($identifier, $locallangfile, "\$resultstring")) { + if (eval($result) === FALSE) { + trigger_error('Lang error: '.$identifier.':'.$locallangfile, E_USER_NOTICE); + } + return $resultstring; + } + } + + //if local directory not found, or particular string does not exist in local direcotry + $langfile = $location.$parentlang.'/'.$module.'.php'; + if (file_exists($langfile)) { + if ($result = get_string_from_file($identifier, $langfile, "\$resultstring")) { + eval($result); + return $resultstring; + } + } + } + } + } + } + +/// Our only remaining option is to try English + + foreach ($locations as $location) { + $locallangfile = $location.$defaultlang.'_local/'.$module.'.php'; //first, see if there's a local file + if (file_exists($locallangfile)) { + if ($result = get_string_from_file($identifier, $locallangfile, "\$resultstring")) { + eval($result); + return $resultstring; + } + } + + //if local_en not found, or string not found in local_en + $langfile = $location.$defaultlang.'/'.$module.'.php'; + + if (file_exists($langfile)) { + if ($result = get_string_from_file($identifier, $langfile, "\$resultstring")) { + eval($result); + return $resultstring; + } + } + } + +/// And, because under 1.6 en is defined as en_utf8 child, me must try +/// if it hasn't been queried before. + if ($defaultlang == 'en') { + $defaultlang = 'en_utf8'; + foreach ($locations as $location) { + $locallangfile = $location.$defaultlang.'_local/'.$module.'.php'; //first, see if there's a local file + if (file_exists($locallangfile)) { + if ($result = get_string_from_file($identifier, $locallangfile, "\$resultstring")) { + eval($result); + return $resultstring; + } + } + + //if local_en not found, or string not found in local_en + $langfile = $location.$defaultlang.'/'.$module.'.php'; + + if (file_exists($langfile)) { + if ($result = get_string_from_file($identifier, $langfile, "\$resultstring")) { + eval($result); + return $resultstring; + } + } + } + } + + return '[['.$identifier.']]'; // Last resort +} + +/** + * This function is only used from {@link get_string()}. + * + * @internal Only used from get_string, not meant to be public API + * @param string $identifier ? + * @param string $langfile ? + * @param string $destination ? + * @return string|false ? + * @staticvar array $strings Localized strings + * @access private + * @todo Finish documenting this function. + */ +function get_string_from_file($identifier, $langfile, $destination) { + + static $strings; // Keep the strings cached in memory. + + if (empty($strings[$langfile])) { + $string = array(); + include ($langfile); + $strings[$langfile] = $string; + } else { + $string = &$strings[$langfile]; + } + + if (!isset ($string[$identifier])) { + return false; + } + + return $destination .'= sprintf("'. $string[$identifier] .'");'; +} + +?> \ No newline at end of file diff --git a/lib/simpletest/testmoodlelib.php b/lib/simpletest/testmoodlelib.php index 4300698b9a..f3bcdb779d 100644 --- a/lib/simpletest/testmoodlelib.php +++ b/lib/simpletest/testmoodlelib.php @@ -26,6 +26,8 @@ /** * Unit tests for (some of) ../moodlelib.php. * + * Note, tests for get_string are in the separate file testgetstring.php. + * * @copyright © 2006 The Open University * @author T.J.Hunt@open.ac.uk * @author nicolas@moodle.com @@ -68,12 +70,6 @@ class moodlelib_test extends UnitTestCase { ) ); - function setUp() { - } - - function tearDown() { - } - function test_cleanremoteaddr() { //IPv4 $this->assertEqual(cleanremoteaddr('1023.121.234.1'), null); diff --git a/lib/simpletest/teststringmanager.php b/lib/simpletest/teststringmanager.php new file mode 100644 index 0000000000..b091e7fc87 --- /dev/null +++ b/lib/simpletest/teststringmanager.php @@ -0,0 +1,291 @@ +<?php // $Id$ + +/////////////////////////////////////////////////////////////////////////// +// // +// NOTICE OF COPYRIGHT // +// // +// Moodle - Modular Object-Oriented Dynamic Learning Environment // +// http://moodle.org // +// // +// Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com // +// // +// This program is free software; you can redistribute it and/or modify // +// it under the terms of the GNU General Public License as published by // +// the Free Software Foundation; either version 2 of the License, or // +// (at your option) any later version. // +// // +// This program is distributed in the hope that it will be useful, // +// but WITHOUT ANY WARRANTY; without even the implied warranty of // +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // +// GNU General Public License for more details: // +// // +// http://www.gnu.org/copyleft/gpl.html // +// // +/////////////////////////////////////////////////////////////////////////// + +/** + * Tests for get_string in ../moodlelib.php. + * + * @license http://www.gnu.org/copyleft/gpl.html GNU Public License + * @package moodlecore + */ + +if (!defined('MOODLE_INTERNAL')) { + die('Direct access to this script is forbidden.'); /// It must be included from a Moodle page +} + +require_once($CFG->libdir . '/moodlelib.php'); + +/** + * Test subclass that makes all the protected methods we want to test pubic. + */ +class testable_string_manager extends string_manager { + public function __construct($dirroot, $dataroot, $admin, $runninginstaller) { + parent::__construct($dirroot, $dataroot, $admin, $runninginstaller); + } + public function locations_to_search($module) { + return parent::locations_to_search($module); + } + public function parse_module_name($module) { + return parent::parse_module_name($module); + } + public function get_parent_language($lang) { + return parent::get_parent_language($lang); + } + public function load_lang_file($langfile) { + return parent::load_lang_file($langfile); + } + public function get_string_from_file($identifier, $langfile, $a) { + return parent::get_string_from_file($identifier, $langfile, $a); + } +} + +/* +These tests use a shared fixture comprising language files in +./get_string_fixtures/moodle, which the test class treats as $CFG->dirroot and +./get_string_fixtures/moodledata, which the test class treats as $CFG->dataroot. + +The files we have, and their contents, are + +.../moodle/lang/en_utf8/moodle.php: +$string['test'] = 'Test'; +$string['locallyoverridden'] = 'Not used'; + +.../moodle/lang/en_utf8/test.php: +$string['hello'] = 'Hello \'world\'!'; +$string['hellox'] = 'Hello $a!'; +$string['results'] = 'Dear $a->firstname $a->lastname,\n\nOn test \"$a->testname\" you scored $a->grade%% which earns you \$100.'; + +.../moodle/lang/en_utf8_local/moodle.php: +$string['locallyoverridden'] = 'Should see this'; + +.../moodledata/lang/fr_ca_utf8/langconfig.php +$string['parentlanguage'] = 'fr_utf8'; + +.../moodledata/lang/es_ar_utf8/langconfig.php +$string['parentlanguage'] = 'es_utf8'; + +.../moodle/lang/es_ar_utf8_local/langconfig.php +$string['parentlanguage'] = 'es_mx_utf8'; + +.../moodledata/lang/fr_utf8/test.php +$string['hello'] = 'Bonjour tout le monde!'; +$string['hellox'] = 'Bonjour $a!'; + +.../moodledata/lang/fr_ca_utf8/test.php +$string['hello'] = 'Bonjour Québec!'; + +.../moodle/blocks/mrbs/lang/en_utf8/block_mrbs.php: +$string['yes'] = 'Yes'; + +.../moodle/blocks/mrbs/lang/fr_utf8/block_mrbs.php: +$string['yes'] = 'Oui'; + +*/ + +class string_manager_test extends UnitTestCase { + protected $originallang; + protected $basedir; + protected $stringmanager; + + public function setUp() { + global $CFG, $SESSION; + if (isset($SESSION->lang)) { + $this->originallang = $SESSION->lang; + } else { + $this->originallang = null; + } + $this->basedir = $CFG->libdir . '/simpletest/get_string_fixtures/'; + $this->stringmanager = new testable_string_manager($this->basedir . 'moodle', + $this->basedir . 'moodledata', 'adminpath', false); + } + + public function tearDown() { + global $SESSION; + if (is_null($this->originallang)) { + unset($SESSION->lang); + } else { + $SESSION->lang = $this->originallang; + } + } + + public function test_locations_to_search_moodle() { + $this->assertEqual($this->stringmanager->locations_to_search('moodle'), array( + $this->basedir . 'moodle/lang/' => '', + $this->basedir . 'moodledata/lang/' => '', + )); + } + + public function test_locations_to_search_langconfig() { + $this->assertEqual($this->stringmanager->locations_to_search('langconfig'), array( + $this->basedir . 'moodle/lang/' => '', + $this->basedir . 'moodledata/lang/' => '', + )); + } + + public function test_locations_to_search_module() { + $this->assertEqual($this->stringmanager->locations_to_search('forum'), array( + $this->basedir . 'moodle/lang/' => 'forum/', + $this->basedir . 'moodledata/lang/' => 'forum/', + $this->basedir . 'moodle/mod/forum/lang/' => 'forum/', + )); + } + + public function test_locations_to_search_question_type() { + $this->assertEqual($this->stringmanager->locations_to_search('qtype_matrix'), array( + $this->basedir . 'moodle/lang/' => 'qtype_matrix/', + $this->basedir . 'moodledata/lang/' => 'qtype_matrix/', + $this->basedir . 'moodle/question/type/matrix/lang/' => 'matrix/', + )); + } + + public function test_locations_to_search_local() { + $this->assertEqual($this->stringmanager->locations_to_search('local'), array( + $this->basedir . 'moodle/lang/' => 'local/', + $this->basedir . 'moodledata/lang/' => 'local/', + $this->basedir . 'moodle/local/lang/' => 'local/', + )); + } + + public function test_locations_to_search_report() { + $this->assertEqual($this->stringmanager->locations_to_search('report_super'), array( + $this->basedir . 'moodle/lang/' => 'report_super/', + $this->basedir . 'moodledata/lang/' => 'report_super/', + $this->basedir . 'moodle/adminpath/report/super/lang/' => 'super/', + $this->basedir . 'moodle/course/report/super/lang/' => 'super/', + )); + } + + public function test_parse_module_name_module() { + $this->assertEqual($this->stringmanager->parse_module_name('forum'), + array('', 'forum')); + } + + public function test_parse_module_name_grade_report() { + $this->assertEqual($this->stringmanager->parse_module_name('gradereport_magic'), + array('gradereport_', 'magic')); + } + + public function test_get_parent_language_normal() { + // This is a standard case with parent language defined in + // moodledata/lang/fr_ca_utf8/langconfig.php. From the shared fixture: + // + //.../moodledata/lang/fr_ca_utf8/langconfig.php + //$string['parentlanguage'] = 'fr_utf8'; + $this->assertEqual($this->stringmanager->get_parent_language('fr_ca_utf8'), 'fr_utf8'); + } + + public function test_get_parent_language_local_override() { + // This is an artificial case where the parent from moodledata/lang/es_ar_utf8 is overridden by + // a custom file in moodle/lang/es_ar_utf8_local. From the shared fixture: + // + //.../moodledata/lang/es_ar_utf8/langconfig.php + //$string['parentlanguage'] = 'es_utf8'; + // + //.../moodle/lang/es_ar_utf8_local/langconfig.php + //$string['parentlanguage'] = 'es_mx_utf8'; + $this->assertEqual($this->stringmanager->get_parent_language('es_ar_utf8'), 'es_mx_utf8'); + } + + public function test_load_lang_file() { + // From, the shared fixture: + // + //.../moodle/lang/en_utf8/test.php: + //$string['hello'] = 'Hello \'world\'!'; + //$string['hellox'] = 'Hello $a!'; + //$string['results'] = 'Dear $a->firstname $a->lastname,\n\nOn test \"$a->testname\" you scored $a->grade%% which earns you \$100.'; + $this->assertEqual($this->stringmanager->load_lang_file($this->basedir . 'moodle/lang/en_utf8/test.php'), array( + 'hello' => "Hello 'world'!", + 'hellox' => 'Hello $a!', + 'results' => 'Dear $a->firstname $a->lastname,\n\nOn test \"$a->testname\" you scored $a->grade%% which earns you \$100.', + )); + } + + public function test_get_string_from_file_simple() { + // From the shared fixture: + //.../moodle/lang/en_utf8/test.php: + //$string['hello'] = 'Hello \'world\'!'; + // ... + $this->assertEqual($this->stringmanager->get_string_from_file( + 'hello', $this->basedir . 'moodle/lang/en_utf8/test.php', NULL), + "Hello 'world'!"); + } + + public function test_get_string_from_file_simple_interp_with_special_chars() { + // From the shared fixture: + //.../moodle/lang/en_utf8/test.php: + // ... + //$string['hellox'] = 'Hello $a!'; + // ... + $this->assertEqual($this->stringmanager->get_string_from_file( + 'hellox', $this->basedir . 'moodle/lang/en_utf8/test.php', 'Fred. $100 = 100%'), + "Hello Fred. $100 = 100%!"); + } + + public function test_get_string_from_file_complex_interp() { + // From the shared fixture: + //.../moodle/lang/en_utf8/test.php: + // ... + //$string['results'] = 'Dear $a->firstname $a->lastname,\n\nOn test \"$a->testname\" you scored $a->grade%% which earns you \$100.'; + $a = new stdClass; + $a->firstname = 'Tim'; + $a->lastname = 'Hunt'; + $a->testname = 'The song "\'Right\' said Fred"'; + $a->grade = 75; + $this->assertEqual($this->stringmanager->get_string_from_file( + 'results', $this->basedir . 'moodle/lang/en_utf8/test.php', $a), + "Dear Tim Hunt,\n\nOn test \"The song \"'Right' said Fred\"\" you scored 75% which earns you $100."); + } + + public function test_default_lang() { + global $SESSION; + $SESSION->lang = 'en_utf8'; + $this->assertEqual($this->stringmanager->get_string('test'), 'Test'); + $this->assertEqual($this->stringmanager->get_string('hello', 'test'), "Hello 'world'!"); + $this->assertEqual($this->stringmanager->get_string('hellox', 'test', 'Tim'), 'Hello Tim!'); + $this->assertEqual($this->stringmanager->get_string('yes', 'block_mrbs'), 'Yes'); + $this->assertEqual($this->stringmanager->get_string('stringnotdefinedanywhere'), '[[stringnotdefinedanywhere]]'); + } + + public function test_non_default_no_parent() { + global $SESSION; + $SESSION->lang = 'fr_utf8'; + $this->assertEqual($this->stringmanager->get_string('test'), 'Test'); + $this->assertEqual($this->stringmanager->get_string('hello', 'test'), 'Bonjour tout le monde!'); + $this->assertEqual($this->stringmanager->get_string('hellox', 'test', 'Jean-Paul'), 'Bonjour Jean-Paul!'); + $this->assertEqual($this->stringmanager->get_string('yes', 'block_mrbs'), 'Oui'); + $this->assertEqual($this->stringmanager->get_string('stringnotdefinedanywhere'), '[[stringnotdefinedanywhere]]'); + } + + public function test_lang_with_parent() { + global $SESSION; + $SESSION->lang = 'fr_ca_utf8'; + $this->assertEqual($this->stringmanager->get_string('test'), 'Test'); + $this->assertEqual($this->stringmanager->get_string('hello', 'test'), 'Bonjour Québec!'); + $this->assertEqual($this->stringmanager->get_string('hellox', 'test', 'Jean-Paul'), 'Bonjour Jean-Paul!'); + $this->assertEqual($this->stringmanager->get_string('yes', 'block_mrbs'), 'Oui'); + $this->assertEqual($this->stringmanager->get_string('stringnotdefinedanywhere'), '[[stringnotdefinedanywhere]]'); + } +} + +?>