From 3f1cf3e2e8c7796bf0c192ea0f67226910f3ee64 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andrej=20Rama=C5=A1euski?= <andrej@x2.cz>
Date: Thu, 20 Apr 2023 22:39:09 +0200
Subject: [PATCH] Lepsi info o platbe

---
 .gitlab-ci.yml                  |  2 +-
 lib/CF2022/Controller/Orders.pm | 20 ++++++++++++++++++++
 2 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e2a83cc..b61dd72 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,7 +2,7 @@ image: docker:20.10.9
 
 variables:
   DOCKER_TLS_CERTDIR: "/certs"
-  IMAGE_VER: 0.17.0
+  IMAGE_VER: 0.18.0
 
 services:
   - docker:20.10.9-dind
diff --git a/lib/CF2022/Controller/Orders.pm b/lib/CF2022/Controller/Orders.pm
index f6a23fb..e7296af 100644
--- a/lib/CF2022/Controller/Orders.pm
+++ b/lib/CF2022/Controller/Orders.pm
@@ -251,8 +251,28 @@ sub payment ($c ) {
     }
     return $c->error(404, 'NOT FOUND') if ! $order;
 
+    my $url = sprintf ('%s/organizers/%s/events/%s/orders/%s/',
+        $c->config->{pretix_api},
+        $c->config->{pretix_organizer},
+        $c->config->{pretix_event},
+        $order->order_id,
+    );
+
+    my $ua = Mojo::UserAgent->new;
+    my $rc = $ua->get( $url,
+        { Authorization => 'Token ' . $c->config->{pretix_token} },
+    )->result;
+
+    my $order_pretix = $rc->json;
+
+    $order->update({ response => $order_pretix });
+
     my $pr = $c->_payment_request($order);
 
+    if ( $order_pretix->{status} eq 'p' ) {
+        $pr->{payed} = $order_pretix->{payments}[0]{payment_date};
+    }
+
     $c->render(
         status => 200,
         json   => $pr,
-- 
GitLab