mod/assignment: MDL-16796 Support non-core assignment type titles

Without this patch, the add actvitiy drop down displays ugly
broken lang strings.

This is ugly - hopefully in Moodle 2.0 we will eventually support fully
pluggable architecture in a clean way.
This commit is contained in:
Dan Poltawski
2009-10-30 21:10:04 +00:00
parent 349442efda
commit 650bb34fec
2 changed files with 21 additions and 2 deletions
+10 -1
View File
@@ -1893,6 +1893,10 @@ class assignment_base {
$status = array();
$typestr = get_string('type'.$this->type, 'assignment');
// ugly hack to support pluggable assignment type titles...
if($typestr === '[[type'.$this->type.']]'){
$typestr = get_string('type'.$this->type, 'assignment_'.$this->type);
}
if (!empty($data->reset_assignment_submissions)) {
$assignmentssql = "SELECT a.id
@@ -2893,6 +2897,11 @@ function assignment_types() {
$names = get_list_of_plugins('mod/assignment/type');
foreach ($names as $name) {
$types[$name] = get_string('type'.$name, 'assignment');
// ugly hack to support pluggable assignment type titles..
if ($types[$name] == '[[type'.$name.']]') {
$types[$name] = get_string('type'.$name, 'assignment_'.$name);
}
}
asort($types);
return $types;
@@ -3081,7 +3090,7 @@ function assignment_get_types() {
$type = new object();
$type->modclass = MOD_CLASS_ACTIVITY;
$type->type = "assignment&type=$assignmenttype";
$type->typestr = get_string("type$assignmenttype", 'assignment');
$type->typestr = get_string("type$assignmenttype", 'assignment_'.$assignmenttype);
$types[] = $type;
}
}
+11 -1
View File
@@ -57,7 +57,17 @@ class mod_assignment_mod_form extends moodleform_mod {
$mform->addElement('select', 'preventlate', get_string('preventlate', 'assignment'), $ynoptions);
$mform->setDefault('preventlate', 0);
$mform->addElement('header', 'typedesc', get_string('type'.$type,'assignment'));
$typetitle = get_string('type'.$type, 'assignment');
// hack to support pluggable assignment type titles
if ($typetitle === '[[type'.$type.']]') {
$typetitle = get_string('type'.$type, 'assignment_'.$type);
}
$mform->addElement('header', 'typedesc', $typetitle);
$assignmentinstance->setup_elements($mform);
$features = new stdClass;