Je pense que c'est un mod faisable sans trop (mais pas facilement quand même) de difficultés si c'est fait "brutalement".
Je ne vois pas dans le premier post de notions de clés langues, de niveaux d'utilisateurs pour l'affichage/modification, de sélection des champs à afficher, etc...
Il n'est pas non plus question de toucher au système déjà existant.
En ce sens, le mod est un non-sens total, mais est réalisable par tous.
Cette table type est apte à contenir les nouveaux champs :
- ID du champ
- Nom du champ
- Description du champ
- Niveau d'affichage du champ ( INVITE/CONNECTE, soit 0 ou 1)
- Zone d'affichage : définition de là ou il devra être affiché : liste des membres, topics, profil
A chaque création d'un champ dans l'ACP, un ALTER crée la colonne dans la table users.
Rien d'extraordinaire pour quelqu'un qui a déjà fait des mods...
Rien de grisant non plus. Il existe tant de choses à ajouter pour que ça tienne la route : dans ce cadre, seules les champs texte sont utilisables et il n'existe aucun contrôle aisé dessis.
Juste pour du texte, il est inutile d'approfondir davantage pour
un mod perso, je m'en tiendrais là si je devais l'utiliser pour moi.
Dans le cadre d'une distribution, c'est beaucoup trop léger mais suffisant dans un cadre personnel.
"Mapper" ceci est indispensable quand il va s'agir d'introduire d'autres types de champs : valeurs numériques, url, images.... Qui ne doivent pas être traitées de la même façon lors de leur entrée dans la base de données car elles nécessitent des vérifications différentes de leur valeur.
C'est également indispensable dans le cadre d'un mod distribué pour des raisons de cohérence : il faut reprendre sur le même système les champs déjà existant, introduire les choix de l'utilisateur (afficher mes infos pour ce champ oui/non, voir le champ des autres utilisateurs oui/non) et autres choses plus complexes telle que la possiblité de trier une liste d'utilisateurs en fonction de ces champs.
Par contre, le côté internationalisation ne pose aucun problème, il suffit d'insérer dans la bdd une clé langue pour le nom et la description du champ.
En résumé je ne suis pas d'accord avec toi Ptirhiik sur le côté difficulté, tant que ce mod est restreint au côté concours de code et qu'il n'est utilisé que par des personnes capables de le comprendre et d'accepter ces contreparties.