mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-10 00:42:41 +01:00
Hover hint on calendar list items should appear on the most convenient side of the item
Summary: Hover hint on calendar list items should be to the right in day view, left in profile view, on top in month view Test Plan: Open profile view, calendar items should have a left hover. Open day view, calendar items should have a right hover. Open month view, calendar items should have top hover. Reviewers: epriestley, #blessed_reviewers Reviewed By: epriestley, #blessed_reviewers Subscribers: Korvin Maniphest Tasks: T9606 Differential Revision: https://secure.phabricator.com/D15964
This commit is contained in:
parent
de645301b5
commit
359e8d4aa5
4 changed files with 22 additions and 4 deletions
|
@ -223,6 +223,7 @@ final class PhabricatorPeopleProfileViewController
|
|||
$events = msort($events, 'getEpochStart');
|
||||
$day_view = id(new PHUICalendarWeekView())
|
||||
->setViewer($viewer)
|
||||
->setView('week')
|
||||
->setEvents($events)
|
||||
->setWeekLength(3)
|
||||
->render();
|
||||
|
|
|
@ -85,7 +85,13 @@ final class PHUICalendarListView extends AphrontTagView {
|
|||
}
|
||||
|
||||
$tip = $this->getEventTooltip($event);
|
||||
$tip_align = ($this->getView() == 'day') ? 'E' : 'N';
|
||||
if ($this->getView() == 'day') {
|
||||
$tip_align = 'E';
|
||||
} else if ($this->getView() == 'month') {
|
||||
$tip_align = 'N';
|
||||
} else {
|
||||
$tip_align = 'W';
|
||||
}
|
||||
$content = javelin_tag(
|
||||
'a',
|
||||
array(
|
||||
|
|
|
@ -90,8 +90,9 @@ final class PHUICalendarMonthView extends AphrontView {
|
|||
$max_daily = 15;
|
||||
$counter = 0;
|
||||
|
||||
$list = new PHUICalendarListView();
|
||||
$list->setViewer($viewer);
|
||||
$list = id(new PHUICalendarListView())
|
||||
->setViewer($viewer)
|
||||
->setView('month');
|
||||
foreach ($all_day_events as $item) {
|
||||
if ($counter <= $max_daily) {
|
||||
$list->addEvent($item);
|
||||
|
|
|
@ -4,6 +4,7 @@ final class PHUICalendarWeekView extends AphrontView {
|
|||
private $events;
|
||||
private $dateTime;
|
||||
private $weekLength = 7;
|
||||
private $view = 'day';
|
||||
|
||||
public function setEvents($events) {
|
||||
$this->events = $events;
|
||||
|
@ -27,6 +28,15 @@ final class PHUICalendarWeekView extends AphrontView {
|
|||
return $this;
|
||||
}
|
||||
|
||||
public function setView($view) {
|
||||
$this->view = $view;
|
||||
return $this;
|
||||
}
|
||||
|
||||
private function getView() {
|
||||
return $this->view;
|
||||
}
|
||||
|
||||
public function render() {
|
||||
$this->events = msort($this->events, 'getEpochStart');
|
||||
$week_of_boxes = $this->getWeekOfBoxes();
|
||||
|
@ -64,7 +74,7 @@ final class PHUICalendarWeekView extends AphrontView {
|
|||
|
||||
$list = id(new PHUICalendarListView())
|
||||
->setUser($this->getViewer())
|
||||
->setView('day');
|
||||
->setView($this->getView());
|
||||
|
||||
if (count($events) == 0) {
|
||||
$list->showBlankState(true);
|
||||
|
|
Loading…
Reference in a new issue