trying to fix problem with contact us form

remotes/origin/ESHOP_deployment
FUNNYDMAN 7 years ago
parent 289eecb57e
commit d22034f02e
  1. 21
      eshop/accounts_ext/fixtures/accounts.json
  2. 2
      eshop/accounts_ext/views.py
  3. 1
      eshop/cart/urls.py
  4. 5
      eshop/contact_us/admin.py
  5. 20
      eshop/contact_us/forms.py
  6. 1
      eshop/contact_us/tests.py
  7. 1
      eshop/contact_us/views.py
  8. 3
      eshop/core/admin.py
  9. 1
      eshop/core/context_processors.py
  10. 2
      eshop/core/management/commands/clean_deleted.py
  11. 1
      eshop/core/management/commands/clearcache.py
  12. 1
      eshop/core/templatetags/core_filters.py
  13. 4
      eshop/core/views.py
  14. 5
      eshop/eshop_project/settings/production.py
  15. 1
      eshop/products/views.py

@ -1 +1,20 @@
[{"model": "accounts_ext.user", "pk": 1, "fields": {"password": "pbkdf2_sha256$100000$AAP4DpqYKrFB$mQRKz7qi/1va3Zoh2O3g9j7wYKCBaMLz5LFrbszDNLA=", "last_login": "2018-08-12T20:46:54Z", "create_at": "2018-08-12T20:46:44.961Z", "updated_at": "2018-08-12T20:47:05.733Z", "status": 25, "is_superuser": true, "username": "dimkasp", "email": "dimkasp@mail.ru", "referral_user": null, "confirmed_at": null, "groups": [], "user_permissions": []}}] [
{
"model": "accounts_ext.user",
"pk": 1,
"fields": {
"password": "pbkdf2_sha256$100000$AAP4DpqYKrFB$mQRKz7qi/1va3Zoh2O3g9j7wYKCBaMLz5LFrbszDNLA=",
"last_login": "2018-08-12T20:46:54Z",
"create_at": "2018-08-12T20:46:44.961Z",
"updated_at": "2018-08-12T20:47:05.733Z",
"status": 25,
"is_superuser": true,
"username": "dimkasp",
"email": "dimkasp@mail.ru",
"referral_user": null,
"confirmed_at": null,
"groups": [],
"user_permissions": []
}
}
]

@ -28,8 +28,6 @@ from .forms import (
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
# Create your views here.
class LoginView(LoginViewBase): class LoginView(LoginViewBase):
redirect_field_name = 'next' redirect_field_name = 'next'
form_class = AuthenticationForm form_class = AuthenticationForm

@ -1,4 +1,3 @@
from django.conf.urls import url
from django.urls import re_path from django.urls import re_path
from . import views from . import views

@ -6,6 +6,7 @@ from core import admin as CoreAdmin
from .models import Request from .models import Request
@admin.register(Request) @admin.register(Request)
class ContactUsAdmin(CoreAdmin.SafeModelAdmin): class ContactUsAdmin(CoreAdmin.SafeModelAdmin):
list_filter = ( list_filter = (
@ -13,5 +14,5 @@ class ContactUsAdmin(CoreAdmin.SafeModelAdmin):
('create_at', DateRangeFilter), ('create_at', DateRangeFilter),
('updated_at', DateTimeRangeFilter), ('updated_at', DateTimeRangeFilter),
) )
search_fields = ('email','subject','phone') search_fields = ('email', 'subject', 'phone')
list_display = ('email','subject','phone', 'status') list_display = ('email', 'subject', 'phone', 'status')

@ -1,5 +1,5 @@
from crispy_forms.helper import FormHelper from crispy_forms.helper import FormHelper
from crispy_forms.layout import Layout, HTML, Field, Submit, Hidden from crispy_forms.layout import Layout, Field, Submit, Hidden
from django import forms from django import forms
from django.conf import settings from django.conf import settings
@ -11,11 +11,11 @@ from .models import (
Request, STATUS_NEW Request, STATUS_NEW
) )
# -------------------------------- Client-side forms -----------------------------------# # -------------------------------- Client-side forms -----------------------------------#
class ContactUsForm(RequestNotifiable, forms.ModelForm): class ContactUsForm(RequestNotifiable, forms.ModelForm):
field_template = 'bootstrap/forms/contact_us.html' field_template = 'bootstrap/forms/contact_us.html'
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
@ -27,12 +27,15 @@ class ContactUsForm(RequestNotifiable, forms.ModelForm):
self.helper.form_action = reverse_lazy('contact_us:send') self.helper.form_action = reverse_lazy('contact_us:send')
self.helper.form_method = 'post' self.helper.form_method = 'post'
self.helper.layout = Layout( self.helper.layout = Layout(
Hidden('next', reverse_lazy(self.next) if not self.next_kwargs else reverse_lazy(self.next, kwargs=self.next_kwargs)), Hidden('next', reverse_lazy(self.next) if not self.next_kwargs else reverse_lazy(self.next,
Field('name', css_class=self.field_css+"__text", placeholder=_("Имя"), template=self.field_template), kwargs=self.next_kwargs)),
Field('email', css_class=self.field_css+"__text", placeholder=_("Email"), template=self.field_template), Field('name', css_class=self.field_css + "__text", placeholder=_("Имя"), template=self.field_template),
Field('subject', css_class=self.field_css+"__text", placeholder=_("Название продукта"), template=self.field_template), Field('email', css_class=self.field_css + "__text", placeholder=_("Email"), template=self.field_template),
Field('phone', css_class=self.field_css+"__text", placeholder=_("+79781234567"), template=self.field_template), Field('subject', css_class=self.field_css + "__text", placeholder=_("Название продукта"),
Submit('send', _("Отправить"), css_class=self.field_css+"__btn") template=self.field_template),
Field('phone', css_class=self.field_css + "__text", placeholder=_("+79781234567"),
template=self.field_template),
Submit('send', _("Отправить"), css_class=self.field_css + "__btn")
) )
super(ContactUsForm, self).__init__(*args, **kwargs) super(ContactUsForm, self).__init__(*args, **kwargs)
self.init_fields(self.fields) self.init_fields(self.fields)
@ -66,7 +69,6 @@ class ContactUsForm(RequestNotifiable, forms.ModelForm):
context, context,
) )
class Meta: class Meta:
model = Request model = Request
fields = ('name', 'email', 'subject', 'phone',) fields = ('name', 'email', 'subject', 'phone',)

