82 lines
2 KiB
PHP
82 lines
2 KiB
PHP
<?php
|
|
if (!defined('_ECRIRE_INC_VERSION')) return;
|
|
|
|
function formulaires_save_aut_modele_charger_dist($id_auteur, $redirect = ''){
|
|
$valeurs = [];
|
|
|
|
if (intval($id_auteur)) {
|
|
$valeurs = array(
|
|
"id_auteur" => $id_auteur,
|
|
"nom_modele" => sql_getfetsel('aut_modele', 'spip_auteurs', 'id_auteur='.intval($id_auteur)),
|
|
"new_modele" => "",
|
|
"repercuter" => "oui",
|
|
);
|
|
}
|
|
|
|
return $valeurs;
|
|
}
|
|
|
|
function formulaires_save_aut_modele_verifier_dist($id_auteur, $redirect = ''){
|
|
$nom_modele = _request('nom_modele');
|
|
$new_modele = _request('new_modele');
|
|
$repercuter = _request('repercuter');
|
|
|
|
|
|
$erreurs = array();
|
|
if ($repercuter === 'nom') {
|
|
foreach (array ('new_modele ') as $obligatoire) {
|
|
if (empty($new_modele)){
|
|
$erreurs[$obligatoire] = 'Ce champs est obligatoire';
|
|
}
|
|
}
|
|
}
|
|
|
|
if ($repercuter === 'non' and $nom_modele === $new_modele) {
|
|
$erreurs['new_modele'] = _T('auted:forcer_changer_nom_du_modele');
|
|
}
|
|
|
|
return $erreurs;
|
|
}
|
|
|
|
function formulaires_save_aut_modele_traiter_dist($id_auteur, $redirect = ''){
|
|
$new_modele = _request('new_modele');
|
|
$repercuter = _request('repercuter');
|
|
|
|
$from = [
|
|
'spip_auteurs AS A',
|
|
'spip_aut_modeles AS M'
|
|
];
|
|
$where = [
|
|
'A.id_auteur='.intval($id_auteur),
|
|
'A.aut_modele=M.nom'
|
|
];
|
|
$r = sql_fetsel('M.id_aut_modele, M.modele, M.nom', $from, $where);
|
|
|
|
if (!empty($r)) {
|
|
if ($repercuter === 'oui') {
|
|
sql_updateq('spip_auteurs', ['autorisations' => $r['modele']], 'aut_modele='.sql_quote($r['nom']));
|
|
sql_updateq('spip_aut_modeles', ['modele' => $r['modele']], 'nom='.sql_quote($r['nom']));
|
|
}
|
|
|
|
if ($repercuter === 'non') {
|
|
sql_updateq('spip_auteurs', ['aut_modele' => $new_modele], 'id_auteur='.intval($id_auteur));
|
|
$set = [
|
|
'nom' => $new_modele,
|
|
'modele' => $r['autorisations'],
|
|
'statut' => 'publie'
|
|
];
|
|
sql_insertq('spip_aut_modeles', $set);
|
|
}
|
|
}
|
|
|
|
|
|
$retour = array();
|
|
|
|
|
|
$retour['message_ok'] = "bravo";
|
|
if ($redirect) {
|
|
$retour['redirect'] = $redirect;
|
|
}
|
|
|
|
return $retour;
|
|
}
|