Updates
This commit is contained in:
		
					parent
					
						
							
								409405f296
							
						
					
				
			
			
				commit
				
					
						73c53a7a61
					
				
			
		
					 3 changed files with 31 additions and 7 deletions
				
			
		| 
						 | 
					@ -1,19 +1,30 @@
 | 
				
			||||||
from django import forms
 | 
					from django import forms
 | 
				
			||||||
from django.utils.translation import ugettext_lazy as _
 | 
					from django.utils.translation import ugettext_lazy as _
 | 
				
			||||||
from datacenterlight.utils import get_ip_address
 | 
					from datacenterlight.utils import get_ip_address
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import logging
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from .models import ContactUs
 | 
					from .models import ContactUs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import ipaddress
 | 
					import ipaddress
 | 
				
			||||||
 | 
					logger = logging.getLogger(__name__)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class ContactForm(forms.ModelForm):
 | 
					class ContactForm(forms.ModelForm):
 | 
				
			||||||
    class Meta:
 | 
					    class Meta:
 | 
				
			||||||
        fields = ['name', 'email', 'message', 'ip_address']
 | 
					        fields = ['name', 'email', 'message', 'ip_address']
 | 
				
			||||||
        model = ContactUs
 | 
					        model = ContactUs
 | 
				
			||||||
 | 
					        labels = {
 | 
				
			||||||
 | 
					            "ip_address": _("You are requesting this website from "
 | 
				
			||||||
 | 
					                            "{{ip_address}}. Enter 'IPv{{v4v6}}':".format(
 | 
				
			||||||
 | 
					                                ip_address='test', v4v6='4'
 | 
				
			||||||
 | 
					                            ))
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def __init__(self, *args, **kwargs):
 | 
					    def __init__(self, *args, **kwargs):
 | 
				
			||||||
        self.request = kwargs.pop('request', None)
 | 
					        self.request = kwargs.pop('request', None)
 | 
				
			||||||
        super(ContactForm, self).__init__(*args, **kwargs)
 | 
					        super(ContactForm, self).__init__(*args, **kwargs)
 | 
				
			||||||
 | 
					        self.fields['ip_address'] = forms.CharField(required=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def clean_ip_address(self):
 | 
					    def clean_ip_address(self):
 | 
				
			||||||
        input_ip_address_text = self.cleaned_data.get('ip_address')
 | 
					        input_ip_address_text = self.cleaned_data.get('ip_address')
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -26,7 +26,7 @@
 | 
				
			||||||
        <div class="form-group">
 | 
					        <div class="form-group">
 | 
				
			||||||
            <label class="control-label col-sm-2" for="name">{% trans "Name" %}</label>
 | 
					            <label class="control-label col-sm-2" for="name">{% trans "Name" %}</label>
 | 
				
			||||||
            <div class="col-sm-10">
 | 
					            <div class="col-sm-10">
 | 
				
			||||||
                <input id="name" type="text" name="name" class="form-control" data-minlength="3" data-error="{% trans 'Please enter your name.' %}" required>
 | 
					                <input id="name" type="text" name="name" class="form-control" data-minlength="3" data-error="{% trans 'Please enter your name.' %}" required value="{{contact_form.name.value}}">
 | 
				
			||||||
                <div class="help-block with-errors"></div>
 | 
					                <div class="help-block with-errors"></div>
 | 
				
			||||||
                {{contact_form.name.errors}}
 | 
					                {{contact_form.name.errors}}
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
| 
						 | 
					@ -34,7 +34,7 @@
 | 
				
			||||||
        <div class="form-group">
 | 
					        <div class="form-group">
 | 
				
			||||||
            <label class="control-label col-sm-2" for="email">{% trans "Email" %}</label>
 | 
					            <label class="control-label col-sm-2" for="email">{% trans "Email" %}</label>
 | 
				
			||||||
            <div class="col-sm-10">
 | 
					            <div class="col-sm-10">
 | 
				
			||||||
                <input name="email" type="email" id="email" pattern="^[^@\s]+@([^@\s]+\.)+[^@\s]+$" class="form-control" data-error="{% trans 'Please enter a valid email address.' %}" required>
 | 
					                <input name="email" type="email" id="email" pattern="^[^@\s]+@([^@\s]+\.)+[^@\s]+$" class="form-control" data-error="{% trans 'Please enter a valid email address.' %}" required value="{{contact_form.email.value}}">
 | 
				
			||||||
                <div class="help-block with-errors"></div>
 | 
					                <div class="help-block with-errors"></div>
 | 
				
			||||||
                {{contact_form.email.errors}}
 | 
					                {{contact_form.email.errors}}
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
| 
						 | 
					@ -42,18 +42,17 @@
 | 
				
			||||||
        <div class="form-group">
 | 
					        <div class="form-group">
 | 
				
			||||||
            <label class="control-label col-sm-2" for="message">{% trans "Message" %}</label>
 | 
					            <label class="control-label col-sm-2" for="message">{% trans "Message" %}</label>
 | 
				
			||||||
            <div class="col-sm-10">
 | 
					            <div class="col-sm-10">
 | 
				
			||||||
                <textarea class="form-control" name="message" id="message" rows="6" required></textarea>
 | 
					                <textarea class="form-control" name="message" id="message" rows="6" required>{{contact_form.message.value}}</textarea>
 | 
				
			||||||
                <div class="help-block with-errors"></div>
 | 
					                <div class="help-block with-errors"></div>
 | 
				
			||||||
                {{contact_form.message.errors}}
 | 
					                {{contact_form.message.errors}}
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
        <div class="row"><div class="col-sm-2"> </div><div class="col-sm-10">{{ ip_address_label_title }}</div></div>
 | 
					        <div class="row"><div class="col-sm-2"> </div><div class="col-sm-10">{{ ip_address_label_title }}{{contact_form.message.errors}}</div></div>
 | 
				
			||||||
        <div class="form-group">
 | 
					        <div class="form-group">
 | 
				
			||||||
            <label class="control-label col-sm-2" for="ip_address" style="white-space: nowrap;" >{{ ip_address_label }}</label>
 | 
					            <label class="control-label col-sm-2" for="ip_address" style="white-space: nowrap;" >{{ ip_address_label }}</label>
 | 
				
			||||||
            <div class="col-sm-10">
 | 
					            <div class="col-sm-10">
 | 
				
			||||||
                <input name="ip_address" id="ip_address" type="text" class="form-control"data-error="{% trans 'Please enter the text IPv4 or IPv6 based on your IP address.' %}" required>
 | 
					                <input name="ip_address" id="ip_address" type="text" class="form-control"data-error="{% trans 'Please enter the text IPv4 or IPv6 based on your IP address.' %}" required value="{{contact_form.ip_address.value}}">
 | 
				
			||||||
                <div class="help-block with-errors"></div>
 | 
					                <div class="help-block with-errors">{{contact_form.ip_address.errors}}</div>
 | 
				
			||||||
                {{contact_form.ip_address.errors}}
 | 
					 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
        <div class="form-group">
 | 
					        <div class="form-group">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -59,6 +59,20 @@ class ContactUsView(FormView):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def form_invalid(self, form):
 | 
					    def form_invalid(self, form):
 | 
				
			||||||
        if self.request.is_ajax():
 | 
					        if self.request.is_ajax():
 | 
				
			||||||
 | 
					            logger.debug(form)
 | 
				
			||||||
 | 
					            # request_ip_address = get_ip_address(self.request)
 | 
				
			||||||
 | 
					            # request_v4v6 = ''
 | 
				
			||||||
 | 
					            # if (type(ipaddress.ip_address(request_ip_address)) ==
 | 
				
			||||||
 | 
					            #         ipaddress.IPv4Address):
 | 
				
			||||||
 | 
					            #     request_v4v6 = 'IPv4'
 | 
				
			||||||
 | 
					            # elif (type(ipaddress.ip_address(request_ip_address)) ==
 | 
				
			||||||
 | 
					            #       ipaddress.IPv6Address):
 | 
				
			||||||
 | 
					            #     request_v4v6 = 'IPv6'
 | 
				
			||||||
 | 
					            # context['ip_address_label_title'] = _(
 | 
				
			||||||
 | 
					            #     "You are requesting this website from "
 | 
				
			||||||
 | 
					            #     "{ip_address}.".format(ip_address=request_ip_address))
 | 
				
			||||||
 | 
					            # context['ip_address_label'] = _(
 | 
				
			||||||
 | 
					            #     "Enter '{v4v6}':".format(v4v6=request_v4v6))
 | 
				
			||||||
            return self.render_to_response(
 | 
					            return self.render_to_response(
 | 
				
			||||||
                self.get_context_data(contact_form=form))
 | 
					                self.get_context_data(contact_form=form))
 | 
				
			||||||
        else:
 | 
					        else:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue