Vergleich install/upgrade.php - 1.8.1 - 1.8.23

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 51Zeile 51
require_once MYBB_ROOT.'inc/class_language.php';

$lang = new MyLanguage();

require_once MYBB_ROOT.'inc/class_language.php';

$lang = new MyLanguage();

$lang->set_path(MYBB_ROOT.'install/resources/');

$lang->set_path(INSTALL_ROOT.'resources/');

$lang->load('language');

// If we're upgrading from an SQLite installation, make sure we still work.

$lang->load('language');

// If we're upgrading from an SQLite installation, make sure we still work.

Zeile 59Zeile 59
{
$config['database']['type'] = 'sqlite';
}

{
$config['database']['type'] = 'sqlite';
}

 

// Load DB interface
require_once MYBB_ROOT."inc/db_base.php";


require_once MYBB_ROOT."inc/db_{$config['database']['type']}.php";
switch($config['database']['type'])


require_once MYBB_ROOT."inc/db_{$config['database']['type']}.php";
switch($config['database']['type'])

Zeile 68Zeile 71
		break;
case "pgsql":
$db = new DB_PgSQL;

		break;
case "pgsql":
$db = new DB_PgSQL;

		break;

		break;

	case "mysqli":
$db = new DB_MySQLi;
break;

	case "mysqli":
$db = new DB_MySQLi;
break;

Zeile 93Zeile 96
	if(function_exists('rebuild_settings'))
{
rebuild_settings();

	if(function_exists('rebuild_settings'))
{
rebuild_settings();

	}

	}

	else
{
$options = array(

	else
{
$options = array(

Zeile 102Zeile 105
		);

$query = $db->simple_select("settings", "value, name", "", $options);

		);

$query = $db->simple_select("settings", "value, name", "", $options);





		$settings = array();
while($setting = $db->fetch_array($query))
{

		$settings = array();
while($setting = $db->fetch_array($query))
{

Zeile 110Zeile 113
			$settings[$setting['name']] = $setting['value'];
}
}

			$settings[$setting['name']] = $setting['value'];
}
}

}

}


$settings['wolcutoff'] = $settings['wolcutoffmins']*60;
$settings['bbname_orig'] = $settings['bbname'];


$settings['wolcutoff'] = $settings['wolcutoffmins']*60;
$settings['bbname_orig'] = $settings['bbname'];

Zeile 127Zeile 130

require_once MYBB_ROOT."inc/class_datacache.php";
$cache = new datacache;


require_once MYBB_ROOT."inc/class_datacache.php";
$cache = new datacache;





// Load cache
$cache->cache();

$mybb->cache = &$cache;

// Load cache
$cache->cache();

$mybb->cache = &$cache;





require_once MYBB_ROOT."inc/class_session.php";
$session = new session;
$session->init();

require_once MYBB_ROOT."inc/class_session.php";
$session = new session;
$session->init();

Zeile 140Zeile 143

// Include the necessary contants for installation
$grouppermignore = array("gid", "type", "title", "description", "namestyle", "usertitle", "stars", "starimage", "image");


// Include the necessary contants for installation
$grouppermignore = array("gid", "type", "title", "description", "namestyle", "usertitle", "stars", "starimage", "image");

$groupzerogreater = array("pmquota", "maxpmrecipients", "maxreputationsday", "attachquota", "maxemails", "maxwarningsday", "maxposts", "edittimelimit", "canusesigxposts", "maxreputationsperthread");

$groupzerogreater = array("pmquota", "maxpmrecipients", "maxreputationsday", "attachquota", "maxemails", "maxwarningsday", "maxposts", "edittimelimit", "canusesigxposts", "maxreputationsperuser", "maxreputationsperthread", "emailfloodtime");

$displaygroupfields = array("title", "description", "namestyle", "usertitle", "stars", "starimage", "image");

$displaygroupfields = array("title", "description", "namestyle", "usertitle", "stars", "starimage", "image");

$fpermfields = array("canview", "candlattachments", "canpostthreads", "canpostreplys", "canpostattachments", "canratethreads", "caneditposts", "candeleteposts", "candeletethreads", "caneditattachments", "canpostpolls", "canvotepolls", "cansearch");


$fpermfields = array('canview', 'canviewthreads', 'candlattachments', 'canpostthreads', 'canpostreplys', 'canpostattachments', 'canratethreads', 'caneditposts', 'candeleteposts', 'candeletethreads', 'caneditattachments', 'canpostpolls', 'canvotepolls', 'cansearch', 'modposts', 'modthreads', 'modattachments', 'mod_edit_posts');


// 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;

Zeile 151Zeile 154
$output->title = "MyBB Upgrade Wizard";

if(file_exists("lock"))

$output->title = "MyBB Upgrade Wizard";

if(file_exists("lock"))

{

{

	$output->print_error($lang->locked);
}
else

	$output->print_error($lang->locked);
}
else

Zeile 160Zeile 163
	if($mybb->input['action'] == "logout" && $mybb->user['uid'])
{
// Check session ID if we have one

	if($mybb->input['action'] == "logout" && $mybb->user['uid'])
{
// Check session ID if we have one

		if($mybb->get_input('logoutkey') != $mybb->user['logoutkey'])

		if($mybb->get_input('logoutkey') !== $mybb->user['logoutkey'])

		{
$output->print_error("Your user ID could not be verified to log you out. This may have been because a malicious Javascript was attempting to log you out automatically. If you intended to log out, please click the Log Out button at the top menu.");
}

my_unsetcookie("mybbuser");

		{
$output->print_error("Your user ID could not be verified to log you out. This may have been because a malicious Javascript was attempting to log you out automatically. If you intended to log out, please click the Log Out button at the top menu.");
}

my_unsetcookie("mybbuser");

		my_unsetcookie("sid");



		if($mybb->user['uid'])
{
$time = TIME_NOW;

		if($mybb->user['uid'])
{
$time = TIME_NOW;

Zeile 175Zeile 178
				"lastvisit" => $time,
);
$db->update_query("users", $lastvisit, "uid='".$mybb->user['uid']."'");

				"lastvisit" => $time,
);
$db->update_query("users", $lastvisit, "uid='".$mybb->user['uid']."'");

			$db->delete_query("sessions", "sid='".$session->sid."'");

 
		}
header("Location: upgrade.php");
}

		}
header("Location: upgrade.php");
}

Zeile 205Zeile 207
			}
}


			}
}


		$db->delete_query("sessions", "ip='".$db->escape_string($session->ipaddress)."' AND sid != '".$session->sid."'");

$newsession = array(
"uid" => $user['uid']
);

$db->update_query("sessions", $newsession, "sid='".$session->sid."'");

// Temporarily set the cookie remember option for the login cookies
$mybb->user['remember'] = $user['remember'];

my_setcookie("mybbuser", $user['uid']."_".$user['loginkey'], null, true);
my_setcookie("sid", $session->sid, -1, true);

		my_setcookie("mybbuser", $user['uid']."_".$user['loginkey'], null, true, "lax");














header("Location: ./upgrade.php");
}


header("Location: ./upgrade.php");
}

Zeile 332Zeile 322
	}
elseif($mybb->input['action'] == "doupgrade")
{

	}
elseif($mybb->input['action'] == "doupgrade")
{

		add_upgrade_store("allow_anonymous_info", $mybb->get_input('allow_anonymous_info', 1));
require_once INSTALL_ROOT."resources/upgrade".$mybb->get_input('from', 1).".php";

		add_upgrade_store("allow_anonymous_info", $mybb->get_input('allow_anonymous_info', MyBB::INPUT_INT));
require_once INSTALL_ROOT."resources/upgrade".$mybb->get_input('from', MyBB::INPUT_INT).".php";

		if($db->table_exists("datacache") && $upgrade_detail['requires_deactivated_plugins'] == 1 && $mybb->get_input('donewarning') != "true")
{
$plugins = $cache->read('plugins', true);
if(!empty($plugins['active']))
{
$output->print_header();

		if($db->table_exists("datacache") && $upgrade_detail['requires_deactivated_plugins'] == 1 && $mybb->get_input('donewarning') != "true")
{
$plugins = $cache->read('plugins', true);
if(!empty($plugins['active']))
{
$output->print_header();

				$lang->plugin_warning = "<input type=\"hidden\" name=\"from\" value=\"".$mybb->get_input('from', 1)."\" />\n<input type=\"hidden\" name=\"donewarning\" value=\"true\" />\n<div class=\"error\"><strong><span style=\"color: red\">Warning:</span></strong> <p>There are still ".count($plugins['active'])." plugin(s) active. Active plugins can sometimes cause problems during an upgrade procedure or may break your forum afterward. It is <strong>strongly</strong> reccommended that you deactivate your plugins before continuing.</p></div> <br />";

				$lang->plugin_warning = "<input type=\"hidden\" name=\"from\" value=\"".$mybb->get_input('from', MyBB::INPUT_INT)."\" />\n<input type=\"hidden\" name=\"donewarning\" value=\"true\" />\n<div class=\"error\"><strong><span style=\"color: red\">Warning:</span></strong> <p>There are still ".count($plugins['active'])." plugin(s) active. Active plugins can sometimes cause problems during an upgrade procedure or may break your forum afterward. It is <strong>strongly</strong> reccommended that you deactivate your plugins before continuing.</p></div> <br />";

				$output->print_contents($lang->sprintf($lang->plugin_warning, $mybb->version));
$output->print_footer("doupgrade");
}

				$output->print_contents($lang->sprintf($lang->plugin_warning, $mybb->version));
$output->print_footer("doupgrade");
}

			else
{
add_upgrade_store("startscript", $mybb->get_input('from', 1));
$runfunction = next_function($mybb->get_input('from', 1));
}

			else
{
add_upgrade_store("startscript", $mybb->get_input('from', MyBB::INPUT_INT));
$runfunction = next_function($mybb->get_input('from', MyBB::INPUT_INT));
}

		}
else
{

		}
else
{

			add_upgrade_store("startscript", $mybb->get_input('from', 1));
$runfunction = next_function($mybb->get_input('from', 1));

			add_upgrade_store("startscript", $mybb->get_input('from', MyBB::INPUT_INT));
$runfunction = next_function($mybb->get_input('from', MyBB::INPUT_INT));

		}
}
$currentscript = get_upgrade_store("currentscript");

		}
}
$currentscript = get_upgrade_store("currentscript");

