コード例 #1
0
 def test_maxlength_not_in_select(self):
     # Regression test for #490
     widget = PhoneNumberPrefixWidget()
     html = widget.render(name="widget",
                          value=None,
                          attrs={"maxlength": 32})
     self.assertIn('<select name="widget_0">', html)
コード例 #2
0
ファイル: forms.py プロジェクト: tusharcoder/Janani-Care
 class Meta:
     model = Profile
     fields = ('birth_date', 'mobile_number', 'phone_number', 'country',
               'state', 'zip_code', 'city', 'district', 'about')
     widgets = {
         'birth_date':
         forms.DateTimeInput(attrs={'class': 'datetime-input'}),
         'mobile_number': PhoneNumberPrefixWidget(),
         'phone_number': PhoneNumberPrefixWidget(),
     }
コード例 #3
0
ファイル: forms.py プロジェクト: danielvinogradov/sushi
 class Meta:
     model = UserProfile
     exclude = [
         'head', 'manager', 'is_head', 'is_partner', 'is_manager',
         'wagtail_profile', 'user'
     ]
     widgets = {
         'key_responsibilities':
         forms.Textarea(
             attrs={
                 'placeholder': "Перечень должностных обязанностей",
                 'class': "form-control",
                 'rows': '2'
             }),
         'phone_number':
         PhoneNumberPrefixWidget(attrs={
             'data-mask': "(000) 000-00-00",
             'class': 'form-control',
         }),
         'whatsapp':
         PhoneNumberPrefixWidget(attrs={
             'data-mask': "(000) 000-00-00",
             'class': 'form-control',
         }),
         'twitter':
         forms.URLInput(attrs={
             'placeholder': "Twitter",
             'class': 'form-control',
         }),
         'facebook':
         forms.URLInput(attrs={
             'placeholder': "Facebook",
             'class': 'form-control',
         }),
         'instagram':
         forms.URLInput(attrs={
             'placeholder': "Instagram",
             'class': 'form-control',
         }),
         'middle_name':
         forms.TextInput(attrs={
             'placeholder': "Отчество",
             'class': 'form-control',
         }),
         'position':
         forms.TextInput(attrs={
             'placeholder': "Должность",
             'class': 'form-control',
         }),
     }
コード例 #4
0
class WorkerForm(forms.ModelForm):
    slack_username = forms.CharField()
    phone = PhoneNumberField(widget=PhoneNumberPrefixWidget(initial='US'))

    class Meta:
        model = Worker
        fields = ('slack_username', 'phone')
        exclude = ('user', 'start_datetime', 'slack_user_id')

    def clean_slack_username(self):
        slack_username = self.cleaned_data.get('slack_username')
        if slack_username:
            slack_user_id = get_slack_user_id(slack_username)
            if slack_user_id is None:
                raise forms.ValidationError(
                    'Incorrect slack username provided')
            self.cleaned_data['slack_user_id'] = slack_user_id
        return self.cleaned_data['slack_username']

    def save(self, commit=True):
        instance = super().save(commit=False)
        instance.slack_user_id = self.cleaned_data.get('slack_user_id')
        if commit:
            instance.save()
        return instance
コード例 #5
0
class RegistrationForm(forms.ModelForm):
    class Meta:
        model = AppUser
        fields = ("first_name", "last_name", 'company', 'business_type',
                  'interested_in', 'city', 'state', 'country', 'phone',
                  'receive_newsletter')
        widgets = {
            'country': CountrySelectWidget(attrs={'class': 'selectize'})
        }

    interested_in = forms.ModelMultipleChoiceField(
        widget=forms.SelectMultiple(attrs={'class': 'selectize'}),
        queryset=ClientInterests.objects.all())
    phone = PhoneNumberField(
        label='Phone',
        widget=PhoneNumberPrefixWidget(attrs={'class': 'form-control'}))

    def signup(self, request, user):
        form_data = self.cleaned_data
        user.first_name = form_data['first_name']
        user.last_name = form_data['last_name']
        user.company = form_data['company']
        user.business_type = form_data['business_type']
        user.interested_in = form_data['interested_in']
        user.city = form_data['city']
        user.state = form_data['state']
        user.country = form_data['country']
        user.phone = form_data['phone']
        user.receive_newsletter = form_data['receive_newsletter']
        user.is_active = True
        user.save()
