Вход Регистрация
Файл: admin/applications/core/setup/versions/upg_32000/version_class.php
Строк: 85
<?php

/**
 * <pre>
 * Invision Power Services
 * IP.Board v3.3.3
 * Upgrade Class
 *
 * Class to add options and notices for IP.Board upgrade
 * Last Updated: $Date: 2012-05-10 16:10:13 -0400 (Thu, 10 May 2012) $
 * </pre>
 * 
 * @author        Matt Mecham <matt@invisionpower.com>
 * @version        $Rev: 10721 $
 * @since        3.0
 * @copyright    (c) 2001 - 2009 Invision Power Services, Inc.
 * @license        http://www.invisionpower.com/company/standards.php#license
 * @link        http://www.invisionpower.com
 * @package        IP.Board
 */ 

class version_class_core_32000
{
    
/**
     * Constructor
     *
     * @param    object        $registry        Registry object
     * @return    @e void
     */
    
public function __constructipsRegistry $registry 
    {
        
/* Make object */
        
$this->registry =  $registry;
        
$this->DB       =  $this->registry->DB();
        
$this->settings =& $this->registry->fetchSettings();
        
$this->request  =& $this->registry->fetchRequest();
        
$this->cache    =  $this->registry->cache();
        
$this->caches   =& $this->registry->cache()->fetchCaches();
    }
    
    
/**
     * Add pre-upgrade options: Form
     * 
     * @return    string     HTML block
     */
    
public function preInstallOptionsForm()
    {
        
$_wrapper    "<ul>%s</ul>";
        
$_html        '';
        
$posts        $this->DB->buildAndFetch( array( 'select' => 'count(*) as total''from' => 'posts' ) );
        
        
/* Got more than 100K posts? */
        
if( $posts['total'] > 100000 )
        {
$_html    .= <<<EOF
        <li>
            <input type='checkbox' name='manualPostsTableQuery' value='1' checked='checked' />
            Внести изменение в структуру таблицы сообщений вручную?  Ваш форум содержит более 100,000 сообщений.  Мы <b>крайне рекомендуем</b> чтобы вы включили эту опцию для предотвращения возможных проблем при обновлении мастером обновления. В процессе обновления мастер на необходимом шаге выведет запросы, которые вы должны будете выполнить напрямую в базе данных, после чего вам достаточно будет обновить страницу и процесс будет продолжен.
        </li>
EOF;
        }

        if( 
$_html )
        {
            return 
sprintf$_wrapper$_html );
        }
        else
        {
            return 
'';
        }
    }
    
    
/**
     * Add pre-upgrade options: Save
     *
     * Data will be saved in saved data array as: appOptions[ app ][ versionLong ] = ( key => value );
     * 
     * @return    array     Key / value pairs to save
     */
    
public function preInstallOptionsSave()
    {
        return array( 
'manualPostsTableQuery'    => intval$_REQUEST['manualPostsTableQuery'] )
                    );
    }
    
    
/**
     * Return any post-installation notices
     * 
     * @return    array     Array of notices
     */
    
public function postInstallNotices()
    {
        return array();
    }
    
    
    
/**
     * Return any pre-installation notices
     * 
     * @return    array     Array of notices
     */
    
public function preInstallNotices()
    {
        
$notices = array();
        
        
$notices[] = "При обновлении будут удалены все XML стили.";
        
        return 
$notices;
        
    }
}
Онлайн: 2
Реклама