ipsclass =& $ipsclass; //----------------------------------------- // Grab XML file and check //----------------------------------------- if ( file_exists( INS_ROOT_PATH . 'installfiles/sequence.xml' ) ) { $config = implode( '', file( INS_ROOT_PATH . 'installfiles/sequence.xml' ) ); $xml = new class_xml(); $config = $xml->xml_parse_document( $config ); //----------------------------------------- // Loop through and sort out settings... //----------------------------------------- foreach( $xml->xml_array['installdata']['action'] as $id => $entry ) { $_pages[ $entry['position']['VALUE'] ] = array( 'file' => $entry['file']['VALUE'], 'menu' => $entry['menu']['VALUE'] ); } ksort( $_pages ); foreach( $_pages as $position => $data ) { $this->install_pages[ $data['file'] ] = $this->ipsclass->txt_convert_charsets( $data['menu'], 'UTF-8' ); } } $this->install_pages['done'] = 'Завершение'; /* Set Current Page */ $this->page_current = ( $this->ipsclass->input['p'] ) ? $this->ipsclass->input['p'] : 'requirements'; if( ! $this->install_pages[$this->page_current] ) { $this->page_current = 'requirements'; } } /** * install_template::set_title * * Sets the title for the current page * * @var string $title */ function set_title( $title ) { $this->page_title = $title; } /** * install_template::append * * Adds to the main body output * * @var string $add */ function append( $add ) { $this->page_content .= $add; } /** * install_template::output * * Builds page and sends to browser * */ function output() { /* Build Side Bar */ $curr_reached = 0; $this->progress = array(); foreach( $this->install_pages as $key => $page ) { if( $key == $this->page_current ) { $this->progress[] = array( 'step_doing', $page ); $curr_reached = 1; } else if( $curr_reached ) { $this->progress[] = array( 'step_notdone', $page ); } else { $this->progress[] = array( 'step_done', $page ); } } $this->page_template(); } /*************************************************************** * * HTML TEMPLATE FUNCTIONS * **************************************************************/ // ------------------------------------------------------------ // Main Template // ------------------------------------------------------------ function page_template() { $this->saved_data = urlencode($this->saved_data); echo << Мастер установки продуктов Invision Power Services

 

 

 

Установщик продуктов Invision Power Services

{$this->install_pages[$this->page_current]}

    EOF; foreach( $this->progress as $p ) { echo "
  • {$p[1]}
  • "; } echo <<

Установка {$this->product_name}

{$this->product_version}
{$this->page_content}

EOF; if( ! $this->hide_next ) { if( $this->next_action == 'disabled' ) { echo << EOF; } else { if( !$this->next_action ) { $back = $this->ipsclass->my_getenv('HTTP_REFERER'); echo << EOF; } echo << EOF; } } $date = date("Y"); echo <<
EOF; } // ------------------------------------------------------------ // Requirements Page Template // ------------------------------------------------------------ function requirements_page( $php_version, $sql_version ) { return <<
Вас приветствует установщик {$this->product_name}. Данный мастер поможет вам установить новую версию продукта.


Системные требования:


PHP: v{$php_version} или выше
SQL: mySQL v$sql_version или выше

EOF; } // ------------------------------------------------------------ // EULA Page Template // ------------------------------------------------------------ function eula_page( $eula ) { return << check_eula = function() { if( document.getElementById( 'eula' ).checked == true ) { return true; } else { alert( 'Вы должны принять пользовательское соглашение, прежде чем продолжить установку' ); return false; } } document.getElementById( 'install-form' ).onsubmit = check_eula; Пожалуйста прочитайте и примите пользовательское соглашение.

$eula
Я принимаю EOF; } // ------------------------------------------------------------ // Address Page Template // ------------------------------------------------------------ function address_page( $dir, $url ) { return <<
  Директории установки
Путь установки:
Адрес установки:
EOF; } // ------------------------------------------------------------ // DB Check Page Template // ------------------------------------------------------------ function db_check_page( $drivers=array() ) { //----------------------------------------- // INIT //----------------------------------------- $_drivers = ''; foreach ($drivers as $k => $v) { $selected = ($v == "mysql") ? " selected='selected'" : ""; $_drivers .= "\n"; } return <<
Пожалуйста укажите какую база данных будет использоваться.
  Базы Данных
SQL Драйвер:
EOF; } // ------------------------------------------------------------ // DB Page Template // ------------------------------------------------------------ function db_page() { $prefix = $_REQUEST['db_pre'] ? $_REQUEST['db_pre'] : INS_DEFAULT_SQL_PREFIX; return <<
Если вы не уверены или не знаете данных, необходимых для данного шага, уточните у вашего хостинг провайдера...
  Сервер Базы Данных (БД)
Адрес сервера:
Имя базы данных:
Пользователь БД:
Пароль БД:
Префикс таблиц:
EOF; } // ------------------------------------------------------------ // Admin Page Template // ------------------------------------------------------------ function admin_page() { return <<   Учетная запись Администратора
Имя пользователя:
Пароль:
Подтверждение пароля:
E-mail адрес:
EOF; } // ------------------------------------------------------------ // Install Page SPlash Template // ------------------------------------------------------------ function install_page() { return <<product_name}. Нажмите Начать установку для запуска автоматического процесса установки!

EOF; } // ------------------------------------------------------------ // Install Page Refresh Template // ------------------------------------------------------------ function install_page_refresh( $output=array() ) { $HTML = << //
    EOF; foreach( $output as $l ) { $HTML .= << $l EOF; } $HTML .= <<
    EOF; return $HTML; } // ------------------------------------------------------------ // Install Progress Screen // ------------------------------------------------------------ function install_progress( $line ) { $HTML = << EOF; foreach( $line as $l ) { $HTML .= << $l EOF; } $HTML .= << EOF; return $HTML; } // ------------------------------------------------------------ // Install Done Screen // ------------------------------------------------------------ function install_done( $url, $install_locked ) { $extra = ''; if ( ! $install_locked ) { $extra = "

    УСТАНОВЩИК НЕ ЗАБЛОКИРОВАН
    Пожалуйста переименуйте или удалите 'install/index.php' как можно быстрее!

    "; } $HTML .= <<   Установка завершена!

    Поздравляем, установка {$this->product_name} завершена! Ниже приведены несколько полезных ссылок, которые помогут в вашей работе.

    $extra

    Полезные ссылки:

    EOF; return $HTML; } // ------------------------------------------------------------ // Warning Message Template // ------------------------------------------------------------ function warning( $messages ) { $HTML = <<
    EOF; foreach( $messages as $msg ) { $HTML .= "

    $msg

    "; } $HTML .= <<
    EOF; $this->append( $HTML ); } } ?>