[9262] | 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 , |
---|
[9270] | 14 | ADD `permalink` VARCHAR( 64 ) NULL DEFAULT NULL , |
---|
| 15 | ADD `standalone` ENUM( "true", "false" ) NOT NULL DEFAULT "false";'; |
---|
[9262] | 16 | pwg_query($query); |
---|
| 17 | |
---|
| 18 | $query = ' |
---|
| 19 | SELECT id, pos, title, lang |
---|
| 20 | FROM '.$prefixeTable.'additionalpages |
---|
[9272] | 21 | ORDER BY pos ASC |
---|
[9262] | 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') |
---|
[9272] | 45 | $position = '-100'; |
---|
[9262] | 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 | |
---|
[9272] | 63 | load_conf_from_db('param = "additional_pages"'); |
---|
[9262] | 64 | $old_conf = explode ("," , $conf['additional_pages']); |
---|
| 65 | |
---|
[9272] | 66 | if ($old_conf[1] == 'off') |
---|
| 67 | { |
---|
| 68 | $mb_conf = @unserialize($conf['blk_menubar']); |
---|
| 69 | if (!isset($mb_conf['mbAdditionalPages'])) |
---|
| 70 | { |
---|
| 71 | $last = @abs(end($mb_conf)); |
---|
| 72 | $mb_conf['mbAdditionalPages'] = $last + 50; |
---|
| 73 | } |
---|
| 74 | $mb_conf['mbAdditionalPages'] = -1 * abs($mb_conf['mbAdditionalPages']); |
---|
| 75 | conf_update_param('blk_menubar', pwg_db_real_escape_string(serialize($mb_conf))); |
---|
| 76 | } |
---|
| 77 | |
---|
[9262] | 78 | $new_conf = array( |
---|
| 79 | 'show_home' => @($old_conf[2] == 'on'), |
---|
| 80 | 'group_perm' => @($old_conf[6] == 'on'), |
---|
| 81 | 'user_perm' => @($old_conf[7] == 'on'), |
---|
| 82 | 'homepage' => null, |
---|
| 83 | ); |
---|
| 84 | |
---|
| 85 | $languages = explode('/', $old_conf[0]); |
---|
| 86 | $new_conf['languages'] = array(); |
---|
| 87 | foreach($languages as $language) |
---|
| 88 | { |
---|
| 89 | $array = explode(':', $language); |
---|
| 90 | if (!isset($array[1])) $new_conf['languages']['default'] = $array[0]; |
---|
| 91 | else $new_conf['languages'][$array[0]] = $array[1]; |
---|
| 92 | } |
---|
| 93 | |
---|
| 94 | $conf['additional_pages'] = $new_conf; |
---|
| 95 | |
---|
[9272] | 96 | conf_update_param('additional_pages', pwg_db_real_escape_string(serialize($new_conf))); |
---|
[9262] | 97 | |
---|
| 98 | ?> |
---|