Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FIX : Do not return ERROR when LogoThumb is empty #1280

Draft
wants to merge 35 commits into
base: 2024_rc
Choose a base branch
from

Conversation

warnerbryce
Copy link

@warnerbryce warnerbryce commented Dec 20, 2024

Actuellement $logotouse n'est pas contrôlé sur le fait d'être vide.

S'il est vide, une erreur est inscrite : ErrorFileNotFound
Le problème, c'est que lorsque l'on utilise des balises [!-- IF {mycompagny_logo} --] l'erreur est comprise comme un true.

Cette PR corrige le fichier commondocgenerator.class.php afin que $logotouse produise NULL si le fichier n'existe pas.
De ce fait, les balises peuvent fonctionner correctement.

EDIT :
C'est ajouté aussi l'ajout de la balise _amount_in_currency afin d'avoir un appel propre quelque soit la langue de "Montant exprimé en %s" où %s est substituté par la device en cours ($conf->currency).

thomas-Ngr and others added 30 commits November 8, 2024 09:21
…er_invoice_multicurrency

fix multicurrency on supplier invoices
…tion-without-stock-movement

FIX can validate shipment without stock movement
…-invoice-lines-computed-remain-to-pay

FiX computed field remain to pay in export of invoice lines
…4_fix_supplier_invoice_multicurrency

Revert "fix multicurrency on supplier invoices"
…t-clone-task-start-date

FIX calculate start date of cloned task from cloned project
…end-to-bcc

FIX send mail to BCC when email formated as Fullname <email>
…kports_for_ticket_list

2024 revert backports for ticket list
…4_revert_backports_for_ticket_list

Revert "2024 revert backports for ticket list"
@warnerbryce warnerbryce marked this pull request as draft January 6, 2025 08:49
@@ -142,7 +142,11 @@ public function get_substitutionarray_user($user, $outputlangs)
// phpcs:enable
global $conf, $extrafields;

$logotouse = $conf->user->dir_output.'/'.get_exdir($user->id, 2, 0, 1, $user, 'user').'/'.$user->photo;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cette valeur ne peut pas être vide, ajouter ce test ne changera rien

@@ -245,7 +249,11 @@ public function get_substitutionarray_mysoc($mysoc, $outputlangs)
$mysoc->state = getState($mysoc->state_code, 0);
}

$logotouse = $conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_small;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cette valeur ne peut pas être vide, ajouter ce test ne changera rien

@thomas-Ngr
Copy link

Actuellement $logotouse n'est pas contrôlé sur le fait d'être vide.

C'est-à-dire ? "vide" dans le sens "égal à null, 0 ou chaîne vide" ou "vide" dans le sens "pointe vers un fichier inexistant" ? Quand je lis le code, la valeur peut être incohérente, mais pas vide.

S'il est vide, une erreur est inscrite : ErrorFileNotFound

Non. ErrorFileNotFound indique que le fichier n'a pas été trouvé, pas que le chemin est vide. Les modifications que tu propose ne vont rien changer au comportement car la valeur contrôlée n'est jamais vide. Tu peux tester le résultat de print_r(null.'/'.null.'/'.null).

@thomas-Ngr
Copy link

thomas-Ngr commented Jan 7, 2025

Après réflexion, je pense qu'il ne sert à rien de corriger $logotouse car le cas est trivial à corriger en modifiant le ODT. Le code dit bien 'si le fichier du logo n'existe pas, afficher une erreur'. 'mycompany_logo est identique pour tous les ODT sur une même entité.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants