source: extensions/linked_pages/admin.php @ 17882

Last change on this file since 17882 was 17882, checked in by mistic100, 12 years ago

first version

File size: 4.4 KB
Line 
1<?php
2if(!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
3 
4global $template, $page, $conf;
5
6if (strpos($_GET['tab'], 'album-') !== false)
7{
8  $_GET['cat_id'] = substr($_GET['tab'], 6);
9}
10else
11{
12  die('Hacking attempt!');
13}
14
15// +-----------------------------------------------------------------------+
16// | Basic checks                                                          |
17// +-----------------------------------------------------------------------+
18check_status(ACCESS_ADMINISTRATOR);
19
20check_input_parameter('cat_id', $_GET, false, PATTERN_ID);
21
22$admin_album_base_url = get_root_url().'admin.php?page=album-'.$_GET['cat_id'];
23$self_url = LINKEDPAGES_ADMIN.'-album-'.$_GET['cat_id'];
24
25
26// +-----------------------------------------------------------------------+
27// | Init                                                                  |
28// +-----------------------------------------------------------------------+
29$query = '
30SELECT *
31  FROM '.CATEGORIES_TABLE.'
32  WHERE id = '.$_GET['cat_id'].'
33;';
34$category = pwg_db_fetch_assoc(pwg_query($query));
35
36if (!isset($category['id']))
37{
38  die("unknown album");
39}
40
41include_once(PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
42$tabsheet = new tabsheet();
43$tabsheet->set_id('album');
44$tabsheet->select('linked_pages');
45$tabsheet->assign();
46
47load_language('plugin.lang', AP_PATH);
48$languages = get_languages();
49
50
51// +-----------------------------------------------------------------------+
52// | Save pages                                                            |
53// +-----------------------------------------------------------------------+
54if (isset($_POST['save_pages']))
55{
56  $query = '
57DELETE FROM '.LINKEDPAGES_TABLE.'
58  WHERE category_id = '.$_GET['cat_id'].'
59;';
60  pwg_query($query);
61 
62  if (isset($_POST['position']))
63  {
64    $inserts = array();
65    foreach ($_POST['position'] as $page_id => $pos)
66    {
67      array_push($inserts, array(
68        'category_id' => $_GET['cat_id'],
69        'page_id' => $page_id,
70        'pos' => $pos,
71        ));
72    }
73   
74    mass_inserts_ignore(
75      LINKEDPAGES_TABLE, 
76      array('category_id','page_id','pos'), 
77      $inserts
78      );
79  }
80}
81
82// +-----------------------------------------------------------------------+
83// | Get pages                                                             |
84// +-----------------------------------------------------------------------+
85$query = '
86SELECT
87    lp.*,
88    ap.lang,
89    ap.title,
90    ap.standalone,
91    ap.permalink
92  FROM '.LINKEDPAGES_TABLE.' AS lp
93    INNER JOIN '.ADD_PAGES_TABLE.' AS ap
94    ON lp.page_id = ap.id
95  WHERE category_id = '.$_GET['cat_id'].'
96  ORDER BY lp.pos
97';
98$result = pwg_query($query);
99
100$cat_pages = array();
101while ($row = pwg_db_fetch_assoc($result))
102{
103  $row['U_PAGE'] = make_index_url(array('section'=>'page')).'/'.(isset($row['permalink']) ? $row['permalink'] : $row['page_id']);
104  $row['title'] = trigger_event('AP_render_title', $row['title']);
105  $row['language'] = @$languages[$row['lang']];
106  $cat_pages[$row['page_id']] = $row;
107}
108$template->assign('cat_pages', $cat_pages);
109
110$query = '
111SELECT
112    id,
113    lang,
114    title,
115    standalone,
116    permalink
117  FROM '.ADD_PAGES_TABLE.'
118  '.(!empty($conf['AP']['homepage']) ? 'WHERE id != '.$conf['AP']['homepage'] : null).'
119  ORDER BY title ASC
120;';
121$result = pwg_query($query);
122
123while ($row = pwg_db_fetch_assoc($result))
124{
125  if (array_key_exists($row['id'], $cat_pages))
126  {
127    $row['disabled'] = 'disabled="disabled"';
128  }
129  $row['U_PAGE'] = make_index_url(array('section'=>'page')).'/'.(isset($row['permalink']) ? $row['permalink'] : $row['id']);
130  $row['title'] = trigger_event('AP_render_title', $row['title']);
131  $row['language'] = @$languages[$row['lang']];
132  $template->append('pages', $row);
133}
134
135
136// +-----------------------------------------------------------------------+
137// | Template                                                             |
138// +-----------------------------------------------------------------------+
139$template->assign(array(
140  'F_ACTION' => $self_url,
141  'CATEGORIES_NAV' => get_cat_display_name_cache(
142    $category['uppercats'],
143    LINKEDPAGES_ADMIN.'-album-'
144    ),
145  'LINKEDPAGES_PATH'=> get_root_url() . LINKEDPAGES_PATH,
146  ));
147 
148$template->set_filename('linked_pages_content', realpath(LINKEDPAGES_PATH . 'template/admin_album.tpl'));
149$template->assign_var_from_handle('ADMIN_CONTENT', 'linked_pages_content');
150
151?>
Note: See TracBrowser for help on using the repository browser.