Page MenuHomePhorge

D25889.1740147557.diff
No OneTemporary

D25889.1740147557.diff

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

Mime Type
text/plain
Expires
Fri, Feb 21, 14:19 (7 h, 18 m ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1175572
Default Alt Text
D25889.1740147557.diff (12 KB)

Event Timeline