Version 5.0.13
This commit is contained in:
1 parent
b89858b2ff
commit
5efe744c5f
1407 files changed
+69690
-30177
No files matched your search
@@ -13,6 +13,8 @@ namespace IPS\core\modules\admin\achievements;
|
||||
/* To prevent PHP errors (extending class does not exist) revealing path */
|
||||
|
||||
use Exception;
|
||||
use IPS\Application;
|
||||
use IPS\core\Achievements\Actions\AchievementActionAbstract;
|
||||
use IPS\core\Achievements\Rule;
|
||||
use IPS\Db;
|
||||
use IPS\Dispatcher;
|
||||
@@ -75,20 +77,31 @@ class rules extends Controller
|
||||
*/
|
||||
protected function manage() : void
|
||||
{
|
||||
/* Get a list of rules that should always be hidden */
|
||||
$hiddenActions = [];
|
||||
foreach( Application::allExtensions( 'core', 'AchievementAction', false ) as $action => $extension )
|
||||
{
|
||||
/* @var AchievementActionAbstract $extension */
|
||||
if( !$extension->showInAcp() )
|
||||
{
|
||||
$hiddenActions[] = $action;
|
||||
}
|
||||
}
|
||||
|
||||
$baseUrl = Url::internal('app=core&module=achievements&controller=rules');
|
||||
$perPage = 25;
|
||||
$totalCount = Db::i()->select( 'COUNT(*)', 'core_achievements_rules' )->first();
|
||||
$totalPages = ceil( $totalCount / $perPage );
|
||||
$page = Request::i()->page ?? 1;
|
||||
|
||||
$query = Db::i()->select( '*', 'core_achievements_rules', NULL, 'action, milestone ASC', [ ( $perPage * ( $page - 1 ) ), $perPage ] );
|
||||
$query = Db::i()->select( '*', 'core_achievements_rules', Db::i()->in( 'action', $hiddenActions, true ), 'action, milestone ASC', [ ( $perPage * ( $page - 1 ) ), $perPage ] );
|
||||
$rules = new ActiveRecordIterator( $query, 'IPS\core\Achievements\Rule' );
|
||||
$pagination = $totalPages > 1 ? Theme::i()->getTemplate( 'global', 'core', 'global' )->pagination( $baseUrl, $totalPages, $page, $perPage ) : '';
|
||||
|
||||
if( Request::i()->isAjax() )
|
||||
{
|
||||
Output::i()->json([
|
||||
'rows' => Theme::i()->getTemplate( 'achievements' )->rulesListRows( $rules ),
|
||||
'rows' => Theme::i()->getTemplate( 'achievements', 'core' )->rulesListRows( $rules ),
|
||||
'pagination' => $pagination
|
||||
]);
|
||||
}
|
||||
@@ -114,7 +127,7 @@ class rules extends Controller
|
||||
}
|
||||
|
||||
|
||||
Output::i()->output = Theme::i()->getTemplate( 'forms', 'core' )->blurb( 'cheev_rules_blurb' ) . Theme::i()->getTemplate( 'achievements' )->rulesList( $rules, $pagination, $this->_getRootButtons() );
|
||||
Output::i()->output = Theme::i()->getTemplate( 'forms', 'core' )->blurb( 'cheev_rules_blurb' ) . Theme::i()->getTemplate( 'achievements', 'core' )->rulesList( $rules, $pagination, $this->_getRootButtons() );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -145,7 +158,7 @@ class rules extends Controller
|
||||
|
||||
Output::i()->title = Member::loggedIn()->language()->addToStack('menu__core_achievements_rules');
|
||||
|
||||
return $form->customTemplate( [ Theme::i()->getTemplate( 'achievements' ), 'rulesForm' ] );
|
||||
return $form->customTemplate( [ Theme::i()->getTemplate( 'achievements', 'core' ), 'rulesForm' ] );
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in new issue
Block a user