コード例 #6
0
 class Meta:
     model = User
     exclude = ('date_joined', 'is_active', 'is_superuser', 'is_staff')
     error_messages = {
         'username': {
             'unique': 'این نام کاربری قبلا ثبت شده است !'
         },
         'email': {
             'unique': 'این ایمیل قبلا توسط فرد دیگری استفاده شده است .'
         }
     }
     labels = {
         'username': '******',
         'password': '******',
         'email': 'ایمیل',
         'first_name': 'نام',
         'last_name': 'نام خانوادگی',
         'phone_number': 'شماره تلفن'
     }
     widgets = {
         'username': forms.TextInput({'placeholder': 'نام کاربری'}),
         'email': forms.TextInput({'placeholder': 'پست الکترونیکی'}),
         'password': forms.PasswordInput({'placeholder': 'گذرواژه'}),
         'first_name': forms.TextInput({'placeholder': 'نام'}),
         'last_name': forms.TextInput({'placeholder': 'نام خانوادگی'}),
         'phone_number':
         PhoneNumberPrefixWidget({'placeholder': 'شماره تلفن'})
     }
コード例 #7
0
class DoctorForm(forms.ModelForm):
    doctor_name = forms.CharField(
        required=True,
        label='Name',
        widget=forms.TextInput(attrs={'class': 'my-label-desc'}))
    doctor_description = forms.CharField(
        required=False,
        label='Description',
        widget=forms.Textarea(
            attrs={'class': 'my-label-desc label-desc-text-area'}))
    doctor_address = forms.CharField(
        required=True,
        label='Address',
        widget=forms.Textarea(
            attrs={'class': 'my-label-desc label-desc-text-area'}))
    doctor_speciality = forms.ChoiceField(
        required=True,
        choices=SPECIALITY_CHOICE,
        label='Speciality',
        widget=forms.Select(attrs={'class': 'my-label-desc'}))
    doctor_timings = forms.CharField(
        required=True,
        label='Timing',
        widget=forms.TextInput(attrs={'class': 'my-label-desc'}))
    doctor_pic = forms.ImageField(required=False, label='Upload Photo')
    doctor_phone_number = PhoneNumberField(
        required=False,
        label='Contact No.',
        widget=PhoneNumberPrefixWidget(attrs={'class': 'my-label-phone'}))

    class Meta:
        model = Doctor
        fields = ( 'doctor_name', 'doctor_description', 'doctor_address', 'doctor_speciality', 'doctor_timings', 'doctor_pic', 'doctor_phone_number' )\
コード例 #8
0
ファイル: forms.py プロジェクト: Vissu-A/Web-Dev
class AdminUserCreationForm(forms.ModelForm):
    """
    A form that creates a user, with no privileges, from the given username and password.
    """

    error_messages = {
        'password_mismatch': "The two password fields didn't match.",
    }
    password1 = forms.CharField(
        label="Password",
        strip=False,
        widget=forms.PasswordInput,
        help_text=password_validation.password_validators_help_text_html(),
    )
    password2 = forms.CharField(
        label="Password confirmation",
        widget=forms.PasswordInput,
        strip=False,
        help_text="Enter the same password as before, for verification.",
    )

    phone = PhoneNumberField(widget=PhoneNumberPrefixWidget())

    class Meta:
        model = MyUser
        fields = '__all__'

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        if self._meta.model.USERNAME_FIELD in self.fields:
            self.fields[self._meta.model.USERNAME_FIELD].widget.attrs.update(
                {'autofocus': True})

    def clean_password2(self):
        password1 = self.cleaned_data.get("password1")
        password2 = self.cleaned_data.get("password2")
        if password1 and password2 and password1 != password2:
            raise forms.ValidationError(
                self.error_messages['password_mismatch'],
                code='password_mismatch',
            )
        return password2

    def _post_clean(self):
        super()._post_clean()
        # Validate the password after self.instance is updated with form data
        # by super().
        password = self.cleaned_data.get('password2')
        if password:
            try:
                password_validation.validate_password(password, self.instance)
            except forms.ValidationError as error:
                self.add_error('password2', error)

    def save(self, commit=True):
        user = super().save(commit=False)
        user.set_password(self.cleaned_data["password1"])
        if commit:
            user.save()
        return user
