Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Uploads почистить

Опубликовано:

Здравствуйте

Прошу помочь мне с таким вопросом...

Поиском не нашел...

IPB 4, официальная.

Помнится в старых версия можно было удалить вложения, которые не прикреплены к сообщениям. В админке была такая функция.. В 4 версии этого нету.

В связи с тем, что пришлось восстанавливать uploads, там сейчас находится много лишних файлов.

Как бы их по удалять ....

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

Опубликовано:

Файлы где находятся, в корне?

Опубликовано:
  • Автор

В uploads и затем папки по месяцам... думаю в uploads/ тоже есть лишнего

Опубликовано:

Насколько я понял удаления бессвязных аттачей проводится фоновой задачи которая запускается то ли автоматически то ли вручную.

Опубликовано:

Функция запускается кнопкой в System -> Files -> Remove Orphaned Files, но она временно отключена в связи с необходимостью ее доработки.

 

Для удаления бессвязных аттачей выполнить в корне форума следующий скрипт:

 

require_once 'init.php';
\IPS\Dispatcher\Front::i();

$engine = \IPS\Application::allExtensions( 'core', 'FileStorage', FALSE )['core_Attachment'];
$dir    = 'uploads';

if ( is_dir( $dir ) )
{
$iterator = new \RecursiveIteratorIterator( new \RecursiveDirectoryIterator( $dir, \FilesystemIterator::SKIP_DOTS | \FilesystemIterator::UNIX_PATHS ) );

foreach( $iterator as $f )
{
	/* We aren't checking directories */
	if( $f->isDir() OR $f->getFilename() == 'index.html' OR mb_substr( $f->getFilename(), 0, 1 ) === '.' OR mb_substr( $iterator->getSubPathname(), 0, 5 ) === 'logs/' )
	{
		continue;
	}

	if( ! preg_match( '/^monthly_(\d+)_(\d+)\//', $iterator->getSubPathname() ) )
	{
		continue;
	}

	try
	{
		if( $engine->isValidFile( $iterator->getSubPathname() ) )
		{
			continue;
		}
	}
	catch( \InvalidArgumentException $e )
	{
		continue;
	}

	@unlink( $f->getPathName() );
	echo "Deleted {$f->getPathName()}<br>\n";
}
}

  • 8 месяцев спустя...
Опубликовано:

Создал файл php в корне с содержимым, но не запускает (вылазит в браузере код), и через ссш аналогично.

Как правильно запустить скрипт? и есть ли возможность сделать перерасчет уже существующих вложений, то есть 3 папки по 4 гига, которые освободить нужно)

Опубликовано:
но она временно отключена в связи с необходимостью ее доработки.
Она уже 2 года отключена, все никак не доработают
Создал файл php в корне с содержимым

 

А тег <?php не забыл?

Опубликовано:

Спасибо, добавил, но эффекта не дало.

Опубликовано:

\IPS\Dispatcher\Front::i();

заменить на

\IPS\Dispatcher\External::i();

Опубликовано:

Спасибо! Отлично обработало, но зацепило аватарки многим, удалило все вложения с галереи.

Подняли бэкап

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

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

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.