mirror of
https://github.com/phpbb/phpbb.git
synced 2025-07-31 14:00:31 +02:00
[ticket/16533] Add autologin keys management UCP module events
PHPBB3-16533
This commit is contained in:
@@ -44,4 +44,37 @@ class phpbb_functional_ucp_profile_test extends phpbb_functional_test_case
|
||||
$this->assertEquals('phpbb_twitter', $form->get('pf_phpbb_twitter')->getValue());
|
||||
$this->assertEquals('phpbb.youtube', $form->get('pf_phpbb_youtube')->getValue());
|
||||
}
|
||||
|
||||
public function test_autologin_keys_manage()
|
||||
{
|
||||
$this->add_lang('ucp');
|
||||
$this->login('admin', true);
|
||||
$db = $this->get_db();
|
||||
|
||||
$crawler = self::request('GET', 'ucp.php?i=ucp_profile&mode=autologin_keys');
|
||||
$this->assertContainsLang('UCP_PROFILE_AUTOLOGIN_KEYS', $crawler->filter('#cp-main h2')->text());
|
||||
|
||||
$profile_url = $crawler->filter('a[title="Profile"]')->attr('href');
|
||||
$user_id = $this->get_parameter_from_link($profile_url, 'u');
|
||||
|
||||
$sql_ary = [
|
||||
'SELECT' => 'sk.key_id',
|
||||
'FROM' => [SESSIONS_KEYS_TABLE => 'sk'],
|
||||
'WHERE' => 'sk.user_id = ' . (int) $user_id,
|
||||
'ORDER_BY' => 'sk.last_login ASC',
|
||||
];
|
||||
$result = $db->sql_query_limit($db->sql_build_query('SELECT', $sql_ary), 1);
|
||||
$key_id = substr($db->sql_fetchfield('key_id'), 0, 8);
|
||||
$db->sql_freeresult($result);
|
||||
|
||||
$this->assertContains($key_id, $crawler->filter('label[for="' . $key_id . '"]')->text());
|
||||
|
||||
$form = $crawler->selectButton('submit')->form();
|
||||
$form['keys'][0]->tick();
|
||||
$crawler = self::submit($form);
|
||||
$this->assertContains($this->lang('AUTOLOGIN_SESSION_KEYS_DELETED'), $crawler->filter('html')->text());
|
||||
|
||||
$crawler = self::request('GET', 'ucp.php?i=ucp_profile&mode=autologin_keys');
|
||||
$this->assertContains($this->lang('PROFILE_NO_AUTOLOGIN_KEYS'), $crawler->filter('tbody > tr > td[class="bg1"]')->text());
|
||||
}
|
||||
}
|
||||
|
@@ -788,7 +788,7 @@ class phpbb_functional_test_case extends phpbb_test_case
|
||||
return group_user_add($group_id, false, $usernames, $group_name, $default, $leader);
|
||||
}
|
||||
|
||||
protected function login($username = 'admin')
|
||||
protected function login($username = 'admin', $autologin = false)
|
||||
{
|
||||
$this->add_lang('ucp');
|
||||
|
||||
@@ -796,6 +796,10 @@ class phpbb_functional_test_case extends phpbb_test_case
|
||||
$this->assertContains($this->lang('LOGIN_EXPLAIN_UCP'), $crawler->filter('html')->text());
|
||||
|
||||
$form = $crawler->selectButton($this->lang('LOGIN'))->form();
|
||||
if ($autologin)
|
||||
{
|
||||
$form['autologin']->tick();
|
||||
}
|
||||
$crawler = self::submit($form, array('username' => $username, 'password' => $username . $username));
|
||||
$this->assertNotContains($this->lang('LOGIN'), $crawler->filter('.navbar')->text());
|
||||
|
||||
|
Reference in New Issue
Block a user