2022-11-28 19:46:12 +00:00
@ foreach ( $checkinsList as $checkin )
< li >
2023-03-02 22:10:55 +00:00
@ php
$hasEmbed = null ;
$embedMissing = null ;
if ( preg_match ( " / \ [ \ [([^ \ ]]+) \ ] \ ]/ " , $checkin -> note , $filepath )) {
if ( preg_match ( " / \ .webm/ " , $filepath [ 1 ])) {
$hasEmbed = 'video' ;
if ( file_exists ( public_path () . " /videos/ " . $filepath [ 1 ])) {
$embed = '<video class="popup__video" controls>' ;
$embed .= '<source src="' . url ( " /videos/ " . $filepath [ 1 ]) . '" type="video/webm">' ;
2023-03-03 03:50:06 +00:00
$embed .= '<p>Your client doesn\'t support HTML video. Here is a <a href="' . url ( " /videos/ " . $filepath [ 1 ]) . '">link to the video</a> instead.</p>' ;
2023-03-02 22:10:55 +00:00
$embed .= '</video>' ;
2023-03-03 04:19:13 +00:00
if ( $email ) {
$embed .= '<p><i>If your email client doesn\'t support video embeds, here is a <a href="' . url ( " /videos/ " . $filepath [ 1 ]) . '">link to the file</a> instead.</i></p>' ;
}
2023-03-02 22:10:55 +00:00
} else {
$embed = '<p>[The video \'' . $filepath [ 1 ] . '\' has not yet been uploaded, try again later.]</p>' ;
$embedMissing = true ;
}
} elseif ( preg_match ( " / \ .ogg/ " , $filepath [ 1 ])) {
$hasEmbed = 'audio' ;
if ( file_exists ( public_path () . " /audio/ " . $filepath [ 1 ])) {
$embed = '<audio class="popup__audio" controls>' ;
$embed .= '<source src="' . url ( " /audio/ " . $filepath [ 1 ]) . '" type="audio/ogg">' ;
$embed .= '<p>Download <a href="' . url ( " /audio/ " . $filepath [ 1 ]) . '">OGG</a> audio.</p>' ;
$embed .= '</audio>' ;
2023-03-03 04:19:13 +00:00
if ( $email ) {
$embed .= '<p><i>If your email client doesn\' support audio embeds, here is a <a href="' . url ( " /audio/ " . $filepath [ 1 ]) . '">link to the file</a> instead.</i></p>' ;
}
2023-03-02 22:10:55 +00:00
} else {
$embed = '<p>[The recording \'' . $filepath [ 1 ] . '\' has not yet been uploaded, try again later.]</p>' ;
$embedMissing = true ;
}
}
$checkin -> note = preg_replace ( " / \ [ \ [[^ \ ]]+ \ ] \ ]/ " , $embed , $checkin -> note );
}
@ endphp
2022-11-28 19:46:12 +00:00
< details class = " checkin " id = " { { $checkin->id }} " ontoggle = " toggleCheckin(this.open, this.id) " >
< summary class = " checkin__summary " >
2023-03-02 22:10:55 +00:00
< h2 class = " checkin__title " >
{ !! $checkin -> title ? ? " <i>Untitled</i> " !! }
2023-03-03 00:42:38 +00:00
@ if ( $checkin -> image_url )
< span class = " checkin-icon " > 🖼️ </ span >
@ endif
2023-03-02 22:10:55 +00:00
@ if ( $hasEmbed )
@ if ( $hasEmbed === 'video' )
< span class = " checkin-icon @if( $embedMissing ) checkin-icon--missing @endif " >& #128249;</span>
@ endif
@ if ( $hasEmbed === 'audio' )
< span class = " checkin-icon @if( $embedMissing ) checkin-icon--missing @endif " >& #128264;</span>
@ endif
@ endif
</ h2 >
2022-11-28 19:46:12 +00:00
< p class = " checkin__meta " > { !! render_date_difference ( $checkin -> date ) !! } </ p >
</ summary >
@ if ( $checkin -> note )
2022-12-14 22:05:35 +00:00
@ if ( $checkin -> id === 3930 )
@ include ( 'partials.abolition-checkin' )
2022-11-28 20:26:16 +00:00
@ else
2022-12-14 22:05:35 +00:00
{ !! $checkin -> note !! }
2022-11-28 20:26:16 +00:00
@ endif
2022-11-28 19:46:12 +00:00
@ endif
2022-12-14 22:05:35 +00:00
2022-11-28 19:46:12 +00:00
@ if ( $checkin -> image_url )
< img class = " popup__image " loading = " lazy " src = " { { $checkin->image_url }} " >
@ endif
</ details >
</ li >
@ endforeach