def submit_success(self, appstruct): """ handle successfull payment mode configuration """ for mode in PaymentMode.query(): self.dbsession.delete(mode) for data in appstruct['paymentmodes']: mode = PaymentMode(label=data) self.dbsession.add(mode) self.request.session.flash(self.validation_msg) return HTTPFound(self.request.route_path("admin_paymentmode"))
def deferred_payment_mode_validator(node, kw): return colander.OneOf([mode.label for mode in PaymentMode.query()])
def deferred_payment_mode_widget(node, kw): """ dynamically retrieves the payment modes """ modes = [(mode.label, mode.label) for mode in PaymentMode.query()] return deform.widget.SelectWidget(values=modes)
def before(self, form): """ Add appstruct to the current form object """ appstruct = [mode.label for mode in PaymentMode.query()] form.set_appstruct({'paymentmodes': appstruct})