Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Aide aux auteurs d'extensions pour phpBB

Modérateur : Equipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com
Avatar du membre
Auteur
stone23
Maître-posteur
Maître-posteur
Messages : 464
Enregistré le : 31 mai 2008 à 13:50
Localisation : Entre la chaise et le clavier
Contact :

Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par stone23 »

Bonsoir à tous,
Je m'intéresse à l'extension http://www.carte-des-membres.com/phpbb- ... _0.0.2.zip dont le développement a été poursuivi par un des membres du site, aidé par Galixte qui a mis le code au propre : http://www.ezcom-fr.com/viewtopic.php?p=3592#p3592 .

Cette extension crée une colonne user_cdm dans la table phpbb3_users. Cette colonne permet l'affichage d'un lien vers le positionnement des membres dans leur profil ainsi que dans les mini-profils affichés dans les posts.

Seulement la table n'est pas mise à jour quand les membres se positionnent sur la carte, il faut aller gratter manuellement dans la table pour mettre la colonne à jour pour chaque membre qui se positionne.
D'après ce que je pense, c'est dans le fichier "ext/cartedesmembres/cdm/controller/cdm.php" qu'il faut mettre le code qui enverrait une requête SQL pour mettre cette colonne à jour lors du positionnement d'un membre.

Et c'est là que je suis arrêté...
Si quelqu'un peut éclairer ma lanterne ce ne serait pas de refus. :wink:
Mon forum
Version forum : 3.3.3
Version php : 8.0.3

Skouat
Resp. Traducteurs
Resp. Traducteurs
Messages : 15063
Enregistré le : 02 avr. 2008 à 20:47
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par Skouat »

Bonjour,
C'est effectivement dans le fichier cdm.php qui faut placer le code.
Après quel code y mettre ca c'est une autre histoire.

Je ne peux que te suggérer un exemple de code qui met à jour un champ ajouté dans la table phpbb_users
=> https://github.com/Skouat/ext_paypal_do ... #L411-L417

Avatar du membre
Auteur
stone23
Maître-posteur
Maître-posteur
Messages : 464
Enregistré le : 31 mai 2008 à 13:50
Localisation : Entre la chaise et le clavier
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par stone23 »

Salut et merci Skouat, je regarderai ça.
Je diffère un peu l'activité sur cette extension car je suis en plein changement d'hébergeur et, en suivant, il faudra que je fasse la mise à jour vers phpBB 3.2.3... :roll:
Mon forum
Version forum : 3.3.3
Version php : 8.0.3

Avatar du membre
Auteur
stone23
Maître-posteur
Maître-posteur
Messages : 464
Enregistré le : 31 mai 2008 à 13:50
Localisation : Entre la chaise et le clavier
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par stone23 »

Finalement, l'auteur a modifié le fichier comme suit : cdm.txt mais il fallait aussi qu'il modifie son script pour la synchronisation de sa carte avec le forum.

Cependant, je cherche en plus à ajouter une colonne dans la liste des membres pour voir les membres positionnés. J'ai créé un fichier ext/cartedesmembres/cdm/styles/prosilver/template/event/memberlist_body_username_append.html :

Code : Tout sélectionner

<!-- IF S_USER_LOGGED_IN and not S_IS_BOT -->
<!-- IF postrow.U_CDM_LOC -->
<th class="gensmall">{L_CDM}</th>
<!-- ENDIF -->
<!-- ENDIF -->

<td colspan="<!-- IF U_SORT_ACTIVE -->6<!-- ELSE -->5<!-- ENDIF -->">&nbsp;</td>

<td class="gensmall"><!-- IF memberrow.U_CDM_LOC --><a href="{U_CDM}#pos{memberrow.U_CDM_LOC}"><img src="{T_THEME_PATH}/images/icon_yes_cdm.png" border="0" alt="{L_CDM_LOC}" title="{L_CDM_LOC}" /></a>&nbsp;</td> <!-- ENDIF -->
Mais ça ne donne rien...

Je pense qu'il faudrait que je crée un événement dans listener.php mais comment nommer cet évènement ? Et que dois-je y déclarer ?
Mon forum
Version forum : 3.3.3
Version php : 8.0.3

Feneck91
Maître-posteur
Maître-posteur
Messages : 448
Enregistré le : 31 déc. 2007 à 12:02
Localisation : Essonne (91)
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par Feneck91 »

Moi aussi ça m'intéresse.
Je suis en train de faire mon extension (Introduciator), quand je l'aurais terminé je verrais à continuer cette extension.
Ajouter des éléments graphique ça ne doit pas être compliqué.

L'extensiopn a été dévelopé et le fichier cmd.php a évolué, il faut aller regarder directement sur le site carte des membres.
Tu as avancé depuis 3 mois ? Ça serait sympa de partager.

Avatar du membre
Auteur
stone23
Maître-posteur
Maître-posteur
Messages : 464
Enregistré le : 31 mai 2008 à 13:50
Localisation : Entre la chaise et le clavier
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par stone23 »

Non, je ne me suis pas repenché dessus mais il va de soit que vous tiendrai au courant de mes travaux :wink:
Mon forum
Version forum : 3.3.3
Version php : 8.0.3

