source: spip-zone/_plugins_/massicot/trunk/formulaires/massicoter_image.php @ 103520

Last change on this file since 103520 was 103520, checked in by bystrano@…, 3 years ago

éviter de montrer le sélecteur de formats s'il n'y en a aucun

File size: 2.6 KB
Line 
1<?php
2/**
3 * Traitements du formulaire de massicotage
4 *
5 * @plugin         Massicot
6 * @copyright  2015
7 * @author         Michel @ Vertige ASBL
8 * @licence        GNU/GPL
9 */
10
11/**
12 * Saisies du formulaire de massicotage
13 *
14 * @return array
15 *         Tableau des saisies du formulaire
16 */
17function formulaires_massicoter_image_saisies_dist($objet, $id_objet, $redirect, $format = null, $role = null) {
18
19        $saisies = array(
20                array(
21                        'saisie' => 'hidden',
22                        'options' => array(
23                                'nom' => 'zoom',
24                        ),
25                ),
26                array(
27                        'saisie' => 'hidden',
28                        'options' => array(
29                                'nom' => 'x1',
30                        ),
31                ),
32                array(
33                        'saisie' => 'hidden',
34                        'options' => array(
35                                'nom' => 'x2',
36                        ),
37                ),
38                array(
39                        'saisie' => 'hidden',
40                        'options' => array(
41                                'nom' => 'y1',
42                        ),
43                ),
44                array(
45                        'saisie' => 'hidden',
46                        'options' => array(
47                                'nom' => 'y2',
48                        ),
49                ),
50        );
51
52        if (isset($GLOBALS['presets_format_massicot'])
53                        and is_array($GLOBALS['presets_format_massicot'])
54                        and count($GLOBALS['presets_format_massicot'])) {
55                $datas = array();
56                foreach ($GLOBALS['presets_format_massicot'] as $preset) {
57                        $cle = $preset['largeur'] . ':' . $preset['hauteur'];
58                        $datas[$cle] = _T($preset['nom']);
59                }
60
61                $saisies[] = array(
62                        'saisie' => 'selection',
63                        'options' => array(
64                                'nom' => 'format',
65                                'label' => _T('massicot:label_format'),
66                                'datas' => $datas,
67                        ),
68                );
69        }
70
71        return $saisies;
72}
73
74/**
75 * Chargement du formulaire de massicotage
76 *
77 * Déclarer les champs postés et y intégrer les valeurs par défaut
78 *
79 * @return array
80 *         Environnement du formulaire
81 */
82function formulaires_massicoter_image_charger_dist($objet, $id_objet, $redirect, $format = null, $role = null) {
83
84        $parametres = massicot_get_parametres($objet, $id_objet, $role);
85
86        if (! $parametres) {
87                $parametres = array(
88                        'zoom' => 1,
89                );
90        }
91
92        if ($format) {
93                $parametres['format'] = $format;
94        }
95
96        $parametres['objet']    = $objet;
97        $parametres['id_objet'] = $id_objet;
98        $parametres['role']     = $role;
99
100        return $parametres;
101}
102
103/**
104 * Traitement du formulaire de massicotage
105 *
106 * Traiter les champs postés
107 *
108 * @return array
109 *         Retours des traitements
110 */
111function formulaires_massicoter_image_traiter_dist($objet, $id_objet, $redirect, $format = null, $role = null) {
112
113        if (! _request('annuler')) {
114                $parametres = array(
115                        'zoom' => _request('zoom'),
116                        'x1'   => _request('x1'),
117                        'x2'   => _request('x2'),
118                        'y1'   => _request('y1'),
119                        'y2'   => _request('y2'),
120                        'role' => $role,
121                );
122
123                if ($err = massicot_enregistrer($objet, $id_objet, $parametres)) {
124                        spip_log($err, 'massicot.'._LOG_ERREUR);
125                }
126        }
127
128        return array(
129                'redirect' => $redirect,
130        );
131}
Note: See TracBrowser for help on using the repository browser.