mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-10 16:35:35 +02:00
[ticket/12368] Correctly check if avatars migration is installed
Try to set the avatar type to string value to check if new avatar types are supported. PHPBB3-12368
This commit is contained in:
@ -17,7 +17,29 @@ class avatars extends \phpbb\db\migration\migration
|
|||||||
{
|
{
|
||||||
public function effectively_installed()
|
public function effectively_installed()
|
||||||
{
|
{
|
||||||
return isset($this->config['allow_avatar_gravatar']);
|
// Get current avatar type of guest user
|
||||||
|
$sql = 'SELECT user_avatar_type
|
||||||
|
FROM ' . $this->table_prefix . 'users
|
||||||
|
WHERE user_id = ' . ANONYMOUS;
|
||||||
|
$result = $this->db->sql_query($sql);
|
||||||
|
$backup_type = $this->db->sql_fetchfield('user_avatar_type');
|
||||||
|
$this->db->sql_freeresult($result);
|
||||||
|
|
||||||
|
// Try to set avatar type to string
|
||||||
|
$sql = 'UPDATE ' . $this->table_prefix . "users
|
||||||
|
SET user_avatar_type = 'avatar.driver.upload'
|
||||||
|
WHERE user_id = " . ANONYMOUS;
|
||||||
|
$this->db->sql_return_on_error(true);
|
||||||
|
$effectively_installed = $this->db->sql_query($sql);
|
||||||
|
$this->db->sql_return_on_error();
|
||||||
|
|
||||||
|
// Return avatar type of guest user to previous state
|
||||||
|
$sql = 'UPDATE ' . $this->table_prefix . "users
|
||||||
|
SET user_avatar_type = '{$backup_type}'
|
||||||
|
WHERE user_id = " . ANONYMOUS;
|
||||||
|
$this->db->sql_query($sql);
|
||||||
|
|
||||||
|
return $effectively_installed !== false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static public function depends_on()
|
static public function depends_on()
|
||||||
|
Reference in New Issue
Block a user