Skip to content

Commit c7a3078

Browse files
authored
Merge pull request #53 from treavis/master
Add input placeholders.
2 parents 76b089c + 21e4111 commit c7a3078

File tree

4 files changed

+51
-2
lines changed

4 files changed

+51
-2
lines changed

cmsplugin_contact_plus/admin.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
class ExtraFieldInline(SortableTabularInline):
1010
model = ExtraField
11-
fields = ('label', 'fieldType', 'initial', 'required')
11+
fields = ('label', 'fieldType', 'initial', 'placeholder', 'required')
1212

1313

1414
class ContactFormPlusAdmin(NonSortableParentAdmin):

cmsplugin_contact_plus/forms.py

+24-1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ def __init__(self, contactFormInstance, request, *args, **kwargs):
2323
if extraField.fieldType == 'CharField':
2424
self.fields[slugify(extraField.label)] = forms.CharField(label=extraField.label,
2525
initial=extraField.initial,
26+
widget=forms.TextInput(
27+
attrs={'placeholder': extraField.placeholder}
28+
),
2629
required=extraField.required)
2730
elif extraField.fieldType == 'BooleanField':
2831
self.fields[slugify(extraField.label)] = forms.BooleanField(label=extraField.label,
@@ -31,14 +34,23 @@ def __init__(self, contactFormInstance, request, *args, **kwargs):
3134
elif extraField.fieldType == 'EmailField':
3235
self.fields[slugify(extraField.label)] = forms.EmailField(label=extraField.label,
3336
initial=extraField.initial,
37+
widget=forms.TextInput(
38+
attrs={'placeholder': extraField.placeholder}
39+
),
3440
required=extraField.required)
3541
elif extraField.fieldType == 'DecimalField':
3642
self.fields[slugify(extraField.label)] = forms.DecimalField(label=extraField.label,
3743
initial=extraField.initial,
44+
widget=forms.TextInput(
45+
attrs={'placeholder': extraField.placeholder}
46+
),
3847
required=extraField.required)
3948
elif extraField.fieldType == 'FloatField':
4049
self.fields[slugify(extraField.label)] = forms.FloatField(label=extraField.label,
4150
initial=extraField.initial,
51+
widget=forms.TextInput(
52+
attrs={'placeholder': extraField.placeholder}
53+
),
4254
required=extraField.required)
4355
elif extraField.fieldType == 'FileField':
4456
self.fields[slugify(extraField.label)] = forms.FileField(label=extraField.label,
@@ -51,6 +63,9 @@ def __init__(self, contactFormInstance, request, *args, **kwargs):
5163
elif extraField.fieldType == 'IntegerField':
5264
self.fields[slugify(extraField.label)] = forms.IntegerField(label=extraField.label,
5365
initial=extraField.initial,
66+
widget=forms.TextInput(
67+
attrs={'placeholder': extraField.placeholder}
68+
),
5469
required=extraField.required)
5570
elif extraField.fieldType == 'DateField':
5671
self.fields[slugify(extraField.label)] = forms.DateField(label=extraField.label,
@@ -63,11 +78,16 @@ def __init__(self, contactFormInstance, request, *args, **kwargs):
6378
elif extraField.fieldType == 'IPAddressField':
6479
self.fields[slugify(extraField.label)] = forms.IPAddressField(label=extraField.label,
6580
initial=extraField.initial,
81+
widget=forms.TextInput(
82+
attrs={'placeholder': extraField.placeholder}
83+
),
6684
required=extraField.required)
6785
elif extraField.fieldType == 'auto_Textarea':
6886
self.fields[slugify(extraField.label)] = forms.CharField(label=extraField.label,
6987
initial=extraField.initial,
70-
widget=forms.Textarea,
88+
widget=forms.Textarea(
89+
attrs={'placeholder': extraField.placeholder}
90+
),
7191
required=extraField.required)
7292
elif extraField.fieldType == 'auto_hidden_input':
7393
self.fields[slugify(extraField.label)] = forms.CharField(label=extraField.label,
@@ -104,6 +124,9 @@ def __init__(self, contactFormInstance, request, *args, **kwargs):
104124
self.fields[slugify(extraField.label)] = forms.CharField(
105125
label=extraField.label,
106126
initial=extraField.initial,
127+
widget=forms.Textarea(
128+
attrs={'placeholder': extraField.placeholder}
129+
),
107130
required=extraField.required,
108131
validators=get_validators())
109132

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# -*- coding: utf-8 -*-
2+
from __future__ import unicode_literals
3+
4+
from django.db import migrations, models
5+
6+
7+
class Migration(migrations.Migration):
8+
9+
dependencies = [
10+
('cmsplugin_contact_plus', '0003_auto_20161102_1927'),
11+
]
12+
13+
operations = [
14+
migrations.AddField(
15+
model_name='extrafield',
16+
name='placeholder',
17+
field=models.CharField(max_length=250, null=True, verbose_name='Placeholder Value', blank=True),
18+
),
19+
migrations.AlterField(
20+
model_name='contactplus',
21+
name='recipient_email',
22+
field=models.EmailField(default=b'', max_length=254, verbose_name='Email of recipients'),
23+
),
24+
]

cmsplugin_contact_plus/models.py

+2
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,8 @@ class ExtraField(SortableMixin):
101101
fieldType = models.CharField(max_length=100, choices=FIELD_TYPE)
102102
initial = models.CharField(
103103
_('Inital Value'), max_length=250, blank=True, null=True)
104+
placeholder = models.CharField(
105+
_('Placeholder Value'), max_length=250, blank=True, null=True)
104106
required = models.BooleanField(
105107
_('Mandatory field'), default=True)
106108
widget = models.CharField(

0 commit comments

Comments
 (0)