186 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			186 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?PHP
 | 
						|
session_start();
 | 
						|
header('Content-type: text/html; charset=utf-8');
 | 
						|
 | 
						|
include('config.php');
 | 
						|
include('function.php');
 | 
						|
 | 
						|
/* ############
 | 
						|
 * # LANGUAGE #
 | 
						|
 */############
 | 
						|
if (isset($_POST['install_lang'])) {
 | 
						|
    $_SESSION['install_lang'] = $_POST['install_lang'];
 | 
						|
}
 | 
						|
 | 
						|
// check user language from browser
 | 
						|
if (!isset($_SESSION['install_lang'])) {
 | 
						|
    $install_lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
 | 
						|
    if (!file_exists('lang/' . $install_lang . '/lang.php')) {
 | 
						|
        $install_lang = 'en';
 | 
						|
    }
 | 
						|
    $_SESSION['install_lang'] = $install_lang;
 | 
						|
} else {
 | 
						|
    $install_lang = $_SESSION['install_lang'];
 | 
						|
}
 | 
						|
 | 
						|
// check dir for language file
 | 
						|
$output_install_lang = '';
 | 
						|
$option_install_language = scandir('lang/');
 | 
						|
foreach ($option_install_language as $val) {
 | 
						|
    if (file_exists('lang/' . $val . '/lang.php')) {
 | 
						|
        
 | 
						|
        if (array_key_exists($val, $langs)) {
 | 
						|
            $lang_title = $langs[$val];
 | 
						|
        } else {
 | 
						|
            $lang_title = $val;
 | 
						|
        }
 | 
						|
        $output_install_lang.= '<option' . ($val == $install_lang ? ' selected="selected"' : '') . ' value="' . $val . '">' . $lang_title . '</option>';
 | 
						|
    }
 | 
						|
}
 | 
						|
include('lang/' . $install_lang . '/lang.php');
 | 
						|
$output_panel = '';
 | 
						|
 | 
						|
