/** * Import the settings. **/ function mysupport_import_settings() { global $mybb, $db; $settings = mysupport_settings_info(); $settings_gid = mysupport_settings_gid(); foreach ($settings as $setting) { // we're updating an existing setting - this would be called during an upgrade if (array_key_exists($setting['name'], $mybb->settings)) { // here we want to update the title, description, and options code in case they've changed, but we don't change the value so it doesn't change what people have set $update = array("title" => $db->escape_string($setting['title']), "description" => $db->escape_string($setting['description']), "optionscode" => $db->escape_string($setting['optionscode'])); $db->update_query("settings", $update, "name = '" . $db->escape_string($setting['name']) . "'"); } else { $insert = array("name" => $db->escape_string($setting['name']), "title" => $db->escape_string($setting['title']), "description" => $db->escape_string($setting['description']), "optionscode" => $db->escape_string($setting['optionscode']), "value" => $db->escape_string($setting['value']), "gid" => intval($settings_gid)); $db->insert_query("settings", $insert); } } mysupport_update_setting_orders(); rebuild_settings(); }
$form->end(); } $page->output_footer(); } elseif ($mybb->input['action'] == "settings") { $gid = mysupport_settings_gid(); // redirect to the settings page admin_redirect("index.php?module=config-settings&action=change&gid={$gid}"); } elseif ($mybb->input['action'] == "forcedisplaytype") { if ($mybb->settings['mysupportdisplaytype'] == "text") { $update = array("mysupportdisplayastext" => 1); } else { $update = array("mysupportdisplayastext" => 0); } $db->update_query("users", $update); flash_message($lang->mysupport_display_style_forced, "success"); $gid = mysupport_settings_gid(); admin_redirect("index.php?module=config-settings&action=change&gid={$gid}"); } else { $page->output_header($lang->mysupport); generate_mysupport_tabs("general"); $form = new Form("index.php?module=config-mysupport&action=do_general", "post"); $form_container = new FormContainer($lang->general_header); $table = new Table(); $table->construct_header($lang->mysupport); $current_mysupport_forums = array(); $forums = $cache->read("forums"); foreach ($forums as $forum) { if ($forum['mysupport'] == 1) { $current_mysupport_forums[] = $forum['fid']; } }
function mysupport_settings_footer() { global $mybb, $db; // we're viewing the form to change settings but not submitting it if ($mybb->input["action"] == "change" && $mybb->request_method != "post") { $gid = mysupport_settings_gid(); // if the settings group we're editing is the same as the gid for the MySupport group, or there's no gid (viewing all settings), echo the peekers if ($mybb->input["gid"] == $gid || !$mybb->input['gid']) { echo '<script type="text/javascript"> Event.observe(window, "load", function() { loadMySupportPeekers(); }); function loadMySupportPeekers() { new Peeker($$(".setting_enablemysupporttechnical"), $("row_setting_mysupporthidetechnical"), /1/, true); new Peeker($$(".setting_enablemysupporttechnical"), $("row_setting_mysupporttechnicalnotice"), /1/, true); new Peeker($$(".setting_enablemysupportassign"), $("row_setting_mysupportassignpm"), /1/, true); new Peeker($$(".setting_enablemysupportassign"), $("row_setting_mysupportassignsubscribe"), /1/, true); new Peeker($("setting_mysupportpointssystem"), $("row_setting_mysupportpointssystemname"), /other/, false); new Peeker($("setting_mysupportpointssystem"), $("row_setting_mysupportpointssystemcolumn"), /other/, false); new Peeker($("setting_mysupportpointssystem"), $("row_setting_mysupportbestanswerpoints"), /[^none]/, false); } </script>'; } } }