source: extensions/meta/admin/admin.php @ 24393

Last change on this file since 24393 was 24393, checked in by ddtddt, 11 years ago

[extensions] meta - add support AP and contact page

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Author Date Id Revision
File size: 7.6 KB
Line 
1<?php
2if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
3global $template, $conf, $user;
4include_once(PHPWG_ROOT_PATH .'admin/include/tabsheet.class.php');
5load_language('plugin.lang', meta_PATH);
6$my_base_url = get_admin_plugin_menu_link(__FILE__);
7
8// +-----------------------------------------------------------------------+
9// | Check Access and exit when user status is not ok                      |
10// +-----------------------------------------------------------------------+
11check_status(ACCESS_ADMINISTRATOR);
12
13//-------------------------------------------------------- sections definitions
14
15// TAB gest
16if (!isset($_GET['tab']))
17    $page['tab'] = 'gestion';
18else
19    $page['tab'] = $_GET['tab'];
20
21$tabsheet = new tabsheet();
22$tabsheet->add('gestion',
23               l10n('meta_onglet_gestion'),
24               $my_base_url.'&amp;tab=gestion');
25$tabsheet->add('Personal Meta',
26               l10n('Personal Metadata'),
27               $my_base_url.'&amp;tab=persometa');
28
29        $MPC = pwg_db_fetch_assoc(pwg_query("SELECT state FROM " . PLUGINS_TABLE . " WHERE id = 'ContactForm';"));
30        if($MPC['state'] == 'active')
31        {
32$tabsheet->add('contactmeta',
33               l10n('Contact page Metadata'),
34               $my_base_url.'&amp;tab=contactmeta');
35        }
36        $MAP = pwg_db_fetch_assoc(pwg_query("SELECT state FROM " . PLUGINS_TABLE . " WHERE id = 'AdditionalPages';"));
37        if($MAP['state'] == 'active')
38        {
39$tabsheet->add('AdditionalPagesmeta',
40               l10n('Additional Pages Metadata'),
41               $my_base_url.'&amp;tab=AdditionalPagesmeta');
42        }
43                           
44$tabsheet->add('description',
45               l10n('meta_onglet_description'),
46               $my_base_url.'&amp;tab=description');
47$tabsheet->select($page['tab']);
48$tabsheet->assign();
49
50// Tab gest
51switch ($page['tab'])
52{
53  case 'gestion':
54
55//read metadata list
56$groups = array();
57$query = '
58select id,metaname
59  FROM ' . meta_TABLE . '
60  ORDER BY metaname ASC;';
61$result = pwg_query($query);
62
63while ($row = pwg_db_fetch_assoc($result))
64        {
65  $groups[$row['id']] = $row['metaname'];
66        }
67
68    $selected = 0;
69        $options[] = l10n('meta_select2');
70        $options['a'] = '----------------------';
71
72
73  foreach ($groups as $metalist => $metalist2)
74        {
75    $options[$metalist] = $metalist2;
76        }
77  $template->assign(
78    'gestionA',
79    array(
80      'OPTIONS' => $options,
81      'SELECTED' => $selected
82      ));
83
84
85//edit meta
86if (isset($_POST['submitchoixmeta']) and is_numeric($_POST['metalist']) and (!$_POST['metalist'])==0 and !is_adviser())
87        {
88$lire=$_POST['metalist'];
89        $query = '
90select id,metaname,metaval
91  FROM ' . meta_TABLE . '
92  WHERE id = \''.$lire.'\'
93  ;';
94$result = pwg_query($query);
95
96$row = pwg_db_fetch_assoc($result);
97$chname=$row['metaname'];
98$chval=$row['metaval'];
99
100  $selected2 = "";
101 
102  $template->assign(
103    'meta_edit',
104    array(
105      'VALUE' => $chname,
106      'CONTENT' => $chval,
107      'SELECTED' => $selected2
108      ));
109        }
110
111//inser metadata in table
112if (isset($_POST['submitinsmeta']))
113        {
114        $query = '
115UPDATE ' . meta_TABLE . '
116  SET metaval= \''.$_POST['inser'].'\'
117  WHERE metaname = \''.$_POST['invisible'].'\'
118    ;';
119$result = pwg_query($query);
120        }
121
122    break;
123
124//description TAB
125  case 'description':
126
127$blockdesc = 'description';
128$template->assign(
129        $blockdesc,
130        array(
131          'meta'=>l10n('meta_name'),
132          ));
133        break;
134
135// TAB personnal metadata
136  case 'persometa':
137
138  $template->assign(
139        'metapersoT',
140        array(
141          'meta'=>l10n('meta_name'),
142          ));
143$admin_base_url = $my_base_url.'&amp;tab=persometa';
144$metapersos = pwg_query("SELECT * FROM `". METAPERSO_TABLE .";");
145
146if (pwg_db_num_rows($metapersos)) {     
147 while ($metaperso = pwg_db_fetch_assoc($metapersos))
148        {
149    $items = array(
150      'METANAME' => $metaperso['metaname'],
151      'METAVAL' => $metaperso['metaval'],
152      'METATYPE' => $metaperso['metatype'],
153          'U_DELETE' => $admin_base_url.'&amp;delete='.$metaperso['id'],
154      'U_EDIT' => $admin_base_url.'&amp;edit='.$metaperso['id'],
155                );
156               
157        $template->append('metapersos', $items);
158        }
159}
160 if (isset($_POST['submitaddpersonalmeta']))
161        {
162          $template->assign(
163        'meta_edit2',
164        array(
165          'meta'=>l10n('meta_name'),
166          'METAID' => 0,
167          ));
168        }
169
170 if (isset($_POST['submitaddmetaperso']))
171        {
172                $query = '
173DELETE
174  FROM ' . METAPERSO_TABLE . '
175  WHERE id = '.$_POST['invisibleID'].'
176  ;';
177$result = pwg_query($query);
178       
179       
180        $q = '
181INSERT INTO ' . $prefixeTable . 'metaperso(metaname,metaval,metatype)VALUES ("'.$_POST['insername'].'","'.$_POST['inserval'].'","'.$_POST['insertype'].'");';
182    pwg_query($q);
183        $_SESSION['page_infos'] = array(l10n('Personal metadata update'));
184        redirect($admin_base_url); 
185        }
186       
187          if (isset($_GET['edit']))
188  {
189    check_input_parameter('edit', $_GET, false, PATTERN_ID);
190
191                $query = '
192select id,metaname,metaval,metatype
193  FROM ' . METAPERSO_TABLE . '
194  WHERE id = \''.$_GET['edit'].'\'
195  ;';
196$result = pwg_query($query);
197$row = pwg_db_fetch_assoc($result);     
198  $template->assign(
199    'meta_edit2',
200    array(
201      'METAID' => $row['id'],
202          'METANAME' => $row['metaname'],
203      'METAVAL' => $row['metaval'],
204      'METATYPE' => $row['metatype'],
205      ));       
206       
207  }
208               
209        if (isset($_GET['delete']))
210{
211  check_input_parameter('delete', $_GET, false, PATTERN_ID);
212 
213  $query = '
214DELETE
215  FROM '.METAPERSO_TABLE.'
216  WHERE id = '.$_GET['delete'].'
217;';
218  pwg_query($query);
219 
220  $_SESSION['page_infos'] = array(l10n('Personal metadata update'));
221  redirect($admin_base_url);
222}
223       
224       
225        break;
226
227        case 'contactmeta':
228
229$metacontact = explode(',', $conf['contactmeta']);
230       
231        $template->assign('contactmetaT',
232    array('CMKEY' => $metacontact[0],'CMDESC' => $metacontact[1],));
233
234if (isset($_POST['submitcm']))
235        {
236$INSCM = $_POST['inser'].",".$_POST['inser2'];
237conf_update_param('contactmeta', $INSCM);
238$template->assign(
239    'contactmetaT',
240        array('CMKEY' => stripslashes($_POST['inser']),'CMDESC' => stripslashes($_POST['inser2'])));
241        }
242       
243        break;
244       
245        case 'AdditionalPagesmeta':
246if (!defined('TITLE_AP_TABLE')) define('TITLE_AP_TABLE', $prefixeTable.'title_ap');
247$groups = array();
248$query = '
249select id,title
250  FROM ' . ADD_PAGES_TABLE . '
251  ORDER BY id ASC;';
252$result = pwg_query($query);
253       
254        while ($row = pwg_db_fetch_assoc($result))
255        {
256  $groups[$row['id']] = $row['id'].' : '.$row['title'];
257        }
258       
259        $selected = 0;
260        $options[] = l10n('Choose it page');
261        $options['a'] = '----------------------';
262       
263foreach($groups as $listid => $listid2)
264        {
265    $options[$listid] = $listid2;
266        }
267  $template->assign(
268    'gestionC',
269    array(
270          'OPTIONS' => $options,
271      'SELECTED' => $selected
272      ));
273       
274        if (isset($_POST['submitchoixAP'])and is_numeric($_POST['APchoix']) and (!$_POST['APchoix'])==0)
275        {
276$lire=$_POST['APchoix'];
277        $query = '
278select id,metaKeyap,metadesap
279  FROM ' . META_AP_TABLE . '
280  WHERE id = \''.$lire.'\'
281  ;';
282$result = pwg_query($query);
283$row = pwg_db_fetch_assoc($result);
284$metaKeyapap=$row['metaKeyap'];
285$metadesap=$row['metadesap'];
286
287$query = '
288select id,title
289  FROM ' . ADD_PAGES_TABLE . '
290  WHERE id = \''.$lire.'\'
291    ;';
292$result = pwg_query($query);
293$row = pwg_db_fetch_assoc($result);
294$idap=$row['id'];
295$nameap=$row['title'];
296
297  $selected3 = 0;
298 
299  $template->assign(
300    'ap_edit',
301    array(
302      'VALUE' => $idap,
303          'VALUEN' => $nameap,
304      'CONTENTMKAP' => $metaKeyapap,
305          'CONTENTMDAP' => $metadesap,
306      'SELECTED' => $selected3
307      ));
308        }
309
310if (isset($_POST['submitinsapm']))
311        {
312        $query = '
313DELETE
314  FROM ' . META_AP_TABLE . '
315  WHERE id = \''.$_POST['invisible'].'\'
316  ;';
317$result = pwg_query($query);
318        $q = '
319INSERT INTO ' . $prefixeTable . 'meta_ap(id,metaKeyap,metadesap)VALUES ('.$_POST['invisible'].',"'.$_POST['inser'].'","'.$_POST['inser2'].'");';
320    pwg_query($q);
321        }
322       
323        break;
324       
325} 
326
327$template->set_filenames(array('plugin_admin_content' => dirname(__FILE__) . '/admin.tpl')); 
328$template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
329?>
Note: See TracBrowser for help on using the repository browser.