Skip to content

Commit 1602af6

Browse files
committed
Update copyrights, add counter for dashboard
1 parent f8c72ad commit 1602af6

File tree

15 files changed

+75
-54
lines changed

15 files changed

+75
-54
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
Changelog
22
=========
33

4+
## 1.2.0 (2023-06-25)
5+
* Update copyrights, add counter for dashboard
6+
47
## 1.1.9 (2020-07-01)
58
* Update dependencies, README.md
69
* Fixed error determining loading of common modules

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2019 - 2020 W.D.M.Group, Ukraine
3+
Copyright (c) 2019 - 2023 W.D.M.Group, Ukraine
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

Module.php

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,15 @@
66
* Yii2 Tasks
77
*
88
* @category Module
9-
* @version 1.1.9
9+
* @version 1.2.0
1010
* @author Alexsander Vyshnyvetskyy <alex.vyshnyvetskyy@gmail.com>
1111
* @link https://github.com/wdmg/yii2-tasks
12-
* @copyright Copyright (c) 2019 - 2021 W.D.M.Group, Ukraine
12+
* @copyright Copyright (c) 2019 - 2023 W.D.M.Group, Ukraine
1313
* @license https://opensource.org/licenses/MIT Massachusetts Institute of Technology (MIT) License
1414
*
1515
*/
1616

17+
use wdmg\helpers\ArrayHelper;
1718
use Yii;
1819
use wdmg\base\BaseModule;
1920

@@ -45,7 +46,7 @@ class Module extends BaseModule
4546
/**
4647
* @var string the module version
4748
*/
48-
private $version = "1.1.9";
49+
private $version = "1.2.0";
4950

5051
/**
5152
* @var integer, priority of initialization
@@ -70,18 +71,9 @@ public function init()
7071
/**
7172
* {@inheritdoc}
7273
*/
73-
public function dashboardNavItems($options = false)
74+
public function dashboardNavItems($options = null)
7475
{
7576
$items = [
76-
'label' => $this->name,
77-
'url' => [$this->routePrefix . '/'. $this->id],
78-
'icon' => 'fa fa-fw fa-tasks',
79-
'active' => in_array(\Yii::$app->controller->module->id, [$this->id])
80-
];
81-
82-
83-
84-
return [
8577
'label' => $this->name,
8678
'url' => [$this->routePrefix . '/'. $this->id],
8779
'icon' => 'fa fa-fw fa-tasks',
@@ -99,6 +91,20 @@ public function dashboardNavItems($options = false)
9991
]
10092
]
10193
];
94+
95+
if (!is_null($options)) {
96+
97+
if (isset($options['count'])) {
98+
$items['label'] .= '<span class="badge badge-default float-right">' . $options['count'] . '</span>';
99+
unset($options['count']);
100+
}
101+
102+
if (is_array($options))
103+
$items = ArrayHelper::merge($items, $options);
104+
105+
}
106+
107+
return $items;
102108
}
103109

