[SPIP Zone] Inscription 3 avec la seule adresse mail

Je re-formule la demande précédemment envoyée sur cette liste.

Ayant le souhait de permettre aux usagers de mon site de s’inscrire en ne fournissant qu’ une adresse mail, et grace aux conseils reçu sur l’IRC. J’ai procédé comme suit :

  • Mettre nom et prénom comme champs obligatoires, dans la plugin inscription 3

  • Dans inscription.html , charger une valeur quelconque dans le champ nom_inscription (pour que le formulaire ne bute pas sur le contrôle obligatoire du nom ou pseudo

  • rendre le champ invisible sur la page publique

  • Dans le traitement du CVT. J’ai remplacé

//$nom = _request('nom_inscription');
par $nom = _request('prenom').'.'._request('nom_famille');

Afin d’écraser ce champ nom_inscription avec la valeur prénom.nom à l’issue de la validation

Le soucis c’est que cette affectation de la variable $nom ne fonctionne pas. Qu’ai-je loupé ?

Merci si vous avez un avis sur la question.

Le 28/10/2018 à 22:55, Dut a écrit :

Ayant le souhait de permettre aux usagers de mon site de s'inscrire en
ne fournissant qu' une adresse mail

Sinon tu peux tester le plugin Profils, qui permet déjà cela. Il a été
fait au début de l'année, mais la documentation se fait toujours
attendre, désolé…

Le principe général est en partie le même qu'Inscription3 mais pas mal
augmenté et sur une base plus générique, avec aucun champ ajouté en dur
par le plugin.

Au lieu de n'avoir qu'une seule configuration, on peut créer plusieurs
profils si on veut. Chaque profil a une config similaire à Inscription3,
sauf que :
- ça peut n'utiliser que la table Auteurs classique
- ça peut utiliser Contacts et Organisations
- ça peut utiliser Coordonnées
- et chaque table peut avoir des champs extras qui sont pris en compte

Donc si on a besoin de plus d'infos, de plus de champs :
- soit on ajoute des champs extras, par exemple directement sur
spip_auteurs, et ça va marcher avec
- soit on ajoute Contacts et Organisations qui proposent déjà des champs
très souvent utilisés et qui organise ces infos dans un ou plusieurs
annuaires à part des comptes utilisateurs (mais lié), ça c'est ce que
nous utilisons

(Exemple complexe : ne rien cocher en Auteur, avoir une Organisation
principale, avec un Contact physique lié, et des Adresses et Numéros à
la fois pour l'orga et le contact, et avoir comme seul email configuré
une coordonnée Email liée au Contact : ça va bien créer un compte
utilisateur Auteur, et tous ces objets et les lier entre eux, et
utiliser l'email de Coordonnées comme email du compte utilisateur. Magie.)

Le plugin à la fois modifie le form d'inscription et fournit un
#FORMULAIRE_PROFIL pour éditer un profil précis, les deux pouvant ne pas
avoir la même quantité de champs. Et donc pour l'inscription il est
possible de n'avoir qu'une adresse email (ça utilisera l'identifiant de
l'email comme nom, ce qui est avant @).

Il y a aussi une fonctionnalité d'exportation et d'importation des
profils avec CSV, suivant les champs configurés pour tel profil, et cela
d'où qu'ils viennent (comme le formulaire en fait ça appelle le même code).

https://zone.spip.net/trac/spip-zone/browser/_plugins_/profils/trunk

Si ça t'intéresse, ça pourra faire d'autres retours que notre
utilisation perso.

--
RastaPopoulos

Le 28/10/2018 à 22:55, Dut a écrit :

- Dans le traitement du CVT. J'ai remplacé
//$nom = _request('nom_inscription');
par $nom = _request('prenom').'.'._request('nom_famille');
Afin d'écraser ce champ nom_inscription avec la valeur prénom.nom à l'issue de la validation
Le soucis c'est que cette affectation de la variable $nom ne fonctionne pas. Qu'ai-je loupé ?

Ça semble être dans le _traiter que tu interviens.
Je ne connais pas le reste du code et comment est utilisé ce $nom,
mais peut etre faut il ajouter un set_request juste aprés ?

Sinon peut être peux tu intervenir dans le _charger
en indiquant une valeur par défaut genre $valeurs['..']=...;

JL

Oui Jean Luc

Dans le _charger j'ai mis une valeur non nulle, mais les champs prénom
et nom de famille ne me seront pas encore connu.

C'est au moment du Traiter que je souhaite remplir cette variable $nom
qui va alimenter le champ 'Signature'.

N'ayant pas les éléments suffisant, je ne sais pas comment tester la
valeur des champs nom_famille et prenom d'inscription3. Peut-être que ma
syntaxe n'est pas la bonne. un conseil ?

Le 29/10/2018 à 06:04, JLuc a écrit :

Le 28/10/2018 à 22:55, Dut a écrit :

- Dans le traitement du CVT. J'ai remplacé
//$nom = _request('nom_inscription');
par $nom = _request('prenom').'.'._request('nom_famille');
Afin d'écraser ce champ nom_inscription avec la valeur prénom.nom à
l'issue de la validation
Le soucis c'est que cette affectation de la variable $nom ne
fonctionne pas. Qu'ai-je loupé ?

Ça semble être dans le _traiter que tu interviens.
Je ne connais pas le reste du code et comment est utilisé ce $nom,
mais peut etre faut il ajouter un set_request juste aprés ?

Sinon peut être peux tu intervenir dans le _charger
en indiquant une valeur par défaut genre $valeurs['..']=...;

JL

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

Le 28/10/2018 à 22:55, Dut a écrit :

Je re-formule la demande précédemment envoyée sur cette liste.

Ayant le souhait de permettre aux usagers de mon site de s'inscrire en ne fournissant qu' une adresse mail,

Hello

ça ne repond pas a ta question concernant inscription3,

mais il m'est arrivé d'utiliser ce formulaire : inscription_rapide (extrait de nursit/profils) qui permet de s'enregistrer justement en ne fournissant qu'une adresse mail.

le code sera certainement plus simple a aborder que inscription3

si ça peut aider…

--
Bonne journée
Arnaud B. (Mist. GraphX)

Oui Mister GraphX, j’ai trouvé dans la code la syntaxe que je cherchais pour alimenter un champ en fonction de deux autres :

set_request(‹ nom_inscription ›, _request(‹ prenom ›) . ’ ’ . _request(‹ nom_famille ›));

Merci d’avoir donné l’élément décisif.

Go go go …

Actions demandées :
• Activer le plugin « Profils » (version : 1.3.6)

Les actions supplémentaires suivantes seront effectuées : • Activer le plugin « Saisies pour formulaires » (version : 3.3.4)
• Activer le plugin « SPIP Bonux » (version : 3.4.6)

ras;
tiens pas de page de config iconifier dans la page plugin genre : /ecrire/?exec=configurer_profils

je trouve donc dans configuration profils ; ecrire/?exec=profils

bon c’est pas tous ça coordonnées qu’il me faut

Erreurs survenues

  • Impossible d’activer le plugin …/plugins/auto/profils/v1.3.6
    • Utilise le plugin CONTACTS en version ≥ 3.1.0.
    • Utilise le plugin COORDONNEES en version ≥ 2.3.28.
    • Utilise le plugin CEXTRAS en version ≥ 3.11.4.
    • Nécessite le plugin INSCRIPTIONMOTDEPASSE

Le 02/11/2018 à 19:46, teamspipfactory@gmail.com a écrit :

Nécessite le plugin INSCRIPTIONMOTDEPASSE

Quoi ? À aucun moment ya ça de nécessité, c'est un utilise aussi !

<utilise nom="inscriptionmotdepasse" />

Ya que Saisies et Bonux qui sont nécessités.

https://zone.spip.net/trac/spip-zone/browser/spip-zone/_plugins_/profils/trunk/paquet.xml#L17

--
RastaPopoulos

ok alors je retest avec pas de mise a jour dispo et sachant que c’est pas la bonne version –

Le 03/11/2018 à 10:40, teamspipfactory@gmail.com a écrit :

j’attends ta réponse pour savoir si je met a jour profils et retente
l'install avec coordonnées

Mais je t'ai déjà répondu hier et tu m'as dit "ah oui ok" : ta version
de Coordonnées est inférieure à celle attendue si elle est présente. Ça
marche sans, mais si tu l'as, tu DOIS avoir au moins la version
demandée, ça fonctionne comme ça les <utilise>.

Ton copier coller :

Utilise le plugin COORDONNEES en version ≥ 2.3.28.

--
RastaPopoulos