/** * Return if the user can assign scrum user stories * * @param TBGProject $project * * @return boolean */ public function canAssignScrumUserStories(TBGProject $project) { if ($project->isArchived()) { return false; } if ($this->canSaveConfiguration(TBGSettings::CONFIGURATION_SECTION_PROJECTS)) { return true; } if ($project->getOwner() instanceof TBGUser && $project->getOwner()->getID() == $this->getID()) { return true; } $retval = $this->hasPermission('canassignscrumuserstoriestosprints', $project->getID()); $retval = $retval !== null ? $retval : $this->hasPermission('candoscrumplanning', $project->getID()); $retval = $retval !== null ? $retval : $this->hasPermission('canassignscrumuserstoriestosprints', 0); $retval = $retval !== null ? $retval : $this->hasPermission('candoscrumplanning', 0); return (bool) ($retval !== null) ? $retval : false; }