diff --git a/flatpages_ext/__init__.py b/flatpages_ext/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/flatpages_ext/admin.py b/flatpages_ext/admin.py new file mode 100644 index 0000000..0f35232 --- /dev/null +++ b/flatpages_ext/admin.py @@ -0,0 +1,15 @@ +from django.contrib import admin +from .models import * + +# Register your models here. + +class SubscriberAdmin(admin.ModelAdmin): + + list_display = [field.name for field in Subscriber._meta.fields] + list_filter = ['name'] + search_fields = ['name', 'email'] + + class Meta: + model = Subscriber + +admin.site.register(Subscriber, SubscriberAdmin) \ No newline at end of file diff --git a/flatpages_ext/apps.py b/flatpages_ext/apps.py new file mode 100644 index 0000000..a9c0935 --- /dev/null +++ b/flatpages_ext/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class LandingConfig(AppConfig): + name = 'flatpages_ext' diff --git a/flatpages_ext/forms.py b/flatpages_ext/forms.py new file mode 100644 index 0000000..3c87991 --- /dev/null +++ b/flatpages_ext/forms.py @@ -0,0 +1,8 @@ +from django import forms +from .models import * + +class SubscriberForm(forms.ModelForm): + + class Meta: + model = Subscriber + exclude = [""] \ No newline at end of file diff --git a/flatpages_ext/models.py b/flatpages_ext/models.py new file mode 100644 index 0000000..a395b1d --- /dev/null +++ b/flatpages_ext/models.py @@ -0,0 +1,16 @@ +from django.db import models + +# Create your models here. +class Subscriber(models.Model): + email = models.EmailField() + name = models.CharField(max_length=128) + + class Meta: + verbose_name = 'MySubsciber' + verbose_name_plural = 'List of Subscribers' + + def __str__(self): + try: + return self.name + except: + return '{0!s}'.format(self.id) \ No newline at end of file diff --git a/flatpages_ext/tests.py b/flatpages_ext/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/flatpages_ext/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/flatpages_ext/urls.py b/flatpages_ext/urls.py new file mode 100644 index 0000000..545e406 --- /dev/null +++ b/flatpages_ext/urls.py @@ -0,0 +1,7 @@ +from django.conf.urls import url +from . import views + +urlpatterns = [ + url(r'^', views.landing, name='landing'), + #url(r'^$', views.home, name='home'), +] \ No newline at end of file diff --git a/flatpages_ext/views.py b/flatpages_ext/views.py new file mode 100644 index 0000000..e2c7bd4 --- /dev/null +++ b/flatpages_ext/views.py @@ -0,0 +1,21 @@ +from django.shortcuts import render +from .forms import SubscriberForm +from django.contrib import auth +from products.models import * + +def landing(request): + form = SubscriberForm(request.POST or None) + + if request.method == "POST" and form.is_valid(): + print(form.cleaned_data) + form.save() + + return render(request, 'landing/landing.html', locals()) + + +def home(request): + product_images = ProductImage.objects.filter(is_active=True, is_main=True, product__is_active=True) + product_images_phones = product_images.filter(product__category__id=1) + product_images_watches = product_images.filter(product__category__id=2) + username = auth.get_user(request).username + return render(request, 'landing/home.html', locals())