Zeile 98 | Zeile 98 |
---|
}
$form_container = new FormContainer($lang->add_new_setting_group);
|
}
$form_container = new FormContainer($lang->add_new_setting_group);
|
$form_container->output_row($lang->title." <em>*</em>", "", $form->generate_text_box('title', $mybb->input['title'], array('id' => 'title')), 'title'); $form_container->output_row($lang->description, "", $form->generate_text_area('description', $mybb->input['description'], array('id' => 'description')), 'description'); $form_container->output_row($lang->display_order, "", $form->generate_numeric_field('disporder', $mybb->input['disporder'], array('id' => 'disporder', 'min' => 0)), 'disporder'); $form_container->output_row($lang->name." <em>*</em>", $lang->group_name_desc, $form->generate_text_box('name', $mybb->input['name'], array('id' => 'name')), 'name');
| $form_container->output_row($lang->title." <em>*</em>", "", $form->generate_text_box('title', $mybb->get_input('title'), array('id' => 'title')), 'title'); $form_container->output_row($lang->description, "", $form->generate_text_area('description', $mybb->get_input('description'), array('id' => 'description')), 'description'); $form_container->output_row($lang->display_order, "", $form->generate_numeric_field('disporder', $mybb->get_input('disporder'), array('id' => 'disporder', 'min' => 0)), 'disporder'); $form_container->output_row($lang->name." <em>*</em>", $lang->group_name_desc, $form->generate_text_box('name', $mybb->get_input('name'), array('id' => 'name')), 'name');
|
$form_container->end();
$buttons[] = $form->generate_submit_button($lang->insert_new_setting_group);
| $form_container->end();
$buttons[] = $form->generate_submit_button($lang->insert_new_setting_group);
|
Zeile 118 | Zeile 118 |
---|
$group = $db->fetch_array($query);
// Does the setting not exist?
|
$group = $db->fetch_array($query);
// Does the setting not exist?
|
if(!$group['gid'])
| if(!$group)
|
{ flash_message($lang->error_invalid_gid2, 'error'); admin_redirect("index.php?module=config-settings&action=manage");
| { flash_message($lang->error_invalid_gid2, 'error'); admin_redirect("index.php?module=config-settings&action=manage");
|
Zeile 220 | Zeile 220 |
---|
$group = $db->fetch_array($query);
// Does the setting group not exist?
|
$group = $db->fetch_array($query);
// Does the setting group not exist?
|
if(!$group['gid'])
| if(!$group)
|
{ flash_message($lang->error_invalid_gid2, 'error'); admin_redirect("index.php?module=config-settings&action=manage");
| { flash_message($lang->error_invalid_gid2, 'error'); admin_redirect("index.php?module=config-settings&action=manage");
|
Zeile 233 | Zeile 233 |
---|
}
// User clicked no
|
}
// User clicked no
|
if($mybb->input['no'])
| if($mybb->get_input('no'))
|
{ admin_redirect("index.php?module=config-settings&action=manage"); }
| { admin_redirect("index.php?module=config-settings&action=manage"); }
|
Zeile 293 | Zeile 293 |
---|
}
// do some type filtering
|
}
// do some type filtering
|
$mybb->input['type'] = str_replace("\n", "", $mybb->input['type']); if(strtolower(substr($mybb->input['type'], 0, 3)) == "php")
| $mybb->input['type'] = $mybb->get_input('type'); if(!ctype_alnum($mybb->input['type']) || strtolower($mybb->input['type']) == "php")
|
{ $mybb->input['type'] = ""; }
| { $mybb->input['type'] = ""; }
|
Zeile 306 | Zeile 306 |
---|
if(!$errors) {
|
if(!$errors) {
|
if($mybb->input['type'] == "custom") { $options_code = $mybb->input['extra']; } else if($mybb->input['extra'])
| if($mybb->input['extra'])
|
{ $options_code = "{$mybb->input['type']}\n{$mybb->input['extra']}";
|
{ $options_code = "{$mybb->input['type']}\n{$mybb->input['extra']}";
|
} else
| } else
|
{ $options_code = $mybb->input['type']; }
| { $options_code = $mybb->input['type']; }
|
Zeile 324 | Zeile 320 |
---|
$mybb->input['name'] = str_replace("'", '', $mybb->input['name']);
if($options_code == "numeric")
|
$mybb->input['name'] = str_replace("'", '', $mybb->input['name']);
if($options_code == "numeric")
|
{
| {
|
$value = $mybb->get_input('value', MyBB::INPUT_INT);
|
$value = $mybb->get_input('value', MyBB::INPUT_INT);
|
}
| }
|
else { $value = $db->escape_string($mybb->input['value']); }
|
else { $value = $db->escape_string($mybb->input['value']); }
|
|
|
$new_setting = array( "name" => $db->escape_string($mybb->input['name']), "title" => $db->escape_string($mybb->input['title']),
| $new_setting = array( "name" => $db->escape_string($mybb->input['name']), "title" => $db->escape_string($mybb->input['title']),
|
Zeile 386 | Zeile 382 |
---|
if($errors) { $page->output_inline_error($errors);
|
if($errors) { $page->output_inline_error($errors);
|
}
$form_container = new FormContainer($lang->add_new_setting); $form_container->output_row($lang->title." <em>*</em>", "", $form->generate_text_box('title', $mybb->input['title'], array('id' => 'title')), 'title'); $form_container->output_row($lang->description, "", $form->generate_text_area('description', $mybb->input['description'], array('id' => 'description')), 'description');
| }
$form_container = new FormContainer($lang->add_new_setting); $form_container->output_row($lang->title." <em>*</em>", "", $form->generate_text_box('title', $mybb->get_input('title'), array('id' => 'title')), 'title'); $form_container->output_row($lang->description, "", $form->generate_text_area('description', $mybb->get_input('description'), array('id' => 'description')), 'description');
|
$query = $db->simple_select("settinggroups", "*", "", array('order_by' => 'disporder')); while($group = $db->fetch_array($query)) { $group_lang_var = "setting_group_{$group['name']}";
|
$query = $db->simple_select("settinggroups", "*", "", array('order_by' => 'disporder')); while($group = $db->fetch_array($query)) { $group_lang_var = "setting_group_{$group['name']}";
|
if($lang->$group_lang_var)
| if(!empty($lang->$group_lang_var))
|
{ $options[$group['gid']] = htmlspecialchars_uni($lang->$group_lang_var); }
| { $options[$group['gid']] = htmlspecialchars_uni($lang->$group_lang_var); }
|
Zeile 405 | Zeile 401 |
---|
$options[$group['gid']] = htmlspecialchars_uni($group['title']); } }
|
$options[$group['gid']] = htmlspecialchars_uni($group['title']); } }
|
$form_container->output_row($lang->group." <em>*</em>", "", $form->generate_select_box("gid", $options, $mybb->input['gid'], array('id' => 'gid')), 'gid'); $form_container->output_row($lang->display_order, "", $form->generate_numeric_field('disporder', $mybb->input['disporder'], array('id' => 'disporder', 'min' => 0)), 'disporder');
| $form_container->output_row($lang->group." <em>*</em>", "", $form->generate_select_box("gid", $options, $mybb->get_input('gid'), array('id' => 'gid')), 'gid'); $form_container->output_row($lang->display_order, "", $form->generate_numeric_field('disporder', $mybb->get_input('disporder'), array('id' => 'disporder', 'min' => 0)), 'disporder');
|
|
|
$form_container->output_row($lang->name." <em>*</em>", $lang->name_desc, $form->generate_text_box('name', $mybb->input['name'], array('id' => 'name')), 'name');
| $form_container->output_row($lang->name." <em>*</em>", $lang->name_desc, $form->generate_text_box('name', $mybb->get_input('name'), array('id' => 'name')), 'name');
|
$setting_types = array( "text" => $lang->text,
| $setting_types = array( "text" => $lang->text,
|
Zeile 430 | Zeile 426 |
---|
//"php" => $lang->php // Internal Use Only );
|
//"php" => $lang->php // Internal Use Only );
|
$form_container->output_row($lang->type." <em>*</em>", "", $form->generate_select_box("type", $setting_types, $mybb->input['type'], array('id' => 'type')), 'type'); $form_container->output_row($lang->extra, $lang->extra_desc, $form->generate_text_area('extra', $mybb->input['extra'], array('id' => 'extra')), 'extra', array(), array('id' => 'row_extra')); $form_container->output_row($lang->value, "", $form->generate_text_area('value', $mybb->input['value'], array('id' => 'value')), 'value');
| $form_container->output_row($lang->type." <em>*</em>", "", $form->generate_select_box("type", $setting_types, $mybb->get_input('type'), array('id' => 'type')), 'type'); $form_container->output_row($lang->extra, $lang->extra_desc, $form->generate_text_area('extra', $mybb->get_input('extra'), array('id' => 'extra')), 'extra', array(), array('id' => 'row_extra')); $form_container->output_row($lang->value, "", $form->generate_text_area('value', $mybb->get_input('value'), array('id' => 'value')), 'value');
|
$form_container->end();
$buttons[] = $form->generate_submit_button($lang->insert_new_setting);
| $form_container->end();
$buttons[] = $form->generate_submit_button($lang->insert_new_setting);
|
Zeile 458 | Zeile 454 |
---|
$setting = $db->fetch_array($query);
// Does the setting not exist?
|
$setting = $db->fetch_array($query);
// Does the setting not exist?
|
if(!$setting['sid'])
| if(!$setting)
|
{ flash_message($lang->error_invalid_sid, 'error'); admin_redirect("index.php?module=config-settings");
| { flash_message($lang->error_invalid_sid, 'error'); admin_redirect("index.php?module=config-settings");
|
Zeile 477 | Zeile 473 |
---|
$type = trim($type[0]); if($type == "php") {
|
$type = trim($type[0]); if($type == "php") {
|
flash_message($lang->error_cannot_edit_php, 'error'); admin_redirect("index.php?module=config-settings&action=manage"); }
if($mybb->request_method == "post") {
| flash_message($lang->error_cannot_edit_php, 'error'); admin_redirect("index.php?module=config-settings&action=manage"); }
if($mybb->request_method == "post") {
|
if(!trim($mybb->input['title']))
|
if(!trim($mybb->input['title']))
|
{
| {
|
$errors[] = $lang->error_missing_title;
|
$errors[] = $lang->error_missing_title;
|
}
| }
|
if(!trim($mybb->input['name'])) {
| if(!trim($mybb->input['name'])) {
|
Zeile 497 | Zeile 493 |
---|
{ $dup_setting_title = $db->fetch_field($query, 'title'); $errors[] = $lang->sprintf($lang->error_duplicate_name, $dup_setting_title);
|
{ $dup_setting_title = $db->fetch_field($query, 'title'); $errors[] = $lang->sprintf($lang->error_duplicate_name, $dup_setting_title);
|
}
| }
|
// do some type filtering
|
// do some type filtering
|
$mybb->input['type'] = str_replace("\n", "", $mybb->input['type']); if(strtolower(substr($mybb->input['type'], 0, 3)) == "php") {
| $mybb->input['type'] = $mybb->get_input('type'); if(!ctype_alnum($mybb->input['type']) || strtolower($mybb->input['type']) == "php") {
|
$mybb->input['type'] = "";
|
$mybb->input['type'] = "";
|
}
| }
|
if(!$mybb->input['type'])
|
if(!$mybb->input['type'])
|
{
| {
|
$errors[] = $lang->error_invalid_type; }
if(!$errors)
|
$errors[] = $lang->error_invalid_type; }
if(!$errors)
|
{ if($mybb->input['type'] == "custom") { $options_code = $mybb->input['extra']; } else if($mybb->input['extra'])
| { if($mybb->input['extra'])
|
{ $options_code = "{$mybb->input['type']}\n{$mybb->input['extra']}"; }
| { $options_code = "{$mybb->input['type']}\n{$mybb->input['extra']}"; }
|
Zeile 559 | Zeile 551 |
---|
flash_message($lang->success_setting_updated, 'success'); admin_redirect("index.php?module=config-settings&action=manage");
|
flash_message($lang->success_setting_updated, 'success'); admin_redirect("index.php?module=config-settings&action=manage");
|
}
| }
|
}
|
}
|
|
|
$page->add_breadcrumb_item($lang->edit_setting); $page->output_header($lang->board_settings." - ".$lang->edit_setting);
| $page->add_breadcrumb_item($lang->edit_setting); $page->output_header($lang->board_settings." - ".$lang->edit_setting);
|
Zeile 573 | Zeile 565 |
---|
$sub_tabs['add_setting'] = array( 'title' => $lang->add_new_setting, 'link' => "index.php?module=config-settings&action=add"
|
$sub_tabs['add_setting'] = array( 'title' => $lang->add_new_setting, 'link' => "index.php?module=config-settings&action=add"
|
);
| );
|
$sub_tabs['add_setting_group'] = array( 'title' => $lang->add_new_setting_group, 'link' => "index.php?module=config-settings&action=addgroup"
|
$sub_tabs['add_setting_group'] = array( 'title' => $lang->add_new_setting_group, 'link' => "index.php?module=config-settings&action=addgroup"
|
);
| );
|
$sub_tabs['modify_setting'] = array( 'title' => $lang->modify_existing_settings, 'link' => "index.php?module=config-settings&action=manage",
| $sub_tabs['modify_setting'] = array( 'title' => $lang->modify_existing_settings, 'link' => "index.php?module=config-settings&action=manage",
|
Zeile 588 | Zeile 580 |
---|
$page->output_nav_tabs($sub_tabs, 'modify_setting');
|
$page->output_nav_tabs($sub_tabs, 'modify_setting');
|
$form = new Form("index.php?module=config-settings&action=edit", "post", "edit");
echo $form->generate_hidden_field("sid", $setting['sid']);
| $form = new Form("index.php?module=config-settings&action=edit", "post", "edit");
echo $form->generate_hidden_field("sid", $setting['sid']);
|
if($errors)
|
if($errors)
|
{
| {
|
$setting_data = $mybb->input; $page->output_inline_error($errors); }
| $setting_data = $mybb->input; $page->output_inline_error($errors); }
|
Zeile 602 | Zeile 594 |
---|
$setting_data = $setting; $type = explode("\n", $setting['optionscode'], 2); $setting_data['type'] = trim($type[0]);
|
$setting_data = $setting; $type = explode("\n", $setting['optionscode'], 2); $setting_data['type'] = trim($type[0]);
|
$setting_data['extra'] = trim($type[1]);
| if(isset($type[1])) { $setting_data['extra'] = trim($type[1]); }
|
}
$form_container = new FormContainer($lang->modify_setting);
| }
$form_container = new FormContainer($lang->modify_setting);
|
Zeile 613 | Zeile 609 |
---|
while($group = $db->fetch_array($query)) { $group_lang_var = "setting_group_{$group['name']}";
|
while($group = $db->fetch_array($query)) { $group_lang_var = "setting_group_{$group['name']}";
|
if($lang->$group_lang_var)
| if(!empty($lang->$group_lang_var))
|
{ $options[$group['gid']] = htmlspecialchars_uni($lang->$group_lang_var); }
| { $options[$group['gid']] = htmlspecialchars_uni($lang->$group_lang_var); }
|
Zeile 650 | Zeile 646 |
---|
);
$form_container->output_row($lang->type." <em>*</em>", "", $form->generate_select_box("type", $setting_types, $setting_data['type'], array('id' => 'type')), 'type');
|
);
$form_container->output_row($lang->type." <em>*</em>", "", $form->generate_select_box("type", $setting_types, $setting_data['type'], array('id' => 'type')), 'type');
|
$form_container->output_row($lang->extra, $lang->extra_desc, $form->generate_text_area('extra', $setting_data['extra'], array('id' => 'extra')), 'extra', array(), array('id' => 'row_extra'));
| $form_container->output_row($lang->extra, $lang->extra_desc, $form->generate_text_area('extra', !empty($setting_data['extra']) ? $setting_data['extra'] : null, array('id' => 'extra')), 'extra', array(), array('id' => 'row_extra'));
|
$form_container->output_row($lang->value, '', $form->generate_text_area('value', $setting_data['value'], array('id' => 'value')), 'value'); $form_container->end();
| $form_container->output_row($lang->value, '', $form->generate_text_area('value', $setting_data['value'], array('id' => 'value')), 'value'); $form_container->end();
|
Zeile 677 | Zeile 673 |
---|
$setting = $db->fetch_array($query);
// Does the setting not exist?
|
$setting = $db->fetch_array($query);
// Does the setting not exist?
|
if(!$setting['sid'])
| if(!$setting)
|
{ flash_message($lang->error_invalid_sid, 'error'); admin_redirect("index.php?module=config-settings&action=manage");
| { flash_message($lang->error_invalid_sid, 'error'); admin_redirect("index.php?module=config-settings&action=manage");
|
Zeile 691 | Zeile 687 |
---|
}
// User clicked no
|
}
// User clicked no
|
if($mybb->input['no'])
| if($mybb->get_input('no'))
|
{ admin_redirect("index.php?module=config-settings&action=manage"); }
| { admin_redirect("index.php?module=config-settings&action=manage"); }
|
Zeile 805 | Zeile 801 |
---|
// Make setting group row // Translated? $group_lang_var = "setting_group_{$group['name']}";
|
// Make setting group row // Translated? $group_lang_var = "setting_group_{$group['name']}";
|
if($lang->$group_lang_var)
| if(!empty($lang->$group_lang_var))
|
{ $group_title = htmlspecialchars_uni($lang->$group_lang_var); }
| { $group_title = htmlspecialchars_uni($lang->$group_lang_var); }
|
Zeile 830 | Zeile 826 |
---|
$table->construct_row(array('class' => 'alt_row', 'no_alt_row' => 1));
// Make rows for each setting in the group
|
$table->construct_row(array('class' => 'alt_row', 'no_alt_row' => 1));
// Make rows for each setting in the group
|
if(is_array($settings_cache[$group['gid']]))
| if(isset($settings_cache[$group['gid']]) && is_array($settings_cache[$group['gid']]))
|
{ foreach($settings_cache[$group['gid']] as $setting) { $setting_lang_var = "setting_{$setting['name']}";
|
{ foreach($settings_cache[$group['gid']] as $setting) { $setting_lang_var = "setting_{$setting['name']}";
|
if($lang->$setting_lang_var)
| if(!empty($lang->$setting_lang_var))
|
{ $setting_title = htmlspecialchars_uni($lang->$setting_lang_var); }
| { $setting_title = htmlspecialchars_uni($lang->$setting_lang_var); }
|
Zeile 915 | Zeile 911 |
---|
);
$is_current_hiddencaptcha_wrong = in_array($mybb->settings['hiddencaptchaimagefield'], $disallowed_fields);
|
);
$is_current_hiddencaptcha_wrong = in_array($mybb->settings['hiddencaptchaimagefield'], $disallowed_fields);
|
if(in_array($mybb->input['upsetting']['hiddencaptchaimagefield'], $disallowed_fields) || $is_current_hiddencaptcha_wrong)
| if( (isset($mybb->input['upsetting']['hiddencaptchaimagefield']) && in_array($mybb->input['upsetting']['hiddencaptchaimagefield'], $disallowed_fields)) || $is_current_hiddencaptcha_wrong )
|
{ if(isset($mybb->input['upsetting']['hiddencaptchaimagefield']) && $mybb->input['upsetting']['hiddencaptchaimagefield'] != $mybb->settings['hiddencaptchaimagefield'] && !$is_current_hiddencaptcha_wrong) {
| { if(isset($mybb->input['upsetting']['hiddencaptchaimagefield']) && $mybb->input['upsetting']['hiddencaptchaimagefield'] != $mybb->settings['hiddencaptchaimagefield'] && !$is_current_hiddencaptcha_wrong) {
|
Zeile 958 | Zeile 957 |
---|
} }
|
} }
|
// Have we opted for a reCAPTCHA or hCaptcha and not set a public/private key? if((isset($mybb->input['upsetting']['captchaimage']) && in_array($mybb->input['upsetting']['captchaimage'], array(4, 5)) && (!$mybb->input['upsetting']['recaptchaprivatekey'] || !$mybb->input['upsetting']['recaptchapublickey'])) || (in_array($mybb->settings['captchaimage'], array(4, 5)) && (!$mybb->settings['recaptchaprivatekey'] || !$mybb->settings['recaptchapublickey'])) || (isset($mybb->input['upsetting']['captchaimage']) && in_array($mybb->input['upsetting']['captchaimage'], array(8)) && (!$mybb->input['upsetting']['recaptchaprivatekey'] || !$mybb->input['upsetting']['recaptchapublickey'] || !$mybb->input['upsetting']['recaptchascore'])) || (in_array($mybb->settings['captchaimage'], array(8)) && (!$mybb->settings['recaptchaprivatekey'] || !$mybb->settings['recaptchapublickey'] || !$mybb->settings['recaptchascore'])) || (isset($mybb->input['upsetting']['captchaimage']) && in_array($mybb->input['upsetting']['captchaimage'], array(6, 7)) && (!$mybb->input['upsetting']['hcaptchaprivatekey'] || !$mybb->input['upsetting']['hcaptchapublickey'])) || (in_array($mybb->settings['captchaimage'], array(6, 7)) && (!$mybb->settings['hcaptchaprivatekey'] || !$mybb->settings['hcaptchapublickey'])))
| // Validate minnamelength, maxnamelength, minpasswordlength (complex and regular) and maxpasswordlength if ($gid == 9)
|
{
|
{
|
$mybb->input['upsetting']['captchaimage'] = 1;
| if ( isset($mybb->input['upsetting']['minnamelength'], $mybb->input['upsetting']['maxnamelength']) && $mybb->input['upsetting']['minnamelength'] > 0 && $mybb->input['upsetting']['maxnamelength'] > 0 && $mybb->input['upsetting']['minnamelength'] > $mybb->input['upsetting']['maxnamelength']) { flash_message($lang->error_field_minnamelength, 'error'); admin_redirect("index.php?module=config-settings&action=change&gid=".$gid); }
if ( isset($mybb->input['upsetting']['minpasswordlength'], $mybb->input['upsetting']['maxpasswordlength']) && $mybb->input['upsetting']['minpasswordlength'] > 0 && $mybb->input['upsetting']['maxpasswordlength'] > 0 && $mybb->input['upsetting']['minpasswordlength'] > $mybb->input['upsetting']['maxpasswordlength'] ) { flash_message($lang->error_field_minpasswordlength, 'error'); admin_redirect("index.php?module=config-settings&action=change&gid=".$gid); }
if ( isset($mybb->input['upsetting']['minpasswordlength'], $mybb->input['upsetting']['requirecomplexpasswords']) && $mybb->input['upsetting']['requirecomplexpasswords'] && $mybb->input['upsetting']['minpasswordlength'] < 3 ) { flash_message($lang->error_field_minpasswordlength_complex, 'error'); admin_redirect("index.php?module=config-settings&action=change&gid=".$gid); } } require_once MYBB_ROOT.'inc/class_captcha.php'; // Have we opted for a reCAPTCHA or hCaptcha and not set a public/private key in input? $set_captcha_image = false; if(isset( $mybb->input['upsetting']['captchaimage'], $mybb->input['upsetting']['recaptchaprivatekey'], $mybb->input['upsetting']['recaptchapublickey'], $mybb->input['upsetting']['recaptchascore'], $mybb->input['upsetting']['hcaptchaprivatekey'], $mybb->input['upsetting']['hcaptchapublickey'] )) { $captchaimage = $mybb->input['upsetting']['captchaimage']; $recaptchaprivatekey = $mybb->input['upsetting']['recaptchaprivatekey']; $recaptchapublickey = $mybb->input['upsetting']['recaptchapublickey']; $recaptchascore = $mybb->input['upsetting']['recaptchascore']; $hcaptchaprivatekey = $mybb->input['upsetting']['hcaptchaprivatekey']; $hcaptchapublickey = $mybb->input['upsetting']['hcaptchapublickey'];
if(in_array($captchaimage, array(captcha::NOCAPTCHA_RECAPTCHA, captcha::RECAPTCHA_INVISIBLE)) && (!$recaptchaprivatekey || !$recaptchapublickey)) { $set_captcha_image = true; } else if(in_array($captchaimage, array(captcha::RECAPTCHA_V3)) && (!$recaptchaprivatekey || !$recaptchapublickey || !$recaptchascore)) { $set_captcha_image = true; } else if(in_array($captchaimage, array(captcha::HCAPTCHA, captcha::HCAPTCHA_INVISIBLE)) && (!$hcaptchaprivatekey || !$hcaptchapublickey)) { $set_captcha_image = true; } }
//Checking settings for reCAPTCHA or hCaptcha and public/private key not set? $captchaimage = $mybb->settings['captchaimage']; $recaptchaprivatekey = $mybb->settings['recaptchaprivatekey']; $recaptchapublickey = $mybb->settings['recaptchapublickey']; $recaptchascore = $mybb->settings['recaptchascore']; $hcaptchaprivatekey = $mybb->settings['hcaptchaprivatekey']; $hcaptchapublickey = $mybb->settings['hcaptchapublickey'];
if(in_array($captchaimage, array(captcha::NOCAPTCHA_RECAPTCHA, captcha::RECAPTCHA_INVISIBLE)) && (!$recaptchaprivatekey || !$recaptchapublickey)) { $set_captcha_image = true; } else if(in_array($captchaimage, array(captcha::RECAPTCHA_V3)) && (!$recaptchaprivatekey || !$recaptchapublickey || !$recaptchascore)) { $set_captcha_image = true; } else if(in_array($captchaimage, array(captcha::HCAPTCHA, captcha::HCAPTCHA_INVISIBLE)) && (!$hcaptchaprivatekey || !$hcaptchapublickey)) { $set_captcha_image = true; } if($set_captcha_image){ $mybb->input['upsetting']['captchaimage'] = captcha::DEFAULT_CAPTCHA;
|
$lang->success_settings_updated .= $lang->success_settings_updated_captchaimage; }
| $lang->success_settings_updated .= $lang->success_settings_updated_captchaimage; }
|
Zeile 1050 | Zeile 1128 |
---|
}
// Administrator is changing the login method.
|
}
// 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)
| if(isset($mybb->input['upsetting']['username_method']) && (int)$mybb->input['upsetting']['username_method'] > 0)
|
{
|
{
|
$query = $db->simple_select('users', 'email', "email != ''", array('group_by' => 'email HAVING COUNT(email)>1')); if($db->num_rows($query))
| if((int)$mybb->settings['allowmultipleemails'] == 1)
|
{ $mybb->input['upsetting']['username_method'] = 0;
|
{ $mybb->input['upsetting']['username_method'] = 0;
|
$lang->success_settings_updated .= $lang->success_settings_updated_username_method;
| $lang->success_settings_updated .= $lang->success_settings_updated_username_method_conflict;
|
} else {
|
} else {
|
$mybb->input['upsetting']['allowmultipleemails'] = 0; $lang->success_settings_updated .= $lang->success_settings_updated_allowmultipleemails;
| $query = $db->simple_select('users', 'email', "email != ''", array('group_by' => 'email HAVING COUNT(email)>1')); if($db->num_rows($query)) { $mybb->input['upsetting']['username_method'] = 0; $lang->success_settings_updated .= $lang->success_settings_updated_username_method; } } }
if(isset($mybb->input['upsetting']['username_method'], $mybb->input['upsetting']['allowmultipleemails'])) { // Administrator is changing registration email allowance if((int)$mybb->settings['username_method'] > 0 && (int)$mybb->input['upsetting']['allowmultipleemails'] !== 0) { $mybb->input['upsetting']['allowmultipleemails'] = 0; $lang->success_settings_updated .= $lang->success_settings_updated_allowmultipleemails; }
// Reset conflict silently, if by chance if((int)$mybb->settings['username_method'] > 0 && (int)$mybb->settings['allowmultipleemails'] == 1) { $mybb->input['upsetting']['allowmultipleemails'] = 0;
|
} }
| } }
|
Zeile 1081 | Zeile 1178 |
---|
$dynamic_include_directories_realpath = array_map('realpath', $dynamic_include_directories);
foreach($fields as $field)
|
$dynamic_include_directories_realpath = array_map('realpath', $dynamic_include_directories);
foreach($fields as $field)
|
| { if(isset($mybb->input['upsetting'][$field])) { if( is_string($mybb->input['upsetting'][$field]) && strpos($mybb->input['upsetting'][$field], '://') !== false) { unset($mybb->input['upsetting'][$field]); continue; }
$realpath = realpath(mk_path_abs($mybb->input['upsetting'][$field]));
if ($realpath === false) { unset($mybb->input['upsetting'][$field]); continue; }
foreach ($dynamic_include_directories_realpath as $forbidden_realpath) { if ($realpath === $forbidden_realpath || strpos($realpath, $forbidden_realpath.DIRECTORY_SEPARATOR) === 0) { unset($mybb->input['upsetting'][$field]); continue 2; } } } }
// reject dangerous/unsupported file paths $field = 'errorloglocation';
if(isset($mybb->input['upsetting'][$field]) && is_string($mybb->input['upsetting'][$field]))
|
{ if(
|
{ if(
|
isset($mybb->input['upsetting'][$field]) && is_string($mybb->input['upsetting'][$field]) && strpos($mybb->input['upsetting'][$field], '://') !== false)
| strpos($mybb->input['upsetting'][$field], '://') !== false || substr($mybb->input['upsetting'][$field], -4) === '.php' )
|
{ unset($mybb->input['upsetting'][$field]);
|
{ unset($mybb->input['upsetting'][$field]);
|
continue; }
$realpath = realpath(MYBB_ROOT.$mybb->input['upsetting'][$field]);
if ($realpath === false) { unset($mybb->input['upsetting'][$field]); continue; }
foreach ($dynamic_include_directories_realpath as $forbidden_realpath) { if ($realpath === $forbidden_realpath || strpos($realpath, $forbidden_realpath.DIRECTORY_SEPARATOR) === 0) { unset($mybb->input['upsetting'][$field]); continue 2; }
| |
} }
|
} }
|
| |
if(is_array($mybb->input['upsetting'])) {
| if(is_array($mybb->input['upsetting'])) {
|
Zeile 1156 | Zeile 1269 |
---|
}
// Check if we need to create our fulltext index after changing the search mode
|
}
// Check if we need to create our fulltext index after changing the search mode
|
if($mybb->settings['searchtype'] != $mybb->input['upsetting']['searchtype'] && $mybb->input['upsetting']['searchtype'] == "fulltext")
| if( isset($mybb->input['upsetting']['searchtype']) && $mybb->settings['searchtype'] != $mybb->input['upsetting']['searchtype'] && $mybb->input['upsetting']['searchtype'] == "fulltext" )
|
{ if(!$db->is_fulltext("posts") && $db->supports_fulltext_boolean("posts")) {
| { if(!$db->is_fulltext("posts") && $db->supports_fulltext_boolean("posts")) {
|
Zeile 1179 | Zeile 1296 |
---|
{ my_unsetcookie("adminsid"); $mybb->settings['cookieprefix'] = $mybb->input['upsetting']['cookieprefix'];
|
{ my_unsetcookie("adminsid"); $mybb->settings['cookieprefix'] = $mybb->input['upsetting']['cookieprefix'];
|
my_setcookie("adminsid", $admin_session['sid'], '', true, "lax");
| my_setcookie("adminsid", $admin_session['sid'], '', true, "strict");
|
}
if(isset($mybb->input['upsetting']['statstopreferrer']) && $mybb->input['upsetting']['statstopreferrer'] != $mybb->settings['statstopreferrer'])
| }
if(isset($mybb->input['upsetting']['statstopreferrer']) && $mybb->input['upsetting']['statstopreferrer'] != $mybb->settings['statstopreferrer'])
|
Zeile 1268 | Zeile 1385 |
---|
$page->output_header($lang->board_settings." - {$lang->settings_search}"); } }
|
$page->output_header($lang->board_settings." - {$lang->settings_search}"); } }
|
elseif($mybb->input['gid'])
| elseif(($mybb->get_input('gid')))
|
{ // Group listing // Cache groups
| { // Group listing // Cache groups
|
Zeile 1299 | Zeile 1416 |
---|
{ $groupinfo['title'] = $lang->$group_lang_var; }
|
{ $groupinfo['title'] = $lang->$group_lang_var; }
|
| $groupinfo['title'] = htmlspecialchars_uni($groupinfo['title']);
|
// Page header $page->add_breadcrumb_item($groupinfo['title']);
| // Page header $page->add_breadcrumb_item($groupinfo['title']);
|
Zeile 1317 | Zeile 1436 |
---|
if(!$db->num_rows($query)) { $page->output_error($lang->error_invalid_gid2);
|
if(!$db->num_rows($query)) { $page->output_error($lang->error_invalid_gid2);
|
}
| }
|
// Cache settings $query = $db->simple_select("settings", "*", "", array('order_by' => 'disporder')); while($setting = $db->fetch_array($query)) { $cache_settings[$setting['gid']][$setting['sid']] = $setting;
|
// Cache settings $query = $db->simple_select("settings", "*", "", array('order_by' => 'disporder')); while($setting = $db->fetch_array($query)) { $cache_settings[$setting['gid']][$setting['sid']] = $setting;
|
}
| }
|
// Page header $page->add_breadcrumb_item($lang->show_all_settings); $page->output_header($lang->board_settings." - {$lang->show_all_settings}");
| // Page header $page->add_breadcrumb_item($lang->show_all_settings); $page->output_header($lang->board_settings." - {$lang->show_all_settings}");
|
Zeile 1342 | Zeile 1461 |
---|
{ $groupinfo['title'] = $lang->$group_lang_var; }
|
{ $groupinfo['title'] = $lang->$group_lang_var; }
|
| $groupinfo['title'] = htmlspecialchars_uni($groupinfo['title']);
|
$form_container = new FormContainer($groupinfo['title']);
if(empty($cache_settings[$groupinfo['gid']]))
|
$form_container = new FormContainer($groupinfo['title']);
if(empty($cache_settings[$groupinfo['gid']]))
|
{
| {
|
$form_container->output_cell($lang->error_no_settings_found); $form_container->construct_row();
|
$form_container->output_cell($lang->error_no_settings_found); $form_container->construct_row();
|
|
|
$form_container->end(); echo '<br />';
| $form_container->end(); echo '<br />';
|
Zeile 1358 | Zeile 1479 |
---|
foreach($cache_settings[$groupinfo['gid']] as $setting) {
|
foreach($cache_settings[$groupinfo['gid']] as $setting) {
|
| $setting['name'] = htmlspecialchars_uni($setting['name']);
|
$options = ""; $type = explode("\n", $setting['optionscode']); $type[0] = trim($type[0]);
| $options = ""; $type = explode("\n", $setting['optionscode']); $type[0] = trim($type[0]);
|
Zeile 1366 | Zeile 1489 |
---|
if($type[0] == "text" || $type[0] == "") { $setting_code = $form->generate_text_box($element_name, $setting['value'], array('id' => $element_id));
|
if($type[0] == "text" || $type[0] == "") { $setting_code = $form->generate_text_box($element_name, $setting['value'], array('id' => $element_id));
|
}
| }
|
else if($type[0] == "numeric") { $field_options = array('id' => $element_id);
| else if($type[0] == "numeric") { $field_options = array('id' => $element_id);
|
Zeile 1406 | Zeile 1529 |
---|
$folders = array(); while($folder = readdir($dir))
|
$folders = array(); while($folder = readdir($dir))
|
{ if($file != "." && $file != ".." && @file_exists(MYBB_ROOT.$config['admin_dir']."/styles/$folder/main.css"))
| { if($folder != "." && $folder != ".." && @file_exists(MYBB_ROOT.$config['admin_dir']."/styles/$folder/main.css"))
|
{ $folders[$folder] = ucfirst($folder); }
| { $folders[$folder] = ucfirst($folder); }
|
Zeile 1415 | Zeile 1538 |
---|
closedir($dir); ksort($folders); $setting_code = $form->generate_select_box($element_name, $folders, $setting['value'], array('id' => $element_id));
|
closedir($dir); ksort($folders); $setting_code = $form->generate_select_box($element_name, $folders, $setting['value'], array('id' => $element_id));
|
}
| }
|
else if($type[0] == "language")
|
else if($type[0] == "language")
|
{
| {
|
$languages = $lang->get_languages();
|
$languages = $lang->get_languages();
|
$setting_code = $form->generate_select_box($element_name, $languages, $setting['value'], array('id' => $element_id)); }
| $setting_code = $form->generate_select_box($element_name, $languages, $setting['value'], array('id' => $element_id)); }
|
else if($type[0] == "adminlanguage") { $languages = $lang->get_languages(1); $setting_code = $form->generate_select_box($element_name, $languages, $setting['value'], array('id' => $element_id)); } else if($type[0] == "passwordbox")
|
else if($type[0] == "adminlanguage") { $languages = $lang->get_languages(1); $setting_code = $form->generate_select_box($element_name, $languages, $setting['value'], array('id' => $element_id)); } else if($type[0] == "passwordbox")
|
{
| {
|
$setting_code = $form->generate_password_box($element_name, $setting['value'], array('id' => $element_id)); } else if($type[0] == "php")
| $setting_code = $form->generate_password_box($element_name, $setting['value'], array('id' => $element_id)); } else if($type[0] == "php")
|
Zeile 1447 | Zeile 1570 |
---|
$value = (int)$value; } unset($value);
|
$value = (int)$value; } unset($value);
|
}
| }
|
$forum_checked = array('all' => '', 'custom' => '', 'none' => ''); if($setting['value'] == -1)
| $forum_checked = array('all' => '', 'custom' => '', 'none' => ''); if($setting['value'] == -1)
|
Zeile 1484 | Zeile 1607 |
---|
</script>"; } else if($type[0] == "forumselectsingle")
|
</script>"; } else if($type[0] == "forumselectsingle")
|
{ $selected_value = (int)$setting['value']; // No need to check if empty, int will give 0 $setting_code = $form->generate_forum_select($element_name, $selected_value, array('id' => $element_id, 'main_option' => $lang->none)); }
| { $selected_value = (int)$setting['value']; // No need to check if empty, int will give 0 $setting_code = $form->generate_forum_select($element_name, $selected_value, array('id' => $element_id, 'main_option' => $lang->none)); }
|
else if($type[0] == "groupselect") { $selected_values = '';
| else if($type[0] == "groupselect") { $selected_values = '';
|
Zeile 1506 | Zeile 1629 |
---|
if($setting['value'] == -1) { $group_checked['all'] = 'checked="checked"';
|
if($setting['value'] == -1) { $group_checked['all'] = 'checked="checked"';
|
} elseif($setting['value'] != '') {
| } elseif($setting['value'] != '') {
|
$group_checked['custom'] = 'checked="checked"'; } else
| $group_checked['custom'] = 'checked="checked"'; } else
|
Zeile 1527 | Zeile 1650 |
---|
<tr> <td valign=\"top\"><small>{$lang->groups_colon}</small></td> <td>".$form->generate_group_select('select['.$setting['name'].'][]', $selected_values, array('id' => $element_id, 'multiple' => true, 'size' => 5))."</td>
|
<tr> <td valign=\"top\"><small>{$lang->groups_colon}</small></td> <td>".$form->generate_group_select('select['.$setting['name'].'][]', $selected_values, array('id' => $element_id, 'multiple' => true, 'size' => 5))."</td>
|
</tr> </table>
| </tr> </table>
|
</dd> <dt><label style=\"display: block;\"><input type=\"radio\" name=\"{$element_name}\" value=\"none\" {$group_checked['none']} class=\"{$element_id}_forums_groups_check\" onclick=\"checkAction('{$element_id}');\" style=\"vertical-align: middle;\" /> <strong>{$lang->none}</strong></label></dt> </dl>
| </dd> <dt><label style=\"display: block;\"><input type=\"radio\" name=\"{$element_name}\" value=\"none\" {$group_checked['none']} class=\"{$element_id}_forums_groups_check\" onclick=\"checkAction('{$element_id}');\" style=\"vertical-align: middle;\" /> <strong>{$lang->none}</strong></label></dt> </dl>
|
Zeile 1548 | Zeile 1671 |
---|
{ $selected_values = explode(',', (string)$setting['value']); foreach($selected_values as &$value)
|
{ $selected_values = explode(',', (string)$setting['value']); foreach($selected_values as &$value)
|
{
| {
|
$value = (int)$value; } unset($value);
| $value = (int)$value; } unset($value);
|
Zeile 1588 | Zeile 1711 |
---|
else { $typecount = count($type);
|
else { $typecount = count($type);
|
|
|
if($type[0] == 'checkbox') { $multivalue = explode(',', $setting['value']); }
|
if($type[0] == 'checkbox') { $multivalue = explode(',', $setting['value']); }
|
| $option_list = array();
|
for($i = 0; $i < $typecount; $i++) { $optionsexp = explode("=", $type[$i]); if(!isset($optionsexp[1]))
|
for($i = 0; $i < $typecount; $i++) { $optionsexp = explode("=", $type[$i]); if(!isset($optionsexp[1]))
|
{
| {
|
continue; } $title_lang = "setting_{$setting['name']}_{$optionsexp[0]}";
| continue; } $title_lang = "setting_{$setting['name']}_{$optionsexp[0]}";
|
Zeile 1608 | Zeile 1732 |
---|
}
if($type[0] == "select")
|
}
if($type[0] == "select")
|
{
| {
|
$option_list[$optionsexp[0]] = htmlspecialchars_uni($optionsexp[1]); } else if($type[0] == "radio")
| $option_list[$optionsexp[0]] = htmlspecialchars_uni($optionsexp[1]); } else if($type[0] == "radio")
|
Zeile 1648 | Zeile 1772 |
---|
$setting_code .= $form->generate_hidden_field("isvisible_{$setting['name']}", 1); } }
|
$setting_code .= $form->generate_hidden_field("isvisible_{$setting['name']}", 1); } }
|
$option_list = array();
| |
}
// Do we have a custom language variable for this title or description?
| }
// Do we have a custom language variable for this title or description?
|
Zeile 1818 | Zeile 1941 |
---|
while($group = $db->fetch_array($query)) { $group_lang_var = "setting_group_{$group['name']}";
|
while($group = $db->fetch_array($query)) { $group_lang_var = "setting_group_{$group['name']}";
|
if($lang->$group_lang_var)
| if(isset($lang->$group_lang_var))
|
{ $group_title = htmlspecialchars_uni($lang->$group_lang_var); }
| { $group_title = htmlspecialchars_uni($lang->$group_lang_var); }
|
Zeile 1828 | Zeile 1951 |
---|
}
$group_desc_lang_var = "setting_group_{$group['name']}_desc";
|
}
$group_desc_lang_var = "setting_group_{$group['name']}_desc";
|
if($lang->$group_desc_lang_var)
| if(isset($lang->$group_desc_lang_var))
|
{ $group_desc = htmlspecialchars_uni($lang->$group_desc_lang_var); }
| { $group_desc = htmlspecialchars_uni($lang->$group_desc_lang_var); }
|