Version 5.0.0 beta 11.1
This commit is contained in:
1 parent
264eeb97e0
commit
90e8c7e903
466 files changed
+7796
-2394
No files matched your search
@@ -6,10 +6,9 @@ class class_calendar_front_browse extends \IPS\Theme\Template
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<div class=''>
|
||||
<div class='ipsPager cCalendarNav i-padding-block_2 i-padding-inline_3 i-background_2 i-border-start-start-radius_box i-border-start-end-radius_box'>
|
||||
<div class='ipsPager_prev'>
|
||||
<a href="
|
||||
<div class='ipsPager cCalendarNav i-padding-block_2 i-padding-inline_3 i-background_2 i-border-start-start-radius_box i-border-start-end-radius_box'>
|
||||
<div class='ipsPager_prev'>
|
||||
<a href="
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $thisCalendar ):
|
||||
@@ -40,29 +39,29 @@ IPSCONTENT;
|
||||
$sprintf = array($yesterday->monthName, $yesterday->mday, $yesterday->year); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'cal_month_day', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' rel='prev nofollow' data-action='changeView'>
|
||||
<span class='ipsPager_type'>
|
||||
<span class='ipsPager_type'>
|
||||
IPSCONTENT;
|
||||
|
||||
$sprintf = array($yesterday->monthName, $yesterday->mday); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'cal_month_day_noyear', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
<span class='ipsPager_title'>
|
||||
<span class='ipsPager_title'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $yesterday->year, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class='ipsPager_center cCalendarNav' data-role='calendarNav'>
|
||||
<h1 class='ipsTitle ipsTitle--h3'>
|
||||
</a>
|
||||
</div>
|
||||
<div class='ipsPager_center cCalendarNav' data-role='calendarNav'>
|
||||
<h1 class='ipsTitle ipsTitle--h3'>
|
||||
IPSCONTENT;
|
||||
|
||||
$sprintf = array($date->monthName, $date->mday, $date->year); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'cal_month_day', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h1>
|
||||
</div>
|
||||
<div class='ipsPager_next'>
|
||||
<a href="
|
||||
</div>
|
||||
<div class='ipsPager_next'>
|
||||
<a href="
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $thisCalendar ):
|
||||
@@ -93,106 +92,87 @@ IPSCONTENT;
|
||||
$sprintf = array($tomorrow->monthName, $tomorrow->mday, $tomorrow->year); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'cal_month_day', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' rel='next nofollow' data-action='changeView'>
|
||||
<span class='ipsPager_type'>
|
||||
<span class='ipsPager_type'>
|
||||
IPSCONTENT;
|
||||
|
||||
$sprintf = array($tomorrow->monthName, $tomorrow->mday); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'cal_month_day_noyear', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
<span class='ipsPager_title'>
|
||||
<span class='ipsPager_title'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $tomorrow->year, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class=''>
|
||||
|
||||
<div class=''>
|
||||
<h2 class='ipsTitle ipsTitle--h4 ipsTitle--padding'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'events_happening_today', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $events['count'] > 0 ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<ol class='cCalendarDay ipsData'>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( isset( $events['allDay'] ) && \count( $events['allDay'] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li class='ipsData__item cCalendarDay_allDay'>
|
||||
<div class='i-basis_140 cCalendarDay_hour'>
|
||||
<h2 class='i-font-weight_600 i-color_hard i-font-size_4'>
|
||||
<h2 class='ipsTitle ipsTitle--h4 ipsTitle--padding i-background_2'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'day_view_all_day', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
</div>
|
||||
<div class='ipsData__main'>
|
||||
<ul class='ipsGrid ipsGrid--event-daily i-basis_300'>
|
||||
|
||||
<i-data>
|
||||
<ol class='ipsData ipsData--featured ipsData--calendarAllDay'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $events['allDay'] as $event ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Theme::i()->getTemplate( "view", "calendar" )->eventBlock( $event, $date, true );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</ol>
|
||||
</i-data>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $events as $hour => $hourEvents ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !empty( $hourEvents ) && $hour !== 'allDay' && $hour !== 'count' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li class='ipsData__item'>
|
||||
<div class='i-basis_140 cCalendarDay_hour'>
|
||||
<h2 class='i-font-weight_600 i-color_hard i-font-size_4'>
|
||||
|
||||
<h2 class='ipsTitle ipsTitle--h4 ipsTitle--padding i-background_2'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( \IPS\calendar\Date::usesAmPm() ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( \IPS\calendar\Date::getTwelveHour( $hour ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
@@ -203,54 +183,36 @@ IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( \IPS\calendar\Date::getAmPm( $hour ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $hour, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
<span>:00</span>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</h2>
|
||||
</div>
|
||||
<div class='ipsData__main'>
|
||||
<ul class='ipsGrid ipsGrid--event-daily i-basis_300'>
|
||||
|
||||
</h2>
|
||||
<i-data>
|
||||
<ol class='ipsData ipsData--featured ipsData--calendarHourly'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $hourEvents as $idx => $event ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Theme::i()->getTemplate( "view", "calendar" )->eventBlock( $event, $date, true );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= \IPS\Theme::i()->getTemplate( "view", "calendar" )->eventBlock( $event, $date, true );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
@@ -260,27 +222,37 @@ endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ol>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsEmptyMessage'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'no_events_today', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</div>
|
||||
|
||||
</i-data>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsEmptyMessage'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'no_events_today', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
return $return;
|
||||
|
||||
@@ -1271,62 +1271,28 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='cFollowedContent_anon'>
|
||||
<span class='ipsBadge ipsBadge--icon' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<ul class='ipsData__followedInfo'>
|
||||
<li class='i-color_hard i-font-weight_500' title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_when', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followDate'><i class='fa-regular fa-clock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html();
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
<li class='i-color_soft' title='
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_how', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followFrequency'>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $row->_followData['follow_notify_freq'] == 'none' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-regular fa-bell-slash'></i>
|
||||
|
||||
<i class='fa-regular fa-bell-slash'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
@@ -1337,8 +1303,25 @@ IPSCONTENT;
|
||||
$val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -790,16 +790,34 @@ IPSCONTENT;
|
||||
$coverPhoto = $event->coverPhoto();
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='cCalendarBlock i-background_1 ipsInnerBox
|
||||
<li class="ipsData__item
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->ui( 'css' ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->ui('css'), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" data-eventID='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->id, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
'
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->ui( 'dataAttributes' ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
>
|
||||
<div class='ipsCoverPhoto' data-controller='core.global.core.coverPhoto' data-coverOffset='
|
||||
<a href="
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->url( 'getPrefComment' ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" class="ipsLinkPanel" aria-hidden="true" tabindex="-1"><span>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->title, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span></a>
|
||||
<div class="ipsData__image">
|
||||
<a href="
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->url( 'getPrefComment' ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" class='ipsCoverPhoto' data-controller='core.global.core.coverPhoto' data-coverOffset='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $coverPhoto->offset, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -807,15 +825,15 @@ $return .= <<<IPSCONTENT
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $coverPhoto->offset, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
|
||||
' aria-hidden="true" tabindex="-1">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $coverPhoto->file ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsCoverPhoto__container'>
|
||||
<img src='
|
||||
<div class='ipsCoverPhoto__container'>
|
||||
<img src='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $coverPhoto->file->url, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -824,15 +842,18 @@ IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->title, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
' loading='lazy'>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsColumns'>
|
||||
<div class='ipsColumns__secondary i-basis_50'>
|
||||
</a>
|
||||
</div>
|
||||
<div class="ipsData__content">
|
||||
<div class="ipsData__main">
|
||||
<div class="ipsPhotoPanel i-margin-bottom_2">
|
||||
<div class='ipsUserPhoto ipsUserPhoto--mini'>
|
||||
<img src='
|
||||
IPSCONTENT;
|
||||
@@ -840,86 +861,51 @@ $return .= \IPS\Theme\Template::htmlspecialchars( $event->author()->photo, ENT_Q
|
||||
$return .= <<<IPSCONTENT
|
||||
' alt='' loading='lazy'>
|
||||
</div>
|
||||
</div>
|
||||
<div class='ipsColumns__primary'>
|
||||
<h2 class='ipsTitle ipsTitle--h3 ipsPageHead_barText ipsPageHead_barText_small'><a href='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->url( "getPrefComment" ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
' title='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->title, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= htmlspecialchars( mb_substr( html_entity_decode( $event->title ), '0', "18" ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ) . ( ( mb_strlen( html_entity_decode( $event->title ) ) > "18" ) ? '…' : '' );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->hidden() === 1 ):
|
||||
$return .= <<<IPSCONTENT
|
||||
<span class="ipsBadge ipsBadge--icon ipsBadge--warning" data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'pending_approval', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-triangle-exclamation'></i></span>
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
</a></h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<div class='i-padding_3'>
|
||||
<h3>
|
||||
|
||||
<div class="ipsPhotoPanel__text">
|
||||
<p class="i-color_primary i-font-weight_500 i-font-size_-2 i-text-transform_uppercase i-margin-bottom_1">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$startDate = $event->nextOccurrence( $date, 'startDate' );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $revertToFirst AND $startDate AND $startDate->mon > $date->mon ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$startDate = $event->nextOccurrence( \IPS\calendar\Date::getDate( $date->year, $date->mon, 1 ), 'startDate' );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $startDate ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$nextEndDate = $event->nextOccurrence( $startDate ?: $date, 'endDate' );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$sameDay = ( $nextEndDate AND $startDate->calendarDate() == $nextEndDate->calendarDate() );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $startDate->calendarDate(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -938,37 +924,37 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->_end_date AND $event->nextOccurrence( $startDate ?: $date, 'endDate' ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-circle-arrow-right i-font-size_2 i-color_soft'></i>
|
||||
|
||||
<span class="i-opacity_4"><i class="fa-solid fa-arrow-right-long" style="margin-inline:.5em;"></i></span>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$sameDay ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->nextOccurrence( $startDate ?: $date, 'endDate' )->calendarDate(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$event->all_day ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$sameDay ):
|
||||
@@ -979,30 +965,30 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->nextOccurrence( $startDate ?: $date, 'endDate' )->localeTime( FALSE ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->lastOccurrence( 'startDate' )->calendarDate(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -1021,13 +1007,13 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->_end_date AND $event->lastOccurrence( 'endDate' ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-circle-arrow-right i-font-size_2 i-color_soft'></i>
|
||||
<span class="i-opacity_4"><i class="fa-solid fa-arrow-right-long" style="margin-inline:.5em;"></i></span>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->lastOccurrence( 'endDate' )->calendarDate(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -1046,78 +1032,116 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</h3>
|
||||
|
||||
</p>
|
||||
<h2 class='ipsData__title'>
|
||||
<div class="ipsBadges">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->hidden() === 1 ):
|
||||
$return .= <<<IPSCONTENT
|
||||
<span class="ipsBadge ipsBadge--icon ipsBadge--warning" data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'pending_approval', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-triangle-exclamation'></i></span>
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
<a href='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->url( "getPrefComment" ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
' title='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->title, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->title, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="ipsColumns">
|
||||
<div class="ipsColumns__primary">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->recurring ):
|
||||
$return .= <<<IPSCONTENT
|
||||
<p class='i-color_soft'>
|
||||
<p class='i-color_soft i-margin-bottom_2'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->_recurring_text, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</p><br>
|
||||
</p>
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsRichText
|
||||
<div class='ipsRichText
|
||||
IPSCONTENT;
|
||||
|
||||
if ( ( \IPS\Widget\Request::i()->isAjax() or $truncate ) && $event->content ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsTruncate_5
|
||||
ipsTruncate_3
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->content ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( \IPS\Widget\Request::i()->isAjax() or $truncate ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
{$event->truncated()}
|
||||
|
||||
{$event->truncated()}
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
{$event->content}
|
||||
|
||||
{$event->content}
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<p class='ipsRichText i-margin-block_2'><a href='
|
||||
<p class='ipsRichText i-margin-block_2'><a href='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->url( "getPrefComment" ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -1127,24 +1151,76 @@ IPSCONTENT;
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'event_details', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a></p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $map !== FALSE AND $event->map( $map[0], $map[1] ) ):
|
||||
if ( $event->rsvp ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='cCalendarBlock_map'>
|
||||
{$event->map( $map[0], $map[1] )}
|
||||
</div>
|
||||
|
||||
<h4 class="i-font-weight_500 i-margin-top_3">
|
||||
IPSCONTENT;
|
||||
|
||||
$pluralize = array( $event->attendeeCount( \IPS\calendar\Event::RSVP_YES ) ); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'event_rsvp_attendees_list', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'pluralize' => $pluralize ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h4>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( \count( $event->attendees( \IPS\calendar\Event::RSVP_YES, 5 ) ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<ul class='ipsCaterpillar i-margin-top_2'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $event->attendees( \IPS\calendar\Event::RSVP_YES, 5 ) as $attendee ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Theme::i()->getTemplate( "global", "core" )->userPhoto( $attendee, 'tiny' );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<br>
|
||||
<a href='
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $map !== FALSE AND $event->map( $map[0], $map[1] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsColumns__secondary i-basis_300 cCalendarBlock_map'>
|
||||
{$event->map( $map[0], $map[1] )}
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
<div class="i-flex i-flex-wrap_wrap i-gap_3 i-align-items_center i-margin-top_3">
|
||||
<a href='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->container()->url(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -1152,12 +1228,12 @@ $return .= <<<IPSCONTENT
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->container()->id, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
i-margin-end_auto'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->container()->_title, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->container()->allow_comments ):
|
||||
@@ -1166,7 +1242,7 @@ $return .= <<<IPSCONTENT
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->url()->setQueryString( 'tab', 'comments' ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
' class="i-color_soft">
|
||||
IPSCONTENT;
|
||||
|
||||
$pluralize = array( $event->comments ); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'event_comment_count', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'pluralize' => $pluralize ) );
|
||||
@@ -1177,18 +1253,7 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->container()->allow_comments AND $event->container()->allow_reviews ):
|
||||
$return .= <<<IPSCONTENT
|
||||
·
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->container()->allow_reviews ):
|
||||
@@ -1197,7 +1262,7 @@ $return .= <<<IPSCONTENT
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $event->url()->setQueryString( 'tab', 'reviews' ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
' class="i-color_soft">
|
||||
IPSCONTENT;
|
||||
|
||||
$pluralize = array( $event->reviews ); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'event_review_count', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'pluralize' => $pluralize ) );
|
||||
@@ -1208,57 +1273,9 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $event->rsvp ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<hr class='ipsHr'>
|
||||
<h4><strong>
|
||||
IPSCONTENT;
|
||||
|
||||
$pluralize = array( $event->attendeeCount( \IPS\calendar\Event::RSVP_YES ) ); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'event_rsvp_attendees_list', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'pluralize' => $pluralize ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</strong></h4>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( \count( $event->attendees( \IPS\calendar\Event::RSVP_YES, 5 ) ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<ul class='ipsList ipsList--inline i-gap_0 i-margin-top_2'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $event->attendees( \IPS\calendar\Event::RSVP_YES, 5 ) as $attendee ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Theme::i()->getTemplate( "global", "core" )->userPhoto( $attendee, 'tiny' );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
@@ -1298,7 +1315,7 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</li>
|
||||
IPSCONTENT;
|
||||
|
||||
return $return;
|
||||
|
||||
@@ -433,16 +433,17 @@ IPSCONTENT;
|
||||
$return = '';
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsComposeArea ipsComposeArea--unavailable'>
|
||||
<div class='ipsComposeArea__photo'>
|
||||
<div class="ipsComposeAreaWrapper">
|
||||
<div class='ipsComposeArea ipsComposeArea--unavailable'>
|
||||
<div class='ipsComposeArea__photo'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Theme::i()->getTemplate( "global", "core" )->userPhoto( \IPS\Member::loggedIn(), 'fluid' );
|
||||
$return .= <<<IPSCONTENT
|
||||
</div>
|
||||
<div class='ipsComposeArea_editor'>
|
||||
<div class="ipsComposeArea_dummy">
|
||||
<span class='i-color_warning'><i class="fa-solid fa-triangle-exclamation"></i>
|
||||
<div class='ipsComposeArea_editor'>
|
||||
<div class="ipsComposeArea_dummy">
|
||||
<span class='i-color_warning'><i class="fa-solid fa-triangle-exclamation"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = "{$lang}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -463,27 +464,27 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( \count( $warnings) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $warnings as $idx => $warning ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $idx === 0 ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<br><br>
|
||||
<a href="
|
||||
<br><br>
|
||||
<a href="
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $warning->url(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -493,24 +494,25 @@ IPSCONTENT;
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'view_warning_details', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1704,7 +1706,7 @@ IPSCONTENT;
|
||||
if ( !$standalone ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='cGuestTeaser i-margin-bottom_3'>
|
||||
<div class='cGuestTeaser'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>
|
||||
IPSCONTENT;
|
||||
|
||||
|
||||
@@ -7503,7 +7503,7 @@ $return .= <<<IPSCONTENT
|
||||
<link rel="preload" as="font" type="font/woff2" href="
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/fontawesome/webfonts/fa-solid-900.woff2", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/static/fontawesome/webfonts/fa-solid-900.woff2", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
" crossorigin="anonymous">
|
||||
|
||||
@@ -23432,11 +23432,7 @@ IPSCONTENT;
|
||||
|
||||
if ( \get_class( $widget ) !== 'IPS\cms\widgets\Database' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsWidget ipsWidget--
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $area->orientation(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
ipsWidget
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
@@ -23444,7 +23440,7 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $widget->getWrapperClasses() as $class ):
|
||||
foreach ( $area->widgetClasses( $widget ) as $class ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -4749,6 +4749,21 @@ $return .= <<<IPSCONTENT
|
||||
ipsSideMenu_itemActive
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
" aria-selected="
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $currentType == $key ):
|
||||
$return .= <<<IPSCONTENT
|
||||
true
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
false
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
">
|
||||
|
||||
@@ -1618,34 +1618,13 @@ endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<span class='ipsBadge ipsBadge--icon ipsBadge--new
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsHide
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180'>
|
||||
<ul>
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_when', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followDate'><i class='fa-regular fa-clock'></i>
|
||||
' data-role='followDate' hidden><i class='fa-regular fa-clock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html();
|
||||
@@ -1670,7 +1649,7 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1683,10 +1662,25 @@ $val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180 i-text-align_center'>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1842,29 +1836,7 @@ $pluralize = array( $count ); $return .= \IPS\Member::loggedIn()->language()->ad
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<span class='ipsBadge ipsBadge--icon ipsBadge--new
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsHide
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180'>
|
||||
<ul>
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1895,7 +1867,7 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1908,10 +1880,25 @@ $val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180 i-text-align_center'>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
|
||||
@@ -561,35 +561,13 @@ endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_70'>
|
||||
<span class='ipsBadge ipsBadge--icon ipsBadge--new
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsHide
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180'>
|
||||
<ul>
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_when', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followDate'><i class='fa-regular fa-clock'></i>
|
||||
' data-role='followDate' hidden><i class='fa-regular fa-clock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html();
|
||||
@@ -614,7 +592,7 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -627,10 +605,25 @@ $val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180 i-text-align_center'>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -795,7 +788,6 @@ endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
<h4>
|
||||
<a href='
|
||||
IPSCONTENT;
|
||||
@@ -873,60 +865,39 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<span class='ipsBadge ipsBadge--icon' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<ul class='ipsData__stats'>
|
||||
<li title='
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_when', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followDate'><i class='fa-regular fa-clock'></i>
|
||||
' data-role='followDate' hidden><i class='fa-regular fa-clock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html();
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
<li title='
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_how', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followFrequency'>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $row->_followData['follow_notify_freq'] == 'none' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-regular fa-bell-slash'></i>
|
||||
|
||||
<i class='fa-regular fa-bell-slash'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
@@ -937,9 +908,25 @@ IPSCONTENT;
|
||||
$val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1860,7 +1860,7 @@ IPSCONTENT;
|
||||
if ( !empty( $tags ) OR $tagSource !== NULL ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsColumns' data-controller='core.global.editor.customtags' data-tagFieldType='codemirror' data-tagFieldID='elCodemirror_
|
||||
<div class='ipsColumns ipsCodebox__outer-wrap' data-controller='core.global.editor.customtags' data-tagFieldType='codemirror' data-tagFieldID='elCodemirror_
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $id ):
|
||||
@@ -1905,7 +1905,7 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='i-background_3 i-padding_2' data-role="editor"
|
||||
<div class='i-background_3 i-padding_2 ipsCodebox__inner-wrap' data-role="editor"
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $preview ):
|
||||
@@ -9000,7 +9000,17 @@ if ( !empty( $tags ) or !empty( $allOptions['tagSource'] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div
|
||||
class='ipsColumns'
|
||||
class='ipsColumns
|
||||
IPSCONTENT;
|
||||
|
||||
if ( @$allOptions["codeMode"] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsCodebox__outer-wrap
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
'
|
||||
data-controller='core.global.editor.customtags'
|
||||
data-tagFieldType='
|
||||
IPSCONTENT;
|
||||
@@ -9041,7 +9051,17 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
>
|
||||
<div class='ipsColumns__primary'>
|
||||
<div data-role="editor">
|
||||
<div data-role="editor"
|
||||
IPSCONTENT;
|
||||
|
||||
if ( @$allOptions["codeMode"] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
class='ipsCodebox__inner-wrap'
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
|
||||
@@ -2064,7 +2064,7 @@ $return .= <<<IPSCONTENT
|
||||
<link rel='stylesheet' href='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/fontawesome/css/all.min.css?v=6.7.1", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/static/fontawesome/css/all.min.css?v=6.7.2", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
|
||||
@@ -2757,7 +2757,7 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( str_contains( $js, "interface/iro" ) or str_contains( $js, 'interface/tiptap' ) or str_contains( $js, "interface/pagebuilder" ) or str_contains( $js, 'interface/codehighlighting' ) ):
|
||||
if ( str_contains( $js, "interface/static/iro" ) or str_contains( $js, 'interface/static/tiptap' ) or str_contains( $js, "interface/static/pagebuilder" ) or str_contains( $js, 'interface/static/codehighlighting' ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
type="module"
|
||||
IPSCONTENT;
|
||||
@@ -2768,7 +2768,7 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( str_contains( $js, "interface/iro" ) ):
|
||||
if ( str_contains( $js, "interface/static/iro" ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
data-iro-loader
|
||||
IPSCONTENT;
|
||||
@@ -2799,7 +2799,7 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( str_contains( $js, 'interface/tiptap' ) or str_contains( $js, "interface/pagebuilder" ) or str_contains( $js, 'interface/codehighlighting' ) ):
|
||||
if ( str_contains( $js, 'interface/static/tiptap' ) or str_contains( $js, "interface/static/pagebuilder" ) or str_contains( $js, 'interface/static/codehighlighting' ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
type="module"
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1697,7 +1697,7 @@ $return .= <<<IPSCONTENT
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $url, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" method="post" accept-charset='utf-8' data-ipsForm class="ipsForm ipsForm_fullWidth">
|
||||
" method="post" accept-charset='utf-8' data-ipsForm class="ipsForm ipsForm--fullWidth">
|
||||
<input type="hidden" name="mfa_auth" value="1">
|
||||
<input type="hidden" name="csrfKey" value="
|
||||
IPSCONTENT;
|
||||
@@ -1950,7 +1950,7 @@ IPSCONTENT;
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $url, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" method="post" accept-charset='utf-8' data-ipsForm class="ipsForm ipsForm_fullWidth">
|
||||
" method="post" accept-charset='utf-8' data-ipsForm class="ipsForm ipsForm--fullWidth">
|
||||
<input type="hidden" name="mfa_setup" value="1">
|
||||
<input type="hidden" name="csrfKey" value="
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1084,35 +1084,13 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
<div class='cFollowedContent_anon'>
|
||||
<span class='ipsBadge ipsBadge--icon ipsBadge--new
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsHide
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180 cFollowedContent_info'>
|
||||
<ul>
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_when', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followDate'><i class='fa-regular fa-clock'></i>
|
||||
' data-role='followDate' hidden><i class='fa-regular fa-clock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html();
|
||||
@@ -1137,7 +1115,7 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1150,10 +1128,25 @@ $val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_200 i-text-align_end cFollowedContent_manage'>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
|
||||
@@ -356,7 +356,6 @@ $return .= \IPS\Theme\Template::htmlspecialchars( $form->error, ENT_QUOTES | ENT
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
<br>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -436,9 +435,8 @@ endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<div class='ipsColumns'>
|
||||
<div class='ipsColumns__secondary i-basis_50 i-text-align_center'>
|
||||
<span class='cDownloadsSubmit_step'>
|
||||
<div class='ipsBox ipsPull i-margin-bottom_block'>
|
||||
<h3 class='ipsBox__header'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $step, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -447,11 +445,7 @@ IPSCONTENT;
|
||||
|
||||
$step++;
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</div>
|
||||
<div class='ipsColumns__primary'>
|
||||
<div class='ipsBox'>
|
||||
<h3 class='ipsBox__header'>
|
||||
.
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $category->multiple_files ):
|
||||
@@ -477,29 +471,29 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
</h3>
|
||||
<div class='i-padding_3'>
|
||||
|
||||
<div class='i-padding_3'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( isset( $form->elements['']['import_files'] ) || isset( $form->elements['']['url_files'] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<ul class='ipsList ipsList--inline i-text-align_end'>
|
||||
|
||||
<ul class='ipsButtons ipsButtons--end i-margin-bottom_2'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( isset( $form->elements['']['url_files'] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li>
|
||||
<a href='#' class='ipsButton ipsButton--soft ipsButton--small' id='elURLFiles' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elDownloadsSubmit'>
|
||||
<i class='fa-solid fa-earth-americas'></i>
|
||||
<li>
|
||||
<button type="button" class='ipsButton ipsButton--soft ipsButton--small' id='elURLFiles' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elDownloadsSubmit'>
|
||||
<i class='fa-solid fa-earth-americas'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'add_files_by_url', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
<i class='fa-solid fa-caret-down'></i>
|
||||
<span class='ipsNotification
|
||||
<span class='ipsNotification
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !\count( $form->elements['']['url_files']->value ) ):
|
||||
@@ -515,41 +509,42 @@ IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( \count( $form->elements['']['url_files']->value ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</a>
|
||||
<div id='elURLFiles_menu' class='ipsMenu ipsMenu_normal ipsHide i-padding_3'>
|
||||
<ul class='ipsFieldRow--fullWidth'>
|
||||
{$form->elements['']['url_files']}
|
||||
</ul>
|
||||
<hr class='ipsHr'>
|
||||
<a href='#' class='ipsButton ipsButton--wide ipsButton--primary' data-action='confirmUrls'>
|
||||
</button>
|
||||
<div id='elURLFiles_menu' class='ipsMenu ipsMenu_normal i-padding_0 ipsHide'>
|
||||
<ul class='ipsForm ipsForm--fullWidth'>
|
||||
{$form->elements['']['url_files']}
|
||||
<li class="ipsSubmitRow">
|
||||
<button type="button" class='ipsButton ipsButton--wide ipsButton--primary' data-action='confirmUrls'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'submit_menu_confirm', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
</button>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( isset( $form->elements['']['import_files'] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li>
|
||||
<a href='#' class='ipsButton ipsButton--soft ipsButton--small' id='elImportFiles' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elDownloadsSubmit'>
|
||||
<i class='fa-solid fa-folder'></i>
|
||||
<li>
|
||||
<button type="button" class='ipsButton ipsButton--soft ipsButton--small' id='elImportFiles' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elDownloadsSubmit'>
|
||||
<i class='fa-solid fa-folder'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'add_files_by_path', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
<i class='fa-solid fa-caret-down'></i>
|
||||
<span class='ipsNotification
|
||||
<span class='ipsNotification
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !\count( $form->elements['']['import_files']->value ) ):
|
||||
@@ -565,60 +560,59 @@ IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( \count( $form->elements['']['import_files']->value ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</a>
|
||||
<div id='elImportFiles_menu' class='ipsMenu ipsMenu_normal ipsHide i-padding_3'>
|
||||
<ul class='ipsFieldRow--fullWidth'>
|
||||
{$form->elements['']['import_files']}
|
||||
</ul>
|
||||
<hr class='ipsHr'>
|
||||
<a href='#' class='ipsButton ipsButton--wide ipsButton--primary' data-action='confirmImports'>
|
||||
</button>
|
||||
<div id='elImportFiles_menu' class='ipsMenu ipsMenu_normal i-padding_0 ipsHide'>
|
||||
<ul class='ipsForm ipsForm--fullWidth'>
|
||||
{$form->elements['']['import_files']}
|
||||
<li class="ipsSubmitRow">
|
||||
<button type="button" class='ipsButton ipsButton--wide ipsButton--primary' data-action='confirmImports'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'submit_menu_confirm', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div id='elDownloadsSubmit_progress' class='i-position_sticky-top'>
|
||||
<div class='ipsProgress ipsProgress--animated' >
|
||||
<div class='ipsProgress__progress' data-progress='0%'></div>
|
||||
</div>
|
||||
</button>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id='elDownloadsSubmit_uploader' class=''>
|
||||
{$form->elements['']['files']->html( $form )}
|
||||
|
||||
</li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div id='elDownloadsSubmit_progress' class="i-margin-bottom_2">
|
||||
<div class='ipsProgress ipsProgress--animated' >
|
||||
<div class='ipsProgress__progress' data-progress='0%'></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id='elDownloadsSubmit_uploader'>
|
||||
{$form->elements['']['files']->html( $form )}
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $category->multiple_files ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<button type='button' class='ipsButton ipsButton--soft ipsButton--small ipsHide i-margin-top_3' data-action='uploadMore'>
|
||||
<button type='button' class='ipsButton ipsButton--soft ipsButton--small ipsHide i-margin-top_3' data-action='uploadMore'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'upload_more_files', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</button>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -635,11 +629,9 @@ IPSCONTENT;
|
||||
if ( $category->bitoptions['allowss'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div id='elDownloadsSubmit_screenshots'>
|
||||
<br><br>
|
||||
<div class='ipsColumns'>
|
||||
<div class='ipsColumns__secondary i-basis_50 i-text-align_center'>
|
||||
<span class='cDownloadsSubmit_step'>
|
||||
<div id='elDownloadsSubmit_screenshots'>
|
||||
<div class='ipsBox ipsPull i-margin-bottom_block'>
|
||||
<h3 class='ipsBox__header'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $step, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -648,33 +640,29 @@ IPSCONTENT;
|
||||
|
||||
$step++;
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</div>
|
||||
<div class='ipsColumns__primary'>
|
||||
<div class='ipsBox'>
|
||||
<h3 class='ipsBox__header'>
|
||||
.
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'add_screenshots', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h3>
|
||||
<div class='i-padding-inline_3 i-padding-block_2'>
|
||||
|
||||
<div class='i-padding_3'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( isset( $form->elements['']['url_screenshots'] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<ul class='ipsList ipsList--inline i-text-align_end'>
|
||||
<li>
|
||||
<a href='#' class='ipsButton ipsButton--soft ipsButton--small' id='elURLScreenshots' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elDownloadsSubmit_screenshots'>
|
||||
<i class='fa-solid fa-earth-americas'></i>
|
||||
<ul class='ipsButtons ipsButtons--end i-margin-bottom_2'>
|
||||
<li>
|
||||
<button type="button" class='ipsButton ipsButton--soft ipsButton--small' id='elURLScreenshots' data-ipsMenu data-ipsMenu-closeOnClick='false' data-ipsMenu-appendTo='#elDownloadsSubmit_screenshots'>
|
||||
<i class='fa-solid fa-earth-americas'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'add_screenshots_by_url', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
<i class='fa-solid fa-caret-down'></i>
|
||||
<span class='ipsNotification
|
||||
<span class='ipsNotification
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !isset( $form->elements['']['url_screenshots']->value['values'] ) OR !\count( $form->elements['']['url_screenshots']->value['values'] ) ):
|
||||
@@ -690,47 +678,45 @@ IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( \count( $form->elements['']['url_screenshots']->value['values'] ?? array() ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</a>
|
||||
<div id='elURLScreenshots_menu' class='ipsMenu ipsMenu_wide ipsHide i-padding_3'>
|
||||
<ul class='ipsFieldRow--fullWidth'>
|
||||
{$form->elements['']['url_screenshots']}
|
||||
</ul>
|
||||
<hr class='ipsHr'>
|
||||
<a href='#' class='ipsButton ipsButton--wide ipsButton--primary' data-action='confirmScreenshotUrls'>
|
||||
</button>
|
||||
<div id='elURLScreenshots_menu' class='ipsMenu ipsMenu_wide ipsHide i-padding_3'>
|
||||
<ul class='ipsFieldRow--fullWidth'>
|
||||
{$form->elements['']['url_screenshots']}
|
||||
</ul>
|
||||
<hr class='ipsHr'>
|
||||
<a href='#' class='ipsButton ipsButton--wide ipsButton--primary' data-action='confirmScreenshotUrls'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'submit_menu_confirm', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( isset( $form->elements['']['screenshots'] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div id='elDownloadsSubmit_screenshots'>
|
||||
{$form->elements['']['screenshots']->html( $form )}
|
||||
</div>
|
||||
|
||||
<div id='elDownloadsSubmit_screenshots'>
|
||||
{$form->elements['']['screenshots']->html( $form )}
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -739,10 +725,8 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<div id='elDownloadsSubmit_otherinfo'>
|
||||
<br><br>
|
||||
<div class='ipsColumns'>
|
||||
<div class='ipsColumns__secondary i-basis_50 i-text-align_center'>
|
||||
<span class='cDownloadsSubmit_step'>
|
||||
<div class='ipsBox ipsPull i-margin-bottom_block'>
|
||||
<h3 class='ipsBox__header'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $step, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -751,11 +735,7 @@ IPSCONTENT;
|
||||
|
||||
$step++;
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</div>
|
||||
<div class='ipsColumns__primary'>
|
||||
<div class='ipsBox'>
|
||||
<h3 class='ipsBox__header'>
|
||||
.
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $newSubmission ):
|
||||
@@ -781,47 +761,45 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
</h3>
|
||||
<ul class='ipsForm ipsForm--vertical ipsForm--submit-file'>
|
||||
|
||||
<ul class='ipsForm ipsForm--vertical ipsForm--submit-file'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $form->elements as $collection ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $collection as $fieldName => $input ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !\in_array( $fieldName, $nonInfoFields ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
{$input}
|
||||
|
||||
{$input}
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -830,10 +808,8 @@ IPSCONTENT;
|
||||
if ( $terms ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<br><br>
|
||||
<div class='ipsColumns'>
|
||||
<div class='ipsColumns__secondary i-basis_50 i-text-align_center'>
|
||||
<span class='cDownloadsSubmit_step'>
|
||||
<div class='ipsBox ipsPull i-margin-bottom_block'>
|
||||
<h3 class='ipsBox__header'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $step, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -842,22 +818,16 @@ IPSCONTENT;
|
||||
|
||||
$step++;
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</div>
|
||||
<div class='ipsColumns__primary'>
|
||||
<div class='ipsBox'>
|
||||
<h3 class='ipsBox__header'>
|
||||
.
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'csubmissionterms_placeholder', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h3>
|
||||
<div class='i-padding_3 ipsRichText'>
|
||||
{$terms}
|
||||
</div>
|
||||
<div class='i-padding_3 ipsRichText'>
|
||||
{$terms}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -871,10 +841,8 @@ IPSCONTENT;
|
||||
elseif ( $terms ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<br>
|
||||
<div class='ipsColumns'>
|
||||
<div class='ipsColumns__secondary i-basis_50 i-text-align_center'>
|
||||
<span class='cDownloadsSubmit_step'>
|
||||
<div class='ipsBox ipsPull i-margin-bottom_block'>
|
||||
<h3 class='ipsBox__header'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $step, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -883,22 +851,16 @@ IPSCONTENT;
|
||||
|
||||
$step++;
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</div>
|
||||
<div class='ipsColumns__primary'>
|
||||
<div class='ipsBox'>
|
||||
<h3 class='ipsBox__header'>
|
||||
.
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'csubmissionterms_placeholder', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h3>
|
||||
<div class='i-padding_3 ipsRichText'>
|
||||
{$terms}
|
||||
</div>
|
||||
<div class='i-padding_3 ipsRichText'>
|
||||
{$terms}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -906,92 +868,87 @@ endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<div class='ipsColumns'>
|
||||
<div class='ipsColumns__secondary i-basis_50'></div>
|
||||
<div class='ipsColumns__primary'>
|
||||
<div class='ipsBox i-padding_3 i-text-align_center i-margin-top_3'>
|
||||
<button type='submit' class='ipsButton ipsButton--primary' data-role='submitForm'>
|
||||
|
||||
<div class='ipsBox ipsPull i-padding_2 i-text-align_center'>
|
||||
<button type='submit' class='ipsButton ipsButton--primary' data-role='submitForm'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $bulk ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'continue', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $newSubmission ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $category->multiple_files ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'save_and_submit_files', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'save_and_submit_file', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'save_and_submit_new_version', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'save_and_submit_new_version', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -2314,7 +2314,7 @@ IPSCONTENT;
|
||||
elseif ( $file->mustDownloadBeforeReview() ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<p class='i-color_soft i-font-weight_600 i-text-align_center i-background_2 i-padding_2'>
|
||||
<p class='i-color_soft i-font-weight_600 i-text-align_center i-background_2 i-padding_2 i-border-start-start-radius_box i-border-start-end-radius_box'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'no_download_review', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
|
||||
@@ -346,35 +346,13 @@ endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<span class='ipsBadge ipsBadge--icon ipsBadge--new
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsHide
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180'>
|
||||
<ul>
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_when', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followDate'><i class='fa-regular fa-clock'></i>
|
||||
' data-role='followDate' hidden><i class='fa-regular fa-clock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html();
|
||||
@@ -399,7 +377,7 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -412,10 +390,25 @@ $val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180 i-text-align_center'>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
|
||||
@@ -319,10 +319,11 @@ IPSCONTENT;
|
||||
$return = '';
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsComposeArea ipsComposeArea--unavailable'>
|
||||
<div class='ipsComposeArea_editor'>
|
||||
<div class="ipsComposeArea_dummy">
|
||||
<span class='i-color_warning'><i class="fa-solid fa-triangle-exclamation"></i>
|
||||
<div class="ipsComposeAreaWrapper">
|
||||
<div class='ipsComposeArea ipsComposeArea--unavailable'>
|
||||
<div class='ipsComposeArea_editor'>
|
||||
<div class="ipsComposeArea_dummy">
|
||||
<span class='i-color_warning'><i class="fa-solid fa-triangle-exclamation"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = "{$lang}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -343,27 +344,27 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( \count( $warnings) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $warnings as $idx => $warning ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $idx === 0 ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<br><br>
|
||||
<a href="
|
||||
<br><br>
|
||||
<a href="
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $warning->url(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -373,24 +374,25 @@ IPSCONTENT;
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'view_warning_details', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -3244,35 +3244,14 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<span class='ipsBadge ipsBadge--icon ipsBadge--new
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsHide
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180'>
|
||||
<ul>
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_when', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followDate'><i class='fa-regular fa-clock'></i>
|
||||
' data-role='followDate' hidden><i class='fa-regular fa-clock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html();
|
||||
@@ -3297,7 +3276,7 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -3310,10 +3289,25 @@ $val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180 i-text-align_center'>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -3579,35 +3573,13 @@ IPSCONTENT;
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
<div class='cFollowedContent_anon'>
|
||||
<span class='ipsBadge ipsBadge--icon ipsBadge--new
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
ipsHide
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followAnonymous' data-ipsTooltip title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'><i class='fa-solid fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180 cFollowedContent_info'>
|
||||
<ul>
|
||||
<ul class="ipsList ipsList--inline i-row-gap_0 i-margin-top_1 i-font-weight_500">
|
||||
<li title='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_when', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
' data-role='followDate'><i class='fa-regular fa-clock'></i>
|
||||
' data-role='followDate' hidden><i class='fa-regular fa-clock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html();
|
||||
@@ -3632,7 +3604,7 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-bell'></i>
|
||||
<i class='fa-regular fa-bell'></i>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -3645,10 +3617,25 @@ $val = "follow_freq_{$row->_followData['follow_notify_freq']}"; $return .= \IPS\
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</li>
|
||||
<li data-role='followAnonymous'
|
||||
IPSCONTENT;
|
||||
|
||||
if ( !$row->_followData['follow_is_anon'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
hidden
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
><i class="fa-regular fa-eye-slash"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'follow_is_anon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='i-basis_180 i-text-align_center cFollowedContent_manage'>
|
||||
<div class='cFollowedContent_manage'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
|
||||
@@ -1406,7 +1406,7 @@ IPSCONTENT;
|
||||
$return = '';
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsBox' data-ips-template="invoices">
|
||||
<div class='ipsBox ipsPull ipsBox--invoicesACP'>
|
||||
<h2 class='ipsBox__header'>
|
||||
|
||||
IPSCONTENT;
|
||||
@@ -1442,7 +1442,7 @@ endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</h2>
|
||||
<div class='i-padding_2'>
|
||||
<div>
|
||||
{$invoices}
|
||||
</div>
|
||||
</div>
|
||||
@@ -1507,54 +1507,57 @@ foreach ( $rows as $row ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<li class='ipsData__item'>
|
||||
<div class='i-basis_120 i-text-align_center'>
|
||||
<span class='cNexusCustomerInvoice'>
|
||||
<div class="i-flex i-flex-wrap_wrap i-align-items_center i-gap_3">
|
||||
<div class="i-flex_91 i-basis_300 i-flex i-gap_2 i-align-items_center">
|
||||
<div class='i-flex_00 i-basis_100 i-text-align_center'>
|
||||
<span class='cNexusCustomerInvoice'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $row['i_total'], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
{$row['i_status']}
|
||||
</div>
|
||||
<div class='ipsData__main'>
|
||||
<p class='i-link-color_inherit'>
|
||||
|
||||
{$row['i_status']}
|
||||
</div>
|
||||
<div class='ipsData__main'>
|
||||
<div class="i-flex i-align-items_center i-gap_3 i-flex-wrap_wrap">
|
||||
<div class="i-flex_91">
|
||||
<p class='ipsData__title'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $row['_buttons']['view'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<a href='
|
||||
<a href='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $row['_buttons']['view']['link'], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
{$row['i_title']} <span class='i-color_soft i-font-size_1'>#
|
||||
<span class='i-color_soft'>#
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $row['i_id'], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
|
||||
</span>: {$row['i_title']}
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $row['_buttons']['view'] ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</a>
|
||||
|
||||
</a>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</p>
|
||||
<p class='i-font-size_1'>
|
||||
<span class='i-color_soft'>
|
||||
</p>
|
||||
<p class='ipsData__meta'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'invoice_created', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -1564,16 +1567,19 @@ IPSCONTENT;
|
||||
|
||||
$val = ( $row['i_date'] instanceof \IPS\DateTime ) ? $row['i_date'] : \IPS\DateTime::ts( $row['i_date'] );$return .= $val->html();
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class='i-basis_120 i-text-align_end'>
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class='i-flex_11 i-basis_120 i-text-align_end'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Theme::i()->getTemplate( "global", "core" )->controlStrip( $row['_buttons'] );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
|
||||
@@ -737,27 +737,27 @@ IPSCONTENT;
|
||||
$return = '';
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<span class="ipsBadge ipsBadge--style
|
||||
<span class="ipsBadge
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $status == \IPS\nexus\Invoice::STATUS_PAID ):
|
||||
$return .= <<<IPSCONTENT
|
||||
4
|
||||
ipsBadge--positive
|
||||
IPSCONTENT;
|
||||
|
||||
elseif ( $status == \IPS\nexus\Invoice::STATUS_PENDING ):
|
||||
$return .= <<<IPSCONTENT
|
||||
1
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
elseif ( $status == \IPS\nexus\Invoice::STATUS_CANCELED ):
|
||||
$return .= <<<IPSCONTENT
|
||||
5
|
||||
ipsBadge--locked
|
||||
IPSCONTENT;
|
||||
|
||||
elseif ( $status == \IPS\nexus\Invoice::STATUS_EXPIRED ):
|
||||
$return .= <<<IPSCONTENT
|
||||
6
|
||||
ipsBadge--warning
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
|
||||
@@ -54,8 +54,8 @@ IPSCONTENT;
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='i-background_2 i-padding_3'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>
|
||||
<div>
|
||||
<h2 class='ipsTitle ipsTitle--h3 ipsTitle--padding'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'order_review', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -186,8 +186,8 @@ IPSCONTENT;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<div class=''>
|
||||
<div class='i-text-align_center i-padding_3'>
|
||||
<div class='ipsBox ipsPull ipsBox--checkoutWrapper'>
|
||||
<div class='i-text-align_center i-padding_3 i-border-bottom_3'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -200,8 +200,8 @@ IPSCONTENT;
|
||||
if ( $checkoutStatus === 'complete' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='i-font-size_6 fa-solid fa-check-circle'></i>
|
||||
<h1 class='i-font-size_6 i-text-align_center'>
|
||||
<i class='i-font-size_6 fa-solid fa-check-circle i-margin-bottom_2 i-color_soft'></i>
|
||||
<h1 class='i-font-size_5 i-font-weight_600 i-color_hard i-text-align_center'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'transaction_title_success', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -213,8 +213,8 @@ IPSCONTENT;
|
||||
elseif ( $checkoutStatus === 'waiting' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='i-font-size_6 fa-regular fa-clock'></i>
|
||||
<h1 class='i-font-size_6 i-text-align_center'>
|
||||
<i class='i-font-size_6 fa-regular fa-clock i-margin-bottom_2 i-color_soft'></i>
|
||||
<h1 class='i-font-size_5 i-font-weight_600 i-color_hard i-text-align_center'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'transaction_title_waiting', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -226,8 +226,8 @@ IPSCONTENT;
|
||||
elseif ( $checkoutStatus === 'hold' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='i-font-size_6 fa-regular fa-clock'></i>
|
||||
<h1 class='i-font-size_6 i-text-align_center'>
|
||||
<i class='i-font-size_6 fa-regular fa-clock i-margin-bottom_2 i-color_soft'></i>
|
||||
<h1 class='i-font-size_5 i-font-weight_600 i-color_hard i-text-align_center'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'transaction_title_hold', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -239,8 +239,8 @@ IPSCONTENT;
|
||||
elseif ( $checkoutStatus === 'pending' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='i-font-size_6 fa-regular fa-clock'></i>
|
||||
<h1 class='i-font-size_6 i-text-align_center'>
|
||||
<i class='i-font-size_6 fa-regular fa-clock i-margin-bottom_2 i-color_soft'></i>
|
||||
<h1 class='i-font-size_5 i-font-weight_600 i-color_hard i-text-align_center'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'transaction_title_pending', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -252,8 +252,8 @@ IPSCONTENT;
|
||||
elseif ( $checkoutStatus === 'refused' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='i-font-size_6 fa-solid fa-triangle-exclamation'></i>
|
||||
<h1 class='i-font-size_6 i-text-align_center'>
|
||||
<i class='i-font-size_6 fa-solid fa-triangle-exclamation i-margin-bottom_2 i-color_soft'></i>
|
||||
<h1 class='i-font-size_5 i-font-weight_600 i-color_hard i-text-align_center'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'transaction_title_refused', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -271,8 +271,8 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='i-font-size_6 fa-solid fa-cart-shopping'></i>
|
||||
<h1 class='i-font-size_6 i-text-align_center'>
|
||||
<i class='i-font-size_6 fa-solid fa-cart-shopping i-margin-bottom_2 i-color_soft'></i>
|
||||
<h1 class='i-font-size_5 i-font-weight_600 i-color_hard i-text-align_center'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'checkout', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -290,12 +290,12 @@ IPSCONTENT;
|
||||
if ( \IPS\Widget\Request::i()->isSecure() === TRUE ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<i class='fa-solid fa-lock'></i>
|
||||
<div class="i-margin-top_1 i-font-weight_500 i-color_soft"><i class='fa-solid fa-lock'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'secure_page', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -304,10 +304,8 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
<section>
|
||||
<div class='ipsBox i-padding_3' id='elCheckoutContent'>
|
||||
{$content}
|
||||
</div>
|
||||
<section id='elCheckoutContent'>
|
||||
{$content}
|
||||
</section>
|
||||
</div>
|
||||
IPSCONTENT;
|
||||
@@ -319,23 +317,24 @@ IPSCONTENT;
|
||||
$return = '';
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsColumns i-margin-top_3 cNexusCheckout_review' data-controller='nexus.front.checkout.review'>
|
||||
<div class='ipsColumns ipsColumns--reverse ipsColumns--lines cNexusCheckout_review' data-controller='nexus.front.checkout.review'>
|
||||
<div class='ipsColumns__primary'>
|
||||
|
||||
<div class="i-padding_3">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $invoice->billaddress ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsSpanGrid i-margin-bottom_3'>
|
||||
|
||||
<div class='ipsSpanGrid i-margin-bottom_3'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $invoice->billaddress ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsSpanGrid__6'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>
|
||||
<div class='ipsSpanGrid__6'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'billing_address', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -350,16 +349,16 @@ IPSCONTENT;
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'edit', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
)</a></h2>
|
||||
<div class='i-margin-top_3'>
|
||||
{$invoice->billaddress->toString('<br>')}
|
||||
|
||||
<div class='i-margin-top_3'>
|
||||
{$invoice->billaddress->toString('<br>')}
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( isset( $invoice->billaddress->vat ) and $invoice->billaddress->vat ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<br>
|
||||
|
||||
<br>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'cm_checkout_vat_number', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -369,52 +368,53 @@ IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $invoice->billaddress->vat, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $invoice->member->email ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='i-color_soft i-margin-bottom_3'>
|
||||
<i class='fa-solid fa-circle-info'></i>
|
||||
<div class='i-color_soft'>
|
||||
<i class='fa-solid fa-circle-info'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$sprintf = array($invoice->member->email); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'confirmation_sent_to', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
|
||||
{$couponForm}
|
||||
|
||||
<section class='i-background_3 i-margin-top_3'>
|
||||
<h2 class='ipsBox__header ipsHide'>
|
||||
<section>
|
||||
<h2 class='ipsHide'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -446,20 +446,22 @@ endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</h2>
|
||||
<div class='i-padding_3'>
|
||||
<div>
|
||||
{$form}
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
<div class='ipsColumns__secondary i-basis_360 '>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>
|
||||
<div class='ipsColumns__secondary i-basis_360'>
|
||||
<div class="i-padding_3">
|
||||
<h2 class='ipsTitle ipsTitle--h3'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'order_review', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
</div>
|
||||
<i-data>
|
||||
<ul class="ipsData ipsData--table ipsData--order-review i-margin-top_3">
|
||||
<ul class="ipsData ipsData--table ipsData--order-review">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1194,7 +1196,7 @@ endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<div class='i-padding_3 i-background_2'>
|
||||
<div class='i-padding_2 i-border-top_3'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1220,7 +1222,7 @@ IPSCONTENT;
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'do_you_have_coupon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
<div class='ipsSpanGrid i-margin-top_2'>
|
||||
<div class='i-flex i-gap_1 i-margin-top_2'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1233,7 +1235,7 @@ IPSCONTENT;
|
||||
foreach ( $collection as $inputName => $input ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsSpanGrid__8'>
|
||||
<div class='i-flex_11'>
|
||||
{$input->html()}
|
||||
|
||||
IPSCONTENT;
|
||||
@@ -1266,14 +1268,12 @@ IPSCONTENT;
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsSpanGrid__4'>
|
||||
<button type='submit' class='ipsButton ipsButton--soft ipsButton--small ipsButton--wide'>
|
||||
<button type='submit' class='i-flex_00 ipsButton ipsButton--inherit'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'apply_coupon', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@@ -1321,15 +1321,15 @@ IPSCONTENT;
|
||||
if ( \IPS\Login::registrationType() != 'disabled' or ( $usernamePasswordMethods and $buttonMethods ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsSpanGrid i-margin-top_3' data-role="memberChoice">
|
||||
<div class='ipsSpanGrid__6 i-padding_3 cNexusCheckout_returning'>
|
||||
<h2 class="ipsTitle ipsTitle--h3 i-margin-bottom_3">
|
||||
<div class='ipsFluid i-basis_280 i-gap_lines' data-role="memberChoice">
|
||||
<div class='cNexusCheckout_returning'>
|
||||
<h2 class="i-padding_3 ipsTitle ipsTitle--h3">
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'returning_member', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
<div class='ipsForm_fullWidth'>
|
||||
<div class=''>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1342,7 +1342,6 @@ IPSCONTENT;
|
||||
$return .= \IPS\Theme::i()->getTemplate( "global", "core", 'global' )->message( $loginError, 'error' );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<br>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1353,7 +1352,7 @@ $return .= <<<IPSCONTENT
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $login->url, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
' class="ipsForm" data-controller="core.global.core.login">
|
||||
' class="ipsForm ipsForm--fullWidth" data-controller="core.global.core.login">
|
||||
<input type="hidden" name="csrfKey" value="
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1404,28 +1403,26 @@ $return .= <<<IPSCONTENT
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class='ipsSpanGrid__6 i-padding_3'>
|
||||
<div class="i-background_2 i-padding_3">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( \IPS\Login::registrationType() != 'disabled' ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class="i-margin-bottom_4">
|
||||
<div class="i-margin-bottom_3">
|
||||
<h2 class="ipsTitle ipsTitle--h3">
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'new_customers', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
<p>
|
||||
|
||||
<p class="i-color_soft i-margin-bottom_3">
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'new_customer_blurb', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</p>
|
||||
</p>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1449,7 +1446,7 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<button data-action='newMember' class='ipsButton ipsButton--primary'>
|
||||
<button data-action='newMember' class='ipsButton ipsButton--primary ipsButton--wide'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'continue_as_new_member', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -1474,43 +1471,41 @@ IPSCONTENT;
|
||||
if ( $usernamePasswordMethods and $buttonMethods ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='i-background_2 i-padding_2'>
|
||||
<form accept-charset='utf-8' method='post' action='
|
||||
<form accept-charset='utf-8' method='post' action='
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $login->url, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
' class="ipsForm" data-controller="core.global.core.login">
|
||||
<input type="hidden" name="csrfKey" value="
|
||||
' data-controller="core.global.core.login">
|
||||
<input type="hidden" name="csrfKey" value="
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( \IPS\Session::i()->csrfKey, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
">
|
||||
<p class='i-font-size_-2 i-text-align_center'><strong>
|
||||
<p class='i-color_soft i-font-weight_500'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'sign_in_with_these', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</strong></p>
|
||||
<div class='i-gap_2 i-margin-top_2'>
|
||||
|
||||
:</p>
|
||||
<div class='i-grid i-gap_2 i-text-align_center i-margin-top_2'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $buttonMethods as $method ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='i-text-align_center'>
|
||||
{$method->button()}
|
||||
</div>
|
||||
|
||||
<div>
|
||||
{$method->button()}
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1519,8 +1514,8 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="i-padding_3 ipsJS_hide" data-role='newCustomerForm'>
|
||||
<h2 class='ipsTitle ipsTitle--h3 i-margin-top_3'>
|
||||
<div class="ipsJS_hide" data-role='newCustomerForm'>
|
||||
<h2 class='ipsTitle ipsTitle--h3 ipsTitle--padding'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'create_new_account', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -1623,9 +1618,9 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='ipsColumns i-margin-top_3'>
|
||||
<div class='ipsColumns ipsColumns--reverse ipsColumns--lines ipsColumns--customerInformation'>
|
||||
<div class='ipsColumns__primary'>
|
||||
<h2 class='ipsTitle ipsTitle--h3 i-margin-bottom_3'>
|
||||
<h2 class='ipsTitle ipsTitle--h3 ipsTitle--padding'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'billing_information', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -1633,7 +1628,7 @@ $return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
{$informationForm}
|
||||
</div>
|
||||
<div class='ipsColumns__secondary i-basis_280'>
|
||||
<div class='ipsColumns__secondary i-basis_340'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1834,14 +1829,13 @@ endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</ul>
|
||||
<hr class='ipsHr'>
|
||||
<div class='i-text-align_end i-margin-top_3'>
|
||||
<div class='ipsSubmitRow'>
|
||||
<button type='submit' class='ipsButton ipsButton--primary'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'continue_to_review', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
<i class='fa-solid fa-chevron-right'></i></button>
|
||||
<i class='fa-solid fa-chevron-right'></i></button>
|
||||
</div>
|
||||
</form>
|
||||
IPSCONTENT;
|
||||
@@ -1854,16 +1848,14 @@ IPSCONTENT;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<section class='ipsBox i-margin-top_3'>
|
||||
<h2 class='ipsBox__header'>
|
||||
<section class=''>
|
||||
<div class="i-padding_3 i-border-top_3 i-border-bottom_3 i-flex i-align-items_center i-gap_2">
|
||||
<h2 class='ipsTitle ipsTitle--h3'><span class="i-color_soft">
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'order_review', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
<div class='i-padding_3'>
|
||||
<div class='i-flex i-align-items_center i-gap_2'>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>
|
||||
:</span>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'order', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -1873,13 +1865,13 @@ IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $invoice->id, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h2>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
if ( \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'nexus', 'clients' ) ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<a href='
|
||||
<a href='
|
||||
IPSCONTENT;
|
||||
|
||||
if ( $invoice->guest_data and isset( $invoice->guest_data['guestTransactionKey'] ) ):
|
||||
@@ -1902,22 +1894,22 @@ IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
' target="_blank" rel='noopener' class='ipsJS_show ipsButton ipsButton--soft ipsButton--small'>
|
||||
' target="_blank" rel='noopener' class='ipsJS_show ipsButton ipsButton--inherit ipsButton--small i-margin-start_auto'><i class="fa-solid fa-print"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'order_invoice_print', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endif;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
<hr class='ipsHr'>
|
||||
<div class='ipsSpanGrid i-margin-top_3'>
|
||||
<div class='ipsSpanGrid__6'>
|
||||
</div>
|
||||
<div class='i-padding_3'>
|
||||
<div class='ipsFluid i-basis_300 i-margin-top_3'>
|
||||
<div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -1969,7 +1961,7 @@ $return .= \IPS\Theme::i()->getTemplate( "clients", "nexus" )->paymentLog( $invo
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
<div class='ipsSpanGrid__6'>
|
||||
<div>
|
||||
<h2 class='ipsTitle ipsTitle--h3'>
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -2491,7 +2483,7 @@ IPSCONTENT;
|
||||
if ( $showSubmitButton ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='i-margin-top_3' id="paymentMethodSubmit">
|
||||
<div class="ipsSubmitRow" id="paymentMethodSubmit">
|
||||
<button type='submit' class='ipsButton ipsButton--primary ipsButton--wide'>
|
||||
<i class='fa-solid fa-check-circle'></i>
|
||||
|
||||
@@ -2857,30 +2849,31 @@ IPSCONTENT;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<p class='i-font-size_2 i-text-align_center'>
|
||||
|
||||
<div class="i-padding_3 i-background_2 i-border-bottom_3">
|
||||
<p class="i-color_hard i-font-size_3 i-font-weight_500 i-margin-bottom_1">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'order_thanks_blurb_no_email', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</p>
|
||||
<p class='i-font-size_2 i-text-align_center'>
|
||||
<strong>
|
||||
</p>
|
||||
<p>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'order_wait_blurb', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</strong><br>
|
||||
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'order_wait_blurb2', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</p>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class='ipsRichText i-background_3 i-padding_3 i-margin-block_2'>
|
||||
<div class='ipsRichText i-padding_3'>
|
||||
{$transaction->method->manualPaymentInstructions( $transaction )}
|
||||
</div>
|
||||
|
||||
@@ -2889,14 +2882,12 @@ IPSCONTENT;
|
||||
if ( \IPS\Member::loggedIn()->member_id ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<p class='i-text-align_center'>
|
||||
<i class='fa-solid fa-circle-info'></i>
|
||||
<p class='ipsMessage ipsMessage--info i-margin_1'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'track_orders_in_billing', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
</p>
|
||||
</p>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
|
||||
@@ -465,25 +465,25 @@ $return .= <<<IPSCONTENT
|
||||
<link rel='stylesheet' href='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/fontawesome/css/regular.min.css?v=6.3.0", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/static/fontawesome/css/regular.min.css?v=6.3.0", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
<link rel='stylesheet' href='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/fontawesome/css/solid.min.css?v=6.3.0", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/static/fontawesome/css/solid.min.css?v=6.3.0", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
<link rel='stylesheet' href='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/fontawesome/css/fontawesome.min.css?v=6.3.0", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/static/fontawesome/css/fontawesome.min.css?v=6.3.0", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
<link rel='stylesheet' href='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/fontawesome/css/brands.min.css?v=6.3.0", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= str_replace( array( 'http://', 'https://' ), '//', htmlspecialchars( \IPS\Http\Url::internal( "applications/core/interface/static/fontawesome/css/brands.min.css?v=6.3.0", "none", "", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
'>
|
||||
</head>
|
||||
|
||||
@@ -6,17 +6,16 @@ class class_nexus_front_store extends \IPS\Theme\Template
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
|
||||
<div class=''>
|
||||
<div class='i-text-align_center i-padding_3'>
|
||||
<i class='i-font-size_6 fa-solid fa-cart-shopping'></i>
|
||||
<h1 class='i-font-size_6 i-text-align_center'>
|
||||
<div class='ipsBox ipsBox--cart'>
|
||||
<div class='i-text-align_center i-padding_3 i-border-bottom_3'>
|
||||
<i class='i-font-size_6 fa-solid fa-cart-shopping i-margin-bottom_2 i-color_soft'></i>
|
||||
<h1 class='i-font-size_5 i-font-weight_600 i-color_hard i-text-align_center'>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'your_cart', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
<div data-controller='nexus.front.store.cartReview'>
|
||||
<div data-role="cart">
|
||||
|
||||
@@ -49,16 +48,16 @@ IPSCONTENT;
|
||||
if ( \count( $_SESSION['cart'] ) ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div id='elNexusCart' class='ipsBox'>
|
||||
<div id='elNexusCart'>
|
||||
<i-data>
|
||||
<div class="ipsData ipsData--table ipsData--cart-contents">
|
||||
<ul class="ipsData ipsData--table ipsData--cart-contents">
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
foreach ( $_SESSION['cart'] as $id => $item ):
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div id='elCartItem_
|
||||
<li id='elCartItem_
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $id, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
@@ -205,7 +204,7 @@ $return .= <<<IPSCONTENT
|
||||
</div>
|
||||
</div>
|
||||
<div class='i-basis_180'>
|
||||
<span class='cNexusPrice i-font-size_2'>
|
||||
<span class='cNexusPrice i-font-size_3'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -332,16 +331,17 @@ $return .= <<<IPSCONTENT
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
endforeach;
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<hr class='ipsHr'>
|
||||
<div class='cNexusCart_totals i-text-align_end'>
|
||||
|
||||
</ul>
|
||||
</i-data>
|
||||
<div class='cNexusCart_totals i-text-align_end'>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'cart_subtotal', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -352,51 +352,49 @@ IPSCONTENT;
|
||||
$return .= new \IPS\nexus\Money( $subtotal, $currency );
|
||||
$return .= <<<IPSCONTENT
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</i-data>
|
||||
</div>
|
||||
<ul class="ipsButtons ipsButtons--main i-margin-block_block">
|
||||
<li>
|
||||
<a class="ipsButton ipsButton--text" href="
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=nexus&module=store&controller=cart&do=clear" . "&csrfKey=" . \IPS\Session::i()->csrfKey, null, "store_cart", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" title="" data-confirm><i class='fa-solid fa-xmark'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'empty_cart', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="ipsButton ipsButton--primary" href="
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=nexus&module=store&controller=cart&do=checkout" . "&csrfKey=" . \IPS\Session::i()->csrfKey, null, "store_cart", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" title="" data-action="checkout">
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'checkout', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
<i class='fa-solid fa-chevron-right'></i></a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="ipsButton ipsButton--inherit" href="
|
||||
</div>
|
||||
<ul class="ipsSubmitRow ipsButtons">
|
||||
<li>
|
||||
<a class="ipsButton ipsButton--inherit" href="
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=nexus&module=store", null, "store", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" title=""><i class='fa-solid fa-chevron-left'></i>
|
||||
"><i class="fa-solid fa-store"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'continue_shopping', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="ipsButton ipsButton--text i-margin-end_auto" href="
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=nexus&module=store&controller=cart&do=clear" . "&csrfKey=" . \IPS\Session::i()->csrfKey, null, "store_cart", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" data-confirm><i class="fa-regular fa-trash-can"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'empty_cart', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="ipsButton ipsButton--primary" href="
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=nexus&module=store&controller=cart&do=checkout" . "&csrfKey=" . \IPS\Session::i()->csrfKey, null, "store_cart", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
|
||||
$return .= <<<IPSCONTENT
|
||||
" data-action="checkout"><i class="fa-solid fa-circle-check"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'checkout', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
@@ -762,20 +760,20 @@ IPSCONTENT;
|
||||
else:
|
||||
$return .= <<<IPSCONTENT
|
||||
|
||||
<div class='i-padding_3'>
|
||||
<div class='i-background_2 i-padding_3 i-text-align_center i-margin-bottom_3'>
|
||||
<h3 class='ipsTitle ipsTitle--h3 i-text-align_center i-margin-bottom_2 i-color_positive'><i class='fa-regular fa-check-circle'></i>
|
||||
<div>
|
||||
<div class='i-padding_3 i-text-align_center'>
|
||||
<h3 class='i-font-weight_700 i-font-size_3 i-margin-bottom_2 i-color_positive'><i class='fa-regular fa-check-circle'></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'product_added_to_cart', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h3>
|
||||
<h4 class='i-font-size_2'>
|
||||
<h4 class='i-font-size_3 i-font-weight_700 i-color_hard'>
|
||||
IPSCONTENT;
|
||||
$return .= \IPS\Theme\Template::htmlspecialchars( $package->_title, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
|
||||
$return .= <<<IPSCONTENT
|
||||
</h4>
|
||||
<p>
|
||||
<p class="i-color_soft i-font-weight_600">
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'quantity', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
@@ -786,17 +784,14 @@ $return .= \IPS\Theme\Template::htmlspecialchars( $quantity, ENT_QUOTES | ENT_DI
|
||||
$return .= <<<IPSCONTENT
|
||||
</p>
|
||||
</div>
|
||||
<ul class='ipsSpanGrid'>
|
||||
<li class='ipsSpanGrid__6'>
|
||||
<a href='#' data-action='dialogClose' class='ipsButton ipsButton--wide ipsButton--soft'>
|
||||
<div class='ipsSubmitRow ipsButtons'>
|
||||
<button type="button" data-action='dialogClose' class='ipsButton ipsButton--soft'><i class="fa-solid fa-store"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'continue_shopping', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</li>
|
||||
<li class='ipsSpanGrid__6'>
|
||||
<a href='
|
||||
</button>
|
||||
<a href='
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=nexus&module=store&controller=cart", null, "store_cart", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
|
||||
@@ -806,14 +801,13 @@ IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'review_cart_title', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
" class='ipsButton ipsButton--wide ipsButton--primary'>
|
||||
" class='ipsButton ipsButton--primary'><i class="fa-solid fa-basket-shopping"></i>
|
||||
IPSCONTENT;
|
||||
|
||||
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'review_and_checkout', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
|
||||
$return .= <<<IPSCONTENT
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
IPSCONTENT;
|
||||
|
||||
|
||||
Reference in new issue
Block a user