Compare commits

..

No commits in common. "master" and "verifmobi" have entirely different histories.

13 changed files with 208 additions and 316 deletions

View file

@ -1,73 +0,0 @@
<?php
/**
* Fichier gérant l'installation et désinstallation du plugin CompteSPIP
*
* @plugin comptespip
* @copyright 2020
* @author tofulm
* @licence GNU/GPL
* @package SPIP\CompteSPIP\Installation
*/
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
/**
* Fonction d'installation et de mise à jour du plugin CompteSPIP.
*
* @param string $nom_meta_base_version
* Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
* @param string $version_cible
* Version du schéma de données dans ce plugin (déclaré dans paquet.xml)
* @return void
**/
function comptespip_upgrade($nom_meta_base_version, $version_cible) {
$maj = array();
$maj['create'] = array(
array('comptespip_creer_slug', array('mail_inscription', []),
array('statut_defaut')
));
$maj['1.0.3'] = array(array('comptespip_creer_slug', array('mail_inscription', [])));
$maj['1.0.4'] = array(array('statut_defaut'));
include_spip('base/upgrade');
maj_plugin($nom_meta_base_version, $version_cible, $maj);
}
function statut_defaut() {
ecrire_config('comptespip/statut', '6forum');
}
/**
* si Gamumail est actif, créer le slug pour le mail d'inscription afin de donner la main aux admins pour son contenu
**/
function comptespip_creer_slug($nom_slug, $options = []) {
if (test_plugin_actif('gamumail')) {
$cree_slug = charger_fonction('creer_slug', 'action');
$message = _T('form_forum_message_auto')."\r\n"."\r\n"._T('form_forum_bonjour', array('nom' => '@@nom@@'))."\r\n"."\r\n";
$message .= _T('comptespip:confirmation_creation_compte', array('url_site' => '@@url_site@@'));
$set = [
'titre' => _T('comptespip:mail_inscription'),
'sujet' => '['.lire_config('nom_site').'] '._T('comptespip:creation_compte'),
'texte' => $message,
'statut' => 'publie',
'editable' => 'non',
];
$cree_slug('mail_inscription', $set);
}
}
/**
* Fonction de désinstallation du plugin CompteSPIP.
*
* @param string $nom_meta_base_version
* Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
* @return void
**/
function comptespip_vider_tables($nom_meta_base_version) {
effacer_meta($nom_meta_base_version);
}

View file

