Commit df395272114dee825c5ed7e8aef33e159b0bf1e3
1 parent
8d79ffd1
Exists in
master
and in
5 other branches
Git pull #212
Showing
3 changed files
with
32 additions
and
11 deletions
Show diff stats
app/admin.py
app/forms.py
| @@ -4,10 +4,15 @@ from django.utils.translation import ugettext_lazy as _ | @@ -4,10 +4,15 @@ from django.utils.translation import ugettext_lazy as _ | ||
| 4 | 4 | ||
| 5 | class EmailBackendForm(forms.ModelForm): | 5 | class EmailBackendForm(forms.ModelForm): |
| 6 | 6 | ||
| 7 | - class Meta: | ||
| 8 | - model = EmailBackend | ||
| 9 | - fields = ('description', 'host', 'port', 'username', 'password', 'safe_conection', 'default_from_email') | ||
| 10 | - help_texts = { | 7 | + def save(self, commit=True): |
| 8 | + super(EmailBackendForm, self).save() | ||
| 9 | + print('Saved') | ||
| 10 | + return self.instance | ||
| 11 | + | ||
| 12 | + class Meta: | ||
| 13 | + model = EmailBackend | ||
| 14 | + fields = ('description', 'host', 'port', 'username', 'password', 'safe_conection', 'default_from_email') | ||
| 15 | + help_texts = { | ||
| 11 | 'host': _('A host name. Example: smtp.gmail.com'), | 16 | 'host': _('A host name. Example: smtp.gmail.com'), |
| 12 | 'port': _('A port number'), | 17 | 'port': _('A port number'), |
| 13 | 'usermane': _('Your host username'), | 18 | 'usermane': _('Your host username'), |
app/views.py
| 1 | +from django.utils.translation import ugettext_lazy as _ | ||
| 1 | from django.shortcuts import render | 2 | from django.shortcuts import render |
| 2 | from django.views.generic import ListView | 3 | from django.views.generic import ListView |
| 3 | -from django.views import View | 4 | +from django.views import View, generic |
| 4 | from rolepermissions.mixins import HasRoleMixin | 5 | from rolepermissions.mixins import HasRoleMixin |
| 5 | from django.contrib.auth.mixins import LoginRequiredMixin | 6 | from django.contrib.auth.mixins import LoginRequiredMixin |
| 6 | from django.core.urlresolvers import reverse_lazy | 7 | from django.core.urlresolvers import reverse_lazy |
| @@ -43,20 +44,33 @@ class AppIndex(LoginRequiredMixin, ListView, NotificationMixin): | @@ -43,20 +44,33 @@ class AppIndex(LoginRequiredMixin, ListView, NotificationMixin): | ||
| 43 | 44 | ||
| 44 | return self.response_class(request = self.request, template = self.template_name, context = context, using = self.template_engine, **response_kwargs) | 45 | return self.response_class(request = self.request, template = self.template_name, context = context, using = self.template_engine, **response_kwargs) |
| 45 | 46 | ||
| 46 | -class AmadeusSettings(LoginRequiredMixin, HasRoleMixin, View): | 47 | +class AmadeusSettings(LoginRequiredMixin, HasRoleMixin, generic.CreateView): |
| 47 | allowed_roles = ['system_admin'] | 48 | allowed_roles = ['system_admin'] |
| 48 | login_url = reverse_lazy("core:home") | 49 | login_url = reverse_lazy("core:home") |
| 49 | - redirect_field_name = 'next' | ||
| 50 | model = EmailBackend | 50 | model = EmailBackend |
| 51 | template_name = 'admin_settings.html' | 51 | template_name = 'admin_settings.html' |
| 52 | form_class = EmailBackendForm | 52 | form_class = EmailBackendForm |
| 53 | success_url = reverse_lazy('app:settings') | 53 | success_url = reverse_lazy('app:settings') |
| 54 | 54 | ||
| 55 | - def get_object(self): | ||
| 56 | - pass | 55 | + def form_invalid(self, form): |
| 56 | + print('iNVALID') | ||
| 57 | + return self.render_to_response(self.get_context_data(form=form)) | ||
| 58 | + | ||
| 59 | + def form_valid(self, form): | ||
| 60 | + self.object = form.save() | ||
| 61 | + print('Save') | ||
| 62 | + messages.success(self.request, _('Changes saved')) | ||
| 63 | + | ||
| 64 | + return super(AmadeusSettings, self).form_valid(form) | ||
| 57 | 65 | ||
| 58 | - def get(self, request): | ||
| 59 | - return render(request, self.template_name) | 66 | + def get_context_data(self, **kwargs): |
| 67 | + context = super(AmadeusSettings, self).get_context_data(**kwargs) | ||
| 68 | + try: | ||
| 69 | + setting = EmailBackend.objects.latest('id') | ||
| 70 | + context['form'] = EmailBackendForm(instance = setting) | ||
| 71 | + except: | ||
| 72 | + context['form'] = EmailBackendForm() | ||
| 73 | + return context | ||
| 60 | 74 | ||
| 61 | 75 | ||
| 62 | 76 |