コード例 #9
0
ファイル: forms.py プロジェクト: chouhanvikas27march/sfdemo
class UserRegisterForm(forms.ModelForm):
    Name = forms.CharField(
        required=True, widget=forms.TextInput(attrs={'class': 'form-control'}))
    DOB = forms.DateField(required=True,
                          widget=forms.DateInput(attrs={
                              'class': 'form-control',
                              'id': 'datepicker1'
                          }))
    Email = forms.CharField(
        required=True,
        widget=forms.EmailInput(attrs={'class': 'form-control'}))
    Phone_number = forms.CharField(required=True,
                                   widget=PhoneNumberPrefixWidget(
                                       attrs={'class': 'form-control'},
                                       initial='IN'))

    def clean_DOB(self):
        dob = self.cleaned_data['DOB']
        age = (date.today() - dob).days / 365
        if age < 18:
            raise forms.ValidationError(
                'age must be greater then 18 years old to register')
        return dob

    class Meta:
        model = UserRegisterModel
        fields = '__all__'
コード例 #10
0
class UserAdminChangeForm(forms.ModelForm):
    """A form for updating users. Includes all the fields on
    the user, but replaces the password field with admin's
    password hash display field.
    """
    mobile = forms.CharField(
        label=_("Numéro de téléphone"),
        required=True,
        widget=PhoneNumberPrefixWidget(attrs={'class': 'form-control'},
                                       initial="CN"))

    password = ReadOnlyPasswordHashField()

    class Meta:
        model = User
        fields = (
            'email',
            'password',
            'is_active',
            'admin',
            "first_name",
            "last_name",
            "mobile",
        )

    def clean_password(self):
        # Regardless of what the user provides, return the initial value.
        # This is done here, rather than on the field, because the
        # field does not have access to the initial value
        return self.initial["password"]
コード例 #11
0
ファイル: forms.py プロジェクト: sarraf1996/ReUnite
 class Meta:
     model = MissingChild
     fields = [
         'residential_address', 'district', 'state', 'pincode',
         'parent_mobile_no', 'parent_email', 'parent_aadhar_no'
     ]
     widgets = {
         'pincode':
         forms.NumberInput(attrs={
             'onkeypress':
             'if(this.value.length === 6) event.preventDefault()'
         }),
         'parent_mobile_no':
         PhoneNumberPrefixWidget(
             attrs={
                 'onkeypress':
                 'if(this.value.length === 10) event.preventDefault()'
             }),
         'parent_aadhar_no':
         forms.NumberInput(
             attrs={
                 'onkeypress':
                 'if(this.value.length === 12) event.preventDefault()'
             })
     }
