Skip to content
Snippets Groups Projects
Commit 0c0ddc35 authored by TamaraGunkel's avatar TamaraGunkel
Browse files

manually start workflows

parent 1850c457
No related branches found
No related tags found
No related merge requests found
...@@ -167,4 +167,14 @@ class process_manager { ...@@ -167,4 +167,14 @@ class process_manager {
$DB->delete_records('tool_cleanupcourses_procdata', array('processid' => $process->id)); $DB->delete_records('tool_cleanupcourses_procdata', array('processid' => $process->id));
$DB->delete_records('tool_cleanupcourses_process', (array) $process); $DB->delete_records('tool_cleanupcourses_process', (array) $process);
} }
public static function get_process_by_course_id($courseid) {
global $DB;
$record = $DB->get_record('tool_cleanupcourses_process', array('courseid' => $courseid));
if ($record) {
return process::from_record($record);
} else {
return null;
}
}
} }
...@@ -77,7 +77,8 @@ class interaction_remaining_table extends interaction_table { ...@@ -77,7 +77,8 @@ class interaction_remaining_table extends interaction_table {
foreach ($this->availabletools as $tool) { foreach ($this->availabletools as $tool) {
if (has_capability($tool->capability, \context_course::instance($row->courseid))) { if (has_capability($tool->capability, \context_course::instance($row->courseid))) {
$actions[$tool->triggerid] = new \action_menu_link_secondary( $actions[$tool->triggerid] = new \action_menu_link_secondary(
new \moodle_url($PAGE->url, array('triggerid' => $tool->triggerid)), new \moodle_url($PAGE->url, array('triggerid' => $tool->triggerid,
'courseid' => $row->courseid, 'sesskey' => sesskey())),
new \pix_icon($tool->icon, $tool->displayname, 'moodle', array('class' => 'iconsmall', 'title' => '')), new \pix_icon($tool->icon, $tool->displayname, 'moodle', array('class' => 'iconsmall', 'title' => '')),
$tool->displayname $tool->displayname
); );
...@@ -85,21 +86,12 @@ class interaction_remaining_table extends interaction_table { ...@@ -85,21 +86,12 @@ class interaction_remaining_table extends interaction_table {
} }
$menu = new \action_menu(); $menu = new \action_menu();
// $menu->set_owner_selector($ownerselector);
// $menu->set_constraint($constraint);
$menu->set_alignment(\action_menu::TR, \action_menu::BR); $menu->set_alignment(\action_menu::TR, \action_menu::BR);
$menu->set_menu_trigger(get_string('action')); $menu->set_menu_trigger(get_string('action'));
foreach ($actions as $action) { foreach ($actions as $action) {
// if ($action instanceof \action_menu_link) {
// $action->add_class('cm-edit-action');
// }
$menu->add($action); $menu->add($action);
} }
// $menu->attributes['class'] .= ' section-cm-edit-actions commands';
// Prioritise the menu ahead of all other actions.
$menu->prioritise = true;
return $OUTPUT->render($menu); return $OUTPUT->render($menu);
} }
......
...@@ -26,6 +26,7 @@ use core\notification; ...@@ -26,6 +26,7 @@ use core\notification;
use tool_cleanupcourses\manager\interaction_manager; use tool_cleanupcourses\manager\interaction_manager;
use tool_cleanupcourses\manager\process_manager; use tool_cleanupcourses\manager\process_manager;
use tool_cleanupcourses\manager\step_manager; use tool_cleanupcourses\manager\step_manager;
use tool_cleanupcourses\manager\workflow_manager;
use tool_cleanupcourses\table\interaction_remaining_table; use tool_cleanupcourses\table\interaction_remaining_table;
use tool_cleanupcourses\table\interaction_attention_table; use tool_cleanupcourses\table\interaction_attention_table;
...@@ -120,7 +121,12 @@ class view_controller { ...@@ -120,7 +121,12 @@ class view_controller {
public function handle_trigger($triggerid, $courseid) { public function handle_trigger($triggerid, $courseid) {
global $PAGE; global $PAGE;
//interaction_manager::handle_interaction($stepid, $processid, $action); $running_process =process_manager::get_process_by_course_id($courseid);
if ($running_process !== null) {
redirect($PAGE->url, get_string('manual_trigger_process_existed', 'tool_cleanupcourses'), null, notification::ERROR);
}
process_manager::manually_trigger_process($courseid, $triggerid);
redirect($PAGE->url, get_string('manual_trigger_success', 'tool_cleanupcourses'), null, notification::SUCCESS); redirect($PAGE->url, get_string('manual_trigger_success', 'tool_cleanupcourses'), null, notification::SUCCESS);
} }
} }
\ No newline at end of file
...@@ -118,6 +118,7 @@ $string['tablecoursesremaining'] = 'Remaining courses'; ...@@ -118,6 +118,7 @@ $string['tablecoursesremaining'] = 'Remaining courses';
$string['viewheading'] = 'Manage courses'; $string['viewheading'] = 'Manage courses';
$string['interaction_success'] = 'Action successfully saved.'; $string['interaction_success'] = 'Action successfully saved.';
$string['manual_trigger_success'] = 'Workflow started successfully.'; $string['manual_trigger_success'] = 'Workflow started successfully.';
$string['manual_trigger_process_existed'] = 'A workflow for this course already exists.';
$string['workflow_started'] = 'Workflow started.'; $string['workflow_started'] = 'Workflow started.';
$string['workflow_is_running'] = 'Workflow is running.'; $string['workflow_is_running'] = 'Workflow is running.';
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment