show RSVPs for an event
This commit is contained in:
parent
1e4e9a8456
commit
728869e311
@ -321,6 +321,8 @@ class EventPlugin extends MicroappPlugin
|
|||||||
|
|
||||||
$out->elementEnd('h3');
|
$out->elementEnd('h3');
|
||||||
|
|
||||||
|
// FIXME: better dates
|
||||||
|
|
||||||
$out->elementStart('div', 'event-times');
|
$out->elementStart('div', 'event-times');
|
||||||
$out->element('abbr', array('class' => 'dtstart',
|
$out->element('abbr', array('class' => 'dtstart',
|
||||||
'title' => common_date_iso8601($event->start_time)),
|
'title' => common_date_iso8601($event->start_time)),
|
||||||
@ -339,6 +341,14 @@ class EventPlugin extends MicroappPlugin
|
|||||||
$out->element('div', 'location', $event->location);
|
$out->element('div', 'location', $event->location);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$rsvps = $event->getRSVPs();
|
||||||
|
|
||||||
|
$out->element('div', 'event-rsvps',
|
||||||
|
sprintf(_('Yes: %d No: %d Maybe: %d'),
|
||||||
|
count($rsvps[RSVP::POSITIVE]),
|
||||||
|
count($rsvps[RSVP::NEGATIVE]),
|
||||||
|
count($rsvps[RSVP::POSSIBLE])));
|
||||||
|
|
||||||
$out->elementStart('div', array('class' => 'event-info entry-content'));
|
$out->elementStart('div', array('class' => 'event-info entry-content'));
|
||||||
|
|
||||||
$avatar = $profile->getAvatar(AVATAR_MINI_SIZE);
|
$avatar = $profile->getAvatar(AVATAR_MINI_SIZE);
|
||||||
|
@ -205,4 +205,9 @@ class Happening extends Managed_DataObject
|
|||||||
{
|
{
|
||||||
return Happening::staticGet('uri', $notice->uri);
|
return Happening::staticGet('uri', $notice->uri);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getRSVPs()
|
||||||
|
{
|
||||||
|
return RSVP::forEvent($this);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -196,4 +196,22 @@ class RSVP extends Managed_DataObject
|
|||||||
{
|
{
|
||||||
return RSVP::staticGet('uri', $notice->uri);
|
return RSVP::staticGet('uri', $notice->uri);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static function forEvent($event)
|
||||||
|
{
|
||||||
|
$rsvps = array(RSVP::POSITIVE => array(), RSVP::NEGATIVE => array(), RSVP::POSSIBLE => array());
|
||||||
|
|
||||||
|
$rsvp = new RSVP();
|
||||||
|
|
||||||
|
$rsvp->event_id = $event->id;
|
||||||
|
|
||||||
|
if ($rsvp->find()) {
|
||||||
|
while ($rsvp->fetch()) {
|
||||||
|
$verb = $this->verbFor($rsvp->code);
|
||||||
|
$rsvps[$verb][] = clone($rsvp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $rsvps;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user