OSDN Git Service

Add files via upload
[idb/iDB.git.git] / install.php
index e1cb30f..41616cc 100644 (file)
@@ -8,15 +8,80 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     Revised BSD License for more details.
 
-    Copyright 2004-2009 iDB Support - http://idb.berlios.de/
-    Copyright 2004-2009 Game Maker 2k - http://gamemaker2k.org/
-    iDB Installer made by Game Maker 2k - http://idb.berlios.de/support/category.php?act=view&id=2
+    Copyright 2004-2019 iDB Support - https://idb.osdn.jp/support/category.php?act=view&id=1
+    Copyright 2004-2019 Game Maker 2k - https://idb.osdn.jp/support/category.php?act=view&id=2
+    iDB Installer made by Game Maker 2k - https://idb.osdn.jp/support/category.php?act=view&id=2support/category.php?act=view&id=2
 
-    $FileInfo: install.php - Last Update: 11/23/2009 SVN 359 - Author: cooldude2k $
-*/
+    $FileInfo: install.php - Last Update: 08/02/2019 SVN 905 - Author: cooldude2k $
+*//*
 if(ini_get("register_globals")) {
 require_once('inc/misc/killglobals.php'); }
-error_reporting(E_ALL ^ E_NOTICE);
+*//* Some ini setting changes uncomment if you need them. 
+   Display PHP Errors */
+$disfunc = @ini_get("disable_functions");
+$disfunc = @trim($disfunc);
+$disfunc = @preg_replace("/([\\s+|\\t+|\\n+|\\r+|\\0+|\\x0B+])/i", "", $disfunc);
+if($disfunc!="ini_set") { $disfunc = explode(",",$disfunc); }
+if($disfunc=="ini_set") { $disfunc = array("ini_set"); }
+if(!in_array("ini_set", $disfunc)) {
+@ini_set("html_errors", false);
+@ini_set("track_errors", false);
+@ini_set("display_errors", false);
+@ini_set("report_memleaks", false);
+@ini_set("display_startup_errors", false);
+//@ini_set("error_log","logs/error.log"); 
+//@ini_set("log_errors","On");
+@ini_set("docref_ext", "");
+@ini_set("docref_root", "http://php.net/"); }
+if(!defined("E_DEPRECATED")) { define("E_DEPRECATED", 0); }
+@error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
+/* Get rid of session id in urls */
+if(!in_array("ini_set", $disfunc)) {
+@ini_set("default_mimetype","text/html"); 
+@ini_set("zlib.output_compression", false);
+@ini_set("zlib.output_compression_level", -1);
+@ini_set("session.use_trans_sid", false);
+@ini_set("session.use_cookies", true);
+@ini_set("session.use_only_cookies", true);
+@ini_set("url_rewriter.tags",""); 
+@ini_set('zend.ze1_compatibility_mode', 0);
+@ini_set("ignore_user_abort", 1); }
+@set_time_limit(30); @ignore_user_abort(true);
+/* Change session garbage collection settings */
+if(!in_array("ini_set", $disfunc)) {
+@ini_set("session.gc_probability", 1);
+@ini_set("session.gc_divisor", 100);
+@ini_set("session.gc_maxlifetime", 1440);
+/* Change session hash type here */
+@ini_set("session.hash_function", 1);
+@ini_set("session.hash_bits_per_character", 6); }
+if(file_exists('extrasettings.php')) {
+       require_once('extrasettings.php'); }
+if(file_exists('extendsettings.php')) {
+       require_once('extendsettings.php'); }
+if(!isset($Settings['qstr'])) { $Settings['qstr'] = null; }
+if(!isset($Settings['send_pagesize'])) { $Settings['send_pagesize'] = "on"; }
+$deftz = new DateTimeZone(date_default_timezone_get());
+$defcurtime = new DateTime();
+$defcurtime->setTimezone($deftz);
+$utctz = new DateTimeZone("UTC");
+$utccurtime = new DateTime();
+$utccurtime->setTimestamp($defcurtime->getTimestamp());
+$utccurtime->setTimezone($utctz);
+$servcurtime = new DateTime();
+$servcurtime->setTimestamp($defcurtime->getTimestamp());
+$usercurtime = new DateTime();
+$usercurtime->setTimestamp($defcurtime->getTimestamp());
+/* Do not change anything below this line unless you know what you are doing */
+if(!isset($Settings['clean_ob'])) { $Settings['clean_ob'] = "off"; }
+function idb_output_handler($buffer) { return $buffer; }
+if($Settings['clean_ob']=="on") {
+/* Check for other output handlers/buffers are open
+   and close and get the contents in an array */
+$numob = count(ob_list_handlers()); $iob = 0; 
+while ($iob < $numob) { 
+       $old_ob_var[$iob] = ob_get_clean(); 
+       ++$iob; } } ob_start("idb_output_handler");
 if(ini_get("register_globals")) { 
        if(!isset($SettDir['misc'])) { $SettDir['misc'] = "inc/misc/"; }
        require_once($SettDir['misc'].'killglobals.php'); }
