Vergleich admin/modules/config/settings.php - 1.8.7 - 1.8.8

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 882Zeile 882
			admin_redirect("index.php?module=config-settings");
}


			admin_redirect("index.php?module=config-settings");
}


		// If we are changing the hidden captcha, make sure it doesn't conflict with another registration field
if(isset($mybb->input['upsetting']['hiddencaptchaimagefield']))































		// Not allowed to be hidden captcha fields
$disallowed_fields = array(
'username',
'password',
'password2',
'email',
'email2',
'imagestring',
'imagehash',
'answer',
'question_id',
'allownotices',
'hideemail',
'receivepms',
'pmnotice',
'emailpmnotify',
'invisible',
'subscriptionmethod',
'timezoneoffset',
'dstcorrection',
'language',
'step',
'action',
'agree',
'regtime',
'regcheck1',
'regcheck2',
'regsubmit'
);

$is_current_hiddencaptcha_wrong = in_array($mybb->settings['hiddencaptchaimagefield'], $disallowed_fields);
if(in_array($mybb->input['upsetting']['hiddencaptchaimagefield'], $disallowed_fields) || $is_current_hiddencaptcha_wrong)

		{

		{

			// Not allowed to be hidden captcha fields
$disallowed_fields = array(
'username',
'password',
'password2',
'email',
'email2',
'imagestring',
'imagehash',
'answer',
'question_id',
'allownotices',
'hideemail',
'receivepms',
'pmnotice',
'emailpmnotify',
'invisible',
'subscriptionmethod',
'timezoneoffset',
'dstcorrection',
'language',
'step',
'action',
'agree',
'regtime',
'regcheck1',
'regcheck2',
'regsubmit'
);

if(in_array($mybb->input['upsetting']['hiddencaptchaimagefield'], $disallowed_fields))

			if(isset($mybb->input['upsetting']['hiddencaptchaimagefield']) && $mybb->input['upsetting']['hiddencaptchaimagefield'] != $mybb->settings['hiddencaptchaimagefield'] && !$is_current_hiddencaptcha_wrong)































			{

			{

				// Whoopsies, you can't do that!
$error_message = $lang->sprintf($lang->error_hidden_captcha_conflict, htmlspecialchars_uni($mybb->input['upsetting']['hiddencaptchaimagefield']));

flash_message($error_message, 'error');
admin_redirect("index.php?module=config-settings&action=change&gid=9");

				$wrong_value = $mybb->input['upsetting']['hiddencaptchaimagefield'];
$mybb->input['upsetting']['hiddencaptchaimagefield'] = $mybb->settings['hiddencaptchaimagefield'];




			}

			}

 
			else
{
$wrong_value = $mybb->settings['hiddencaptchaimagefield'];
$mybb->input['upsetting']['hiddencaptchaimagefield'] = 'email3';
}

$lang->success_settings_updated .= $lang->sprintf($lang->success_settings_updated_hiddencaptchaimage, htmlspecialchars_uni($mybb->input['upsetting']['hiddencaptchaimagefield']), htmlspecialchars_uni($wrong_value));
}

// Have we opted for a reCAPTCHA and not set a public/private key?
if((isset($mybb->input['upsetting']['captchaimage']) && in_array($mybb->input['upsetting']['captchaimage'], array(2, 4)) && (!$mybb->input['upsetting']['captchaprivatekey'] || !$mybb->input['upsetting']['captchapublickey']))
|| (in_array($mybb->settings['captchaimage'], array(2, 4)) && (!$mybb->settings['captchaprivatekey'] || !$mybb->settings['captchapublickey'])))
{
$mybb->input['upsetting']['captchaimage'] = 1;
$lang->success_settings_updated .= $lang->success_settings_updated_captchaimage;

		}

// Get settings which optionscode is a forum/group select, checkbox or numeric
// We cannot rely on user input to decide this
$checkbox_settings = $forum_group_select = array();
$query = $db->simple_select('settings', 'name, optionscode', "optionscode IN('forumselect', 'groupselect', 'numeric') OR optionscode LIKE 'checkbox%'");

		}

// Get settings which optionscode is a forum/group select, checkbox or numeric
// We cannot rely on user input to decide this
$checkbox_settings = $forum_group_select = array();
$query = $db->simple_select('settings', 'name, optionscode', "optionscode IN('forumselect', 'groupselect', 'numeric') OR optionscode LIKE 'checkbox%'");

		



		while($multisetting = $db->fetch_array($query))
{
if(substr($multisetting['optionscode'], 0, 8) == 'checkbox')
{
$checkbox_settings[] = $multisetting['name'];

		while($multisetting = $db->fetch_array($query))
{
if(substr($multisetting['optionscode'], 0, 8) == 'checkbox')
{
$checkbox_settings[] = $multisetting['name'];

				



				// All checkboxes deselected = no $mybb->input['upsetting'] for them, we need to initialize it manually then, but only on pages where the setting is shown
if(empty($mybb->input['upsetting'][$multisetting['name']]) && isset($mybb->input["isvisible_{$multisetting['name']}"]))
{

				// All checkboxes deselected = no $mybb->input['upsetting'] for them, we need to initialize it manually then, but only on pages where the setting is shown
if(empty($mybb->input['upsetting'][$multisetting['name']]) && isset($mybb->input["isvisible_{$multisetting['name']}"]))
{

Zeile 952Zeile 964
			else
{
$forum_group_select[] = $multisetting['name'];

			else
{
$forum_group_select[] = $multisetting['name'];

 
			}
}

// Administrator is changing the login method.
if($mybb->settings['username_method'] == 1 || $mybb->settings['username_method'] == 2 || $mybb->input['upsetting']['username_method'] == 1 || $mybb->input['upsetting']['username_method'] == 2)
{
$query = $db->simple_select('users', 'email, COUNT(email) AS duplicates', "email!=''", array('group_by' => 'email HAVING duplicates>1'));
if($db->num_rows($query))
{
$mybb->input['upsetting']['username_method'] = 0;
$lang->success_settings_updated .= $lang->success_settings_updated_username_method;
}
else
{
$mybb->input['upsetting']['allowmultipleemails'] = 0;
$lang->success_settings_updated .= $lang->success_settings_updated_allowmultipleemails;

			}
}


			}
}


Zeile 990Zeile 1018
				elseif($checkbox_settings && in_array($name, $checkbox_settings))
{
$value = '';

				elseif($checkbox_settings && in_array($name, $checkbox_settings))
{
$value = '';

					



					if(is_array($mybb->input['upsetting'][$name]))
{
$value = implode(',', $mybb->input['upsetting'][$name]);
}
}

					if(is_array($mybb->input['upsetting'][$name]))
{
$value = implode(',', $mybb->input['upsetting'][$name]);
}
}

				



				$db->update_query("settings", array('value' => $db->escape_string($value)), "name='".$db->escape_string($name)."'");
}
}

				$db->update_query("settings", array('value' => $db->escape_string($value)), "name='".$db->escape_string($name)."'");
}
}

Zeile 1017Zeile 1045
		// If the delayedthreadviews setting was changed, enable or disable the tasks for it.
if(isset($mybb->input['upsetting']['delayedthreadviews']) && $mybb->settings['delayedthreadviews'] != $mybb->input['upsetting']['delayedthreadviews'])
{

		// If the delayedthreadviews setting was changed, enable or disable the tasks for it.
if(isset($mybb->input['upsetting']['delayedthreadviews']) && $mybb->settings['delayedthreadviews'] != $mybb->input['upsetting']['delayedthreadviews'])
{

			if($mybb->input['upsetting']['delayedthreadviews'] == 0)
{
$updated_task = array(
"enabled" => 0
);
}
else
{
$updated_task = array(
"enabled" => 1
);
}
$db->update_query("tasks", $updated_task, "file='threadviews'");

			$db->update_query("tasks", array('enabled' => (int)$mybb->input['upsetting']['delayedthreadviews']), "file='threadviews'");













		}

// Have we changed our cookie prefix? If so, update our adminsid so we're not logged out

		}

// Have we changed our cookie prefix? If so, update our adminsid so we're not logged out

		if($mybb->input['upsetting']['cookieprefix'] && $mybb->input['upsetting']['cookieprefix'] != $mybb->settings['cookieprefix'])

		if(isset($mybb->input['upsetting']['cookieprefix']) && $mybb->input['upsetting']['cookieprefix'] != $mybb->settings['cookieprefix'])

		{
my_unsetcookie("adminsid");
$mybb->settings['cookieprefix'] = $mybb->input['upsetting']['cookieprefix'];
my_setcookie("adminsid", $admin_session['sid'], '', true);
}


		{
my_unsetcookie("adminsid");
$mybb->settings['cookieprefix'] = $mybb->input['upsetting']['cookieprefix'];
my_setcookie("adminsid", $admin_session['sid'], '', true);
}


		// Have we opted for a reCAPTCHA and not set a public/private key?
if($mybb->input['upsetting']['captchaimage'] == 2 && !$mybb->input['upsetting']['captchaprivatekey'] && !$mybb->input['upsetting']['captchapublickey'])

		if(isset($mybb->input['upsetting']['statstopreferrer']) && $mybb->input['upsetting']['statstopreferrer'] != $mybb->settings['statstopreferrer'])


		{

		{

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







			$cache->update_statistics();
}

if(isset($mybb->input['upsetting']['statslimit']) && $mybb->input['upsetting']['statslimit'] != $mybb->settings['statstopreferrer'])
{
$cache->update_most_replied_threads();
$cache->update_most_viewed_threads();

		}

rebuild_settings();

$plugins->run_hooks("admin_config_settings_change_commit");

		}

rebuild_settings();

$plugins->run_hooks("admin_config_settings_change_commit");


// If we have changed our report reasons recache them
if(isset($mybb->input['upsetting']['reportreasons']))
{
$cache->update_reportedposts();
}

 

// Log admin action
log_admin_action();


// Log admin action
log_admin_action();

Zeile 1380Zeile 1395
			else
{
$typecount = count($type);

			else
{
$typecount = count($type);

				



				if($type[0] == 'checkbox')
{
$multivalue = explode(',', $setting['value']);
}

				if($type[0] == 'checkbox')
{
$multivalue = explode(',', $setting['value']);
}

				



				for($i = 0; $i < $typecount; $i++)
{
$optionsexp = explode("=", $type[$i]);

				for($i = 0; $i < $typecount; $i++)
{
$optionsexp = explode("=", $type[$i]);

Zeile 1426Zeile 1441
						}
}
}

						}
}
}

				



				if($type[0] == "select")
{
$setting_code = $form->generate_select_box($element_name, $option_list, $setting['value'], array('id' => $element_id));

				if($type[0] == "select")
{
$setting_code = $form->generate_select_box($element_name, $option_list, $setting['value'], array('id' => $element_id));

Zeile 1434Zeile 1449
				else
{
$setting_code = implode("<br />", $option_list);

				else
{
$setting_code = implode("<br />", $option_list);

					



					if($type[0] == 'checkbox')
{
$setting_code .= $form->generate_hidden_field("isvisible_{$setting['name']}", 1);

					if($type[0] == 'checkbox')
{
$setting_code .= $form->generate_hidden_field("isvisible_{$setting['name']}", 1);

Zeile 1442Zeile 1457
				}
$option_list = array();
}

				}
$option_list = array();
}

			



			// Do we have a custom language variable for this title or description?
$title_lang = "setting_".$setting['name'];
$desc_lang = $title_lang."_desc";

			// Do we have a custom language variable for this title or description?
$title_lang = "setting_".$setting['name'];
$desc_lang = $title_lang."_desc";

Zeile 1639Zeile 1654
	echo '</div>';

echo '

	echo '</div>';

echo '

<script type="text/javascript" src="./jscripts/search.js"></script>

<script type="text/javascript" src="./jscripts/search.js?ver=1808"></script>

<script type="text/javascript">
//<!--
$(document).ready(function(){

<script type="text/javascript">
//<!--
$(document).ready(function(){