[Beta] LMDI Multilinks 2.0.0

Pour les extensions destinées à phpBB 3.1.x

Modérateur: Equipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com

Re: LMDI Multilinks 1.0.0

Messagepar pierredu » 26 Jan 2017 à 15:22

Pour les extensions qui offrent cette série de 4 boutons (montée, descente, édition, suppression), on pourrait imaginer une demande de confirmation, mais c'est un peu lourd pour quelque chose qui ne le mérite pas vraiment. Dans les essais que j'ai fait, j'ai bien aimé la rapidité. Mais on peut préférer la sécurité.
Il faut que je réfléchisse (et que je regarde comment d'autres composants du panneau d'administration sont codés).
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.0.0

Messagepar Manard » 26 Jan 2017 à 15:51

Bonjour Pierre,

Je viens de faire un essai de suppression de BBcode que j'ai créé, il y a bien cette fenêtre

Image

Tu indiques que c'est rapide, effectivement j'ai fait le même constat, mais l'action de suppression n'est pas réalisée dans mes essais

Bon développement

Bernard
Manard
Roi des posts
Roi des posts
 
Messages: 897
Enregistré le: 31 Mar 2012 à 08:24

Re: LMDI Multilinks 1.0.0

Messagepar pierredu » 26 Jan 2017 à 17:12

Je viens de télécharger une nouvelle version (1.0.6) qui ajoute une demande de confirmation dans le cas d'une suppression. Pour la mise à jour, désactiver l'extension, installer les nouveaux fichiers et revalider.
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.0.0

Messagepar Manard » 26 Jan 2017 à 17:38

Bonjour Pierre,

Tu approches du but, je peux maintenant supprimer avec la fenêtre de confirmation et éditer les liens déclarés. Seul petit hic, s'affichent deux fenêtres identiques en cliquant sur "Configuration de l'extension"

Image

Bonne fin d'après-midi

Bernard
Manard
Roi des posts
Roi des posts
 
Messages: 897
Enregistré le: 31 Mar 2012 à 08:24

Re: LMDI Multilinks 1.0.0

Messagepar pierredu » 26 Jan 2017 à 17:52

Ce n'est pas clair qu'il y a la série avant et la série après le lien vers la FAQ ?
Il faudrait avoir une seule liste avec un paramètre avant/après ?
Mais dans ce cas, le reclassement serait difficile à concevoir, non ?
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.0.0

Messagepar Manard » 26 Jan 2017 à 19:30

Bonsoir Pierre,

La différenciation "avant" et "après" m'a échappée , j'avais fait la même lecture :oops: mea culpa

Je viens de tester l'installation "après" c'est bon

Merci et mes excuses pour cette mauvaise lecture

Bernard
Manard
Roi des posts
Roi des posts
 
Messages: 897
Enregistré le: 31 Mar 2012 à 08:24

Re: LMDI Multilinks 1.0.0

Messagepar Skouat » 26 Jan 2017 à 20:20

Hello,

@pierredu: N'utilise pas ton 1er message comme journal de bord.
Merci de le présenter comme indiqué dans le ce message

Concernant la suppression, l'ajout et le déplacement d'éléments, il faut que toutes les actions effectuées par les boutons se prémunissent de la vulnérabilité CSRF.
A lire : https://blog.phpbb.com/2009/01/14/fighting-csrf/