Zeile 376Zeile 366
		$runfunction = "upgradedone";
}
else // Busy running modules, come back later

		$runfunction = "upgradedone";
}
else // Busy running modules, come back later

	{

	{

		$bits = explode("_", $mybb->input['action'], 2);
if($bits[1]) // We're still running a module
{

		$bits = explode("_", $mybb->input['action'], 2);
if($bits[1]) // We're still running a module
{

Zeile 384Zeile 374
			$runfunction = next_function($bits[0], $bits[1]);

}

			$runfunction = next_function($bits[0], $bits[1]);

}

	}

	}


// Fetch current script we're in
if(function_exists($runfunction))


// Fetch current script we're in
if(function_exists($runfunction))

Zeile 392Zeile 382
		$runfunction();
}
}

		$runfunction();
}
}







/**
* Do the upgrade changes
*/

function upgradethemes()
{
global $output, $db, $system_upgrade_detail, $lang, $mybb;

function upgradethemes()
{
global $output, $db, $system_upgrade_detail, $lang, $mybb;

Zeile 417Zeile 410
	}

if($system_upgrade_detail['revert_all_themes'] > 0)

	}

if($system_upgrade_detail['revert_all_themes'] > 0)

	{

	{

		$db->drop_table("themes");
$db->write_query("CREATE TABLE ".TABLE_PREFIX."themes (
tid smallint unsigned NOT NULL auto_increment,

		$db->drop_table("themes");
$db->write_query("CREATE TABLE ".TABLE_PREFIX."themes (
tid smallint unsigned NOT NULL auto_increment,

Zeile 440Zeile 433
			cachefile varchar(100) NOT NULL default '',
lastmodified bigint(30) NOT NULL default '0',
PRIMARY KEY(sid)

			cachefile varchar(100) NOT NULL default '',
lastmodified bigint(30) NOT NULL default '0',
PRIMARY KEY(sid)

		) ENGINE=MyISAM{$charset};");

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

		) ENGINE=MyISAM{$charset};");

$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_themes.php";
}
else if(file_exists(MYBB_ROOT."admin/inc/functions_themes.php"))
{

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

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

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

			$output->print_error("Please make sure your admin directory is uploaded correctly.");
}
import_theme_xml($contents, array("templateset" => -2, "no_templates" => 1, "version_compat" => 1));

			$output->print_error("Please make sure your admin directory is uploaded correctly.");
}
import_theme_xml($contents, array("templateset" => -2, "no_templates" => 1, "version_compat" => 1));

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

		// Re-import master
$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";
}

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

Zeile 484Zeile 477
		{
require_once MYBB_ROOT."admin/inc/functions.php";
require_once 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
{

		else
{

			$output->print_error();

			$output->print_error($lang->no_theme_functions_file);

		}

		}





		// Import master theme
import_theme_xml($contents, array("tid" => 1, "no_templates" => 1, "version_compat" => 1));

		// Import master theme
import_theme_xml($contents, array("tid" => 1, "no_templates" => 1, "version_compat" => 1));

	}

$sid = -2;


	}

$sid = -2;


	// Now deal with the master templates
$contents = @file_get_contents(INSTALL_ROOT.'resources/mybb_theme.xml');
$parser = new XMLParser($contents);
$tree = $parser->get_tree();

$theme = $tree['theme'];

	// Now deal with the master templates
$contents = @file_get_contents(INSTALL_ROOT.'resources/mybb_theme.xml');
$parser = new XMLParser($contents);
$tree = $parser->get_tree();

$theme = $tree['theme'];





	if(is_array($theme['templates']))
{
$templates = $theme['templates']['template'];

	if(is_array($theme['templates']))
{
$templates = $theme['templates']['template'];

Zeile 517Zeile 510
			if($oldtemp['tid'])
{
$update_array = array(

			if($oldtemp['tid'])
{
$update_array = array(

					'template' => $templatevalue,
'version' => $templateversion,
'dateline' => $time

					'template' => $templatevalue,
'version' => $templateversion,
'dateline' => $time

				);
$db->update_query("templates", $update_array, "title='".$db->escape_string($templatename)."' AND sid='-2'");
}

				);
$db->update_query("templates", $update_array, "title='".$db->escape_string($templatename)."' AND sid='-2'");
}

Zeile 543Zeile 536
	$output->print_footer("rebuildsettings");
}


	$output->print_footer("rebuildsettings");
}


 
/**
* Update the settings
*/

function buildsettings()
{
global $db, $output, $system_upgrade_detail, $lang;

function buildsettings()
{
global $db, $output, $system_upgrade_detail, $lang;

Zeile 553Zeile 549
		echo "<p><div class=\"error\"><span style=\"color: red; font-weight: bold;\">Error: Unable to open inc/settings.php</span><h3>Before the upgrade process can continue, you need to changes the permissions of inc/settings.php so it is writable.</h3></div></p>";
$output->print_footer("rebuildsettings");
exit;

		echo "<p><div class=\"error\"><span style=\"color: red; font-weight: bold;\">Error: Unable to open inc/settings.php</span><h3>Before the upgrade process can continue, you need to changes the permissions of inc/settings.php so it is writable.</h3></div></p>";
$output->print_footer("rebuildsettings");
exit;

	}

	}

	$synccount = sync_settings($system_upgrade_detail['revert_all_settings']);

	$synccount = sync_settings($system_upgrade_detail['revert_all_settings']);





	$output->print_header($lang->upgrade_settings_sync);
$output->print_contents($lang->sprintf($lang->upgrade_settings_sync_success, $synccount[1], $synccount[0]));
$output->print_footer("buildcaches");
}


	$output->print_header($lang->upgrade_settings_sync);
$output->print_contents($lang->sprintf($lang->upgrade_settings_sync_success, $synccount[1], $synccount[0]));
$output->print_footer("buildcaches");
}


 
/**
* Rebuild caches
*/

function buildcaches()

function buildcaches()

{

{

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

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





	$output->print_header($lang->upgrade_datacache_building);

	$output->print_header($lang->upgrade_datacache_building);





	$contents .= $lang->upgrade_building_datacache;

	$contents .= $lang->upgrade_building_datacache;

	require_once MYBB_ROOT."inc/class_datacache.php";
$cache = new datacache;




	$cache->update_version();
$cache->update_attachtypes();
$cache->update_smilies();

	$cache->update_version();
$cache->update_attachtypes();
$cache->update_smilies();

Zeile 590Zeile 588
	$cache->update_tasks();
$cache->update_spiders();
$cache->update_bannedips();

	$cache->update_tasks();
$cache->update_spiders();
$cache->update_bannedips();

	$cache->update_banned();

 
	$cache->update_birthdays();
$cache->update_most_replied_threads();
$cache->update_most_viewed_threads();
$cache->update_groupleaders();
$cache->update_threadprefixes();
$cache->update_forumsdisplay();

	$cache->update_birthdays();
$cache->update_most_replied_threads();
$cache->update_most_viewed_threads();
$cache->update_groupleaders();
$cache->update_threadprefixes();
$cache->update_forumsdisplay();

 
	$cache->update_reportreasons(true);


$contents .= $lang->done."</p>";



$contents .= $lang->done."</p>";


Zeile 604Zeile 602
	$output->print_footer("finished");
}


	$output->print_footer("finished");
}


 
/**
* Called as latest function. Send statistics, create lock file etc
*/

