71 lines
1.8 KiB
PHP
71 lines
1.8 KiB
PHP
<?php
|
|
if (!defined('_ECRIRE_INC_VERSION')) return;
|
|
|
|
function formulaires_editer_autorisations_charger_dist($id_auteur=0, $redirect=''){
|
|
$valeurs = ['auth_modele' => _AUTH_MODELE];
|
|
|
|
if (intval($id_auteur)) {
|
|
$valeurs["id_auteur"] = intval($id_auteur);
|
|
}
|
|
|
|
return $valeurs;
|
|
}
|
|
|
|
function formulaires_editer_autorisations_verifier_dist($id_auteur=0, $redirect=''){
|
|
$erreurs = array();
|
|
return $erreurs;
|
|
}
|
|
|
|
function formulaires_editer_autorisations_traiter_dist($id_auteur=0, $redirect=''){
|
|
include_spip('inc/session');
|
|
$retour = array();
|
|
|
|
|
|
$Tid_auteur = _request('Tid_auteur');
|
|
foreach ($Tid_auteur as $id) {
|
|
$Tauths = _request('id-' . $id);
|
|
$nom_modele = _request('modele-' . $id);
|
|
$Tautorisations = [];
|
|
|
|
if (!empty($Tauths)) {
|
|
foreach ($Tauths as $valeur) {
|
|
$Tautorisations[key($valeur)][]= $valeur[key($valeur)];
|
|
}
|
|
}
|
|
|
|
$set = [ 'autorisations' => json_encode($Tautorisations) ];
|
|
|
|
|
|
|
|
if ($nom_modele) {
|
|
$aut_modele = [
|
|
'nom' => $nom_modele,
|
|
'modele' => json_encode($Tautorisations),
|
|
'statut' => 'publie'
|
|
];
|
|
$r = sql_fetsel('id_aut_modele, modele, nom', 'spip_aut_modeles', 'nom='.sql_quote($nom_modele));
|
|
$id_aut_modele = $r['id_aut_modele'];
|
|
if ($id_aut_modele) {
|
|
if ($r['modele'] !== $aut_modele['modele']) {
|
|
$aut_modele['modifie'] = 'oui';
|
|
}
|
|
sql_updateq('spip_aut_modeles', $aut_modele, 'id_aut_modele='.intval($id_aut_modele));
|
|
} else {
|
|
sql_insertq('spip_aut_modeles', $aut_modele);
|
|
}
|
|
$set['aut_modele'] = $r['nom'];
|
|
}
|
|
|
|
sql_updateq('spip_auteurs', $set, 'id_auteur='.intval($id));
|
|
$auteur = sql_fetsel('*', 'spip_auteurs','id_auteur='.intval($id));
|
|
actualiser_sessions($auteur);
|
|
|
|
$retour['message_ok'] = "Enregistrement validé";
|
|
}
|
|
|
|
if ($redirect) {
|
|
$retour['redirect'] = $redirect;
|
|
}
|
|
|
|
return $retour;
|
|
}
|