mirror of
				https://github.com/fspc/workstand.git
				synced 2025-10-31 08:25:35 -04:00 
			
		
		
		
	Saner member sign-up!
This commit is contained in:
		
							parent
							
								
									9f0da06756
								
							
						
					
					
						commit
						f22f39f67f
					
				| @ -4,7 +4,7 @@ from registration.models import Member | ||||
| 
 | ||||
| 
 | ||||
| class MemberForm(ModelForm): | ||||
|     waiver_substitute = BooleanField(label='I have read and agree to the above terms & conditions.', widget=CheckboxInput(attrs={'class': 'mdl-checkbox__input'})) | ||||
|     waiver_substitute = BooleanField(required=False, label='I have read and agree to the above terms & conditions.', widget=CheckboxInput(attrs={'class': 'mdl-checkbox__input'})) | ||||
| 
 | ||||
|     class Meta: | ||||
|         model = Member | ||||
|  | ||||
| @ -2,16 +2,16 @@ | ||||
| {% load staticfiles %} | ||||
| 
 | ||||
| {% block styles %} | ||||
|     <link rel="stylesheet" href="{% static 'vendor/md-date-time-picker/dist/css/md-date-time-picker.min.css' %}"> | ||||
|     <link rel="stylesheet" href="{% static 'vendor/md-date-time-picker/dist/css/mdDateTimePicker.min.css' %}"> | ||||
| {% endblock %} | ||||
| 
 | ||||
| {% block scripts %} | ||||
|     <script src="{% static 'vendor/moment/min/moment.min.js' %}"></script> | ||||
|     <script src="{% static 'vendor/object.observe/dist/object-observe-lite.min.js' %}"></script> | ||||
|     <script src="{% static 'vendor/draggabilly/dist/draggabilly.pkgd.min.js' %}"></script> | ||||
|     <script src="{% static 'vendor/md-date-time-picker/dist/js/md-date-time-picker.js' %}"></script> | ||||
|     <script src="{% static 'vendor/md-date-time-picker/dist/js/mdDateTimePicker.min.js' %}"></script> | ||||
|     <script> | ||||
|     var dateOfBirth = new mdDateTimePicker({ | ||||
|     var dateOfBirth = new mdDateTimePicker.default({ | ||||
|         type: 'date', | ||||
|         past: moment().subtract(100, 'years') | ||||
|     }); | ||||
|  | ||||
| @ -2,16 +2,16 @@ | ||||
| {% load staticfiles %} | ||||
| 
 | ||||
| {% block styles %} | ||||
|     <link rel="stylesheet" href="{% static 'vendor/md-date-time-picker/dist/css/md-date-time-picker.min.css' %}"> | ||||
|     <link rel="stylesheet" href="{% static 'vendor/md-date-time-picker/dist/css/mdDateTimePicker.min.css' %}"> | ||||
| {% endblock %} | ||||
| 
 | ||||
| {% block scripts %} | ||||
|     <script src="{% static 'vendor/moment/min/moment.min.js' %}"></script> | ||||
|     <script src="{% static 'vendor/object.observe/dist/object-observe-lite.min.js' %}"></script> | ||||
|     <script src="{% static 'vendor/draggabilly/dist/draggabilly.pkgd.min.js' %}"></script> | ||||
|     <script src="{% static 'vendor/md-date-time-picker/dist/js/md-date-time-picker.js' %}"></script> | ||||
|     <script src="{% static 'vendor/md-date-time-picker/dist/js/mdDateTimePicker.min.js' %}"></script> | ||||
|     <script> | ||||
|     var dateOfBirth = new mdDateTimePicker({ | ||||
|     var dateOfBirth = new mdDateTimePicker.default({ | ||||
|         type: 'date', | ||||
|         past: moment().subtract(100, 'years') | ||||
|     }); | ||||
| @ -20,11 +20,11 @@ | ||||
|     }); | ||||
|     Object.observe(dateOfBirth, function(changes) { | ||||
|         var input = document.getElementById('{{ form.date_of_birth.id_for_label }}'); | ||||
|         input.value = dateOfBirth.time().format('YYYY-MM-DD'); | ||||
|         input.value = dateOfBirth.time.format('YYYY-MM-DD'); | ||||
|         input.parentNode.classList.add('is-dirty'); | ||||
| 
 | ||||
|         var threshold = moment.duration(18, 'years'); | ||||
|         var dob = dateOfBirth.time().clone(); | ||||
|         var dob = dateOfBirth.time.clone(); | ||||
| 
 | ||||
|         if (dob.add(threshold).isAfter(moment())) { | ||||
|             document.getElementById('{{ form.guardian_name.id_for_label }}').disabled = false; | ||||
| @ -75,7 +75,9 @@ | ||||
| 
 | ||||
|         {% if form.non_field_errors %} | ||||
|             <div> | ||||
|                 <span class="error">{{ form.errors }}</span> | ||||
|             {% for errors in form.non_field_errors %} | ||||
|                 <span class="mdl-textfield__error">{{ error }}</span> | ||||
|             {% endfor %} | ||||
|             </div> | ||||
|         {% endif %} | ||||
|         <div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label {% if form.email.errors %}is-invalid{% endif %}"> | ||||
|  | ||||
| @ -1,12 +1,13 @@ | ||||
| from django.shortcuts import get_object_or_404 | ||||
| from django.contrib import messages | ||||
| from django.http import HttpResponseRedirect | ||||
| from django.template.response import TemplateResponse | ||||
| from django.utils import timezone | ||||
| from django.views.generic import View | ||||
| from django.core.urlresolvers import reverse | ||||
| 
 | ||||
| from .forms import MemberForm | ||||
| from .models import Member | ||||
| import logging | ||||
| logger = logging.getLogger(__file__) | ||||
| logger = logging.getLogger('bikeshop') | ||||
| 
 | ||||
| 
 | ||||
| class MemberFormView(View): | ||||
| @ -17,18 +18,27 @@ class MemberFormView(View): | ||||
|             form = MemberForm(instance=member) | ||||
|         except Member.DoesNotExist: | ||||
|             form = MemberForm() | ||||
|             member = None | ||||
| 
 | ||||
|         context = dict(form=form) | ||||
|         if form.instance: | ||||
|         if member: | ||||
|             return TemplateResponse(request, 'edit_member_form.html', context=context) | ||||
|         return TemplateResponse(request, 'member_form.html', context=context) | ||||
| 
 | ||||
|     def post(self, request): | ||||
|         form = MemberForm(request.POST) | ||||
| 
 | ||||
|     def post(self, request, member_id=None): | ||||
|         try: | ||||
|             logger.debug(member_id) | ||||
|             member = Member.objects.get(id=member_id) | ||||
|             form = MemberForm(request.POST, instance=member) | ||||
|         except Member.DoesNotExist: | ||||
|             form = MemberForm(request.POST) | ||||
|         logger.debug(form) | ||||
|         if form.is_valid(): | ||||
|             form.save() | ||||
|             return TemplateResponse(request, 'member_created.html') | ||||
|             member_instance = form.save() | ||||
|             logger.debug(member_instance) | ||||
|             return HttpResponseRedirect(reverse('member_edit', kwargs=dict(member_id=member_instance.id))) | ||||
| 
 | ||||
|         logger.debug(form) | ||||
| 
 | ||||
|         context = {'form': form} | ||||
|         return TemplateResponse(request, 'member_form.html', context=context) | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user