Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
| Total | |
0.00% |
0 / 70 |
|
0.00% |
0 / 1 |
CRAP | |
0.00% |
0 / 1 |
| acp_contact | |
0.00% |
0 / 68 |
|
0.00% |
0 / 1 |
90 | |
0.00% |
0 / 1 |
| main | |
0.00% |
0 / 68 |
|
0.00% |
0 / 1 |
90 | |||
| 1 | <?php |
| 2 | /** |
| 3 | * |
| 4 | * This file is part of the phpBB Forum Software package. |
| 5 | * |
| 6 | * @copyright (c) phpBB Limited <https://www.phpbb.com> |
| 7 | * @license GNU General Public License, version 2 (GPL-2.0) |
| 8 | * |
| 9 | * For full copyright and license information, please see |
| 10 | * the docs/CREDITS.txt file. |
| 11 | * |
| 12 | */ |
| 13 | |
| 14 | /** |
| 15 | * @ignore |
| 16 | */ |
| 17 | if (!defined('IN_PHPBB')) |
| 18 | { |
| 19 | exit; |
| 20 | } |
| 21 | |
| 22 | /** |
| 23 | * @package acp |
| 24 | */ |
| 25 | class acp_contact |
| 26 | { |
| 27 | public $u_action; |
| 28 | |
| 29 | public function main($id, $mode) |
| 30 | { |
| 31 | global $user, $request, $template; |
| 32 | global $config, $phpbb_root_path, $phpEx, $phpbb_container; |
| 33 | |
| 34 | $user->add_lang(array('acp/board', 'posting')); |
| 35 | |
| 36 | $this->tpl_name = 'acp_contact'; |
| 37 | $this->page_title = 'ACP_CONTACT_SETTINGS'; |
| 38 | $form_name = 'acp_contact'; |
| 39 | add_form_key($form_name); |
| 40 | $error = ''; |
| 41 | |
| 42 | if (!function_exists('display_custom_bbcodes')) |
| 43 | { |
| 44 | include($phpbb_root_path . 'includes/functions_display.' . $phpEx); |
| 45 | } |
| 46 | if (!class_exists('parse_message')) |
| 47 | { |
| 48 | include($phpbb_root_path . 'includes/message_parser.' . $phpEx); |
| 49 | } |
| 50 | |
| 51 | /* @var $config_text \phpbb\config\db_text */ |
| 52 | $config_text = $phpbb_container->get('config_text'); |
| 53 | |
| 54 | $contact_admin_data = $config_text->get_array(array( |
| 55 | 'contact_admin_info', |
| 56 | 'contact_admin_info_uid', |
| 57 | 'contact_admin_info_bitfield', |
| 58 | 'contact_admin_info_flags', |
| 59 | )); |
| 60 | |
| 61 | $contact_admin_info = $contact_admin_data['contact_admin_info']; |
| 62 | $contact_admin_info_uid = $contact_admin_data['contact_admin_info_uid']; |
| 63 | $contact_admin_info_bitfield= $contact_admin_data['contact_admin_info_bitfield']; |
| 64 | $contact_admin_info_flags = $contact_admin_data['contact_admin_info_flags']; |
| 65 | |
| 66 | if ($request->is_set_post('submit') || $request->is_set_post('preview')) |
| 67 | { |
| 68 | if (!check_form_key($form_name)) |
| 69 | { |
| 70 | $error = $user->lang('FORM_INVALID'); |
| 71 | } |
| 72 | |
| 73 | $contact_admin_info = $request->variable('contact_admin_info', '', true); |
| 74 | |
| 75 | generate_text_for_storage( |
| 76 | $contact_admin_info, |
| 77 | $contact_admin_info_uid, |
| 78 | $contact_admin_info_bitfield, |
| 79 | $contact_admin_info_flags, |
| 80 | !$request->variable('disable_bbcode', false), |
| 81 | !$request->variable('disable_magic_url', false), |
| 82 | !$request->variable('disable_smilies', false) |
| 83 | ); |
| 84 | |
| 85 | if (empty($error) && $request->is_set_post('submit')) |
| 86 | { |
| 87 | $config->set('contact_admin_form_enable', $request->variable('contact_admin_form_enable', false)); |
| 88 | |
| 89 | $config_text->set_array(array( |
| 90 | 'contact_admin_info' => $contact_admin_info, |
| 91 | 'contact_admin_info_uid' => $contact_admin_info_uid, |
| 92 | 'contact_admin_info_bitfield' => $contact_admin_info_bitfield, |
| 93 | 'contact_admin_info_flags' => $contact_admin_info_flags, |
| 94 | )); |
| 95 | |
| 96 | trigger_error($user->lang['CONTACT_US_INFO_UPDATED'] . adm_back_link($this->u_action)); |
| 97 | } |
| 98 | } |
| 99 | |
| 100 | $contact_admin_info_preview = ''; |
| 101 | if ($request->is_set_post('preview')) |
| 102 | { |
| 103 | $contact_admin_info_preview = generate_text_for_display($contact_admin_info, $contact_admin_info_uid, $contact_admin_info_bitfield, $contact_admin_info_flags); |
| 104 | } |
| 105 | |
| 106 | $contact_admin_edit = generate_text_for_edit($contact_admin_info, $contact_admin_info_uid, $contact_admin_info_flags); |
| 107 | |
| 108 | /** @var \phpbb\controller\helper $controller_helper */ |
| 109 | $controller_helper = $phpbb_container->get('controller.helper'); |
| 110 | |
| 111 | $template->assign_vars(array( |
| 112 | 'ERRORS' => $error, |
| 113 | 'CONTACT_ENABLED' => $config['contact_admin_form_enable'], |
| 114 | |
| 115 | 'CONTACT_US_INFO' => $contact_admin_edit['text'], |
| 116 | 'CONTACT_US_INFO_PREVIEW' => $contact_admin_info_preview, |
| 117 | |
| 118 | 'S_BBCODE_DISABLE_CHECKED' => !$contact_admin_edit['allow_bbcode'], |
| 119 | 'S_SMILIES_DISABLE_CHECKED' => !$contact_admin_edit['allow_smilies'], |
| 120 | 'S_MAGIC_URL_DISABLE_CHECKED' => !$contact_admin_edit['allow_urls'], |
| 121 | |
| 122 | 'BBCODE_STATUS' => $user->lang('BBCODE_IS_ON', '<a href="' . $controller_helper->route('phpbb_help_bbcode_controller') . '">', '</a>'), |
| 123 | 'SMILIES_STATUS' => $user->lang['SMILIES_ARE_ON'], |
| 124 | 'IMG_STATUS' => $user->lang['IMAGES_ARE_ON'], |
| 125 | 'URL_STATUS' => $user->lang['URL_IS_ON'], |
| 126 | |
| 127 | 'S_BBCODE_ALLOWED' => true, |
| 128 | 'S_SMILIES_ALLOWED' => true, |
| 129 | 'S_BBCODE_IMG' => true, |
| 130 | 'S_LINKS_ALLOWED' => true, |
| 131 | )); |
| 132 | |
| 133 | // Assigning custom bbcodes |
| 134 | display_custom_bbcodes(); |
| 135 | } |
| 136 | } |