2012-08-07 11:54:49 -07:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
final class PhabricatorApplicationProject extends PhabricatorApplication {
|
|
|
|
|
|
|
|
|
|
public function getName() {
|
2013-02-13 09:22:14 -08:00
|
|
|
return pht('Projects');
|
2012-08-07 11:54:49 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getShortDescription() {
|
2013-02-13 09:22:14 -08:00
|
|
|
return pht('Organize Work');
|
2012-08-07 11:54:49 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getBaseURI() {
|
|
|
|
|
return '/project/';
|
|
|
|
|
}
|
|
|
|
|
|
Use application icons for "Eye" menu and Crumbs
Summary:
Issues here:
- Need an application-sized "eye", or a "home" icon for "Phabricator Home".
- Some of the "apps_lb_2x" sliced images are the "_dark_" versions, not the light versions.
- If you slice an application-sized "logout" (power off) icon and application-sized "help" (questionmark in circle) icon I can replace the current menu icons and nearly get rid of "autosprite".
- To replace the icons on /applications/, the non-retina size is "4x", so we'd need "8x" for retina. Alternatively I can reduce the icon sizes by 50%.
- The "Help", "Settings" and "Logout" items currently have a "glowing" hover state, which needs a variant (or we can drop it).
- The /applications/ icons have a white hover state (or we can drop it).
- The 1x application (14x14) icons aren't used anywhere right now, should they be? Maybe in the feed in the future, etc?
- The "apps-2x" and "apps-large" sheets are the same image, but getting them to actually use the same file is a bit tricky, so I just left them separate for now.
Test Plan:
{F26698}
{F26699}
Reviewers: chad
Reviewed By: chad
CC: aran
Maniphest Tasks: T1960
Differential Revision: https://secure.phabricator.com/D4108
2012-12-07 13:37:28 -08:00
|
|
|
public function getIconName() {
|
2012-08-14 14:23:55 -07:00
|
|
|
return 'projects';
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-03 15:16:26 -07:00
|
|
|
public function getFlavorText() {
|
|
|
|
|
return pht('Group stuff into big piles.');
|
|
|
|
|
}
|
|
|
|
|
|
2012-10-03 15:46:19 -07:00
|
|
|
public function getApplicationGroup() {
|
|
|
|
|
return self::GROUP_ORGANIZATION;
|
|
|
|
|
}
|
|
|
|
|
|
2013-05-18 02:46:39 -07:00
|
|
|
public function getRemarkupRules() {
|
|
|
|
|
return array(
|
|
|
|
|
new ProjectRemarkupRule(),
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2012-08-07 11:54:49 -07:00
|
|
|
public function getRoutes() {
|
|
|
|
|
return array(
|
|
|
|
|
'/project/' => array(
|
2013-07-22 08:34:35 -07:00
|
|
|
'(?:query/(?P<queryKey>[^/]+)/)?' => 'PhabricatorProjectListController',
|
2012-08-07 11:54:49 -07:00
|
|
|
'filter/(?P<filter>[^/]+)/' => 'PhabricatorProjectListController',
|
2012-10-05 16:06:16 -07:00
|
|
|
'edit/(?P<id>[1-9]\d*)/' => 'PhabricatorProjectProfileEditController',
|
|
|
|
|
'members/(?P<id>[1-9]\d*)/'
|
|
|
|
|
=> 'PhabricatorProjectMembersEditController',
|
|
|
|
|
'view/(?P<id>[1-9]\d*)/(?:(?P<page>\w+)/)?'
|
2012-08-07 11:54:49 -07:00
|
|
|
=> 'PhabricatorProjectProfileController',
|
2013-10-17 09:32:34 -07:00
|
|
|
'picture/(?P<id>[1-9]\d*)/' =>
|
|
|
|
|
'PhabricatorProjectProfilePictureController',
|
2012-08-07 11:54:49 -07:00
|
|
|
'create/' => 'PhabricatorProjectCreateController',
|
Add a secret board view to Projects
Summary:
Ref T1344. This is //very// rough. Some UI issues:
- Empty states for the board and columns are junky.
- Column widths are crazy. I think we need to set them to fixed-width, since we may have an arbitrarily large number of columns?
- I don't think we have the header UI elements in M10 yet and that mock is pretty old, so I sort of very roughly approximated it.
- What should we do when you click a task title? Popping the whole task in a dialog is possible but needs a bunch of work to actually work. Might need to build "sheets" or something.
- Icons are slightly clipped for some reason.
- All the backend stuff is totally faked.
Generally, my plan is just to use these to implement all of T390. Specifically:
- "Kanban" projects will have "Backlog" on the left. You'll drag them toward the right as you make progress.
- "Milestone" projects will have "No Milestone" on the left, then "Milestone 9", "Milestone 8", etc.
- "Sprint" projects will have "Backlog" on the left, then "Sprint 31", "Sprint 30", etc.
So all of these things end up being pretty much exactly the same, with some minor text changes and new columns showing up on the left vs the right or whatever.
Test Plan: See screenshot.
Reviewers: chad, btrahan
Reviewed By: btrahan
CC: chad, aran, sascha-egerer
Maniphest Tasks: T1344
Differential Revision: https://secure.phabricator.com/D7374
2013-10-21 21:11:36 -07:00
|
|
|
'board/(?P<id>[1-9]\d*)/' => 'PhabricatorProjectBoardController',
|
2014-01-09 16:09:38 -08:00
|
|
|
'board/(?P<projectID>[1-9]\d*)/edit/(?:(?P<id>\d+)/)?'
|
|
|
|
|
=> 'PhabricatorProjectBoardEditController',
|
2012-10-05 16:06:16 -07:00
|
|
|
'update/(?P<id>[1-9]\d*)/(?P<action>[^/]+)/'
|
2012-08-07 11:54:49 -07:00
|
|
|
=> 'PhabricatorProjectUpdateController',
|
2013-10-22 13:49:37 -07:00
|
|
|
'history/(?P<id>[1-9]\d*)/' => 'PhabricatorProjectHistoryController',
|
2012-08-07 11:54:49 -07:00
|
|
|
),
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2013-10-10 04:29:07 -07:00
|
|
|
protected function getCustomCapabilities() {
|
|
|
|
|
return array(
|
|
|
|
|
ProjectCapabilityCreateProjects::CAPABILITY => array(
|
|
|
|
|
),
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2012-08-07 11:54:49 -07:00
|
|
|
}
|