Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Une action bazar décomposée en sous-actions #558

Open
acheype opened this issue Dec 1, 2020 · 0 comments
Open

Une action bazar décomposée en sous-actions #558

acheype opened this issue Dec 1, 2020 · 0 comments
Labels
refactoring Concertation technique entre devs. Essayer de plutôt utiliser les Discussions Github zone: refactoring

Comments

@acheype
Copy link
Contributor

acheype commented Dec 1, 2020

En rapport avec #550, voici une alternative. L'objectif est de diviser l'action qui est actuellement trop grosse en plus sous-actions : dans cet exemple, je créer une action pour chaque valeur du paramètre 'vue'.

Au niveau du switch($view) de BazarAction.php, cette action principale réaiguille à la sous-action correspondante suivant la valeur de $view :

private const SUB_ACTIONS = [
        self::VOIR_CONSULTER => 'bazarconsulter',
        self::VOIR_SAISIR => 'bazarsaisir',
        ...
    ];
...
...
 switch ($view) {
            case self::VOIR_CONSULTER
                return $this->wiki->Action(self::SUB_ACTIONS[self::VOIR_CONSULTER],
                    false,
                    ['action' => $action, 'arguments' => $arguments]
                );
                break;

            case self::VOIR_SAISIR:
                $this->wiki->Action(self::SUB_ACTIONS[self::VOIR_SAISIR],
                    false,
                    ['action' => $action, 'arguments' => $arguments]
                );
                break;

            ...
            ...
        }

A voir s'il n'existe pas un autre découpe en sous-actions plus pertinent.

L'action bazar est toujours utilisée dans la page Bazar ({{bazar showexportbuttons="1"}}) et elle reste accessible pour raison de rétrocompatibilité des pages existantes. Et on préconise aux nouveaux utilisateurs, l'utilisation de ces nouvelles actions et l'on en profite pour proposer des paramètres plus user-friendly.

Avantages que je vois :

  • on utilise le même concept de template d'actions (pas besoin d'introduction un nouveau concept où l'on rajoute des notions de routage pour un simple composant)
  • l'utilisateur se voit proposer des actions plus simples
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactoring Concertation technique entre devs. Essayer de plutôt utiliser les Discussions Github zone: refactoring
Projects
None yet
Development

No branches or pull requests

1 participant