def _get_redirect_url(self, **kwargs): basket = self.request.basket if basket.is_empty: raise EmptyBasketException() params = {'basket': self.request.basket} user = self.request.user if self.as_payment_method: shipping_addr = self.get_shipping_address() if not shipping_addr: raise MissingShippingAddressException() shipping_method = self.get_shipping_method() if not shipping_method: raise MissingShippingMethodException() params['shipping_address'] = shipping_addr params['shipping_method'] = shipping_method params['shipping_methods'] = [] else: shipping_methods = Repository().get_shipping_methods(user, basket) params['shipping_methods'] = shipping_methods if settings.DEBUG: # Determine the localserver's hostname to use when # in testing mode params['host'] = self.request.META['HTTP_HOST'] params['scheme'] = 'http' if user.is_authenticated(): params['user'] = user return get_paypal_url(**params)
def _get_redirect_url(self, basket, **kwargs): if basket.is_empty: raise EmptyBasketException() params = { 'basket': basket, 'shipping_methods': [] # setup a default empty list } # to support no_shipping user = self.request.user if self.as_payment_method: print 'as payment method' if basket.is_shipping_required(): print 'is shipping required' # Only check for shipping details if required. shipping_addr = self.get_shipping_address(basket) if not shipping_addr: raise MissingShippingAddressException() shipping_method = self.get_shipping_method( basket, shipping_addr) if not shipping_method: raise MissingShippingMethodException() params['shipping_address'] = shipping_addr params['shipping_method'] = shipping_method params['shipping_methods'] = [] else: # Maik doubts that this code ever worked. Assigning # shipping method instances to Paypal params # isn't going to work, is it? shipping_addr = self.get_shipping_address(basket) if not shipping_addr: raise MissingShippingAddressException() shipping_method = self.get_shipping_method( basket, shipping_addr) if not shipping_method: raise MissingShippingMethodException() params['shipping_address'] = shipping_addr params['shipping_method'] = shipping_method print shipping_method, 'canhho' # shipping_methods = Repository().get_shipping_methods( # user=user, basket=basket, request=self.request) # params['shipping_methods'] = shipping_methods params['shipping_methods'] = [] if settings.DEBUG: # Determine the localserver's hostname to use when # in testing mode params['host'] = self.request.META['HTTP_HOST'] if user.is_authenticated(): params['user'] = user params['paypal_params'] = self._get_paypal_params(basket) return get_paypal_url(**params)
def perform_action(self): basket = Mock() basket.id = 1 basket.total_incl_tax = D('200') basket.all_lines = Mock(return_value=[]) methods = [Free()] url_str = get_paypal_url(basket, methods) self.url = URL.from_string(url_str)
def perform_action(self): basket = Mock() basket.id = 1 basket.total_incl_tax = D('200') basket.all_lines = Mock(return_value=[]) basket.offer_discounts = [] basket.voucher_discounts = [] basket.shipping_discounts = [] methods = [Free()] url_str = get_paypal_url(basket, methods, paypal_params=self.paypal_params) self.url = URL.from_string(url_str)
def perform_action(self): basket = Mock() basket.id = 1 basket.total_incl_tax = D('200') basket.all_lines = Mock(return_value=[]) basket.offer_discounts = [] basket.voucher_discounts = [] basket.shipping_discounts = [] methods = [Free()] url_str = get_paypal_url(basket, methods) self.url = URL.from_string(url_str)
def _get_redirect_url(self, basket, **kwargs): if basket.is_empty: raise EmptyBasketException() params = { 'basket': basket, 'shipping_methods': [] # setup a default empty list } # to support no_shipping user = self.request.user # if self.as_payment_method: if basket.is_shipping_required(): # Only check for shipping details if required. # shipping_addr = self.get_shipping_address(basket) shipping_addr = Order.objects.get(basket=basket).shipping_address if not shipping_addr: raise MissingShippingAddressException() # shipping_method = self.get_shipping_method( # basket, shipping_addr) # if not shipping_method: # raise MissingShippingMethodException() params['shipping_address'] = shipping_addr # params['shipping_method'] = shipping_method # params['shipping_methods'] = [] shipping_methods = Repository().get_shipping_methods( user=user, basket=basket, request=self.request) params['shipping_methods'] = shipping_methods # else: # # Maik doubts that this code ever worked. Assigning # # shipping method instances to Paypal params # # isn't going to work, is it? # shipping_methods = Repository().get_shipping_methods( # user=user, basket=basket, request=self.request) # params['shipping_methods'] = shipping_methods if settings.DEBUG: # Determine the localserver's hostname to use when # in testing mode params['host'] = self.request.META['HTTP_HOST'] if user.is_authenticated(): params['user'] = user params['paypal_params'] = self._get_paypal_params() return get_paypal_url(**params)
def _get_redirect_url(self, basket, **kwargs): if basket.is_empty: raise EmptyBasketException() params = { 'basket': basket, 'shipping_methods': [] # setup a default empty list } # to support no_shipping user = self.request.user if self.as_payment_method: if basket.is_shipping_required(): # Only check for shipping details if required. shipping_addr = self.get_shipping_address(basket) if not shipping_addr: raise MissingShippingAddressException() shipping_method = self.get_shipping_method( basket, shipping_addr) if not shipping_method: raise MissingShippingMethodException() params['shipping_address'] = shipping_addr params['shipping_method'] = shipping_method params['shipping_methods'] = [] else: # Maik doubts that this code ever worked. Assigning # shipping method instances to Paypal params # isn't going to work, is it? shipping_methods = Repository().get_shipping_methods( user=user, basket=basket, request=self.request) params['shipping_methods'] = shipping_methods # Returns the originating host of the request using information from the HTTP_X_FORWARDED_HOST # (if USE_X_FORWARDED_HOST is enabled) and HTTP_HOST headers, in that order. # If they don’t provide a value, the method uses a combination of SERVER_NAME and SERVER_PORT # as detailed in PEP 3333. # # Example: "127.0.0.1:8000" params['host'] = self.request.get_host() if user.is_authenticated: params['user'] = user params['paypal_params'] = self._get_paypal_params() return get_paypal_url(**params)
def _get_redirect_url(self, **kwargs): basket = self.request.basket if basket.is_empty: raise EmptyBasketException() params = { 'basket': self.request.basket, 'shipping_methods': [] # setup a default empty list } # to support no_shipping user = self.request.user if self.as_payment_method: if basket.is_shipping_required(): # Only check for shipping details if required. shipping_addr = self.get_shipping_address(basket) if not shipping_addr: raise MissingShippingAddressException() shipping_method = self.get_shipping_method( basket, shipping_addr) if not shipping_method: raise MissingShippingMethodException() params['shipping_address'] = shipping_addr params['shipping_method'] = shipping_method params['shipping_methods'] = [] else: shipping_methods = Repository().get_shipping_methods(user, basket) params['shipping_methods'] = shipping_methods if settings.DEBUG: # Determine the localserver's hostname to use when # in testing mode params['host'] = self.request.META['HTTP_HOST'] if getattr(settings, 'PAYPAL_SANDBOX_MODE', False): params['scheme'] = 'http' else: params['scheme'] = 'https' if user.is_authenticated(): params['user'] = user params['paypal_params'] = self._get_paypal_params() return get_paypal_url(**params)
def _get_redirect_url(self, **kwargs): basket = self.request.basket if basket.is_empty: messages.error(self.request, "Your basket is empty") return reverse('basket:summary') params = {'basket': self.request.basket} user = self.request.user if self.as_payment_method: shipping_addr = self.get_shipping_address() if not shipping_addr and not self.checkout_session.is_shipping_method_a_not_required_instance(): messages.error(self.request, "A shipping address must be specified") return reverse('checkout:shipping-address') shipping_method = self.get_shipping_method() if not shipping_method: messages.error(self.request, "A shipping method must be specified") return reverse('checkout:shipping-method') if not self.checkout_session.is_shipping_method_a_not_required_instance(): params['shipping_address'] = shipping_addr params['shipping_method'] = shipping_method params['shipping_methods'] = [] else: shipping_methods = Repository().get_shipping_methods(user, basket) params['shipping_methods'] = shipping_methods if settings.DEBUG: # Determine the localserver's hostname to use when # in testing mode params['host'] = self.request.META['HTTP_HOST'] scheme = getattr(settings, 'PAYPAL_RETURN_URL_SCHEME', 'https') # if settings.DEBUG: # scheme = 'http' params['scheme'] = scheme if user.is_authenticated(): params['user'] = user return get_paypal_url(**params)
def _get_redirect_url(self, basket, **kwargs): if basket.is_empty: raise EmptyBasketException() params = {"basket": basket, "shipping_methods": []} # setup a default empty list # to support no_shipping user = self.request.user if self.as_payment_method: if basket.is_shipping_required(): # Only check for shipping details if required. shipping_addr = self.get_shipping_address(basket) if not shipping_addr: raise MissingShippingAddressException() shipping_method = self.get_shipping_method(basket, shipping_addr) if not shipping_method: raise MissingShippingMethodException() params["shipping_address"] = shipping_addr params["shipping_method"] = shipping_method params["shipping_methods"] = [] else: # Maik doubts that this code ever worked. Assigning # shipping method instances to Paypal params # isn't going to work, is it? shipping_methods = Repository().get_shipping_methods(user=user, basket=basket, request=self.request) params["shipping_methods"] = shipping_methods if settings.DEBUG: # Determine the localserver's hostname to use when # in testing mode params["host"] = self.request.META["HTTP_HOST"] if user.is_authenticated(): params["user"] = user params["paypal_params"] = self._get_paypal_params() return get_paypal_url(**params)
def _get_redirect_url(self, **kwargs): basket = self.request.basket if basket.is_empty: messages.error(self.request, _("Your basket is empty")) return reverse('basket:summary') params = {'basket': self.request.basket} user = self.request.user if self.as_payment_method: shipping_addr = self.get_shipping_address() if not shipping_addr: messages.error(self.request, _("A shipping address must be specified")) return reverse('checkout:shipping-address') shipping_method = self.get_shipping_method() if not shipping_method: messages.error(self.request, _("A shipping method must be specified")) return reverse('checkout:shipping-method') params['shipping_address'] = shipping_addr params['shipping_method'] = shipping_method params['shipping_methods'] = [] else: shipping_methods = Repository().get_shipping_methods(user, basket) params['shipping_methods'] = shipping_methods if settings.DEBUG: # Determine the localserver's hostname to use when # in testing mode params['host'] = self.request.META['HTTP_HOST'] params['scheme'] = 'http' if user.is_authenticated(): params['user'] = user params.update(self.get_gateway_kwargs()) return get_paypal_url(**params)
def _get_redirect_url(self, **kwargs): basket = self.request.basket if basket.is_empty: messages.error(self.request, _("Your basket is empty")) return reverse('basket:summary') params = {'basket': self.request.basket} user = self.request.user if self.as_payment_method: shipping_addr = self.get_shipping_address() if not shipping_addr: messages.error(self.request, _("A shipping address must be specified")) return reverse('checkout:shipping-address') shipping_method = self.get_shipping_method() if not shipping_method: messages.error(self.request, _("A shipping method must be specified")) return reverse('checkout:shipping-method') params['shipping_address'] = shipping_addr params['shipping_method'] = shipping_method params['shipping_methods'] = [] else: shipping_methods = Repository().get_shipping_methods(user, basket) params['shipping_methods'] = shipping_methods if settings.DEBUG: # Determine the localserver's hostname to use when # in testing mode params['host'] = self.request.META['HTTP_HOST'] params['scheme'] = 'http' if user.is_authenticated(): params['user'] = user return get_paypal_url(**params)