Version 5.0.0 beta 5

This commit is contained in:
Neo committed 2025-12-19 17:04:22 -08:00
1 parent 2f24f9de48
commit 57d9db6ce2
218 files changed
+5331 -7416

No files matched your search

+73 -84
View File
@@ -2307,7 +2307,6 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
{$comment->menu()}
IPSCONTENT;
@@ -2379,6 +2378,7 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
{$comment->menu()}
IPSCONTENT;
@@ -2390,7 +2390,12 @@ $return .= <<<IPSCONTENT
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $comment->$idField, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
" aria-expanded="false" data-ipscontrols aria-label="Author stats" data-ipstooltip><i class="fa-solid fa-chevron-down" aria-hidden="true"></i></button>
" aria-expanded="false" data-ipscontrols aria-label="
IPSCONTENT;
$return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'author_stats', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
" data-ipstooltip><i class="fa-solid fa-chevron-down" aria-hidden="true"></i></button>
IPSCONTENT;
@@ -16812,17 +16817,17 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
<div class='ipsTabs cReactionTabs' id='elTabs_
<i-tabs class='ipsTabs cReactionTabs' id='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_content_
' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
'
_content'
IPSCONTENT;
if ( \IPS\Widget\Request::i()->isAjax() ):
@@ -16833,24 +16838,23 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
>
<ul role='tablist'>
<div role='tablist'>
IPSCONTENT;
foreach ( $tabs as $i => $tab ):
$return .= <<<IPSCONTENT
<li>
<a href='
<a href='
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $url->setQueryString( $tabParam, $i ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
' id='
' id='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_tab_
_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $i, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
@@ -16859,17 +16863,7 @@ IPSCONTENT;
if ( isset( $tab['count'] ) && $tab['count'] == 0 ):
$return .= <<<IPSCONTENT
ipsTabs__tabDisabled
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
if ( $i == $activeId ):
$return .= <<<IPSCONTENT
ipsTabs__tab--active
ipsTabs__tab--disabled
IPSCONTENT;
endif;
@@ -16899,7 +16893,16 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
' role="tab" aria-selected="
' role="tab" aria-controls='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $i, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_panel' aria-selected="
IPSCONTENT;
if ( $i == $activeId ):
@@ -16915,13 +16918,13 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
">
IPSCONTENT;
if ( isset( $tab['icon'] ) ):
$return .= <<<IPSCONTENT
<img src='
<img src='
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $tab["icon"]->url, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
@@ -16936,13 +16939,13 @@ IPSCONTENT;
$val = "reaction_title_{$i}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) );
$return .= <<<IPSCONTENT
" loading="lazy">
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
if ( $parseNames ):
@@ -16963,45 +16966,44 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
IPSCONTENT;
if ( isset( $tab['count'] ) ):
$return .= <<<IPSCONTENT
<span class='i-opacity_8'>(
<span class='i-opacity_8'>(
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $tab['count'], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
)</span>
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
</a>
</li>
</a>
IPSCONTENT;
endforeach;
$return .= <<<IPSCONTENT
</ul>
</div>
IPSCONTENT;
$return .= \IPS\Theme::i()->getTemplate( "global", "core", 'global' )->tabScrollers( );
$return .= <<<IPSCONTENT
</div>
<section id='ipsTabs_content_
</i-tabs>
<section id='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
' class='ipsTabs__panels
_content' class='ipsTabs__panels
IPSCONTENT;
if ( $contained ):
@@ -17024,30 +17026,25 @@ IPSCONTENT;
if ( $i == $activeId ):
$return .= <<<IPSCONTENT
<div id='ipsTabs_elTabs_
<div id='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_tab_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $i, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_panel' class="ipsTabs__panel" aria-labelledby="
_panel' class="ipsTabs__panel" aria-labelledby="ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_tab_
_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $i, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
" aria-hidden="false">
">
{$defaultContent}
</div>
@@ -19990,7 +19987,7 @@ $return .= <<<IPSCONTENT
IPSCONTENT;
if ( isset( \IPS\Output::i()->sidebar['contextual'] ) and !empty( \IPS\Output::i()->sidebar['contextual'] ) ):
if ( isset( \IPS\Output::i()->sidebar['contextual'] ) and !empty( trim( \IPS\Output::i()->sidebar['contextual'] ) ) ):
$return .= <<<IPSCONTENT
@@ -20461,7 +20458,7 @@ IPSCONTENT;
$return = '';
$return .= <<<IPSCONTENT
<div class='ipsTabs
<i-tabs class='ipsTabs
IPSCONTENT;
if ( $extraClasses ):
@@ -20475,17 +20472,17 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
' id='elTabs_
' id='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_content_
' data-ipsTabBar data-ipsTabBar-contentArea='#ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
'
_content'
IPSCONTENT;
if ( \IPS\Widget\Request::i()->isAjax() ):
@@ -20496,38 +20493,27 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
>
<ul role='tablist'>
<div role='tablist'>
IPSCONTENT;
foreach ( $tabNames as $i => $name ):
$return .= <<<IPSCONTENT
<li>
<a href='
<a href='
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $url->setQueryString( $tabParam, $i ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
' id='
' id='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_tab_
_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $i, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
' class="ipsTabs__tab
IPSCONTENT;
if ( $i == $activeId ):
$return .= <<<IPSCONTENT
ipsTabs__tab--active
IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
" title='
' class="ipsTabs__tab" title='
IPSCONTENT;
if ( $parseNames ):
@@ -20552,7 +20538,16 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
' role="tab" aria-selected="
' role="tab" aria-controls='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $i, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_panel' aria-selected="
IPSCONTENT;
if ( $i == $activeId ):
@@ -20568,7 +20563,7 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
">
IPSCONTENT;
if ( $parseNames ):
@@ -20589,28 +20584,27 @@ IPSCONTENT;
endif;
$return .= <<<IPSCONTENT
</a>
</li>
</a>
IPSCONTENT;
endforeach;
$return .= <<<IPSCONTENT
</ul>
</div>
IPSCONTENT;
$return .= \IPS\Theme::i()->getTemplate( "global", "core", 'global' )->tabScrollers( );
$return .= <<<IPSCONTENT
</div>
<section id='ipsTabs_content_
</i-tabs>
<section id='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
' class='ipsTabs__panels
_content' class='ipsTabs__panels
IPSCONTENT;
if ( $contained ):
@@ -20633,30 +20627,25 @@ IPSCONTENT;
if ( $i == $activeId ):
$return .= <<<IPSCONTENT
<div id='ipsTabs_elTabs_
<div id='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_tab_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $i, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_panel' class="ipsTabs__panel" aria-labelledby="
_panel' class="ipsTabs__panel" role="tabpanel" aria-labelledby='ipsTabs_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( md5( $url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
_tab_
_
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $i, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
" aria-hidden="false">
'>
{$defaultContent}
</div>
@@ -23109,7 +23098,7 @@ IPSCONTENT;
IPSCONTENT;
if ( !$area->isEmpty() OR \IPS\Dispatcher::i()->application->canManageWidgets() ):
if ( !$area->isEmpty() OR \IPS\Dispatcher::i()->application?->canManageWidgets() ):
$return .= <<<IPSCONTENT
@@ -23406,7 +23395,7 @@ $return .= <<<IPSCONTENT
IPSCONTENT;
if ( ( ( isset( $widgets[ $id ] ) ) || \IPS\Dispatcher::i()->application->canManageWidgets() ) ):
if ( ( ( isset( $widgets[ $id ] ) ) || \IPS\Dispatcher::i()->application?->canManageWidgets() ) ):
$return .= <<<IPSCONTENT