Vergleich install/index.php - 1.6.5 - 1.6.15

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 6Zeile 6
 * Website: http://mybb.com
* License: http://mybb.com/about/license
*

 * Website: http://mybb.com
* License: http://mybb.com/about/license
*

 * $Id: index.php 5591 2011-09-14 08:05:39Z Tomm $

 * $Id$

 */

 */


if(function_exists("unicode_decode"))
{
// Unicode extension introduced in 6.0
error_reporting(E_ALL ^ E_DEPRECATED ^ E_NOTICE ^ E_STRICT);
}
elseif(defined("E_DEPRECATED"))
{
// E_DEPRECATED introduced in 5.3
error_reporting(E_ALL ^ E_DEPRECATED ^ E_NOTICE);
}
else
{
error_reporting(E_ALL & ~E_NOTICE);
}

 

@set_time_limit(0);



@set_time_limit(0);


Zeile 36Zeile 21
{
date_default_timezone_set('GMT');
}

{
date_default_timezone_set('GMT');
}

 

require_once MYBB_ROOT.'inc/class_error.php';
$error_handler = new errorHandler();


require_once MYBB_ROOT.'inc/class_core.php';
$mybb = new MyBB;


require_once MYBB_ROOT.'inc/class_core.php';
$mybb = new MyBB;


require_once MYBB_ROOT.'inc/class_error.php';
$error_handler = new errorHandler();

 

// Include the files necessary for installation
require_once MYBB_ROOT.'inc/class_timers.php';


// Include the files necessary for installation
require_once MYBB_ROOT.'inc/class_timers.php';

Zeile 74Zeile 59
$lang = new MyLanguage();
$lang->set_path(MYBB_ROOT.'install/resources');
$lang->load('language');

$lang = new MyLanguage();
$lang->set_path(MYBB_ROOT.'install/resources');
$lang->load('language');





// Prevent any shut down functions from running
$done_shutdown = 1;


// Prevent any shut down functions from running
$done_shutdown = 1;


Zeile 87Zeile 72
// Include the installation resources
require_once INSTALL_ROOT.'resources/output.php';
$output = new installerOutput;

// Include the installation resources
require_once INSTALL_ROOT.'resources/output.php';
$output = new installerOutput;





$dboptions = array();

if(function_exists('mysqli_connect'))

$dboptions = array();

if(function_exists('mysqli_connect'))

Zeile 96Zeile 81
		'class' => 'DB_MySQLi',
'title' => 'MySQL Improved',
'short_title' => 'MySQLi',

		'class' => 'DB_MySQLi',
'title' => 'MySQL Improved',
'short_title' => 'MySQLi',

		'structure_file' => 'mysql_db_tables.php',
'population_file' => 'mysql_db_inserts.php'
);
}


		'structure_file' => 'mysql_db_tables.php',
'population_file' => 'mysql_db_inserts.php'
);
}


if(function_exists('mysql_connect'))
{
$dboptions['mysql'] = array(

if(function_exists('mysql_connect'))
{
$dboptions['mysql'] = array(

Zeile 162Zeile 147
		'adminuser' => $lang->admin_user,
'final' => $lang->finish_setup,
);

		'adminuser' => $lang->admin_user,
'final' => $lang->finish_setup,
);

	



	if(!isset($mybb->input['action']))
{
$mybb->input['action'] = 'intro';
}

	if(!isset($mybb->input['action']))
{
$mybb->input['action'] = 'intro';
}

	



	switch($mybb->input['action'])
{
case 'license':

	switch($mybb->input['action'])
{
case 'license':

Zeile 200Zeile 185
		default:
intro();
break;

		default:
intro();
break;

	}
}


	}
}


function intro()
{
global $output, $mybb, $lang;

function intro()
{
global $output, $mybb, $lang;

	



	$output->print_header($lang->welcome, 'welcome');
if(strpos(strtolower($_SERVER['PHP_SELF']), "upload/") !== false)

	$output->print_header($lang->welcome, 'welcome');
if(strpos(strtolower($_SERVER['PHP_SELF']), "upload/") !== false)

	{

	{

		echo $lang->sprintf($lang->mybb_incorrect_folder);
}
echo $lang->sprintf($lang->welcome_step, $mybb->version);
$output->print_footer('license');
}

		echo $lang->sprintf($lang->mybb_incorrect_folder);
}
echo $lang->sprintf($lang->welcome_step, $mybb->version);
$output->print_footer('license');
}





