EOF;
return $IPBHTML;
}
/**
* Show the install start page
*
* @access public
* @return string HTML
*/
public function upgrade_ready( $name, $current, $latest) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<$name
Текущая версия: v{$current}
Последняя версия: v{$latest}
Опции обновления
Показывать SQL запросы для запуска вручную. ВНИМАНИЕ: Если вы выберите эту опцию, то вам будут показаны SQL запросы, которые необходмо выполнить в командной строке mysql. Если вы не уверены в своих силах, то свяжитесь с нашей службой поддержки.
Обновлять разделы помощи, если будут найдены различия
EOF;
return $IPBHTML;
}
/**
* Show the upgrade app options
*
* @access public
* @return string HTML
*/
public function upgrade_appsOptions( $options ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<
EOF;
foreach( $options as $app => $_bleh )
{
foreach( $options[ $app ] as $num => $data )
{
if ( $data['app']['key'] == 'core' )
{
$data['app']['name'] = 'IP.Board';
}
$IPBHTML .= <<{$data['app']['name']} {$data['long']}
{$data['out']}
EOF;
}
}
$IPBHTML .= <<
EOF;
return $IPBHTML;
}
/**
* Show the upgrader applications page
*
* @access public
* @param array Applications
* @return string HTML
*/
public function upgrade_apps( $apps ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<
Выберите приложения для обновления.
EOF;
foreach( array( 'core', 'ips', 'other' ) as $type )
{
switch( $type )
{
case 'core':
$title = "Приложения по-умолчанию";
break;
case 'ips':
$title = "Приложения IPS";
break;
case 'other':
$title = "Приложения сторонних разработчиков";
break;
}
if ( count( $apps[ $type ] ) )
{
$IPBHTML .= <<
EOF;
foreach( $apps[ $type ] as $key => $data )
{
if ( $type == 'core' )
{
if ( $key == 'core' )
{
$data['name'] = 'IP.Board';
}
else
{
continue;
}
}
$_upav = ( $data['_vnumbers']['current'][0] >= $data['_vnumbers']['latest'][0] ) ? 0 : 1;
$upgrade = ( ! $_upav ) ? "Обновлено" : "Обновить до {$data['_vnumbers']['latest'][1]}";
$_checked = ( $type == 'core' AND $key == 'core' AND ( $_upav ) ) ? ' checked="checked" onclick="this.checked=true"' : '';
$_style = ( ! $data['_vnumbers']['current'][0] OR ( ! $_upav ) ) ? 'display:none' : '';
/* Not installed? */
if ( ! $data['_vnumbers']['current'][0] )
{
$upgrade = "Приложение не установлено.";
$data['_vnumbers']['current'][1] = '';
}
//-----------------------------------------
// Yes, I know this wouldn't work for "core"
// apps, but we can just use the global folder
// for them so it's irrelevant
//-----------------------------------------
$img = file_exists( IPSLib::getAppDir( $key ) . '/skin_cp/appIcon.png' ) ? $this->settings['base_url'] . '/' . CP_DIRECTORY . '/applications_addon/' . $type . '/' . $key . '/skin_cp/appIcon.png' : "../skin_cp/_newimages/applications/{$key}.png";
$IPBHTML .= <<
{$data['name']}{$data['_vnumbers']['current'][1]}
$upgrade
EOF;
}
$IPBHTML .= <<
EOF;
}
}
return $IPBHTML;
}
/**
* Show the upgrade overview page
*
* @access public
* @param bool Files ok
* @param bool Extensions ok
* @param array Extensions
* @return string HTML
*/
public function upgrade_overview( $filesOK, $extensionsOK, $extensions=array()) {
$minPHP = IPSSetUp::minPhpVersion;
$minSQL = IPSSetUp::minDb_mysql;
$prefPHP = IPSSetUp::prefPhpVersion;
$prefSQL = IPSSetUp::prefDb_mysql;
$_filesOK = ( $filesOK === NULL ) ? "Не проверено" : ( ( $filesOK === FALSE ) ? "Нет" : "Есть" );
$_extensionsOK = ( $extensionsOK === FALSE ) ? "Нет" : "Есть";
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<Системные требования PHP: v{$minPHP} или выше SQL: MySQL v$minSQL ($prefSQL или выше предпочтительнее)
Проверка: Файлы Требуемые файлы: {$_filesOK}
Проверка: Расширения PHP Общие расширения: {$_extensionsOK}
EOF;
foreach( $extensions as $xt )
{
if ( $xt['_ok'] !== TRUE )
{
$IPBHTML .= " {$xt['prettyname']} ({$xt['extensionname']}): Нет (Подробнее)";
}
else
{
$IPBHTML .= " {$xt['prettyname']} ({$xt['extensionname']}): Есть";
}
}
$IPBHTML .= <<
EOF;
return $IPBHTML;
}
/**
* Log in page
*
* @access public
* @return string HTML
*/
public function upgrade_login_200plus( $loginType ) {
$IPBHTML = "";
//--starthtml--//
$label = ( $loginType == 'username' ) ? 'Имя пользователя' : 'Email адрес';
$IPBHTML .= <<
Добро пожаловать в систему обновления. Мастер обновления проведет вас через все необходимые шаги.
EOF;
return $IPBHTML;
}
/**
* Log in page
*
* @access public
* @return string HTML
*/
public function upgrade_login_300plus( $additional_data, $replace_form ) {
$IPBHTML = "";
//--starthtml--//
if( $replace_form )
{
$IPBHTML .= $additional_data[0];
}
else
{
$IPBHTML .= <<
Добро пожаловать в систему обновления. Мастер обновления проведет вас через все необходимые шаги.
EOF;
return $IPBHTML;
}
/**
* Show the applications page
*
* @access public
* @param array Applications
* @return string HTML
*/
public function page_apps( $apps ) {
$IPBHTML = "";
//--starthtml--//
$IPBHTML .= <<
Выберите приложения для установки. Были обнаружены следующие приложения:
EOF;
foreach( array( 'core', 'ips', 'other' ) as $type )
{
switch( $type )
{
case 'core':
$title = "Приложения по-умолчанию";
break;
case 'ips':
$title = "Приложения IPS";
break;
case 'other':
$title = "Приложения сторонних разработчиков";
break;
}
if ( count( $apps[ $type ] ) )
{
$IPBHTML .= <<
EOF;
foreach( $apps[ $type ] as $key => $data )
{
$_checked = ( $type == 'core' OR $type == 'ips' ) ? ' checked="checked" ' : '';
$_style = ( $type == 'core' ) ? 'display:none' : '';
//-----------------------------------------
// Yes, I know this wouldn't work for "core"
// apps, but we can just use the global folder
// for them so it's irrelevant
//-----------------------------------------
$img = file_exists( IPSLib::getAppDir( $key ) . '/skin_cp/appIcon.png' ) ? '../applications_addon/' . $type . '/' . $key . '/skin_cp/appIcon.png' : "../skin_cp/_newimages/applications/{$key}.png";
$IPBHTML .= <<