Вход Регистрация
Файл: oc-includes/osclass/install.php
Строк: 318
<?php
/*
 * Copyright 2014 Osclass
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

error_reporting(E_ERROR E_CORE_ERROR E_COMPILE_ERROR E_PARSE);

define'ABS_PATH'dirname(dirname(dirname(__FILE__))) . '/' );
define'LIB_PATH'ABS_PATH 'oc-includes/' );
define'CONTENT_PATH'ABS_PATH 'oc-content/' );
define'TRANSLATIONS_PATH'CONTENT_PATH 'languages/' );
define'OSC_INSTALLING');

if(
extension_loaded('mysqli')) {
    require_once 
LIB_PATH 'osclass/Logger/Logger.php';
    require_once 
LIB_PATH 'osclass/Logger/LogDatabase.php';
    require_once 
LIB_PATH 'osclass/Logger/LogOsclass.php';
    require_once 
LIB_PATH 'osclass/classes/database/DBConnectionClass.php';
    require_once 
LIB_PATH 'osclass/classes/database/DBCommandClass.php';
    require_once 
LIB_PATH 'osclass/classes/database/DBRecordsetClass.php';
    require_once 
LIB_PATH 'osclass/classes/database/DAO.php';
    require_once 
LIB_PATH 'osclass/model/Preference.php';
    require_once 
LIB_PATH 'osclass/helpers/hPreference.php';
}
require_once 
LIB_PATH 'osclass/core/iObject_Cache.php';
require_once 
LIB_PATH 'osclass/core/Object_Cache_Factory.php';
require_once 
LIB_PATH 'osclass/helpers/hCache.php';

require_once 
LIB_PATH 'osclass/core/Session.php';
require_once 
LIB_PATH 'osclass/core/Params.php';
require_once 
LIB_PATH 'osclass/helpers/hDatabaseInfo.php';
require_once 
LIB_PATH 'osclass/helpers/hDefines.php';
require_once 
LIB_PATH 'osclass/helpers/hErrors.php';
require_once 
LIB_PATH 'osclass/helpers/hLocale.php';
require_once 
LIB_PATH 'osclass/helpers/hSearch.php';
require_once 
LIB_PATH 'osclass/helpers/hPlugins.php';
require_once 
LIB_PATH 'osclass/helpers/hTranslations.php';
require_once 
LIB_PATH 'osclass/helpers/hSanitize.php';
require_once 
LIB_PATH 'osclass/default-constants.php';
require_once 
LIB_PATH 'osclass/install-functions.php';
require_once 
LIB_PATH 'osclass/utils.php';
require_once 
LIB_PATH 'osclass/core/Translation.php';
require_once 
LIB_PATH 'osclass/classes/Plugins.php';
require_once 
LIB_PATH 'osclass/locales.php';


Params::init();
Session::newInstance()->session_start();

$locales osc_listLocales();

if(
Params::getParam('install_locale')!='') {
    
Session::newInstance()->_set('userLocale'Params::getParam('install_locale'));
    
Session::newInstance()->_set('adminLocale'Params::getParam('install_locale'));
}

if(
Session::newInstance()->_get('adminLocale')!='' && key_exists(Session::newInstance()->_get('adminLocale'), $locales)) {
    
$current_locale Session::newInstance()->_get('adminLocale');
} else if(isset(
$locales['en_US'])) {
    
$current_locale 'en_US';
} else {
    
$current_locale key($locales);
}

Session::newInstance()->_set('userLocale'$current_locale);
Session::newInstance()->_set('adminLocale'$current_locale);


$translation Translation::newInstance(true);

$step Params::getParam('step');
if( !
is_numeric($step) ) {
    
$step '1';
}

if( 
is_osclass_installed( ) ) {
    
$message __("Looks like you've already installed Osclass. To reinstall please clear your old database tables first.");
    
osc_die('Osclass &raquo; Error'$message);
}

switch( 
$step ) {
    case 
1:
        
$requirements get_requirements();
        
$error        check_requirements($requirements);
        break;
    case 
2:
        if( 
Params::getParam('save_stats') == '1'  || isset($_COOKIE['osclass_save_stats'])) {
            
setcookie('osclass_save_stats'1time() + (24*60*60) );
        } else {
            
setcookie('osclass_save_stats'0time() + (24*60*60) );
        }

        if( 
Params::getParam('ping_engines') == '1' || isset($_COOKIE['osclass_ping_engines']) ) {
            
setcookie('osclass_ping_engines'1time() + (24*60*60) );
        } else {
            
setcookie('osclass_ping_engines'0time()+ (24*60*60) );
        }

        break;
    case 
3:
        if( 
Params::getParam('dbname') != '' ) {
            
$error oc_install();
        }
        break;
    case 
4:
        if( 
Params::getParam('result') != '' ) {
            
$error Params::getParam('result');
        }
        
$password Params::getParam('password'falsefalse);
        break;
    case 
5:
        
$password Params::getParam('password'falsefalse);
        break;
    default:
        break;
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US" xml:lang="en-US">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title><?php _e('Osclass Installation'); ?></title>
        <script src="<?php echo get_absolute_url(); ?>oc-includes/osclass/assets/js/jquery.min.js" type="text/javascript"></script>
        <script src="<?php echo get_absolute_url(); ?>oc-includes/osclass/assets/js/jquery-ui.min.js" type="text/javascript"></script>
        <script src="<?php echo get_absolute_url(); ?>oc-includes/osclass/installer/vtip/vtip.js" type="text/javascript"></script>
        <script src="<?php echo get_absolute_url(); ?>oc-includes/osclass/assets/js/jquery.json.js" type="text/javascript"></script>
        <script src="<?php echo get_absolute_url(); ?>oc-includes/osclass/installer/install.js" type="text/javascript"></script>
        <script src="<?php echo get_absolute_url(); ?>oc-admin/themes/modern/js/location.js" type="text/javascript"></script>
        <link rel="stylesheet" type="text/css" media="all" href="<?php echo get_absolute_url(); ?>oc-includes/osclass/installer/install.css" />
        <link rel="stylesheet" type="text/css" media="all" href="<?php echo get_absolute_url(); ?>oc-includes/osclass/installer/vtip/css/vtip.css" />
    </head>
    <body>
        <div id="wrapper">
            <div id="container">
                <div id="header" class="installation">
                    <h1 id="logo">
                        <img src="<?php echo get_absolute_url(); ?>oc-includes/images/osclass-logo.png" alt="Osclass" title="Osclass" />
                    </h1>
                    <?php if(in_array($step, array(2,3))) { ?>
                    <ul id="nav">
                        <li class="<?php if($step == 2) { ?>actual<?php } elseif($step 2) { ?>next<?php } else { ?>past<?php }?>">1 - Database</li>
                        <li class="<?php if($step == 3) { ?>actual<?php } elseif($step 3) { ?>next<?php } else { ?>past<?php }?>">2 - Target</li>
                    </ul>
                    <div class="clear"></div>
                    <?php ?>
                </div>
                <div id="content">
                <?php if($step == 1) { ?>
                    <h2 class="target"><?php _e('Welcome');?></h2>
                    <form action="install.php" method="post">
                        <div class="form-table">
                            <?php if( count($locales) > ) { ?>
                                <div>
                                    <label for="install_locale"><?php _e('Choose language'); ?></label>
                                    <select name="install_locale" id="install_locale" onchange="window.location.href='?install_locale='+document.getElementById(this.id).value">
                                        <?php foreach($locales as $k => $locale) {?>
                                        <option value="<?php echo osc_esc_html($k); ?><?php if( $k == $current_locale ) { echo 'selected="selected"'; } ?>><?php echo $locale['name']; ?></option>
                                        <?php ?>
                                    </select>
                                </div>
                            <?php ?>
                            <?php if($error) { ?>
                            <p><?php _e('Check the next requirements:');?></p>
                            <div class="requirements_help">
                                <p><b><?php _e('Requirements help:'); ?></b></p>
                                <ul>
                                <?php foreach($requirements as $k => $v) { ?>
                                    <?php  if(!$v['fn'] && $v['solution'] != ''){ ?>
                                    <li><?php echo $v['solution']; ?></li>
                                    <?php ?>
                                <?php ?>
                                    <li><a href="http://forums.osclass.org/" hreflang="en"><?php _e('Need more help?');?></a></li>
                                </ul>
                            </div>
                            <?php } else { ?>
                            <p><?php _e('All right! All the requirements have met:');?></p>
                            <?php ?>
                            <ul>
                            <?php foreach($requirements as $k => $v) { ?>
                                <li><?php echo $v['requirement']; ?> <img src="<?php echo get_absolute_url(); ?>oc-includes/images/<?php echo $v['fn'] ? 'tick.png' 'cross.png'?>" alt="" title="" /></li>
                            <?php ?>
                            </ul>
                            <div class="more-stats">
                                <input type="checkbox" name="ping_engines" id="ping_engines" checked="checked" value="1" />
                                <label for="ping_engines">
                                    <?php _e('Allow my site to appear in search engines like Google.');?>
                                </label>
                                <br />
                                <input type="checkbox" name="save_stats" id="save_stats" checked="checked" value="1" />
                                <input type="hidden" name="step" value="2" />
                                <label for="save_stats">
                                    <?php _e('Help make Osclass better by automatically sending usage statistics and crash reports to Osclass.');?>
                                </label>
                            </div>
                        </div>
                        <?php if($error) { ?>
                        <p class="margin20">
                            <input type="button" class="button" onclick="document.location = 'install.php?step=1'" value="<?php echo osc_esc_html__('Try again'));?>" />
                        </p>
                        <?php } else { ?>
                        <p class="margin20">
                            <input type="submit" class="button" value="<?php echo osc_esc_html__('Run the install'));?>" />
                        </p>
                    <?php ?>
                    </form>
                <?php } elseif($step == 2) {
                         
display_database_config();
                    } elseif(
$step == 3) {
                        if( !isset(
$error["error"]) ) {
                            
display_target();
                        } else {
                            
display_database_error($error, ($step 1));
                        }
                    } elseif(
$step == 4) {
                        
// ping engines
                        
ping_search_engines$_COOKIE['osclass_ping_engines'] );
                        
setcookie('osclass_save_stats'''time() - 3600);
                        
setcookie('osclass_ping_engines'''time() - 3600);
                        
display_finish($password);
                    }
                
?>
                </div>
                <div id="footer">
                    <ul>
                        <li>
                            <a href="<?php echo get_absolute_url(); ?>/oc-includes/osclass/installer/readme.php" target="_blank" hreflang="en"><?php _e('Readme'); ?></a>
                        </li>
                        <li>
                            <a href="http://admin.osclass.org/feedback.php" target="_blank" hreflang="en"><?php _e('Feedback'); ?></a>
                        </li>
                        <li>
                            <a href="http://forums.osclass.org/index.php" target="_blank" hreflang="en"><?php _e('Forums');?></a>
                        </li>
                    </ul>
                </div>
            </div>
        </div>
    </body>
</html>
Онлайн: 2
Реклама