Feat : ajout des slugs + @@ nécessaires si on veut utiliser Gamumail pour les inscriptions d'auteurs ou le rappel de mot de passe + la doc pour ces 2 ajouts optionnels dans le README
This commit is contained in:
parent
f654cbcc62
commit
8415578c22
4 changed files with 73 additions and 8 deletions
20
README.md
20
README.md
|
@ -326,17 +326,27 @@ $fonction(lire_config('souscriptions/slug_souscription_validation'), $Tdest, $op
|
||||||
* 'nom' => 'nom_fichier_attache' ]
|
* 'nom' => 'nom_fichier_attache' ]
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Slugs et @@ fournis pour surcharges facultatives de SPIP pour permettre l'envoi des mails en Gamumail plutôt que via notification
|
||||||
|
### slug `valider_inscription` :
|
||||||
|
- message pour la validation de l'adresse mail lors de la création d'un compte avec le form `inscription`
|
||||||
|
- à activer via une surcharge de `action_inscrire_auteur_dist()` : cf plugin **sq_collecte/sq_collecte_fonctions.php**
|
||||||
|
- pour intégrer la définition du mot de passe dès l'inscription (sans le plugin inscription_motdepasse) + d'autres contrôles de l'inscription :
|
||||||
|
- pour la saisie surcharge du HTML du form d'inscription : cf plugin **sq_collecte/formulaires/inscription.html**
|
||||||
|
- pour les contrôles il faut surcharger `formulaires_inscription_verifier_dist()` : cf plugin **sq_collecte/sq_collecte_fonctions.php**
|
||||||
|
|
||||||
|
### slug `pass_oubli`
|
||||||
|
- message pour le reset du mot de passe
|
||||||
|
- à activer via une surcharge de `formulaires_oubli_traiter_dist()`: cf plugin **rocb/rocb_options.php**
|
||||||
|
|
||||||
|
|
||||||
## Outrepasser l'erreur de certificat auto-signé lors de devs en https local
|
## Outrepasser l'erreur de certificat auto-signé lors de devs en https local
|
||||||
|
|
||||||
=> dans le mes_options.php du site mettre :
|
=> dans le mes_options.php du site mettre :
|
||||||
|
```php
|
||||||
```
|
|
||||||
define('_DEBUG_AUTORISER', true);
|
define('_DEBUG_AUTORISER', true);
|
||||||
```
|
```
|
||||||
|
|
||||||
ce qui permet d'activer les options de curl pour ne pas vérifier le certificat dans _charger_pdf.php_ :
|
ce qui permet d'activer les options de curl pour ne pas vérifier le certificat dans _charger_pdf.php_ :
|
||||||
|
```php
|
||||||
```
|
|
||||||
// pour une connexion https locale avec certificat auto-signé
|
// pour une connexion https locale avec certificat auto-signé
|
||||||
if (defined('_DEBUG_AUTORISER')) {
|
if (defined('_DEBUG_AUTORISER')) {
|
||||||
curl_setopt($CurlConnect, CURLOPT_SSL_VERIFYHOST, false);
|
curl_setopt($CurlConnect, CURLOPT_SSL_VERIFYHOST, false);
|
||||||
|
|
|
@ -28,7 +28,7 @@ function gamumail_upgrade($nom_meta_base_version, $version_cible) {
|
||||||
|
|
||||||
$maj['create'] = array(
|
$maj['create'] = array(
|
||||||
array('maj_tables', array('spip_gamumails')),
|
array('maj_tables', array('spip_gamumails')),
|
||||||
array('creer_compte_curl')
|
array('creer_compte_curl', 'creer_slugs'),
|
||||||
);
|
);
|
||||||
$maj['1.0.2'] = array(array('maj_tables', array('spip_gamumails')));
|
$maj['1.0.2'] = array(array('maj_tables', array('spip_gamumails')));
|
||||||
$maj['1.0.5'] = array(array('creer_compte_curl'));
|
$maj['1.0.5'] = array(array('creer_compte_curl'));
|
||||||
|
@ -37,14 +37,54 @@ function gamumail_upgrade($nom_meta_base_version, $version_cible) {
|
||||||
$maj['1.0.12'] = array(array('creer_compte_curl'));
|
$maj['1.0.12'] = array(array('creer_compte_curl'));
|
||||||
$maj['1.0.14'] = array(array('maj_tables', array('spip_gamumails')));
|
$maj['1.0.14'] = array(array('maj_tables', array('spip_gamumails')));
|
||||||
$maj['1.0.16'] = array(array('maj_tables', array('spip_gamumails')));
|
$maj['1.0.16'] = array(array('maj_tables', array('spip_gamumails')));
|
||||||
|
$maj['1.0.17'] = array(array('creer_slugs'));
|
||||||
|
|
||||||
|
|
||||||
include_spip('base/upgrade');
|
include_spip('base/upgrade');
|
||||||
maj_plugin($nom_meta_base_version, $version_cible, $maj);
|
maj_plugin($nom_meta_base_version, $version_cible, $maj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// créer les slugs fournis avec Gamumail
|
||||||
|
function creer_slugs() {
|
||||||
|
if (!sql_countsel('spip_gamumails', 'slug="valider_inscription"')) {
|
||||||
|
$set = [
|
||||||
|
'slug' => 'valider_inscription',
|
||||||
|
'titre' => 'Message de création de compte : validation de l\'adresse mail',
|
||||||
|
'sujet' => '[@@nom_site@@] Création de votre compte',
|
||||||
|
'texte' => 'Bonjour @@nom@@,
|
||||||
|
|
||||||
|
Vous venez de créer votre compte sur @@url_site@@ avec l\'identifiant de connexion @@mail_compte@@.
|
||||||
|
[Merci de cliquer sur ce lien pour le confirmer et vous connecter->@@url_token@@].
|
||||||
|
|
||||||
|
— Envoyé par @@nom_site@@ (@@url_site@@)',
|
||||||
|
'statut' => 'publie',
|
||||||
|
'public' => 'non',
|
||||||
|
'rang' => '999'
|
||||||
|
];
|
||||||
|
sql_insertq('spip_gamumails', $set);
|
||||||
|
}
|
||||||
|
if (!sql_countsel('spip_gamumails', 'slug="pass_oubli"')) {
|
||||||
|
$set = [
|
||||||
|
'slug' => 'pass_oubli',
|
||||||
|
'titre' => 'Message de reset du mot de passe',
|
||||||
|
'sujet' => '[@@nom_site@@] récupération de votre mot de passe',
|
||||||
|
'texte' => 'Pour récupérer votre accès @@nom_site@@ (@@url_site@@), merci de suivre ce lien :
|
||||||
|
@@url_spip_pass@@
|
||||||
|
|
||||||
|
Vous pourrez alors saisir un nouveau mot de passe et vous connecter au site
|
||||||
|
|
||||||
|
— Envoyé par @@nom_site@@ (@@url_site@@)',
|
||||||
|
'statut' => 'publie',
|
||||||
|
'public' => 'non',
|
||||||
|
'rang' => '999'
|
||||||
|
];
|
||||||
|
sql_insertq('spip_gamumails', $set);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
function creer_compte_curl(){
|
function creer_compte_curl(){
|
||||||
if (sql_countsel('nom', 'spip_auteurs', 'nom="curl_login"')){
|
if (sql_countsel('spip_auteurs', 'nom="curl_login"')){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$mdp = uniqid(uniqid(),1);
|
$mdp = uniqid(uniqid(),1);
|
||||||
|
|
|
@ -13,6 +13,8 @@ if (!defined('_ECRIRE_INC_VERSION')) {
|
||||||
*
|
*
|
||||||
**/
|
**/
|
||||||
function inc_gamumail_remplacements_dist($args, $html) {
|
function inc_gamumail_remplacements_dist($args, $html) {
|
||||||
|
$slug = $args['slug'];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @@url_spip_pass@@
|
* @@url_spip_pass@@
|
||||||
* ATTENTION, il ne faut passer QUE si @@url_spip_pass@@ est présent, car la fonction
|
* ATTENTION, il ne faut passer QUE si @@url_spip_pass@@ est présent, car la fonction
|
||||||
|
@ -32,6 +34,19 @@ function inc_gamumail_remplacements_dist($args, $html) {
|
||||||
$html = gamumail_remplacer_modele('url_spip_pass', $url_spip_pass, $html);
|
$html = gamumail_remplacer_modele('url_spip_pass', $url_spip_pass, $html);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @@url_token@@ pour le mail de validation de création de compte (slug valider_inscription) + @@mail_compte@@
|
||||||
|
* en SPIP 4.2+ on DOIT récupérer l'URL de validation générée par action_inscrire_auteur()
|
||||||
|
**/
|
||||||
|
if ($slug === 'valider_inscription'
|
||||||
|
&& ($id_auteur = $args['options']['id_auteur'])
|
||||||
|
&& ($url_confirm = $args['options']['url_confirm'])
|
||||||
|
) {
|
||||||
|
$auteur = sql_fetsel('email', 'spip_auteurs', 'id_auteur='.intval($id_auteur));
|
||||||
|
$html = str_replace('@@url_token@@', $url_confirm, $html);
|
||||||
|
$html = str_replace('@@mail_compte@@', $auteur['email'], $html);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @@nom@@ => $nom ou un espace pour vider le champ @@nom@@
|
* @@nom@@ => $nom ou un espace pour vider le champ @@nom@@
|
||||||
**/
|
**/
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
compatibilite="[3.2.0;4.*]"
|
compatibilite="[3.2.0;4.*]"
|
||||||
logo="prive/themes/spip/images/gamumail-64.png"
|
logo="prive/themes/spip/images/gamumail-64.png"
|
||||||
documentation=""
|
documentation=""
|
||||||
schema="1.0.16"
|
schema="1.0.17"
|
||||||
>
|
>
|
||||||
|
|
||||||
<nom>GamuMail</nom>
|
<nom>GamuMail</nom>
|
||||||
|
|
Loading…
Add table
Reference in a new issue