Page MenuHomePhabricator

D12720.id30561.diff
No OneTemporary

D12720.id30561.diff

diff --git a/src/applications/calendar/controller/PhabricatorCalendarEventJoinController.php b/src/applications/calendar/controller/PhabricatorCalendarEventJoinController.php
--- a/src/applications/calendar/controller/PhabricatorCalendarEventJoinController.php
+++ b/src/applications/calendar/controller/PhabricatorCalendarEventJoinController.php
@@ -35,12 +35,24 @@
if ($request->isFormPost()) {
$new_status = null;
- if ($is_attending) {
- $new_status = array($viewer->getPHID() => $declined_status);
- } else {
- $new_status = array($viewer->getPHID() => $attending_status);
+ switch ($action) {
+ case self::ACTION_ACCEPT:
+ $new_status = array($viewer->getPHID() => $attending_status);
+ break;
+ case self::ACTION_JOIN:
+ if ($is_attending) {
+ $new_status = array($viewer->getPHID() => $declined_status);
+ } else {
+ $new_status = array($viewer->getPHID() => $attending_status);
+ }
+ break;
+ case self::ACTION_DECLINE:
+ $new_status = array($viewer->getPHID() => $declined_status);
+ break;
}
+
+
$xaction = id(new PhabricatorCalendarEventTransaction())
->setTransactionType(
PhabricatorCalendarEventTransaction::TYPE_INVITE)
diff --git a/src/applications/calendar/controller/PhabricatorCalendarEventViewController.php b/src/applications/calendar/controller/PhabricatorCalendarEventViewController.php
--- a/src/applications/calendar/controller/PhabricatorCalendarEventViewController.php
+++ b/src/applications/calendar/controller/PhabricatorCalendarEventViewController.php
@@ -200,11 +200,28 @@
if ($invitees) {
$invitee_list = new PHUIStatusListView();
+
+ $icon_invited = PHUIStatusItemView::ICON_OPEN;
+ $icon_attending = PHUIStatusItemView::ICON_ACCEPT;
+ $icon_declined = PHUIStatusItemView::ICON_REJECT;
+
+ $status_invited = PhabricatorCalendarEventInvitee::STATUS_INVITED;
+ $status_attending = PhabricatorCalendarEventInvitee::STATUS_ATTENDING;
+ $status_declined = PhabricatorCalendarEventInvitee::STATUS_DECLINED;
+
+ $icon_map = array(
+ $status_invited => $icon_invited,
+ $status_attending => $icon_attending.' green',
+ $status_declined => $icon_declined.' red',
+ );
+
foreach ($invitees as $invitee) {
$item = new PHUIStatusItemView();
$invitee_phid = $invitee->getInviteePHID();
$target = $viewer->renderHandle($invitee_phid);
- $item->setNote($invitee->getStatus())
+ $icon = $icon_map[$invitee->getStatus()];
+
+ $item->setIcon($icon)
->setTarget($target);
$invitee_list->addItem($item);
}

File Metadata

Mime Type
text/plain
Expires
Sep 29 2025, 11:52 PM (15 w, 2 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
9709026
Default Alt Text
D12720.id30561.diff (2 KB)

Event Timeline