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

Удалить потерянные аватары

Есть такая полезная функция в админке как Удалить потерянные аватары

Проверка и удаление потерянных 'av-' файлов, не связанных ни с одним пользователем.

Для этого инструмента требуется большее количество ресурсов.

 

Так вот, в каком файле что мне подредактировать, что бы скрипт удалял в папке автаров av- файлы только у удалённых пользователей?

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

А в чем идея?

 

\admin\applications\core\modules_admin\tools\rebuild.php

 					$found = $this->DB->buildAndFetch( array( 'select' => 'pp_member_id', 'from' => 'profile_portal', 'where' => "avatar_location='{$file->getFilename()}' or avatar_location='upload:{$file->getFilename()}'" ) );

заменить на

					preg_match("#av-([0-9]+)\." . $file->getExtension() . "$#", $file->getFilename(), $matches);
					$found = $this->DB->buildAndFetch( array( 'select' => 'pp_member_id', 'from' => 'profile_portal', 'where' => 'pp_member_id=' . intval($matches[1]) ) );

  • Автор

\admin\applications\core\modules_admin\tools\rebuild.php

Спасибо, сейчас попробую.

  • Автор

Хм... Не много не то.

Задача такова - удалить все файлы аватаров av- в папке uploads всех удалённых пользователей. А вот аватары av- существующих пользователей не трогать, и не важно прописана у него аватара в таблице profile_portal или нет.

А что не удаляется?

Примеры файлов.

  • Автор

А что не удаляется?

Нет, всё нормально и хорошо удаляется. Но мне нужно что бы не удалялись файлы av- у зарегистрированых юзеров (не удалёных), даже если в таблице profile_portal нет информации об этом файле. Нужно что бы файлы av- лежали в папке uploads, но только с идами существующих юзеров.

 

Короче нужно что бы скрипт удалил все файлы av- в папке uploads удалёных юзеров, тогда как существующих что бы ни трогал ни в коем случае.

Короче нужно что бы скрипт удалил все файлы av- в папке uploads удалёных юзеров, тогда как существующих что бы ни трогал ни в коем случае.

Так проверьте.

Добавьте картинку av-XXXXXX.png, где XXXXXX - ID юзера, у которого нет аватарки.

Добавьте картинку av-YYYYYY.png, где YYYYYY - ID несуществующего юзера.

 

В оригинальном варианте мы ищем запись в таблице по аватарке.

В измененном варианте мы ищем запись в таблице по ID юзера.

  • Автор

@newbie,

Всё работает правильно. Я попросту не правильно заменил текст в файле. Всё сработало на ура и быстро. Ещё раз спасибо за неоценимую помощь.

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

Аккаунт

Навигация

Поиск

Поиск

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

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