diff --git a/src/applications/calendar/phid/PhabricatorCalendarEventPHIDType.php b/src/applications/calendar/phid/PhabricatorCalendarEventPHIDType.php index d37be2ef32..90beff28f9 100644 --- a/src/applications/calendar/phid/PhabricatorCalendarEventPHIDType.php +++ b/src/applications/calendar/phid/PhabricatorCalendarEventPHIDType.php @@ -1,78 +1,78 @@ withPHIDs($phids); } public function loadHandles( PhabricatorHandleQuery $query, array $handles, array $objects) { foreach ($handles as $phid => $handle) { $event = $objects[$phid]; - $id = $event->getID(); + $monogram = $event->getMonogram(); $name = $event->getName(); - $is_cancelled = $event->getIsCancelled(); + $uri = $event->getURI(); $handle ->setName($name) - ->setFullName(pht('E%d: %s', $id, $name)) - ->setURI('/E'.$id); + ->setFullName(pht('%s: %s', $monogram, $name)) + ->setURI($uri); - if ($is_cancelled) { + if ($event->isCancelledEvent()) { $handle->setStatus(PhabricatorObjectHandle::STATUS_CLOSED); } } } public function canLoadNamedObject($name) { return preg_match('/^E[1-9]\d*$/i', $name); } public function loadNamedObjects( PhabricatorObjectQuery $query, array $names) { $id_map = array(); foreach ($names as $name) { $id = (int)substr($name, 1); $id_map[$id][] = $name; } $objects = id(new PhabricatorCalendarEventQuery()) ->setViewer($query->getViewer()) ->withIDs(array_keys($id_map)) ->execute(); $results = array(); foreach ($objects as $id => $object) { foreach (idx($id_map, $id, array()) as $name) { $results[$name] = $object; } } return $results; } }