Flatboard sur PHP 8 est cassé

simon
Flatboard sur PHP 8 est cassé
Simon Sunday 18th April 2021, 16:18:33

Coucou,
J'ai voulu testé Flatboard PRO dernière version beta sur mon Windows avec PHP 8.0.
Après avoir fait l'installation (qui fonctionne correctement), ce message d'erreur s'affiche :
Fatal error: Uncaught ValueError: Path cannot be empty in C:\laragon\www\flatboard\lib\Asset.lib.php:74 Stack trace: #0 C:\laragon\www\flatboard\lib\Asset.lib.php(74): file_get_contents('') #1 C:\laragon\www\flatboard\lib\Asset.lib.php(5😄: Asset::compressCSS('') #2 C:\laragon\www\flatboard\theme\bootstrap\header.tpl.php(26): Asset::Stylesheet(Array, './theme/bootstr...', 'style.min.css') #3 C:\laragon\www\flatboard\theme\bootstrap\main.tpl.php(1): include('C:\\laragon\\www\\...') #4 C:\laragon\www\flatboard\footer.php(36): require('C:\\laragon\\www\\...') #5 C:\laragon\www\flatboard\index.php(106): require('C:\\laragon\\www\\...') #6 {main} thrown in C:\laragon\www\flatboard\lib\Asset.lib.php on line 74


En mettant php 7.2, Flatboard refonctionne, mais bizarrement, en remettant php 8.0.2, il refonctionne encore.
Mais lorsque je vide le cache, je retombe sur la même erreur.

Last modified by Fred on Sunday 27th November 2022, 10:16:00

Replies 3
Fred
Fred  Sunday 16th May 2021, 09:50:38

Hello Simon,
Ça ne doit pas être grand chose, je suis étonné que tu n'es pas trouvé d’où cela proviens 😉.
D'après ton erreur, cela se passe lors de la génération du fichiers css minifié dans le fichier de la librairie Asset.lib.php.
J'essayerai de corrigé cela dès que possible, mais je t'avoue que je n'est pas trop de temps pour Flatboard ces temps-ci.
A+
  • Before ask a question, read the documentation.
  • 🎉  Featured as #1 product of the day on Product Hunt
  • Please like in alternativeto.net 👍🏻
  • ╰☆╮Flatboard╰☆╮ is a open source and community contributions are essential to project success!
  • <TextField>, my new CMS project designed by a passionate developer, for developers!
  • My last project Fast⚡︎CMS, a Flat-File cms.
  • I am currently busy 😫.

Max
Max  Saturday 26th November 2022, 14:19:55

Bonjour,
Au cas où ça peut servir à quelqu'un, j'ai rencontré le même soucis.
Dans le fichier lib/Asset.lib.php, il faut ajouter un test pour voir la variable
$file
n'est pas vide.
A la ligne 53, remplacez :

        if(!file_exists($css_cache_file)){ //continue only if file doesn't exist    
$cache_time = @filemtime($css_cache_file);
foreach ($array_files as $file){ //loop through array list
// Check filemtime
$time = @filemtime($file);
$content .= Asset::compressCSS($file); // Compress all file
}


Par :
        if(!file_exists($css_cache_file)){ //continue only if file doesn't exist    
$cache_time = @filemtime($css_cache_file);
foreach ($array_files as $file){ //loop through array list
if (empty($file)) {
continue;
}
// Check filemtime
$time = @filemtime($file);
$content .= Asset::compressCSS($file); // Compress all file
}

Fred
Fred  Sunday 27th November 2022, 10:15:54

Merci Max, j'ai ajouté ta modification.
Si tu vois d'autres coquilles n'hésite pas, je mettrais à jour l'archive avec d'autres bugs que j'ai corrigés.

Last modified by Fred on Sunday 27th November 2022, 10:16:00
  • Before ask a question, read the documentation.
  • 🎉  Featured as #1 product of the day on Product Hunt
  • Please like in alternativeto.net 👍🏻
  • ╰☆╮Flatboard╰☆╮ is a open source and community contributions are essential to project success!
  • <TextField>, my new CMS project designed by a passionate developer, for developers!
  • My last project Fast⚡︎CMS, a Flat-File cms.
  • I am currently busy 😫.