Files
construprogress/app/Livewire/Projects/Traits/MapIssues.php
T
Javier Braña 1d508adc8b
Code Style & Quality / Laravel Pint (push) Waiting to run
Code Style & Quality / PHPStan Static Analysis (push) Waiting to run
Code Style & Quality / Test Suite (push) Waiting to run
Code Style & Quality / Browser Tests (Dusk) (push) Waiting to run
feat: Phase 6.1 - Split ProjectMap into traits (part 1)
- Create MapLayers trait (layer/phase visibility, filters)
- Create MapInspections trait (inspection CRUD, viewer, editor)
- Create MapIssues trait (issue count listeners)
- Create MapFeatures trait (feature selection, progress, images)

Tests: 101 passing (319 assertions)
2026-09-01 14:36:30 +02:00

36 lines
841 B
PHP

<?php
namespace App\Livewire\Projects\Traits;
use App\Models\Feature;
use App\Models\Issue;
use Livewire\Attributes\On;
trait MapIssues
{
public $openIssuesCount = 0;
#[On('issue-created')]
public function handleIssueCreated()
{
$this->openIssuesCount = Issue::where('project_id', $this->project->id)
->where('status', 'open')
->count();
}
#[On('issue-updated')]
public function handleIssueUpdated()
{
$this->openIssuesCount = Issue::where('project_id', $this->project->id)
->where('status', 'open')
->count();
}
#[On('issue-deleted')]
public function handleIssueDeleted()
{
$this->openIssuesCount = Issue::where('project_id', $this->project->id)
->where('status', 'open')
->count();
}
}