104110
/**

README.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[![Yii2](https://img.shields.io/badge/required-Yii2_v2.0.40-blue.svg)](https://packagist.org/packages/yiisoft/yii2)
1+
[![Yii2](https://img.shields.io/badge/required-Yii2_v2.0.35-blue.svg)](https://packagist.org/packages/yiisoft/yii2)
22
[![Downloads](https://img.shields.io/packagist/dt/wdmg/yii2-tasks.svg)](https://packagist.org/packages/wdmg/yii2-tasks)
33
[![Packagist Version](https://img.shields.io/packagist/v/wdmg/yii2-tasks.svg)](https://packagist.org/packages/wdmg/yii2-tasks)
44
![Progress](https://img.shields.io/badge/progress-ready_to_use-green.svg)
@@ -11,11 +11,11 @@ Task manager for Yii2.
1111

1212
This module is an integral part of the [Butterfly.СMS](https://butterflycms.com/) content management system, but can also be used as an standalone extension.
1313

14-
Copyrights (c) 2019-2021 [W.D.M.Group, Ukraine](https://wdmg.com.ua/)
14+
Copyrights (c) 2019-2023 [W.D.M.Group, Ukraine](https://wdmg.com.ua/)
1515

1616
# Requirements
1717
* PHP 5.6 or higher
18-
* Yii2 v.2.0.40 and newest
18+
* Yii2 v.2.0.35 and newest
1919
* [Yii2 Base](https://github.com/wdmg/yii2-base) module (required)
2020
* [Yii2 Tickets](https://github.com/wdmg/yii2-tickets) module (optionaly)
2121
* [Yii2 Users](https://github.com/wdmg/yii2-users) module (optionaly)
@@ -65,9 +65,7 @@ Use the `Module::dashboardNavItems()` method of the module to generate a navigat
6565
]);
6666
?>
6767

68-
# Status and version [in progress development]
68+
# Status and version [ready to use]
69+
* v.1.2.0 - Update copyrights, add counter for dashboard
6970
* v.1.1.9 - Update dependencies, README.md
70-
* v.1.1.8 - Added pagination, up to date dependencies
71-
* v.1.1.7 - Fixed deprecated class declaration
72-
* v.1.1.6 - Added extra options to composer.json and navbar menu icon
73-
* v.1.1.5 - Added choice param for non interactive mode
71+
* v.1.1.8 - Added pagination, up to date dependencies

commands/InitController.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public function actionIndex($params = null)
3434
'║ ║'. "\n" .
3535
'║ TASKS MODULE, v.'.$version.''. "\n" .
3636
'║ by Alexsander Vyshnyvetskyy ║'. "\n" .
37-
'║ (c) 2019-2021 W.D.M.Group, Ukraine ║'. "\n" .
37+
'║ (c) 2019-2023 W.D.M.Group, Ukraine ║'. "\n" .
3838
'║ ║'. "\n" .
3939
'╚════════════════════════════════════════════════╝';
4040
echo $name = $this->ansiFormat($welcome . "\n\n", Console::FG_GREEN);

composer.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"keywords": ["yii2", "yii2-tasks", "task manager", "wdmg"],
55
"type": "yii2-extension",
66
"license": "MIT",
7-
"version": "1.1.9",
7+
"version": "1.2.0",
88
"homepage": "https://github.com/wdmg/yii2-tasks",
99
"support": {
1010
"source": "https://github.com/wdmg/yii2-tasks",
@@ -21,12 +21,12 @@
2121
}
2222
],
2323
"require": {
24-
"yiisoft/yii2": "^2.0.40",
24+
"yiisoft/yii2": "^2.0.35",
2525
"wdmg/yii2-base": "^1.2.4",
2626
"wdmg/yii2-selectinput": "^1.0.9",
2727
"wdmg/yii2-helpers": "^1.3.2",
2828
"wdmg/yii2-editor": "^1.0.10",
29-
"wdmg/yii2-datepicker": "^1.0.8"
29+
"wdmg/yii2-datepicker": "^1.1.0"
3030
},
3131
"minimum-stability": "dev",
3232
"autoload": {

docs/images/yii2-tasks.png

-1 Bytes
Loading

messages/ru-RU/app/modules/tasks.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@
6060
'Task has been successfully created!' => 'Задача была успешно создана!',
6161
'An error occurred while creating the task.' => 'Произошла ошибка при создании задачи.',
6262

63+
'New tasks in the last 24 hours' => 'Новых задач за последние сутки',
6364

6465
'Update' => 'Обновить',
6566
'Edit' => 'Редактировать',

models/Tasks.php

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,4 +198,20 @@ public function getUser($user_id = null)
198198
else
199199
return null;
200200
}
201+
202+
/**
203+
* Return stats count by all users
204+
*
205+
* @return array|null
206+
*/
207+
public static function getStatsCount($asArray = false) {
208+
$counts = static::find()
209+
->select([new \yii\db\Expression('SUM( CASE WHEN `created_at` >= TIMESTAMP(CURRENT_TIMESTAMP() - INTERVAL 1 DAY) THEN 1 END ) AS count')])
210+
->addSelect([new \yii\db\Expression('SUM( CASE WHEN `id` > 0 THEN 1 END ) AS total')]);
211+
212+
if ($asArray)
213+
return $counts->asArray()->one();
214+
215+
return $counts->one();
216+
}
201217
}

