diff --git a/Coursehistory.class.php b/Coursehistory.class.php index 630443318e36e2097406da5c29bb4b07bc0fbf58..0b6c358290c60dedf3162dfbd93d8761e19f4c06 100755 --- a/Coursehistory.class.php +++ b/Coursehistory.class.php @@ -18,7 +18,7 @@ class Coursehistory extends StudIPPlugin implements SystemPlugin, AdminCourseAct } } } - + /** * Returns the plugin name * @return string @@ -27,7 +27,7 @@ class Coursehistory extends StudIPPlugin implements SystemPlugin, AdminCourseAct { return _('Änderungsverlauf'); } - + /** * Get adminaction url * @return bool @@ -36,7 +36,7 @@ class Coursehistory extends StudIPPlugin implements SystemPlugin, AdminCourseAct { return false; } - + /** * Dont use multimode * @return bool @@ -45,7 +45,7 @@ class Coursehistory extends StudIPPlugin implements SystemPlugin, AdminCourseAct { return false; } - + /** * Get template for admin-courses overview * @param $course_id @@ -60,23 +60,7 @@ class Coursehistory extends StudIPPlugin implements SystemPlugin, AdminCourseAct $template->set_attribute('plugin', $this); return $template; } - - /** - * Run action - * @param $unconsumed_path - */ - public function perform($unconsumed_path) - { - $dispatcher = new Trails_Dispatcher( - $this->getPluginPath(), - rtrim(PluginEngine::getLink($this, [], null), '/'), - 'show' - ); - - $dispatcher->plugin = $this; - $dispatcher->dispatch($unconsumed_path); - } - + /** * Helper function to cleanup output * @param $event diff --git a/controllers/show.php b/controllers/show.php index 1d6015de30b28ab4afa6d4e96de54bcbdc641804..658b105352d918c0fcf5cf287f979799aa07440e 100755 --- a/controllers/show.php +++ b/controllers/show.php @@ -4,48 +4,36 @@ * @author David Siegfried <david.siegfried@uni-vechta.de> * @license GPL2 or any later version */ -class ShowController extends StudipController +class ShowController extends PluginController { - public function __construct($dispatcher) + /** + * Index + */ + public function index_action() { - parent::__construct($dispatcher); - $this->plugin = $dispatcher->plugin; $this->course = $this->plugin->course; - } - - public function before_filter(&$action, &$args) - { - parent::before_filter($action, $args); - PageLayout::setTitle(htmlReady($this->course->getFullname()) . ' - ' . $this->plugin->getPluginName()); if (Navigation::hasItem('/course/main/coursehistory')) { Navigation::activateItem('/course/main/coursehistory'); } - } - - /** - * Index - */ - public function index_action() - { $this->log_actions = $this->getLogEvents(); } - + /** * Returns all log-events for given course */ - protected function getLogEvents() + protected function getLogEvents(): array { $query = "SELECT la.`description`, le.`event_id` FROM `log_events` le JOIN `log_actions` la ON la.`action_id` = le.`action_id` WHERE ? IN (le.`affected_range_id`, le.`coaffected_range_id`, le.`user_id`) ORDER BY le.`mkdate` DESC"; - + $stmt = DBManager::get()->prepare($query); $stmt->execute([$this->course->id]); $results = array_map('LogEvent::findMany', $stmt->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_ASSOC)); - + array_walk($results, function (&$a) { $a = SimpleCollection::createFromArray($a); $a->orderBy('mkdate DESC'); diff --git a/plugin.manifest b/plugin.manifest index 9795aa4554b95a519084aa8590be2c60c193bfcd..40e8b6bc7a296391692c7e631de6e50ea6fcaa3c 100755 --- a/plugin.manifest +++ b/plugin.manifest @@ -1,6 +1,6 @@ pluginname=CourseHistory pluginclassname=Coursehistory origin=Vec -version=3.2 +version=3.3 studipMinVersion=4.3 -studipMaxVersion=4.4.99 +studipMaxVersion=5.0.99 diff --git a/views/show/_action.php b/views/show/_action.php index b8256ce1807c595311cca169b039a5e85e773d5f..39ce45b12359f70729b33a44f725328a5944dfcf 100755 --- a/views/show/_action.php +++ b/views/show/_action.php @@ -2,5 +2,5 @@ \Studip\LinkButton::createEdit( $plugin->getPluginName(), PluginEngine::getLink($plugin, ['cid' => $course_id], 'show/index'), - ['data-dialog' => 'size=100%']) + ['data-dialog' => 'size=auto']) ?> \ No newline at end of file