diff --git a/admin/settings/language.php b/admin/settings/language.php index 1a9b936b2f9..d3f1688fdd1 100644 --- a/admin/settings/language.php +++ b/admin/settings/language.php @@ -17,7 +17,4 @@ if ($hassiteconfig) { $ADMIN->add('language', $temp); - // Hidden multilang upgrade page. - $ADMIN->add('language', new admin_externalpage('multilangupgrade', get_string('multilangupgrade', 'admin'), $CFG->wwwroot.'/'.$CFG->admin.'/multilangupgrade.php', 'moodle/site:config', !empty($CFG->filter_multilang_converted))); - } // end of speedup diff --git a/admin/multilangupgrade.php b/admin/tool/multilangupgrade/index.php similarity index 68% rename from admin/multilangupgrade.php rename to admin/tool/multilangupgrade/index.php index 77c221905db..04dd6918267 100644 --- a/admin/multilangupgrade.php +++ b/admin/tool/multilangupgrade/index.php @@ -1,26 +1,51 @@ . + +/** + * Search and replace strings throughout all texts in the whole database. + * + * Unfortunately it was a bad idea to use spans for multilang because it + * can not support nesting. Hopefully this will get thrown away soon.... + * + * @package tool + * @subpackage multilangupgrade + * @copyright 2006 Petr Skoda (http://skodak.org) + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ define('NO_OUTPUT_BUFFERING', true); -require_once('../config.php'); +require('../../../config.php'); require_once($CFG->dirroot.'/course/lib.php'); require_once($CFG->libdir.'/adminlib.php'); -admin_externalpage_setup('multilangupgrade'); +admin_externalpage_setup('toolmultilangupgrade'); $go = optional_param('go', 0, PARAM_BOOL); ################################################################### echo $OUTPUT->header(); -echo $OUTPUT->heading(get_string('multilangupgrade', 'admin')); +echo $OUTPUT->heading(get_string('pluginname', 'tool_multilangupgrade')); -$strmultilangupgrade = get_String('multilangupgradeinfo', 'admin'); +$strmultilangupgrade = get_String('multilangupgradeinfo', 'tool_multilangupgrade'); if (!$go or !data_submitted() or !confirm_sesskey()) { /// Print a form $optionsyes = array('go'=>1, 'sesskey'=>sesskey()); - echo $OUTPUT->confirm($strmultilangupgrade, new moodle_url('multilangupgrade.php', $optionsyes), 'index.php'); + echo $OUTPUT->confirm($strmultilangupgrade, new moodle_url('/admin/tool/multilangupgrade/index.php', $optionsyes), new moodle_url('/admin/')); echo $OUTPUT->footer(); die; } @@ -38,7 +63,7 @@ echo $OUTPUT->box_start(); echo 'Progress:'; $i = 0; -$skiptables = array('config', 'user_students', 'user_teachers'); +$skiptables = array('config', 'block_instances', 'sessions'); // we can not process tables with serialised data here foreach ($tables as $table) { if (strpos($table,'pma') === 0) { // Not our tables @@ -99,7 +124,7 @@ echo $OUTPUT->notification('Rebuilding course cache...', 'notifysuccess'); rebuild_course_cache(); echo $OUTPUT->notification('...finished', 'notifysuccess'); -echo $OUTPUT->continue_button('index.php'); +echo $OUTPUT->continue_button(new moodle_url('/admin/')); echo $OUTPUT->footer(); die; diff --git a/admin/tool/multilangupgrade/lang/en/tool_multilangupgrade.php b/admin/tool/multilangupgrade/lang/en/tool_multilangupgrade.php new file mode 100644 index 00000000000..58ee29f2245 --- /dev/null +++ b/admin/tool/multilangupgrade/lang/en/tool_multilangupgrade.php @@ -0,0 +1,27 @@ +. + +/** + * Strings for component 'tool_multilangupgrade', language 'en', branch 'MOODLE_22_STABLE' + * + * @package report + * @subpackage multilangupgrade + * @copyright 2011 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +$string['multilangupgradeinfo'] = 'The multilang filter syntax was changed in 1.8, <lang> tag is not supported any more.

Example: <span lang="en" class="multilang">Hello!</span><span lang="es" class="multilang">Hola!</span>

Do you want to upgrade the syntax in all existing texts now?'; +$string['pluginname'] = 'Multilang upgrade'; diff --git a/admin/tool/multilangupgrade/settings.php b/admin/tool/multilangupgrade/settings.php new file mode 100644 index 00000000000..f03b122759c --- /dev/null +++ b/admin/tool/multilangupgrade/settings.php @@ -0,0 +1,31 @@ +. + +/** + * Link to multilang upgrade script. + * + * @package tool + * @subpackage multilangupgrade + * @copyright 2011 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die; + +if ($hassiteconfig) { + // Hidden multilang upgrade page - show in settings root to get more attention. + $ADMIN->add('root', new admin_externalpage('toolmultilangupgrade', get_string('pluginname', 'tool_multilangupgrade'), $CFG->wwwroot.'/'.$CFG->admin.'/tool/multilangupgrade/index.php', 'moodle/site:config', !empty($CFG->filter_multilang_converted))); +} diff --git a/admin/tool/multilangupgrade/version.php b/admin/tool/multilangupgrade/version.php new file mode 100644 index 00000000000..8e1b9dd8d16 --- /dev/null +++ b/admin/tool/multilangupgrade/version.php @@ -0,0 +1,30 @@ +. + +/** + * Plugin version info + * + * @package tool + * @subpackage multilangupgrade + * @copyright 2011 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +defined('MOODLE_INTERNAL') || die; + +$plugin->version = 2011091700; // The current plugin version (Date: YYYYMMDDXX) +$plugin->requires = 2011091600; // Requires this Moodle version +$plugin->component = 'tool_multilangupgrade'; // Full name of the plugin (used for diagnostics) + diff --git a/lang/en/admin.php b/lang/en/admin.php index 3568cce6c45..9cb5503954c 100644 --- a/lang/en/admin.php +++ b/lang/en/admin.php @@ -683,9 +683,6 @@ $string['modeditdefaults'] = 'Default values for activity settings'; $string['modsettings'] = 'Manage activities'; $string['modulesecurity'] = 'Module security'; $string['multilangforceold'] = 'Force old multilang syntax: <span> without the class="multilang" and <lang>'; -$string['multilangupgrade'] = 'Multilang upgrade'; -$string['multilangupgradeinfo'] = 'The multilang filter syntax was changed in 1.8, <lang> tag is not supported any more.

Example: <span lang="en" class="multilang">Hello!</span><span lang="es" class="multilang">Hola!</span>

Do you want to upgrade the syntax in all existing texts now?'; -$string['multilangupgradenotice'] = 'Your site is probably using old multilang syntax, multilang upgrade is recommended.'; $string['mustenablestats'] = 'Stats have not yet been enabled on this site.'; $string['mycoursesperpage'] = 'Number of courses'; $string['mydashboard'] = 'System default dashboard'; diff --git a/lib/pluginlib.php b/lib/pluginlib.php index bdebc0ae8ba..eef2f7f4e48 100644 --- a/lib/pluginlib.php +++ b/lib/pluginlib.php @@ -367,8 +367,9 @@ class plugin_manager { ), 'tool' => array( - 'bloglevelupgrade', 'capability', 'dbtransfer', 'generator', 'health', - 'innodb', 'langimport', 'profiling', 'unittest', 'unsuproles', 'xmldb' + 'bloglevelupgrade', 'capability', 'dbtransfer', 'generator', + 'health', 'innodb', 'langimport', 'multilangupgrade', + 'profiling', 'unittest', 'unsuproles', 'xmldb' ), 'webservice' => array(