## $Id: browser.py 14993 2018-04-26 11:58:27Z henrik $ ## ## Copyright (C) 2017 Uli Fouquet & Henrik Bettermann ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 2 of the License, or ## (at your option) any later version. ## ## This program is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with this program; if not, write to the Free Software ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## from kofacustom.nigeria.remita.studentsbrowser import ( module_activated, RemitaRequestPaymentStatusPageStudent, RemitaVerifyPaymentStatusPageStudent, RemitaPageStudent) from kofacustom.nigeria.remita.applicantsbrowser import ( RemitaRequestPaymentStatusPageApplicant, RemitaVerifyPaymentStatusPageApplicant, RemitaPageApplicant) # Temporarily we can use the test portal like in kofacustom.nigeria from kofacustom.nigeria.remita.tests import ( MERCHANTID, HOST, HTTPS, API_KEY, SERVICETYPEID) #MERCHANTID = '' #HOST = 'login.remita.net' #HTTPS = True #API_KEY = '' #SERVICETYPEID = '' class CustomRemitaRequestPaymentStatusPageStudent( RemitaRequestPaymentStatusPageStudent): """ Request webservice view for the Remita gateway. """ merchantId = MERCHANTID host = HOST https = HTTPS api_key = API_KEY class CustomRemitaVerifyPaymentStatusPageStudent( RemitaVerifyPaymentStatusPageStudent): """ Request webservice view for the Remita gateway. """ merchantId = MERCHANTID host = HOST https = HTTPS api_key = API_KEY class CustomRemitaPageStudent(RemitaPageStudent): """ View which sends a POST request to the Remita payment gateway. """ merchantId = MERCHANTID host = HOST https = HTTPS api_key = API_KEY init_url = '/remita/ecomm/split/init.reg' @property def serviceTypeId(self): return SERVICETYPEID @property def lineitems(self): ba1 = self.context.amount_auth / 2 ba2 = self.context.amount_auth / 2 lineitems = ( {"lineItemsId":"itemid1","beneficiaryName":"Klaus Mueller", "beneficiaryAccount":"6020067886","bankCode":"011", "beneficiaryAmount":str(ba1),"deductFeeFrom":"1"}, {"lineItemsId":"itemid2","beneficiaryName":"Werner Rumm", "beneficiaryAccount":"0360883515","bankCode":"050", "beneficiaryAmount":str(ba2),"deductFeeFrom":"0"} ) return lineitems def update(self): if not module_activated(self.context.student.current_session): return self.orderId = self.context.p_id error = self.init_update() if error: self.flash(error, type='danger') self.redirect(self.url(self.context, '@@index')) return # Already now it becomes a Remita payment. We set the net amount # and add the gateway amount. if not self.context.r_company: self.context.net_amt = self.context.amount_auth self.context.amount_auth += self.gateway_amt self.context.gateway_amt = self.gateway_amt self.context.r_company = u'remita' self.amount_auth = int(100 * self.context.amount_auth) return class CustomRemitaRequestPaymentStatusPageApplicant( RemitaRequestPaymentStatusPageApplicant): """ Request webservice view for the Remita gateway. """ merchantId = MERCHANTID host = HOST https = HTTPS api_key = API_KEY class CustomRemitaVerifyPaymentStatusPageApplicant( RemitaVerifyPaymentStatusPageApplicant): """ Request webservice view for the Remita gateway. """ merchantId = MERCHANTID host = HOST https = HTTPS api_key = API_KEY class CustomRemitaPageApplicant(RemitaPageApplicant): """ View which sends a POST request to the Remita payment gateway. """ merchantId = MERCHANTID host = HOST https = HTTPS api_key = API_KEY init_url = '/remita/ecomm/split/init.reg' @property def serviceTypeId(self): return SERVICETYPEID @property def lineitems(self): lineitems = ( {"lineItemsId":"itemid1","beneficiaryName":"Klaus Mueller", "beneficiaryAccount":"6020067886","bankCode":"011", "beneficiaryAmount":self.context.amount_auth/2,"deductFeeFrom":"1"}, {"lineItemsId":"itemid2","beneficiaryName":"Werner Rumm", "beneficiaryAccount":"0360883515","bankCode":"050", "beneficiaryAmount":self.context.amount_auth/2,"deductFeeFrom":"0"} ) return lineitems def update(self): if not module_activated(self.context.__parent__.__parent__.year): return self.orderId = self.context.p_id error = self.init_update() if error: self.flash(error, type='danger') self.redirect(self.url(self.context, '@@index')) return # Already now it becomes a Remita payment. We set the net amount # and add the gateway amount. if not self.context.r_company: self.context.net_amt = self.context.amount_auth self.context.amount_auth += self.gateway_amt self.context.gateway_amt = self.gateway_amt self.context.r_company = u'remita' self.amount_auth = int(100 * self.context.amount_auth) return