Changeset 1069

Show
Ignore:
Timestamp:
10/21/07 23:03:31 (9 months ago)
Author:
Rickard
Message:

Added automatic check for updates and the hotfix extension system. A test hotfix is enabled on the updates service.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/punbb-1.3-dev/extras/db_update.php

    r1062 r1069  
    526526                // Insert new config option o_check_for_updates 
    527527                if (!array_key_exists('o_check_for_updates', $pun_config)) 
    528                         $db->query('INSERT INTO '.$db->prefix.'config (conf_name, conf_value) VALUES(\'o_check_for_updates\', \'1\')') or error(__FILE__, __LINE__); 
     528                { 
     529                        $check_for_updates = (function_exists('curl_init') || function_exists('fsockopen') || in_array(strtolower(@ini_get('allow_url_fopen')), array('on', 'true', '1'))) ? 1 : 0; 
     530                        $db->query('INSERT INTO '.$db->prefix.'config (conf_name, conf_value) VALUES(\'o_check_for_updates\', \''.$check_for_updates.'\')') or error(__FILE__, __LINE__); 
     531                } 
    529532 
    530533                // Server timezone is now simply the default timezone 
  • branches/punbb-1.3-dev/upload/admin/extensions.php

    r1062 r1069  
    2727require PUN_ROOT.'include/common.php'; 
    2828require PUN_ROOT.'include/common_admin.php'; 
    29 require PUN_ROOT.'include/xml.php'; 
     29require_once PUN_ROOT.'include/xml.php'; 
    3030 
    3131 
     
    3838 
    3939// Install an extension 
    40 if (isset($_GET['install'])
     40if (isset($_GET['install']) || isset($_GET['install_hotfix'])
    4141{ 
    42         $id = preg_replace('/[^0-9a-z_]/', '', $_GET['install']); 
     42        $id = preg_replace('/[^0-9a-z_]/', '', isset($_GET['install']) ? $_GET['install'] : $_GET['install_hotfix']); 
     43 
     44        // Load manifest (either locally or from punbb.org updates service) 
     45        if (isset($_GET['install'])) 
     46                $manifest = @file_get_contents(PUN_ROOT.'extensions/'.$id.'/manifest.xml'); 
     47        else 
     48                $manifest = @end(get_remote_file('http://punbb.org/update/manifest/'.$id.'.xml', 16)); 
    4349 
    4450        // Parse manifest.xml into an array and validate it 
    45         $ext_data = xml_to_array(@file_get_contents(PUN_ROOT.'extensions/'.$id.'/manifest.xml')); 
     51        $ext_data = xml_to_array($manifest); 
    4652        $errors = validate_manifest($ext_data, $id); 
    4753 
    4854        if (!empty($errors)) 
    49                 message($lang_common['Bad request']); 
     55                message(isset($_GET['install']) ? $lang_common['Bad request'] : $lang_admin['Hotfix download failed']); 
    5056 
    5157        // Setup breadcrumbs 
     
    158164        <div class="b-section b-dataform"> 
    159165                <div class="c-section c-form"> 
    160                         <form method="post" accept-charset="utf-8" action="<?php echo pun_link($pun_url['admin_extensions']) ?>?install=<?php echo $id ?>"> 
     166                        <form method="post" accept-charset="utf-8" action="<?php echo pun_link($pun_url['admin_extensions']).(isset($_GET['install']) ? '?install=' : '?install_hotfix=').$id ?>"> 
    161167                        <div class="panel"> 
    162168                                <input type="hidden" name="csrf_token" value="<?php echo $pun_user['csrf_token'] ?>" /> 
     
    167173                                        <h3 class="field"><strong class="alabel"><?php echo $lang_admin['Extension title'] ?></strong> <span class="input"><?php echo htmlspecialchars($ext_data['extension']['title']) ?></span></h3> 
    168174                                        <ul class="field"> 
    169                                               <li><strong class="alabel"><?php echo $lang_admin['Extension version'] ?></strong> <span class="input"><?php echo $ext_data['extension']['version'] ?></span></li> 
    170                                               <li><strong class="alabel"><?php echo $lang_admin['Extension author'] ?></strong> <span class="input"><?php echo $ext_data['extension']['author'] ?></span></li> 
     175<?php if (strpos($id, 'hotfix_') !== 0): ?>                                           <li><strong class="alabel"><?php echo $lang_admin['Extension version'] ?></strong> <span class="input"><?php echo $ext_data['extension']['version'] ?></span></li> 
     176<?php endif; ?>                                               <li><strong class="alabel"><?php echo $lang_admin['Extension author'] ?></strong> <span class="input"><?php echo $ext_data['extension']['author'] ?></span></li> 
    171177                                                <li><strong class="alabel"><?php echo $lang_admin['Extension description'] ?></strong> <span class="input"><?php echo htmlspecialchars($ext_data['extension']['description']) ?></span></li> 
    172178                                        </ul> 
    173179                                </div> 
    174                               <p><strong><?php echo $lang_admin['Extension overwrite warning'] ?></strong></p> 
    175                               <p class="formsubmit"><input type="submit" name="install_comply" value="<?php echo $lang_admin['Install'] ?>" /></p> 
     180<?php if (strpos($id, 'hotfix_') !== 0): ?>                           <p><strong><?php echo $lang_admin['Extension overwrite warning'] ?></strong></p> 
     181<?php endif; ?>                               <p class="formsubmit"><input type="submit" name="install_comply" value="<?php echo $lang_admin['Install'] ?>" /></p> 
    176182                        </div> 
    177183                        </form> 
     
    365371        $num_exts = 0; 
    366372        $num_failed = 0; 
     373 
     374        // Loop through any available hotfixes 
     375        if (isset($pun_updates['hotfix'])) 
     376        { 
     377                // If there's only one hotfix, add one layer of arrays so we can foreach over it 
     378                if (!is_array(current($pun_updates['hotfix']))) 
     379                        $pun_updates['hotfix'] = array($pun_updates['hotfix']); 
     380 
     381                foreach ($pun_updates['hotfix'] as $hotfix) 
     382                { 
     383                        if (!array_key_exists($hotfix['attributes']['id'], $inst_exts)) 
     384                        { 
     385                                echo "\t\t\t\t\t".'<p class="field hotfix"><strong class="alabel"><a href="'.pun_link($pun_url['admin_extensions']).'?install_hotfix='.urlencode($hotfix['attributes']['id']).'">'.$lang_admin['Install'].'</a></strong> <span class="input"><strong>'.htmlspecialchars($hotfix['content']).'</strong></span></p>'."\n"; 
     386                                ++$num_exts; 
     387                        } 
     388                } 
     389        } 
     390 
    367391        $d = dir(PUN_ROOT.'extensions'); 
    368392        while (($entry = $d->read()) !== false) 
     
    403427                                if (!array_key_exists($entry, $inst_exts) || version_compare($inst_exts[$entry]['version'], $ext_data['extension']['version'], '!=')) 
    404428                                { 
    405                                         echo "\t\t\t\t\t".'<p class="field"><strong class="alabel"><a href="'.pun_link($pun_url['admin_extensions']).'?install='.urlencode($entry).'">'.$lang_admin['Install'].'</a></strong> <span class="input"><strong>'.htmlspecialchars($ext_data['extension']['title']).' '.$ext_data['extension']['version'].'</strong></span></p>'."\n"; 
     429                                        echo "\t\t\t\t\t".'<p class="field"><strong class="alabel"><a href="'.pun_link($pun_url['admin_extensions']).'?install='.urlencode($entry).'">'.$lang_admin['Install'].'</a></strong> <span class="input"><strong>'.htmlspecialchars($ext_data['extension']['title']).(strpos($entry, 'hotfix_') !== 0 ? ' '.$ext_data['extension']['version'] : '').'</strong></span></p>'."\n"; 
    406430                                        ++$num_exts; 
    407431                                } 
     
    456480                                        <h3 class="field"><strong class="alabel"><?php echo $lang_admin['Extension title'] ?><span>:</span></strong> <span class="input"><?php echo htmlspecialchars($ext['title']) ?></span></h3> 
    457481                                        <ul class="field"> 
    458                                               <li><strong class="alabel"><?php echo $lang_admin['Extension version'] ?><span>:</span></strong> <span class="input"><?php echo $ext['version'] ?></span></li> 
    459                                               <li><strong class="alabel"><?php echo $lang_admin['Extension author'] ?><span>:</span></strong> <span class="input"><?php echo $ext['author'] ?></span></li> 
     482<?php if (strpos($id, 'hotfix_') !== 0): ?>                                           <li><strong class="alabel"><?php echo $lang_admin['Extension version'] ?><span>:</span></strong> <span class="input"><?php echo $ext['version'] ?></span></li> 
     483<?php endif; ?>                                               <li><strong class="alabel"><?php echo $lang_admin['Extension author'] ?><span>:</span></strong> <span class="input"><?php echo $ext['author'] ?></span></li> 
    460484<?php if ($ext['description'] != ''): ?>                                                <li><strong class="alabel"><?php echo $lang_admin['Extension description'] ?><span>:</span></strong> <span class="input"><?php echo htmlspecialchars($ext['description']) ?></span></li> 
    461485<?php endif; ?>                                 </ul> 
  • branches/punbb-1.3-dev/upload/admin/index.php

    r1062 r1069  
    3636 
    3737 
    38 $action = isset($_GET['action']) ? $_GET['action'] : null; 
    39  
    40 // Check for upgrade 
    41 if ($action == 'check_upgrade') 
    42 { 
    43         $punbb_server = @fsockopen('www.punbb.org', 80, $errno, $errstr, 8); 
    44         if ($punbb_server) 
    45         { 
    46                 $out = 'GET /latest_version HTTP/1.0'."\r\n"; 
    47                 $out .= 'Host: www.punbb.org'."\r\n"; 
    48                 $out .= 'Connection: Close'."\r\n\r\n"; 
    49  
    50                 fwrite($punbb_server, $out); 
    51  
    52                 while (!feof($punbb_server)) 
    53                         $latest_version = trim(fgets($punbb_server, 16)); 
    54  
    55                 fclose($punbb_server); 
    56         } 
    57  
    58         if ($latest_version == '') 
    59                 message(sprintf($lang_admin['Check upgrade error'], trim($errstr), $errno)); 
    60  
    61         $cur_version = strtolower($pun_config['o_cur_version']); 
    62         $latest_version = strtolower($latest_version); 
    63  
    64         if (version_compare($cur_version, $latest_version, '>=')) 
    65                 message($lang_admin['Latest version message']); 
    66         else 
    67                 message($lang_admin['New version message'].' <a href="http://www.punbb.org/">PunBB.org</a>.'); 
    68 } 
    69  
    70  
    7138// Show phpinfo() output 
    72 else if ($action == 'phpinfo' && $pun_user['g_id'] == PUN_ADMIN) 
     39if (isset($_GET['action']) && $_GET['action'] == 'phpinfo' && $pun_user['g_id'] == PUN_ADMIN) 
    7340{ 
    7441        // Is phpinfo() a disabled function? 
     
    7946        exit; 
    8047} 
     48 
     49 
     50// Generate check for updates text block 
     51if ($pun_config['o_check_for_updates'] == '1') 
     52        $punbb_updates = $lang_admin['Check for updates enabled']; 
     53else 
     54{ 
     55        // Get a list of installed hotfix extensions 
     56        $query = array( 
     57                'SELECT'        => 'e.id', 
     58                'FROM'          => 'extensions AS e', 
     59                'WHERE'         => 'e.id LIKE \'hotfix_%\'' 
     60        ); 
     61 
     62        ($hook = get_hook('ain_qr_get_hotfixes')) ? eval($hook) : null; 
     63        $result = $db->query_build($query) or error(__FILE__, __LINE__); 
     64        $num_hotfixes = $db->num_rows($result); 
     65 
     66        $hotfixes = array(); 
     67        for ($i = 0; $i < $num_hotfixes; ++$i) 
     68                $hotfixes[] = urlencode($db->result($result, $i)); 
     69 
     70        $punbb_updates = '<a href="http://punbb.org/update/?version='.urlencode($pun_config['o_cur_version']).'&hotfixes='.implode(',', $hotfixes).'">'.$lang_admin['Check for updates manual'].'</a>'; 
     71} 
     72 
    8173 
    8274// Get the server load averages (if possible) 
     
    206198                                        <h3 class="alegend"><span><?php echo $lang_admin['PunBB version'] ?></span></h3> 
    207199                                        <ul class="field"> 
    208                                                 <li class="input">PunBB <?php echo $pun_config['o_cur_version'] ?> - <a href="<?php echo pun_link($pun_url['admin_index']) ?>?action=check_upgrade"><?php echo $lang_admin['Check for upgrade'] ?></a></li> 
     200                                                <li class="input">PunBB <?php echo $pun_config['o_cur_version'] ?></li> 
    209201                                                <li class="input">&copy; Copyright 2002, 2003, 2004, 2005, 2006, 2007 Rickard Andersson</li> 
     202                                                <li class="input"><?php echo $punbb_updates ?></li> 
    210203                                        </ul> 
    211204                                </div> 
  • branches/punbb-1.3-dev/upload/admin/options.php

    r1062 r1069  
    6363                        $form['timeout_online'] = intval($form['timeout_online']); 
    6464                        $form['redirect_delay'] = intval($form['redirect_delay']); 
     65 
     66                        if (!isset($form['check_for_updates']) || $form['check_for_updates'] != '1') $form['check_for_updates'] = '0'; 
    6567 
    6668                        if ($form['timeout_online'] >= $form['timeout_visit']) 
     
    395397                                        </p> 
    396398                                </fieldset> 
     399                                <fieldset class="checkset"> 
     400                                        <legend><span><?php echo $lang_admin['Updates legend'] ?></span></legend> 
     401                                        <p class="field"> 
     402<?php if (function_exists('curl_init') || function_exists('fsockopen') || in_array(strtolower(@ini_get('allow_url_fopen')), array('on', 'true', '1'))): ?>                                              <span class="input"><input type="checkbox" id="<?php echo 'fld'.$fld_count ?>" name="form[check_for_updates]" value="1"<?php if ($pun_config['o_check_for_updates'] == '1') echo ' checked="checked"' ?> />&#160;<label for="fs1f2"><?php echo $lang_admin['Auto check for updates'] ?></label><br /> <em class="field-info"><?php echo $lang_admin['Auto check for updates info'] ?></em></span><br /> 
     403<?php else: ?>                                          <span class="input"><em class="field-info"><?php echo $lang_admin['Auto check disabled'] ?></em></span><br /> 
     404<?php endif; ?>                                 </p> 
     405                                </fieldset> 
    397406                                <fieldset class="textset"> 
    398407                                        <legend><span><?php echo $lang_admin['Timeouts legend'] ?></span></legend> 
  • branches/punbb-1.3-dev/upload/header.php

    r1067 r1069  
    208208 
    209209// START SUBST - <!-- pun_alert --> 
    210 if ($pun_user['is_admmod']) 
    211 
    212         $alert_items = array(); 
    213  
    214         if ($pun_config['o_maintenance'] == '1') 
    215                 $alert_items[] = '<p id="maint-alert"'.(((count($alert_items) + 1) == 1) ? ' class="first-alert"' : '').'><strong>'.$lang_common['Maintenance mode'].'</strong> <span>'.$lang_common['Maintenance alert'].'</span></p>'; 
    216  
    217         // Test item 
    218                 $alert_items[] = '<p id="text-alert1"'.(((count($alert_items) + 1) == 1) ? ' class="first-alert"' : '').'><strong>Testing alert system</strong> <span>This is a test alert message. Ignore the styling, this is just for testing.</span></p>'; 
    219  
    220         // Test item 
    221                 $alert_items[] = '<p id="text-alert2"'.(((count($alert_items) + 1) == 1) ? ' class="first-alert"' : '').'><strong>Alert Alert Alert</strong> <span>This is another test alert message.</span></p>'; 
    222  
    223         ($hook = get_hook('hd_alert')) ? eval($hook) : null; 
    224  
    225         if(count($alert_items)) 
    226         { 
    227                 ob_start(); 
     210$alert_items = array(); 
     211 
     212if ($pun_config['o_maintenance'] == '1' && $pun_user['g_id'] == PUN_ADMIN) 
     213        $alert_items[] = '<p id="maint-alert"'.(empty($alert_items) ? ' class="first-alert"' : '').'><strong>'.$lang_common['Maintenance mode'].'</strong> <span>'.$lang_common['Maintenance alert'].'</span></p>'; 
     214 
     215if ($pun_user['g_id'] == PUN_ADMIN && $pun_config['o_check_for_updates'] == '1') 
     216
     217        if ($pun_updates['fail']) 
     218                $alert_items[] = '<p id="updates-alert"'.(empty($alert_items) ? ' class="first-alert"' : '').'><strong>'.$lang_common['Updates'].'</strong> <span>'.$lang_common['Updates failed'].'</span></p>'; 
     219        else if (isset($pun_updates['version']) && isset($pun_updates['hotfix'])) 
     220                $alert_items[] = '<p id="updates-alert"'.(empty($alert_items) ? ' class="first-alert"' : '').'><strong>'.$lang_common['Updates'].'</strong> <span>'.sprintf($lang_common['Updates version n hf'], $pun_updates['version']).'</span></p>'; 
     221        else if (isset($pun_updates['version'])) 
     222                $alert_items[] = '<p id="updates-alert"'.(empty($alert_items) ? ' class="first-alert"' : '').'><strong>'.$lang_common['Updates'].'</strong> <span>'.sprintf($lang_common['Updates version'], $pun_updates['version']).'</span></p>'; 
     223        else if (isset($pun_updates['hotfix'])) 
     224                $alert_items[] = '<p id="updates-alert"'.(empty($alert_items) ? ' class="first-alert"' : '').'><strong>'.$lang_common['Updates'].'</strong> <span>'.$lang_common['Updates hf'].'</span></p>'; 
     225
     226 
     227($hook = get_hook('hd_alert')) ? eval($hook) : null; 
     228 
     229if (!empty($alert_items)) 
     230
     231        ob_start(); 
    228232 
    229233?> 
     
    236240<?php 
    237241 
    238                 $tpl_temp = ob_get_contents(); 
    239                 $tpl_main = str_replace('<!-- pun_alert -->', $tpl_temp, $tpl_main); 
    240                 ob_end_clean(); 
    241         } 
     242        $tpl_temp = ob_get_contents(); 
     243        $tpl_main = str_replace('<!-- pun_alert -->', $tpl_temp, $tpl_main); 
     244        ob_end_clean(); 
    242245} 
    243246// END SUBST - <!-- pun_alert --> 
  • branches/punbb-1.3-dev/upload/include/cache.php

    r1062 r1069  
    220220        fclose($fh); 
    221221} 
     222 
     223 
     224// 
     225// Generate the updates cache PHP script 
     226// 
     227function generate_updates_cache() 
     228{ 
     229        global $db, $pun_config; 
     230 
     231        // Get a list of installed hotfix extensions 
     232        $query = array( 
     233                'SELECT'        => 'e.id', 
     234                'FROM'          => 'extensions AS e', 
     235                'WHERE'         => 'e.id LIKE \'hotfix_%\'' 
     236        ); 
     237 
     238        ($hook = get_hook('ch_qr_get_hotfixes')) ? eval($hook) : null; 
     239        $result = $db->query_build($query) or error(__FILE__, __LINE__); 
     240        $num_hotfixes = $db->num_rows($result); 
     241 
     242        $hotfixes = array(); 
     243        for ($i = 0; $i < $num_hotfixes; ++$i) 
     244                $hotfixes[] = urlencode($db->result($result, $i)); 
     245 
     246        // Contact the punbb.org updates service 
     247        $result = get_remote_file('http://punbb.org/update/?type=xml&version='.urlencode($pun_config['o_cur_version']).'&hotfixes='.implode(',', $hotfixes), 8); 
     248 
     249        // Make sure we got everything we need 
     250        if ($result != null && strpos($result['content'], '</updates>') !== false) 
     251        { 
     252                require PUN_ROOT.'/include/xml.php'; 
     253 
     254                $output = xml_to_array($result['content']); 
     255                $output = current($output); 
     256                $output['cached'] = time(); 
     257                $output['fail'] = false; 
     258        }        
     259        else    // If the update check failed, set the fail flag 
     260                $output = array('cached' => time(), 'fail' => true); 
     261 
     262        // This hook could potentially (and responsibly) be used by an extension to do its own little update check 
     263        ($hook = get_hook('ch_generate_updates_cache_write')) ? eval($hook) : null; 
     264 
     265        // Output update status as PHP code 
     266        $fh = @fopen(PUN_CACHE_DIR.'cache_updates.php', 'wb'); 
     267        if (!$fh) 
     268                error('Unable to write updates cache file to cache directory. Please make sure PHP has write access to the directory \'cache\'.', __FILE__, __LINE__); 
     269 
     270        fwrite($fh, '<?php'."\n\n".'if (!defined(\'PUN_UPDATES_LOADED\')) define(\'PUN_UPDATES_LOADED\', 1);'."\n\n".'$pun_updates = '.var_export($output, true).';'."\n\n".'?>'); 
     271 
     272        fclose($fh); 
     273} 
  • branches/punbb-1.3-dev/upload/include/common.php

    r1042 r1069  
    169169 
    170170 
     171// Load cached updates info 
     172if ($pun_user['g_id'] == PUN_ADMIN) 
     173{ 
     174        if (file_exists(PUN_CACHE_DIR.'cache_updates.php')) 
     175                include PUN_CACHE_DIR.'cache_updates.php'; 
     176 
     177        // Regenerate cache only if automatic updates are enabled and if the cache is more than 12 hours old 
     178        if ($pun_config['o_check_for_updates'] == '1' && (!defined('PUN_UPDATES_LOADED') || $pun_updates['cached'] < (time() - 43200))) 
     179        { 
     180                require_once PUN_ROOT.'include/cache.php'; 
     181                generate_updates_cache(); 
     182                require PUN_CACHE_DIR.'cache_updates.php'; 
     183        } 
     184} 
     185 
     186 
    171187// Load cached bans 
    172188if (file_exists(PUN_CACHE_DIR.'cache_bans.php')) 
  • branches/punbb-1.3-dev/upload/include/functions.php

    r1068 r1069  
    17611761function message($message) 
    17621762{ 
    1763         global $db, $pun_url, $lang_common, $pun_config, $base_url, $pun_start, $tpl_main, $pun_user, $pun_page
     1763        global $db, $pun_url, $lang_common, $pun_config, $base_url, $pun_start, $tpl_main, $pun_user, $pun_page, $pun_updates
    17641764 
    17651765        ($hook = get_hook('fn_message_start')) ? eval($hook) : null; 
  • branches/punbb-1.3-dev/upload/install.php

    r1062 r1069  
    13771377        $db->query('INSERT INTO '.$db_prefix."users (group_id, username, password, email, num_posts, last_post, registered, registration_ip, last_visit, salt) VALUES(1, '".$db->escape($username)."', '".sha1($salt.sha1($password1))."', '$email', 1, ".$now.", ".$now.", '127.0.0.1', ".$now.", '".$db->escape($salt)."')") or error(__FILE__, __LINE__); 
    13781378 
    1379         // Disable avatars if file_uploads is off in php configuration 
    1380         $upload_setting = @ini_get('file_uploads'); 
    1381         $avatars = ($upload_setting === "" || $upload_setting === "0" || strtolower($upload_setting === "off")) ? 0 : 1; 
     1379        // Enable/disable avatars depending on file_uploads setting in PHP configuration 
     1380        $avatars = in_array(strtolower(@ini_get('file_uploads')), array('on', 'true', '1')) ? 1 : 0; 
     1381 
     1382        // Enable/disable automatic check for updates depending on PHP environment (require cURL, fsockopen or allow_url_fopen) 
     1383        $check_for_updates = (function_exists('curl_init') || function_exists('fsockopen') || in_array(strtolower(@ini_get('allow_url_fopen')), array('on', 'true', '1'))) ? 1 : 0; 
    13821384 
    13831385        // Insert config data 
     
    13891391                'o_time_format'                         => "'H:i:s'", 
    13901392                'o_date_format'                         => "'Y-m-d'", 
    1391                 'o_check_for_updates'           => "'1'", 
     1393                'o_check_for_updates'           => "'$check_for_updates'", 
    13921394                'o_timeout_visit'                       => "'1800'", 
    13931395                'o_timeout_online'                      => "'300'", 
  • branches/punbb-1.3-dev/upload/lang/English/admin.php

    r1056 r1069  
    174174'Install notes'                                 =>      'Install notes', 
    175175'Uninstall notes'                               =>      'Uninstall notes', 
     176'Hotfix download failed'                =>      'Download and install of a hotfix extension failed. Please wait a while and try again.', 
    176177 
    177178// admin_forums 
     
    275276'Forum information head'                =>      'Forum information', 
    276277'PunBB version'                                 =>      'PunBB version', 
    277 'Check for upgrade'                             =>      'Check for upgrade', 
     278'Check for updates enabled'             =>      'This board is setup to automatically check for updates and hotfixes against the PunBB.org updates service.', 
     279'Check for updates manual'              =>      'Check for updates',    // Link text 
    278280'Server load'                                   =>      'Server load', 
    279281'users online'                                  =>      'users online', 
     
    285287'Rows'                                                  =>      'Rows', 
    286288'Size'                                                  =>      'Size', 
    287 'Check upgrade error'                   =>      'Check for upgrade failed. Possible cause: %s - %s', 
    288 'Latest version message'                =>      'You are running the latest version of PunBB.', 
    289 'New version message'                   =>      'A new version of PunBB has been released. You can download the latest version at', 
    290289'phpinfo disabled'                              =>      'The PHP function phpinfo() has been disabled on this server.', 
    291290'Not available'                                 =>      'Not available', 
     
    315314'Addressing legend'                             =>      'Board URLs', 
    316315'Board defaults legend'                 =>      'Board defaults', 
     316'Updates legend'                                =>      'Updates', 
    317317'Timeouts legend'                               =>      'Board timeouts', 
    318318'Board menu legend'                             =>      'Board navigation', 
     
    330330'Date format'                                   =>      'Date format', 
    331331'Current format'                                =>      'Current format:', 
     332'Auto check for updates'                =>      'Automatically check for updates', 
     333'Auto check for updates info'   =>      'When enabled, PunBB will periodically check if there are any important updates to your software. This covers new version releases as well as hotfix extensions.', 
     334'Auto check disabled'                   =>      'The ability to automatically check for updates has been disabled. In order to support this feature, the PHP environment under which PunBB runs, must support either the <a href="http://www.php.net/manual/en/ref.curl.php">cURL extension</a>, the <a href="http://www.php.net/manual/en/function.fsockopen.php">fsockopen() function</a> or be configured with <a href="http://www.php.net/manual/en/ref.filesystem.php#ini.allow-url-fopen">allow_url_fopen</a> enabled.', 
    332335'Visit timeout'                                 =>      'Visit timeout (seconds)', 
    333336'Visit timeout info'                    =>      'Idle time before last visit data is updated.', 
  • branches/punbb-1.3-dev/upload/lang/English/common.php

    r1064 r1069  
    118118'New reports'                   =>      'New reports', 
    119119'Attention'                             =>      'Attention!', 
     120 
     121// Alerts 
    120122'Maintenance mode'              =>      'Maintenance mode is enabled!', 
    121123'Maintenance alert'             =>      'This board is in maintenance mode. DO NOT logout, if you do you will not be able to login.', 
     124'Updates'                               =>      'PunBB updates', 
     125'Updates failed'                =>      'The latest attempt at checking for updates against the PunBB.org updates service failed. This probably just means that the service is temporarily overloaded or out of order. However, if this alert does not disappear within a day or two, you should disable the automatic check for updates and check for updates manually in the future.', 
     126'Updates version n hf'  =>      'A newer version of PunBB, version %s, is available for download at <a href="http://punbb.org/">PunBB.org</a>. Furthermore, one or more hotfix extensions are available for install on the Extensions tab of the admin interface.', 
     127'Updates version'               =>      'A newer version of PunBB, version %s, is available for download at <a href="http://punbb.org/">PunBB.org</a>.', 
     128'Updates hf'                    =>      'One or more hotfix extensions are available for install on the Extensions tab of the admin interface.', 
    122129 
    123130// Stuff for Quick Links menu page footer