コード例 #12
0
ファイル: forms.py プロジェクト: WiWhite/WiCRM
class CustomerForm(forms.ModelForm):

    phone_number = PhoneNumberField(widget=PhoneNumberPrefixWidget(
        attrs={
            'class': 'form-control form-control-sm',
            'placeholder': 'Phone Number'
        }))

    class Meta:
        model = Customers
        fields = ('first_name', 'last_name', 'company', 'phone_number',
                  'email', 'instagram', 'curator', 'owner')

        widgets = {
            'first_name':
            forms.TextInput(
                attrs={
                    'class': 'form-control form-control-sm',
                    'placeholder': 'First Name'
                }),
            'last_name':
            forms.TextInput(
                attrs={
                    'class': 'form-control form-control-sm',
                    'placeholder': 'Last Name'
                }),
            'company':
            forms.TextInput(attrs={
                'class': 'form-control form-control-sm',
                'placeholder': 'Company'
            }),
            'email':
            forms.EmailInput(attrs={
                'class': 'form-control form-control-sm',
                'placeholder': 'E-mail'
            }),
            'instagram':
            forms.URLInput(
                attrs={
                    'class': 'form-control form-control-sm',
                    'placeholder': 'URL Instagram'
                }),
            'service':
            forms.Select(attrs={
                'class': 'form-select form-select-sm',
                'placeholder': 'Service'
            }),
            'curator':
            forms.Select(attrs={
                'class': 'form-select form-select-sm',
            }),
        }

    def __init__(self, owner=None, *args, **kwargs):
        super(CustomerForm, self).__init__(*args, **kwargs)
        self.fields['curator'].queryset = Personnel.objects.filter(
            owner=owner,
            dismissal=None,
        )
コード例 #13
0
class FarmerForm(forms.ModelForm):
    phone_number = forms.CharField(widget=PhoneNumberPrefixWidget(),
                                   required=False,
                                   initial='+91')

    class Meta(object):
        model = Farmer
        fields = '__all__'
コード例 #14
0
 class Meta:
     model = Member
     fields = [
         'first_name', 'last_name', 'birth_date', 'email', 'telephone'
     ]
     widgets = {
         'telephone': PhoneNumberPrefixWidget(),
         'birth_date': DatePickerInput(format="%Y-%m-%d")
     }
コード例 #15
0
 class Meta:
     model = UserProfile
     widgets = {
         'phone': PhoneNumberPrefixWidget(initial='PK'),
         'address': forms.Textarea(attrs={'rows': 2}),
         'bio': forms.Textarea(attrs={'rows': 3}),
     }
     fields = '__all__'
     exclude = ['user', 'role']
コード例 #16
0
    class Meta:
        model = Dados_Mapeamento_empresa
        fields = '__all__'

        widgets = {

            ##Dados cadastrais
            'nome':
            TextInput(attrs={'placeholder': 'Nome da Empresa'}),
            'pessoas':
            CheckboxSelectMultiple(),
            'logo':
            FileInput(attrs={'class': 'label'}),

            #Endereço institucional
            'cep':
            TextInput(
                attrs={
                    'placeholder': 'xxxxx-xxx',
                    'id': 'cep',
                    'onblur': 'pesquisacep(this.value);'
                }),  ####### fazer Auto preenchimento com CEP
            'rua':
            TextInput(attrs={'id': 'rua'}),
            'bairro':
            TextInput(attrs={'id': 'bairro'}),
            'cidade':
            TextInput(attrs={'id': 'cidade'}),
            'estado':
            Select(attrs={'id': 'uf'}),
            'site':
            TextInput(attrs={'placeholder': 'http://www.seuwebsite.com'}),
            'email':
            TextInput(attrs={'placeholder': '*****@*****.**'}),

            #Dados do Representante
            'telefone':
            PhoneNumberPrefixWidget(attrs={'placeholder': 'xxxxxxx-xxxx'
                                           }),  ## arrumar aqui depois 
            'email_representante':
            TextInput(attrs={'placeholder': '*****@*****.**'}),

            #Campo de Abrangência da Instituição Cadastrada
            'em_qual_destes_itens_abaixo_seu_cadastro_se_enquadra':
            CheckboxSelectMultiple(),
            'em_qual_destes_setores_a_instituicao_se_enquadra':
            Select(attrs={'onchange': "sumir(this.value);"
                          }),  #pegando função do js

            #Sobre Projetos, Iniciativas, parcerias e infraestrutura :
            'programas_iniciativas_movimentos_de_empreendedorismo_e_inovacao_que_executa':
            Textarea(attrs={'id': 'Textarea'}),
            'programas_iniciativas_movimentos_de_empreendedorismo_e_inovacao_que_participa':
            Textarea(attrs={'id': 'Textarea'}),
            'equipamentos_disponiveis_para_uso_compartilhado_prestacao_de_servico_no_Ecossistema_Regional':
            Textarea(attrs={'id': 'Textarea'}),
        }
