From d1f06fb5f1d2cee49a54cb97b90aa981c8f16d2e Mon Sep 17 00:00:00 2001 From: skodak Date: Mon, 10 Aug 2009 20:50:51 +0000 Subject: [PATCH] MDL-20038 replacing strtolowe() used incorrectly to get module directory name from localised string - that could work only for some modules and in English only ;-) --- lib/deprecatedlib.php | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/lib/deprecatedlib.php b/lib/deprecatedlib.php index 7505a661b08..bdd238de481 100644 --- a/lib/deprecatedlib.php +++ b/lib/deprecatedlib.php @@ -3509,11 +3509,22 @@ function update_tag_button($tagid) { * @return string the HTML for the button, if this user has permission to edit it, else an empty string. */ function update_module_button($cmid, $ignored, $string) { - global $OUTPUT; + global $CFG, $OUTPUT; // debugging('update_module_button() has been deprecated. Please change your code to use $OUTPUT->update_module_button().'); - return $OUTPUT->update_module_button($cmid, strtolower($string)); + //NOTE: DO NOT call new output method because it needs the module name we do not have here! + + if (has_capability('moodle/course:manageactivities', get_context_instance(CONTEXT_MODULE, $cmid))) { + $string = get_string('updatethis', '', $string); + + $form = new html_form(); + $form->url = new moodle_url("$CFG->wwwroot/course/mod.php", array('update' => $cmid, 'return' => true, 'sesskey' => sesskey())); + $form->button->text = $string; + return $OUTPUT->button($form); + } else { + return ''; + } } /**