Skip to content

Restrict Everblock QCD BO targets to supported controllers#981

Merged
CySSoO merged 1 commit intomasterfrom
cyssoo/restrict-qcdpagebuilder-targets-to-supported-controllers
Feb 26, 2026
Merged

Restrict Everblock QCD BO targets to supported controllers#981
CySSoO merged 1 commit intomasterfrom
cyssoo/restrict-qcdpagebuilder-targets-to-supported-controllers

Conversation

@CySSoO
Copy link
Contributor

@CySSoO CySSoO commented Feb 26, 2026

Motivation

  • Limiter l’injection de targets QCD aux contrôleurs Everblock réellement supportés pour éviter des résolutions hors-contexte.
  • Supprimer des sélecteurs globaux non contextualisés qui pouvaient attraper des textarea non liés à Everblock.
  • Conserver un fallback robuste pour la résolution d’ID via le mécanisme id_resolver.
  • Empêcher l’injection de la target quand le contrôleur courant n’est pas explicitement listé.

Description

  • Ajout d’une allowlist $supportedControllers contenant les identifiants admineverblock* et usage centralisé de cette liste dans la target via controllers => $supportedControllers.
  • Résolution du contrôleur courant avec Tools::getValue('controller') et fallback sur $this->context->controller->controller_name, puis sortie précoce si le contrôleur n’appartient pas à la allowlist.
  • Remplacement des sélecteurs globaux (body[class*="admin"], textarea[name="content_2"]) par des sélecteurs ancrés sur des formulaires Everblock et actions (form#everblock_form, form[name="everblock_form"], form[action*="AdminEverBlock"], etc.).
  • Les règles de id_resolver (input selectors, data attributes, meta selectors, query params, custom_extractors, draft_key, path_fallback) sont laissées inchangées pour préserver les fallbacks existants.

Testing

  • Run de php -l everblock.php pour vérification syntaxique, qui a réussi.

Codex Task

@CySSoO CySSoO merged commit 6fdc486 into master Feb 26, 2026
2 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant