Archives de la liste a​i​d​e​@p​a​h​e​k​o​.c​l​o​u​d​

const FILE_STORAGE_CONFIG

essaillon

23/06/2021 21:31:26

Bsr,


Je cherche à créer un dossier de docs pour stocker mes relevés de compte.

J'ai ajouté dans config.local.php

const FILE_STORAGE_BACKEND = 'FileSystem';
const FILE_STORAGE_CONFIG = '../files/transaction/';

passé le dossier files à CHMOD 777 récursif

mais j'ai une erreur.

Merci

[23-Jun-2021 21:20:13 Europe/Paris] =========== Error ref. abdith6a 
===========

RuntimeException: Le répertoire de stockage des fichiers est protégé 
contre l'écriture. in 
/home/spipfactory/www/garradin-1.1.7/include/lib/Garradin/Files/Storage/FileSystem.php:28
Stack trace:
#0 [internal function]: 
Garradin\Files\Storage\FileSystem::configure('../files/transa...')
#1 
/home/spipfactory/www/garradin-1.1.7/include/lib/Garradin/Files/Files.php(120): 
call_user_func(Array, '../files/transa...')
#2 
/home/spipfactory/www/garradin-1.1.7/include/lib/Garradin/Files/Files.php(220): 
Garradin\Files\Files::callStorage('get', 'config/admin_bg...')
#3 
/home/spipfactory/www/garradin-1.1.7/include/lib/Garradin/Template.php(542): 
Garradin\Files\Files::get('config/admin_bg...')
#4 
/home/spipfactory/www/garradin-1.1.7/data/cache/shared/compiled/26d9a93b0e45c5907eed6dcd038d2a4c6742a5d4.tpl.php(52):

Garradin\Template->customColors(Array, Object(KD2\Smartyer))
#5 
/home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(342): 
include('/home/spipfacto...')
#6 
/home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(274): 
KD2\Smartyer->fetch(NULL)
#7 
/home/spipfactory/www/garradin-1.1.7/data/cache/shared/compiled/9f5b642fb10caf24466bf13eadfc172161fbd452.tpl.php.tmp(5):

KD2\Smartyer->display()
#8 
/home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(586): 
include('/home/spipfacto...')
#9 
/home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(335): 
KD2\Smartyer->compile()
#10 
/home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(290): 
KD2\Smartyer->fetch()
#11 
/home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(274): 
KD2\Smartyer->fetch('acc/transaction...')
#12 
/home/spipfactory/www/garradin-1.1.7/www/admin/acc/transactions/user.php(28): 
KD2\Smartyer->display('acc/transaction...')
#13 {main}

