1 | <?php |
---|
2 | |
---|
3 | if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!'); |
---|
4 | |
---|
5 | global $prefixeTable, $conf; |
---|
6 | |
---|
7 | $query = 'ALTER TABLE ' . $prefixeTable . 'additionalpages |
---|
8 | CHANGE `id` `id` SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT , |
---|
9 | CHANGE `pos` `pos` SMALLINT( 5 ) NULL DEFAULT NULL , |
---|
10 | CHANGE `lang` `lang` VARCHAR( 255 ) NULL DEFAULT NULL , |
---|
11 | CHANGE `text` `content` LONGTEXT NOT NULL , |
---|
12 | ADD `users` VARCHAR( 255 ) NULL DEFAULT NULL , |
---|
13 | ADD `groups` VARCHAR( 255 ) NULL DEFAULT NULL , |
---|
14 | ADD `permalink` VARCHAR( 64 ) NULL DEFAULT NULL , |
---|
15 | ADD `standalone` ENUM( "true", "false" ) NOT NULL DEFAULT "false";'; |
---|
16 | pwg_query($query); |
---|
17 | |
---|
18 | $query = ' |
---|
19 | SELECT id, pos, title, lang |
---|
20 | FROM '.$prefixeTable.'additionalpages |
---|
21 | ORDER BY pos ASC, id ASC |
---|
22 | ;'; |
---|
23 | $result = pwg_query($query); |
---|
24 | while ($row = mysql_fetch_assoc($result)) |
---|
25 | { |
---|
26 | $title = $row['title']; |
---|
27 | $authorized_users = 'NULL'; |
---|
28 | $authorized_groups = 'NULL'; |
---|
29 | |
---|
30 | if (strpos($title , '/user_id=')) |
---|
31 | { |
---|
32 | $array = explode('/user_id=' , $title); |
---|
33 | $title = $array[0]; |
---|
34 | $authorized_users = '"'.$array[1].'"'; |
---|
35 | } |
---|
36 | if (strpos($title , '/group_id=')) |
---|
37 | { |
---|
38 | $array = explode('/group_id=' , $title); |
---|
39 | $title = $array[0]; |
---|
40 | $authorized_groups = '"'.$array[1].'"'; |
---|
41 | } |
---|
42 | |
---|
43 | $position = $row['pos']; |
---|
44 | if ($row['pos'] === '0') |
---|
45 | $position = '-1'; |
---|
46 | elseif (empty($row['pos'])) |
---|
47 | $position = '0'; |
---|
48 | |
---|
49 | $language = $row['lang'] != 'ALL' ? '"'.$row['lang'].'"' : 'NULL'; |
---|
50 | |
---|
51 | $query = ' |
---|
52 | UPDATE '.$prefixeTable.'additionalpages |
---|
53 | SET title = "'.addslashes($title).'", |
---|
54 | pos = '.$position.', |
---|
55 | lang = '.$language.', |
---|
56 | users = '.$authorized_users.', |
---|
57 | groups = '.$authorized_groups.' |
---|
58 | WHERE id = '.$row['id'].' |
---|
59 | ;'; |
---|
60 | pwg_query($query); |
---|
61 | } |
---|
62 | |
---|
63 | $old_conf = explode ("," , $conf['additional_pages']); |
---|
64 | |
---|
65 | $new_conf = array( |
---|
66 | 'show_home' => @($old_conf[2] == 'on'), |
---|
67 | 'group_perm' => @($old_conf[6] == 'on'), |
---|
68 | 'user_perm' => @($old_conf[7] == 'on'), |
---|
69 | 'homepage' => null, |
---|
70 | ); |
---|
71 | |
---|
72 | $languages = explode('/', $old_conf[0]); |
---|
73 | $new_conf['languages'] = array(); |
---|
74 | foreach($languages as $language) |
---|
75 | { |
---|
76 | $array = explode(':', $language); |
---|
77 | if (!isset($array[1])) $new_conf['languages']['default'] = $array[0]; |
---|
78 | else $new_conf['languages'][$array[0]] = $array[1]; |
---|
79 | } |
---|
80 | |
---|
81 | $conf['additional_pages'] = $new_conf; |
---|
82 | |
---|
83 | $query = ' |
---|
84 | UPDATE '.CONFIG_TABLE.' |
---|
85 | SET value = "'.addslashes(serialize($new_conf)).'" |
---|
86 | WHERE param = "additional_pages" |
---|
87 | ;'; |
---|
88 | pwg_query($query); |
---|
89 | |
---|
90 | ?> |
---|