Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
K
kohinos-tav
  • Overview
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 1
    • Merge Requests 1
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • agplv3
  • kohinos-tav
  • Merge Requests
  • !103

Merged
Opened May 23, 2024 by Yvon Kerdoncuff@Yvon 
  • Report abuse
Report abuse

6366 authorized vs authorised and another detail

×

Check out, review, and merge locally

Step 1. Fetch and check out the branch for this merge request

git fetch origin
git checkout -b 6366-authorized-vs-authorised-and-another-detail origin/6366-authorized-vs-authorised-and-another-detail

Step 2. Review the changes locally

Step 3. Merge the branch and fix any conflicts that come up

git checkout develop
git merge --no-ff 6366-authorized-vs-authorised-and-another-detail

Step 4. Push the result of the merge to GitLab

git push origin develop

Note that pushing to GitLab requires write access to this repository.

Tip: You can also checkout merge requests locally by following these guidelines.

  • Discussion 15
  • Commits 3
  • Changes 3
{{ resolvedDiscussionCount }}/{{ discussionCount }} {{ resolvedCountText }} resolved
  • Damien Moulard
    @DamienM started a discussion on an old version of the diff May 29, 2024
    Last updated by Damien Moulard May 29, 2024
    src/EventListener/PaymentStatusExtension.php
    84 84 $current_payment_status = $payment->getStatus();
    85 85 $new_status = $status->getValue();
    86 86
    87 /* WARNING : THIS PIECE OF CODE IS USING INAPPROPRIATE GetHumanStatus::STATUS_AUTHORIZED :
    88 *
    89 * This is (another) issue here with Payum.
    90 * current_payment_status will never match STATUS_AUTHORIZED
    91 * on the opposite, we have no chance to detect 'authorised' value here
    92 * because Payzen vads_trans_status is written 'authorised' and not 'authorized'
    93 * However this code seems to work and I don't want to break it as this is Payum dependent
    • Damien Moulard @DamienM commented May 29, 2024
      Master

      Pas certain que ça fonctionnait car il y a beaucoup de payment_token existants en base de prod. Les lignes suivantes ont cet effet : si le status correspond, on supprime le token car le paiement a été accepté et on n'aura plus besoin de l'url de notification.

      Etant donné que la notification d'un paiement récurrent se fait via une url particulière, et pas via l'url de notif avec le token, je pense qu'il n'y a pas de soucis à appliquer la même correction que ce que tu as fait plus haut.

      Pas certain que ça fonctionnait car il y a beaucoup de payment_token existants en base de prod. Les lignes suivantes ont cet effet : si le status correspond, on supprime le token car le paiement a été accepté et on n'aura plus besoin de l'url de notification. Etant donné que la notification d'un paiement récurrent se fait via une url particulière, et pas via l'url de notif avec le token, je pense qu'il n'y a pas de soucis à appliquer la même correction que ce que tu as fait plus haut.
    • Damien Moulard @DamienM

      changed this line in version 2 of the diff

      May 29, 2024

      changed this line in version 2 of the diff

      changed this line in [version 2 of the diff](https://gl.cooperatic.fr/cooperatic/kohinos-tav/merge_requests/103/diffs?diff_id=3104&start_sha=d12c269d1cfde42e1bffd06029c67c60f59fb652#fe064ed782f6d5d4753ac35cc2bf12d161d42fe3_93_93)
      Toggle commit list
    Please register or sign in to reply
  • Damien Moulard
    @DamienM started a discussion on the diff May 29, 2024
    Last updated by Damien Moulard Jun 04, 2024
    src/EventListener/PaymentStatusExtension.php
    84 84 $current_payment_status = $payment->getStatus();
    85 85 $new_status = $status->getValue();
    86 86
    87 /* WARNING : THIS PIECE OF CODE IS USING INAPPROPRIATE GetHumanStatus::STATUS_AUTHORIZED :
    88 *
    89 * This is (another) issue here with Payum.
    90 * current_payment_status will never match STATUS_AUTHORIZED
    91 * on the opposite, we have no chance to detect 'authorised' value here
    • Damien Moulard @DamienM commented May 29, 2024
      Master

      je n'ai pas compris cette phrase :

      on the opposite, we have no chance to detect 'authorised' value here because Payzen vads_trans_status is written 'authorised' and not 'authorized'

      peux-tu m'expliquer stp ?

      je n'ai pas compris cette phrase : > on the opposite, we have no chance to detect 'authorised' value here because Payzen vads_trans_status is written 'authorised' and not 'authorized' peux-tu m'expliquer stp ?
    • Yvon Kerdoncuff @Yvon commented Jun 03, 2024
      Master

      Je commence par fournir la traduction chatGPT pour éviter toute ambiguité due à l'anglais :

      "Au contraire, nous n'avons aucune chance de détecter la valeur 'authorised' ici parce que le statut vads_trans de Payzen est écrit 'authorised' et non 'authorized'."

      Cette erreur orthographique est la clé du problème. Payzen transmet le string "authorised" et nous on utilisait un if qui cherche à savoir si le string a la valeur "authorized", ce qui ne risque pas d'arriver.

      Je commence par fournir la traduction chatGPT pour éviter toute ambiguité due à l'anglais : "Au contraire, nous n'avons aucune chance de détecter la valeur 'authorised' ici parce que le statut vads_trans de Payzen est écrit 'authorised' et non 'authorized'." Cette erreur orthographique est la clé du problème. Payzen transmet le string "authorised" et nous on utilisait un if qui cherche à savoir si le string a la valeur "authorized", ce qui ne risque pas d'arriver.
    • Yvon Kerdoncuff @Yvon commented Jun 03, 2024
      Master

      Je me rends compte que l'expression "au contraire" n'est pas très appropriée ici. Plus clair aurait été : "d'un côté on va jamais matcher STATUS_AUTHORIZED et de l'autre 'authorised' ne sera jamais detecté".

      Je me rends compte que l'expression "au contraire" n'est pas très appropriée ici. Plus clair aurait été : "**d'un côté** on va jamais matcher STATUS_AUTHORIZED et **de l'autre** 'authorised' ne sera jamais detecté".
    • Damien Moulard @DamienM commented Jun 04, 2024
      Master

      ok je comprend mieux, c'est la tournure de la phrase que je ne comprenais pas

      ok je comprend mieux, c'est la tournure de la phrase que je ne comprenais pas
    Please register or sign in to reply
  • Damien Moulard
    @DamienM started a discussion on an old version of the diff May 29, 2024
    Last updated by Damien Moulard May 29, 2024
    src/Controller/PaymentController.php
    240 243 && array_key_exists('vads_identifier', $payment->getDetails())
    241 244 && $payment->getDetails()['vads_identifier'] == $vads_identifier
    242 245 ) {
    243 if (
    244 GetHumanStatus::STATUS_CAPTURED == $new_status
    245 || GetHumanStatus::STATUS_AUTHORIZED == $new_status
    246 ) {
    246 // Do not use GetHumanStatus Payum constants as they do not match Payzen vads_trans_status
    247 // e.g. GetHumanStatus::STATUS_AUTHORIZED does not match 'authorised' value sent by Payzen
    248 if ('captured' == $new_status || 'authorised' == $new_status) {
    • Damien Moulard @DamienM commented May 29, 2024
      Master

      j'ai mixé l'existant et ton fix par sécurité

      j'ai mixé l'existant et ton fix par sécurité
    • Damien Moulard @DamienM

      changed this line in version 2 of the diff

      May 29, 2024

      changed this line in version 2 of the diff

      changed this line in [version 2 of the diff](https://gl.cooperatic.fr/cooperatic/kohinos-tav/merge_requests/103/diffs?diff_id=3104&start_sha=d12c269d1cfde42e1bffd06029c67c60f59fb652#bcacb1b7a2c25e66d936437045623681c1bcfa7c_248_248)
      Toggle commit list
    Please register or sign in to reply
  • Damien Moulard @DamienM

    added 1 commit

    • 8414ff8a - slightly chang fix & add fix elsewhere

    Compare with previous version

    May 29, 2024

    added 1 commit

    • 8414ff8a - slightly chang fix & add fix elsewhere

    Compare with previous version

    added 1 commit <ul><li>8414ff8a - slightly chang fix &amp; add fix elsewhere</li></ul> [Compare with previous version](https://gl.cooperatic.fr/cooperatic/kohinos-tav/merge_requests/103/diffs?diff_id=3104&start_sha=d12c269d1cfde42e1bffd06029c67c60f59fb652)
    Toggle commit list
  • Yvon Kerdoncuff
    @Yvon started a discussion on commit 8414ff8a Jun 03, 2024
    Last updated by Damien Moulard Jun 04, 2024
    src/Controller/PaymentController.php
    243 243 && array_key_exists('vads_identifier', $payment->getDetails())
    244 244 && $payment->getDetails()['vads_identifier'] == $vads_identifier
    245 245 ) {
    246 // Do not use GetHumanStatus Payum constants as they do not match Payzen vads_trans_status
    246 // Payum GetHumanStatus constants don't match Payzen vads_trans_status here
    247 247 // e.g. GetHumanStatus::STATUS_AUTHORIZED does not match 'authorised' value sent by Payzen
    248 if ('captured' == $new_status || 'authorised' == $new_status) {
    248 if (in_array($new_status, ['captured', 'authorised', GetHumanStatus::STATUS_CAPTURED, GetHumanStatus::STATUS_AUTHORIZED])) {
    • Yvon Kerdoncuff @Yvon commented Jun 03, 2024
      Master

      Je ne suis pas trop d'accord avec cette modification dans cette fonction car la fonction notifyRecurringPaymentAction a la particularité de fonctionner sans aucune dépendance à Payum ce qui est un avantage, de surcroit on voit les problèmes que l'on rencontre avec ce module. Elle montre que l'on peut tout à fait gérer les notifications Payzen simplement sans avoir à utiliser les mécanismes de Payum.

      En plus d'utiliser une dépendance supplémentaire, ce code fait un truc bizarre : le tableau sur lequel in_array est appelé contient deux fois le même élément.

      J'entends cependant l'intérêt de vérifier les deux orthographes, mais dans ce cas j'écrirais plus simplement :

      in_array($new_status, ['captured', 'authorised', 'authorized'])

      avec un commentaire précisant que l'orthographe utilisée par Payzen est 'authorised' mais qu'on sait jamais si Payzen change un jour son fusil d'épaule...

      Edited Jun 03, 2024 by Yvon Kerdoncuff
      Je ne suis pas trop d'accord avec cette modification dans cette fonction car la fonction notifyRecurringPaymentAction a la particularité de fonctionner sans aucune dépendance à Payum ce qui est un avantage, de surcroit on voit les problèmes que l'on rencontre avec ce module. Elle montre que l'on peut tout à fait gérer les notifications Payzen simplement sans avoir à utiliser les mécanismes de Payum. En plus d'utiliser une dépendance supplémentaire, ce code fait un truc bizarre : le tableau sur lequel in_array est appelé contient deux fois le même élément. J'entends cependant l'intérêt de vérifier les deux orthographes, mais dans ce cas j'écrirais plus simplement : `in_array($new_status, ['captured', 'authorised', 'authorized'])` avec un commentaire précisant que l'orthographe utilisée par Payzen est 'authorised' mais qu'on sait jamais si Payzen change un jour son fusil d'épaule...
    • Yvon Kerdoncuff @Yvon commented Jun 03, 2024
      Master

      Finalement, je comprends l'intérêt potentiellement supérieur d'utiliser le même bout de code aux trois endroits dans le code.

      Finalement, je comprends l'intérêt potentiellement supérieur d'utiliser le même bout de code aux trois endroits dans le code.
    • Damien Moulard @DamienM commented Jun 04, 2024
      Master

      ok pour moi de faire la modification que tu proposes

      ok pour moi de faire la modification que tu proposes
    Please register or sign in to reply
  • Yvon Kerdoncuff
    @Yvon started a discussion on commit 8414ff8a Jun 03, 2024
    Last updated by Damien Moulard Jun 04, 2024
    src/Controller/PaymentController.php
    289 289 * current_payment_status will never match STATUS_AUTHORIZED
    290 290 * on the opposite, we have no chance to detect 'authorised' value here
    291 291 * because Payzen vads_trans_status is written 'authorised' and not 'authorized'
    292 * However this code seems to work and I don't want to break it as this is Payum dependent
    293 * and uses mechanisms I don't understand.
    294 292 *
    295 293 * @see comment above notifyRecurringPaymentAction for more Payum weird stuff
    296 294 */
    297 if (GetHumanStatus::STATUS_CAPTURED == $payment->getStatus() || GetHumanStatus::STATUS_AUTHORIZED == $payment->getStatus()) {
    • Yvon Kerdoncuff @Yvon commented Jun 03, 2024
      Master

      Ok pour moi car ce code utilise de toute façon Payum par ailleurs.

      Ok pour moi car ce code utilise de toute façon Payum par ailleurs.
    • Yvon Kerdoncuff @Yvon commented Jun 03, 2024
      Master

      Même si ici 'captured' est inutile car il n'y a pas de problème d'orthographe avec 'captured'.

      Même si ici 'captured' est inutile car il n'y a pas de problème d'orthographe avec 'captured'.
    • Damien Moulard @DamienM commented Jun 04, 2024
      Master

      vu

      vu
    Please register or sign in to reply
  • Yvon Kerdoncuff
    @Yvon started a discussion on commit 8414ff8a Jun 03, 2024
    Last updated by Damien Moulard Jun 04, 2024
    src/EventListener/PaymentStatusExtension.php
    90 90 * current_payment_status will never match STATUS_AUTHORIZED
    91 91 * on the opposite, we have no chance to detect 'authorised' value here
    92 92 * because Payzen vads_trans_status is written 'authorised' and not 'authorized'
    93 * However this code seems to work and I don't want to break it as this is Payum dependent
    94 * and uses mechanisms I don't understand.
    95 93 *
    96 94 * @see comment above notifyRecurringPaymentAction for more Payum weird stuff
    97 95 */
    98 if (
    • Yvon Kerdoncuff @Yvon commented Jun 03, 2024
      Master

      Ok pour moi car ce code utilise de toute façon Payum par ailleurs.

      Ok pour moi car ce code utilise de toute façon Payum par ailleurs.
    • Yvon Kerdoncuff @Yvon commented Jun 03, 2024
      Master

      Même si ici 'captured' est inutile car il n'y a pas de problème d'orthographe avec 'captured'.

      Même si ici 'captured' est inutile car il n'y a pas de problème d'orthographe avec 'captured'.
    • Damien Moulard @DamienM commented Jun 04, 2024
      Master

      vu

      vu
    Please register or sign in to reply
  • Yvon Kerdoncuff @Yvon

    merged

    Jun 03, 2024

    merged

    merged
    Toggle commit list
  • Write
  • Preview
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment
Assignee
No assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
Reference: agplv3/kohinos-tav!103