Statistics
| Branch: | Revision:

root / crm / robocrm / views.py @ 06dedf83

History | View | Annotate | Download (1.57 KB)

1
# Create your views here.
2
from django.http import HttpResponse, Http404
3
from django.core.exceptions import PermissionDenied
4
from django.contrib.auth import authenticate, login
5
from robocrm.models import *
6

    
7
def index(request):
8
  return HttpResponse("Hello again, world!")
9

    
10
def roboauth(request, rfid_tag, mach_num):
11
  r = RoboUser.objects.filter(rfid=rfid_tag)
12
  if r.count() > 0:
13
    us = r[0]
14
  else:
15
    return HttpResponse("0")
16
  auth_machines = us.machines.filter(id=mach_num)
17
  if auth_machines.count() > 0 :
18
    return HttpResponse("1")
19
  else :
20
    return HttpResponse("0")
21

    
22
def add_card_event(request):
23
  if request.method != 'POST':
24
    raise Http404
25
  if 'username' in request.POST and 'password' in request.POST:
26
    user = authenticate(username=request.POST['username'],
27
        password=request.POST['password'])
28
    if user is not None and user.is_active:
29
      login(request, user)
30

    
31
  if not request.user.is_authenticated() \
32
      or not request.user.has_perm('robocrm.add_event'):
33
    raise PermissionDenied
34

    
35
  tstart = request.POST['tstart'] # TODO convert to date
36
  tend = request.POST['tend']
37
  user_id = request.POST['user_id']
38
  succ = request.POST['succ'] == '1'
39
  imgurl = '' # TODO find url based on tstart
40
  machine_id = int(request.POST['machine_id'])
41

    
42
  robouser = RoboUser.objects.get(rfid__iexact=user_id)
43
  machine = Machine.objects.get(id__exact=machine_id)
44

    
45
  ev = Event(type='card',
46
      tstart=tstart,
47
      tend=tend,
48
      user=robouser,
49
      succ=succ,
50
      imgurl=imgurl,
51
      machine=machine,
52
      project=None,
53
      matuse='')
54

    
55
  ev.save()
56

    
57
  return HttpResponse()