Fix : remplacement des limites de taille de fichiers en dur dans le traiter du bigform de la page d'édition des articles et remplacement par la récup des options configurées dans bigup. Actualisation du fichier PHP du CVT des inscriptions pour compatibilité SPIP 4.2 (TODO : passer sur le plugin mot_de_pass_des_linscription + un pipline Gamumail pour l'envoi de la notif)
This commit is contained in:
parent
3e7879fc8c
commit
826c97f418
5 changed files with 215 additions and 162 deletions
|
@ -118,10 +118,10 @@ function autoriser_article_lire($faire, $type, $id, $qui, $opt) {
|
|||
|
||||
function autoriser_article_modifier($faire, $type, $id, $qui, $opt) {
|
||||
|
||||
if(in_array($qui['id_auteur'],auteurs_objet('article',$id))){
|
||||
if (in_array($qui['id_auteur'],auteurs_objet('article',$id))){
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
else {
|
||||
return in_array($qui['statut'], array('0minirezo'));
|
||||
}
|
||||
}
|
||||
|
@ -148,11 +148,11 @@ function autoriser_sujet_creer($faire, $type, $id, $qui, $opt) {
|
|||
}
|
||||
|
||||
function autoriser_sujet_editer($faire, $type, $id, $qui, $opt) {
|
||||
// Seul les admins et l'auteur peuvent le supprimer
|
||||
if(in_array($qui['id_auteur'],auteurs_objet('article',$id))){
|
||||
// Seul les admins et l'auteur peuvent le supprimer
|
||||
if (in_array($qui['id_auteur'],auteurs_objet('article',$id))){
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
else {
|
||||
return in_array($qui['statut'],array('0minirezo'));
|
||||
}
|
||||
}
|
||||
|
@ -160,9 +160,9 @@ function autoriser_sujet_editer($faire, $type, $id, $qui, $opt) {
|
|||
function autoriser_forum_voir($faire, $type, $id, $qui, $opt) {
|
||||
$id_auteur = $qui['id_auteur'];
|
||||
// Il faut être au moins membre
|
||||
if ($qui['statut']=='1comite'){
|
||||
if ($qui['statut'] == '1comite'){
|
||||
// si le forum est privé, il faut être membre du bureau
|
||||
if ($id==lire_config('balint/id_rub_forum_prive')){
|
||||
if ($id == lire_config('balint/id_rub_forum_prive')){
|
||||
if (sql_getfetsel('bureau','spip_auteurs',"id_auteur=$id_auteur")=='on'){
|
||||
return true;
|
||||
}
|
||||
|
@ -178,4 +178,6 @@ function autoriser_forum_voir($faire, $type, $id, $qui, $opt) {
|
|||
if ($qui['statut']=='0minirezo'){
|
||||
return true;
|
||||
}
|
||||
// si aucun des cas précédents (pas loggué par ex)
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -1,23 +1,18 @@
|
|||
[(#REM) On affiche la première rubrique par défaut]
|
||||
|
||||
<section id="espace_membre" class="section-top section-bottom container">
|
||||
|
||||
|
||||
<?php
|
||||
<?php
|
||||
if (isset($GLOBALS['visiteur_session']['id_auteur']) AND $GLOBALS['visiteur_session']['id_auteur']) {
|
||||
?>
|
||||
?>
|
||||
|
||||
<div class="cadre-blanc">
|
||||
<h1 class="mb-4">Espace membre</h1>
|
||||
<?php
|
||||
if (isset($GLOBALS['visiteur_session']['statut']) AND in_array($GLOBALS['visiteur_session']['statut'],array("0minirezo","1comite"))) {
|
||||
?>
|
||||
|
||||
<div class="mb-3">
|
||||
Vous êtes connecté·e en tant que <a class="boutons" href="[(#URL_PAGE{modifier_auteur})]"><?php echo $GLOBALS['visiteur_session']['nom'] ?></a>.<a href="[(#URL_LOGOUT{#SELF})]"><i class="fa fa-sign-out ml-3" aria-hidden="true"></i> Déconnexion</a>
|
||||
</div>
|
||||
|
||||
|
||||
<INCLURE{fond=inclure/espace_membre_contenu,env,ajax}>
|
||||
<?php
|
||||
}
|
||||
|
@ -32,10 +27,10 @@
|
|||
?>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
?>
|
||||
<div class="cadre-blanc">
|
||||
<h1 class="mb-4">Espace membre</h1>
|
||||
Cet espace est réservé aux membres de l'association.</br>
|
||||
|
@ -51,10 +46,8 @@
|
|||
[(#FORMULAIRE_INSCRIPTION{'','',#SELF})]
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
?>
|
||||
</section>
|
||||
|
||||
|
|
|
@ -95,7 +95,7 @@
|
|||
<fieldset class="upload_vignette">
|
||||
<legend><i class="fas fa-paperclip"></i> Images et fichiers</legend>
|
||||
<label for=""><small>largeur conseillée: entre 1024 et 2048 pixels</small></label>
|
||||
<div class="ajax">
|
||||
<div class="ajax les_photos">
|
||||
<INCLURE{fond=inclure/bigform,env}>
|
||||
</div>
|
||||
<INCLURE{fond=inclure/editer_docs_article,env,id_article=#ENV{id_article},ajax=les_photos,type=article}>
|
||||
|
@ -119,7 +119,6 @@
|
|||
]
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-lg-3 formulaire-col-droite">
|
||||
<BOUCLE_doc(DOCUMENTS){id_article}{extension==jpg|png|gif}{statut in prop,prepa,publie}{credits=une}>
|
||||
<div class="photo-premier-plan">
|
||||
|
@ -135,12 +134,12 @@
|
|||
</select>
|
||||
</fieldset>
|
||||
|
||||
[(#SESSION{statut}|=={0minirezo}|oui)
|
||||
[(#SESSION{statut}|=={0minirezo}|oui)
|
||||
[(#VAL{}|setenv{id_auteur})]
|
||||
]
|
||||
[(#SESSION{statut}|=={0minirezo}|non)
|
||||
]
|
||||
[(#SESSION{statut}|=={0minirezo}|non)
|
||||
[(#SESSION{id_auteur}|setenv{id_auteur})]
|
||||
]
|
||||
]
|
||||
|
||||
<fieldset>
|
||||
<legend><i class="fas fa-globe"></i> Groupe</legend>
|
||||
|
@ -194,8 +193,6 @@
|
|||
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<script src="[(#CHEMIN{js/tag_editor.min.js}|timestamp)]" type="text/javascript"></script>
|
||||
|
|
|
@ -102,7 +102,10 @@ function formulaires_editer_post_verifier_dist($id_article=0, $redirect=''){
|
|||
}
|
||||
|
||||
$bigform = charger_fonction('bigform_verifier','inc');
|
||||
$options = ['mime' => 'tout_mime','taille_max'=>'5000','largeur_max'=>'2048','hauteur_max'=>'2048'];
|
||||
$taille_max = lire_config('bigup/max_file_size');
|
||||
$largeur_max = (defined('_IMG_MAX_WIDTH') ? _IMG_MAX_WIDTH : 2048);
|
||||
$hauteur_max = (defined('_IMG_MAX_HEIGHT') ? _IMG_MAX_HEIGHT : 2048);
|
||||
$options = ['mime' => 'tout_mime','taille_max'=> $taille_max, 'largeur_max'=> $largeur_max, 'hauteur_max'=> $hauteur_max];
|
||||
$bigform($options,$erreurs);
|
||||
|
||||
return $erreurs;
|
||||
|
|
|
@ -14,8 +14,33 @@ if (!defined('_ECRIRE_INC_VERSION')) {
|
|||
return;
|
||||
}
|
||||
|
||||
function formulaires_inscription_charger_dist($mode = '', $id = 0, $redirect ='') {
|
||||
global $visiteur_session;
|
||||
/**
|
||||
*
|
||||
* #FORMULAIRE_INSCRIPTION
|
||||
* #FORMULAIRE_INSCRIPTION{6forum}
|
||||
* #FORMULAIRE_INSCRIPTION{1comite,#ARRAY{id,#ENV{id_rubrique}}}
|
||||
*
|
||||
* Pour rediriger l'utilisateur apres soumission du formulaire vers une page qui lui dit de verifier ses mails par exemple :
|
||||
* #FORMULAIRE_INSCRIPTION{6forum,'',#URL_PAGE{verifiez-vos-mails}}
|
||||
*
|
||||
* Pour rediriger l'utilisateur apres Clic dans le lien du mail de confirmation, pour lui confirmer son inscription par exemple
|
||||
* #FORMULAIRE_INSCRIPTION{6forum,#ARRAY{redirect,#URL_PAGE{confirmation-inscription}}}
|
||||
*
|
||||
* Tout ensemble
|
||||
* #FORMULAIRE_INSCRIPTION{6forum,#ARRAY{redirect,#URL_PAGE{confirmation-inscription}}, #URL_PAGE{verifiez-vos-mails}}
|
||||
*
|
||||
* Syntaxe legacy :
|
||||
* #FORMULAIRE_INSCRIPTION{1comite,#ENV{id_rubrique}}
|
||||
*
|
||||
*
|
||||
* @param string $mode
|
||||
* @param array $options
|
||||
* @param string $retour
|
||||
* @return array|false
|
||||
*/
|
||||
function formulaires_inscription_charger_dist($mode = '', $options = [], $retour = '') {
|
||||
|
||||
$id = ($options['id'] ?? 0);
|
||||
|
||||
// fournir le mode de la config ou tester si l'argument du formulaire est un mode accepte par celle-ci
|
||||
// pas de formulaire si le mode est interdit
|
||||
|
@ -25,10 +50,11 @@ function formulaires_inscription_charger_dist($mode = '', $id = 0, $redirect =''
|
|||
}
|
||||
|
||||
// pas de formulaire si on a déjà une session avec un statut égal ou meilleur au mode
|
||||
if (isset($visiteur_session['statut']) && ($visiteur_session['statut'] <= $mode)) {
|
||||
if (isset($GLOBALS['visiteur_session']['statut']) and ($GLOBALS['visiteur_session']['statut'] <= $mode)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
$valeurs = array('nom_inscription' => '', 'mail_inscription' => '', 'id' => $id, '_mode' => $mode);
|
||||
|
||||
$valeurs['password'] = '';
|
||||
|
@ -37,14 +63,21 @@ function formulaires_inscription_charger_dist($mode = '', $id = 0, $redirect =''
|
|||
return $valeurs;
|
||||
}
|
||||
|
||||
// Si inscriptions pas autorisees, retourner une chaine d'avertissement
|
||||
function formulaires_inscription_verifier_dist($mode = '', $id = 0, $redirect ='') {
|
||||
|
||||
$erreurs = [];
|
||||
include_spip('inc/config');
|
||||
|
||||
set_request("_upgrade_auteur"); // securite
|
||||
/**
|
||||
* Si inscriptions pas autorisees, retourner une chaine d'avertissement
|
||||
*
|
||||
* @param string $mode
|
||||
* @param array $options
|
||||
* @param string $retour
|
||||
* @return array
|
||||
*/
|
||||
function formulaires_inscription_verifier_dist($mode = '', $options = [], $retour = '') {
|
||||
set_request('_upgrade_auteur'); // securite
|
||||
include_spip('inc/filtres');
|
||||
$erreurs = array();
|
||||
|
||||
$id = ($options['id'] ?? 0);
|
||||
|
||||
include_spip('inc/autoriser');
|
||||
if (!autoriser('inscrireauteur', $mode, $id)
|
||||
|
@ -54,12 +87,12 @@ function formulaires_inscription_verifier_dist($mode = '', $id = 0, $redirect ='
|
|||
}
|
||||
|
||||
if (!$nom = _request('nom_inscription')) {
|
||||
$erreurs['nom_inscription'] = _T("info_obligatoire");
|
||||
$erreurs['nom_inscription'] = _T('info_obligatoire');
|
||||
} elseif (!nom_acceptable(_request('nom_inscription'))) {
|
||||
$erreurs['nom_inscription'] = _T("ecrire:info_nom_pas_conforme");
|
||||
$erreurs['nom_inscription'] = _T('ecrire:info_nom_pas_conforme');
|
||||
}
|
||||
if (!$mail = strval(_request('mail_inscription'))) {
|
||||
$erreurs['mail_inscription'] = _T("info_obligatoire");
|
||||
$erreurs['mail_inscription'] = _T('info_obligatoire');
|
||||
}
|
||||
|
||||
// compatibilite avec anciennes fonction surchargeables
|
||||
|
@ -71,7 +104,7 @@ function formulaires_inscription_verifier_dist($mode = '', $id = 0, $redirect ='
|
|||
} else {
|
||||
$f = 'test_inscription_dist';
|
||||
}
|
||||
$declaration = $f($mode, $mail, $nom, $id);
|
||||
$declaration = $f($mode, $mail, $nom, $options);
|
||||
if (is_string($declaration)) {
|
||||
$k = (strpos($declaration, 'mail') !== false) ?
|
||||
'mail_inscription' : 'nom_inscription';
|
||||
|
@ -79,23 +112,25 @@ function formulaires_inscription_verifier_dist($mode = '', $id = 0, $redirect ='
|
|||
} else {
|
||||
include_spip('base/abstract_sql');
|
||||
|
||||
if ($row = sql_fetsel("statut, id_auteur, login, email", "spip_auteurs",
|
||||
"email=" . sql_quote($declaration['email']))
|
||||
) {
|
||||
if (($row['statut'] == '5poubelle') and !$declaration['pass']) // irrecuperable
|
||||
{
|
||||
if ($row = sql_fetsel(
|
||||
'statut, id_auteur, login, email',
|
||||
'spip_auteurs',
|
||||
'email=' . sql_quote($declaration['email'])
|
||||
)) {
|
||||
if (($row['statut'] == '5poubelle') and empty($declaration['pass'])) {
|
||||
// irrecuperable
|
||||
$erreurs['message_erreur'] = _T('form_forum_access_refuse');
|
||||
} else {
|
||||
if (($row['statut'] != 'nouveau') and !$declaration['pass']) {
|
||||
if (($row['statut'] != 'nouveau') and empty($declaration['pass'])) {
|
||||
if (intval($row['statut']) > intval($mode)) {
|
||||
set_request("_upgrade_auteur", $row['id_auteur']);
|
||||
set_request('_upgrade_auteur', $row['id_auteur']);
|
||||
} else {
|
||||
// deja inscrit
|
||||
$erreurs['message_erreur'] = _T('form_forum_email_deja_enregistre');
|
||||
}
|
||||
}
|
||||
}
|
||||
spip_log($row['id_auteur'] . " veut se reinscrire");
|
||||
spip_log($row['id_auteur'] . ' veut se resinscrire');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -121,20 +156,34 @@ function formulaires_inscription_verifier_dist($mode = '', $id = 0, $redirect ='
|
|||
return $erreurs;
|
||||
}
|
||||
|
||||
function formulaires_inscription_traiter_dist($mode = '', $id = 0, $redirect ='') {
|
||||
/**
|
||||
* Si inscriptions pas autorisees, retourner une chaine d'avertissement
|
||||
*
|
||||
* @param string $mode
|
||||
* @param array $options
|
||||
* @param string $retour
|
||||
* @return array
|
||||
*/
|
||||
function formulaires_inscription_traiter_dist($mode = '', array $options = [], $retour = '') {
|
||||
if ($retour) {
|
||||
refuser_traiter_formulaire_ajax();
|
||||
}
|
||||
|
||||
include_spip('inc/filtres');
|
||||
include_spip('inc/autoriser');
|
||||
|
||||
$id = ($options['id'] ?? 0);
|
||||
|
||||
if (!autoriser('inscrireauteur', $mode, $id)) {
|
||||
$desc = "rien a faire ici";
|
||||
$desc = 'rien a faire ici';
|
||||
} else {
|
||||
if ($id_auteur = _request('_upgrade_auteur')) {
|
||||
include_spip("action/editer_auteur");
|
||||
autoriser_exception("modifier", "auteur", $id_auteur);
|
||||
autoriser_exception("instituer", "auteur", $id_auteur);
|
||||
include_spip('action/editer_auteur');
|
||||
autoriser_exception('modifier', 'auteur', $id_auteur);
|
||||
autoriser_exception('instituer', 'auteur', $id_auteur);
|
||||
auteur_modifier($id_auteur, array('statut' => $mode));
|
||||
autoriser_exception("modifier", "auteur", $id_auteur, false);
|
||||
autoriser_exception("instituer", "auteur", $id_auteur, false);
|
||||
autoriser_exception('modifier', 'auteur', $id_auteur, false);
|
||||
autoriser_exception('instituer', 'auteur', $id_auteur, false);
|
||||
|
||||
return array('message_ok' => _T('form_forum_email_deja_enregistre'), 'id_auteur' => $id_auteur);
|
||||
}
|
||||
|
@ -148,7 +197,7 @@ function formulaires_inscription_traiter_dist($mode = '', $id = 0, $redirect =''
|
|||
$mail_destination = sql_getfetsel('email','spip_auteurs',"id_auteur=" . lire_config('balint/id_contact'));
|
||||
|
||||
$inscrire_auteur = charger_fonction('inscrire_auteur', 'action');
|
||||
$desc = $inscrire_auteur($mode, $mail_complet, $nom, array('id' => $id));
|
||||
$desc = $inscrire_auteur($mode, $mail_complet, $nom, $options);
|
||||
|
||||
// AJOUT GAMUZA - BALINT
|
||||
$msg = "Une personne vient de s'inscrire sur le site de l'AIPB :
|
||||
|
@ -195,7 +244,16 @@ function formulaires_inscription_traiter_dist($mode = '', $id = 0, $redirect =''
|
|||
return array('message_erreur' => $desc);
|
||||
} // OK
|
||||
else {
|
||||
return array('redirect' => $redirect, 'message_ok' => _T('form_forum_identifiant_mail'), 'id_auteur' => $desc['id_auteur']);
|
||||
$retours = array(
|
||||
'message_ok' => _T('form_forum_identifiant_mail'),
|
||||
'id_auteur' => $desc['id_auteur'],
|
||||
);
|
||||
|
||||
// Si on demande à rediriger juste après validation du formulaire
|
||||
if ($retour) {
|
||||
$retours['redirect'] = $retour;
|
||||
}
|
||||
|
||||
return $retours;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue