1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-30 21:40:43 +02:00

Merge remote-tracking branch 'github-nickvergessen/ticket/10073' into develop-ascraeus

* github-nickvergessen/ticket/10073: (36 commits)
  [ticket/10073] Fix button descriptions
  [ticket/10073] Do not check disable boxes by default
  [ticket/10073] Store values with config_text in the ACP
  [ticket/10073] Move config values to config_text
  [ticket/10073] Fix request usage
  [ticket/10073] Deduplicate template variable names
  [ticket/10073] Get service from container
  [ticket/10073] Fix more "Contact Us" strings
  [ticket/10073] Move template code into the template
  [ticket/10073] Make contact page available when board is disabled
  [ticket/10073] Change name of the ACP module
  [ticket/10073] Deduplicate posting buttons code in ACP
  [ticket/10073] Use phpbb_validate_email to verify email address
  [ticket/10073] Add tests for new validate_email()
  [ticket/10073] Split email validation from email ban and taken checks
  [ticket/10073] Deduplicate the if statement
  [ticket/10073] Fallback to board_contact when contact page is disabled
  [ticket/10073] Remove language string from rebase conflict
  [ticket/10073] Add ACP module to add bbcode text for contact admin info
  [ticket/10073] Add new configs to the schema
  ...
This commit is contained in:
Nils Adermann
2014-06-09 17:55:25 +02:00
40 changed files with 1745 additions and 397 deletions

View File

@@ -0,0 +1,129 @@
<?php
/**
*
* @package acp
* @copyright (c) 2014 phpBB Group
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*/
/**
* @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);
}
$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);
$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="' . append_sid("{$phpbb_root_path}faq.$phpEx", 'mode=bbcode') . '">', '</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();
}
}

View File

@@ -201,7 +201,7 @@ class acp_email
$messenger->set_mail_priority($priority);
$messenger->assign_vars(array(
'CONTACT_EMAIL' => $config['board_contact'],
'CONTACT_EMAIL' => phpbb_get_board_contact($config, $phpEx),
'MESSAGE' => htmlspecialchars_decode($message))
);

View File

@@ -814,7 +814,7 @@ class acp_users
$check_ary += array(
'email' => array(
array('string', false, 6, 60),
array('email', $user_row['user_email'])
array('user_email', $user_row['user_email']),
),
);
}

View File

@@ -0,0 +1,26 @@
<?php
/**
*
* @package acp
* @copyright (c) 2014 phpBB Group
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
/**
* @package module_install
*/
class acp_contact_info
{
public function module()
{
return array(
'filename' => 'acp_contact',
'title' => 'ACP_CONTACT',
'version' => '1.0.0',
'modes' => array(
'contact' => array('title' => 'ACP_CONTACT_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),
),
);
}
}