'Backlog', 2=>'To Do', 3=>'In Progress', 4=>'Done', ]; protected $state_fa = [ 1=>'انباشته', 2=>'برای انجام', 3=>'درحال انجام', 4=>'پایان یافته', ]; public function getStateFaAttribute() { return $this->state_fa[$this->state] ?? 'نامشخص'; } public function user(){ return $this->belongsTo(User::class); } public function app(){ return $this->belogsTo(App::class); } public function duration(){ return $this->hasMany(TaskDuration::class, 'task_id', 'id'); } public function comments() { return $this->hasMany(TaskComment::class, 'task_id', 'id')->orderBy('id', 'desc'); } public function userDurations($userId = null) { $userId = $userId ?: User::where('user_name', $_COOKIE['user_identity'])->first()->id; // پیش‌فرض: کاربر جاری return $this->taskDurations()->where('user_id', $userId); } public function filterByState($tasks){ $backlog = []; $todo = []; $inprogress = []; $done = []; foreach($tasks as $task){ if($task->state == 1){ $backlog[] = $task; }elseif ($task->state == 2){ $todo[] = $task; }elseif ($task->state == 3){ $inprogress[] = $task; }elseif ($task->state == 4){ $done[] = $task; } } $tasks = [ 'backlog' => $backlog, 'todo' => $todo, 'inprogress' => $inprogress, 'done' => $done, // 'count' => count($tasks), ]; return $tasks; } // public function users() // { //// return $this->belongsToMany(User::class, 'pivot_tasks', 'task_id', 'user_id'); // return $this->belongsToMany( // User::class, // 'pivot_tasks', // 'task_id', // 'user_id', // 'task_id', // 'plain_id', // ); // } // public function pivotTask() // { // return DB::table('pivot_tasks') // ->where('task_id', $this->task_id); // } }