Select Git revision
SprintApplication.php 7.13 KiB
<?php
/**
* @author Michael Peters
* @author Christopher Johnson
* @license GPL version 3
*/
final class SprintApplication extends PhabricatorApplication {
public function getName() {
return pht('Sprint');
}
public function getBaseURI() {
return '/project/sprint/';
}
public function getIconName() {
return 'fa-puzzle-piece';
}
public function getShortDescription() {
return 'Build Sprints';
}
public function getEventListeners() {
return array(
new BurndownActionMenuEventListener(),
);
}
public function getRoutes() {
$enable_board = PhabricatorEnv::getEnvConfig('sprint.enable-sprint-board');
if ($enable_board == true) {
return array(
// this is the default application route controller
'/project/sprint/' => array(
'' => 'SprintListController',
// these are forked controllers for the Sprint Board
'board/(?P<projectID>[1-9]\d*)/' => array(
'edit/(?:(?P<id>\d+)/)?'
=> 'SprintBoardColumnEditController',
'hide/(?:(?P<id>\d+)/)?'
=> 'SprintBoardColumnHideController',
'column/(?:(?P<id>\d+)/)?'
=> 'SprintBoardColumnDetailController',
'import/'
=> 'SprintBoardImportController',
'reorder/'
=> 'SprintBoardReorderController',
),
// these allow task creation and editing from a Sprint Board
'board/task/edit/(?P<id>[1-9]\d*)/'
=> 'SprintBoardTaskEditController',
'board/task/create/'
=> 'SprintBoardTaskEditController',
'board/batch/'
=> 'SprintBoardBatchEditController',
// these are for board filters and column queries
'board/(?P<id>[1-9]\d*)/'.
'(?P<filter>filter/)?'.
'(?:query/(?P<queryKey>[^/]+)/)?'
=> 'SprintBoardViewController',
// these are native Sprint application controllers
'burn/(?P<id>\d+)/' => 'SprintDataViewController',
'profile/(?P<id>[1-9]\d*)/'
=> 'SprintProjectProfileController',
'report/list/' => 'SprintListController',
'report/history/' => 'SprintHistoryController',
'report/(?:(?P<view>\w+)/)?' => 'SprintReportController',