[SPIP] ~v3.0.20-->v3.0.25
[lhc/web/clavette_www.git] / www / prive / formulaires / editer_article.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2016 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
8 * *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
12
13 if (!defined('_ECRIRE_INC_VERSION')) return;
14
15 include_spip('inc/actions');
16 include_spip('inc/editer');
17
18 // http://doc.spip.org/@inc_editer_article_dist
19 function formulaires_editer_article_charger_dist($id_article='new', $id_rubrique=0, $retour='', $lier_trad=0, $config_fonc='articles_edit_config', $row=array(), $hidden=''){
20 $valeurs = formulaires_editer_objet_charger('article',$id_article,$id_rubrique,$lier_trad,$retour,$config_fonc,$row,$hidden);
21 // il faut enlever l'id_rubrique car la saisie se fait sur id_parent
22 // et id_rubrique peut etre passe dans l'url comme rubrique parent initiale
23 // et sera perdue si elle est supposee saisie
24 return $valeurs;
25 }
26
27 /**
28 * Identifier le formulaire en faisant abstraction des parametres qui
29 * ne representent pas l'objet edite
30 */
31 function formulaires_editer_article_identifier_dist($id_article='new', $id_rubrique=0, $retour='', $lier_trad=0, $config_fonc='articles_edit_config', $row=array(), $hidden=''){
32 return serialize(array(intval($id_article),$lier_trad));
33 }
34
35 // Choix par defaut des options de presentation
36 // http://doc.spip.org/@articles_edit_config
37 function articles_edit_config($row)
38 {
39 global $spip_lang;
40
41 $config = $GLOBALS['meta'];
42 $config['lignes'] = 8;
43 $config['langue'] = $spip_lang;
44
45 $config['restreint'] = ($row['statut'] == 'publie');
46 return $config;
47 }
48
49 function formulaires_editer_article_verifier_dist($id_article='new', $id_rubrique=0, $retour='', $lier_trad=0, $config_fonc='articles_edit_config', $row=array(), $hidden=''){
50 // auto-renseigner le titre si il n'existe pas
51 titre_automatique('titre',array('descriptif','chapo','texte'));
52 // on ne demande pas le titre obligatoire : il sera rempli a la volee dans editer_article si vide
53 $erreurs = formulaires_editer_objet_verifier('article',$id_article,array('id_parent'));
54 if (!function_exists('autoriser'))
55 include_spip('inc/autoriser'); // si on utilise le formulaire dans le public
56 if (!isset($erreurs['id_parent'])
57 AND !autoriser('creerarticledans','rubrique',_request('id_parent'))){
58 $erreurs['id_parent'] = _T('info_creerdansrubrique_non_autorise');
59 }
60 return $erreurs;
61 }
62
63 // http://doc.spip.org/@inc_editer_article_dist
64 function formulaires_editer_article_traiter_dist($id_article='new', $id_rubrique=0, $retour='', $lier_trad=0, $config_fonc='articles_edit_config', $row=array(), $hidden=''){
65 // ici on ignore changer_lang qui est poste en cas de trad,
66 // car l'heuristique du choix de la langue est pris en charge par article_inserer
67 // en fonction de la config du site et de la rubrique choisie
68 set_request("changer_lang");
69 return formulaires_editer_objet_traiter('article',$id_article,$id_rubrique,$lier_trad,$retour,$config_fonc,$row,$hidden);
70 }
71
72 ?>