# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.contrib import admin
from adminsortable2.admin import SortableAdminMixin, SortableInlineAdminMixin
from .models import *
from django.utils.html import format_html


# Функции фильтрации для массовой публикации/снятия с публикации новостей.
def all_post(modeladmin, reguest, queryset):
    for qs in queryset:
        print (qs.title)

def complete_post(modeladmin, reguest, queryset):
    queryset.update(active=True)
complete_post.short_description = 'Опубликовать новости'

def incomplete_post(modeladmin, reguest, queryset):
    queryset.update(active=False)
incomplete_post.short_description = 'Снять с публикации'

def duplicate_event(modeladmin, request, queryset):
    for object in queryset:
        object.id = None
        object.nomer_id = None
        object.slug = 1
        object.save()
        object.nomer_id = object.id
        object.slug = object.id
        object.save()

duplicate_event.short_description = "Сделать дубликат"
# ////////////////////////////////////////////


class Price_kosmeticAdmin(SortableAdminMixin, admin.ModelAdmin):
    fieldsets = [
        ('Основные настройки',        {'fields': ['name_block', 'name_stroka',  'time', 'price', 'url', 'knopka',  'active',]}),
        ('Объединение ячеек таблицы', {'fields': ['colspan1', 'rowspan1',  'colspan2', 'rowspan2', 'colspan3', 'rowspan3', 'colspan4', 'rowspan4',]}),
    ]
    list_display = ['name_block', 'nomer_id', 'knopka', "price",   "time", 'active',]
    list_display_links = ["name_block",]
    list_editable = [ "time", "price", 'active', 'knopka',]
    list_filter = ["active","created_at",]
    search_fields = ["name_block"]
    actions = [all_post, complete_post, incomplete_post, duplicate_event]


    class Meta:
        model = Price_kosmetic

# ////////////////////////////

class Price_nogtevoiAdmin(SortableAdminMixin, admin.ModelAdmin):
    fieldsets = [
        ('Основные настройки',        {'fields': ['name_block', 'name_stroka',  'time', 'price', 'url', 'knopka',  'active',]}),
        ('Объединение ячеек таблицы', {'fields': ['colspan1', 'rowspan1',  'colspan2', 'rowspan2', 'colspan3', 'rowspan3', 'colspan4', 'rowspan4',]}),
    ]
    list_display = ['name_block', 'nomer_id', 'knopka', "price",   "time", 'active',]
    list_display_links = ["name_block",]
    list_editable = [ "time", "price",  'active', 'knopka',]
    list_filter = ["active","created_at",]
    search_fields = ["name_block"]
    actions = [all_post, complete_post, incomplete_post, duplicate_event]


    class Meta:
        model = Price_nogtevoi

# ////////////////////////////

class Price_parihmaxerAdmin(SortableAdminMixin, admin.ModelAdmin):
    fieldsets = [
        ('Основные настройки',        {'fields': ['name_block', 'name_stroka',  'time', 'price', 'url', 'dopstolb', 'knopka',  'active',]}),
        ('Объединение ячеек таблицы', {'fields': ['colspan1', 'rowspan1',  'colspan2', 'rowspan2', 'colspan3', 'rowspan3', 'colspan4', 'rowspan4', 'colspan5', 'rowspan5',]}),
    ]
    list_display = ['name_block', 'nomer_id', 'knopka', "price",   "time",  'active',]
    list_display_links = ["name_block",]
    list_editable = [ "time", "price",  'active', 'knopka', ]
    list_filter = ["active","created_at",]
    search_fields = ["name_block"]
    actions = [all_post, complete_post, incomplete_post, duplicate_event]


    class Meta:
        model = Price_parihmaxer

# ////////////////////////////

class Price_kolariumAdmin(SortableAdminMixin, admin.ModelAdmin):
    fieldsets = [
        ('Основные настройки',        {'fields': ['name_block', 'name_stroka',  'time', 'price', 'url', 'knopka',   'active',]}),
        ('Объединение ячеек таблицы', {'fields': ['colspan1', 'rowspan1',  'colspan2', 'rowspan2', 'colspan3', 'rowspan3', 'colspan4', 'rowspan4',]}),
    ]
    list_display = ['name_block', 'nomer_id', 'knopka', "price",   "time",    'active',]
    list_display_links = ["name_block",]
    list_editable = [ "time", "price",  'active', 'knopka',]
    list_filter = ["active","created_at",]
    search_fields = ["name_block"]
    actions = [all_post, complete_post, incomplete_post, duplicate_event]


    class Meta:
        model = Price_kolarium


# ////////////////////////////

class Price_pagesAdmin(admin.ModelAdmin):
    fieldsets = [
        ('Основные настройки',        {'fields': ['name_block', 'price_slug',   'price_kosmetic', 'price_nogtevoi', 'price_parihmaxer', 'price_kolarium', 'template_name','active',]}),
        ('Сео оптимизация', {'fields': ['title_us', 'description',  'keywords',]}),
    ]
    list_display = ['name_block', "active",]
    list_display_links = ["name_block",]
    list_editable = ['active', ]
    list_filter = ["active","created_at",]
    search_fields = ["name_block"]
    actions = [all_post, complete_post, incomplete_post, duplicate_event]


    filter_horizontal = ( 'price_kosmetic', 'price_nogtevoi', 'price_parihmaxer', 'price_kolarium', )
    #автозаполнение slug
    prepopulated_fields = {"price_slug": ("name_block",)}



    class Meta:
        model = Price_pages

# ////////////////////////////

admin.site.register(Price_kosmetic, Price_kosmeticAdmin, )
admin.site.register(Price_nogtevoi, Price_nogtevoiAdmin, )
admin.site.register(Price_parihmaxer, Price_parihmaxerAdmin, )
admin.site.register(Price_kolarium, Price_kolariumAdmin, )
admin.site.register(Price_pages, Price_pagesAdmin, )