public static function initializeNewProject(PhabricatorUser $actor)
 {
     $app = id(new PhabricatorApplicationQuery())->setViewer(PhabricatorUser::getOmnipotentUser())->withClasses(array('PhabricatorProjectApplication'))->executeOne();
     $view_policy = $app->getPolicy(ProjectDefaultViewCapability::CAPABILITY);
     $edit_policy = $app->getPolicy(ProjectDefaultEditCapability::CAPABILITY);
     $join_policy = $app->getPolicy(ProjectDefaultJoinCapability::CAPABILITY);
     $default_icon = PhabricatorProjectIconSet::getDefaultIconKey();
     $default_color = PhabricatorProjectIconSet::getDefaultColorKey();
     return id(new PhabricatorProject())->setAuthorPHID($actor->getPHID())->setIcon($default_icon)->setColor($default_color)->setViewPolicy($view_policy)->setEditPolicy($edit_policy)->setJoinPolicy($join_policy)->setIsMembershipLocked(0)->attachMemberPHIDs(array())->attachSlugs(array())->setHasWorkboard(0)->setHasMilestones(0)->setHasSubprojects(0)->attachParentProject(null);
 }
예제 #2
0
 public function getDisplayColor()
 {
     if ($this->isMilestone()) {
         return PhabricatorProjectIconSet::getDefaultColorKey();
     }
     return $this->getColor();
 }