コード例 #17
0
 class Meta:
     model = UserProfile
     widgets = {
         'phone': PhoneNumberPrefixWidget(initial='PK'),
     }
     fields = [
         'phone',
         'role',
     ]
コード例 #18
0
class PhoneUserLoginForm(AuthenticationForm):
    user_attr = {'autofocus': True, 'class': ''}
    pass_attr = {'class': ''}
    username = UsernameField(widget=PhoneNumberPrefixWidget(attrs=user_attr))
    password = forms.CharField(
        label='Password',
        strip=False,
        widget=forms.PasswordInput(attrs=pass_attr),
    )
コード例 #19
0
ファイル: forms.py プロジェクト: i12maroa/piVoz
 class Meta:
     model = Usuario
     fields = [
         'username', 'first_name', 'last_name', 'email', 'is_staff',
         'password', 'telefono', 'last_login', 'date_joined'
     ]
     widgets = {
         'telefono': PhoneNumberPrefixWidget(),
     }
コード例 #20
0
ファイル: forms.py プロジェクト: c4road/pegaso
    class Meta:

        model = Profile
        fields = [
            'language',
            'phone',
        ]

        widgets = {'phone': PhoneNumberPrefixWidget()}
コード例 #21
0
 class Meta:
   model = User
   fields = ('fullname', 'phone', 'email', 'password', 'password_confirm')
   widgets = {
     'fullname': forms.TextInput(attrs={'placeholder':'Enter Fullname'}),
     'phone': PhoneNumberPrefixWidget(attrs={'placeholder':'Enter Phone Number'}, initial='SA'),
     'email': forms.EmailInput(attrs={'placeholder':'Enter your Email'}),
     'password': forms.PasswordInput(attrs={'placeholder':'Enter your password'}),
     'password_confirm': forms.PasswordInput(attrs={'placeholder':'Enter your password'})
   }
コード例 #22
0
class UpdateForm(forms.ModelForm):
    phone_number = PhoneNumberField(widget=PhoneNumberPrefixWidget(),
                                    initial='+91')

    class Meta:
        model = UserProfile
        fields = [
            'username', 'first_name', 'last_name', 'phone_number', 'email',
            'role'
        ]
コード例 #23
0
class PhoneForm(forms.ModelForm):

    phone = PhoneNumberField(max_length=200,
                             label="Phone Number",
                             widget=PhoneNumberPrefixWidget(),
                             required=True)  # CharField would also work

    class Meta:
        model = PhoneModel
        fields = ['name', 'phone']
コード例 #24
0
 class Meta:
     model = Profile
     fields = [
         'first_name', 'last_name', 'email', 'contacts', 'biography',
         'birth_date'
     ]
     widgets = {
         'birth_date': DateInput(attrs={'type': 'date'}),
         'contacts': PhoneNumberPrefixWidget(),
     }
