diff --git a/Events.php b/Events.php
index 438bc92e..af6a3ec4 100644
--- a/Events.php
+++ b/Events.php
@@ -9,28 +9,33 @@
namespace humhub\modules\tasks;
+use humhub\commands\IntegrityController;
+use humhub\helpers\ControllerHelper;
use humhub\modules\content\components\ContentContainerActiveRecord;
+use humhub\modules\dashboard\widgets\Sidebar as DashboardSidebar;
+use humhub\modules\notification\models\Notification;
use humhub\modules\rest\Module as RestModule;
-use humhub\modules\space\models\Space;
+use humhub\modules\space\widgets\Menu as SpaceMenu;
+use humhub\modules\space\widgets\Sidebar as SpaceSidebar;
use humhub\modules\tasks\extensions\custom_pages\elements\TaskElement;
use humhub\modules\tasks\extensions\custom_pages\elements\TasksElement;
use humhub\modules\tasks\helpers\TaskListUrl;
use humhub\modules\tasks\helpers\TaskUrl;
-use humhub\modules\user\models\User;
-use Yii;
-use humhub\modules\notification\models\Notification;
use humhub\modules\tasks\jobs\SendReminder;
use humhub\modules\tasks\models\SnippetModuleSettings;
use humhub\modules\tasks\models\Task;
use humhub\modules\tasks\models\checklist\TaskItem;
use humhub\modules\tasks\models\scheduling\TaskReminder;
+use humhub\modules\tasks\models\user\TaskUser;
use humhub\modules\tasks\integration\calendar\TaskCalendar;
use humhub\modules\tasks\widgets\MyTasks;
-use humhub\modules\tasks\models\user\TaskUser;
+use humhub\modules\ui\menu\MenuLink;
+use humhub\modules\user\models\User;
+use humhub\modules\user\widgets\ProfileMenu;
+use humhub\widgets\TopMenu;
+use Yii;
use yii\db\Expression;
-/* @var $user \humhub\modules\user\models\User */
-
/**
* Created by PhpStorm.
* User: davidborn
@@ -45,28 +50,29 @@ public static function onTopMenuInit($event)
/* @var $module Module */
$module = Yii::$app->getModule('tasks');
-
if (!$module->settings->get('showGlobalMenuItem', false) || Yii::$app->user->isGuest) {
return;
}
+ /* @var TopMenu $menu */
+ $menu = $event->sender;
+
// Is Module enabled on this workspace?
- $event->sender->addItem([
+ $menu->addEntry(new MenuLink([
'label' => Yii::t('TasksModule.base', 'Tasks'),
'id' => 'tasks-global',
'icon' => 'tasks',
'url' => TaskUrl::globalView(),
'sortOrder' => $module->settings->get('menuSortOrder', 500),
- 'isActive' => (Yii::$app->controller->module && Yii::$app->controller->module->id == 'tasks' && Yii::$app->controller->id == 'global'),
- ]);
+ 'isActive' => ControllerHelper::isActivePath('tasks', 'global'),
+ ]));
} catch (\Throwable $e) {
Yii::error($e);
}
}
/**
- * @param $event \humhub\modules\calendar\interfaces\CalendarItemTypesEvent
- * @return mixed
+ * @param $event \humhub\modules\calendar\interfaces\event\CalendarItemTypesEvent
*/
public static function onGetCalendarItemTypes($event)
{
@@ -83,7 +89,7 @@ public static function onGetCalendarItemTypes($event)
}
/**
- * @param $event \humhub\modules\calendar\interfaces\CalendarItemsEvent;
+ * @param $event \humhub\modules\calendar\interfaces\event\CalendarItemsEvent;
*/
public static function onFindCalendarItems($event)
{
@@ -109,7 +115,9 @@ public static function onDashboardSidebarInit($event)
$settings = SnippetModuleSettings::instantiate();
if ($settings->showMyTasksSnippet()) {
- $event->sender->addWidget(MyTasks::class, ['limit' => $settings->myTasksSnippetMaxItems], ['sortOrder' => $settings->myTasksSnippetSortOrder]);
+ /* @var DashboardSidebar $sidebar */
+ $sidebar = $event->sender;
+ $sidebar->addWidget(MyTasks::class, ['limit' => $settings->myTasksSnippetMaxItems], ['sortOrder' => $settings->myTasksSnippetSortOrder]);
}
} catch (\Throwable $e) {
Yii::error($e);
@@ -123,15 +131,17 @@ public static function onSpaceSidebarInit($event)
return;
}
- /* @var $space Space */
- $space = $event->sender->space;
+ /* @var SpaceSidebar $sidebar */
+ $sidebar = $event->sender;
- if ($space->moduleManager->isEnabled('tasks') && $space->isMember()) {
+ if ($sidebar->space->moduleManager->isEnabled('tasks') && $sidebar->space->isMember()) {
$settings = SnippetModuleSettings::instantiate();
if ($settings->showMyTasksSnippetSpace()) {
- $event->sender->addWidget(MyTasks::class, [
- 'contentContainer' => $space,
- 'limit' => $settings->myTasksSnippetMaxItems], ['sortOrder' => $settings->myTasksSnippetSortOrder]);
+ $sidebar->addWidget(
+ MyTasks::class,
+ ['contentContainer' => $sidebar->space, 'limit' => $settings->myTasksSnippetMaxItems],
+ ['sortOrder' => $settings->myTasksSnippetSortOrder],
+ );
}
}
} catch (\Throwable $e) {
@@ -142,17 +152,16 @@ public static function onSpaceSidebarInit($event)
public static function onSpaceMenuInit($event)
{
try {
- /* @var $space Space */
- $space = $event->sender->space;
+ /* @var SpaceMenu $menu */
+ $menu = $event->sender;
- if ($space->moduleManager->isEnabled('tasks') && $space->isMember()) {
- $event->sender->addItem([
+ if ($menu->space->moduleManager->isEnabled('tasks') && $menu->space->isMember()) {
+ $menu->addEntry(new MenuLink([
'label' => Yii::t('TasksModule.base', 'Tasks'),
- 'group' => 'modules',
- 'url' => TaskListUrl::taskListRoot($space),
+ 'url' => TaskListUrl::taskListRoot($menu->space),
'icon' => 'tasks',
- 'isActive' => (Yii::$app->controller->module && Yii::$app->controller->module->id == 'tasks'),
- ]);
+ 'isActive' => ControllerHelper::isActivePath('tasks'),
+ ]));
}
} catch (\Throwable $e) {
Yii::error($e);
@@ -161,16 +170,17 @@ public static function onSpaceMenuInit($event)
public static function onProfileMenuInit($event)
{
- /* @var $user User */
try {
- $user = $event->sender->user;
- if ($user->moduleManager->isEnabled('tasks')) {
- $event->sender->addItem([
+ /* @var ProfileMenu $menu */
+ $menu = $event->sender;
+
+ if ($menu->user->moduleManager->isEnabled('tasks')) {
+ $menu->addEntry(new MenuLink([
'label' => Yii::t('TasksModule.base', 'Tasks'),
- 'url' => TaskListUrl::taskListRoot($user),
+ 'url' => TaskListUrl::taskListRoot($menu->user),
'icon' => 'tasks',
- 'isActive' => (Yii::$app->controller->module && Yii::$app->controller->module->id == 'tasks'),
- ]);
+ 'isActive' => ControllerHelper::isActivePath('tasks'),
+ ]));
}
} catch (\Throwable $e) {
Yii::error($e);
@@ -186,6 +196,7 @@ public static function onProfileMenuInit($event)
*/
public static function onIntegrityCheck($event)
{
+ /* @var IntegrityController $integrityController */
$integrityController = $event->sender;
$integrityController->showTestHeadline("Tasks Module - Entries (" . Task::find()->count() . " entries)");
diff --git a/config.php b/config.php
index 4acd22b0..0dd7dc58 100644
--- a/config.php
+++ b/config.php
@@ -1,6 +1,5 @@
Yii::t('TasksModule.base', 'If empty any user can complete the task.'),
+ ];
+ }
+
/**
* @inheritdoc
*/
diff --git a/views/task/edit-assignment.php b/views/task/edit-assignment.php
index 5db49c1c..3ff1e6ca 100644
--- a/views/task/edit-assignment.php
+++ b/views/task/edit-assignment.php
@@ -8,7 +8,6 @@
use humhub\modules\user\widgets\UserPickerField;
use humhub\widgets\bootstrap\Button;
-use humhub\widgets\bootstrap\Link;
/* @var $form \humhub\widgets\form\ActiveForm */
/* @var $taskForm \humhub\modules\tasks\models\forms\TaskForm */
@@ -24,9 +23,8 @@
'selection' => $taskForm->task->taskAssignedUsers,
'url' => $taskForm->getTaskAssignedPickerUrl(),
'placeholder' => Yii::t('TasksModule.base', 'Assign users'),
-])->hint(Yii::t('TasksModule.base', 'If empty any user can complete the task.'), []) ?>
-
-= Link::userPickerSelfSelect('#taskAssignedUserPicker', Yii::t('TasksModule.base', 'Assign myself')); ?>
+ 'selfSelect' => Yii::t('TasksModule.base', 'Assign myself'),
+]) ?>
@@ -35,10 +33,9 @@
'selection' => $responsible,
'url' => $taskForm->getTaskResponsiblePickerUrl(),
'placeholder' => Yii::t('TasksModule.base', 'Add responsible users'),
+ 'selfSelect' => Yii::t('TasksModule.base', 'Assign myself'),
]) ?>
-= Link::userPickerSelfSelect('#taskResponsibleUserPicker', Yii::t('TasksModule.base', 'Assign myself')); ?>
-
= $form->field($taskForm->task, 'review')->checkbox() ?>
diff --git a/widgets/lists/views/completedTaskListItem.php b/widgets/lists/views/completedTaskListItem.php
index e1c0ac85..44e251cc 100644
--- a/widgets/lists/views/completedTaskListItem.php
+++ b/widgets/lists/views/completedTaskListItem.php
@@ -5,7 +5,7 @@
/* @var $options array */
use humhub\modules\tasks\helpers\TaskListUrl;
-use humhub\widgets\bootstrap\Button;
+use humhub\widgets\bootstrap\Link;
use humhub\helpers\Html;
?>
@@ -17,7 +17,7 @@
= Html::encode($taskList->title); ?>