mirror of
				https://github.com/phpbb/phpbb.git
				synced 2025-10-24 21:26:24 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			139 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			139 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| /**
 | |
| *
 | |
| * This file is part of the phpBB Forum Software package.
 | |
| *
 | |
| * @copyright (c) phpBB Limited <https://www.phpbb.com>
 | |
| * @license GNU General Public License, version 2 (GPL-2.0)
 | |
| *
 | |
| * For full copyright and license information, please see
 | |
| * the docs/CREDITS.txt file.
 | |
| *
 | |
| */
 | |
| 
 | |
| /**
 | |
| * @ignore
 | |
| */
 | |
| if (!defined('IN_PHPBB'))
 | |
| {
 | |
| 	exit;
 | |
| }
 | |
| 
 | |
| /**
 | |
| * @package acp
 | |
| */
 | |
| class acp_contact
 | |
| {
 | |
| 	public $u_action;
 | |
| 
 | |
| 	public function main($id, $mode)
 | |
| 	{
 | |
| 		global $user, $request, $template;
 | |
| 		global $config, $phpbb_root_path, $phpEx, $phpbb_container;
 | |
| 
 | |
| 		$user->add_lang(array('acp/board', 'posting'));
 | |
| 
 | |
| 		$this->tpl_name = 'acp_contact';
 | |
| 		$this->page_title = 'ACP_CONTACT_SETTINGS';
 | |
| 		$form_name = 'acp_contact';
 | |
| 		add_form_key($form_name);
 | |
| 		$error = '';
 | |
| 
 | |
| 		if (!function_exists('display_custom_bbcodes'))
 | |
| 		{
 | |
| 			include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
 | |
| 		}
 | |
| 		if (!class_exists('parse_message'))
 | |
| 		{
 | |
| 			include($phpbb_root_path . 'includes/message_parser.' . $phpEx);
 | |
| 		}
 | |
| 
 | |
| 		/* @var $config_text \phpbb\config\db_text */
 | |
| 		$config_text = $phpbb_container->get('config_text');
 | |
| 
 | |
| 		$contact_admin_data			= $config_text->get_array(array(
 | |
| 			'contact_admin_info',
 | |
| 			'contact_admin_info_uid',
 | |
| 			'contact_admin_info_bitfield',
 | |
| 			'contact_admin_info_flags',
 | |
| 		));
 | |
| 
 | |
| 		$contact_admin_info			= $contact_admin_data['contact_admin_info'];
 | |
| 		$contact_admin_info_uid		= $contact_admin_data['contact_admin_info_uid'];
 | |
| 		$contact_admin_info_bitfield= $contact_admin_data['contact_admin_info_bitfield'];
 | |
| 		$contact_admin_info_flags	= $contact_admin_data['contact_admin_info_flags'];
 | |
| 
 | |
| 		if ($request->is_set_post('submit') || $request->is_set_post('preview'))
 | |
| 		{
 | |
| 			if (!check_form_key($form_name))
 | |
| 			{
 | |
| 				$error = $user->lang('FORM_INVALID');
 | |
| 			}
 | |
| 
 | |
| 			$contact_admin_info = $request->variable('contact_admin_info', '', true);
 | |
| 
 | |
| 			generate_text_for_storage(
 | |
| 				$contact_admin_info,
 | |
| 				$contact_admin_info_uid,
 | |
| 				$contact_admin_info_bitfield,
 | |
| 				$contact_admin_info_flags,
 | |
| 				!$request->variable('disable_bbcode', false),
 | |
| 				!$request->variable('disable_magic_url', false),
 | |
| 				!$request->variable('disable_smilies', false)
 | |
| 			);
 | |
| 
 | |
| 			if (empty($error) && $request->is_set_post('submit'))
 | |
| 			{
 | |
| 				$config->set('contact_admin_form_enable', $request->variable('contact_admin_form_enable', false));
 | |
| 
 | |
| 				$config_text->set_array(array(
 | |
| 					'contact_admin_info'			=> $contact_admin_info,
 | |
| 					'contact_admin_info_uid'		=> $contact_admin_info_uid,
 | |
| 					'contact_admin_info_bitfield'	=> $contact_admin_info_bitfield,
 | |
| 					'contact_admin_info_flags'		=> $contact_admin_info_flags,
 | |
| 				));
 | |
| 
 | |
| 				trigger_error($user->lang['CONTACT_US_INFO_UPDATED'] . adm_back_link($this->u_action));
 | |
| 			}
 | |
| 		}
 | |
| 
 | |
| 		$contact_admin_info_preview = '';
 | |
| 		if ($request->is_set_post('preview'))
 | |
| 		{
 | |
| 			$contact_admin_info_preview = generate_text_for_display($contact_admin_info, $contact_admin_info_uid, $contact_admin_info_bitfield, $contact_admin_info_flags);
 | |
| 		}
 | |
| 
 | |
| 		$contact_admin_edit = generate_text_for_edit($contact_admin_info, $contact_admin_info_uid, $contact_admin_info_flags);
 | |
| 
 | |
| 		/** @var \phpbb\controller\helper $controller_helper */
 | |
| 		$controller_helper = $phpbb_container->get('controller.helper');
 | |
| 
 | |
| 		$template->assign_vars(array(
 | |
| 			'ERRORS'			=> $error,
 | |
| 			'CONTACT_ENABLED'	=> $config['contact_admin_form_enable'],
 | |
| 
 | |
| 			'CONTACT_US_INFO'			=> $contact_admin_edit['text'],
 | |
| 			'CONTACT_US_INFO_PREVIEW'	=> $contact_admin_info_preview,
 | |
| 
 | |
| 			'S_BBCODE_DISABLE_CHECKED'		=> !$contact_admin_edit['allow_bbcode'],
 | |
| 			'S_SMILIES_DISABLE_CHECKED'		=> !$contact_admin_edit['allow_smilies'],
 | |
| 			'S_MAGIC_URL_DISABLE_CHECKED'	=> !$contact_admin_edit['allow_urls'],
 | |
| 
 | |
| 			'BBCODE_STATUS'			=> $user->lang('BBCODE_IS_ON', '<a href="' . $controller_helper->route('phpbb_help_bbcode_controller') . '">', '</a>'),
 | |
| 			'SMILIES_STATUS'		=> $user->lang['SMILIES_ARE_ON'],
 | |
| 			'IMG_STATUS'			=> $user->lang['IMAGES_ARE_ON'],
 | |
| 			'FLASH_STATUS'			=> $user->lang['FLASH_IS_ON'],
 | |
| 			'URL_STATUS'			=> $user->lang['URL_IS_ON'],
 | |
| 
 | |
| 			'S_BBCODE_ALLOWED'		=> true,
 | |
| 			'S_SMILIES_ALLOWED'		=> true,
 | |
| 			'S_BBCODE_IMG'			=> true,
 | |
| 			'S_BBCODE_FLASH'		=> true,
 | |
| 			'S_LINKS_ALLOWED'		=> true,
 | |
| 		));
 | |
| 
 | |
| 		// Assigning custom bbcodes
 | |
| 		display_custom_bbcodes();
 | |
| 	}
 | |
| }
 |