Select Git revision
courseware.php
Forked from
Stud.IP / Stud.IP
Source project has a limited visibility.
-
David Siegfried authored
Closes #44 Merge request !811
David Siegfried authoredCloses #44 Merge request !811
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
courseware.php 15.16 KiB
<?php
use \Courseware\StructuralElement;
class Contents_CoursewareController extends AuthenticatedController
{
/**
* Callback function being called before an action is executed.
*
* @SuppressWarnings(PHPMD.CamelCaseMethodName)
* @SuppressWarnings(PHPMD.Superglobals)
*/
public function before_filter(&$action, &$args)
{
parent::before_filter($action, $args);
PageLayout::setHelpKeyword('Basis.Courseware'); // set keyword for new help
PageLayout::setTitle(_('Courseware'));
$this->user = $GLOBALS['user'];
}
/**
* Entry point of the controller that displays the courseware projects overview
*
* @param string $action
* @param string $widgetId
* @SuppressWarnings(PHPMD.CamelCaseMethodName)
* @SuppressWarnings(PHPMD.Superglobals)
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function index_action()
{
Navigation::activateItem('/contents/courseware/overview');
$this->user_id = $GLOBALS['user']->id;
$this->setOverviewSidebar();
$this->courseware_root = \Courseware\StructuralElement::getCoursewareUser($this->user_id);
if (!$this->courseware_root) {
// create initial courseware dataset
$new = \Courseware\StructuralElement::createEmptyCourseware($this->user_id, 'user');
$this->courseware_root = $new->getRoot();
}
$this->licenses = $this->getLicences();
}
private function setOverviewSidebar()
{
$sidebar = Sidebar::Get();
$views = new TemplateWidget(
_('Aktionen'),
$this->get_template_factory()->open('contents/courseware/overview_action_widget')
);
$sidebar->addWidget($views)->addLayoutCSSClass('courseware-overview-filter-widget');
$views = new TemplateWidget(
_('Filter'),
$this->get_template_factory()->open('contents/courseware/overview_filter_widget')
);
$sidebar->addWidget($views)->addLayoutCSSClass('courseware-overview-filter-widget');
}
/**
* Show Courseware of current user
*
* @param string $action
* @param string $widgetId
* @SuppressWarnings(PHPMD.CamelCaseMethodName)
* @SuppressWarnings(PHPMD.Superglobals)
* @SuppressWarnings(PHPMD.UnusedFormalParameter)