Version 5.0.0 beta 5
This commit is contained in:
1 parent
2f24f9de48
commit
57d9db6ce2
218 files changed
+5331
-7416
No files matched your search
@@ -155,14 +155,6 @@ class event extends Controller
|
||||
/* Online User Location */
|
||||
Session::i()->setLocation( $this->event->url(), $this->event->onlineListPermissions(), 'loc_calendar_viewing_event', array( $this->event->title => FALSE ) );
|
||||
|
||||
/* Reminder */
|
||||
$reminder = NULL;
|
||||
try
|
||||
{
|
||||
$reminder = Db::i()->select( '*', 'calendar_event_reminders', array( 'reminder_event_id=? and reminder_member_id=?', $this->event->id, (int) Member::loggedIn()->member_id ) )->first();
|
||||
}
|
||||
catch ( UnderflowException $e ) {}
|
||||
|
||||
/* Address */
|
||||
$address = NULL;
|
||||
$location = NULL;
|
||||
@@ -186,13 +178,28 @@ class event extends Controller
|
||||
'@type' => "Event",
|
||||
'url' => (string) $this->event->url(),
|
||||
'name' => $this->event->mapped('title'),
|
||||
'description' => $this->event->truncated( TRUE, NULL ),
|
||||
'description' => $this->event->truncated( TRUE, NULL ) ?? "",
|
||||
'eventStatus' => "EventScheduled",
|
||||
'organizer' => array(
|
||||
'@type' => 'Person',
|
||||
'name' => $this->event->author()->name,
|
||||
'image' => $this->event->author()->get_photo( TRUE, TRUE )
|
||||
),
|
||||
'startDate' => $this->event->nextOccurrence( Date::getDate(), 'startDate' ) ?
|
||||
$this->event->nextOccurrence( Date::getDate(), 'startDate' )->format( $format ) :
|
||||
$this->event->lastOccurrence( 'startDate' )->format( $format )
|
||||
);
|
||||
|
||||
if( $this->event->author()->member_id )
|
||||
{
|
||||
Output::i()->jsonLd['event']['organizer']['url'] = (string) $this->event->author()->url();
|
||||
}
|
||||
|
||||
if( $image = $this->event->coverPhotoFile() )
|
||||
{
|
||||
Output::i()->jsonLd['event']['image'] = (string) $image->url;
|
||||
}
|
||||
|
||||
if( $this->event->_end_date )
|
||||
{
|
||||
Output::i()->jsonLd['event']['endDate'] = $this->event->nextOccurrence( $this->event->nextOccurrence( Date::getDate(), 'startDate' ) ?: Date::getDate(), 'endDate' ) ?
|
||||
@@ -210,13 +217,10 @@ class event extends Controller
|
||||
);
|
||||
}
|
||||
|
||||
if( $this->event->coverPhoto()->file )
|
||||
{
|
||||
Output::i()->jsonLd['event']['image'] = (string) $this->event->coverPhoto()->file->url;
|
||||
}
|
||||
|
||||
if( $this->event->rsvp )
|
||||
{
|
||||
Output::i()->jsonLd['event']['eventAttendanceMode'] = 'https://schema.org/MixedEventAttendanceMode';
|
||||
|
||||
if( count( $attendees[1] ) )
|
||||
{
|
||||
Output::i()->jsonLd['event']['attendee'] = array();
|
||||
@@ -249,6 +253,8 @@ class event extends Controller
|
||||
{
|
||||
Output::i()->jsonLd['event']['location']['name'] = $addressName;
|
||||
}
|
||||
|
||||
Output::i()->jsonLd['event']['eventAttendanceMode'] = 'https://schema.org/OfflineEventAttendanceMode';
|
||||
}
|
||||
/* If not, default to events URL */
|
||||
else
|
||||
@@ -268,10 +274,12 @@ class event extends Controller
|
||||
'@type' => 'VirtualLocation',
|
||||
'url' => $this->event->url
|
||||
);
|
||||
|
||||
Output::i()->jsonLd['event']['eventAttendanceMode'] = 'https://schema.org/OnlineEventAttendanceMode';
|
||||
}
|
||||
|
||||
/* Display */
|
||||
Output::i()->output = Theme::i()->getTemplate( 'view' )->view( $this->event, $commentsAndReviews, $attendees, $address, $reminder );
|
||||
Output::i()->output = Theme::i()->getTemplate( 'view' )->view( $this->event, $commentsAndReviews, $attendees, $address, $this->event->getReminder() );
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -484,12 +492,7 @@ class event extends Controller
|
||||
}
|
||||
|
||||
/* Existing reminder? */
|
||||
$existing = NULL;
|
||||
try
|
||||
{
|
||||
$existing = Db::i()->select( '*', 'calendar_event_reminders', array( 'reminder_event_id=? and reminder_member_id=?', $this->event->id, (int) Member::loggedIn()->member_id ) )->first();
|
||||
}
|
||||
catch ( UnderflowException $e ) {}
|
||||
$existing = $this->event->getReminder();
|
||||
|
||||
/* Build the form */
|
||||
|
||||
@@ -520,9 +523,14 @@ class event extends Controller
|
||||
|
||||
Db::i()->update( 'core_tasks', array( 'enabled' => 1 ), array( '`key`=?', 'eventreminders' ) );
|
||||
|
||||
$message = 'event_reminder_added';
|
||||
|
||||
Output::i()->redirect( $this->event->url(), $message );
|
||||
if( Request::i()->isAjax() )
|
||||
{
|
||||
Output::i()->sendOutput( Theme::i()->getTemplate( 'view', 'calendar', 'front' )->reminderButton( $this->event, $this->event->getReminder() ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
Output::i()->redirect( $this->event->url(), 'event_reminder_added' );
|
||||
}
|
||||
}
|
||||
|
||||
/* Display */
|
||||
@@ -573,16 +581,6 @@ class event extends Controller
|
||||
*/
|
||||
protected function reminderButton() : void
|
||||
{
|
||||
/* Existing reminder? */
|
||||
$existing = NULL;
|
||||
try
|
||||
{
|
||||
$existing = Db::i()->select( '*', 'calendar_event_reminders', array( 'reminder_event_id=? and reminder_member_id=?', $this->event->id, (int)Member::loggedIn()->member_id ) )->first();
|
||||
}
|
||||
catch ( UnderflowException $e )
|
||||
{
|
||||
}
|
||||
|
||||
Output::i()->sendOutput( Theme::i()->getTemplate( 'view', 'calendar', 'front' )->reminderButton( $this->event, $existing ) );
|
||||
Output::i()->sendOutput( Theme::i()->getTemplate( 'view', 'calendar', 'front' )->reminderButton( $this->event, $this->event->getReminder() ) );
|
||||
}
|
||||
}
|
||||
@@ -602,7 +602,15 @@ class view extends Controller
|
||||
}
|
||||
|
||||
/* Sort */
|
||||
$startDate = Date::getDate();
|
||||
if( !isset( Request::i()->get ) or Request::i()->get == 'byMonth' )
|
||||
{
|
||||
$startDate = Date::getDate( Request::i()->y ?: null, Request::i()->m ?: null, 1, 12 );
|
||||
}
|
||||
else
|
||||
{
|
||||
$startDate = Date::getDate();
|
||||
}
|
||||
|
||||
@usort( $events, function( $a, $b ) use ( $startDate )
|
||||
{
|
||||
if( $a->nextOccurrence( $startDate, 'startDate' ) === NULL )
|
||||
@@ -645,7 +653,7 @@ class view extends Controller
|
||||
{
|
||||
foreach( $events as $idx => $event )
|
||||
{
|
||||
$eventHtml .= Theme::i()->getTemplate( 'events', 'calendar' )->event( $event );
|
||||
$eventHtml .= Theme::i()->getTemplate( 'events', 'calendar' )->event( $event, 'normal', $startDate );
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Reference in new issue
Block a user