@ -13,20 +13,7 @@ if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
defined('_LOGIN_TROP_COURT') or define('_LOGIN_TROP_COURT', 1);
$GLOBALS['comptespip_editer'] = [
[
'saisie' => 'input',
'options' => array(
'nom' => 'login',
'label' => 'Votre identifiant de connexion',
'obligatoire' => 'non',
'disable' => 'oui',
//'fonction' => 'ma_super_fonction'
//'modifier' => 'ma_super_fonction_pour_modifier'
)
],
[
'saisie' => 'input',
'options' => array(
@ -34,7 +21,6 @@ $GLOBALS['comptespip_editer'] = [
'label' => 'Votre Nom',
'obligatoire' => 'oui',
//'fonction' => 'ma_super_fonction'
//'modifier' => 'ma_super_fonction_pour_modifier'
)
],
[

View file

@ -24,4 +24,3 @@ function comptespip_insert_head_css($flux){
$flux .= '<link rel="stylesheet" href="' . timestamp(find_in_path('css/comptespip.css')) . '" type="text/css" />' . "\n";
return $flux;
}

View file

@ -1,3 +1,7 @@
#CACHE{0}
<INCLURE{fond=inclure/editer_compte_spip,env}>
[(#SESSION{id_auteur}|sinon_interdire_acces{[(#URL_PAGE{mon_compte})]})]
<div class="inner se_connecter">
<h3 class="comptespip_titre_form"><i class="fa fa-pencil fas fa-pen"></i> <:comptespip:editer_compte_spip:></h3>
<div class="pasAJAX">
[(#FORMULAIRE_EDITER_COMPTE_SPIP{#ENV{id_auteur}, #ENV{redirect}})]
</div>
</div>

View file

@ -20,13 +20,13 @@
<div class="se_connecter inner">
<div class="grid-2 has-gutter-l">
<div class="grid-2">
<div class="login">
<h3 class="comptespip_titre_form mlm"><i class="fa fa-unlock"></i> <:comptespip:se_connecter:></h3>
<h3 class="comptespip_titre_form"><i class="fa fa-unlock"></i> <:comptespip:se_connecter:></h3>
[(#FORMULAIRE_LOGIN{#URL_PAGE{#CONFIG{comptespip/page_redirection_connexion}}})]
</div>
<div class="sinscrire">
<h3 class="comptespip_titre_form mlm"><i class="fa fa-user-plus"></i> <:comptespip:sinscrire:></h3>
<h3 class="comptespip_titre_form"><i class="fa fa-user-plus"></i> <:comptespip:sinscrire:></h3>
<div class="PasAjax">
[(#FORMULAIRE_EDITER_COMPTE_SPIP{})]
</div>

View file

@ -41,11 +41,9 @@
float: left;
}
/*
.se_connecter .formulaire_spip {
background-color: rgba(235, 235, 235, 1) !important;
}
*/
.se_connecter .boutons {
background-color: transparent !important;
}
@ -60,7 +58,7 @@
padding: 0 1.5rem;
margin-bottom: 1rem;
letter-spacing: initial;
/*font-variant: small-caps;*/
font-variant: small-caps;
}
.se_connecter #indicatif {
width: 2rem;
@ -76,9 +74,9 @@
}
}
/* .comptespip_titre_form { */
/* margin-bottom: -3rem; */
/* position: relative; */
/* z-index: 1; */
/* margin-left: 2rem; */
/* } */
.comptespip_titre_form {
margin-bottom: -3rem;
position: relative;
z-index: 1;
margin-left: 2rem;
}

View file

@ -1,16 +1,12 @@
#CACHE{0}
<div class="formulaire_spip formulaire_#FORM">
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
<form name="formulaire_#FORM" id="editer_compte_spip" action="#ENV{action}" method="post"><div>
#ACTION_FORMULAIRE{#ENV{action}}
<input type="hidden" value="#ENV{id_auteur}" name="id_auteur"/>
[(#ENV{id_auteur}|!={new}|oui)
<div class="comptespip_logo_auteur">
<INCLURE{fond=inclure/logo_auteur,id_auteur,env}>
@ -24,83 +20,82 @@
</div>
]
<div class="editer_groupe">
<fieldset>
<legend><:comptespip:identite:></legend>
#GENERER_SAISIES{#ENV{_saisies}}
</fieldset>
<BOUCLE_con(CONDITION){si #PLUGIN{verifmob}|oui}>
<style type="text/css" media="screen">
.editer_telephone {
display: none
}
</style>
<fieldset>
<legend><:comptespip:identite:></legend>
#GENERER_SAISIES{#ENV{_saisies}}
</fieldset>
</div>
<div class="editer_groupe">
[(#PLUGIN{verifmob}|oui)
<style type="text/css" media="screen">
.editer_telephone {
display: none
}
</style>
<fieldset>
<legend><:comptespip:telephone|ucfirst:></legend>
<div class="editer">
[(#SET{erreurs,#ENV**{erreurs}|table_valeur{mobile}})]
[<span class="erreur_message">(#GET{erreurs})</span>]
<div class="verif_mobile editer">
<div class="indicateur_plus">
<span class="badge toto"><i class="fa fa-plus"></i></span>
</div>
<input class="text" type="text"
name="indicatif"
id="indicatif"
value="[(#ENV{indicatif})]"
pattern="\[0-9\]{2,4}"
required
>
<input type="tel" class="verif_mobile"
id="mobile"
name="mobile"
placeholder="611223344"
value="[(#ENV{mobile})]"
pattern="^\[67\]\[0-9\]{8}$"
autocomplete="off"
required
maxlength="9"
>
<button class="btn--warning envoyer_sms mts mlm" type="button"><:gabo:envoyer_sms:></button>
<legend><:comptespip:telephone|ucfirst:></legend>
<div class="editer">
#SET{erreurs,#ENV**{erreurs}|table_valeur{mobile}}
[<span class="erreur_message">(#GET{erreurs})</span>]
<div class="verif_mobile editer">
<div class="indicateur_plus">
<span class="badge toto"><i class="fa fa-plus"></i></span>
</div>
<input class="text" type="text"
name="indicatif"
id="indicatif"
value="#ENV{indicatif}"
pattern="[0-9]{2,4}"
required
>
<input type="tel" class="verif_mobile"
id="mobile"
name="mobile"
placeholder="611223344"
value="[(#ENV{mobile})]"
pattern="^[67][0-9]{8}$"
autocomplete="off"
required
maxlength="9"
>
<button class="btn--warning envoyer_sms mts mlm" type="button"><:gabo:envoyer_sms:></button>
</div>
<div class='editer saisie_confirmation obligatoire[ (#ENV*{erreurs}|table_valeur{confirmation}|oui)erreur]'>
<label for="confirmation"><:comptespip:code_confirmation_sms:> <em class="obligatoire"><:info_obligatoire_02:></em></label>
[(#SET{erreurs,#ENV**{erreurs}|table_valeur{confirmation_sms}})]
[<span class="erreur_message">(#GET{erreurs})</span>]
<input type="text" class="text" id="confirmation_sms" name="confirmation_sms" value="[(#ENV{confirmation_sms})]">
</div>
<button class="btn btn--warning renvoyer_sms" type="button"> <:comptespip:renvoyer_sms:> </button>
</fieldset>
[(#INCLURE{fond=inclure/verif_mobile})]
]
</div>
</div>
<div class='editer saisie_confirmation obligatoire[ (#ENV*{erreurs}|table_valeur{confirmation}|oui)erreur]'>
<label for="confirmation"><:comptespip:code_confirmation_sms:> <em class="obligatoire"><:info_obligatoire_02:></em></label>
#SET{erreurs,#ENV**{erreurs}|table_valeur{confirmation_sms}}
[<span class="erreur_message">(#GET{erreurs})</span>]
<input type="text" class="text" id="confirmation_sms" name="confirmation_sms" value="#ENV{confirmation_sms}">
</div>
<button class="btn btn--warning renvoyer_sms" type="button"> <:comptespip:renvoyer_sms:> </button>
</fieldset>
[(#INCLURE{fond=inclure/verif_mobile})]
</BOUCLE_con>
<div class="editer_groupe">
<fieldset>
<legend><:comptespip:mot_de_passe:></legend>
[(#SET{min,#VAL{minlength=}|concat{#ENV{pass_longeur_mini,6}}})]
[(#SET{chaine_langue,#VAL{comptespip:champ_password}|_T{#ARRAY{min,#ENV{pass_longeur_mini}}}})]
<div class="editer_groupe">
<div style="height: 0;">
[(#SAISIE{input,new_password}
{type=hidden}
)]
[(#SAISIE{input,new_password_confirmation}
{type=hidden}
)]
</div>
[(#SAISIE{input,password}
{defaut=#ENV{password}}
{type=password}
{attributs=#GET{min}}
{autocomplete=off}
{label=#GET{chaine_langue}}
)]
[(#SAISIE{input,password_confirmation}
{defaut=#ENV{password_confirmation}}
{type=password}
{attributs=#GET{min}}
{autocomplete=off}
{label=<:comptespip:champ_password_confirm:>}
)]
[(#SET{min,#VAL{minlength=}|concat{#ENV{pass_longeur_mini,6}}})]
[(#SET{chaine_langue,#VAL{comptespip:champ_password}|_T{#ARRAY{min,#ENV{pass_longeur_mini}}}})]
[(#SAISIE{input,password}
{type=password}
{attributs=#GET{min}}
{label=#GET{chaine_langue}}
)]
[(#SAISIE{input,password_confirmation}
{type=password}
{label=<:comptespip:champ_password_confirm:>}
)]
</div>
</fieldset>
</div>
<div class="boutons">
[(#ENV{id_auteur}|!={new}|et{#AUTORISER{supprimer,comptespip}|oui}|et{#CONFIG{comptespip/interdire_suppression}|!={oui}|oui})
@ -111,3 +106,34 @@
</div></form>
</div>
<script type="text/javascript" src="[(#CHEMIN{prive/javascript/login-sha-min.js})]"></script>
<script type="text/javascript">
jQuery(function(){
setTimeout(()=> $('#champ_password_confirmation').val(''), 400);
jQuery('form#editer_compte_spip').on('submit', function(e){
['#champ_password', "#champ_password_confirmation"].forEach((champ)=>{
var pass = $(champ).val();
$(champ).val('');
if (pass
&& !pass.match(/^\{([0-9a-f]{32});([0-9a-f]{32})\}$/i)
&& !pass.match(/^\{([0-9a-f]{64});([0-9a-f]{64});([0-9a-f]{32});([0-9a-f]{32})\}$/i)
&& sha256_self_test() // verifions que le hash sha est operationnel
) {
var hash = hex_sha256(pass);
if ( hash ) {
if (champ === "#champ_password") {
$('input#champ_new_password').val(hash);
} else {
$('input#champ_new_password_confirmation').val(hash);
}
}
}
});
});
});
</script>

View file

@ -31,10 +31,14 @@ function formulaires_editer_compte_spip_charger_dist($id_auteur = 'new', $redir
$valeurs['confirmation_sms'] = '';
}
$valeurs['alea'] = '';
$valeurs['password'] = '';
$valeurs['password_confirmation'] = '';
$valeurs['pass_longeur_mini'] = _PASS_LONGUEUR_MINI;
$valeurs['alea'] = '';
$valeurs['new_password'] = '';
$valeurs['new_password_confirmation'] = '';
$valeurs['password'] = '';
$valeurs['password_confirmation'] = '';
$valeurs['pass_longeur_mini'] = _PASS_LONGUEUR_MINI;
return $valeurs;
}
@ -49,16 +53,16 @@ function formulaires_editer_compte_spip_verifier_dist($id_auteur = 'new', $redi
}
// mot de passe
if (_request('password') != _request('password_confirmation')){
$erreurs['password_confirmation'] = _T('info_passes_identiques');
if (_request('new_password') != _request('new_password_confirmation')){
$erreurs['new_password_confirmation'] = _T('info_passes_identiques');
}
// Mais si l'un des deux champs n'est pas rempli, cette erreur prend le dessus
if ($id_auteur === 'new') {
if (!_request('password')){
if (!_request('new_password')){
$erreurs['password'] = _T('info_obligatoire');
}
if (!_request('password_confirmation')){
if (!_request('new_password_confirmation')){
$erreurs['password_confirmation'] = _T('info_obligatoire');
}
}
@ -79,7 +83,7 @@ function formulaires_editer_compte_spip_verifier_dist($id_auteur = 'new', $redi
} else {
$f = 'test_inscription_dist';
}
$declaration = $f($mode, $mail, _request('nom'), $id_auteur);
$declaration = $f($mode, $mail, _request('nom'), $id);
if (is_string($declaration)) {
$k = (strpos($declaration, 'mail') !== false) ?
'mail_inscription' : 'nom_inscription';
@ -95,11 +99,11 @@ function formulaires_editer_compte_spip_verifier_dist($id_auteur = 'new', $redi
'id_auteur!='.intval($id_auteur)
]
)) {
if (($row['statut'] == '5poubelle') and empty($row['pass'])) {
if (($row['statut'] == '5poubelle') and empty($declaration['pass'])) {
// irrecuperable
$erreurs['message_erreur'] = _T('form_forum_access_refuse');
} else {
if (($row['statut'] != 'nouveau') and empty($row['pass'])) {
if (($row['statut'] != 'nouveau') and empty($declaration['pass'])) {
if (intval($row['statut']) > intval($mode)) {
set_request('_upgrade_auteur', $row['id_auteur']);
} else {
@ -124,6 +128,7 @@ function formulaires_editer_compte_spip_verifier_dist($id_auteur = 'new', $redi
$erreurs['mobile'] = _T('comptespip:telephone_deja_enregistre');
}
}
return $erreurs;
}
@ -140,105 +145,98 @@ function formulaires_editer_compte_spip_traiter_dist($id_auteur = 'new', $redir
}
include_spip('action/editer_auteur');
$password = _request('password');
include_spip('inc/acces');
$password = _request('new_password');
$update = true;
$set = [];
if (!intval($id_auteur)) {
$update = false;
if (function_exists('comptespip_associer_auteur')) {
$id_auteur = comptespip_associer_auteur();
} else {
$id_auteur = auteur_inserer();
}
$update = false;
if (lire_config('comptespip/login_telephone') === 'oui') {
$login = _request('telephone');
} else {
$login = 'login_'.$id_auteur;
$search = [ ' ', "'", 'é' ];
$replace = [ '_', '_', 'e' ];
$login = strtolower(str_replace($search, $replace, _request('nom')));
$login .= '_'.$id_auteur;
}
$set_inst['login'] = $login;
$set_inst['statut'] = $mode;
auteur_instituer($id_auteur, $set_inst);
/*
* Branchement sur le plugin Autorisations etendues
*/
$aut_modele = lire_config('comptespip/aut_modele');
if ($aut_modele and test_plugin_actif('auted')) {
$autorisations = sql_getfetsel('aut_modele', 'spip_aut_modeles', 'nom='.sql_quote($aut_modele));
$set['aut_nom'] = $aut_modele;
$set['autorisations'] = $autorisations;
$set['login'] = $login;
$set['statut'] = $mode;
if (strlen($password) < 50) {
include_spip('inc/acces');
include_spip('auth/sha256.inc');
$alea_actuel = creer_uniqid();
$pass = spip_sha256($alea_actuel . $password);
$set['pass'] = $pass;
$set['alea_actuel'] = $alea_actuel;
$set['alea_futur'] = $alea_actuel;
} else {
$set['pass'] = $password;
$set['alea_actuel'] = "";
$set['alea_futur'] = creer_uniqid();
}
} else {
if ($password) {
// si le password fait moins de 50 caracteres, on peut penser que le javascript n'a pas fonctionné, on crypte alors le mdp
if (strlen($password) < 50) {
include_spip('inc/acces');
include_spip('auth/sha256.inc');
$alea_actuel = creer_uniqid();
$pass = spip_sha256($alea_actuel . $password);
$set['pass'] = $pass;
$set['alea_actuel'] = $alea_actuel;
$set['alea_futur'] = $alea_actuel;
} else {
$set['pass'] = $password;
$set['alea_actuel'] = "";
$set['alea_futur'] = creer_uniqid();
}
}
if (lire_config('comptespip/login_telephone') === 'oui') {
$set['login'] = _request('telephone');
}
$set = pipeline(
'post_edition',
array(
'args' => array(
'table' => 'spip_auteurs',
'id_objet' => $id_auteur,
'action' => 'comptespip_creer_auteur',
),
'data' => $set
)
);
}
if ($password) {
auteur_instituer($id_auteur, [
'pass' => $password
]);
}
if (lire_config('comptespip/login_telephone') === 'oui') {
auteur_instituer($id_auteur, [
'login' => _request('telephone')
]);
/*
* Branchement sur le plugin Autorisations etendues
*/
$aut_modele = lire_config('comptespip/aut_modele');
if ($aut_modele and test_plugin_actif('auted')) {
$autorisations = sql_getfetsel('aut_modele', 'spip_aut_modeles', 'nom='.sql_quote($aut_modele));
$set['aut_nom'] = $aut_modele;
$set['autorisations'] = $autorisations;
}
if (!empty($saisies)) {
foreach ($saisies as $saisie) {
$champ = $saisie['options']['nom'];
if (
isset($saisies['options']['fonction'])
and $f = $saisies['options']['fonction']
) {
if (isset($f) and !empty($f)) {
$f($id_auteur, $champ, _request($champ));
} elseif (
isset($saisies['options']['modifier'])
and $m = $saisies['options']['modifier']
) {
$set[$champ] = $m($champ, _request($champ));
} else {
$set[$champ] = _request($champ);
if (_request('champ')) {
$set[$champ] = _request($champ);
}
}
}
if (count($set) > 0) {
$set = pipeline(
'post_edition',
array(
'args' => array(
'table' => 'spip_auteurs',
'id_objet' => $id_auteur,
'action' => 'comptespip_modifier_auteur',
'update' => $update
),
'data' => $set
)
);
// $r = sql_updateq('spip_auteurs', $set, 'id_auteur='.intval($id_auteur));
$r = auteur_modifier($id_auteur, $set);
}
}
// envoyer le mail d'inscription si nouveau compte
if (!$update) {
$envoyer_mail = charger_fonction('comptespip_mail_inscription','inc');
$envoyer_mail($id_auteur);
if (count($set) > 0) {
$r = sql_updateq('spip_auteurs', $set, 'id_auteur='.intval($id_auteur));
}
}
if ($update and lire_config('comptespip/modif_logo_auteur')) {
comptespip_save_logo_auteur($id_auteur);
}
include_spip('inc/invalideur');
suivre_invalideur("id='id_auteur/$id_auteur'");
@ -248,26 +246,10 @@ function formulaires_editer_compte_spip_traiter_dist($id_auteur = 'new', $redir
include_spip('inc/auth');
auth_loger($auteur);
$retour['redirect'] = "spip.php";
if (lire_config('comptespip/page_redirection_connexion')) {
$retour['redirect'] = parametre_url(generer_url_public(lire_config('comptespip/page_redirection_connexion'),'',true),'id_auteur',intval($id_auteur));
$retour = parametre_url(generer_url_public(lire_config('comptespip/page_redirection_connexion'),'',true),'id_auteur',intval($id_auteur));
}
if ($redirect) {
$retour['redirect'] = $redirect;
}
$retour['message_ok'] = _T('form_forum_identifiant_mail');
$retour = pipeline(
'comptespip_post_traiter',
array(
'args' => $set,
'data' => $retour
)
);
return $retour;
return array('message_ok' => _T('form_forum_identifiant_mail'), 'redirect' => $retour);
}
if ($update) {
@ -278,23 +260,15 @@ function formulaires_editer_compte_spip_traiter_dist($id_auteur = 'new', $redir
if ($r) {
$retour['message_erreur'] = _T('comptespip:erreur_edition_compte');
} else {
$retour['message_ok'] = _T('comptespip:modification_compte_ok');
} else {
$retour['message_erreur'] = _T('comptespip:erreur_edition_compte');
}
if ($redirect) {
$retour['redirect'] = $redirect;
}
$retour = pipeline(
'comptespip_post_traiter',
array(
'args' => $set,
'data' => $retour
)
);
return $retour;
}

View file

@ -13,23 +13,16 @@ if (!defined('_ECRIRE_INC_VERSION')){
* @return void
*/
function inc_comptespip_mail_inscription_dist(int $id_auteur, array $options = []) :void{
//$options['debug'] = true;
if (test_plugin_actif('gamumail') and sql_countsel('spip_gamumails', 'slug="mail_inscription"')) {
$envoyer_gamumail = charger_fonction('envoyer_gamumail', 'inc');
$envoyer_gamumail('mail_inscription', $id_auteur, $options);
$contexte = sql_fetsel('*', 'spip_auteurs', 'id_auteur='.intval($id_auteur));
if (isset($options['pass'])) {
$contexte['pass'] = $options['pass'];
}
else {
$contexte = sql_fetsel('*', 'spip_auteurs', 'id_auteur='.intval($id_auteur));
if (isset($options['pass'])) {
$contexte['pass'] = $options['pass'];
}
$mail_complet = $contexte['email'];
$mail_complet = $contexte['email'];
$message = recuperer_fond('modeles/mail_inscription',$contexte);
$sujet = lire_config('comptespip/mail_inscription_sujet');
$message = recuperer_fond('modeles/mail_inscription',$contexte);
$sujet = lire_config('comptespip/mail_inscription_sujet');
include_spip('inc/notifications');
notifications_envoyer_mails($mail_complet, $message, $sujet);
}
include_spip('inc/notifications');
notifications_envoyer_mails($mail_complet, $message, $sujet);
}

View file

@ -1,11 +0,0 @@
#CACHE{0}
[(#SESSION{id_auteur}|sinon_interdire_acces{[(#URL_PAGE{mon_compte})]})]
<div class="se_connecter">
<h3 class="comptespip_titre_form"><i class="fa fa-pencil fas fa-pen"></i> <:comptespip:editer_compte_spip:></h3>
<br>
<div class="pasAJAX">
[(#FORMULAIRE_EDITER_COMPTE_SPIP{#ENV{id_auteur}, #ENV{redirect}})]
</div>
</div>

View file

@ -36,8 +36,6 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'conf_formulaire_suppression' => "Configuration du formulaire de suppression de compte SPIP",
'champ_password' => "Mot de passe d'au moins @min@ caractères",
'champ_password_confirm' => "Confirmer votre mot de passe",
'confirmation_creation_compte' => 'Votre compte sur le site @url_site@ a bien été créé. Votre identifiant de connexion est l\'adresse mail sur laquelle vous recevez ce message.'."\r\n".'Merci de votre participation!',
'creation_compte' => 'Création de votre compte',
// E
'explication_non_suppression' => 'Le texte pour expliquer l\'impossibilité de supprimer son compte',
@ -54,7 +52,6 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'label_non_suppression' => 'Texte d\'explication',
// MM
'mail_inscription' => 'Mail d\'inscription au site',
'message_mail' => 'Voici vos identifiants pour vous connecter sur le site "@nom_site_spip@" (@adresse_login@) :',
'mot_de_passe' => 'Mot de passe',
'mon_compte' => 'Mon compte',

View file

@ -1,6 +1,6 @@
[(#REM)
FORK du modèle de SPIP
FORK deu modèle de SPIP
][(#HTTP_HEADER{Content-type: text/plain[; charset=(#CHARSET)]})]
[\[(#NOM_SITE_SPIP|concat{'\] : ',<:form_forum_identifiants:>}|nettoyer_titre_email)]

View file

@ -1,12 +1,11 @@
<paquet
prefix="comptespip"
categorie="edition"
version="1.1.0"
version="1.0.0"
etat="dev"
compatibilite="[3.3;4.*]"
compatibilite="[3.3.0-dev;3.3.*]"
logo="prive/themes/spip/images/comptespip-xx.svg"
documentation=""
schema="1.0.4"
>
<nom>CompteSPIP</nom>
@ -23,6 +22,6 @@
<pipeline nom="comptespip_desinscription" action="" />
<pipeline nom="comptespip_pre_inscription" action="" />
<pipeline nom="comptespip_pre_login" action="" />
<pipeline nom="comptespip_post_traiter" action="" />
</paquet>