function upgradedone()
{

function upgradedone()
{

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

	global $db, $output, $mybb, $lang, $config, $plugins;


ob_start();


ob_start();

	$output->print_header("Upgrade Complete");

	$output->print_header($lang->upgrade_complete);


$allow_anonymous_info = get_upgrade_store("allow_anonymous_info");
if($allow_anonymous_info == 1)


$allow_anonymous_info = get_upgrade_store("allow_anonymous_info");
if($allow_anonymous_info == 1)

Zeile 626Zeile 627

// Attempt to run an update check
require_once MYBB_ROOT.'inc/functions_task.php';


// Attempt to run an update check
require_once MYBB_ROOT.'inc/functions_task.php';

	run_task(12);










	$query = $db->simple_select('tasks', 'tid', "file='versioncheck'");
$update_check = $db->fetch_array($query);
if($update_check)
{
// Load plugin system for update check
require_once MYBB_ROOT."inc/class_plugins.php";
$plugins = new pluginSystem;

run_task($update_check['tid']);
}


if(is_writable("./"))
{


if(is_writable("./"))
{

Zeile 667Zeile 677
	$output->print_footer();
}


	$output->print_footer();
}


 
/**
* Show the finish page
*/

function whatsnext()
{
global $output, $db, $system_upgrade_detail, $lang;

function whatsnext()
{
global $output, $db, $system_upgrade_detail, $lang;

Zeile 683Zeile 696
	}
}


	}
}


 
/**
* Determine the next function we need to call
*
* @param int $from
* @param string $func
*
* @return string
*/

function next_function($from, $func="dbchanges")
{
global $oldvers, $system_upgrade_detail, $currentscript, $cache;

function next_function($from, $func="dbchanges")
{
global $oldvers, $system_upgrade_detail, $currentscript, $cache;

Zeile 713Zeile 734
	return $function;
}


	return $function;
}


 
/**
* @param string $module
*/

function load_module($module)
{
global $system_upgrade_detail, $currentscript, $upgrade_detail;

function load_module($module)
{
global $system_upgrade_detail, $currentscript, $upgrade_detail;

Zeile 732Zeile 756
	}
}


	}
}


 
/**
* Get a value from our upgrade data cache
*
* @param string $title
*
* @return mixed
*/

function get_upgrade_store($title)
{
global $db;

function get_upgrade_store($title)
{
global $db;

Zeile 741Zeile 772
	return my_unserialize($data['contents']);
}


	return my_unserialize($data['contents']);
}


 
/**
* @param string $title
* @param mixed $contents
*/

function add_upgrade_store($title, $contents)
{
global $db;

$replace_array = array(
"title" => $db->escape_string($title),

function add_upgrade_store($title, $contents)
{
global $db;

$replace_array = array(
"title" => $db->escape_string($title),

		"contents" => $db->escape_string(serialize($contents))

		"contents" => $db->escape_string(my_serialize($contents))

	);
$db->replace_query("upgrade_data", $replace_array, "title");
}


	);
$db->replace_query("upgrade_data", $replace_array, "title");
}


 
/**
* @param int $redo 2 means that all setting tables will be dropped and recreated
*
* @return array
*/

function sync_settings($redo=0)
{
global $db;

function sync_settings($redo=0)
{
global $db;

Zeile 942Zeile 982
	$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))
{

		$setting['value'] = str_replace("\"", "\\\"", $setting['value']);


		$setting['name'] = addcslashes($setting['name'], "\\'");
$setting['value'] = addcslashes($setting['value'], '\\"$');

		$settings .= "\$settings['{$setting['name']}'] = \"".$setting['value']."\";\n";
}
$settings = "<?php\n/*********************************\ \n DO NOT EDIT THIS FILE, PLEASE USE\n THE SETTINGS EDITOR\n\*********************************/\n\n$settings\n";

		$settings .= "\$settings['{$setting['name']}'] = \"".$setting['value']."\";\n";
}
$settings = "<?php\n/*********************************\ \n DO NOT EDIT THIS FILE, PLEASE USE\n THE SETTINGS EDITOR\n\*********************************/\n\n$settings\n";

Zeile 952Zeile 993
	return array($groupcount, $settingcount);
}


	return array($groupcount, $settingcount);
}


 
/**
* @param int $redo 2 means that the tasks table will be dropped and recreated
*
* @return int
*/

function sync_tasks($redo=0)
{
global $db;

function sync_tasks($redo=0)
{
global $db;

Zeile 1074Zeile 1120
	return $taskcount;
}


	return $taskcount;
}


 
/**
* Write our settings to the settings file
*/

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

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

		$setting['value'] = $db->escape_string($setting['value']);


		$setting['name'] = addcslashes($setting['name'], "\\'");
$setting['value'] = addcslashes($setting['value'], '\\"$');

		$settings .= "\$settings['{$setting['name']}'] = \"{$setting['value']}\";\n";
}
if(!empty($settings))

		$settings .= "\$settings['{$setting['name']}'] = \"{$setting['value']}\";\n";
}
if(!empty($settings))

Zeile 1091Zeile 1141
		fclose($file);
}
}

		fclose($file);
}
}

?>