blob: 193133ffda9d1198d78c43b8f017a8b6cfc91b2c [file] [log] [blame]
from crashreports.models import *
from django.http import HttpResponse,Http404,HttpResponseRedirect
from django.shortcuts import render
from django.shortcuts import render_to_response
from django.template import loader
from itertools import chain
from django.db import connection
from crashreport_stats import raw_querys
from django.contrib.auth.decorators import user_passes_test
from django import forms
from django.contrib import messages
from django.urls import reverse
def is_fairphone_staff(user):
return user.groups.filter(name='FairphoneSoftwareTeam').exists()
class DeviceUUIDForm(forms.Form):
uuid = forms.CharField(label='Device UUID:', max_length=100)
@user_passes_test(is_fairphone_staff)
def device_stats(request):
template = loader.get_template('crashreport_stats/device.html')
uuid = request.GET.get('uuid', "NO_UUID")
if not Device.objects.filter(uuid=uuid).exists():
raise Http404("Device doesn't exist.")
return HttpResponse(template.render({'uuid':uuid}, request))
@user_passes_test(is_fairphone_staff)
def home(request):
if request.method == 'POST':
# create a form instance and populate it with data from the request:
form = DeviceUUIDForm(request.POST)
if form.is_valid():
uuid = form.cleaned_data['uuid']
if not Device.objects.filter(uuid=uuid).exists():
messages.warning(request, "Device does not exist")
else:
return HttpResponseRedirect(reverse("hiccup_stats_device")+'?uuid='+uuid)
else:
form = DeviceUUIDForm()
template = loader.get_template('crashreport_stats/home.html')
return HttpResponse(template.render({'form':form}, request))