@@ -30,12 +95,13 @@ $_GET['act'] = strtolower($_GET['act']); if(isset($_TEG['part'])) {
 if($_TEG['part']<=4&&$_TEG['part']>=1) { $_GET['act'] = "Part".$_TEG['part']; } }
 if ($_GET['act']!="Part4"&&$_POST['act']!="Part4") {
        $preact['idb'] = "installing";  }
-$SetupDir['setup'] = "setup/"; $ConvertDir['setup'] = $SetupDir['setup'];
-$SetupDir['convert'] = "setup/convert/"; $ConvertDir['convert'] = $SetupDir['convert'];
-$Settings['output_type'] = "html"; $Settings['html_type'] = "xhtml10";
+$SetupDir['setup'] = "setup/"; $ConvertDir['setup'] = $SetupDir['setup']; $SetupDir['sql'] = "setup/sql/"; 
+$SetupDir['convert'] = "setup/convert/"; $ConvertDir['convert'] = $SetupDir['convert']; $ConvertDir['sql'] = $SetupDir['sql'];
+$Settings['output_type'] = "html"; $Settings['html_type'] = "html5";
 $Settings['board_name'] = "Installing iDB"; 
 if(!isset($Settings['charset'])) {
-       $Settings['charset'] = "ISO-8859-15"; }
+       $Settings['charset'] = "ISO-8859-15"; 
+       header("Content-Type: text/html; charset=ISO-8859-15"); }
 if(isset($Settings['charset'])) {
 if($Settings['charset']!="ISO-8859-15"&&$Settings['charset']!="ISO-8859-1"&&
        $Settings['charset']!="UTF-8"&&$Settings['charset']!="CP866"&&
@@ -43,7 +109,8 @@ if($Settings['charset']!="ISO-8859-15"&&$Settings['charset']!="ISO-8859-1"&&
        $Settings['charset']!="KOI8-R"&&$Settings['charset']!="BIG5"&&
        $Settings['charset']!="GB2312"&&$Settings['charset']!="BIG5-HKSCS"&&
        $Settings['charset']!="Shift_JIS"&&$Settings['charset']!="EUC-JP") {
-       $Settings['charset'] = "ISO-8859-15"; } }
+       $Settings['charset'] = "ISO-8859-15"; 
+       header("Content-Type: text/html; charset=ISO-8859-15"); } }
 $SQLCharset = "latin1";
 if(isset($_POST['charset'])) { 
 if($_POST['charset']=="ISO-8859-1") {
@@ -53,9 +120,10 @@ if($_POST['charset']=="ISO-8859-15") {
 if($_POST['charset']=="UTF-8") {
        $SQLCharset = "utf8"; }
        $Settings['charset'] = $_POST['charset']; }
-if(!isset($_SERVER['HTTPS'])) { $_SERVER['HTTPS']=="off"; }
-if($_SERVER['HTTPS']=="on") { $prehost = "https://"; }
-if($_SERVER['HTTPS']!="on") { $prehost = "http://"; }
+$ServHTTPS = "off";
+if(isset($_SERVER['HTTPS'])) { $ServHTTPS=="off"; }
+if($ServHTTPS=="on") { $prehost = "https://"; }
+if($ServHTTPS!="on") { $prehost = "http://"; }
 $this_dir = null;
 if(dirname($_SERVER['SCRIPT_NAME'])!="."||
        dirname($_SERVER['SCRIPT_NAME'])!=null) {
@@ -77,25 +145,55 @@ require($SetupDir['setup'].'preinstall.php');
 require_once($SettDir['misc'].'utf8.php');
 require_once($SettDir['inc'].'filename.php');
 require_once($SettDir['inc'].'function.php');
+if($_GET['act']=="README"||$_GET['act']=="ReadME") { $_GET['act']="readme"; }
+if($_GET['act']=="readme"||$_GET['act']=="ReadMe") {
+header("Content-Type: text/plain; charset=".$Settings['charset']);
+require("README"); fix_amp(null); die(); }
+if($_GET['act']=="LICENSE"||$_GET['act']=="License") { $_GET['act']="license"; }
+if($_GET['act']=="license"||$_GET['act']=="BSD") {
+header("Content-Type: text/plain; charset=".$Settings['charset']);
+require("LICENSE"); fix_amp(null); die(); }
+if($_GET['act']=="TOS"||$_GET['act']=="ToS") { $_GET['act']="tos"; }
+if($_GET['act']=="tos"||$_GET['act']=="terms") {
+header("Content-Type: text/plain; charset=".$Settings['charset']);
+require("TOS"); fix_amp(null); die(); }
+$Settings['board_name'] = "Installing ".$RName; 
+function get_theme_values($matches) {
+       global $ThemeSet;
+       $return_text = null;
+       if(isset($ThemeSet[$matches[1]])) { $return_text = $ThemeSet[$matches[1]]; }
+       if(!isset($ThemeSet[$matches[1]])) { $return_text = null; }
+       return $return_text; }
+foreach($ThemeSet AS $key => $value) {
+       $ThemeSet[$key] = preg_replace("/%%/s", "{percent}p", $ThemeSet[$key]);
+       $ThemeSet[$key] = preg_replace_callback("/%\{([^\}]*)\}T/s", "get_theme_values", $ThemeSet[$key]);
+       $ThemeSet[$key] = preg_replace_callback("/%\{([^\}]*)\}e/s", "get_env_values", $ThemeSet[$key]);
+       $ThemeSet[$key] = preg_replace_callback("/%\{([^\}]*)\}i/s", "get_server_values", $ThemeSet[$key]);
+       $ThemeSet[$key] = preg_replace_callback("/%\{([^\}]*)\}s/s", "get_setting_values", $ThemeSet[$key]);
+       $ThemeSet[$key] = preg_replace_callback("/%\{([^\}]*)\}t/s", "get_time", $ThemeSet[$key]); 
+       $ThemeSet[$key] = preg_replace("/\{percent\}p/s", "%", $ThemeSet[$key]); }
 require($SetupDir['convert'].'info.php');
-require($SettDir['inc'].'xhtml10.php');
+require($SetupDir['setup'].'html5.php');
 $Error = null; $_GET['time'] = false;
+$title_html = htmlentities("Installing ".$VerInfo['iDB_Ver_Show'], ENT_QUOTES, $Settings['charset']);
 ?>
-
-<title> <?php echo "Installing ".$VerInfo['iDB_Ver_Show']." on ".$OSType2; ?> </title>
+<meta itemprop="title" property="og:title" content="<?php echo $title_html; ?>" />
+<meta itemprop="sitename" property="og:site_name" content="<?php echo $title_html; ?>" />
+<meta itemprop="title" property="twitter:title" content="<?php echo $title_html; ?>" />
+<title> <?php echo "Installing ".$VerInfo['iDB_Ver_Show']; ?> </title>
 </head>
 <body>
 <?php require($SettDir['inc'].'navbar.php'); ?>
 <div class="Table1Border">
 <?php if($ThemeSet['TableStyle']=="div") { ?>
 <div class="TableRow1">
-<span style="font-weight: bold; text-align: left;"><?php echo $ThemeSet['TitleIcon']; ?><a href="Install.php">Install <?php echo $VerInfo['iDB_Ver_Show']." on ".$OSType2; ?> </a></span>
+<span style="font-weight: bold; text-align: left;"><?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker("install",".php","act=Part1","&","=",null,null); ?>">Install <?php echo $VerInfo['iDB_Ver_Show']; ?> </a></span>
 </div>
 <?php } ?>
 <table class="Table1">
 <?php if($ThemeSet['TableStyle']=="table") { ?>
 <tr class="TableRow1">
-<td class="TableColumn1" colspan="2"><span style="font-weight: bold; text-align: left;"><?php echo $ThemeSet['TitleIcon']; ?><a href="Install.php">Install <?php echo $VerInfo['iDB_Ver_Show']." on ".$OSType2; ?> </a></span>
+<td class="TableColumn1"><span style="font-weight: bold; text-align: left;"><?php echo $ThemeSet['TitleIcon']; ?><a href="<?php echo url_maker("install",".php","act=Part1","&","=",null,null); ?>">Install <?php echo $VerInfo['iDB_Ver_Show']; ?> </a></span>
 </td>
 </tr><?php } ?>
 <tr class="TableRow2">
@@ -105,8 +203,8 @@ $Error = null; $_GET['time'] = false;
 </th>
 </tr>
 <?php
-if($_SERVER['HTTPS']=="on") { $prehost = "https://"; }
-if($_SERVER['HTTPS']!="on") { $prehost = "http://"; }
+if($ServHTTPS=="on") { $prehost = "https://"; }
+if($ServHTTPS!="on") { $prehost = "http://"; }
 $this_dir = null;
 if(dirname($_SERVER['SCRIPT_NAME'])!="."||
        dirname($_SERVER['SCRIPT_NAME'])!=null) {
@@ -119,7 +217,7 @@ if($this_dir=="\/") { $this_dir="/"; }
 $this_dir = str_replace("//", "/", $this_dir);
 $idbdir = addslashes(str_replace("\\","/",dirname(__FILE__)."/"));
 function sql_list_dbs() {
-   $result = sql_query("SHOW DATABASES;");
+   $result = sql_query("SHOW DATABASES;",$SQLStat);
    while( $data = sql_fetch_row($result) ) {
        $array[] = $data[0];
    } return $array; }
@@ -144,17 +242,21 @@ if ($_GET['act']!="Part3"&&$_POST['act']!="Part3") {
 if ($_GET['act']=="Part4"&&$_POST['act']=="Part4") {
    require($SetupDir['setup'].'mkconfig.php'); } } } }
 if ($Error=="Yes") { ?>
-<br />Install Failed with errors. <a href="install.php?act=view">Click here</a> to restart install. &lt;_&lt;
+<br />Install Failed with errors. <a href="<?php echo url_maker("install",".php","act=Part1","&","=",null,null); ?>">Click here</a> to restart install. &lt;_&lt;
 <br /><br />
 </td>
 </tr>
 <?php } ?>
 <tr class="TableRow4">
-<td class="TableColumn4">&nbsp;<a href="index.php?act=ReadMe">Readme.txt</a>&nbsp;</td>
+<td class="TableColumn4">&nbsp;<a href="<?php echo url_maker("install",".php","act=ReadMe","&","=",null,null); ?>">Readme.txt</a>&nbsp;|&nbsp;<a href="<?php echo url_maker("install",".php","act=License","&","=",null,null); ?>">License.txt</a>&nbsp;</td>
 </tr>
 </table></div>
 <div>&nbsp;</div>
-<?php require($SettDir['inc'].'endpage.php'); ?>
+<?php 
+require($SettDir['inc'].'endpage.php'); 
+?>
 </body>
 </html>
-<?php fix_amp(null); ?>
+<?php
+fix_amp(null);
+?>