Browse Source

Исправлены конфликты

Anastasia 10 years ago
parent
commit
bfe9c2637f
5 changed files with 31 additions and 6 deletions
  1. 16 2
      asuzr/common.py
  2. 4 0
      asuzr/models.py
  3. 2 1
      asuzr/tables.py
  4. 7 2
      asuzr/views.py
  5. 2 1
      record/settings.py

+ 16 - 2
asuzr/common.py

@@ -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

+ 4 - 0
asuzr/models.py

@@ -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)

+ 2 - 1
asuzr/tables.py

@@ -236,7 +236,8 @@ class LogTable(tables.Table):
     return {1: 'Добавление', 
             2: 'Изменение', 
             3: 'Удаление',
-            4: 'Авторизация'}[value]
+            4: 'Авторизация',
+            5: 'Открытие страницы',}[value]
 
   class Meta:
     model = LogEntry

+ 7 - 2
asuzr/views.py

@@ -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')

+ 2 - 1
record/settings.py

@@ -78,10 +78,11 @@ TIME_ZONE = 'Asia/Yekaterinburg'
 
 USE_I18N = True
 
-USE_L10N = True
+USE_L10N = False
 
 USE_TZ = True
 
+DATE_FORMAT = 'd/m/Y'
 
 # Static files (CSS, JavaScript, Images)
 # https://docs.djangoproject.com/en/1.6/howto/static-files/