Avatar du membre
cocooncrash
Resp. des modérateurs
Resp. des modérateurs
Messages : 8190
Enregistré le : 07 janv. 2008 à 08:29
Localisation : dans un bocal en compagnie de nemo!!
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par cocooncrash »

bonjour,
Je viens de retrouver un lien vers ceci, cela peut vous interesser :

http://www.ezcom-fr.com/viewtopic.php?f=11&t=729
decouvrez l'aide complete : ICI
découvrez les règles : La_bas

Pensez a ajouter le tag [réglé] en modifiant votre premier message s'il est résolu. Merci :wink:

Avatar du membre
galixte
Floodeur universel
Floodeur universel
Messages : 10627
Enregistré le : 08 mars 2004 à 01:40
Localisation : Sud de la France.
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par galixte »

C’est l’archive la plus aboutie de cet outil. ;)
Communau EzCom
📖
« Traductions d’extensions & styles pour phpBB 3.2.x & 3.3.x ».
📋 Listes de toutes les extensions recensées pour phpBB 3.1.x & 3.2.x.
📋 Listes de tous les styles recensés pour phpBB 3.1.x & 3.2.x.

Image Tu as un forum et tu veux aussi un site web ? Regarde par ici.

Feneck91
Maître-posteur
Maître-posteur
Messages : 448
Enregistré le : 31 déc. 2007 à 12:02
Localisation : Essonne (91)
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par Feneck91 »

Je porte un MOD vers extenion du MOD introduciator. Je commence à comprendre les rouages. Je pense que faire évoluer cette extension ne devrait pas être trop complexe, je m'y attèlerais certainement.

Tu en es où ?

Avatar du membre
Auteur
stone23
Maître-posteur
Maître-posteur
Messages : 464
Enregistré le : 31 mai 2008 à 13:50
Localisation : Entre la chaise et le clavier
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par stone23 »

Salut,
Je continue ce sujet, je n'ai pas beaucoup avancé depuis mais l'extension était toujours installée mais depuis la dernière mise à jour, en consultant le lien vers un profil d'utilisateur, j'ai l'erreur suivante qui s'affiche :
[phpBB Debug] PHP Warning: in file [ROOT]/ext/cartedesmembres/cdm/event/listener.php on line 135: Trying to access array offset on value of type null
Quelqu'un aurait une idée de ce qui causerait ce message d'erreur ?

Edit : la ligne du fichier serait celle-ci :

Code : Tout sélectionner

		$user_id = $row['user_id'];
Mon forum
Version forum : 3.3.3
Version php : 8.0.3

Skouat
Resp. Traducteurs
Resp. Traducteurs
Messages : 15063
Enregistré le : 02 avr. 2008 à 20:47
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par Skouat »

Hello,

Le message d'erreur est sans doute dû au fait que $row['user_id'] est null.
Mais bon cette réponse n'aide pas plus que ta question ne permet d'apporter une réponse plus précise en ne donnant qu'une ligne de code sans son contexte.

Donc fournis le code du fichier, ca sera sans doute plus simple de déterminer ce qui ne va pas. :)

Avatar du membre
pierredu
Resp. Extensions
Resp. Extensions
Messages : 1460
Enregistré le : 29 mai 2011 à 06:49
Localisation : Paris
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par pierredu »

Bizarre, le fichier listener ne fait que 91 lignes.

Avatar du membre
Auteur
stone23
Maître-posteur
Maître-posteur
Messages : 464
Enregistré le : 31 mai 2008 à 13:50
Localisation : Entre la chaise et le clavier
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par stone23 »

Salut,
Je vous mets l'archive sur laquelle je travaille : archive utilisée
Elle ne doit pas être identique à celle sur le site de Galixte...

En fait l'erreur se produit quand on visite le profil d'un utilisateur, que ce soit depuis le forum ou depuis la carte. D'ailleurs, depuis la carte, il faut se reconnecter pour voir le profil.
Mon forum
Version forum : 3.3.3
Version php : 8.0.3

Avatar du membre
pierredu
Resp. Extensions
Resp. Extensions
Messages : 1460
Enregistré le : 29 mai 2011 à 06:49
Localisation : Paris
Contact :

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par pierredu »

Dans la fonction memberlist_view_profile, l'événement ne contient pas d'élément row. Donc $row est null.

J'ai essayé d'installer l'extension. Pas de difficulté au début. Mais comment tester sur un serveur d'essai. Le site demande une vraie URL en http pour obtenir les identifiants, si je comprends bien.

Dehas
Posteur néophyte
Posteur néophyte
Messages : 13
Enregistré le : 28 oct. 2007 à 06:55

Re: Poursuite du développement d'une extension dont l'auteur n'a plus la motivation pour continuer

Message par Dehas »

Bonjour
J'ai aussi cette erreur et je l'ai corrigé en remplaçant la ligne

Code : Tout sélectionner

$user_id = $row['user_id'];
par

Code : Tout sélectionner

$user_id = count($row['user_id'] ?? []);

Répondre

Retourner vers « Aide au développement »

Qui est en ligne

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