Differential D17769 Diff 42760 src/applications/maniphest/engineextension/ManiphestHovercardEngineExtension.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/maniphest/engineextension/ManiphestHovercardEngineExtension.php
| Show All 18 Lines | final class ManiphestHovercardEngineExtension | ||||
| } | } | ||||
| public function renderHovercard( | public function renderHovercard( | ||||
| PHUIHovercardView $hovercard, | PHUIHovercardView $hovercard, | ||||
| PhabricatorObjectHandle $handle, | PhabricatorObjectHandle $handle, | ||||
| $task, | $task, | ||||
| $data) { | $data) { | ||||
| $viewer = $this->getViewer(); | $viewer = $this->getViewer(); | ||||
| require_celerity_resource('phui-workcard-view-css'); | |||||
| $hovercard | $id = $task->getID(); | ||||
| ->setTitle($task->getMonogram()) | $task = id(new ManiphestTaskQuery()) | ||||
| ->setDetail($task->getTitle()); | ->setViewer($viewer) | ||||
| ->withIDs(array($id)) | |||||
| ->needProjectPHIDs(true) | |||||
| ->executeOne(); | |||||
| $phids = array(); | |||||
| $owner_phid = $task->getOwnerPHID(); | $owner_phid = $task->getOwnerPHID(); | ||||
| if ($owner_phid) { | if ($owner_phid) { | ||||
| $owner = $viewer->renderHandle($owner_phid); | $phids[$owner_phid] = $owner_phid; | ||||
| } else { | } | ||||
| $owner = phutil_tag('em', array(), pht('None')); | foreach ($task->getProjectPHIDs() as $phid) { | ||||
| $phids[$phid] = $phid; | |||||
| } | |||||
| $handles = $viewer->loadHandles($phids); | |||||
| $handles = iterator_to_array($handles); | |||||
| $card = id(new ProjectBoardTaskCard()) | |||||
| ->setViewer($viewer) | |||||
| ->setTask($task) | |||||
| ->setCanEdit(false); | |||||
| $owner_phid = $task->getOwnerPHID(); | |||||
| if ($owner_phid) { | |||||
| $owner_handle = $handles[$owner_phid]; | |||||
| $card->setOwner($owner_handle); | |||||
| } | } | ||||
| $hovercard->addField(pht('Assigned To'), $owner); | |||||
| $hovercard->addField( | $project_phids = $task->getProjectPHIDs(); | ||||
| pht('Priority'), | $project_handles = array_select_keys($handles, $project_phids); | ||||
| ManiphestTaskPriority::getTaskPriorityName($task->getPriority())); | if ($project_handles) { | ||||
| $card->setProjectHandles($project_handles); | |||||
| } | |||||
| $item = $card->getItem(); | |||||
| $card = id(new PHUIObjectItemListView()) | |||||
| ->setFlush(true) | |||||
| ->setItemClass('phui-workcard') | |||||
| ->addClass('hovercard-task-view') | |||||
| ->addItem($item); | |||||
| $hovercard->appendChild($card); | |||||
chad: I can't seem to force a render here, any suggestions? | |||||
| $hovercard->addTag(ManiphestView::renderTagForTask($task)); | |||||
| } | } | ||||
| } | } | ||||
I can't seem to force a render here, any suggestions?