function license_agreement()
{
global $output, $lang, $mybb;

function license_agreement()
{
global $output, $lang, $mybb;

	



	ob_start();
$output->print_header($lang->license_agreement, 'license');

	ob_start();
$output->print_header($lang->license_agreement, 'license');

	



	if($mybb->input['allow_anonymous_info'] == 1)
{
require_once MYBB_ROOT."inc/functions_serverstats.php";
$build_server_stats = build_server_stats(1, '', $mybb->version_code, $mybb->config['database']['encoding']);

	if($mybb->input['allow_anonymous_info'] == 1)
{
require_once MYBB_ROOT."inc/functions_serverstats.php";
$build_server_stats = build_server_stats(1, '', $mybb->version_code, $mybb->config['database']['encoding']);

		



		if($build_server_stats['info_sent_success'] == false)
{
echo $build_server_stats['info_image'];

		if($build_server_stats['info_sent_success'] == false)
{
echo $build_server_stats['info_image'];

Zeile 849Zeile 834
covered work, you indicate your acceptance of this License to do so.

10. Automatic Licensing of Downstream Recipients.

covered work, you indicate your acceptance of this License to do so.

10. Automatic Licensing of Downstream Recipients.





  Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible

  Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible

Zeile 1015Zeile 1000
SUCH DAMAGES.

17. Interpretation of Sections 15 and 16.

SUCH DAMAGES.

17. Interpretation of Sections 15 and 16.





  If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates

  If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates

Zeile 1033Zeile 1018
function requirements_check()
{
global $output, $mybb, $dboptions, $lang;

function requirements_check()
{
global $output, $mybb, $dboptions, $lang;





	$mybb->input['action'] = "requirements_check";
$output->print_header($lang->req_check, 'requirements');
echo $lang->req_step_top;
$errors = array();
$showerror = 0;

	$mybb->input['action'] = "requirements_check";
$output->print_header($lang->req_check, 'requirements');
echo $lang->req_step_top;
$errors = array();
$showerror = 0;

	



	if(!file_exists(MYBB_ROOT."/inc/config.php"))
{
if(!@rename(MYBB_ROOT."/inc/config.default.php", MYBB_ROOT."/inc/config.php"))

	if(!file_exists(MYBB_ROOT."/inc/config.php"))
{
if(!@rename(MYBB_ROOT."/inc/config.default.php", MYBB_ROOT."/inc/config.php"))

Zeile 1064Zeile 1049
	{
$phpversion = $lang->sprintf($lang->req_step_span_pass, PHP_VERSION);
}

	{
$phpversion = $lang->sprintf($lang->req_step_span_pass, PHP_VERSION);
}

	



	if(function_exists('mb_detect_encoding'))

	if(function_exists('mb_detect_encoding'))

	{

	{

		$mboptions[] = $lang->multi_byte;

		$mboptions[] = $lang->multi_byte;

	}


	}


	if(function_exists('iconv'))
{
$mboptions[] = 'iconv';
}

	if(function_exists('iconv'))
{
$mboptions[] = 'iconv';
}

	



	// Check Multibyte extensions
if(count($mboptions) < 1)
{

	// Check Multibyte extensions
if(count($mboptions) < 1)
{

Zeile 1216Zeile 1201
function database_info()
{
global $output, $dbinfo, $errors, $mybb, $dboptions, $lang;

function database_info()
{
global $output, $dbinfo, $errors, $mybb, $dboptions, $lang;

	



	$mybb->input['action'] = 'database_info';
$output->print_header($lang->db_config, 'dbconfig');


	$mybb->input['action'] = 'database_info';
$output->print_header($lang->db_config, 'dbconfig');


Zeile 1250Zeile 1235
	{
echo $lang->db_step_config_db;
}

	{
echo $lang->db_step_config_db;
}

	



	// Loop through database engines
foreach($dboptions as $dbfile => $dbtype)
{
if($mybb->input['dbengine'] == $dbfile)
{
$dbengines .= "<option value=\"{$dbfile}\" selected=\"selected\">{$dbtype['title']}</option>";

	// Loop through database engines
foreach($dboptions as $dbfile => $dbtype)
{
if($mybb->input['dbengine'] == $dbfile)
{
$dbengines .= "<option value=\"{$dbfile}\" selected=\"selected\">{$dbtype['title']}</option>";

		}
else

		}
else

		{
$dbengines .= "<option value=\"{$dbfile}\">{$dbtype['title']}</option>";
}

		{
$dbengines .= "<option value=\"{$dbfile}\">{$dbtype['title']}</option>";
}

Zeile 1298Zeile 1283
			<tbody id=\"{$dbfile}_settings\" class=\"db_settings db_type{$class}\">
<tr>
<th colspan=\"2\" class=\"first last\">{$dbtype['title']} {$lang->database_settings}</th>

			<tbody id=\"{$dbfile}_settings\" class=\"db_settings db_type{$class}\">
<tr>
<th colspan=\"2\" class=\"first last\">{$dbtype['title']} {$lang->database_settings}</th>

				</tr>";


				</tr>";


		// SQLite gets some special settings
if($dbfile == 'sqlite')
{

		// SQLite gets some special settings
if($dbfile == 'sqlite')
{

Zeile 1341Zeile 1326
				<td class=\"last alt_col\"><input type=\"text\" class=\"text_input\" name=\"config[{$dbfile}][tableprefix]\" id=\"config_{$dbfile}_tableprefix\" value=\"".htmlspecialchars_uni($mybb->input['config'][$dbfile]['tableprefix'])."\" /></td>
</tr>
";

				<td class=\"last alt_col\"><input type=\"text\" class=\"text_input\" name=\"config[{$dbfile}][tableprefix]\" id=\"config_{$dbfile}_tableprefix\" value=\"".htmlspecialchars_uni($mybb->input['config'][$dbfile]['tableprefix'])."\" /></td>
</tr>
";

		



		// Encoding selection only if supported
if(is_array($encodings))
{

		// Encoding selection only if supported
if(is_array($encodings))
{

Zeile 1374Zeile 1359
function create_tables()
{
global $output, $dbinfo, $errors, $mybb, $dboptions, $lang;

function create_tables()
{
global $output, $dbinfo, $errors, $mybb, $dboptions, $lang;

	



	if(!file_exists(MYBB_ROOT."inc/db_{$mybb->input['dbengine']}.php"))
{
$errors[] = $lang->db_step_error_invalidengine;
database_info();
}

	if(!file_exists(MYBB_ROOT."inc/db_{$mybb->input['dbengine']}.php"))
{
$errors[] = $lang->db_step_error_invalidengine;
database_info();
}





	$config = $mybb->input['config'][$mybb->input['dbengine']];

	$config = $mybb->input['config'][$mybb->input['dbengine']];

	



	if(strstr($mybb->input['dbengine'], "sqlite") !== false)
{
if(strstr($config['dbname'], "./") !== false || strstr($config['dbname'], "../") !== false || empty($config['dbname']))

	if(strstr($mybb->input['dbengine'], "sqlite") !== false)
{
if(strstr($config['dbname'], "./") !== false || strstr($config['dbname'], "../") !== false || empty($config['dbname']))

Zeile 1428Zeile 1413
	{
$errors[] = $lang->sprintf($lang->db_step_error_nodbname, $config['dbname']);
}

	{
$errors[] = $lang->sprintf($lang->db_step_error_nodbname, $config['dbname']);
}

	



	// Most DB engines only allow certain characters in the table name. Oracle requires an alphabetic character first.
if((!preg_match("#^[A-Za-z][A-Za-z0-9_]*$#", $config['tableprefix'])) && $config['tableprefix'] != '')
{
$errors[] = $lang->db_step_error_invalid_tableprefix;

	// Most DB engines only allow certain characters in the table name. Oracle requires an alphabetic character first.
if((!preg_match("#^[A-Za-z][A-Za-z0-9_]*$#", $config['tableprefix'])) && $config['tableprefix'] != '')
{
$errors[] = $lang->db_step_error_invalid_tableprefix;

	}


	}


	// Needs to be smaller then 64 characters total (MySQL Limit).
// This allows 24 characters for the actual table name, which should be sufficient.
if(strlen($config['tableprefix']) > 40)

	// Needs to be smaller then 64 characters total (MySQL Limit).
// This allows 24 characters for the actual table name, which should be sufficient.
if(strlen($config['tableprefix']) > 40)

	{

	{

		$errors[] = $lang->db_step_error_tableprefix_too_long;

		$errors[] = $lang->db_step_error_tableprefix_too_long;

 
	}

if(($db->engine == 'mysql' || $db->engine == 'mysqli') && $config['encoding'] == 'utf8mb4' && version_compare($db->get_version(), '5.5.3', '<'))
{
$errors[] = $lang->db_step_error_utf8mb4_error;

	}

if(is_array($errors))
{
database_info();
}

	}

if(is_array($errors))
{
database_info();
}

	



	// Decide if we can use a database encoding or not
if($db->fetch_db_charsets() != false)
{
$db_encoding = "\$config['database']['encoding'] = '{$config['encoding']}';";

	// Decide if we can use a database encoding or not
if($db->fetch_db_charsets() != false)
{
$db_encoding = "\$config['database']['encoding'] = '{$config['encoding']}';";

	}

	}

	else
{
$db_encoding = "// \$config['database']['encoding'] = '{$config['encoding']}';";
}

	else
{
$db_encoding = "// \$config['database']['encoding'] = '{$config['encoding']}';";
}

	




$config['dbpass'] = addslashes($config['dbpass']);


	// Write the configuration file
$configdata = "<?php
/**
* Database configuration
*

	// Write the configuration file
$configdata = "<?php
/**
* Database configuration
*

 * Please see the MyBB Wiki for advanced

 * Please see the MyBB Docs for advanced

 * database configuration for larger installations

 * database configuration for larger installations

 * http://wiki.mybb.com/
*/


 * http://docs.mybb.com/
*/


\$config['database']['type'] = '{$mybb->input['dbengine']}';
\$config['database']['database'] = '{$config['dbname']}';
\$config['database']['table_prefix'] = '{$config['tableprefix']}';

\$config['database']['type'] = '{$mybb->input['dbengine']}';
\$config['database']['database'] = '{$config['dbname']}';
\$config['database']['table_prefix'] = '{$config['tableprefix']}';

Zeile 1531Zeile 1523

/**
* Database Encoding


/**
* Database Encoding

 *  If you wish to set an encoding for MyBB uncomment 

 *  If you wish to set an encoding for MyBB uncomment

 *  the line below (if it isn't already) and change
* the current value to the mysql charset:
* http://dev.mysql.com/doc/refman/5.1/en/charset-mysql.html

 *  the line below (if it isn't already) and change
* the current value to the mysql charset:
* http://dev.mysql.com/doc/refman/5.1/en/charset-mysql.html

Zeile 1556Zeile 1548
	'user_mail_logs' => 180, // User mail logs
'promotion_logs' => 180 // Promotion logs
);

	'user_mail_logs' => 180, // User mail logs
'promotion_logs' => 180 // Promotion logs
);

 
?>";


?>";


$file = fopen(MYBB_ROOT.'inc/config.php', 'w');
fwrite($file, $configdata);


$file = fopen(MYBB_ROOT.'inc/config.php', 'w');
fwrite($file, $configdata);

Zeile 1565Zeile 1557

// Error reporting back on
$db->error_reporting = 1;


// Error reporting back on
$db->error_reporting = 1;





	$output->print_header($lang->table_creation, 'createtables');
echo $lang->sprintf($lang->tablecreate_step_connected, $dboptions[$mybb->input['dbengine']]['short_title'], $db->get_version());

	$output->print_header($lang->table_creation, 'createtables');
echo $lang->sprintf($lang->tablecreate_step_connected, $dboptions[$mybb->input['dbengine']]['short_title'], $db->get_version());

	



	if($dboptions[$mybb->input['dbengine']]['structure_file'])

	if($dboptions[$mybb->input['dbengine']]['structure_file'])

	{

	{

		$structure_file = $dboptions[$mybb->input['dbengine']]['structure_file'];
}
else

		$structure_file = $dboptions[$mybb->input['dbengine']]['structure_file'];
}
else

	{

	{

		$structure_file = 'mysql_db_tables.php';
}


		$structure_file = 'mysql_db_tables.php';
}


Zeile 1597Zeile 1589
	}
echo $lang->tablecreate_step_done;
$output->print_footer('populate_tables');

	}
echo $lang->tablecreate_step_done;
$output->print_footer('populate_tables');

}


}


function populate_tables()
{
global $output, $lang;

function populate_tables()
{
global $output, $lang;

Zeile 1645Zeile 1637

function insert_templates()
{


function insert_templates()
{

	global $output, $cache, $db, $lang;

	global $mybb, $output, $cache, $db, $lang;


require MYBB_ROOT.'inc/config.php';
$db = db_connection($config);


require MYBB_ROOT.'inc/config.php';
$db = db_connection($config);

Zeile 1670Zeile 1662
	$contents = @file_get_contents(INSTALL_ROOT.'resources/mybb_theme.xml');
if(file_exists(MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions_themes.php"))
{

	$contents = @file_get_contents(INSTALL_ROOT.'resources/mybb_theme.xml');
if(file_exists(MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions_themes.php"))
{

 
		require_once MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions.php";

		require_once MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions_themes.php";
}
elseif(file_exists(MYBB_ROOT."admin/inc/functions_themes.php"))
{

		require_once MYBB_ROOT.$mybb->config['admin_dir']."/inc/functions_themes.php";
}
elseif(file_exists(MYBB_ROOT."admin/inc/functions_themes.php"))
{

 
		require_once MYBB_ROOT."admin/inc/functions.php";

		require_once MYBB_ROOT."admin/inc/functions_themes.php";
}
else

		require_once MYBB_ROOT."admin/inc/functions_themes.php";
}
else

Zeile 1682Zeile 1676
	}
$theme_id = import_theme_xml($contents, array("templateset" => -2, "version_compat" => 1));
$tid = build_new_theme("Default", null, $theme_id);

	}
$theme_id = import_theme_xml($contents, array("templateset" => -2, "version_compat" => 1));
$tid = build_new_theme("Default", null, $theme_id);

	



	// Update our properties template set to the correct one
$query = $db->simple_select("themes", "properties", "tid='{$tid}'", array('limit' => 1));
$properties = unserialize($db->fetch_field($query, "properties"));
$properties['templateset'] = $templateset;
unset($properties['inherited']['templateset']);


	// Update our properties template set to the correct one
$query = $db->simple_select("themes", "properties", "tid='{$tid}'", array('limit' => 1));
$properties = unserialize($db->fetch_field($query, "properties"));
$properties['templateset'] = $templateset;
unset($properties['inherited']['templateset']);


	$db->update_query("themes", array("def" => 1, "properties" => $db->escape_string(serialize($properties))), "tid='{$tid}'");


	$db->update_query("themes", array("def" => 1, "properties" => $db->escape_string(serialize($properties))), "tid='{$tid}'");


	echo $lang->theme_step_imported;
$output->print_footer('configuration');
}

	echo $lang->theme_step_imported;
$output->print_footer('configuration');
}





function configure()
{
global $output, $mybb, $errors, $lang;

function configure()
{
global $output, $mybb, $errors, $lang;

	



	$output->print_header($lang->board_config, 'config');

// If board configuration errors

	$output->print_header($lang->board_config, 'config');

// If board configuration errors

Zeile 1707Zeile 1701
		$error_list = error_list($errors);
echo $lang->sprintf($lang->config_step_error_config, $error_list);


		$error_list = error_list($errors);
echo $lang->sprintf($lang->config_step_error_config, $error_list);


		$bbname = htmlspecialchars($mybb->input['bbname']);
$bburl = htmlspecialchars($mybb->input['bburl']);
$websitename = htmlspecialchars($mybb->input['websitename']);
$websiteurl = htmlspecialchars($mybb->input['websiteurl']);
$cookiedomain = htmlspecialchars($mybb->input['cookiedomain']);
$cookiepath = htmlspecialchars($mybb->input['cookiepath']);
$contactemail = htmlspecialchars($mybb->input['contactemail']);

		$bbname = htmlspecialchars_uni($mybb->input['bbname']);
$bburl = htmlspecialchars_uni($mybb->input['bburl']);
$websitename = htmlspecialchars_uni($mybb->input['websitename']);
$websiteurl = htmlspecialchars_uni($mybb->input['websiteurl']);
$cookiedomain = htmlspecialchars_uni($mybb->input['cookiedomain']);
$cookiepath = htmlspecialchars_uni($mybb->input['cookiepath']);
$contactemail = htmlspecialchars_uni($mybb->input['contactemail']);

	}
else
{

	}
else
{

Zeile 1725Zeile 1719
		$contactemail = '';

$protocol = "http://";

		$contactemail = '';

$protocol = "http://";

		if(!empty($_SERVER['HTTPS']) || substr($bburl, 0, 5) == "https")

		if((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != "off") || substr($bburl, 0, 5) == "https")

		{
$protocol = "https://";
}

		{
$protocol = "https://";
}

Zeile 1741Zeile 1735
			$hostname = $protocol.$_SERVER['SERVER_NAME'];
$cookiedomain = '.'.$_SERVER['SERVER_NAME'];
}

			$hostname = $protocol.$_SERVER['SERVER_NAME'];
$cookiedomain = '.'.$_SERVER['SERVER_NAME'];
}

		



		if(substr($cookiedomain, 0, 5) == ".www.")
{
$cookiedomain = my_substr($cookiedomain, 4);

		if(substr($cookiedomain, 0, 5) == ".www.")
{
$cookiedomain = my_substr($cookiedomain, 4);

		}


		}


		if($_SERVER['HTTP_HOST'] == 'localhost' || $_SERVER['SERVER_NAME'] == 'localhost' || ip2long($_SERVER['SERVER_NAME']) != false)
{
$cookiedomain = '';

		if($_SERVER['HTTP_HOST'] == 'localhost' || $_SERVER['SERVER_NAME'] == 'localhost' || ip2long($_SERVER['SERVER_NAME']) != false)
{
$cookiedomain = '';

		}


		}


		if($_SERVER['SERVER_PORT'] && $_SERVER['SERVER_PORT'] != 80 && !preg_match("#:[0-9]#i", $hostname))
{
$hostname .= ':'.$_SERVER['SERVER_PORT'];

		if($_SERVER['SERVER_PORT'] && $_SERVER['SERVER_PORT'] != 80 && !preg_match("#:[0-9]#i", $hostname))
{
$hostname .= ':'.$_SERVER['SERVER_PORT'];

		}


		}


		$currentlocation = get_current_location();
if($currentlocation)
{

		$currentlocation = get_current_location();
if($currentlocation)
{

Zeile 1771Zeile 1765
				$cookiepath = my_substr($currentlocation, 0, $pos).'/';
}
}

				$cookiepath = my_substr($currentlocation, 0, $pos).'/';
}
}

		



		$currentscript = $hostname.get_current_location();

		$currentscript = $hostname.get_current_location();

		



		if($currentscript)
{
$bburl = my_substr($currentscript, 0, my_strpos($currentscript, '/install/'));

		if($currentscript)
{
$bburl = my_substr($currentscript, 0, my_strpos($currentscript, '/install/'));

		}


		}


		if($_SERVER['SERVER_ADMIN'])
{
$contactemail = $_SERVER['SERVER_ADMIN'];

		if($_SERVER['SERVER_ADMIN'])
{
$contactemail = $_SERVER['SERVER_ADMIN'];

		}

		}

	}

echo $lang->sprintf($lang->config_step_table, $bbname, $bburl, $websitename, $websiteurl, $cookiedomain, $cookiepath, $contactemail);

	}

echo $lang->sprintf($lang->config_step_table, $bbname, $bburl, $websitename, $websiteurl, $cookiedomain, $cookiepath, $contactemail);

Zeile 1792Zeile 1786
function create_admin_user()
{
global $output, $mybb, $errors, $db, $lang;

function create_admin_user()
{
global $output, $mybb, $errors, $db, $lang;

	



	$mybb->input['action'] = "adminuser";
// If no errors then check for errors from last step
if(!is_array($errors))
{
if(empty($mybb->input['bburl']))

	$mybb->input['action'] = "adminuser";
// If no errors then check for errors from last step
if(!is_array($errors))
{
if(empty($mybb->input['bburl']))

		{

		{

			$errors[] = $lang->config_step_error_url;
}
if(empty($mybb->input['bbname']))

			$errors[] = $lang->config_step_error_url;
}
if(empty($mybb->input['bbname']))

		{

		{

			$errors[] = $lang->config_step_error_name;
}
if(is_array($errors))
{
configure();

			$errors[] = $lang->config_step_error_name;
}
if(is_array($errors))
{
configure();

		}
}

		}
}

	$output->print_header($lang->create_admin, 'admin');

if(is_array($errors))

	$output->print_header($lang->create_admin, 'admin');

if(is_array($errors))

	{

	{

		$error_list = error_list($errors);
echo $lang->sprintf($lang->admin_step_error_config, $error_list);
$adminuser = $mybb->input['adminuser'];

		$error_list = error_list($errors);
echo $lang->sprintf($lang->admin_step_error_config, $error_list);
$adminuser = $mybb->input['adminuser'];

Zeile 1825Zeile 1819
		$db = db_connection($config);

echo $lang->admin_step_setupsettings;

		$db = db_connection($config);

echo $lang->admin_step_setupsettings;





		$settings = file_get_contents(INSTALL_ROOT.'resources/settings.xml');
$parser = new XMLParser($settings);
$parser->collapse_dups = 0;

		$settings = file_get_contents(INSTALL_ROOT.'resources/settings.xml');
$parser = new XMLParser($settings);
$parser->collapse_dups = 0;

Zeile 1840Zeile 1834
				'description' => $db->escape_string($settinggroup['attributes']['description']),
'disporder' => intval($settinggroup['attributes']['disporder']),
'isdefault' => $settinggroup['attributes']['isdefault'],

				'description' => $db->escape_string($settinggroup['attributes']['description']),
'disporder' => intval($settinggroup['attributes']['disporder']),
'isdefault' => $settinggroup['attributes']['isdefault'],

			);

			);

			$gid = $db->insert_query('settinggroups', $groupdata);
++$groupcount;
foreach($settinggroup['setting'] as $setting)

			$gid = $db->insert_query('settinggroups', $groupdata);
++$groupcount;
foreach($settinggroup['setting'] as $setting)

Zeile 1899Zeile 1893
				'month' => $db->escape_string($task['month'][0]['value']),
'enabled' => $db->escape_string($task['enabled'][0]['value']),
'logging' => $db->escape_string($task['logging'][0]['value'])

				'month' => $db->escape_string($task['month'][0]['value']),
'enabled' => $db->escape_string($task['enabled'][0]['value']),
'logging' => $db->escape_string($task['logging'][0]['value'])

			);


			);


			$new_task['nextrun'] = fetch_next_run($new_task);

$db->insert_query("tasks", $new_task);

			$new_task['nextrun'] = fetch_next_run($new_task);

$db->insert_query("tasks", $new_task);

Zeile 1991Zeile 1985
	if(empty($mybb->input['adminemail']))
{
$errors[] = $lang->admin_step_error_noemail;

	if(empty($mybb->input['adminemail']))
{
$errors[] = $lang->admin_step_error_noemail;

	}

	}

	if(is_array($errors))
{
create_admin_user();
}

	if(is_array($errors))
{
create_admin_user();
}





	require MYBB_ROOT.'inc/config.php';
$db = db_connection($config);

	require MYBB_ROOT.'inc/config.php';
$db = db_connection($config);

	



	require MYBB_ROOT.'inc/settings.php';
$mybb->settings = &$settings;

ob_start();
$output->print_header($lang->finish_setup, 'finish');

	require MYBB_ROOT.'inc/settings.php';
$mybb->settings = &$settings;

ob_start();
$output->print_header($lang->finish_setup, 'finish');

	



	echo $lang->done_step_usergroupsinserted;

	echo $lang->done_step_usergroupsinserted;

	
// Insert all of our user groups from the XML file


// Insert all of our user groups from the XML file

	$usergroup_settings = file_get_contents(INSTALL_ROOT.'resources/usergroups.xml');
$parser = new XMLParser($usergroup_settings);
$parser->collapse_dups = 0;

	$usergroup_settings = file_get_contents(INSTALL_ROOT.'resources/usergroups.xml');
$parser = new XMLParser($usergroup_settings);
$parser->collapse_dups = 0;

Zeile 2026Zeile 2020
			{
continue;
}

			{
continue;
}

			



			$new_group[$key] = $db->escape_string($value[0]['value']);
}
$db->insert_query("usergroups", $new_group, false);

			$new_group[$key] = $db->escape_string($value[0]['value']);
}
$db->insert_query("usergroups", $new_group, false);

		



		// If this group can access the admin CP and we haven't established the admin group - set it (just in case we ever change IDs)
if($new_group['cancp'] == 1 && !$admin_gid)
{

		// If this group can access the admin CP and we haven't established the admin group - set it (just in case we ever change IDs)
if($new_group['cancp'] == 1 && !$admin_gid)
{

Zeile 2046Zeile 2040
	}

echo $lang->done . '</p>';

	}

echo $lang->done . '</p>';

	



	echo $lang->done_step_admincreated;
$now = TIME_NOW;
$salt = random_str();

	echo $lang->done_step_admincreated;
$now = TIME_NOW;
$salt = random_str();

Zeile 2108Zeile 2102
	$parser->collapse_dups = 0;
$tree = $parser->get_tree();
$insertmodule = array();

	$parser->collapse_dups = 0;
$tree = $parser->get_tree();
$insertmodule = array();

	



	$db->delete_query("adminoptions");

	$db->delete_query("adminoptions");

	



	// Insert all the admin permissions
foreach($tree['adminoptions'][0]['user'] as $users)

	// Insert all the admin permissions
foreach($tree['adminoptions'][0]['user'] as $users)

	{			

	{

		$uid = $users['attributes']['uid'];

		$uid = $users['attributes']['uid'];

		



		foreach($users['permissions'][0]['module'] as $module)
{
foreach($module['permission'] as $permission)
{
$insertmodule[$module['attributes']['name']][$permission['attributes']['name']] = $permission['value'];
}

		foreach($users['permissions'][0]['module'] as $module)
{
foreach($module['permission'] as $permission)
{
$insertmodule[$module['attributes']['name']][$permission['attributes']['name']] = $permission['value'];
}

		}

		}


$defaultviews = array();
foreach($users['defaultviews'][0]['view'] as $view)
{
$defaultviews[$view['attributes']['type']] = $view['value'];
}


$defaultviews = array();
foreach($users['defaultviews'][0]['view'] as $view)
{
$defaultviews[$view['attributes']['type']] = $view['value'];
}

		



		$adminoptiondata = array(
'uid' => intval($uid),
'cpstyle' => '',

		$adminoptiondata = array(
'uid' => intval($uid),
'cpstyle' => '',

Zeile 2141Zeile 2135
		$insertmodule = array();

$db->insert_query('adminoptions', $adminoptiondata);

		$insertmodule = array();

$db->insert_query('adminoptions', $adminoptiondata);

	}

	}

	echo $lang->done . '</p>';

// Automatic Login

	echo $lang->done . '</p>';

// Automatic Login

Zeile 2159Zeile 2153
	{
$db->create_fulltext_index('posts', 'message');
}

	{
$db->create_fulltext_index('posts', 'message');
}


// Register a shutdown function which actually tests if this functionality is working
add_shutdown('test_shutdown_function');

 

echo $lang->done_step_cachebuilding;
require_once MYBB_ROOT.'inc/class_datacache.php';


echo $lang->done_step_cachebuilding;
require_once MYBB_ROOT.'inc/class_datacache.php';

Zeile 2191Zeile 2182
	$cache->update_forumsdisplay();
$cache->update("plugins", array());
$cache->update("internal_settings", array('encryption_key' => random_str(32)));

	$cache->update_forumsdisplay();
$cache->update("plugins", array());
$cache->update("internal_settings", array('encryption_key' => random_str(32)));

	



	$version_history = array();
$dh = opendir(INSTALL_ROOT."resources");
while(($file = readdir($dh)) !== false)

	$version_history = array();
$dh = opendir(INSTALL_ROOT."resources");
while(($file = readdir($dh)) !== false)

Zeile 2203Zeile 2194
	}
sort($version_history, SORT_NUMERIC);
$cache->update("version_history", $version_history);

	}
sort($version_history, SORT_NUMERIC);
$cache->update("version_history", $version_history);

	



	echo $lang->done . '</p>';

echo $lang->done_step_success;

	echo $lang->done . '</p>';

echo $lang->done_step_success;

Zeile 2223Zeile 2214
	{
echo $lang->done_step_dirdelete;
}

	{
echo $lang->done_step_dirdelete;
}

	echo $lang->done_subscribe_mailing;

	echo $lang->done_whats_next;

	$output->print_footer('');
}


	$output->print_footer('');
}


Zeile 2244Zeile 2235
		default:
$db = new DB_MySQL;
}

		default:
$db = new DB_MySQL;
}

	



	// Connect to Database
define('TABLE_PREFIX', $config['database']['table_prefix']);

$db->connect($config['database']);
$db->set_table_prefix(TABLE_PREFIX);
$db->type = $config['database']['type'];

	// Connect to Database
define('TABLE_PREFIX', $config['database']['table_prefix']);

$db->connect($config['database']);
$db->set_table_prefix(TABLE_PREFIX);
$db->type = $config['database']['type'];

	



	return $db;

	return $db;

}


}


function error_list($array)
{
$string = "<ul>\n";

function error_list($array)
{
$string = "<ul>\n";

Zeile 2264Zeile 2255
	}
$string .= "</ul>\n";
return $string;

	}
$string .= "</ul>\n";
return $string;

}

function write_settings()

}

function write_settings()

{
global $db;

{
global $db;

	



	$query = $db->simple_select('settings', '*', '', array('order_by' => 'title'));
while($setting = $db->fetch_array($query))
{

	$query = $db->simple_select('settings', '*', '', array('order_by' => 'title'));
while($setting = $db->fetch_array($query))
{

Zeile 2283Zeile 2274
		fwrite($file, $settings);
fclose($file);
}

		fwrite($file, $settings);
fclose($file);
}

}

function test_shutdown_function()
{
global $db;

$db->update_query("settings", array('value' => 1), "name='useshutdownfunc'");
write_settings();

 
}
?>

}
?>