def __call__(self):
     lang = self.request.get('QUERY_STRING', None)
     if not lang:
         lang = None
     processor = IPaymentProcessor(self.context)
     data = minidom.parseString(self.request.get('DATA', ''))
     return processor.processOrder(data.firstChild.getAttribute('ORDERID'), 'pcommerce.payment.saferpay', lang)
Exemple #2
0
 def __call__(self, orderid, failed=False):
     orderid = int(orderid)
     registry = IOrderRegistry(self.context)
     order = registry.getOrder(orderid)
     if order is not None and order.paymentid == "pcommerce.payment.invoice":
         order.paymentdata.state = failed and FAILED or SUCCESS
     processor = IPaymentProcessor(self.context)
     return processor.processOrder(orderid, "pcommerce.payment.invoice")
    def __call__(self):
        lang = self.request.get('QUERY_STRING', None)
        if not lang:
            lang = None
        data = self.request.form
        # If there is no txn_id in the received arguments don't proceed
        if not "txn_id" in data:
            return "No Parameters"
 
        # Verify the data received with Paypal
        if not self.verify_ipn(data):
            logger.info("pcommerce.payment.paypal: Error with paypal verify")
            return "Error with paypal" 
        else:
            processor = IPaymentProcessor(self.context)
            return processor.processOrder(data['item_number1'], 'pcommerce.payment.paypal', lang)
class ProcessDocdata(BrowserView):
    """process Docdata payments
    """

    implements(IPaymentView)

    def __init__(self, context, request):
        super(ProcessDocdata, self).__init__(context, request)
        self.context = context
        self.request = request
        self.form = self.context.REQUEST.form
        self.processor = IPaymentProcessor(self.context)

    def status_description(self):
        """ return the docdata status """
        orderId = self.form.get('form_id', '')
        orderId = int(orderId)
        registry = IOrderRegistry(self.context)
        order = registry.getOrder(orderId)
        status = order.paymentdata._payment_status
        status_description = _(status)
        return status_description

    def processOrder(self):
        """ do the actual processing in the plugin """
        orderId = self.form.get('form_id', '')
        return self.processor.processOrder(orderId,
                'pcommerce.payment.docdata')
Exemple #5
0
    def __call__(self):
        lang = self.request.get('QUERY_STRING', None)
        if not lang:
            lang = None
        data = self.request.form
        # If there is no txn_id in the received arguments don't proceed
        if not "txn_id" in data:
            return "No Parameters"

        # Verify the data received with Paypal
        if not self.verify_ipn(data):
            logger.info("pcommerce.payment.paypal: Error with paypal verify")
            return "Error with paypal"
        else:
            processor = IPaymentProcessor(self.context)
            return processor.processOrder(data['item_number1'],
                                          'pcommerce.payment.paypal', lang)
 def __call__(self, orderid, failed=False):
     orderid = int(orderid)
     registry = IOrderRegistry(self.context)
     order = registry.getOrder(orderid)
     if order is not None and order.paymentid == 'pcommerce.payment.invoice':
         pre_state = order.state
         order.paymentdata.state = FAILED if failed or pre_state is FAILED else SUCCESS
         processor = IPaymentProcessor(self.context)
         result = processor.processOrder(orderid, 'pcommerce.payment.invoice')
         msg = (_('Processing the order failed'), 'error')
         if pre_state is config.PROCESSED or pre_state is config.FAILED:
             msg = (_('Order already processed'), 'error')
         elif failed and order.state is config.FAILED:
             msg = (_('Order successfully canceled'), 'info')
         elif not failed and order.state is config.PROCESSED:
             msg = (_('Order successfully processed'), 'info')
         self.request.response.redirect('%s/order-details?order_id=%s' % (self.context.absolute_url(), orderid))
     else:
         msg = (_('Order not found'), 'error')
         self.request.response.redirect('%s/manage-orders' % self.context.absolute_url())
     IStatusMessage(self.request).add(*msg)
Exemple #7
0
 def __call__(self):
     processor = IPaymentProcessor(self.context)
     utility = getUtility(IPaymentMethod, name='eMailPayment')
     return translate(_(processor.processPayment(self, utility)), context=self.request)
 def __init__(self, context, request):
     super(ProcessDocdata, self).__init__(context, request)
     self.context = context
     self.request = request
     self.form = self.context.REQUEST.form
     self.processor = IPaymentProcessor(self.context)