Version 5.0.6

This commit is contained in:
Neo committed 2025-12-19 18:55:49 -08:00
1 parent a3a4a9ccbd
commit b89858b2ff
1214 files changed
+92828 -14859

No files matched your search

+165 -157
View File
@@ -57,7 +57,7 @@ $return .= <<<IPSCONTENT
IPSCONTENT;
if ( $followers !== NULL and \count( $followers ) ):
if ( is_array( $followers ) and \count( $followers ) ):
$return .= <<<IPSCONTENT
@@ -153,7 +153,7 @@ IPSCONTENT;
if ( $followersCount > 50 ):
$return .= <<<IPSCONTENT
<div class="ipsButtonBar">
<div class="ipsButtonBar ipsButtonBar--bottom">
<div class="ipsButtonBar__pagination" data-role="tablePagination">
IPSCONTENT;
@@ -635,7 +635,7 @@ $return .= <<<IPSCONTENT
<div class="i-color_hard i-font-size_2 i-font-weight_600">
IPSCONTENT;
$val = ( $member->joined instanceof \IPS\DateTime ) ? $member->joined : \IPS\DateTime::ts( $member->joined );$return .= $val->html();
$val = ( $member->joined instanceof \IPS\DateTime ) ? $member->joined : \IPS\DateTime::ts( $member->joined );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</div>
</div>
@@ -653,7 +653,7 @@ IPSCONTENT;
if ( $member->isOnline() AND ( !$member->isOnlineAnonymously() OR ( $member->isOnlineAnonymously() AND \IPS\Member::loggedIn()->isAdmin() ) ) ):
$return .= <<<IPSCONTENT
<span class="ipsOnlineStatus" data-ipstooltip title="
<span class="ipsOnline" data-ipstooltip title="
IPSCONTENT;
if ( $member->isOnlineAnonymously() ):
@@ -699,7 +699,7 @@ $return .= <<<IPSCONTENT
<div class="i-color_hard i-font-size_2 i-font-weight_600">
IPSCONTENT;
$val = ( $member->last_activity instanceof \IPS\DateTime ) ? $member->last_activity : \IPS\DateTime::ts( $member->last_activity );$return .= $val->html();
$val = ( $member->last_activity instanceof \IPS\DateTime ) ? $member->last_activity : \IPS\DateTime::ts( $member->last_activity );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</div>
@@ -835,7 +835,7 @@ $return .= <<<IPSCONTENT
<p class="i-color_soft i-font-weight_500">
IPSCONTENT;
$val = ( $rankEarned instanceof \IPS\DateTime ) ? $rankEarned : \IPS\DateTime::ts( $rankEarned );$return .= $val->html();
$val = ( $rankEarned instanceof \IPS\DateTime ) ? $rankEarned : \IPS\DateTime::ts( $rankEarned );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</p>
@@ -1940,11 +1940,7 @@ IPSCONTENT;
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=core&module=system&controller=warnings&do=view&id={$member->member_id}&w={$warning->id}", null, "warn_view", array( $member->members_seo_name ), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
$return .= <<<IPSCONTENT
" data-ipsdialog data-ipsdialog-showfrom="#elWarningOverview_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $warning->id, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
" data-ipsdialog-size="narrow" title="">
" data-ipsdialog data-ipsdialog-size="narrow" title="">
IPSCONTENT;
@@ -2271,7 +2267,17 @@ IPSCONTENT;
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=core&module=discover&controller=popular&tab=leaderboard&custom_date_start={$lastDayWon['date']->getTimeStamp()}&custom_date_end={$lastDayWon['date']->getTimeStamp()}", null, "leaderboard_leaderboard", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
$return .= <<<IPSCONTENT
" class="ipsLinkPanel" aria-hidden="true" tabindex="-1"><span>Test</span></a>
" class="ipsLinkPanel" aria-hidden="true" tabindex="-1"><span>
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->formatNumber( $member->getReputationDaysWonCount() );
$return .= <<<IPSCONTENT
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'members_days_won_count', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
!</span></a>
<div class="ipsData__content">
<div class="ipsData__main">
<h3 class="ipsData__title">
@@ -2559,41 +2565,47 @@ $return .= <<<IPSCONTENT
</i-data>
</div>
</div>
<div class="ipsWidget ipsWidget--profileMeta">
<div class="ipsWidget__content">
<i-data>
<ul class="ipsData ipsData--table ipsData--profileMeta">
IPSCONTENT;
if ( $member->group['g_icon'] ):
$return .= <<<IPSCONTENT
<li class="ipsData__item i-text-align_center">
<div class="ipsData__main"><img src="
IPSCONTENT;
$return .= \IPS\File::get( "core_Theme", $member->group['g_icon'] )->url;
$return .= <<<IPSCONTENT
" alt="" loading="lazy"></div>
</li>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
<div class="ipsWidget ipsWidget--profileMeta">
<div class="ipsWidget__content">
<i-data>
<ul class="ipsData ipsData--table ipsData--profileMeta">
IPSCONTENT;
if ( $member->group['g_icon'] ):
$return .= <<<IPSCONTENT
<li class="ipsData__item i-text-align_center">
<div class="ipsData__main"><img src="
IPSCONTENT;
$return .= \IPS\File::get( "core_Theme", $member->group['g_icon'] )->url;
$return .= <<<IPSCONTENT
" alt="" loading="lazy"></div>
</li>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
if ( \IPS\Member::loggedIn()->modPermission('can_see_emails') ):
$return .= <<<IPSCONTENT
<li class="ipsData__item">
<a href="mailto:
<li class="ipsData__item">
<a href="mailto:
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $member->email, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
@@ -2603,16 +2615,16 @@ IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'email_this_user', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</span></a>
<div class="ipsData__icon"><i class="fa-solid fa-envelope"></i></div>
<div class="ipsData__main">
<strong class="ipsData__title">
<div class="ipsData__icon"><i class="fa-solid fa-envelope"></i></div>
<div class="ipsData__main">
<strong class="ipsData__title">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'profile_email', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</strong>
<div class="ipsData__desc">
<div class="i-font-weight_500"><a href="mailto:
<div class="ipsData__desc">
<div class="i-font-weight_500"><a href="mailto:
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $member->email, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
@@ -2626,24 +2638,24 @@ IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $member->email, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
</a></div>
<span class="i-font-size_-1">
<span class="i-font-size_-1">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'profile_email_addresses', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</span>
</div>
</div>
</li>
</div>
</li>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
<li class="ipsData__item">
<a href="
<li class="ipsData__item">
<a href="
IPSCONTENT;
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=core&module=members&controller=profile&do=content&id={$member->member_id}", "front", "profile_content", array( $member->members_seo_name ), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
@@ -2679,15 +2691,15 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
</span></a>
<div class="ipsData__icon"><i class="fa-solid fa-comment"></i></div>
<div class="ipsData__main">
<h4 class="ipsData__title">
<div class="ipsData__icon"><i class="fa-solid fa-comment"></i></div>
<div class="ipsData__main">
<h4 class="ipsData__title">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'members_member_posts', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</h4>
<div class="ipsData__desc"><a href="
<div class="ipsData__desc"><a href="
IPSCONTENT;
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=core&module=members&controller=profile&do=content&id={$member->member_id}", "front", "profile_content", array( $member->members_seo_name ), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
@@ -2723,25 +2735,25 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
</span></a></div>
</div>
<div class="i-font-size_4 i-font-weight_600">
</div>
<div class="i-font-size_4 i-font-weight_600 i-flex_00">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->formatNumber( $member->member_posts );
$return .= <<<IPSCONTENT
</div>
</li>
</div>
</li>
IPSCONTENT;
if ( $solutions ):
$return .= <<<IPSCONTENT
<li class="ipsData__item">
<a href="
<li class="ipsData__item">
<a href="
IPSCONTENT;
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=core&module=members&controller=profile&id={$member->member_id}&do=solutions", null, "profile_solutions", array( $member->members_seo_name ), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
@@ -2757,16 +2769,16 @@ IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'solutionlog_show_activity', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</span></a>
<div class="ipsData__icon"><i class="fa-solid fa-clipboard-check"></i></div>
<div class="ipsData__main">
<h3 class="ipsData__title">
<div class="ipsData__icon"><i class="fa-solid fa-clipboard-check"></i></div>
<div class="ipsData__main">
<h3 class="ipsData__title">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'profile_solutions', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</h3>
<p class="ipsData__desc">
<a href="
<p class="ipsData__desc">
<a href="
IPSCONTENT;
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=core&module=members&controller=profile&id={$member->member_id}&do=solutions", null, "profile_solutions", array( $member->members_seo_name ), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
@@ -2782,38 +2794,38 @@ IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'solutionlog_show_activity', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</a>
</p>
</div>
<div class="i-font-size_4 i-font-weight_600">
</p>
</div>
<div class="i-font-size_4 i-font-weight_600 i-flex_00">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->formatNumber( $solutions );
$return .= <<<IPSCONTENT
</div>
</li>
</div>
</li>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
if ( \IPS\Settings::i()->reputation_enabled and \IPS\Settings::i()->reputation_show_profile ):
$return .= <<<IPSCONTENT
<li class="ipsData__item">
<li class="ipsData__item">
IPSCONTENT;
if ( \IPS\Member::loggedIn()->group['gbw_view_reps'] ):
$return .= <<<IPSCONTENT
<a href="
<a href="
IPSCONTENT;
$return .= htmlspecialchars( \IPS\Http\Url::internal( "app=core&module=members&controller=profile&id={$member->member_id}&do=reputation", null, "profile_reputation", array( $member->members_seo_name ), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE );
@@ -2829,59 +2841,59 @@ IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'replog_show_activity', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</span></a>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
<div class="ipsData__icon"><i class="fa-solid fa-thumbs-up"></i></div>
<div class="ipsData__main">
<h3 class="ipsData__title">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'profile_reputation', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</h3>
IPSCONTENT;
if ( $member->reputation() ):
$return .= <<<IPSCONTENT
<span class="ipsData__desc">
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $member->reputation(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
</span>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
<div class="ipsData__icon"><i class="fa-solid fa-thumbs-up"></i></div>
<div class="ipsData__main">
<h2 class="ipsData__title">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'profile_reputation', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</h2>
IPSCONTENT;
if ( $member->reputation() ):
$return .= <<<IPSCONTENT
<span class="ipsData__desc">
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $member->reputation(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
</span>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
if ( $member->reputationImage() ):
$return .= <<<IPSCONTENT
<div class="i-margin-top_2">
<img src="
<div class="i-margin-top_2">
<img src="
IPSCONTENT;
$return .= \IPS\File::get( "core_Theme", $member->reputationImage() )->url;
$return .= <<<IPSCONTENT
" alt="" loading="lazy">
</div>
</div>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
</div>
<div class="i-font-size_4 i-font-weight_600
</div>
<div class="i-font-size_4 i-font-weight_600 i-flex_00
IPSCONTENT;
if ( $member->pp_reputation_points > 1 ):
@@ -2902,84 +2914,78 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->formatNumber( $member->pp_reputation_points );
$return .= <<<IPSCONTENT
</div>
</li>
</div>
</li>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
if ( $member->birthday AND \IPS\Settings::i()->profile_birthday_type == 'public' or ( \IPS\Settings::i()->profile_birthday_type == 'private' and ( \IPS\Member::loggedIn()->member_id == $member->member_id OR \IPS\Member::loggedIn()->isAdmin() ) ) ):
$return .= <<<IPSCONTENT
<li class="ipsData__item">
<div class="ipsData__icon"><i class="fa-solid fa-cake-candles"></i></div>
<div class="ipsData__main">
<strong class="ipsData__title">
<li class="ipsData__item">
<div class="ipsData__icon"><i class="fa-solid fa-cake-candles"></i></div>
<div class="ipsData__main">
<strong class="ipsData__title">
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'bday', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</strong>
<div class="ipsData__desc">
<div class="ipsData__desc">
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $member->birthday, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
</div>
</div>
</li>
</div>
</li>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
if ( ( ! empty( $followers ) and is_array( $followers ) and count( $followers ) ) || \IPS\Member::loggedIn()->member_id === $member->member_id ):
$return .= <<<IPSCONTENT
<li class="ipsData__item" id="elFollowers" data-feedid="member-
<li class="ipsData__item" id="elFollowers" data-feedid="member-
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $member->member_id, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
" data-controller="core.front.profile.followers">
" data-controller="core.front.profile.followers">
IPSCONTENT;
$return .= \IPS\Theme::i()->getTemplate( "profile", "core" )->followers( $member, $followers );
$return .= <<<IPSCONTENT
</li>
</li>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
</ul>
</i-data>
</ul>
</i-data>
</div>
</div>
IPSCONTENT;
</div>
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
@@ -3218,26 +3224,28 @@ endif;
$return .= <<<IPSCONTENT
<ul class='ipsData ipsData--grid ipsData--profile-clubs'>
<i-data>
<ul class='ipsData ipsData--grid ipsData--profile-clubs'>
IPSCONTENT;
foreach ( $clubs as $club ):
$return .= <<<IPSCONTENT
IPSCONTENT;
$return .= \IPS\Theme::i()->getTemplate( "clubs", "core" )->clubCard( $club );
$return .= <<<IPSCONTENT
IPSCONTENT;
endforeach;
$return .= <<<IPSCONTENT
</ul>
</ul>
</i-data>
IPSCONTENT;
@@ -3519,7 +3527,7 @@ $return .= <<<IPSCONTENT
<span class="ipsCoverPhoto__statValue">
IPSCONTENT;
$val = ( $member->joined instanceof \IPS\DateTime ) ? $member->joined : \IPS\DateTime::ts( $member->joined );$return .= $val->html();
$val = ( $member->joined instanceof \IPS\DateTime ) ? $member->joined : \IPS\DateTime::ts( $member->joined );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</span>
</li>
@@ -3545,7 +3553,7 @@ $return .= <<<IPSCONTENT
IPSCONTENT;
$val = ( $member->last_activity instanceof \IPS\DateTime ) ? $member->last_activity : \IPS\DateTime::ts( $member->last_activity );$return .= $val->html();
$val = ( $member->last_activity instanceof \IPS\DateTime ) ? $member->last_activity : \IPS\DateTime::ts( $member->last_activity );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
IPSCONTENT;
@@ -3569,7 +3577,7 @@ IPSCONTENT;
if ( $member->isOnline() AND ( !$member->isOnlineAnonymously() OR ( $member->isOnlineAnonymously() AND \IPS\Member::loggedIn()->isAdmin() ) ) ):
$return .= <<<IPSCONTENT
<i class="ipsOnlineStatus ipsOnlineStatus--online" data-ipstooltip title="
<i class="ipsOnline" data-ipstooltip title="
IPSCONTENT;
if ( $member->isOnlineAnonymously() ):
@@ -3811,14 +3819,14 @@ $return .= <<<IPSCONTENT
IPSCONTENT;
foreach ( $tabs as $tab => $title ):
foreach ( $tabs as $tab => $tabData ):
$return .= <<<IPSCONTENT
<a href='
<a href="
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $member->url()->setQueryString( 'tab', $tab ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= \IPS\Theme\Template::htmlspecialchars( $tabData['url'], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
' id='elProfileTab_
" id='elProfileTab_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $tab, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
@@ -3844,7 +3852,7 @@ $return .= <<<IPSCONTENT
">
IPSCONTENT;
$val = "{$title}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$val = "{$tabData['title']}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
</a>
@@ -3981,7 +3989,7 @@ $return .= <<<IPSCONTENT
<div class='ipsData__meta'>
IPSCONTENT;
$val = ( $visitor['visit_time'] instanceof \IPS\DateTime ) ? $visitor['visit_time'] : \IPS\DateTime::ts( $visitor['visit_time'] );$return .= $val->html();
$val = ( $visitor['visit_time'] instanceof \IPS\DateTime ) ? $visitor['visit_time'] : \IPS\DateTime::ts( $visitor['visit_time'] );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</div>
</div>
@@ -4008,7 +4016,7 @@ IPSCONTENT;
else:
$return .= <<<IPSCONTENT
<div class='i-text-align_center i-color_soft'>
<div class='i-text-align_center i-color_soft i-padding_2'>
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'no_recent_visitors', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
@@ -4137,7 +4145,7 @@ IPSCONTENT;
if ( $loadedMember->isOnline() ):
$return .= <<<IPSCONTENT
<i class="ipsOnlineStatus ipsOnlineStatus--online" data-ipsTooltip title='
<i class="ipsOnline" data-ipsTooltip title='
IPSCONTENT;
$sprintf = array($member->name); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'online_now', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) );
@@ -4173,7 +4181,7 @@ $return .= <<<IPSCONTENT
IPSCONTENT;
$val = ( $loadedMember->joined instanceof \IPS\DateTime ) ? $loadedMember->joined : \IPS\DateTime::ts( $loadedMember->joined );$return .= $val->html();
$val = ( $loadedMember->joined instanceof \IPS\DateTime ) ? $loadedMember->joined : \IPS\DateTime::ts( $loadedMember->joined );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</li>
@@ -4190,7 +4198,7 @@ $return .= <<<IPSCONTENT
IPSCONTENT;
$val = ( $loadedMember->last_activity instanceof \IPS\DateTime ) ? $loadedMember->last_activity : \IPS\DateTime::ts( $loadedMember->last_activity );$return .= $val->html();
$val = ( $loadedMember->last_activity instanceof \IPS\DateTime ) ? $loadedMember->last_activity : \IPS\DateTime::ts( $loadedMember->last_activity );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</li>
@@ -4487,8 +4495,8 @@ foreach ( $member->recentBadges( NULL ) as $badge ):
$return .= <<<IPSCONTENT
<div class='i-flex i-gap_2 i-align-items_center'>
{$badge->html('i-flex_00 i-basis_40 ipsDimension', FALSE, TRUE)}
<div>
<div class="i-flex_00">{$badge->html('i-flex_00 i-basis_40 ipsDimension', FALSE, TRUE)}</div>
<div class="i-flex_11">
IPSCONTENT;
@@ -5645,7 +5653,7 @@ $return .= <<<IPSCONTENT
<span class='i-color_soft'>&nbsp;&nbsp;
IPSCONTENT;
$val = ( $row->rep_date instanceof \IPS\DateTime ) ? $row->rep_date : \IPS\DateTime::ts( $row->rep_date );$return .= $val->html();
$val = ( $row->rep_date instanceof \IPS\DateTime ) ? $row->rep_date : \IPS\DateTime::ts( $row->rep_date );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</span>
</div>
@@ -6304,7 +6312,7 @@ $return .= <<<IPSCONTENT
<span class='i-color_soft'>&nbsp;&nbsp;
IPSCONTENT;
$val = ( $row->solved_date instanceof \IPS\DateTime ) ? $row->solved_date : \IPS\DateTime::ts( $row->solved_date );$return .= $val->html();
$val = ( $row->solved_date instanceof \IPS\DateTime ) ? $row->solved_date : \IPS\DateTime::ts( $row->solved_date );$return .= $val->html(useTitle: true);
$return .= <<<IPSCONTENT
</span>
</div>