コード例 #25
0
    class Meta:
        model = Dados_Mapeamento_startup
        fields = '__all__'
        #     #Dados Cadastrais
        #     'nome','site','email','cnpj',
        #     #Endereço
        #    'cep','rua','bairro','cidade','estado',
        #     #Dados do Representante
        #    'nome_representante','cargo','telefone','email_representante',
        #     #Característica da Empresa/Startup
        #    'setor_de_atuacao', 'area_de_atuacao_da_empresa_ou_startup','segmento_area','detalhes_de_area_de_atuacao','segmento_de_atuacao', 'tipo_de_cliente',
        #    #questionario
        #    'possui_mercado_Global','possui_Influencia_ou_interesse_militar', 'qual_estrategia_de_saida_ou_idealizada_para_o_negocio',
        #    ]
        #

        #validar CNPJ e Email
        widgets = {
            #Dados Cadastrais
            'nome':
            TextInput(attrs={'placeholder': 'Nome da Startup'}),
            'cnpj':
            TextInput(attrs={'placeholder': ' xx.xxx.xxx/xxxx-xx'}),
            'site':
            TextInput(attrs={'placeholder': 'http://www.seuwebsite.com'}),
            'email':
            TextInput(attrs={'placeholder': '*****@*****.**'}),
            'logo':
            FileInput(attrs={'class': 'label'}),
            #Endereço
            'cep':
            TextInput(attrs={'placeholder': 'xxxxx-xxx'
                             }),  ####### fazer Auto preenchimento com CEP

            #dados representante
            'telefone':
            PhoneNumberPrefixWidget(attrs={'placeholder': 'xxxxxxx-xxxx'
                                           }),  ## arrumar aqui depois 
            'email_representante':
            TextInput(attrs={'placeholder': '*****@*****.**'}),

            #caracteristicas da startup
            'setor_de_atuacao':
            CheckboxSelectMultiple(),  #arrumar depois as tag

            #Questionário
            'qual_estrategia_de_saida_ou_idealizada_para_o_negocio':
            CheckboxSelectMultiple(),  #arrumar depois as tag
            'sua_startup_possui_conhecimento_ou_e_treinada_nas_metodologias_descritas_abaixo':
            CheckboxSelectMultiple(),  #arrumar depois as tag
            'quais_programas_iniciativas_movimentos_de_empreendedorismo_e_inovacao_que_participa':
            Textarea(attrs={'id': 'Textarea'}),
            'com_quais_entidades_do_ecossistema_tem_conexao_interacao_frequente_projetos_em_parceria_colaboracao_que_contribuiram_e_contribuem_para_as_inovacoes_e_aperfeicoamento_da_empresa':
            Textarea(attrs={'id': 'Textarea'}),
        }
コード例 #26
0
ファイル: forms.py プロジェクト: sarraf1996/ReUnite
 class Meta:
     model = Profile
     fields = ['user_mobile_no', 'image']
     widgets = {
         'user_mobile_no':
         PhoneNumberPrefixWidget(
             attrs={
                 'onkeypress':
                 'if(this.value.length === 10) event.preventDefault()'
             })
     }
コード例 #27
0
class RegForm(UserCreationForm):
    tos = forms.BooleanField(
        widget=forms.CheckboxInput,
        label=u'I have read and agree to the Terms of Service',
        error_messages={
            'required': "Agree to continue"
        }
    )
    phone = PhoneNumberField(
        label='Phone Number', required=True,
        widget=PhoneNumberPrefixWidget(attrs={'class': 'form-control'})
    )
コード例 #28
0
 class Meta:
     model = DonorInformation
     fields = ('name', 'phone_number', 'blood_group', 'current_address',
               'permanent_address', 'profile_picture')
     widgets = {
         'phone_number':
         PhoneNumberPrefixWidget(
             attrs={
                 'placeholder': (u'Phone Number'),
                 'id': 'tel',
                 'class': "form-control",
                 'label': (u'Cellphone number')
             }),
     }
コード例 #29
0
 class Meta:
     model = Address
     fields = ('first_name', 'last_name', 'phone_number', 'house_number',
               'division', 'city', 'zone', 'effective_delivery')
     widgets = {
         'phone_number':
         PhoneNumberPrefixWidget(
             attrs={
                 'placeholder': (u'Phone Number'),
                 'id': 'tel',
                 'class': "form-control",
                 'label': (u'Cellphone number')
             }),
     }
コード例 #30
0
class ProfileUpdateForm(forms.ModelForm):
    phone_number = PhoneNumberField(
        widget=PhoneNumberPrefixWidget(
            attrs={'placeholder': _('Phone Number'), 'class': "form-control"}),
        label=_('Phone Number'),
        required=True,
        initial='+880'
    )
    class Meta:
        model = Profile
        fields = ('full_name', 'date_of_birth', 'profile_picture', 'phone_number', 'address',)
        widgets = {
            'date_of_birth': DateInput(attrs={'type': 'date'}),
        }