Skip to content
Extraits de code Groupes Projets

Comparer les révisions

Les modifications sont affichées comme si la révision source était fusionnée avec la révision cible. En savoir plus sur la comparaison des révisions.

Source

Sélectionner le projet cible
No results found

Cible

Sélectionner le projet cible
  • spip/images
  • RealET/filtres_images_warnings
  • bricebou/filtres_images
3 résultats
Afficher les modifications
Affichage de
avec 177 ajouts et 378 suppressions
......@@ -6,5 +6,5 @@ return [
// I
'images_description' => 'Filtres de transformation d’images et de couleurs',
'images_slogan' => 'Filtres de transformation d’images et de couleurs'
'images_slogan' => 'Filtres de transformation d’images et de couleurs',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=fr_fem
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Filtres de transformation d’images et de couleurs',
'images_slogan' => 'Filtres de transformation d’images et de couleurs'
);
'images_slogan' => 'Filtres de transformation d’images et de couleurs',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=fr_tu
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Filtres de transformation d’images et de couleurs',
'images_slogan' => 'Filtres de transformation d’images et de couleurs'
);
'images_slogan' => 'Filtres de transformation d’images et de couleurs',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=it
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Filtri di trasformazione delle immagini e dei colori',
'images_slogan' => 'Filtri di trasformazione delle immagini e dei colori'
);
'images_slogan' => 'Filtri di trasformazione delle immagini e dei colori',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=ja
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => '画像および色変換フィルタ',
'images_slogan' => '画像および色変換フィルタ'
);
'images_slogan' => '画像および色変換フィルタ',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=lb
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Ännerungs-Filteren fir d’Biller an d’Faarwen',
'images_slogan' => 'Ännerungs-Filteren fir d’Biller an d’Faarwen'
);
'images_slogan' => 'Ännerungs-Filteren fir d’Biller an d’Faarwen',
];
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=mg
// ** ne pas modifier le fichier **
return [
// I
'images_description' => 'Filtres de transformation d’images et de couleurs',
'images_slogan' => 'Filtres de transformation d’images et de couleurs',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=nl
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Beeld en kleur transformatie filters',
'images_slogan' => 'Beeld en kleur transformatie filters'
);
'images_slogan' => 'Beeld en kleur transformatie filters',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=oc_ni_mis
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Filtre de trasfourmacioun d’image e de coulou',
'images_slogan' => 'Filtre de trasfourmacioun d’image e de coulou'
);
'images_slogan' => 'Filtre de trasfourmacioun d’image e de coulou',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=pt
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Processamento de imagens e filtros de cores',
'images_slogan' => 'Processamento de imagens e filtros de cores'
);
'images_slogan' => 'Processamento de imagens e filtros de cores',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=pt_br
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Filtros de transformação de imagens e de cores',
'images_slogan' => 'Filtros de transformação de imagens e de cores'
);
'images_slogan' => 'Filtros de transformação de imagens e de cores',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=ru
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Набор фильтров по работе с изображениями',
'images_slogan' => 'Набор фильтров по работе с изображениями'
);
'images_slogan' => 'Набор фильтров по работе с изображениями',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=sk
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Filtre na transformáciu obrázkov a farieb',
'images_slogan' => 'Filtre na transformáciu obrázkov a farieb'
);
'images_slogan' => 'Filtre na transformáciu obrázkov a farieb',
];
......@@ -3,13 +3,9 @@
// extrait automatiquement de https://trad.spip.net/tradlang_module/paquet-images?lang_cible=uk
// ** ne pas modifier le fichier **
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[$GLOBALS['idx_lang']] = array(
return [
// I
'images_description' => 'Фільтри для обробки зображень і роботи з кольорами',
'images_slogan' => 'Фільтри для обробки зображень і роботи з кольорами'
);
'images_slogan' => 'Фільтри для обробки зображень і роботи з кольорами',
];
<paquet
prefix="images"
categorie="multimedia"
version="4.2.0-dev"
etat="dev"
version="5.0.1"
etat="stable"
compatibilite="[5.0.0-dev;5.0.*]"
logo="images/image_filtre-xx.svg"
>
......
<?xml version="1.0"?>
<ruleset>
<file>.</file>
<exclude-pattern>vendor/*</exclude-pattern>
<exclude-pattern>lang/*</exclude-pattern>
<exclude-pattern>tests/*</exclude-pattern>
<rule ref="SPIP50"/>
<config name="ignore_warnings_on_exit" value="1"/>
<arg name="cache" value=".php_cs.cache"/>
<arg name="report-full" value=".php_cs.txt"/>
<arg name="report-summary"/>
<arg value="s"/>
</ruleset>
parameters:
ignoreErrors:
-
message: "#^Function _couleur_dec_to_hex not found\\.$#"
count: 4
path: filtres/couleurs.php
-
message: "#^Function _couleur_hex_to_dec not found\\.$#"
count: 6
path: filtres/couleurs.php
-
message: "#^Function _couleur_hsl_to_rgb not found\\.$#"
count: 2
path: filtres/couleurs.php
-
message: "#^Function _couleur_rgb_to_hsl not found\\.$#"
count: 2
path: filtres/couleurs.php
-
message: "#^Function couleur_eclaircir not found\\.$#"
count: 1
path: filtres/couleurs.php
-
message: "#^Function couleur_foncer not found\\.$#"
count: 1
path: filtres/couleurs.php
-
message: "#^Function include_spip not found\\.$#"
count: 7
path: filtres/couleurs.php
-
message: "#^Function _couleur_dec_to_hex not found\\.$#"
count: 3
path: filtres/images_lib.php
-
message: "#^Function _couleur_hsl_to_rgb not found\\.$#"
count: 1
path: filtres/images_lib.php
-
message: "#^Function _couleur_rgb_to_hsl not found\\.$#"
count: 1
path: filtres/images_lib.php
-
message: "#^Function _image_valeurs_trans not found\\.$#"
count: 1
path: filtres/images_lib.php
-
message: "#^Function ecrire_fichier not found\\.$#"
count: 1
path: filtres/images_lib.php
-
message: "#^Function include_spip not found\\.$#"
count: 1
path: filtres/images_lib.php
-
message: "#^Function lire_fichier not found\\.$#"
count: 1
path: filtres/images_lib.php
-
message: "#^Function svg_extract_couleurs not found\\.$#"
count: 1
path: filtres/images_lib.php
-
message: "#^Function _couleur_hex_to_dec not found\\.$#"
count: 4
path: filtres/images_transforme.php
-
message: "#^Function _image_ecrire_tag not found\\.$#"
count: 15
path: filtres/images_transforme.php
-
message: "#^Function _image_gd_output not found\\.$#"
count: 27
path: filtres/images_transforme.php
-
message: "#^Function _image_tag_changer_taille not found\\.$#"
count: 1
path: filtres/images_transforme.php
-
message: "#^Function _image_valeurs_trans not found\\.$#"
count: 22
path: filtres/images_transforme.php
-
message: "#^Function charger_fonction not found\\.$#"
count: 1
path: filtres/images_transforme.php
-
message: "#^Function hauteur not found\\.$#"
count: 1
path: filtres/images_transforme.php
-
message: "#^Function image_reduire not found\\.$#"
count: 1
path: filtres/images_transforme.php
-
message: "#^Function imagick_isopaqueimage not found\\.$#"
count: 1
path: filtres/images_transforme.php
-
message: "#^Function imagick_readimage not found\\.$#"
count: 2
path: filtres/images_transforme.php
-
message: "#^Function imagick_setfillcolor not found\\.$#"
count: 1
path: filtres/images_transforme.php
-
message: "#^Function imagick_writeimage not found\\.$#"
message: '#^Function spip_timer not found\.$#'
identifier: function.notFound
count: 2
path: filtres/images_transforme.php
-
message: "#^Function include_spip not found\\.$#"
count: 6
path: filtres/images_transforme.php
-
message: "#^Function largeur not found\\.$#"
count: 1
path: filtres/images_transforme.php
path: filtres/image_process/convert.php
-
message: "#^Function spip_log not found\\.$#"
count: 2
message: '#^Function spip_timer not found\.$#'
identifier: function.notFound
count: 8
path: filtres/images_transforme.php
-
message: "#^Function spip_unlink not found\\.$#"
count: 1
path: filtres/images_transforme.php
message: '#^Access to an undefined property Spip\\Cli\\Command\\ImagesPurger\:\:\$io\.$#'
identifier: property.notFound
count: 8
path: spip-cli/ImagesPurger.php
-
message: "#^Function svg_ajouter_background not found\\.$#"
message: '#^Access to constant VALUE_REQUIRED on an unknown class Symfony\\Component\\Console\\Input\\InputOption\.$#'
identifier: class.notFound
count: 1
path: filtres/images_transforme.php
path: spip-cli/ImagesPurger.php
-
message: "#^Function svg_ajouter_voile not found\\.$#"
message: '#^Access to undefined constant Spip\\Cli\\Command\\ImagesPurger\:\:FAILURE\.$#'
identifier: classConstant.notFound
count: 2
path: filtres/images_transforme.php
path: spip-cli/ImagesPurger.php
-
message: "#^Function svg_filter_blur not found\\.$#"
message: '#^Access to undefined constant Spip\\Cli\\Command\\ImagesPurger\:\:SUCCESS\.$#'
identifier: classConstant.notFound
count: 1
path: filtres/images_transforme.php
path: spip-cli/ImagesPurger.php
-
message: "#^Function svg_filter_grayscale not found\\.$#"
message: '#^Call to an undefined method Spip\\Cli\\Command\\ImagesPurger\:\:setName\(\)\.$#'
identifier: method.notFound
count: 1
path: filtres/images_transforme.php
path: spip-cli/ImagesPurger.php
-
message: "#^Function svg_filter_sepia not found\\.$#"
message: '#^Parameter \$input of method Spip\\Cli\\Command\\ImagesPurger\:\:execute\(\) has invalid type Symfony\\Component\\Console\\Input\\InputInterface\.$#'
identifier: class.notFound
count: 1
path: filtres/images_transforme.php
path: spip-cli/ImagesPurger.php
-
message: "#^Function svg_flip not found\\.$#"
count: 2
path: filtres/images_transforme.php
-
message: "#^Function svg_recadrer not found\\.$#"
count: 3
path: filtres/images_transforme.php
-
message: "#^Function svg_rotate not found\\.$#"
message: '#^Parameter \$output of method Spip\\Cli\\Command\\ImagesPurger\:\:execute\(\) has invalid type Symfony\\Component\\Console\\Output\\OutputInterface\.$#'
identifier: class.notFound
count: 1
path: filtres/images_transforme.php
-
message: "#^Function svg_transformer not found\\.$#"
count: 1
path: filtres/images_transforme.php
-
message: "#^Function taille_image not found\\.$#"
count: 3
path: filtres/images_transforme.php
-
message: "#^Function _T not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function _image_gd_output not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function couleur_html_to_hex not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function find_in_path not found\\.$#"
count: 2
path: filtres/images_typo.php
-
message: "#^Function html2unicode not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function include_spip not found\\.$#"
count: 2
path: filtres/images_typo.php
-
message: "#^Function init_mb_string not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function inserer_attribut not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function sous_repertoire not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function spip_getimagesize not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function spip_log not found\\.$#"
count: 1
path: filtres/images_typo.php
-
message: "#^Function spip_strlen not found\\.$#"
count: 2
path: filtres/images_typo.php
-
message: "#^Function spip_substr not found\\.$#"
count: 2
path: filtres/images_typo.php
-
message: "#^Function include_spip not found\\.$#"
count: 2
path: images_fonctions.php
path: spip-cli/ImagesPurger.php
......@@ -2,7 +2,7 @@ includes:
- phpstan-baseline.neon
parameters:
phpVersion: 80100
phpVersion: 80200
paths:
- .
excludePaths:
......@@ -10,4 +10,6 @@ parameters:
- vendor
- lang
- tests
- ecs.php
- rector.php
level: 0
......@@ -2,31 +2,13 @@
declare(strict_types=1);
use Rector\CodeQuality\Rector\LogicalAnd\LogicalToBooleanRector;
use Rector\Config\RectorConfig;
use Rector\Set\ValueObject\LevelSetList;
use Rector\Php81\Rector\ClassConst\FinalizePublicClassConstantRector;
use Rector\Php81\Rector\FuncCall\NullToStrictStringFuncCallArgRector;
use Rector\Php71\Rector\FuncCall\CountOnNullRector;
use Rector\Php80\Rector\FunctionLike\MixedTypeRector;
use Rector\Php80\Rector\FunctionLike\UnionTypesRector;
return static function (RectorConfig $rectorConfig): void {
$rectorConfig->paths([
__DIR__ . '/filtres',
__DIR__ . '/images_fonctions.php',
__DIR__ . '/tests',
]);
$rectorConfig->sets([
LevelSetList::UP_TO_PHP_81
]);
$rectorConfig->skip([
__DIR__ . '/lang',
FinalizePublicClassConstantRector::class,
NullToStrictStringFuncCallArgRector::class,
CountOnNullRector::class,
MixedTypeRector::class,
UnionTypesRector::class,
]);
};
return RectorConfig::configure()
->withPaths([__DIR__])
->withRootFiles()
->withPhpSets(php82: true)
->withRules([LogicalToBooleanRector::class])
->withSkip([__DIR__ . '/lang', __DIR__ . '/vendor', __DIR__ . '/tests', NullToStrictStringFuncCallArgRector::class]);
<?php
namespace Spip\Cli\Command;
use Spip\Cli\Console\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
class ImagesPurger extends Command
{
protected array $images_obsoletes = [];
protected function configure() {
$this
->setName('images:purger')
->addOption('from', null, InputOption::VALUE_REQUIRED, 'Purger les images plus anciennes que cette date')
->setDescription('Purger les images temporaires de local/ plus anciennes que la date fournie en option from')
->addUsage("--from='-1 year'")
->addUsage("--from='-6 month'")
->addUsage("--from='2024-01-01'")
->addUsage("--from='2024-10'")
;
}
protected function execute(InputInterface $input, OutputInterface $output) {
$this->io->title('Purger les images temporaires obsolètes');
$from = $input->getOption('from');
if (!$from) {
$this->io->error('Option --from requis');
return self::FAILURE;
}
$from = strtotime($from);
if (!$from) {
$this->io->error('Option --from invalide');
return self::FAILURE;
}
$this->io->care(sprintf('Purger avant le <info>%s</info>', date('Y-m-d H:i:s', $from)));
$dir_caches = [_DIR_VAR . 'cache-gd2/', _DIR_VAR . 'cache-vignettes/'];
foreach ($dir_caches as $dir_cache) {
$this->parcourirDossierCacheImages($dir_cache, $from);
}
$this->nettoyerCacheImagesObsoletes();
return self::SUCCESS;
}
protected function parcourirDossierCacheImages($dir, $from, $recurs = true) {
$dir = rtrim($dir, '/') . '/';
$files = glob($dir . '*');
foreach ($files as $file) {
if (is_dir($file)) {
if ($recurs) {
$this->parcourirDossierCacheImages($file, $from, $recurs);
}
} else {
if (filemtime($file) < $from) {
$this->images_obsoletes[] = $file;
}
}
}
}
protected function nettoyerCacheImagesObsoletes() {
include_spip('inc/filtres');
$nb_deleted = 0;
$size_deleted = 0;
foreach ($this->images_obsoletes as $file) {
$nb_deleted++;
$size_deleted += filesize($file);
if (@unlink($file)) {
$this->io->check("Supprimer: $file");
} else {
$this->io->fail("Supprimer: $file");
}
}
$size = taille_en_octets($size_deleted);
if ($nb_deleted) {
$this->io->care($nb_deleted . ' fichiers supprimés' . ($size ? ' (' . $size . ')' : ''));
} else {
$this->io->care('0 fichier supprimé');
}
}
}