views/subunits/index.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
'format' => 'raw',
4949
'header' => Yii::t('app/modules/tasks', 'Users'),
5050
'value' => function($model) {
51-
if (is_countable($model->users)) {
51+
if (is_array($model->users)) {
5252

5353
$output = '';
5454
foreach ($model->users as $user) {
@@ -114,10 +114,10 @@
114114
],
115115
'maxButtonCount' => 5,
116116
'activePageCssClass' => 'active',
117-
'prevPageCssClass' => 'prev',
118-
'nextPageCssClass' => 'next',
119-
'firstPageCssClass' => 'first',
120-
'lastPageCssClass' => 'last',
117+
'prevPageCssClass' => '',
118+
'nextPageCssClass' => '',
119+
'firstPageCssClass' => 'previous',
120+
'lastPageCssClass' => 'next',
121121
'firstPageLabel' => Yii::t('app/modules/tasks', 'First page'),
122122
'lastPageLabel' => Yii::t('app/modules/tasks', 'Last page'),
123123
'prevPageLabel' => Yii::t('app/modules/tasks', '&larr; Prev page'),

views/subunits/view.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
'format' => 'raw',
4545
'label' => Yii::t('app/modules/tasks', 'Users'),
4646
'value' => function($model) {
47-
if (is_countable($model->users)) {
47+
if (is_array($model->users)) {
4848

4949
$output = '';
5050
foreach ($model->users as $user) {

views/tasks/all.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -180,19 +180,18 @@
180180
'options' => [
181181
'class' => 'pagination',
182182
],
183+
'maxButtonCount' => 5,
183184
'activePageCssClass' => 'active',
184185
'linkContainerOptions' => [
185186
'class' => 'linkContainerOptions',
186187
],
187188
'linkOptions' => [
188189
'class' => 'linkOptions',
189190
],
190-
'maxButtonCount' => 5,
191-
'activePageCssClass' => 'active',
192-
'prevPageCssClass' => 'prev',
193-
'nextPageCssClass' => 'next',
194-
'firstPageCssClass' => 'first',
195-
'lastPageCssClass' => 'last',
191+
'prevPageCssClass' => '',
192+
'nextPageCssClass' => '',
193+
'firstPageCssClass' => 'previous',
194+
'lastPageCssClass' => 'next',
196195
'firstPageLabel' => Yii::t('app/modules/tasks', 'First page'),
197196
'lastPageLabel' => Yii::t('app/modules/tasks', 'Last page'),
198197
'prevPageLabel' => Yii::t('app/modules/tasks', '&larr; Prev page'),

views/tasks/current.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -156,19 +156,18 @@
156156
'options' => [
157157
'class' => 'pagination',
158158
],
159+
'maxButtonCount' => 5,
159160
'activePageCssClass' => 'active',
160161
'linkContainerOptions' => [
161162
'class' => 'linkContainerOptions',
162163
],
163164
'linkOptions' => [
164165
'class' => 'linkOptions',
165166
],
166-
'maxButtonCount' => 5,
167-
'activePageCssClass' => 'active',
168-
'prevPageCssClass' => 'prev',
169-
'nextPageCssClass' => 'next',
170-
'firstPageCssClass' => 'first',
171-
'lastPageCssClass' => 'last',
167+
'prevPageCssClass' => '',
168+
'nextPageCssClass' => '',
169+
'firstPageCssClass' => 'previous',
170+
'lastPageCssClass' => 'next',
172171
'firstPageLabel' => Yii::t('app/modules/tasks', 'First page'),
173172
'lastPageLabel' => Yii::t('app/modules/tasks', 'Last page'),
174173
'prevPageLabel' => Yii::t('app/modules/tasks', '&larr; Prev page'),

views/tasks/my.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -162,19 +162,18 @@
162162
'options' => [
163163
'class' => 'pagination',
164164
],
165+
'maxButtonCount' => 5,
165166
'activePageCssClass' => 'active',
166167
'linkContainerOptions' => [
167168
'class' => 'linkContainerOptions',
168169
],
169170
'linkOptions' => [
170171
'class' => 'linkOptions',
171172
],
172-
'maxButtonCount' => 5,
173-
'activePageCssClass' => 'active',
174-
'prevPageCssClass' => 'prev',
175-
'nextPageCssClass' => 'next',
176-
'firstPageCssClass' => 'first',
177-
'lastPageCssClass' => 'last',
173+
'prevPageCssClass' => '',
174+
'nextPageCssClass' => '',
175+
'firstPageCssClass' => 'previous',
176+
'lastPageCssClass' => 'next',
178177
'firstPageLabel' => Yii::t('app/modules/tasks', 'First page'),
179178
'lastPageLabel' => Yii::t('app/modules/tasks', 'Last page'),
180179
'prevPageLabel' => Yii::t('app/modules/tasks', '&larr; Prev page'),

views/workflow/index.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,10 @@
4646
],
4747
'maxButtonCount' => 5,
4848
'activePageCssClass' => 'active',
49-
'prevPageCssClass' => 'prev',
50-
'nextPageCssClass' => 'next',
51-
'firstPageCssClass' => 'first',
52-
'lastPageCssClass' => 'last',
49+
'prevPageCssClass' => '',
50+
'nextPageCssClass' => '',
51+
'firstPageCssClass' => 'previous',
52+
'lastPageCssClass' => 'next',
5353
'firstPageLabel' => Yii::t('app/modules/tasks', 'First page'),
5454
'lastPageLabel' => Yii::t('app/modules/tasks', 'Last page'),
5555
'prevPageLabel' => Yii::t('app/modules/tasks', '&larr; Prev page'),

0 commit comments

Comments
 (0)