# Copyright The IETF Trust 2010-2020, All Rights Reserved # -*- coding: utf-8 -*- from django.urls import reverse as urlreverse from django.forms.widgets import Widget from django.utils.safestring import mark_safe from django.utils.html import conditional_escape from django_stubs_ext import QuerySetAny class ButtonWidget(Widget): def __init__(self, *args, **kwargs): self.label = kwargs.pop('label', None) self.show_on = kwargs.pop('show_on', None) self.require = kwargs.pop('require', None) self.required_label = kwargs.pop('required_label', None) super(ButtonWidget, self).__init__(*args, **kwargs) def render(self, name, value, **kwargs): html = '%s' % conditional_escape(self.show_on) html += '%s' % conditional_escape(self.label) if self.require: for i in self.require: html += '%s' % conditional_escape(i) required_str = 'Please fill in %s to attach a new file' % conditional_escape(self.required_label) html += '%s' % conditional_escape(required_str) html += '' % conditional_escape(self.label) return mark_safe(html) class ShowAttachmentsWidget(Widget): def render(self, name, value, **kwargs): html = '