Skip to content
Snippets Groups Projects
Commit cb3e6d34 authored by Tobias Reischmann's avatar Tobias Reischmann
Browse files

Fixed updating subpluginname of trigger

parent 3e88fb6e
No related branches found
No related tags found
No related merge requests found
...@@ -373,7 +373,8 @@ class workflow_settings { ...@@ -373,7 +373,8 @@ class workflow_settings {
$settings = null; $settings = null;
if ($trigger = trigger_manager::get_trigger_for_workflow($this->workflowid)) { if ($trigger = trigger_manager::get_trigger_for_workflow($this->workflowid)) {
$settings = settings_manager::get_settings($trigger->id, SETTINGS_TYPE_TRIGGER); $settings = settings_manager::get_settings($trigger->id, SETTINGS_TYPE_TRIGGER);
} else if (!$trigger && $name = optional_param('subpluginname', null, PARAM_ALPHA)) { }
if ($name = optional_param('subpluginname', null, PARAM_ALPHA)) {
$subpluginname = $name; $subpluginname = $name;
} }
$form = new form_trigger_instance($PAGE->url, $this->workflowid, $trigger, $subpluginname, $settings); $form = new form_trigger_instance($PAGE->url, $this->workflowid, $trigger, $subpluginname, $settings);
...@@ -389,6 +390,7 @@ class workflow_settings { ...@@ -389,6 +390,7 @@ class workflow_settings {
} else { } else {
if (!empty($data->id)) { if (!empty($data->id)) {
$trigger = trigger_manager::get_instance($data->id); $trigger = trigger_manager::get_instance($data->id);
$trigger->subpluginname = $data->subpluginname;
$trigger->instancename = $data->instancename; $trigger->instancename = $data->instancename;
} else { } else {
$trigger = trigger_subplugin::from_record($data); $trigger = trigger_subplugin::from_record($data);
... ...
......
...@@ -77,10 +77,11 @@ class form_trigger_instance extends \moodleform { ...@@ -77,10 +77,11 @@ class form_trigger_instance extends \moodleform {
$this->trigger = $trigger; $this->trigger = $trigger;
$this->workflowid = $workflowid; $this->workflowid = $workflowid;
$this->settings = $settings; $this->settings = $settings;
if ($trigger) { // Subpluginname has priority over trigger, since it could have been overriden by the form.
$this->subpluginname = $trigger->subpluginname; if ($subpluginname) {
} else if ($subpluginname) {
$this->subpluginname = $subpluginname; $this->subpluginname = $subpluginname;
} else if ($trigger) {
$this->subpluginname = $trigger->subpluginname;
} else { } else {
$triggertypes = trigger_manager::get_trigger_types(); $triggertypes = trigger_manager::get_trigger_types();
$this->subpluginname = array_pop($triggertypes); $this->subpluginname = array_pop($triggertypes);
... ...
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment