phpBB
Statistics
| Revision:

root / branches / phpBB-3_0_0 / phpBB / includes / acp / acp_update.php

History | View | Annotate | Download (2.5 kB)

1 6347 acydburn
<?php
2 7736 acydburn
/**
3 6347 acydburn
*
4 6347 acydburn
* @package acp
5 6347 acydburn
* @version $Id$
6 7736 acydburn
* @copyright (c) 2005 phpBB Group
7 7736 acydburn
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
8 6347 acydburn
*
9 6347 acydburn
*/
10 6347 acydburn
11 6347 acydburn
/**
12 8131 acydburn
* @ignore
13 8131 acydburn
*/
14 8131 acydburn
if (!defined('IN_PHPBB'))
15 8131 acydburn
{
16 8131 acydburn
        exit;
17 8131 acydburn
}
18 8131 acydburn
19 8131 acydburn
/**
20 6347 acydburn
* @package acp
21 6347 acydburn
*/
22 6347 acydburn
class acp_update
23 6347 acydburn
{
24 6347 acydburn
        var $u_action;
25 6347 acydburn
26 6347 acydburn
        function main($id, $mode)
27 6347 acydburn
        {
28 6347 acydburn
                global $config, $db, $user, $auth, $template, $cache;
29 6347 acydburn
                global $phpbb_root_path, $phpbb_admin_path, $phpEx;
30 6347 acydburn
31 6347 acydburn
                $user->add_lang('install');
32 6347 acydburn
33 6347 acydburn
                $this->tpl_name = 'acp_update';
34 6698 acydburn
                $this->page_title = 'ACP_VERSION_CHECK';
35 6347 acydburn
36 6347 acydburn
                // Get current and latest version
37 6347 acydburn
                $errstr = '';
38 6347 acydburn
                $errno = 0;
39 6347 acydburn
40 11468 git-gate
                $info = obtain_latest_version_info(request_var('versioncheck_force', false));
41 6347 acydburn
42 10195 acydburn
                if ($info === false)
43 10195 acydburn
                {
44 10195 acydburn
                        trigger_error('VERSIONCHECK_FAIL', E_USER_WARNING);
45 10195 acydburn
                }
46 10195 acydburn
47 6347 acydburn
                $info = explode("\n", $info);
48 6347 acydburn
                $latest_version = trim($info[0]);
49 6347 acydburn
50 6347 acydburn
                $announcement_url = trim($info[1]);
51 10154 acydburn
                $announcement_url = (strpos($announcement_url, '&amp;') === false) ? str_replace('&', '&amp;', $announcement_url) : $announcement_url;
52 6347 acydburn
                $update_link = append_sid($phpbb_root_path . 'install/index.' . $phpEx, 'mode=update');
53 6347 acydburn
54 10837 git-gate
                // next feature release
55 10837 git-gate
                $next_feature_version = $next_feature_announcement_url = false;
56 10837 git-gate
                if (isset($info[2]) && trim($info[2]) !== '')
57 10837 git-gate
                {
58 10837 git-gate
                        $next_feature_version = trim($info[2]);
59 10837 git-gate
                        $next_feature_announcement_url = trim($info[3]);
60 10837 git-gate
                }
61 10837 git-gate
62 7813 acydburn
                // Determine automatic update...
63 7813 acydburn
                $sql = 'SELECT config_value
64 7813 acydburn
                        FROM ' . CONFIG_TABLE . "
65 7813 acydburn
                        WHERE config_name = 'version_update_from'";
66 7813 acydburn
                $result = $db->sql_query($sql);
67 7813 acydburn
                $version_update_from = (string) $db->sql_fetchfield('config_value');
68 7813 acydburn
                $db->sql_freeresult($result);
69 7813 acydburn
70 7813 acydburn
                $current_version = (!empty($version_update_from)) ? $version_update_from : $config['version'];
71 7813 acydburn
72 6347 acydburn
                $template->assign_vars(array(
73 11315 git-gate
                        'S_UP_TO_DATE'                => phpbb_version_compare($latest_version, $config['version'], '<='),
74 11315 git-gate
                        'S_UP_TO_DATE_AUTO'        => phpbb_version_compare($latest_version, $current_version, '<='),
75 6347 acydburn
                        'S_VERSION_CHECK'        => true,
76 6347 acydburn
                        'U_ACTION'                        => $this->u_action,
77 9880 aptx
                        'U_VERSIONCHECK_FORCE' => append_sid($this->u_action . '&amp;versioncheck_force=1'),
78 6347 acydburn
79 6347 acydburn
                        'LATEST_VERSION'        => $latest_version,
80 6347 acydburn
                        'CURRENT_VERSION'        => $config['version'],
81 7813 acydburn
                        'AUTO_VERSION'                => $version_update_from,
82 10837 git-gate
                        'NEXT_FEATURE_VERSION'        => $next_feature_version,
83 6347 acydburn
84 6736 acydburn
                        'UPDATE_INSTRUCTIONS'        => sprintf($user->lang['UPDATE_INSTRUCTIONS'], $announcement_url, $update_link),
85 10837 git-gate
                        'UPGRADE_INSTRUCTIONS'        => $next_feature_version ? $user->lang('UPGRADE_INSTRUCTIONS', $next_feature_version, $next_feature_announcement_url) : false,
86 6347 acydburn
                ));
87 6347 acydburn
        }
88 6347 acydburn
}
89 6347 acydburn
90 6347 acydburn
?>