mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-10 13:28:55 +00:00
[ticket/11548] Run array_map on complete error array and not just colour_error
Up to now the array_map() that turns error messages into the localized output was only ran if the group's color was set. With this patch it'll run the array_map() on the complete error array if it's not empty. PHPBB3-11548
This commit is contained in:
parent
a997768627
commit
599f83395f
2 changed files with 52 additions and 1 deletions
|
@ -599,7 +599,7 @@ class ucp_groups
|
|||
if ($colour_error = validate_data($submit_ary, array('colour' => array('hex_colour', true))))
|
||||
{
|
||||
// Replace "error" string with its real, localised form
|
||||
$error = array_merge($error, array_map(array(&$user, 'lang'), $colour_error));
|
||||
$error = array_merge($error, $colour_error);
|
||||
}
|
||||
|
||||
if (!sizeof($error))
|
||||
|
@ -642,6 +642,7 @@ class ucp_groups
|
|||
|
||||
if (sizeof($error))
|
||||
{
|
||||
$error = array_map(array(&$user, 'lang'), $error);
|
||||
$group_rank = $submit_ary['rank'];
|
||||
|
||||
$group_desc_data = array(
|
||||
|
|
|
@ -18,4 +18,54 @@ class phpbb_functional_ucp_groups_test extends phpbb_functional_common_groups_te
|
|||
{
|
||||
return 'ucp.php?i=groups&mode=manage&action=edit';
|
||||
}
|
||||
|
||||
// Enable all avatars in the ACP
|
||||
private function enable_all_avatars()
|
||||
{
|
||||
$this->add_lang('acp/board');
|
||||
|
||||
$crawler = $this->request('GET', 'adm/index.php?i=board&mode=avatar&sid=' . $this->sid);
|
||||
// Check the default entries we should have
|
||||
$this->assertContains($this->lang('ALLOW_REMOTE'), $crawler->text());
|
||||
$this->assertContains($this->lang('ALLOW_AVATARS'), $crawler->text());
|
||||
$this->assertContains($this->lang('ALLOW_LOCAL'), $crawler->text());
|
||||
|
||||
// Now start setting the needed settings
|
||||
$form = $crawler->selectButton($this->lang('SUBMIT'))->form();
|
||||
$form['config[allow_avatar_local]']->select(1);
|
||||
$form['config[allow_avatar_remote]']->select(1);
|
||||
$form['config[allow_avatar_remote_upload]']->select(1);
|
||||
$crawler = $this->client->submit($form);
|
||||
$this->assertContains($this->lang('CONFIG_UPDATED'), $crawler->text());
|
||||
}
|
||||
|
||||
public function group_avatar_min_max_data()
|
||||
{
|
||||
return array(
|
||||
array('uploadurl', 'foo', 'TOO_SHORT'),
|
||||
array('uploadurl', 'foobar', 'AVATAR_URL_INVALID'),
|
||||
array('uploadurl', str_repeat('f', 256), 'TOO_LONG'),
|
||||
array('remotelink', 'foo', 'TOO_SHORT'),
|
||||
array('remotelink', 'foobar', 'AVATAR_URL_INVALID'),
|
||||
array('remotelink', str_repeat('f', 256), 'TOO_LONG'),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider group_avatar_min_max_data
|
||||
*/
|
||||
public function test_group_avatar_min_max($form_name, $input, $expected)
|
||||
{
|
||||
$this->login();
|
||||
$this->admin_login();
|
||||
$this->add_lang(array('ucp', 'acp/groups'));
|
||||
$this->enable_all_avatars();
|
||||
|
||||
$crawler = $this->request('GET', $this->get_url() . '&g=5&sid=' . $this->sid);
|
||||
$this->assert_response_success();
|
||||
$form = $crawler->selectButton($this->lang('SUBMIT'))->form();
|
||||
$form[$form_name]->setValue($input);
|
||||
$crawler = $this->client->submit($form);
|
||||
$this->assertContains($this->lang($expected), $crawler->text());
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue