def init(self, request, paypal_request, paypal_response): """Initialize a PayPalNVP instance from a HttpRequest.""" if request is not None: from paypal.pro.helpers import strip_ip_port self.ipaddress = strip_ip_port(request.META.get('REMOTE_ADDR', '')) if hasattr(request, "user") and request.user.is_authenticated(): self.user = request.user else: self.ipaddress = '' # No storing credit card info. query_data = dict((k, v) for k, v in paypal_request.items() if k not in self.RESTRICTED_FIELDS) self.query = urlencode(query_data) self.response = urlencode(paypal_response) # Was there a flag on the play? ack = paypal_response.get('ack', False) if ack != "Success": if ack == "SuccessWithWarning": warn_untested() self.flag_info = paypal_response.get('l_longmessage0', '') else: self.set_flag(paypal_response.get('l_longmessage0', ''), paypal_response.get('l_errorcode', ''))
def test_strip_ip_port(self): IPv4 = '192.168.0.1' IPv6 = '2001:0db8:85a3:0000:0000:8a2e:0370:7334' PORT = '8000' # IPv4 with port test = '%s:%s' % (IPv4, PORT) self.assertEqual(IPv4, strip_ip_port(test)) # IPv4 without port test = IPv4 self.assertEqual(IPv4, strip_ip_port(test)) # IPv6 with port test = '[%s]:%s' % (IPv6, PORT) self.assertEqual(IPv6, strip_ip_port(test)) # IPv6 without port test = IPv6 self.assertEqual(IPv6, strip_ip_port(test)) # No IP self.assertEqual('', strip_ip_port(''))
def test_strip_ip_port(self): IPv4 = "192.168.0.1" IPv6 = "2001:0db8:85a3:0000:0000:8a2e:0370:7334" PORT = "8000" # IPv4 with port test = f"{IPv4}:{PORT}" self.assertEqual(IPv4, strip_ip_port(test)) # IPv4 without port test = IPv4 self.assertEqual(IPv4, strip_ip_port(test)) # IPv6 with port test = f"[{IPv6}]:{PORT}" self.assertEqual(IPv6, strip_ip_port(test)) # IPv6 without port test = IPv6 self.assertEqual(IPv6, strip_ip_port(test)) # No IP self.assertEqual("", strip_ip_port(""))
def init(self, request, paypal_request, paypal_response): """Initialize a PayPalNVP instance from a HttpRequest.""" if request is not None: from paypal.pro.helpers import strip_ip_port self.ipaddress = strip_ip_port(request.META.get('REMOTE_ADDR', '')) if (hasattr(request, "user") and request.user.is_authenticated): self.user = request.user else: self.ipaddress = '' # No storing credit card info. query_data = dict((k, v) for k, v in paypal_request.items() if k not in self.RESTRICTED_FIELDS) self.query = urlencode(query_data) self.response = urlencode(paypal_response) # Was there a flag on the play? ack = paypal_response.get('ack', False) if ack != "Success": if ack == "SuccessWithWarning": warn_untested() self.flag_info = paypal_response.get('l_longmessage0', '') else: self.set_flag(paypal_response.get('l_longmessage0', ''), paypal_response.get('l_errorcode', ''))