private function buildMilestoneList(PhabricatorProject $project)
 {
     if (!$project->getHasMilestones()) {
         return null;
     }
     $viewer = $this->getViewer();
     $id = $project->getID();
     $milestones = id(new PhabricatorProjectQuery())->setViewer($viewer)->withParentProjectPHIDs(array($project->getPHID()))->needImages(true)->withIsMilestone(true)->withStatuses(array(PhabricatorProjectStatus::STATUS_ACTIVE))->setOrderVector(array('milestoneNumber', 'id'))->execute();
     if (!$milestones) {
         return null;
     }
     $milestone_list = id(new PhabricatorProjectListView())->setUser($viewer)->setProjects($milestones)->renderList();
     $view_all = id(new PHUIButtonView())->setTag('a')->setIcon(id(new PHUIIconView())->setIcon('fa-list-ul'))->setText(pht('View All'))->setHref("/project/subprojects/{$id}/");
     $header = id(new PHUIHeaderView())->setHeader(pht('Milestones'))->addActionLink($view_all);
     return id(new PHUIObjectBoxView())->setHeader($header)->setBackground(PHUIBoxView::GREY)->setObjectList($milestone_list);
 }