30 lines
		
	
	
		
			960 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			960 B
		
	
	
	
		
			Python
		
	
	
	
	
	
"""passbook Core Application forms"""
 | 
						|
from django import forms
 | 
						|
from django.contrib.admin.widgets import FilteredSelectMultiple
 | 
						|
from django.utils.translation import gettext_lazy as _
 | 
						|
 | 
						|
from passbook.core.models import Application, Provider
 | 
						|
 | 
						|
 | 
						|
class ApplicationForm(forms.ModelForm):
 | 
						|
    """Application Form"""
 | 
						|
 | 
						|
    provider = forms.ModelChoiceField(queryset=Provider.objects.all().select_subclasses(),
 | 
						|
                                      required=False)
 | 
						|
 | 
						|
    class Meta:
 | 
						|
 | 
						|
        model = Application
 | 
						|
        fields = ['name', 'slug', 'launch_url', 'icon_url',
 | 
						|
                  'provider', 'policies', 'skip_authorization']
 | 
						|
        widgets = {
 | 
						|
            'name': forms.TextInput(),
 | 
						|
            'launch_url': forms.TextInput(),
 | 
						|
            'icon_url': forms.TextInput(),
 | 
						|
            'policies': FilteredSelectMultiple(_('policies'), False)
 | 
						|
        }
 | 
						|
        labels = {
 | 
						|
            'launch_url': _('Launch URL'),
 | 
						|
            'icon_url': _('Icon URL'),
 | 
						|
        }
 |