From 355a7b00fc4844ddedcebbfe6d720a5db19e9b93 Mon Sep 17 00:00:00 2001 From: Ivlev Denis Date: Tue, 20 Mar 2018 11:53:23 +0300 Subject: [PATCH] LIL-325. Show authors in main page --- api/v1/serializers/user.py | 1 + apps/user/admin.py | 2 +- .../migrations/0019_user_show_in_mainpage.py | 18 +++++ apps/user/models.py | 1 + project/templates/lilcity/main.html | 70 ++++--------------- project/views.py | 4 ++ 6 files changed, 38 insertions(+), 58 deletions(-) create mode 100644 apps/user/migrations/0019_user_show_in_mainpage.py diff --git a/api/v1/serializers/user.py b/api/v1/serializers/user.py index fe316cf5..f334e9a5 100644 --- a/api/v1/serializers/user.py +++ b/api/v1/serializers/user.py @@ -40,6 +40,7 @@ class UserSerializer(serializers.ModelSerializer): 'is_email_proved', 'photo', 'balance', + 'show_in_mainpage', ) read_only_fields = ( diff --git a/apps/user/admin.py b/apps/user/admin.py index 77d060dc..df3e01d9 100644 --- a/apps/user/admin.py +++ b/apps/user/admin.py @@ -15,7 +15,7 @@ class UserAdmin(BaseUserAdmin): (_('Personal info'), {'fields': ('first_name', 'last_name', 'email', 'gender', 'about', 'photo')}), ('Facebook Auth data', {'fields': ('fb_id', 'fb_data', 'is_email_proved')}), (_('Permissions'), {'fields': ('role', 'is_active', 'is_staff', 'is_superuser', - 'groups', 'user_permissions')}), + 'groups', 'user_permissions', 'show_in_mainpage')}), (_('Important dates'), {'fields': ('last_login', 'date_joined')}), ('Social urls', {'fields': ('instagram', 'facebook', 'twitter', 'pinterest', 'youtube', 'vkontakte', )}), ) diff --git a/apps/user/migrations/0019_user_show_in_mainpage.py b/apps/user/migrations/0019_user_show_in_mainpage.py new file mode 100644 index 00000000..e624bba1 --- /dev/null +++ b/apps/user/migrations/0019_user_show_in_mainpage.py @@ -0,0 +1,18 @@ +# Generated by Django 2.0.3 on 2018-03-20 08:40 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('user', '0018_user_phone'), + ] + + operations = [ + migrations.AddField( + model_name='user', + name='show_in_mainpage', + field=models.BooleanField(default=False, verbose_name='Показывать на главной странице'), + ), + ] diff --git a/apps/user/models.py b/apps/user/models.py index 57ec8cd2..058df6b6 100644 --- a/apps/user/models.py +++ b/apps/user/models.py @@ -55,6 +55,7 @@ class User(AbstractUser): 'Верифицирован по email', default=False ) photo = models.ImageField('Фото', null=True, blank=True, upload_to='users') + show_in_mainpage = models.BooleanField('Показывать на главной странице', default=False) USERNAME_FIELD = 'email' REQUIRED_FIELDS = ['username'] diff --git a/project/templates/lilcity/main.html b/project/templates/lilcity/main.html index f0af1cd6..4b2623fd 100644 --- a/project/templates/lilcity/main.html +++ b/project/templates/lilcity/main.html @@ -270,74 +270,30 @@
+ {% for author in authors %}
+ {% if author.photo %} + + {% else %} + {% endif %}
-
Саша Крю, +
{{ author.get_full_name }}, #lil_персонаж
-
@sashakru
+ {% if author.instagram %} +
{{ author.instagram }}
+ {% endif %} + {% if author.about %}
-

Закончила ПХУ им К.А.Савицкого художник театра и кино. Работала с крупнейшими российскими и зарубежными - издательствами.

-

Участник и победитель международных выставок.

-

Основатель компании "Lil City".

-
-
-
-
-
- -
-
-
Саша Крю, - #lil_персонаж -
-
@sashakru
-
-

Закончила ПХУ им К.А.Савицкого художник театра и кино. Работала с крупнейшими российскими и зарубежными - издательствами.

-

Участник и победитель международных выставок.

-

Основатель компании "Lil City".

-
-
-
-
-
- -
-
-
Саша Крю, - #lil_персонаж -
-
@sashakru
-
-

Закончила ПХУ им К.А.Савицкого художник театра и кино. Работала с крупнейшими российскими и зарубежными - издательствами.

-

Участник и победитель международных выставок.

-

Основатель компании "Lil City".

-
-
-
-
-
- -
-
-
Саша Крю, - #lil_персонаж -
-
@sashakru
-
-

Закончила ПХУ им К.А.Савицкого художник театра и кино. Работала с крупнейшими российскими и зарубежными - издательствами.

-

Участник и победитель международных выставок.

-

Основатель компании "Lil City".

+ {{ author.about }}
+ {% endif %}
+ {% endfor %}
Если хотите к нам в команду, то отправьте нам заявку
diff --git a/project/views.py b/project/views.py index fcedb726..035a5962 100644 --- a/project/views.py +++ b/project/views.py @@ -1,8 +1,11 @@ from django.views.generic import TemplateView +from django.contrib.auth import get_user_model from apps.course.models import Course from apps.school.models import SchoolSchedule +User = get_user_model() + class IndexView(TemplateView): template_name = 'templates/lilcity/main.html' @@ -12,6 +15,7 @@ class IndexView(TemplateView): context.update({ 'course_items': Course.objects.filter(status=Course.PUBLISHED)[:3], 'school_schedules': SchoolSchedule.objects.all(), + 'authors': User.objects.filter(role=User.AUTHOR_ROLE, show_in_mainpage=True), }) return context