[PLUGINS] +clavettes et dependances
[lhc/web/clavette_www.git] / www / plugins / pages / formulaires / editer_identifiant_page.php
1 <?php
2 /**
3 * Editer l'identifiant page d'un article
4 *
5 * @plugin Pages Uniques
6 * @copyright 2013
7 * @author RastaPopoulos
8 * @licence GNU/GPL
9 * @package SPIP\Pages\Formulaires
10 * @link http://contrib.spip.net/Pages-uniques
11 */
12
13 if (!defined('_ECRIRE_INC_VERSION')) return;
14
15 function formulaires_editer_identifiant_page_charger($id_article, $retour=''){
16 $valeurs['champ_page'] = generer_info_entite($id_article,'article','page');
17 $valeurs['_saisie_en_cours'] = (_request('champ_page')!==null);
18 return $valeurs;
19 }
20
21 /**
22 * Identifier le formulaire en faisant abstraction des parametres qui
23 * ne representent pas l'objet edite
24 */
25 function formulaires_editer_identifiant_page_identifier_dist($id_article, $retour=''){
26 return serialize(array('article', $id_article));
27 }
28
29 /**
30 * Verification avant traitement
31 *
32 * @param integer $id_article
33 * @param string $retour
34 * @return Array Tableau des erreurs
35 */
36 function formulaires_editer_identifiant_page_verifier_dist($id_article, $retour=''){
37 $erreurs = array();
38 /*
39 if ($page = _request('champ_page')) {
40 // nombre de charactères : 40 max
41 if (strlen($page) > 40)
42 $erreurs['champ_page'] = _T('pages:erreur_champ_page_taille');
43 // format : charactères alphanumériques en minuscules ou "_"
44 elseif (!preg_match('/^[a-z0-9_]+$/', $page))
45 $erreurs['champ_page'] = _T('pages:erreur_champ_page_format');
46 // doublon
47 elseif (sql_countsel(table_objet_sql('article'), "page=".sql_quote($page) . " AND id_article!=".intval($id_article)))
48 $erreurs['champ_page'] = _T('pages:erreur_champ_page_doublon');
49 }
50 */
51 return $erreurs;
52 }
53
54 /**
55 * Traitement
56 *
57 * @param integer $id_article
58 * @param string $retour
59 * @return Array
60 */
61 function formulaires_editer_identifiant_page_traiter_dist($id_article, $retour=''){
62
63 if (
64 _request('changer')
65 and $page = _request('champ_page')
66 ) {
67 include_spip('action/editer_objet');
68 objet_modifier('article',$id_article,array('page'=>$page));
69 }
70
71 set_request('champ_page');
72 $res['editable'] = true;
73 if ($retour)
74 $res['redirect'] = $retour;
75
76 return $res;
77 }
78
79 ?>