<errorReport>
{
     "errors": [
         {
             "message": "Le r\u00e9pertoire de stockage des
fichiers est 
prot\u00e9g\u00e9 contre l'\u00e9criture.",
             "errorCode": 0,
             "type": "RuntimeException",
             "backtrace": [
                 {
                     "file": 
"...\/include\/lib\/Garradin\/Files\/Storage\/FileSystem.php",
                     "line": 28,
                     "code": {
                         "24": "\t\t\tthrow new
\\RuntimeException('Le 
stockage de fichier n\\'a pas \u00e9t\u00e9 configur\u00e9 
(FILE_STORAGE_CONFIG est vide).');",
                         "25": "\t\t}",
                         "26": "",
                         "27": "\t\tif
(!is_writable($config) && 
!Utils::safe_mkdir($config)) {",
                         "28": "\t\t\tthrow new
\\RuntimeException('Le 
r\u00e9pertoire de stockage des fichiers est prot\u00e9g\u00e9 contre 
l\\'\u00e9criture.');",
                         "29": "\t\t}",
                         "30": "",
                         "31": "\t\t$target =
rtrim($config, 
DIRECTORY_SEPARATOR);",
                         "32": "\t\tself::$_root =
realpath($target);"
                     }
                 },
                 {
                     "function": 
"Garradin\\Files\\Storage\\FileSystem::configure",
                     "args": {
                         "$config": "string(21) 
\"..\/files\/transaction\/\""
                     }
                 },
                 {
                     "function": "call_user_func",
                     "file": 
"...\/include\/lib\/Garradin\/Files\/Files.php",
                     "line": 120,
                     "args": {
                         "$callback": "array(2)
{\n  [0]=> string(33) 
\"Garradin\\Files\\Storage\\FileSystem\"\n  [1]=> string(9) 
\"configure\"\n}",
                         "$args": "string(21)
\"..\/files\/transaction\/\""
                     },
                     "code": {
                         "116": "\tstatic public
function 
callStorage(string $function, ...$args)",
                         "117": "\t{",
                         "118": "\t\t$class_name =
__NAMESPACE__ . 
'\\\\Storage\\\\' . FILE_STORAGE_BACKEND;",
                         "119": "",
                         "120":
"\t\tcall_user_func([$class_name, 
'configure'], FILE_STORAGE_CONFIG);",
                         "121": "",
                         "122": "\t\treturn 
call_user_func_array([$class_name, $function], $args);",
                         "123": "\t}",
                         "124": ""
                     }
                 },
                 {
                     "function":
"Garradin\\Files\\Files::callStorage",
                     "file": 
"...\/include\/lib\/Garradin\/Files\/Files.php",
                     "line": 220,
                     "args": {
                         "$function": "string(3)
\"get\"",
                         "$args": "string(19)
\"config\/admin_bg.png\""
                     },
                     "code": {
                         "216": "\t\tcatch
(ValidationException $e) {",
                         "217": "\t\t\treturn
null;",
                         "218": "\t\t}",
                         "219": "",
                         "220": "\t\t$file =
self::callStorage('get', 
$path);",
                         "221": "",
                         "222": "\t\tif (!$file ||
($type && $file->type 
!= $type)) {",
                         "223": "\t\t\treturn
null;",
                         "224": "\t\t}"
                     }
                 },
                 {
                     "function":
"Garradin\\Files\\Files::get",
                     "file":
"...\/include\/lib\/Garradin\/Template.php",
                     "line": 542,
                     "args": {
                         "$path": "string(19)
\"config\/admin_bg.png\""
                     },
                     "code": {
                         "538": "\t\t$couleur1 = 
$config->get('couleur1') ?: ADMIN_COLOR1;",
                         "539": "\t\t$couleur2 = 
$config->get('couleur2') ?: ADMIN_COLOR2;",
                         "540":
"\t\t$admin_background = 
ADMIN_BACKGROUND_IMAGE;",
                         "541": "",
                         "542": "\t\tif (($f = 
$config->get('admin_background')) && ($file = Files::get($f)))
{",
                         "543":
"\t\t\t$admin_background = $file->url() 
. '?' . $file->modified->getTimestamp();",
                         "544": "\t\t}",
                         "545": "",
                         "546": "\t\t\/\/
Transformation Hexa vers 
d\u00e9cimal"
                     }
                 },
                 {
                     "function":
"Garradin\\Template->customColors",
                     "file": 
"...\/data\/cache\/shared\/compiled\/26d9a93b0e45c5907eed6dcd038d2a4c6742a5d4.tpl.php",
                     "line": 52,
                     "args": [
                         "array(1) {\n 
[\"config\"]=> 
object(Garradin\\Config) (25) {\n  }\n}",
                         "object(KD2\\Smartyer) (18) {\n 
[\"error_on_invalid_block\"]=> bool(true)\n}"
                     ],
                     "code": {
                         "48": "    <link
rel=\"stylesheet\" 
type=\"text\/css\" href=\"<?php echo self::escape($admin_url, 
$this->escape_type); \/\/#30?>static\/print.css?<?php echo 
self::escape($version_hash, $this->escape_type); \/\/#30?>\" 
media=\"print\" \/>",
                         "49": "    <link
rel=\"stylesheet\" 
type=\"text\/css\" href=\"<?php echo self::escape($admin_url, 
$this->escape_type); \/\/#31?>static\/handheld.css?<?php echo 
self::escape($version_hash, $this->escape_type); \/\/#31?>\" 
media=\"handheld,screen and (max-width:981px)\" \/>",
                         "50": "    <?php
if(isset($config)): \/\/#32?>",
                         "51": "",
                         "52": "       
<?php echo 
$this->functions['custom_colors'](['config' => $config, ],
$this); 
\/\/#33?>",
                         "53": "",
                         "54": "    <?php
endif; \/\/#34?>",
                         "55": "",
                         "56": "<\/head>"
                     }
                 },
                 {
                     "function": "include",
                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
                     "line": 342,
                     "args": [
                         "string(79) 
\"...\/data\/cache\/shared\/compiled\/26d9a93b0e45c5907eed6dcd038d2a4c6742a5d4.tpl.php\""
                     ],
                     "code": {
                         "338":
"\t\textract($this->variables, EXTR_REFS);",
                         "339": "",
                         "340":
"\t\tob_start();",
                         "341": "",
                         "342": "\t\tinclude 
$this->compiled_template_path;",
                         "343": "",
                         "344": "\t\treturn
ob_get_clean();",
                         "345": "\t}",
                         "346": ""
                     }
                 },
                 {
                     "function":
"KD2\\Smartyer->fetch",
                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
                     "line": 274,
                     "args": {
                         "$template": "NULL"
                     },
                     "code": {
                         "270": "\t * @return
Smartyer",
                         "271": "\t *\/",
                         "272": "\tpublic function
display($template = 
null)",
                         "273": "\t{",
                         "274": "\t\techo
$this->fetch($template);",
                         "275": "\t\treturn
$this;",
                         "276": "\t}",
                         "277": "",
                         "278": "\t\/**"
                     }
                 },
                 {
                     "function":
"KD2\\Smartyer->display",
                     "file": 
"...\/data\/cache\/shared\/compiled\/9f5b642fb10caf24466bf13eadfc172161fbd452.tpl.php.tmp",
                     "line": 5,
                     "code": {
                         "1": "<?php \/* Compiled
from 
\/home\/spipfactory\/www\/garradin-1.1.7\/templates\/acc\/transactions\/user.tpl 
- 2021-06-23 19:20:13 UTC *\/ ",
                         "2": "namespace
Garradin;",
                         "3": "if (!isset($this) ||
!is_object($this) || 
(!($this instanceof \\KD2\\Smartyer) && !is_subclass_of($this, 
'\\KD2\\Smartyer', true))) { die(\"Wrong call context.\"); } if 
(!isset($_i)) { $_i = []; } if (!isset($_blocks)) { $_blocks = []; } 
?><?php $_s = new \\KD2\\Smartyer('admin\/_head.tpl', $this); 
$_s->assign(array_merge(get_defined_vars(), ['title' => 
$this->modifiers['args'](\"\u00c9critures li\u00e9es \u00e0 %s\", 
$this->_magicVar($transaction_user, array (",
                         "4": "  0 =>
'identite',",
                         "5": "))),
'current' => 'acc\/accounts', ])); 
$_s->display(); unset($_s); \/\/#1?>",
                         "6": "",
                         "7": "",
                         "8": "<p>",
                         "9": "\t<?php echo 
$this->functions['linkbutton'](['href' => 
$this->modifiers['args'](\"!membres\/fiche.php?id=%d\", 
$this->_magicVar($transaction_user, array ("
                     }
                 },
                 {
                     "function": "include",
                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
                     "line": 586,
                     "args": [
                         "string(83) 
\"...\/data\/cache\/shared\/compiled\/9f5b642fb10caf24466bf13eadfc172161fbd452.tpl.php.tmp\""
                     ],
                     "code": {
                         "582":
"\t\t\textract($this->variables, 
EXTR_REFS);",
                         "583": "",
                         "584":
"\t\t\tob_start();",
                         "585": "",
                         "586": "\t\t\tinclude 
$this->compiled_template_path . '.tmp';",
                         "587": "",
                         "588": "\t\t\t$out =
ob_get_clean();",
                         "589": "\t\t}",
                         "590": "\t\tcatch
(\\Exception $e)"
                     }
                 },
                 {
                     "function":
"KD2\\Smartyer->compile",
                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
                     "line": 335,
                     "code": {
                         "331": "\t\t$time = 
@filemtime($this->compiled_template_path);",
                         "332": "",
                         "333": "\t\tif (!$time || 
(!is_null($this->template_path) && filemtime($this->template_path) > 
$time))",
                         "334": "\t\t{",
                         "335": "\t\t\treturn
$this->compile();",
                         "336": "\t\t}",
                         "337": "",
                         "338":
"\t\textract($this->variables, EXTR_REFS);",
                         "339": ""
                     }
                 },
                 {
                     "function":
"KD2\\Smartyer->fetch",
                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
                     "line": 290,
                     "code": {
                         "286": "\t{",
                         "287": "\t\t\/\/
Compatibility with legacy 
Smarty calls",
                         "288": "\t\tif
(!is_null($template))",
                         "289": "\t\t{",
                         "290": "\t\t\treturn (new
Smartyer($template, 
$this))->fetch();",
                         "291": "\t\t}",
                         "292": "",
                         "293": "\t\tif
(is_null($this->compiled_dir))",
                         "294": "\t\t{"
                     }
                 },
                 {
                     "function":
"KD2\\Smartyer->fetch",
                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
                     "line": 274,
                     "args": {
                         "$template": "string(25) 
\"acc\/transactions\/user.tpl\""
                     },
                     "code": {
                         "270": "\t * @return
Smartyer",
                         "271": "\t *\/",
                         "272": "\tpublic function
display($template = 
null)",
                         "273": "\t{",
                         "274": "\t\techo
$this->fetch($template);",
                         "275": "\t\treturn
$this;",
                         "276": "\t}",
                         "277": "",
                         "278": "\t\/**"
                     }
                 },
                 {
                     "function":
"KD2\\Smartyer->display",
                     "file":
"...\/www\/admin\/acc\/transactions\/user.php",
                     "line": 28,
                     "args": {
                         "$template": "string(25) 
\"acc\/transactions\/user.tpl\""
                     },
                     "code": {
                         "24":
"$tpl->assign('journal', 
Reports::getJournal($criterias));",
                         "25":
"$tpl->assign(compact('years', 'year'));",
                         "26":
"$tpl->assign('transaction_user', $u);",
                         "27": "",
                         "28": 
"$tpl->display('acc\/transactions\/user.tpl');",
                         "29": ""
                     }
                 }
             ]
         }
     ],
     "context": {
         "id": "abdith6a",
         "date": "2021-06-23T21:20:13+02:00",
         "os": "Linux",
         "language": "PHP 8.0.0",
         "environment": "development",
         "php_sapi": "cgi-fcgi",
         "remote_ip": "92.153.242.236",
         "http_method": "GET",
         "files_sent": "array(0) {\n}",
         "rootDirectory":
"\/home\/spipfactory\/www\/garradin-1.1.7",
         "garradin_data_root": 
"\/home\/spipfactory\/www\/garradin-1.1.7\/data",
         "garradin_version": "1.1.7",
         "url": 
"http:\/\/spipfactory.alwaysdata.net\/admin\/acc\/transactions\/user.php?id=2"
     }
}
</errorReport>

Re: const FILE_STORAGE_CONFIG ==> Résolu

essaillon

24/06/2021 08:33:57

Bjr,


Ça s'est réglé tout seul, le temps que le CHMOD 777 soit validé par 
alwaysdata.

Désolé pour le bruit

*Sandy*-Pascal Andriant
essaillon-sederon.net <https://essaillon-sederon.net>
spipfactory.fr <https://spipfactory.fr>

   avatar Sandy

Le 23/06/2021 à 21:30, essaillon a écrit :
>
> Bsr,
>
>
> Je cherche à créer un dossier de docs pour stocker mes relevés de compte.
>
> J'ai ajouté dans config.local.php
>
> const FILE_STORAGE_BACKEND = 'FileSystem';
> const FILE_STORAGE_CONFIG = '../files/transaction/';
>
> passé le dossier files à CHMOD 777 récursif
>
> mais j'ai une erreur.
>
> Merci
>
> [23-Jun-2021 21:20:13 Europe/Paris] =========== Error ref. abdith6a 
> ===========
>
> RuntimeException: Le répertoire de stockage des fichiers est protégé 
> contre l'écriture. in 
>
/home/spipfactory/www/garradin-1.1.7/include/lib/Garradin/Files/Storage/FileSystem.php:28
> Stack trace:
> #0 [internal function]: 
> Garradin\Files\Storage\FileSystem::configure('../files/transa...')
> #1 
> /home/spipfactory/www/garradin-1.1.7/include/lib/Garradin/Files/Files.php(120):

> call_user_func(Array, '../files/transa...')
> #2 
> /home/spipfactory/www/garradin-1.1.7/include/lib/Garradin/Files/Files.php(220):

> Garradin\Files\Files::callStorage('get',
'config/admin_bg...')
> #3 
> /home/spipfactory/www/garradin-1.1.7/include/lib/Garradin/Template.php(542): 
> Garradin\Files\Files::get('config/admin_bg...')
> #4 
>
/home/spipfactory/www/garradin-1.1.7/data/cache/shared/compiled/26d9a93b0e45c5907eed6dcd038d2a4c6742a5d4.tpl.php(52):

> Garradin\Template->customColors(Array, Object(KD2\Smartyer))
> #5 
> /home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(342): 
> include('/home/spipfacto...')
> #6 
> /home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(274): 
> KD2\Smartyer->fetch(NULL)
> #7 
>
/home/spipfactory/www/garradin-1.1.7/data/cache/shared/compiled/9f5b642fb10caf24466bf13eadfc172161fbd452.tpl.php.tmp(5):

> KD2\Smartyer->display()
> #8 
> /home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(586): 
> include('/home/spipfacto...')
> #9 
> /home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(335): 
> KD2\Smartyer->compile()
> #10 
> /home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(290): 
> KD2\Smartyer->fetch()
> #11 
> /home/spipfactory/www/garradin-1.1.7/include/lib/KD2/Smartyer.php(274): 
> KD2\Smartyer->fetch('acc/transaction...')
> #12 
> /home/spipfactory/www/garradin-1.1.7/www/admin/acc/transactions/user.php(28): 
> KD2\Smartyer->display('acc/transaction...')
> #13 {main}
>
> <errorReport>
> {
>     "errors": [
>         {
>             "message": "Le r\u00e9pertoire de stockage
des fichiers 
> est prot\u00e9g\u00e9 contre l'\u00e9criture.",
>             "errorCode": 0,
>             "type": "RuntimeException",
>             "backtrace": [
>                 {
>                     "file": 
> "...\/include\/lib\/Garradin\/Files\/Storage\/FileSystem.php",
>                     "line": 28,
>                     "code": {
>                         "24": "\t\t\tthrow
new \\RuntimeException('Le 
> stockage de fichier n\\'a pas \u00e9t\u00e9 configur\u00e9 
> (FILE_STORAGE_CONFIG est vide).');",
>                         "25":
"\t\t}",
>                         "26": "",
>                         "27": "\t\tif
(!is_writable($config) && 
> !Utils::safe_mkdir($config)) {",
>                         "28": "\t\t\tthrow
new \\RuntimeException('Le 
> r\u00e9pertoire de stockage des fichiers est prot\u00e9g\u00e9 contre 
> l\\'\u00e9criture.');",
>                         "29":
"\t\t}",
>                         "30": "",
>                         "31": "\t\t$target =
rtrim($config, 
> DIRECTORY_SEPARATOR);",
>                         "32":
"\t\tself::$_root = realpath($target);"
>                     }
>                 },
>                 {
>                     "function": 
> "Garradin\\Files\\Storage\\FileSystem::configure",
>                     "args": {
>                         "$config":
"string(21) 
> \"..\/files\/transaction\/\""
>                     }
>                 },
>                 {
>                     "function":
"call_user_func",
>                     "file": 
> "...\/include\/lib\/Garradin\/Files\/Files.php",
>                     "line": 120,
>                     "args": {
>                         "$callback":
"array(2) {\n  [0]=> string(33) 
> \"Garradin\\Files\\Storage\\FileSystem\"\n  [1]=> string(9) 
> \"configure\"\n}",
>                         "$args": "string(21)
\"..\/files\/transaction\/\""
>                     },
>                     "code": {
>                         "116": "\tstatic
public function 
> callStorage(string $function, ...$args)",
>                         "117":
"\t{",
>                         "118":
"\t\t$class_name = __NAMESPACE__ . 
> '\\\\Storage\\\\' . FILE_STORAGE_BACKEND;",
>                         "119": "",
>                         "120":
"\t\tcall_user_func([$class_name, 
> 'configure'], FILE_STORAGE_CONFIG);",
>                         "121": "",
>                         "122": "\t\treturn

> call_user_func_array([$class_name, $function], $args);",
>                         "123":
"\t}",
>                         "124": ""
>                     }
>                 },
>                 {
>                     "function":
"Garradin\\Files\\Files::callStorage",
>                     "file": 
> "...\/include\/lib\/Garradin\/Files\/Files.php",
>                     "line": 220,
>                     "args": {
>                         "$function":
"string(3) \"get\"",
>                         "$args": "string(19)
\"config\/admin_bg.png\""
>                     },
>                     "code": {
>                         "216": "\t\tcatch
(ValidationException $e) {",
>                         "217": "\t\t\treturn
null;",
>                         "218":
"\t\t}",
>                         "219": "",
>                         "220": "\t\t$file =
self::callStorage('get', 
> $path);",
>                         "221": "",
>                         "222": "\t\tif
(!$file || ($type && 
> $file->type != $type)) {",
>                         "223": "\t\t\treturn
null;",
>                         "224":
"\t\t}"
>                     }
>                 },
>                 {
>                     "function":
"Garradin\\Files\\Files::get",
>                     "file":
"...\/include\/lib\/Garradin\/Template.php",
>                     "line": 542,
>                     "args": {
>                         "$path": "string(19)
\"config\/admin_bg.png\""
>                     },
>                     "code": {
>                         "538":
"\t\t$couleur1 = 
> $config->get('couleur1') ?: ADMIN_COLOR1;",
>                         "539":
"\t\t$couleur2 = 
> $config->get('couleur2') ?: ADMIN_COLOR2;",
>                         "540":
"\t\t$admin_background = 
> ADMIN_BACKGROUND_IMAGE;",
>                         "541": "",
>                         "542": "\t\tif (($f
= 
> $config->get('admin_background')) && ($file =
Files::get($f))) {",
>                         "543":
"\t\t\t$admin_background = $file->url() 
> . '?' . $file->modified->getTimestamp();",
>                         "544":
"\t\t}",
>                         "545": "",
>                         "546": "\t\t\/\/
Transformation Hexa vers 
> d\u00e9cimal"
>                     }
>                 },
>                 {
>                     "function":
"Garradin\\Template->customColors",
>                     "file": 
>
"...\/data\/cache\/shared\/compiled\/26d9a93b0e45c5907eed6dcd038d2a4c6742a5d4.tpl.php",
>                     "line": 52,
>                     "args": [
>                         "array(1) {\n 
[\"config\"]=> 
> object(Garradin\\Config) (25) {\n  }\n}",
>                         "object(KD2\\Smartyer) (18)
{\n 
> [\"error_on_invalid_block\"]=> bool(true)\n}"
>                     ],
>                     "code": {
>                         "48": "   
<link rel=\"stylesheet\" 
> type=\"text\/css\" href=\"<?php echo self::escape($admin_url,

> $this->escape_type); \/\/#30?>static\/print.css?<?php echo 
> self::escape($version_hash, $this->escape_type); \/\/#30?>\" 
> media=\"print\" \/>",
>                         "49": "   
<link rel=\"stylesheet\" 
> type=\"text\/css\" href=\"<?php echo self::escape($admin_url,

> $this->escape_type); \/\/#31?>static\/handheld.css?<?php echo 
> self::escape($version_hash, $this->escape_type); \/\/#31?>\" 
> media=\"handheld,screen and (max-width:981px)\" \/>",
>                         "50": "   
<?php if(isset($config)): \/\/#32?>",
>                         "51": "",
>                         "52":
"        <?php echo 
> $this->functions['custom_colors'](['config' => $config,
], $this); 
> \/\/#33?>",
>                         "53": "",
>                         "54": "   
<?php endif; \/\/#34?>",
>                         "55": "",
>                         "56":
"<\/head>"
>                     }
>                 },
>                 {
>                     "function":
"include",
>                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
>                     "line": 342,
>                     "args": [
>                         "string(79) 
>
\"...\/data\/cache\/shared\/compiled\/26d9a93b0e45c5907eed6dcd038d2a4c6742a5d4.tpl.php\""
>                     ],
>                     "code": {
>                         "338":
"\t\textract($this->variables, 
> EXTR_REFS);",
>                         "339": "",
>                         "340":
"\t\tob_start();",
>                         "341": "",
>                         "342": "\t\tinclude

> $this->compiled_template_path;",
>                         "343": "",
>                         "344": "\t\treturn
ob_get_clean();",
>                         "345":
"\t}",
>                         "346": ""
>                     }
>                 },
>                 {
>                     "function":
"KD2\\Smartyer->fetch",
>                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
>                     "line": 274,
>                     "args": {
>                         "$template":
"NULL"
>                     },
>                     "code": {
>                         "270": "\t * @return
Smartyer",
>                         "271": "\t
*\/",
>                         "272": "\tpublic
function display($template = 
> null)",
>                         "273":
"\t{",
>                         "274": "\t\techo
$this->fetch($template);",
>                         "275": "\t\treturn
$this;",
>                         "276":
"\t}",
>                         "277": "",
>                         "278":
"\t\/**"
>                     }
>                 },
>                 {
>                     "function":
"KD2\\Smartyer->display",
>                     "file": 
>
"...\/data\/cache\/shared\/compiled\/9f5b642fb10caf24466bf13eadfc172161fbd452.tpl.php.tmp",
>                     "line": 5,
>                     "code": {
>                         "1": "<?php \/*
Compiled from 
> \/home\/spipfactory\/www\/garradin-1.1.7\/templates\/acc\/transactions\/user.tpl

> - 2021-06-23 19:20:13 UTC *\/ ",
>                         "2": "namespace
Garradin;",
>                         "3": "if
(!isset($this) || !is_object($this) 
> || (!($this instanceof \\KD2\\Smartyer) && !is_subclass_of($this, 
> '\\KD2\\Smartyer', true))) { die(\"Wrong call context.\"); }
if 
> (!isset($_i)) { $_i = []; } if (!isset($_blocks)) { $_blocks = []; } 
> ?><?php $_s = new \\KD2\\Smartyer('admin\/_head.tpl', $this); 
> $_s->assign(array_merge(get_defined_vars(), ['title' => 
> $this->modifiers['args'](\"\u00c9critures li\u00e9es \u00e0
%s\", 
> $this->_magicVar($transaction_user, array (",
>                         "4": "  0 =>
'identite',",
>                         "5": "))),
'current' => 'acc\/accounts', ])); 
> $_s->display(); unset($_s); \/\/#1?>",
>                         "6": "",
>                         "7": "",
>                         "8":
"<p>",
>                         "9": "\t<?php
echo 
> $this->functions['linkbutton'](['href' => 
> $this->modifiers['args'](\"!membres\/fiche.php?id=%d\",

> $this->_magicVar($transaction_user, array ("
>                     }
>                 },
>                 {
>                     "function":
"include",
>                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
>                     "line": 586,
>                     "args": [
>                         "string(83) 
>
\"...\/data\/cache\/shared\/compiled\/9f5b642fb10caf24466bf13eadfc172161fbd452.tpl.php.tmp\""
>                     ],
>                     "code": {
>                         "582":
"\t\t\textract($this->variables, 
> EXTR_REFS);",
>                         "583": "",
>                         "584":
"\t\t\tob_start();",
>                         "585": "",
>                         "586":
"\t\t\tinclude 
> $this->compiled_template_path . '.tmp';",
>                         "587": "",
>                         "588": "\t\t\t$out =
ob_get_clean();",
>                         "589":
"\t\t}",
>                         "590": "\t\tcatch
(\\Exception $e)"
>                     }
>                 },
>                 {
>                     "function":
"KD2\\Smartyer->compile",
>                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
>                     "line": 335,
>                     "code": {
>                         "331": "\t\t$time =

> @filemtime($this->compiled_template_path);",
>                         "332": "",
>                         "333": "\t\tif
(!$time || 
> (!is_null($this->template_path) && filemtime($this->template_path)
> 
> $time))",
>                         "334":
"\t\t{",
>                         "335": "\t\t\treturn
$this->compile();",
>                         "336":
"\t\t}",
>                         "337": "",
>                         "338":
"\t\textract($this->variables, 
> EXTR_REFS);",
>                         "339": ""
>                     }
>                 },
>                 {
>                     "function":
"KD2\\Smartyer->fetch",
>                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
>                     "line": 290,
>                     "code": {
>                         "286":
"\t{",
>                         "287": "\t\t\/\/
Compatibility with legacy 
> Smarty calls",
>                         "288": "\t\tif
(!is_null($template))",
>                         "289":
"\t\t{",
>                         "290": "\t\t\treturn
(new Smartyer($template, 
> $this))->fetch();",
>                         "291":
"\t\t}",
>                         "292": "",
>                         "293": "\t\tif
(is_null($this->compiled_dir))",
>                         "294":
"\t\t{"
>                     }
>                 },
>                 {
>                     "function":
"KD2\\Smartyer->fetch",
>                     "file":
"...\/include\/lib\/KD2\/Smartyer.php",
>                     "line": 274,
>                     "args": {
>                         "$template":
"string(25) 
> \"acc\/transactions\/user.tpl\""
>                     },
>                     "code": {
>                         "270": "\t * @return
Smartyer",
>                         "271": "\t
*\/",
>                         "272": "\tpublic
function display($template = 
> null)",
>                         "273":
"\t{",
>                         "274": "\t\techo
$this->fetch($template);",
>                         "275": "\t\treturn
$this;",
>                         "276":
"\t}",
>                         "277": "",
>                         "278":
"\t\/**"
>                     }
>                 },
>                 {
>                     "function":
"KD2\\Smartyer->display",
>                     "file": 
> "...\/www\/admin\/acc\/transactions\/user.php",
>                     "line": 28,
>                     "args": {
>                         "$template":
"string(25) 
> \"acc\/transactions\/user.tpl\""
>                     },
>                     "code": {
>                         "24":
"$tpl->assign('journal', 
> Reports::getJournal($criterias));",
>                         "25":
"$tpl->assign(compact('years', 'year'));",
>                         "26":
"$tpl->assign('transaction_user', $u);",
>                         "27": "",
>                         "28": 
> "$tpl->display('acc\/transactions\/user.tpl');",
>                         "29": ""
>                     }
>                 }
>             ]
>         }
>     ],
>     "context": {
>         "id": "abdith6a",
>         "date": "2021-06-23T21:20:13+02:00",
>         "os": "Linux",
>         "language": "PHP 8.0.0",
>         "environment": "development",
>         "php_sapi": "cgi-fcgi",
>         "remote_ip": "92.153.242.236",
>         "http_method": "GET",
>         "files_sent": "array(0) {\n}",
>         "rootDirectory":
"\/home\/spipfactory\/www\/garradin-1.1.7",
>         "garradin_data_root": 
> "\/home\/spipfactory\/www\/garradin-1.1.7\/data",
>         "garradin_version": "1.1.7",
>         "url": 
>
"http:\/\/spipfactory.alwaysdata.net\/admin\/acc\/transactions\/user.php?id=2"
>     }
> }
> </errorReport>
>
>
>
> -- 
>
> *Sandy*-Pascal Andriant
> essaillon-sederon.net <https://essaillon-sederon.net>
> spipfactory.fr <https://spipfactory.fr>
>
>    avatar Sandy
>