Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F2982774
D25889.1739971816.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Advanced/Developer...
View Handle
View Hovercard
Size
12 KB
Referenced Files
None
Subscribers
None
D25889.1739971816.diff
View Options
diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -4216,12 +4216,14 @@
'PhabricatorPeopleProfileMenuEngine' => 'applications/people/engine/PhabricatorPeopleProfileMenuEngine.php',
'PhabricatorPeopleProfilePictureController' => 'applications/people/controller/PhabricatorPeopleProfilePictureController.php',
'PhabricatorPeopleProfileRevisionsController' => 'applications/people/controller/PhabricatorPeopleProfileRevisionsController.php',
+ 'PhabricatorPeopleProfileTasksAuthoredController' => 'applications/people/controller/PhabricatorPeopleProfileTasksAuthoredController.php',
'PhabricatorPeopleProfileTasksController' => 'applications/people/controller/PhabricatorPeopleProfileTasksController.php',
'PhabricatorPeopleProfileViewController' => 'applications/people/controller/PhabricatorPeopleProfileViewController.php',
'PhabricatorPeopleQuery' => 'applications/people/query/PhabricatorPeopleQuery.php',
'PhabricatorPeopleRenameController' => 'applications/people/controller/PhabricatorPeopleRenameController.php',
'PhabricatorPeopleRevisionsProfileMenuItem' => 'applications/people/menuitem/PhabricatorPeopleRevisionsProfileMenuItem.php',
'PhabricatorPeopleSearchEngine' => 'applications/people/query/PhabricatorPeopleSearchEngine.php',
+ 'PhabricatorPeopleTasksAuthoredProfileMenuItem' => 'applications/people/menuitem/PhabricatorPeopleTasksAuthoredProfileMenuItem.php',
'PhabricatorPeopleTasksProfileMenuItem' => 'applications/people/menuitem/PhabricatorPeopleTasksProfileMenuItem.php',
'PhabricatorPeopleTestDataGenerator' => 'applications/people/lipsum/PhabricatorPeopleTestDataGenerator.php',
'PhabricatorPeopleTransactionQuery' => 'applications/people/query/PhabricatorPeopleTransactionQuery.php',
@@ -10812,12 +10814,14 @@
'PhabricatorPeopleProfileMenuEngine' => 'PhabricatorProfileMenuEngine',
'PhabricatorPeopleProfilePictureController' => 'PhabricatorPeopleProfileController',
'PhabricatorPeopleProfileRevisionsController' => 'PhabricatorPeopleProfileController',
+ 'PhabricatorPeopleProfileTasksAuthoredController' => 'PhabricatorPeopleProfileController',
'PhabricatorPeopleProfileTasksController' => 'PhabricatorPeopleProfileController',
'PhabricatorPeopleProfileViewController' => 'PhabricatorPeopleProfileController',
'PhabricatorPeopleQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
'PhabricatorPeopleRenameController' => 'PhabricatorPeopleController',
'PhabricatorPeopleRevisionsProfileMenuItem' => 'PhabricatorProfileMenuItem',
'PhabricatorPeopleSearchEngine' => 'PhabricatorApplicationSearchEngine',
+ 'PhabricatorPeopleTasksAuthoredProfileMenuItem' => 'PhabricatorProfileMenuItem',
'PhabricatorPeopleTasksProfileMenuItem' => 'PhabricatorProfileMenuItem',
'PhabricatorPeopleTestDataGenerator' => 'PhabricatorTestDataGenerator',
'PhabricatorPeopleTransactionQuery' => 'PhabricatorApplicationTransactionQuery',
diff --git a/src/applications/people/application/PhabricatorPeopleApplication.php b/src/applications/people/application/PhabricatorPeopleApplication.php
--- a/src/applications/people/application/PhabricatorPeopleApplication.php
+++ b/src/applications/people/application/PhabricatorPeopleApplication.php
@@ -70,6 +70,8 @@
'PhabricatorPeopleProfileBadgesController',
'tasks/(?P<id>[1-9]\d*)/' =>
'PhabricatorPeopleProfileTasksController',
+ 'tasks-authored/(?P<id>[1-9]\d*)/' =>
+ 'PhabricatorPeopleProfileTasksAuthoredController',
'commits/(?P<id>[1-9]\d*)/' =>
'PhabricatorPeopleProfileCommitsController',
'revisions/(?P<id>[1-9]\d*)/' =>
diff --git a/src/applications/people/controller/PhabricatorPeopleProfileTasksAuthoredController.php b/src/applications/people/controller/PhabricatorPeopleProfileTasksAuthoredController.php
new file mode 100644
--- /dev/null
+++ b/src/applications/people/controller/PhabricatorPeopleProfileTasksAuthoredController.php
@@ -0,0 +1,81 @@
+<?php
+
+final class PhabricatorPeopleProfileTasksAuthoredController
+ extends PhabricatorPeopleProfileController {
+
+ public function handleRequest(AphrontRequest $request) {
+ $viewer = $this->getViewer();
+ $id = $request->getURIData('id');
+
+ $user = id(new PhabricatorPeopleQuery())
+ ->setViewer($viewer)
+ ->withIDs(array($id))
+ ->needProfile(true)
+ ->needProfileImage(true)
+ ->needAvailability(true)
+ ->executeOne();
+ if (!$user) {
+ return new Aphront404Response();
+ }
+
+ $class = 'PhabricatorManiphestApplication';
+ if (!PhabricatorApplication::isClassInstalledForViewer($class, $viewer)) {
+ return new Aphront404Response();
+ }
+
+ $this->setUser($user);
+ $title = array(pht('Assigned Tasks'), $user->getUsername());
+ $header = $this->buildProfileHeader();
+ $tasks = $this->buildTasksView($user);
+
+ $crumbs = $this->buildApplicationCrumbs();
+ $crumbs->addTextCrumb(pht('Assigned Tasks'));
+ $crumbs->setBorder(true);
+
+ $nav = $this->newNavigation(
+ $user,
+ PhabricatorPeopleProfileMenuEngine::ITEM_TASKS);
+
+ $view = id(new PHUITwoColumnView())
+ ->setHeader($header)
+ ->addClass('project-view-home')
+ ->addClass('project-view-people-home')
+ ->setFooter(array(
+ $tasks,
+ ));
+
+ return $this->newPage()
+ ->setTitle($title)
+ ->setCrumbs($crumbs)
+ ->setNavigation($nav)
+ ->appendChild($view);
+ }
+
+ private function buildTasksView(PhabricatorUser $user) {
+ $viewer = $this->getViewer();
+
+ $open = ManiphestTaskStatus::getOpenStatusConstants();
+
+ $tasks = id(new ManiphestTaskQuery())
+ ->setViewer($viewer)
+ ->withAuthors(array($user->getPHID()))
+ ->needProjectPHIDs(true)
+ ->setLimit(100)
+ ->execute();
+
+ $handles = ManiphestTaskListView::loadTaskHandles($viewer, $tasks);
+
+ $list = id(new ManiphestTaskListView())
+ ->setUser($viewer)
+ ->setHandles($handles)
+ ->setTasks($tasks)
+ ->setNoDataString(pht('No authored tasks.'));
+
+ $view = id(new PHUIObjectBoxView())
+ ->setHeaderText(pht('Authored Tasks'))
+ ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY)
+ ->appendChild($list);
+
+ return $view;
+ }
+}
diff --git a/src/applications/people/engine/PhabricatorPeopleProfileMenuEngine.php b/src/applications/people/engine/PhabricatorPeopleProfileMenuEngine.php
--- a/src/applications/people/engine/PhabricatorPeopleProfileMenuEngine.php
+++ b/src/applications/people/engine/PhabricatorPeopleProfileMenuEngine.php
@@ -8,6 +8,7 @@
const ITEM_PICTURE = 'people.picture';
const ITEM_BADGES = 'people.badges';
const ITEM_TASKS = 'people.tasks';
+ const ITEM_TASKS_AUTHORED = 'people.tasks.authored';
const ITEM_COMMITS = 'people.commits';
const ITEM_REVISIONS = 'people.revisions';
@@ -42,6 +43,10 @@
$items[] = $this->newItem()
->setBuiltinKey(self::ITEM_TASKS)
->setMenuItemKey(PhabricatorPeopleTasksProfileMenuItem::MENUITEMKEY);
+ $items[] = $this->newItem()
+ ->setBuiltinKey(self::ITEM_TASKS_AUTHORED)
+ ->setMenuItemKey(
+ PhabricatorPeopleTasksAuthoredProfileMenuItem::MENUITEMKEY);
}
$have_differential = PhabricatorApplication::isClassInstalledForViewer(
diff --git a/src/applications/people/menuitem/PhabricatorPeopleBadgesProfileMenuItem.php b/src/applications/people/menuitem/PhabricatorPeopleBadgesProfileMenuItem.php
--- a/src/applications/people/menuitem/PhabricatorPeopleBadgesProfileMenuItem.php
+++ b/src/applications/people/menuitem/PhabricatorPeopleBadgesProfileMenuItem.php
@@ -6,11 +6,11 @@
const MENUITEMKEY = 'people.badges';
public function getMenuItemTypeName() {
- return pht('Badges');
+ return pht('Received Badges');
}
private function getDefaultName() {
- return pht('Badges');
+ return pht('Received Badges');
}
public function canHideMenuItem(
diff --git a/src/applications/people/menuitem/PhabricatorPeopleCommitsProfileMenuItem.php b/src/applications/people/menuitem/PhabricatorPeopleCommitsProfileMenuItem.php
--- a/src/applications/people/menuitem/PhabricatorPeopleCommitsProfileMenuItem.php
+++ b/src/applications/people/menuitem/PhabricatorPeopleCommitsProfileMenuItem.php
@@ -6,11 +6,11 @@
const MENUITEMKEY = 'people.commits';
public function getMenuItemTypeName() {
- return pht('Commits');
+ return pht('Authored Commits');
}
private function getDefaultName() {
- return pht('Commits');
+ return pht('Authored Commits');
}
public function canHideMenuItem(
diff --git a/src/applications/people/menuitem/PhabricatorPeopleDetailsProfileMenuItem.php b/src/applications/people/menuitem/PhabricatorPeopleDetailsProfileMenuItem.php
--- a/src/applications/people/menuitem/PhabricatorPeopleDetailsProfileMenuItem.php
+++ b/src/applications/people/menuitem/PhabricatorPeopleDetailsProfileMenuItem.php
@@ -45,7 +45,7 @@
$item = $this->newItemView()
->setURI($uri)
- ->setName(pht('Profile'))
+ ->setName(pht('User Profile'))
->setIcon('fa-user');
return array(
diff --git a/src/applications/people/menuitem/PhabricatorPeopleManageProfileMenuItem.php b/src/applications/people/menuitem/PhabricatorPeopleManageProfileMenuItem.php
--- a/src/applications/people/menuitem/PhabricatorPeopleManageProfileMenuItem.php
+++ b/src/applications/people/menuitem/PhabricatorPeopleManageProfileMenuItem.php
@@ -10,7 +10,7 @@
}
private function getDefaultName() {
- return pht('Manage');
+ return pht('Manage User');
}
public function canHideMenuItem(
diff --git a/src/applications/people/menuitem/PhabricatorPeopleRevisionsProfileMenuItem.php b/src/applications/people/menuitem/PhabricatorPeopleRevisionsProfileMenuItem.php
--- a/src/applications/people/menuitem/PhabricatorPeopleRevisionsProfileMenuItem.php
+++ b/src/applications/people/menuitem/PhabricatorPeopleRevisionsProfileMenuItem.php
@@ -6,11 +6,11 @@
const MENUITEMKEY = 'people.revisions';
public function getMenuItemTypeName() {
- return pht('Revisions');
+ return pht('Authored Revisions');
}
private function getDefaultName() {
- return pht('Revisions');
+ return pht('Authored Revisions');
}
public function canHideMenuItem(
diff --git a/src/applications/people/menuitem/PhabricatorPeopleTasksProfileMenuItem.php b/src/applications/people/menuitem/PhabricatorPeopleTasksAuthoredProfileMenuItem.php
copy from src/applications/people/menuitem/PhabricatorPeopleTasksProfileMenuItem.php
copy to src/applications/people/menuitem/PhabricatorPeopleTasksAuthoredProfileMenuItem.php
--- a/src/applications/people/menuitem/PhabricatorPeopleTasksProfileMenuItem.php
+++ b/src/applications/people/menuitem/PhabricatorPeopleTasksAuthoredProfileMenuItem.php
@@ -1,16 +1,16 @@
<?php
-final class PhabricatorPeopleTasksProfileMenuItem
+final class PhabricatorPeopleTasksAuthoredProfileMenuItem
extends PhabricatorProfileMenuItem {
- const MENUITEMKEY = 'people.tasks';
+ const MENUITEMKEY = 'people.tasks.authored';
public function getMenuItemTypeName() {
- return pht('Tasks');
+ return pht('Authored Tasks');
}
private function getDefaultName() {
- return pht('Tasks');
+ return pht('Authored Tasks');
}
public function canHideMenuItem(
@@ -47,7 +47,7 @@
$id = $user->getID();
$item = $this->newItemView()
- ->setURI("/people/tasks/{$id}/")
+ ->setURI("/people/tasks-authored/{$id}/")
->setName($this->getDisplayName($config))
->setIcon('fa-anchor');
diff --git a/src/applications/people/menuitem/PhabricatorPeopleTasksProfileMenuItem.php b/src/applications/people/menuitem/PhabricatorPeopleTasksProfileMenuItem.php
--- a/src/applications/people/menuitem/PhabricatorPeopleTasksProfileMenuItem.php
+++ b/src/applications/people/menuitem/PhabricatorPeopleTasksProfileMenuItem.php
@@ -6,11 +6,11 @@
const MENUITEMKEY = 'people.tasks';
public function getMenuItemTypeName() {
- return pht('Tasks');
+ return pht('Assigned Tasks');
}
private function getDefaultName() {
- return pht('Tasks');
+ return pht('Assigned Tasks');
}
public function canHideMenuItem(
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Wed, Feb 19, 13:30 (2 d, 7 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1175572
Default Alt Text
D25889.1739971816.diff (12 KB)
Attached To
Mode
D25889: Add "Authored Tasks" view / item to user profile menu
Attached
Detach File
Event Timeline
Log In to Comment