switch ($option) {
 | 
						|
    
 | 
						|
    case 'license':
 | 
						|
        /* ###########
 | 
						|
         * # LICENSE #
 | 
						|
         */###########
 | 
						|
        $license_file = 'LICENSE.txt';
 | 
						|
        if (file_exists($license_file)) {
 | 
						|
            $fp = fopen($license_file, 'r');
 | 
						|
            $license = fread($fp, 88192);
 | 
						|
        } else {
 | 
						|
            $license = 'No license file.';
 | 
						|
        }
 | 
						|
        $title = $lang['ins_license'];
 | 
						|
        $output_panel = '
 | 
						|
        <form>
 | 
						|
            <textarea class="textera" readonly="readonly">' . $license . '</textarea>
 | 
						|
        </form>
 | 
						|
        <a class="box" href="install.php?option=database">' . $lang['ins_accept'] . '</a>
 | 
						|
        ';
 | 
						|
        break;
 | 
						|
        
 | 
						|
    case 'database':
 | 
						|
        /* ################
 | 
						|
         * # SET DATABASE #
 | 
						|
         */################
 | 
						|
        if (file_exists('db.php')) {
 | 
						|
            $output_panel_info.= $lang['ins_db_exist'] . '<br />';
 | 
						|
        }
 | 
						|
        $title = $lang['inst_conn_db'];
 | 
						|
        $output_panel = '
 | 
						|
            <form action="install.php?option=success" method="post">
 | 
						|
                <table>
 | 
						|
                    <tr><td>' . $lang['inst_server'] . ':</td><td><input type="text" name="host" value="localhost"></td></tr>
 | 
						|
                    <tr><td>' . $lang['inst_port'] . ':</td><td><input type="text" name="port" value="3306"></td></tr>
 | 
						|
                    <tr><td>' . $lang['inst_login'] . ':</td><td><input type="text" name="login" value="xbmc"></td></tr>
 | 
						|
                    <tr><td>' . $lang['inst_pass'] . ':</td><td><input type="password" name="pass" value=""></td></tr>
 | 
						|
                    <tr><td>' . $lang['inst_database'] . ':</td><td><input type="text" name="database" value="movielib"></td></tr>
 | 
						|
                </table>
 | 
						|
                <input id="ok" type="submit" value="OK" />
 | 
						|
            </form>';
 | 
						|
        break;
 | 
						|
        
 | 
						|
    case 'success':
 | 
						|
        /* ##################
 | 
						|
         * # CHECK DATABASE #
 | 
						|
         */##################
 | 
						|
        $conn_install = mysql_connect($_POST['host'] . ':' . $_POST['port'], $_POST['login'], $_POST['pass']);
 | 
						|
        if (!$conn_install) {
 | 
						|
            die($lang['ins_could_connect'] . ' - ' . mysql_error());
 | 
						|
        }
 | 
						|
        $create_sql = 'CREATE DATABASE IF NOT EXISTS ' . $_POST['database'];
 | 
						|
        mysql_q($create_sql);
 | 
						|
        
 | 
						|
        $sel_install = mysql_select_db($_POST['database']);
 | 
						|
        if (!$sel_install) {
 | 
						|
            die($lang['ins_could_connect'] . ' - ' . mysql_error());
 | 
						|
        }
 | 
						|
        create_table($mysql_tables, $mysql_indexes, $lang, $version, 1);
 | 
						|
        
 | 
						|
        // create db.php
 | 
						|
        $to_write = '<?PHP $mysql_ml = array(\'' . $_POST['host'] . '\', \'' . $_POST['port'] . '\', \'' . $_POST['login'] . '\', \'' . $_POST['pass'] . '\', \'' . $_POST['database'] . '\'); ?>';
 | 
						|
        $fp = @fopen('db.php', 'w');
 | 
						|
        if (!$fp) {
 | 
						|
            $title = $lang['ins_error'];
 | 
						|
            if (file_exists('db.php')) {
 | 
						|
                $output_panel_error.= $lang['ins_file_db_ex'] . ' ' . substr(decoct(fileperms('db.php')), -3) . '<br>';
 | 
						|
            } else {
 | 
						|
                $output_panel_error.= $lang['ins_file_db_not'] . ' ' . substr(decoct(fileperms('.')), -3) . '<br>';
 | 
						|
            }
 | 
						|
            $output_panel = '
 | 
						|
                <div class="center">' . $lang['ins_file_db_cre'] . ':</div>
 | 
						|
                <form action="install.php?option=success" method="post">
 | 
						|
                    <textarea readonly="readonly">' . $to_write . '</textarea>
 | 
						|
                </form>';
 | 
						|
        } else {
 | 
						|
            fwrite($fp, $to_write);
 | 
						|
            fclose($fp);
 | 
						|
            $title = $lang['ins_finished'];
 | 
						|
            $output_panel = '<a class="box" href="admin.php?option=delete_install">' . $lang['ins_admin'] . '</a>';
 | 
						|
        }
 | 
						|
        
 | 
						|
        // delete session var
 | 
						|
        $_SESSION = array();
 | 
						|
        
 | 
						|
        break;
 | 
						|
        
 | 
						|
    default:
 | 
						|
        /* ##########
 | 
						|
         * # README #
 | 
						|
         */##########
 | 
						|
        
 | 
						|
        $readme_file = 'lang/' . $_SESSION['install_lang'] . '/readme';
 | 
						|
        if (!file_exists($readme_file)) {
 | 
						|
            $readme_file = 'README.txt';
 | 
						|
        }
 | 
						|
        $fp = fopen($readme_file, 'r');
 | 
						|
        $readme = fread($fp, 88192);
 | 
						|
        $title = $lang['ins_lang_file'];
 | 
						|
        $output_panel = '
 | 
						|
            <form action="install.php" method="post">
 | 
						|
                <select onchange="this.form.submit()" name="install_lang">' . $output_install_lang . '</select>
 | 
						|
            </form>
 | 
						|
            <form>
 | 
						|
                <textarea readonly="readonly">' . $readme . '</textarea>
 | 
						|
            </form>
 | 
						|
            <a class="box" href="install.php?option=license">' . $lang['ins_next'] . '</a>
 | 
						|
        ';
 | 
						|
        break;
 | 
						|
        
 | 
						|
}
 | 
						|
 | 
						|
/* ##############
 | 
						|
 * # PANEL INFO #
 | 
						|
 */##############
 | 
						|
if ($output_panel_info !== '') {
 | 
						|
    $output_panel_info = '<div class="panel_info">' . $output_panel_info . '</div>';
 | 
						|
}
 | 
						|
if ($output_panel_error !== '') {
 | 
						|
    $output_panel_error = '<div class="panel_error">' . $output_panel_error . '</div>';
 | 
						|
}
 | 
						|
?>
 | 
						|
<!DOCTYPE HTML>
 | 
						|
<html>
 | 
						|
    <head>
 | 
						|
        <title>MovieLib - <?PHP echo $lang['ins_title'] ?></title>
 | 
						|
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 | 
						|
        <!--[if IE]>
 | 
						|
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
 | 
						|
        <![endif]-->
 | 
						|
        <link type="image/x-icon" href="admin/img/icon.ico" rel="icon" media="all" />
 | 
						|
        <link type="text/css" href="admin/css/style.css" rel="stylesheet" media="all" />
 | 
						|
        <script type="text/javascript" src="js/jquery-1.9.1.js"></script>
 | 
						|
        <script type="text/javascript" src="js/jquery.script.js"></script>
 | 
						|
    </head>
 | 
						|
    <body>
 | 
						|
        <?PHP echo $output_panel_info ?>
 | 
						|
        <?PHP echo $output_panel_error ?>
 | 
						|
        <div class="container_install">
 | 
						|
            <div class="title"><?PHP echo $title ?></div>
 | 
						|
            <?PHP echo $output_panel ?>
 | 
						|
        </div>
 | 
						|
    </body>
 | 
						|
</html>
 |