From c37420c386ec2d361f178918f0df825f3bf3cc15 Mon Sep 17 00:00:00 2001 From: "Denis V. Dedkov" Date: Fri, 19 Jun 2015 18:42:54 +0500 Subject: [PATCH 1/5] =?UTF-8?q?=D0=A2=D0=B5=D0=BA=D1=81=D1=82=20=D0=BF?= =?UTF-8?q?=D1=80=D0=B8=20=D0=BE=D1=82=D1=81=D1=83=D1=82=D1=81=D1=82=D0=B2?= =?UTF-8?q?=D0=B8=D0=B8=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Добавил для всех таблиц текст при отсутствии данных --- asuzr/tables.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/asuzr/tables.py b/asuzr/tables.py index f1dd9f4..0378764 100644 --- a/asuzr/tables.py +++ b/asuzr/tables.py @@ -64,6 +64,7 @@ class OrdersTable(tables.Table): class Meta: model = Order + empty_text = 'Незавершенных заказов нет' attrs = {'class': 'paleblue'} sequence = ('date', 'deadline', @@ -99,9 +100,7 @@ class DesignerTable(tables.Table): return '%0.1f' % value class Meta: - attrs = {'class': 'paleblue'} - - class Meta: + empty_text = 'Заказов за этот период не было' attrs = {'class': 'paleblue'} class SketchesTable(tables.Table): @@ -114,6 +113,7 @@ class SketchesTable(tables.Table): (reverse('asuzr.views.delete_sketch'), escape(record.id))) class Meta: + empty_text = 'Эскизов для этого заказа пока нет' attrs = {'class': 'paleblue'} class VisitTable(tables.Table): @@ -158,6 +158,7 @@ class DayOrdersTable(OrdersTable): return ' '.join((value.first_name, value.last_name)) class Meta: + empty_text = 'Заказов для этого дня нет' attrs = {'class': 'paleblue'} exclude = ('date', 'delivery', From 66abc18dbf6117fe72ce77bbc0de2b160cf82041 Mon Sep 17 00:00:00 2001 From: "Denis V. Dedkov" Date: Fri, 19 Jun 2015 19:51:02 +0500 Subject: [PATCH 2/5] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D1=83=20=D1=81=20=D0=BD?= =?UTF-8?q?=D0=B0=D1=81=D0=BB=D0=B5=D0=B4=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=D0=BC=20=D0=BA=D0=BB=D0=B0=D1=81=D1=81=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- asuzr/tables.py | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/asuzr/tables.py b/asuzr/tables.py index 0378764..60c94fb 100644 --- a/asuzr/tables.py +++ b/asuzr/tables.py @@ -8,7 +8,6 @@ from models import * class EditableColumn(tables.TemplateColumn): def __init__(self, field_name, object_name = '', *args, **kwargs): - super(tables.TemplateColumn, self).__init__(*args, **kwargs) template = ''' {{{{% load inplace_edit %}}}} @@ -26,12 +25,25 @@ class EditableColumn(tables.TemplateColumn): {{% endif %}} ''' template = template.format(main_part = main_part) - - self.template_code = template.format(field = field_name, object_name = object_name) + template = template.format(field = field_name, object_name = object_name) + + super(EditableColumn, self).__init__(template, *args, **kwargs) + +class ColoredEditableColumn(EditableColumn): + def __init__(self, field_name, object_name = '', condition_field = None, *args, **kwargs): + super(ColoredEditableColumn, self).__init__(field_name, object_name, *args, **kwargs) + self.condition_field = condition_field + + def render(self, record, **kwargs): + if self.condition_field != None and eval('record.%s' % self.condition_field): + self.attrs = {'th': {'bgcolor': '#FFE4E1'}} + else: + self.attrs = {} + + return super(ColoredEditableColumn, self).render(record, **kwargs) class ThumbnailColumn(tables.TemplateColumn): def __init__(self, field_name, *args, **kwargs): - super(tables.TemplateColumn, self).__init__(*args, **kwargs) template = ''' {{% load thumbnail %}} @@ -39,7 +51,7 @@ class ThumbnailColumn(tables.TemplateColumn): {{% endthumbnail %}} '''.format(field = field_name) - self.template_code = template + super(ThumbnailColumn, self).__init__(template, *args, **kwargs) class OrdersTable(tables.Table): date = tables.DateColumn('d/m/Y', verbose_name = 'Дата') @@ -82,7 +94,7 @@ class OrdersTable(tables.Table): exclude = ('id', 'calls', 'contact', 'phone_num', 'cancelled', 'designer', ) class ArchiveOrdersTable(OrdersTable): - calls = EditableColumn('calls', verbose_name = 'Обзвон') + calls = ColoredEditableColumn('calls', condition_field = 'calls_color', verbose_name = 'Обзвон') class Meta: attrs = {'class': 'paleblue'} From 5777104eb74eb66248c5405150190f7a02712f27 Mon Sep 17 00:00:00 2001 From: "Denis V. Dedkov" Date: Fri, 19 Jun 2015 19:58:23 +0500 Subject: [PATCH 3/5] =?UTF-8?q?=D0=9F=D0=BE=D0=B4=D1=81=D0=B2=D0=B5=D1=82?= =?UTF-8?q?=D0=BA=D0=B0=20=D1=8F=D1=87=D0=B5=D0=B9=D0=BA=D0=B8=20=D0=9E?= =?UTF-8?q?=D0=B1=D0=B7=D0=B2=D0=BE=D0=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Добавил подсветку ячейки обзвон при отсутсвии в ней данных и условии что прошло 10 дней со времени согласования --- asuzr/models.py | 2 ++ asuzr/tables.py | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/asuzr/models.py b/asuzr/models.py index 8f571ea..885c3fc 100644 --- a/asuzr/models.py +++ b/asuzr/models.py @@ -101,6 +101,8 @@ class Order(models.Model): need_color=False if self.approved!=None: need_color = (date.today()-self.approved.date()>= timedelta(days = 10)) + need_color = need_color and (self.calls == '') + return need_color #Эскизы diff --git a/asuzr/tables.py b/asuzr/tables.py index 60c94fb..e94b15f 100644 --- a/asuzr/tables.py +++ b/asuzr/tables.py @@ -35,8 +35,9 @@ class ColoredEditableColumn(EditableColumn): self.condition_field = condition_field def render(self, record, **kwargs): + print eval('record.%s' % self.condition_field) if self.condition_field != None and eval('record.%s' % self.condition_field): - self.attrs = {'th': {'bgcolor': '#FFE4E1'}} + self.attrs = {'td': {'bgcolor': '#FFE4E1'}} else: self.attrs = {} From 4dd825e22c77df37f06db6a06b96e07be5d220c3 Mon Sep 17 00:00:00 2001 From: "Denis V. Dedkov" Date: Fri, 19 Jun 2015 20:18:13 +0500 Subject: [PATCH 4/5] =?UTF-8?q?=D0=9D=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9?= =?UTF-8?q?=D0=BA=D0=B8=20=D1=80=D0=B5=D0=B4=D0=B0=D0=BA=D1=82=D0=B8=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. Редактирование по клику 2. Текст после сохранения 3. Текст пустой ячейки --- asuzr/tables.py | 8 ++++---- record/settings.py | 8 ++++++++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/asuzr/tables.py b/asuzr/tables.py index e94b15f..34bf073 100644 --- a/asuzr/tables.py +++ b/asuzr/tables.py @@ -14,18 +14,19 @@ class EditableColumn(tables.TemplateColumn): {main_part} ''' main_part = '' + params = 'auto_height = 1, auto_width = 1' if object_name == '': main_part = ''' - {{% inplace_edit "record.{field}" auto_height = 1, auto_width = 1 %}} + {{% inplace_edit "record.{field}" {params} %}} ''' else: main_part = ''' {{% if record.{object_name} %}} - {{% inplace_edit "record.{object_name}.{field}" auto_height = 1, auto_width = 1 %}} + {{% inplace_edit "record.{object_name}.{field}" {params} %}} {{% endif %}} ''' template = template.format(main_part = main_part) - template = template.format(field = field_name, object_name = object_name) + template = template.format(field = field_name, object_name = object_name, params = params) super(EditableColumn, self).__init__(template, *args, **kwargs) @@ -35,7 +36,6 @@ class ColoredEditableColumn(EditableColumn): self.condition_field = condition_field def render(self, record, **kwargs): - print eval('record.%s' % self.condition_field) if self.condition_field != None and eval('record.%s' % self.condition_field): self.attrs = {'td': {'bgcolor': '#FFE4E1'}} else: diff --git a/record/settings.py b/record/settings.py index f881ad9..4ca67c3 100644 --- a/record/settings.py +++ b/record/settings.py @@ -1,3 +1,5 @@ +# -*- coding: utf-8 -*- + """ Django settings for record project. @@ -96,3 +98,9 @@ MEDIA_ROOT = 'media/' MEDIA_URL = 'http://127.0.0.1:8000/media/' THUMBNAIL_ENGINE = 'sorl.thumbnail.engines.convert_engine.Engine' + +INPLACEEDIT_EVENT = 'click' + +INPLACEEDIT_SUCCESS_TEXT = u'Сохранено' + +INPLACEEDIT_EDIT_EMPTY_VALUE = u'Редактировать' From 91986bd3dc7d0df2f375e157b4df9fee92e37787 Mon Sep 17 00:00:00 2001 From: "Denis V. Dedkov" Date: Fri, 19 Jun 2015 22:35:43 +0500 Subject: [PATCH 5/5] =?UTF-8?q?=D0=A1=D0=B5=D1=80=D1=8B=D0=B9=20=D1=82?= =?UTF-8?q?=D0=B5=D0=BA=D1=81=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Сделал серый текст для ячеек с пустыми значениями --- record/settings.py | 4 +++- templates/asuzr/base.html | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/record/settings.py b/record/settings.py index 4ca67c3..796da90 100644 --- a/record/settings.py +++ b/record/settings.py @@ -103,4 +103,6 @@ INPLACEEDIT_EVENT = 'click' INPLACEEDIT_SUCCESS_TEXT = u'Сохранено' -INPLACEEDIT_EDIT_EMPTY_VALUE = u'Редактировать' +from django.utils.safestring import mark_safe + +INPLACEEDIT_EDIT_EMPTY_VALUE = mark_safe(u'
Редактировать
') diff --git a/templates/asuzr/base.html b/templates/asuzr/base.html index 8c76b19..188f494 100644 --- a/templates/asuzr/base.html +++ b/templates/asuzr/base.html @@ -34,6 +34,9 @@ display: inline-block; vertical-align: top; } + .gray { + color: lightgray; + }