Ignore:
Timestamp:
25 Mar 2021, 09:45:54 (3 years ago)
Author:
Henrik Bettermann
Message:

Add payment option (p_option) field to payment tickets and add
select box on online payment add form pages. Disable this feature
in the base package.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/waeup.kofa/trunk/src/waeup/kofa/students/browser.py

    r16412 r16431  
    22412241        return sorted(categories.items(), key=lambda value: value[1])
    22422242
     2243    @property
     2244    def selectable_payment_options(self):
     2245        student = self.context.__parent__
     2246        options = getUtility(
     2247            IKofaUtils).selectable_payment_options(student)
     2248        return sorted(options.items(), key=lambda value: value[1])
     2249
    22432250    @action(_('Create ticket'), style='primary')
    22442251    def createTicket(self, **data):
    22452252        form = self.request.form
    22462253        p_category = form.get('form.p_category', None)
     2254        p_option = form.get('form.p_option', None)
    22472255        p_combi = form.get('form.p_combi', [])
    22482256        if isinstance(form.get('form.p_combi', None), unicode):
     
    22722280        if p_category == 'transfer':
    22732281            payment.p_item = form['new_programme']
     2282        if p_option:
     2283            payment.p_option = p_option
    22742284        self.context[payment.p_id] = payment
    22752285        self.flash(_('Payment ticket created.'))
     
    22872297    grok.context(IStudentPaymentsContainer)
    22882298    grok.name('addpp')
     2299    grok.template('previouspaymentaddform')
    22892300    grok.require('waeup.payStudent')
    22902301    form_fields = grok.AutoFields(IStudentPreviousPayment)
     
    22992310        return
    23002311
     2312    @property
     2313    def selectable_payment_options(self):
     2314        student = self.context.__parent__
     2315        options = getUtility(
     2316            IKofaUtils).selectable_payment_options(student)
     2317        return sorted(options.items(), key=lambda value: value[1])
     2318
    23012319    @action(_('Create ticket'), style='primary')
    23022320    def createTicket(self, **data):
    23032321        p_category = data['p_category']
     2322        p_option = data.get('p_option', None)
    23042323        previous_session = data.get('p_session', None)
    23052324        previous_level = data.get('p_level', None)
     
    23112330            self.flash(error, type="danger")
    23122331            return
     2332        if p_option:
     2333            payment.p_option = p_option
    23132334        self.context[payment.p_id] = payment
    23142335        self.flash(_('Payment ticket created.'))
     
    23272348    grok.context(IStudentPaymentsContainer)
    23282349    grok.name('addbp')
     2350    grok.template('previouspaymentaddform')
    23292351    grok.require('waeup.manageStudent')
    23302352    form_fields = grok.AutoFields(IStudentBalancePayment)
     
    23322354    pnav = 4
    23332355
     2356    @property
     2357    def selectable_payment_options(self):
     2358        student = self.context.__parent__
     2359        options = getUtility(
     2360            IKofaUtils).selectable_payment_options(student)
     2361        return sorted(options.items(), key=lambda value: value[1])
     2362
    23342363    @action(_('Create ticket'), style='primary')
    23352364    def createTicket(self, **data):
    23362365        p_category = data['p_category']
     2366        p_option = data.get('p_option', None)
    23372367        balance_session = data.get('balance_session', None)
    23382368        balance_level = data.get('balance_level', None)
     
    23462376            self.flash(error, type="danger")
    23472377            return
     2378        if p_option:
     2379            payment.p_option = p_option
    23482380        self.context[payment.p_id] = payment
    23492381        self.flash(_('Payment ticket created.'))
Note: See TracChangeset for help on using the changeset viewer.