Перейти к содержимому
Русский язык для Invision Community 5

Не удается удалить фотографию пользователя

Не удается удалить фотографию пользователя в панели управления модератора. Фотография добавлена через gravatar. Пользователь зарегистрировался на сайте через windiows live. При попытке выставить удаление фотографии пользователя, фотография не удаляется, а выпадающий список возвращается в положение "Нет" после сохранения. Как удалить фото с помощью обычного функционала и почему не работает для граватар этот функционал? Я понимаю, что через панель управления администратора можно загрузить другое изображение пользователю, но странно, что нельзя сбросить текущее изображение, не заливая другую картинку. Может баг?

 

Для обычных фотографий (не граватар), функционал работает.

 

4xypP.jpg

 

Ссылки на картинки имеют такой вид:

 

http://www.gravatar.com/avatar/a934bfec515ab8022058917e9073cd80?s=100&d=http%3A%2F%2Fwww.a108.net%2Fpublic%2Fstyle_images%2Flight%2Fprofile%2Fdefault_large.png

Изменено пользователем Zero108

Рекомендованные сообщения

Если это именно gravatar то должен удалится.

Если на форуме включен gravatar, и у пользователя не установлено фото, ссылка на фото формируется через gravatar.

  • Автор

Граватар включен. Не удаляется. Более того, когда в админке смотришь анкету, там нет кнопки удалить, если это изображение - ссылка на граватар. Если обычным образом загружено, в ACP кнопка удаления есть. Пока получается перебить граватар только загрузкой нового изображения.

LUdCV.jpgMHFhP.jpg

Изменено пользователем Zero108

Граватар удаляется обычным способом. Но ссылка на дефолтный аватар формируется через граватар. Если что-то не удаляется ковыряйте бд, ибо поле gr_avatar (profile_portal) удаляется обычным методом.

  • Автор

Может есть настройка какая-то, чтобы настроить удаление граватара. У меня даже кнопки в ACP нет, как я выше показал. Может быть в коде вы и видите возможность удаления, но в реальности ее нет. Я проверял. В любом случае, пока загружаю другие аватары, вместо граватара.

Наверное потому что ключевой момент здесь:

Если на форуме включен gravatar, и у пользователя не установлено фото, ссылка на фото формируется через gravatar.

Если нет фото, фото по умолчанию формируются динамически через gravatar.com с использованием хеша емайла пользователя.

Но при удаление фото, у пользователя задается опция bw_disable_gravatar=1 (отключается граватар). И вот тут есть баг. Сначала удаляется фото и сохраняется опция bw_disable_gravatar в специальном формате в поле members_bitoptions. Потом проверяется другая настройка, которая сохраняется в этом же поле, и она перезаписывает сохраненное значение при удаление фото.

 

Fix

Открыть /admin/applications/core/modules_public/modcp/modcp.php

Найти:

		$bw['bw_no_status_update'] = ( $this->request['status_updates'] ) ? 0 : 1;

и ниже добавить:

 

		if( $this->request['photo'] == 1 )
		{
			$bw['bw_disable_gravatar'] = 1;
		}

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.