4 if (!defined("_ECRIRE_INC_VERSION")) return;
6 include_spip('inc/editer');
9 // Pour le moment (à reprendre en SPIP 3.0), on définit en dur les types pouvant recevoir un héritage
10 return array('article','rubrique','breve','site');
13 function formulaires_editer_composition_heritages_noizetier_charger($id){
14 include_spip('inc/autoriser');
17 $type = noizetier_page_type($id);
18 $compo = noizetier_page_composition($id);
19 // Seulement si on a le droit de configurer le noizetier
20 // et qu'il s'agit d'une composition de rubrique
21 if (autoriser('configurer', 'noizetier') AND $type AND $type=='rubrique') {
22 $contexte['editable'] = true;
24 $contexte['message_erreur'] = _T('spip:erreur');
27 // Si on peut bien éditer la composition
28 if ($contexte['editable']){
29 $contexte['_noizetier_compositions'] = unserialize($GLOBALS['meta']['noizetier_compositions']);
30 $contexte['_heritiers'] = heritiers();
31 foreach($contexte['_heritiers'] as $t)
32 if (isset($contexte['_noizetier_compositions']['rubrique'][$compo]['branche'][$t]))
33 $contexte['heritage-'.$t] = $contexte['_noizetier_compositions']['rubrique'][$compo]['branche'][$t];
36 $contexte['editable'] = false;
42 function formulaires_editer_composition_heritages_noizetier_traiter($id){
43 include_spip('inc/autoriser');
44 include_spip('inc/noizetier');
46 $type = noizetier_page_type($id);
47 $compo = noizetier_page_composition($id);
48 if (autoriser('configurer', 'noizetier') AND $type AND $type=='rubrique') {
49 $noizetier_compositions = unserialize($GLOBALS['meta']['noizetier_compositions']);
51 foreach(heritiers() as $t)
52 if ($h = _request('heritage-'.$t))
54 if (count($branche)>0)
55 $noizetier_compositions['rubrique'][$compo]['branche'] = $branche;
57 unset($noizetier_compositions['rubrique'][$compo]['branche']);
58 ecrire_meta('noizetier_compositions',serialize($noizetier_compositions));
59 $retours['message_ok'] = _T('noizetier:formulaire_composition_mise_a_jour');
61 //Si on est dans l'espace privé, on redirige vers la liste des compos
62 if (_request('exec') == 'noizetier_composition_heritages')
63 $retours['redirect'] = generer_url_ecrire('noizetier_compositions');