added colors to tags (#1631)
This commit is contained in:
@@ -44,6 +44,8 @@ class Tag
|
||||
*/
|
||||
private $name;
|
||||
|
||||
use ColorTrait;
|
||||
|
||||
/**
|
||||
* @var Timesheet[]|ArrayCollection
|
||||
*
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
namespace App\Form;
|
||||
|
||||
use App\Entity\Tag;
|
||||
use App\Form\Type\ColorPickerType;
|
||||
use Symfony\Component\Form\AbstractType;
|
||||
use Symfony\Component\Form\Extension\Core\Type\TextType;
|
||||
use Symfony\Component\Form\FormBuilderInterface;
|
||||
@@ -29,7 +30,7 @@ class TagEditForm extends AbstractType
|
||||
'autofocus' => 'autofocus'
|
||||
],
|
||||
])
|
||||
;
|
||||
->add('color', ColorPickerType::class);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
38
src/Migrations/Version20200413133226.php
Normal file
38
src/Migrations/Version20200413133226.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
/*
|
||||
* This file is part of the Kimai time-tracking app.
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace DoctrineMigrations;
|
||||
|
||||
use App\Doctrine\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
|
||||
/**
|
||||
* @version 1.9
|
||||
*/
|
||||
final class Version20200413133226 extends AbstractMigration
|
||||
{
|
||||
public function getDescription(): string
|
||||
{
|
||||
return 'Add color for tags';
|
||||
}
|
||||
|
||||
public function up(Schema $schema): void
|
||||
{
|
||||
$tags = $schema->getTable('kimai2_tags');
|
||||
$tags->addColumn('color', 'string', ['length' => 7, 'notnull' => false, 'default' => null]);
|
||||
}
|
||||
|
||||
public function down(Schema $schema): void
|
||||
{
|
||||
$tags = $schema->getTable('kimai2_tags');
|
||||
$tags->dropColumn('color');
|
||||
}
|
||||
}
|
||||
@@ -108,10 +108,11 @@ class TagRepository extends EntityRepository
|
||||
$qb = $this->createQueryBuilder('tag');
|
||||
|
||||
$qb
|
||||
->select('tag.id, tag.name, count(timesheets.id) as amount')
|
||||
->select('tag.id, tag.name, tag.color, count(timesheets.id) as amount')
|
||||
->leftJoin('tag.timesheets', 'timesheets')
|
||||
->addGroupBy('tag.id')
|
||||
->addGroupBy('tag.name')
|
||||
->addGroupBy('tag.color')
|
||||
;
|
||||
|
||||
$orderBy = $query->getOrderBy();
|
||||
|
||||
Reference in New Issue
Block a user