Ce qui signifie que les actions "delete" doivent être traitées via confirm_box() (c'est le cas).
Ex: https://github.com/Skouat/ext_paypal_do ... #L188-L203

Que les actions move_up et move_down doivent être traitées via generate_link_hash().
Ex:
https://github.com/Skouat/ext_paypal_do ... #L263-L266
+
https://github.com/Skouat/ext_paypal_do ... hp#L89-L90

Et les ajouts/modification, via le check_form_key() et add_form_key()

_______________

T'as trop de duplication de code.

Par exemple :
-> https://github.com/pierrdu/lmdi_multili ... p#L83-L104
et
-> https://github.com/pierrdu/lmdi_multili ... #L202-L223

la seule différence c'est lmdi_multilinks_pp et lmdi_multilinks_ap.
Trouve une astuce pour que ap et pp soient variabilisés afin de n'avoir plus qu'un seul case: "delete".

Idem pour les autres case:
là où tu vas créer un case différent pour move_up, move_down (4 fois le même code), je n'ai qu'une seule méthode qui gère le up et le down
Il faut vraiment optimiser à ce niveau, car tu as beaucoup de code en doublon.

Dans les notions d'algorithmique que l'on m'a enseigné il y avait celle de :
Si deux portions de code sont identiques, alors il faut les extraires pour n'en avoir qu'une seule. (c'est la version courte :))

Tu devrais réellement songer à tester Scrutinizer, même s'il ne faut pas l'écouter tout le temps, à mon avis il y a quand même pas mal de conseils qui peuvent servir. C'est simple a mettre en place.

A+
Mes MODS

Ultima-World Hébergé par phpBB-Services
Code parrainage : 1241646554
Skouat
Traducteur
Traducteur
 
Messages: 13402
Enregistré le: 02 Avr 2008 à 19:47

Re: LMDI Multilinks 1.0.0

Messagepar pierredu » 26 Jan 2017 à 21:00

Je suis assez d'accord, dans le principe, avec ce que tu dis.
C'est ce que je ferais dans du code dont je voudrais être fier.
Mais là, on est juste dans un truc jeté rapidement sur le papier pour répondre aux besoins d'utilisateurs (qui ne savent pas coder) qui veulent rajouter leurs liens à la barre de navigation.
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.0.0

Messagepar pierredu » 26 Jan 2017 à 21:02

Manard a écrit:Bonsoir Pierre,
La différenciation "avant" et "après" m'a échappée , j'avais fait la même lecture :oops: mea culpa
Je viens de tester l'installation "après" c'est bon
Merci et mes excuses pour cette mauvaise lecture
Bernard


Même pas grave.
Je me suis demandé s'il ne faudrait pas mettre une explication générale au-dessus et au-dessous le code de création des lignes. J'ai peur que cela perde en clarté. Les onglets du panneau d'administration sont très répétitifs et je ne pense pas que l'on devrait rajouter un nouveau mode d'interaction.
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.0.8

Messagepar pierredu » 13 Fév 2017 à 15:07

Je ne m'étais pas remis au travail ces derniers temps.

J'ai mis en facteur les deux grands paquets de code, j'ai rajouté la protection par clef de hachage pour les liens de montée et de descente et j'ai ajouté une option de sélection d'icônes (fontawesome sous 3.2.x, icônes anciennes sous 3.1.x).

Une nouvelle version a été installée sur github.
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.0.8

Messagepar Skouat » 14 Fév 2017 à 00:50

Hello,

Petite relecture rapide…
Que se passe-t'il dans ton code si $ppap n'est jamais initialisé (donc définit à '') ?
cf : https://github.com/pierrdu/lmdi_multili ... le.php#L29

Concernant la ligne 28, c'est $submit = $request->is_set_post('submit'); qu'il faut utiliser et non ce que tu as mis.

Ligne 118, la variable $bbcodeid n'est pas définie.

Tu peux encore plus factoriser ton code, d'autant plus que tu peux t'appuyer sur la variable $ppap qui te permettrais de faire sauter un des for
https://github.com/pierrdu/lmdi_multili ... #L228-L241
https://github.com/pierrdu/lmdi_multili ... #L246-L259

ce break peut être viré si tu penses mieux ton code (ce qui pemet là aussi d'optimiser le code.

Ligne 270, ligne vide => rien à faire ici.

_______________

Dans ton fichier html lié à l'ACP.
tes input et textarea n'ont aucun ID de label de déclaré, alors qu'au niveau des label tu les initialise
Ex :
Code: Tout sélectionner
			<dt><label for="ml_anchor">{L_ACP_MULTILINK_ANCHOR}{L_COLON}</label><br />{L_ACP_ML_ANCHOR_EXPLAIN}</dt>
			<dd><input type="text" name="ml_anchor" value="{ANCHOR}" /></dd>

A remplacer par
Code: Tout sélectionner
			<dt><label for="ml_anchor">{L_ACP_MULTILINK_ANCHOR}{L_COLON}</label><br />{L_ACP_ML_ANCHOR_EXPLAIN}</dt>
			<dd><input type="text" id="ml_anchor" name="ml_anchor" value="{ANCHOR}" /></dd>
Mes MODS

Ultima-World Hébergé par phpBB-Services
Code parrainage : 1241646554
Skouat
Traducteur
Traducteur
 
Messages: 13402
Enregistré le: 02 Avr 2008 à 19:47

Re: LMDI Multilinks 1.0.8

Messagepar pierredu » 14 Fév 2017 à 08:28

Merci pour toutes ces remarques.
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.0.12

Messagepar pierredu » 15 Fév 2017 à 09:58

À la suite de la demande de testeurs sur phpbb.com, j'ai largement remanié l'extension pour permettre de gérer des fichiers graphiques en plus des icônes. Ça marche bien.
Le dépôt sur github a été mis à jour.
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.1.0

Messagepar pierredu » 17 Fév 2017 à 10:35

Une nouvelle version a été téléchargée sur github.

Principaux changements :
Gestion correcte de la taille et de l'alignement des icônes et des fichiers (merci à Cabot)
Élargissement des zones de saisie des textes d'ancrage et des URL
Fonction de transfert d'une rubrique d'une table à une autre (avant ou après le lien vers les FAQ). La plus grosse difficulté pour moi a été de pouvoir accéder à une icône placée dans le dossier adm/style à partir du module de gestion de l'onglet PCA.

Voilà.
Merci d'avance pour vos commentaires.
Avatar de l’utilisateur
pierredu
Extensions
Extensions
 
Messages: 922
Enregistré le: 29 Mai 2011 à 05:49
Localisation: Paris

Re: LMDI Multilinks 1.1.0

Messagepar Mazeltof » 17 Fév 2017 à 19:29

'soir ici,

pas moyen d'enregistrer un lien, quel qu'il soit, sur cette dernière version :?
Image Image Image
Avatar de l’utilisateur
Mazeltof
Resp. des graphistes
Resp. des graphistes
 
Messages: 2159
Enregistré le: 09 Mar 2009 à 22:02
Localisation: Arras

PrécédenteSuivante

Retourner vers Extensions en développement

 


  • Articles en relation
    Réponses
    Vues
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité