def provider_forms(self) -> list: providers = [] responses = register_ticket_outputs.send(self.request.event) for receiver, response in responses: provider = response(self.request.event) provider.form = ProviderForm( obj=self.request.event, settingspref='ticketoutput_%s_' % provider.identifier, data=(self.request.POST if self.request.method == 'POST' else None), files=(self.request.FILES if self.request.method == 'POST' else None)) provider.form.fields = OrderedDict([ ('ticketoutput_%s_%s' % (provider.identifier, k), v) for k, v in provider.settings_form_fields.items() ]) provider.settings_content = provider.settings_content_render( self.request) provider.form.prepare_fields() provider.preview_allowed = True for k, v in provider.settings_form_fields.items(): if v.required and not self.request.event.settings.get( 'ticketoutput_%s_%s' % (provider.identifier, k)): provider.preview_allowed = False break providers.append(provider) return providers
def provider_forms(self) -> list: providers = [] for provider in self.request.event.get_payment_providers().values(): provider.form = ProviderForm( obj=self.request.event, settingspref=provider.settings.get_prefix(), data=(self.request.POST if self.request.method == 'POST' else None)) provider.form.fields = OrderedDict([ ('%s%s' % (provider.settings.get_prefix(), k), v) for k, v in provider.settings_form_fields.items() ]) provider.settings_content = provider.settings_content_render( self.request) provider.form.prepare_fields() if provider.settings_content or provider.form.fields: # Exclude providers which do not provide any settings providers.append(provider) return providers
def provider_forms(self) -> list: providers = [] responses = register_payment_providers.send(self.request.event) for receiver, response in responses: provider = response(self.request.event) provider.form = ProviderForm( obj=self.request.event, settingspref='payment_%s_' % provider.identifier, data=(self.request.POST if self.request.method == 'POST' else None)) provider.form.fields = OrderedDict([ ('payment_%s_%s' % (provider.identifier, k), v) for k, v in provider.settings_form_fields.items() ]) provider.settings_content = provider.settings_content_render( self.request) provider.form.prepare_fields() if provider.settings_content or provider.form.fields: # Exclude providers which do not provide any settings providers.append(provider) return providers