@ -5,7 +5,6 @@ from core.tests import BehaviourTestCaseMixin
from .models import Request from .models import Request
# Create your tests here.
class SendRequestWithTestCase(BehaviourTestCaseMixin, TestCase): class SendRequestWithTestCase(BehaviourTestCaseMixin, TestCase):
model = Request model = Request

@ -11,7 +11,6 @@ from .forms import ContactUsForm
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
# Create your views here.
class ContactUsFormView(SuccessMessageMixin, FormView): class ContactUsFormView(SuccessMessageMixin, FormView):
next = None next = None
template_name = None template_name = None

@ -117,7 +117,7 @@ class SafeModelAdmin(admin.ModelAdmin):
@admin.register(Certificate) @admin.register(Certificate)
class CertAdmin(SafeModelAdmin): class CertAdmin(SafeModelAdmin):
list_display = ('name','image', 'status') list_display = ('name', 'image', 'status')
search_fields = ('name',) search_fields = ('name',)
list_filter = ('status',) list_filter = ('status',)
@ -135,4 +135,3 @@ class CurrencyAdmin(admin.ModelAdmin):
('create_at', DateRangeFilter), ('updated_at', DateTimeRangeFilter) ('create_at', DateRangeFilter), ('updated_at', DateTimeRangeFilter)
) )
search_fields = ('name', 'code', 'sign') search_fields = ('name', 'code', 'sign')

@ -31,6 +31,5 @@ def _product_breadcrumbs(request):
return breadcrumb return breadcrumb
def _news_breadcrumbs(request): def _news_breadcrumbs(request):
pass pass

@ -1,4 +1,4 @@
from django.core.management.base import BaseCommand, CommandError from django.core.management.base import BaseCommand
import django.apps import django.apps
from core.models import AbstractStatusModel from core.models import AbstractStatusModel

@ -1,6 +1,7 @@
from django.core.management.base import BaseCommand from django.core.management.base import BaseCommand
from django.core.cache import cache from django.core.cache import cache
class Command(BaseCommand): class Command(BaseCommand):
def handle(self, *args, **kwargs): def handle(self, *args, **kwargs):
cache.clear() cache.clear()

@ -2,6 +2,7 @@ from django.template import Library
register = Library() register = Library()
@register.filter @register.filter
def get_item(dictionary, key): def get_item(dictionary, key):
return dictionary.get(key) return dictionary.get(key)

@ -1,6 +1,5 @@
from django.contrib.auth.mixins import LoginRequiredMixin from django.contrib.auth.mixins import LoginRequiredMixin
# Create your views here.
from django.views import View from django.views import View
from django.views.generic import TemplateView, ListView, DetailView, FormView from django.views.generic import TemplateView, ListView, DetailView, FormView
from django.views.generic.edit import BaseFormView from django.views.generic.edit import BaseFormView
@ -25,9 +24,11 @@ class ProtectedDetailView(LoginRequiredMixin, DetailView):
class ProtectedFormView(LoginRequiredMixin, FormView): class ProtectedFormView(LoginRequiredMixin, FormView):
pass pass
class ProtectedBaseFormView(LoginRequiredMixin, BaseFormView): class ProtectedBaseFormView(LoginRequiredMixin, BaseFormView):
pass pass
class Handler404View(TemplateView): class Handler404View(TemplateView):
template_name = '404.html' template_name = '404.html'
@ -39,5 +40,6 @@ class Handler500View(TemplateView):
class Handler403View(TemplateView): class Handler403View(TemplateView):
template_name = '403.html' template_name = '403.html'
class Handler400View(TemplateView): class Handler400View(TemplateView):
template_name = '400.html' template_name = '400.html'

@ -1,4 +1,7 @@
from .base import * try:
from .base import *
except ImportError:
raise ImportError("Oops,can't find base settings")
# Email user settings # Email user settings
ADMINS = ( ADMINS = (

@ -42,7 +42,6 @@ class ProductListView(ListView):
category_slug = parse_path(self.kwargs.get('path')) category_slug = parse_path(self.kwargs.get('path'))
cat_qs = ProductCategory.objects.filter(slug=category_slug) cat_qs = ProductCategory.objects.filter(slug=category_slug)
qs = qs.filter(parent_id__in=cat_qs.get_descendants(include_self=True)) qs = qs.filter(parent_id__in=cat_qs.get_descendants(include_self=True))
print(qs)
# TODO understand why there are some filtering queries # TODO understand why there are some filtering queries
# if self.request.GET.get('name'): # if self.request.GET.get('name'):
# qs = qs.filter(name__icontains=self.request.GET.get('name')) # qs = qs.filter(name__icontains=self.request.GET.get('name'))

Loading…
Cancel
Save