mirror of
https://github.com/Terranom674/Piwigo_Bratonien_Tools.git
synced 2026-09-19 17:34:31 +00:00
Queue watermark precache after configuration changes
This commit is contained in:
@@ -44,13 +44,8 @@ function bratonien_tools_clear_image_cache()
|
|||||||
throw new RuntimeException('Piwigos Funktion clear_derivative_cache() ist nicht verfuegbar.');
|
throw new RuntimeException('Piwigos Funktion clear_derivative_cache() ist nicht verfuegbar.');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Zuerst exakt denselben Mechanismus verwenden wie
|
|
||||||
// Wartung -> Mehrfache Bildgroessen entfernen -> Alles.
|
|
||||||
clear_derivative_cache('all');
|
clear_derivative_cache('all');
|
||||||
|
|
||||||
// Danach bewusst ALLE verbleibenden erzeugten Bilddateien im
|
|
||||||
// Derivatverzeichnis entfernen. Damit werden auch Dateien erfasst,
|
|
||||||
// die von Plugins erzeugt wurden oder nicht in Piwigos Typ-Muster passen.
|
|
||||||
$failed_files = array();
|
$failed_files = array();
|
||||||
$residual_deleted = 0;
|
$residual_deleted = 0;
|
||||||
|
|
||||||
@@ -111,9 +106,11 @@ function bratonien_tools_clear_image_cache()
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bratonien_tools_request_watermark_precache();
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
'message' => sprintf(
|
'message' => sprintf(
|
||||||
'Bildcache vollstaendig geleert: %d Dateien (%s) entfernt, davon %d Custom-Derivate. %d Restdateien wurden zusaetzlich ausserhalb von Piwigos Standard-Löschmustern entfernt.',
|
'Bildcache vollstaendig geleert: %d Dateien (%s) entfernt, davon %d Custom-Derivate. %d Restdateien wurden zusaetzlich ausserhalb von Piwigos Standard-Loeschmustern entfernt. Wasserzeichen-Precache wurde vorgemerkt.',
|
||||||
$before['files'],
|
$before['files'],
|
||||||
bratonien_tools_format_bytes($before['bytes']),
|
bratonien_tools_format_bytes($before['bytes']),
|
||||||
$before['custom'],
|
$before['custom'],
|
||||||
@@ -172,6 +169,25 @@ function bratonien_tools_scan_image_cache($cache_root)
|
|||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function bratonien_tools_request_watermark_precache()
|
||||||
|
{
|
||||||
|
$request_file = PHPWG_ROOT_PATH.PWG_LOCAL_DIR.'bratonien-tools-precache.request';
|
||||||
|
$directory = dirname($request_file);
|
||||||
|
|
||||||
|
if (!is_dir($directory) && !mkdir($directory, 0755, true) && !is_dir($directory))
|
||||||
|
{
|
||||||
|
throw new RuntimeException('Precache-Anforderung konnte nicht vorbereitet werden.');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (@file_put_contents($request_file, (string)time()."\n", LOCK_EX) === false)
|
||||||
|
{
|
||||||
|
throw new RuntimeException('Precache-Anforderung konnte nicht gespeichert werden.');
|
||||||
|
}
|
||||||
|
|
||||||
|
@chmod($request_file, 0664);
|
||||||
|
return $request_file;
|
||||||
|
}
|
||||||
|
|
||||||
function bratonien_tools_format_bytes($bytes)
|
function bratonien_tools_format_bytes($bytes)
|
||||||
{
|
{
|
||||||
$units = array('B', 'KB', 'MB', 'GB', 'TB');
|
$units = array('B', 'KB', 'MB', 'GB', 'TB');
|
||||||
|
|||||||
Reference in New Issue
Block a user