Get mode from data-ct-options instead of data-ct-mode

The attribute data-ct-options already contains the mode and attribute
data-ct-mode is just redundant. The attribute data-ct-mode is now not
needed anymore and removed from the rendered HTML.

Change-Id: If261f3cdab6c55243e80dc2ef3caa884538b02bc
This commit is contained in:
Fomafix 2024-11-03 19:04:24 +00:00
parent 747421aca3
commit a62550b687
3 changed files with 1 additions and 4 deletions

View file

@ -92,7 +92,6 @@ class CategoryTree {
$attr['class'] = 'CategoryTreeTag';
}
$attr['data-ct-mode'] = $this->optionManager->getOption( 'mode' );
$attr['data-ct-options'] = $this->optionManager->getOptionsAsJsStructure();
if ( !$title->getArticleID() ) {

View file

@ -193,7 +193,6 @@ class CategoryTreePage extends SpecialPage {
$output->addHTML( Html::rawElement( 'div',
[
'class' => 'CategoryTreeResult CategoryTreeTag',
'data-ct-mode' => $this->tree->optionManager->getOption( 'mode' ),
'data-ct-options' => $this->tree->optionManager->getOptionsAsJsStructure(),
],
$this->tree->renderNode( $title, 1 )

View file

@ -143,9 +143,8 @@ function loadChildren( $link, $children ) {
// Element may not have a .CategoryTreeTag parent, fallback to defauls
// Probably a CategoryPage (@todo: based on what?)
const ctTitle = $link.attr( 'data-ct-title' );
const ctMode = $linkParentCTTag.data( 'ct-mode' );
const mode = typeof ctMode === 'number' ? ctMode : undefined;
const ctOptions = $linkParentCTTag.attr( 'data-ct-options' ) || config.defaultCtOptions;
const mode = JSON.parse( ctOptions ).mode;
// Mode and options have defaults or fallbacks, title does not.
// Don't make a request if there is no title.