From b5e802a80a75758d1ebfb11740072132d7cc9fea Mon Sep 17 00:00:00 2001 From: Serghei Mihai Date: Wed, 9 Dec 2015 16:19:44 +0100 Subject: [PATCH 1/3] use POST method to notify invoice payment (#9280) --- lingo/models.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/lingo/models.py b/lingo/models.py index 47e4fb7..23e1e32 100644 --- a/lingo/models.py +++ b/lingo/models.py @@ -109,8 +109,8 @@ class Regie(models.Model): url = self.webservice_url + '/invoices/' if past: url += 'history' - items = self.get_url(context['request'], url, - NameID=mellon['name_id_content']).json() + items = requests.get(self.get_url(context['request'], url, + NameID=mellon['name_id_content'])).json() if items.get('data'): return [build_remote_item(item, self) for item in items.get('data')] return [] @@ -124,7 +124,8 @@ class Regie(models.Model): if hasattr(request, 'session') and request.session.get('mellon_session'): mellon = request.session.get('mellon_session') url = self.webservice_url + '/invoice/%s/pdf' % item_id - return self.get_url(request, url, NameID=mellon['name_id_content']) + return requests.get(self.get_url(request, url, + NameID=mellon['name_id_content'])) raise PermissionDenied def get_item(self, request, item): @@ -134,14 +135,14 @@ class Regie(models.Model): if hasattr(request, 'session') and request.session.get('mellon_session'): mellon = request.session.get('mellon_session') url = self.webservice_url + '/invoice/%s/' % item - item = self.get_url(request, url, - NameID=mellon['name_id_content']).json() + item = requests.get(self.get_url(request, url, + NameID=mellon['name_id_content'])).json() return build_remote_item(item.get('data'), self) return {} - def pay_item(self, request, item): + def pay_item(self, request, item, transaction_id, transaction_date): url = self.webservice_url + '/invoice/%s/pay/' % item - return self.get_url(request, url) + return requests.post(self.get_url(request, url)).json() def as_api_dict(self): return {'slug': self.slug, @@ -152,8 +153,7 @@ class Regie(models.Model): orig = request.get_host() url += '?orig=' + orig +'&' + urllib.urlencode(params) signature_key = settings.LINGO_SIGNATURE_KEY - url = sign_url(url, key=signature_key) - return requests.get(url) + return sign_url(url, key=signature_key) class BasketItem(models.Model): -- 2.6.2