source: extensions/manage_info_photos/admin.php @ 30676

Last change on this file since 30676 was 30676, checked in by ddtddt, 9 years ago

[extensions] - manage_info_photos

File size: 17.8 KB
Line 
1<?php
2
3if (!defined('PHPWG_ROOT_PATH'))
4    die('Hacking attempt!');
5global $template, $conf, $user;
6include_once(PHPWG_ROOT_PATH . 'admin/include/tabsheet.class.php');
7load_language('plugin.lang', ADD_INFO_PHOTO_PATH);
8$my_base_url = get_admin_plugin_menu_link(__FILE__);
9
10// +-----------------------------------------------------------------------+
11// | Check Access and exit when user status is not ok                      |
12// +-----------------------------------------------------------------------+
13check_status(ACCESS_ADMINISTRATOR);
14
15//-------------------------------------------------------- sections definitions
16if (!isset($_GET['tab']))
17    $page['tab'] = 'define_information';
18else
19    $page['tab'] = $_GET['tab'];
20
21
22if ($page['tab'] != 'iap') {
23    $tabsheet = new tabsheet();
24    $tabsheet->add('addip', l10n('Information\'s organization'), ADD_INFO_PHOTO_ADMIN . '-define_information');
25    //$tabsheet->add('configuration', l10n('Configuration'), ADD_INFO_PHOTO_ADMIN . '-configuration');
26    $tabsheet->select($page['tab']);
27    $tabsheet->assign();
28} else if ($_GET['tab'] == 'iap') {
29
30    $page['active_menu'] = get_active_menu('photo'); // force oppening "Photos" menu block
31
32    /* Basic checks */
33    check_status(ACCESS_ADMINISTRATOR);
34
35    check_input_parameter('image_id', $_GET, false, PATTERN_ID);
36    $id_img = $_GET['image_id'];
37    $admin_photo_base_url = get_root_url() . 'admin.php?page=photo-' . $_GET['image_id'];
38
39    $page['tab'] = 'iap';
40
41    $tabsheet = new tabsheet();
42    $tabsheet->set_id('photo');
43    $tabsheet->select('iap');
44    $tabsheet->assign();
45
46    $template->assign(
47            'gestionD', array(
48        'A' => 'a'
49    ));
50   
51    $PAED = pwg_db_fetch_assoc(pwg_query("SELECT state FROM " . PLUGINS_TABLE . " WHERE id = 'ExtendedDescription';"));
52    $PAED = pwg_db_fetch_assoc(pwg_query("SELECT state FROM " . PLUGINS_TABLE . " WHERE id = 'ExtendedDescription';"));
53    if($PAED['state'] == 'active'){
54        add_event_handler('AP_render_content', 'get_user_language_desc');
55                $template->assign('useED',1);
56    }else{
57        $template->assign('useED',0);
58    }
59
60    $tab_add_info_one_photo = tab_add_info_by_photo($_GET['image_id']);
61    if (pwg_db_num_rows($tab_add_info_one_photo)) {
62        while ($info_photos = pwg_db_fetch_assoc($tab_add_info_one_photo)) {
63
64            $d = data_info_photos($id_img, $info_photos['id_info_pho']);
65            $row = pwg_db_fetch_assoc($d);
66
67            $items = array(
68                'IDPHO' => $_GET['image_id'],
69                'IDINFOPHO' => $info_photos['id_info_pho'],
70                'AIPDESIGNATION' => trigger_change('AP_render_content',$info_photos['designation']),
71                'AIPDATA' => $row['data'],
72            );
73
74            $template->append('info_photos', $items);
75        }
76    }
77
78    if (isset($_POST['submitaddinfoimg'])) {
79        foreach ($_POST['data'] AS $id_info_pho => $data) {
80            $q = 'SELECT 1 FROM ' . ADD_INFO_PHOTO_DATA_TABLE . ' WHERE id_img=' . $id_img . ' AND id_info_pho=' . $id_info_pho;
81            $test = pwg_query($q);
82            $row = pwg_db_fetch_assoc($test);
83            if (count($row) > 0) {
84                if ($data != '') {
85                    $query = 'UPDATE ' . $prefixeTable . 'add_info_photos_data SET data="' . $data . '" WHERE id_img=' . $id_img . ' AND id_info_pho=' . $id_info_pho;
86                    pwg_query($query);
87                } else {
88                    $query = 'DELETE FROM ' . $prefixeTable . 'add_info_photos_data WHERE id_img=' . $id_img . ' AND id_info_pho=' . $id_info_pho;
89                    pwg_query($query);
90                }
91            } else if ($data != '') {
92                $query = 'INSERT ' . $prefixeTable . 'add_info_photos_data(id_img,id_info_pho,data) VALUES (' . $id_img . ',' . $id_info_pho . ',"' . $data . '");';
93                pwg_query($query);
94            }
95           
96        }
97        $redirect_url = ADD_INFO_PHOTO_ADMIN . '-iap&amp;image_id=' . $id_img;
98        $_SESSION['page_infos'] = array(l10n('Personal info photo update'));
99        redirect($redirect_url);
100    }
101}
102
103switch ($page['tab']) {
104    case 'define_information':
105        $admin_base_url = ADD_INFO_PHOTO_ADMIN . '-define_information';
106        $template->assign(
107                'addinfotemplate', array(
108            'addinfo' => l10n('addinfo'),
109            'U_HOMEP' => $admin_base_url,
110                   
111        ));
112       
113    $PAED = pwg_db_fetch_assoc(pwg_query("SELECT state FROM " . PLUGINS_TABLE . " WHERE id = 'ExtendedDescription';"));
114    if($PAED['state'] == 'active'){
115        add_event_handler('AP_render_content', 'get_user_language_desc');
116                $template->assign('useED',1);
117    }else{
118        $template->assign('useED',0);
119    }
120       
121        $admin_base_url = ADD_INFO_PHOTO_ADMIN . '-define_information';
122        $tab_info_photos = tab_info_photos();
123
124        if (pwg_db_num_rows($tab_info_photos)) {
125            while ($info_photos = pwg_db_fetch_assoc($tab_info_photos)) {
126                if($info_photos['id_info_pho']==1){
127                    $items = array(
128                        'IDINFOPHO' => $info_photos['id_info_pho'],
129                        'AIPDESIGNATION' => l10n('Author'),
130                        'AIPORDER' => $info_photos['orderinfo'],
131                        'AIPACTIVE' => $info_photos['active'],
132                        'AIPEDIT' => $info_photos['edit'],
133                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
134                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
135                    );
136                }else if($info_photos['id_info_pho']==2){
137                    $items = array(
138                        'IDINFOPHO' => $info_photos['id_info_pho'],
139                        'AIPDESIGNATION' => l10n('Created on'),
140                        'AIPORDER' => $info_photos['orderinfo'],
141                        'AIPACTIVE' => $info_photos['active'],
142                        'AIPEDIT' => $info_photos['edit'],
143                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
144                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
145                    );
146                }else if($info_photos['id_info_pho']==3){
147                    $items = array(
148                        'IDINFOPHO' => $info_photos['id_info_pho'],
149                        'AIPDESIGNATION' => l10n('Posted on'),
150                        'AIPORDER' => $info_photos['orderinfo'],
151                        'AIPACTIVE' => $info_photos['active'],
152                        'AIPEDIT' => $info_photos['edit'],
153                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
154                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
155                    );
156                }else if($info_photos['id_info_pho']==4){
157                    $items = array(
158                        'IDINFOPHO' => $info_photos['id_info_pho'],
159                        'AIPDESIGNATION' => l10n('Dimensions'),
160                        'AIPORDER' => $info_photos['orderinfo'],
161                        'AIPACTIVE' => $info_photos['active'],
162                        'AIPEDIT' => $info_photos['edit'],
163                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
164                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
165                    );
166                }else if($info_photos['id_info_pho']==5){
167                    $items = array(
168                        'IDINFOPHO' => $info_photos['id_info_pho'],
169                        'AIPDESIGNATION' => l10n('File'),
170                        'AIPORDER' => $info_photos['orderinfo'],
171                        'AIPACTIVE' => $info_photos['active'],
172                        'AIPEDIT' => $info_photos['edit'],
173                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
174                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
175                    );
176                }else if($info_photos['id_info_pho']==6){
177                    $items = array(
178                        'IDINFOPHO' => $info_photos['id_info_pho'],
179                        'AIPDESIGNATION' => l10n('Filesize'),
180                        'AIPORDER' => $info_photos['orderinfo'],
181                        'AIPACTIVE' => $info_photos['active'],
182                        'AIPEDIT' => $info_photos['edit'],
183                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
184                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
185                    );
186                }else if($info_photos['id_info_pho']==7){
187                    $items = array(
188                        'IDINFOPHO' => $info_photos['id_info_pho'],
189                        'AIPDESIGNATION' => l10n('Tags'),
190                        'AIPORDER' => $info_photos['orderinfo'],
191                        'AIPACTIVE' => $info_photos['active'],
192                        'AIPEDIT' => $info_photos['edit'],
193                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
194                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
195                    );
196                }else if($info_photos['id_info_pho']==8){
197                    $items = array(
198                        'IDINFOPHO' => $info_photos['id_info_pho'],
199                        'AIPDESIGNATION' => l10n('Albums'),
200                        'AIPORDER' => $info_photos['orderinfo'],
201                        'AIPACTIVE' => $info_photos['active'],
202                        'AIPEDIT' => $info_photos['edit'],
203                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
204                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
205                    );
206                }else if($info_photos['id_info_pho']==9){
207                    $items = array(
208                        'IDINFOPHO' => $info_photos['id_info_pho'],
209                        'AIPDESIGNATION' => l10n('Visits'),
210                        'AIPORDER' => $info_photos['orderinfo'],
211                        'AIPACTIVE' => $info_photos['active'],
212                        'AIPEDIT' => $info_photos['edit'],
213                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
214                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
215                    );
216                }else if($info_photos['id_info_pho']==10){
217                    $items = array(
218                        'IDINFOPHO' => $info_photos['id_info_pho'],
219                        'AIPDESIGNATION' => l10n('Average'),
220                        'AIPORDER' => $info_photos['orderinfo'],
221                        'AIPACTIVE' => $info_photos['active'],
222                        'AIPEDIT' => $info_photos['edit'],
223                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
224                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
225                    );
226                }else if($info_photos['id_info_pho']==11){
227                    $items = array(
228                        'IDINFOPHO' => $info_photos['id_info_pho'],
229                        'AIPDESIGNATION' => l10n('Who can see this photo?'),
230                        'AIPORDER' => $info_photos['orderinfo'],
231                        'AIPACTIVE' => $info_photos['active'],
232                        'AIPEDIT' => $info_photos['edit'],
233                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
234                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
235                    );
236                }else{
237                    $items = array(
238                        'IDINFOPHO' => $info_photos['id_info_pho'],
239                        'AIPDESIGNATION' => trigger_change('AP_render_content',$info_photos['designation']),
240                        'AIPORDER' => $info_photos['orderinfo'],
241                        'AIPACTIVE' => $info_photos['active'],
242                        'AIPEDIT' => $info_photos['edit'],
243                        'U_DELETE' => $admin_base_url . '&amp;delete=' . $info_photos['id_info_pho'],
244                        'U_EDIT' => $admin_base_url . '&amp;edit=' . $info_photos['id_info_pho'],
245                        'U_HIDE' => $admin_base_url . '&amp;hide=' . $info_photos['id_info_pho'],
246                        'U_SHOW' => $admin_base_url . '&amp;show=' . $info_photos['id_info_pho'],
247                    );
248                }       
249                $template->append('info_photos', $items);
250            }
251        }
252       
253        if (isset($_POST['submitManualOrderInfo'])){
254           
255            asort($_POST['infoOrd'], SORT_NUMERIC);
256           
257            $data = array();
258            foreach ($_POST['infoOrd'] as $id =>$val){
259           
260            $data[] = array('id_info_pho' => $id, 'orderinfo' => $val+1);
261            }
262            $fields = array('primary' => array('id_info_pho'), 'update' => array('orderinfo'));
263            mass_updates(ADD_INFO_PHOTO_TABLE, $fields, $data);
264
265          $page['infos'][] = l10n('Info manual order was saved');
266          redirect($admin_base_url);
267        }
268       
269        if (isset($_POST['submitaddinfo'])) {
270            $template->assign(
271                    'addinfo_edit2', array(
272                'AIPID' => 0,
273                'AIPDESC' => null,
274                'AIPACTIF' => 0,
275            ));
276
277        }
278        if (isset($_POST['submitaddAIP'])) {
279            if (!isset($_POST['inseractive'])) {
280                $_POST['inseractive'] = 0;
281            }
282            if ($_POST['invisibleID'] == 0) {
283                $result = pwg_query('SELECT MAX(orderinfo) FROM piwigo_add_info_photos');
284                $row = pwg_db_fetch_assoc($result);
285                $or = ($row['MAX(orderinfo)'] + 1);
286
287                $q = '
288                INSERT INTO ' . $prefixeTable . 'add_Info_photos(designation,orderinfo,active,edit)VALUES ("' . $_POST['inserdesignation'] . '","' . $or . '","' . $_POST['inseractive'] . '",1);';
289                pwg_query($q);
290                $_SESSION['page_infos'] = array(l10n('Personal info photo add'));
291            } else {
292                $q = '
293                UPDATE ' . $prefixeTable . 'add_Info_photos'
294                        . ' set designation ="' . $_POST['inserdesignation'] . '" '
295                        . ' ,active=' . $_POST['inseractive']
296                        . ' WHERE id_info_pho=' . $_POST['invisibleID'] . ';';
297                pwg_query($q);
298                $_SESSION['page_infos'] = array(l10n('Personal info photo update'));
299            }
300            redirect($admin_base_url);
301        }
302
303        if (isset($_GET['edit'])) {
304            check_input_parameter('edit', $_GET, false, PATTERN_ID);
305
306            $result = tab_info_photos($_GET['edit']);
307            $row = pwg_db_fetch_assoc($result);
308            $template->assign(
309                    'addinfo_edit2', array(
310                'AIPID' => $row['id_info_pho'],
311                'AIPDESC' => $row['designation'],
312                'AIPACTIF' => $row['active'],
313            ));
314        }
315
316        if (isset($_GET['delete'])) {
317            check_input_parameter('delete', $_GET, false, PATTERN_ID);
318            $query = 'DELETE FROM ' . ADD_INFO_PHOTO_TABLE . ' WHERE id_info_pho = ' . $_GET['delete'] . ';';
319            pwg_query($query);
320            $query = 'DELETE FROM ' . ADD_INFO_PHOTO_DATA_TABLE . ' WHERE id_info_pho = ' . $_GET['delete'] . ';';
321            pwg_query($query);
322
323            $_SESSION['page_infos'] = array(l10n('Personal info delete'));
324            redirect($admin_base_url);
325        }
326       
327        if (isset($_GET['hide'])) {
328            check_input_parameter('hide', $_GET, false, PATTERN_ID);
329            $query = 'UPDATE ' . ADD_INFO_PHOTO_TABLE . ' SET active = 1 WHERE id_info_pho=' . $_GET['hide'] . ';';
330            pwg_query($query);
331
332            $_SESSION['page_infos'] = array(l10n('Info hide'));
333            redirect($admin_base_url);
334        }
335       
336        if (isset($_GET['show'])) {
337            check_input_parameter('show', $_GET, false, PATTERN_ID);
338            $query = 'UPDATE ' . ADD_INFO_PHOTO_TABLE . ' SET active = 0 WHERE id_info_pho=' . $_GET['show'] . ';';
339            pwg_query($query);
340
341            $_SESSION['page_infos'] = array(l10n('Info show'));
342            redirect($admin_base_url);
343        }
344
345        break;
346    case 'configuration':
347        global $conf;
348
349        $selected = $conf['add_Info_photos'];
350        $options['Author'] = l10n('Author');
351        $options['datecreate'] = l10n('Created on');
352        $options['datepost'] = l10n('Posted on');
353        $options['Dimensions'] = l10n('Dimensions');
354        $options['File'] = l10n('File');
355        $options['Filesize'] = l10n('Filesize');
356        $options['Tags'] = l10n('tags');
357        $options['Categories'] = l10n('Albums');
358        $options['Visits'] = l10n('Visits');
359        $options['Average'] = l10n('Rating score');
360
361        $template->assign(
362                'gestionA', array(
363            'OPTIONS' => $options,
364            'SELECTED' => $selected
365        ));
366
367
368        if (isset($_POST['add_Info_photos'])) {
369            conf_update_param('add_Info_photos', $_POST['add_Info_photos'], true);
370            $template->delete_compiled_templates();
371            array_push($page['infos'], l10n('Your configuration settings are saved'));
372
373            $selected = $_POST['add_Info_photos'];
374            $template->assign(
375                    'gestionA', array(
376                'OPTIONS' => $options,
377                'SELECTED' => $selected
378            ));
379        }
380        break;
381
382    case 'addinfo':
383
384
385
386        break;
387}
388
389
390$template->set_filenames(array('plugin_admin_content' => dirname(__FILE__) . '/admin/admin.tpl'));
391$template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
392?>
Note: See TracBrowser for help on using the repository browser.