Исправлены конфликты
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from datetime import date
|
||||
from django.contrib.admin.models import LogEntry
|
||||
from django.contrib.auth.models import User
|
||||
|
||||
class custom_date(date):
|
||||
|
||||
@@ -18,5 +20,17 @@ class custom_date(date):
|
||||
def is_weekend(self):
|
||||
return self.weekday() >= 5
|
||||
|
||||
def __format__(self):
|
||||
return self.strftime('%d.%m.%Y')
|
||||
def log_view_call(fn):
|
||||
'''
|
||||
Wrapper for views log
|
||||
'''
|
||||
def wrapper(*args, **kwargs):
|
||||
log_entry = {}
|
||||
request = args[0]
|
||||
log_entry['user'] = User.objects.get(username = request.META['USER'])
|
||||
log_entry['object_repr'] = fn.__name__
|
||||
log_entry['action_flag'] = 5
|
||||
entry = LogEntry(**log_entry)
|
||||
entry.save()
|
||||
return fn(*args, **kwargs)
|
||||
return wrapper
|
||||
|
||||
@@ -6,6 +6,7 @@ from django.contrib.auth.models import User
|
||||
from datetime import date, timedelta
|
||||
from django.utils import dateformat
|
||||
from django.contrib.auth.signals import user_logged_in, user_logged_out, user_login_failed
|
||||
from django.contrib.sessions.models import Session
|
||||
from django.db.models.signals import post_save, post_delete
|
||||
from django.contrib.admin.models import LogEntry, ADDITION, CHANGE, DELETION
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
@@ -208,6 +209,7 @@ def construct_log_entry(**kwargs):
|
||||
def after_save(*args, **kwargs):
|
||||
instance = kwargs['instance']
|
||||
if isinstance(instance, LogEntry): return
|
||||
if isinstance(instance, Session): return
|
||||
log_entry = construct_log_entry(**kwargs)
|
||||
created = kwargs['created']
|
||||
log_entry['action_flag'] = ADDITION if created else CHANGE
|
||||
@@ -216,6 +218,8 @@ def after_save(*args, **kwargs):
|
||||
|
||||
#@receiver(post_delete)
|
||||
def after_delete(*args, **kwargs):
|
||||
instance = kwargs['instance']
|
||||
if isinstance(instance, Session): return
|
||||
log_entry = construct_log_entry(**kwargs)
|
||||
log_entry['action_flag'] = DELETION
|
||||
entry = LogEntry(**log_entry)
|
||||
|
||||
@@ -236,7 +236,8 @@ class LogTable(tables.Table):
|
||||
return {1: 'Добавление',
|
||||
2: 'Изменение',
|
||||
3: 'Удаление',
|
||||
4: 'Авторизация'}[value]
|
||||
4: 'Авторизация',
|
||||
5: 'Открытие страницы',}[value]
|
||||
|
||||
class Meta:
|
||||
model = LogEntry
|
||||
|
||||
@@ -9,7 +9,7 @@ from datetime import datetime, date, timedelta
|
||||
from django.utils import dateformat
|
||||
import calendar
|
||||
from django.db.models import Count, Sum
|
||||
from asuzr.common import custom_date
|
||||
from asuzr.common import *
|
||||
from django.contrib.auth.decorators import login_required
|
||||
from asuzr.tables import *
|
||||
from asuzr.forms import *
|
||||
@@ -108,6 +108,7 @@ def create_attendance_if_need(date):
|
||||
if created:
|
||||
attendance.save()
|
||||
|
||||
@log_view_call
|
||||
@login_required
|
||||
def visit_view(request):
|
||||
curr_date = datetime.strptime(request.GET.get('date', date.today().strftime('%d.%m.%Y')), '%d.%m.%Y')
|
||||
@@ -202,6 +203,7 @@ def main(request, day, month, year):
|
||||
})
|
||||
return HttpResponse(t.render(c))
|
||||
|
||||
@log_view_call
|
||||
@login_required
|
||||
def sketches(request, order_id):
|
||||
curr_order = Order.objects.get(pk = order_id)
|
||||
@@ -232,6 +234,7 @@ def delete_sketch(request):
|
||||
sketch.delete()
|
||||
return redirect(sketches, order_id = order_id)
|
||||
|
||||
@log_view_call
|
||||
@login_required
|
||||
def orders(request, archive):
|
||||
is_archive = (archive == '1')
|
||||
@@ -241,6 +244,7 @@ def orders(request, archive):
|
||||
RequestConfig(request).configure(table)
|
||||
return render(request, 'asuzr/table.html', {'table': table, 'title': title})
|
||||
|
||||
@log_view_call
|
||||
@login_required
|
||||
def desreport(request):
|
||||
start_date = request.GET.get('sdate', date.today().strftime('%d.%m.%Y'))
|
||||
@@ -254,6 +258,7 @@ def desreport(request):
|
||||
RequestConfig(request).configure(table)
|
||||
return render(request, 'asuzr/table.html', {'table': table, 'title': title, 'dateform': form})
|
||||
|
||||
@log_view_call
|
||||
@login_required
|
||||
def production_table(request, order_id):
|
||||
order_costs = OrderCosts.objects.filter(order=order_id)
|
||||
@@ -279,7 +284,7 @@ def production_table_add_item(request, order_id):
|
||||
form.save()
|
||||
return redirect(production_table, order_id = order_id)
|
||||
|
||||
|
||||
@log_view_call
|
||||
@login_required
|
||||
def prod_plan_view(request):
|
||||
curr_date = datetime.strptime(request.GET.get('date', date.today().strftime('%d.%m.%Y')), '%d.%m.%Y')
|
||||
|
||||
Reference in New Issue
Block a user