mirror of
https://github.com/nottinghamtec/PyRIGS.git
synced 2026-02-25 07:38:24 +00:00
Reformat all the things
Python code is now formatted to PEP8 All other files are defined in .editorconfig as far as possible.
This commit is contained in:
196
RIGS/views.py
196
RIGS/views.py
@@ -1,23 +1,25 @@
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from django.http.response import HttpResponseRedirect
|
||||
from django.http import HttpResponse
|
||||
from django.core.urlresolvers import reverse_lazy, reverse, NoReverseMatch
|
||||
from django.views import generic
|
||||
from django.db.models import Q
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.core import serializers
|
||||
from django.conf import settings
|
||||
import datetime
|
||||
import operator
|
||||
from functools import reduce
|
||||
|
||||
import simplejson
|
||||
from django.contrib import messages
|
||||
import datetime, pytz
|
||||
import operator
|
||||
from registration.views import RegistrationView
|
||||
from django.core import serializers
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from django.core.urlresolvers import reverse_lazy, reverse, NoReverseMatch
|
||||
from django.db.models import Q
|
||||
from django.http import HttpResponse
|
||||
from django.http.response import HttpResponseRedirect
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.views import generic
|
||||
|
||||
from RIGS import models, forms
|
||||
from RIGS import models
|
||||
|
||||
"""
|
||||
Displays the current rig count along with a few other bits and pieces
|
||||
"""
|
||||
|
||||
|
||||
class Index(generic.TemplateView):
|
||||
template_name = 'RIGS/index.html'
|
||||
|
||||
@@ -26,6 +28,7 @@ class Index(generic.TemplateView):
|
||||
context['rig_count'] = models.Event.objects.rig_count()
|
||||
return context
|
||||
|
||||
|
||||
def login(request, **kwargs):
|
||||
if request.user.is_authenticated():
|
||||
next = request.REQUEST.get('next', '/')
|
||||
@@ -35,11 +38,14 @@ def login(request, **kwargs):
|
||||
|
||||
return login(request)
|
||||
|
||||
|
||||
"""
|
||||
Called from a modal window (e.g. when an item is submitted to an event/invoice).
|
||||
May optionally also include some javascript in a success message to cause a load of
|
||||
the new information onto the page.
|
||||
"""
|
||||
|
||||
|
||||
class CloseModal(generic.TemplateView):
|
||||
template_name = 'closemodal.html'
|
||||
|
||||
@@ -54,7 +60,8 @@ class PersonList(generic.ListView):
|
||||
def get_queryset(self):
|
||||
q = self.request.GET.get('q', "")
|
||||
if len(q) >= 3:
|
||||
object_list = self.model.objects.filter(Q(name__icontains=q) | Q(email__icontains=q))
|
||||
object_list = self.model.objects.filter(
|
||||
Q(name__icontains=q) | Q(email__icontains=q))
|
||||
else:
|
||||
object_list = self.model.objects.all()
|
||||
orderBy = self.request.GET.get('orderBy', None)
|
||||
@@ -69,16 +76,24 @@ class PersonDetail(generic.DetailView):
|
||||
|
||||
class PersonCreate(generic.CreateView):
|
||||
model = models.Person
|
||||
fields = ['name','phone','email','address','notes']
|
||||
fields = ['name', 'phone', 'email', 'address', 'notes']
|
||||
|
||||
def get_success_url(self):
|
||||
if self.request.is_ajax():
|
||||
url = reverse_lazy('closemodal')
|
||||
update_url = str(reverse_lazy('person_update',kwargs={'pk':self.object.pk}))
|
||||
messages.info(self.request, "modalobject="+serializers.serialize("json", [self.object]))
|
||||
messages.info(self.request, "modalobject[0]['update_url']='"+update_url+"'")
|
||||
update_url = str(
|
||||
reverse_lazy(
|
||||
'person_update', kwargs={
|
||||
'pk': self.object.pk}))
|
||||
messages.info(self.request, "modalobject=" +
|
||||
serializers.serialize("json", [self.object]))
|
||||
messages.info(
|
||||
self.request,
|
||||
"modalobject[0]['update_url']='" +
|
||||
update_url +
|
||||
"'")
|
||||
else:
|
||||
url = reverse_lazy('person_detail', kwargs={
|
||||
url = reverse_lazy('person_detail', kwargs={
|
||||
'pk': self.object.pk,
|
||||
})
|
||||
return url
|
||||
@@ -86,16 +101,24 @@ class PersonCreate(generic.CreateView):
|
||||
|
||||
class PersonUpdate(generic.UpdateView):
|
||||
model = models.Person
|
||||
fields = ['name','phone','email','address','notes']
|
||||
fields = ['name', 'phone', 'email', 'address', 'notes']
|
||||
|
||||
def get_success_url(self):
|
||||
if self.request.is_ajax():
|
||||
url = reverse_lazy('closemodal')
|
||||
update_url = str(reverse_lazy('person_update',kwargs={'pk':self.object.pk}))
|
||||
messages.info(self.request, "modalobject="+serializers.serialize("json", [self.object]))
|
||||
messages.info(self.request, "modalobject[0]['update_url']='"+update_url+"'")
|
||||
update_url = str(
|
||||
reverse_lazy(
|
||||
'person_update', kwargs={
|
||||
'pk': self.object.pk}))
|
||||
messages.info(self.request, "modalobject=" +
|
||||
serializers.serialize("json", [self.object]))
|
||||
messages.info(
|
||||
self.request,
|
||||
"modalobject[0]['update_url']='" +
|
||||
update_url +
|
||||
"'")
|
||||
else:
|
||||
url = reverse_lazy('person_detail', kwargs={
|
||||
url = reverse_lazy('person_detail', kwargs={
|
||||
'pk': self.object.pk,
|
||||
})
|
||||
return url
|
||||
@@ -108,7 +131,8 @@ class OrganisationList(generic.ListView):
|
||||
def get_queryset(self):
|
||||
q = self.request.GET.get('q', "")
|
||||
if len(q) >= 3:
|
||||
object_list = self.model.objects.filter(Q(name__icontains=q) | Q(address__icontains=q))
|
||||
object_list = self.model.objects.filter(
|
||||
Q(name__icontains=q) | Q(address__icontains=q))
|
||||
else:
|
||||
object_list = self.model.objects.all()
|
||||
orderBy = self.request.GET.get('orderBy', "")
|
||||
@@ -123,16 +147,25 @@ class OrganisationDetail(generic.DetailView):
|
||||
|
||||
class OrganisationCreate(generic.CreateView):
|
||||
model = models.Organisation
|
||||
fields = ['name','phone','email','address','notes','union_account']
|
||||
fields = ['name', 'phone', 'email', 'address', 'notes', 'union_account']
|
||||
|
||||
def get_success_url(self):
|
||||
if self.request.is_ajax():
|
||||
url = reverse_lazy('closemodal')
|
||||
update_url = str(reverse_lazy('organisation_update',kwargs={'pk':self.object.pk}))
|
||||
messages.info(self.request, "modalobject="+serializers.serialize("json", [self.object]))
|
||||
messages.info(self.request, "modalobject[0]['update_url']='"+update_url+"'")
|
||||
update_url = str(
|
||||
reverse_lazy(
|
||||
'organisation_update',
|
||||
kwargs={
|
||||
'pk': self.object.pk}))
|
||||
messages.info(self.request, "modalobject=" +
|
||||
serializers.serialize("json", [self.object]))
|
||||
messages.info(
|
||||
self.request,
|
||||
"modalobject[0]['update_url']='" +
|
||||
update_url +
|
||||
"'")
|
||||
else:
|
||||
url = reverse_lazy('organisation_detail', kwargs={
|
||||
url = reverse_lazy('organisation_detail', kwargs={
|
||||
'pk': self.object.pk,
|
||||
})
|
||||
return url
|
||||
@@ -140,16 +173,25 @@ class OrganisationCreate(generic.CreateView):
|
||||
|
||||
class OrganisationUpdate(generic.UpdateView):
|
||||
model = models.Organisation
|
||||
fields = ['name','phone','email','address','notes','union_account']
|
||||
fields = ['name', 'phone', 'email', 'address', 'notes', 'union_account']
|
||||
|
||||
def get_success_url(self):
|
||||
if self.request.is_ajax():
|
||||
url = reverse_lazy('closemodal')
|
||||
update_url = str(reverse_lazy('organisation_update',kwargs={'pk':self.object.pk}))
|
||||
messages.info(self.request, "modalobject="+serializers.serialize("json", [self.object]))
|
||||
messages.info(self.request, "modalobject[0]['update_url']='"+update_url+"'")
|
||||
update_url = str(
|
||||
reverse_lazy(
|
||||
'organisation_update',
|
||||
kwargs={
|
||||
'pk': self.object.pk}))
|
||||
messages.info(self.request, "modalobject=" +
|
||||
serializers.serialize("json", [self.object]))
|
||||
messages.info(
|
||||
self.request,
|
||||
"modalobject[0]['update_url']='" +
|
||||
update_url +
|
||||
"'")
|
||||
else:
|
||||
url = reverse_lazy('organisation_detail', kwargs={
|
||||
url = reverse_lazy('organisation_detail', kwargs={
|
||||
'pk': self.object.pk,
|
||||
})
|
||||
return url
|
||||
@@ -162,7 +204,8 @@ class VenueList(generic.ListView):
|
||||
def get_queryset(self):
|
||||
q = self.request.GET.get('q', "")
|
||||
if len(q) >= 3:
|
||||
object_list = self.model.objects.filter(Q(name__icontains=q) | Q(address__icontains=q))
|
||||
object_list = self.model.objects.filter(
|
||||
Q(name__icontains=q) | Q(address__icontains=q))
|
||||
else:
|
||||
object_list = self.model.objects.all()
|
||||
orderBy = self.request.GET.get('orderBy', "")
|
||||
@@ -177,16 +220,30 @@ class VenueDetail(generic.DetailView):
|
||||
|
||||
class VenueCreate(generic.CreateView):
|
||||
model = models.Venue
|
||||
fields = ['name','phone','email','address','notes','three_phase_available']
|
||||
fields = [
|
||||
'name',
|
||||
'phone',
|
||||
'email',
|
||||
'address',
|
||||
'notes',
|
||||
'three_phase_available']
|
||||
|
||||
def get_success_url(self):
|
||||
if self.request.is_ajax():
|
||||
url = reverse_lazy('closemodal')
|
||||
update_url = str(reverse_lazy('venue_update',kwargs={'pk':self.object.pk}))
|
||||
messages.info(self.request, "modalobject="+serializers.serialize("json", [self.object]))
|
||||
messages.info(self.request, "modalobject[0]['update_url']='"+update_url+"'")
|
||||
update_url = str(
|
||||
reverse_lazy(
|
||||
'venue_update', kwargs={
|
||||
'pk': self.object.pk}))
|
||||
messages.info(self.request, "modalobject=" +
|
||||
serializers.serialize("json", [self.object]))
|
||||
messages.info(
|
||||
self.request,
|
||||
"modalobject[0]['update_url']='" +
|
||||
update_url +
|
||||
"'")
|
||||
else:
|
||||
url = reverse_lazy('venue_detail', kwargs={
|
||||
url = reverse_lazy('venue_detail', kwargs={
|
||||
'pk': self.object.pk,
|
||||
})
|
||||
return url
|
||||
@@ -194,16 +251,30 @@ class VenueCreate(generic.CreateView):
|
||||
|
||||
class VenueUpdate(generic.UpdateView):
|
||||
model = models.Venue
|
||||
fields = ['name','phone','email','address','notes','three_phase_available']
|
||||
fields = [
|
||||
'name',
|
||||
'phone',
|
||||
'email',
|
||||
'address',
|
||||
'notes',
|
||||
'three_phase_available']
|
||||
|
||||
def get_success_url(self):
|
||||
if self.request.is_ajax():
|
||||
url = reverse_lazy('closemodal')
|
||||
update_url = str(reverse_lazy('venue_update',kwargs={'pk':self.object.pk}))
|
||||
messages.info(self.request, "modalobject="+serializers.serialize("json", [self.object]))
|
||||
messages.info(self.request, "modalobject[0]['update_url']='"+update_url+"'")
|
||||
update_url = str(
|
||||
reverse_lazy(
|
||||
'venue_update', kwargs={
|
||||
'pk': self.object.pk}))
|
||||
messages.info(self.request, "modalobject=" +
|
||||
serializers.serialize("json", [self.object]))
|
||||
messages.info(
|
||||
self.request,
|
||||
"modalobject[0]['update_url']='" +
|
||||
update_url +
|
||||
"'")
|
||||
else:
|
||||
url = reverse_lazy('venue_detail', kwargs={
|
||||
url = reverse_lazy('venue_detail', kwargs={
|
||||
'pk': self.object.pk,
|
||||
})
|
||||
return url
|
||||
@@ -261,9 +332,9 @@ class SecureAPIRequest(generic.View):
|
||||
# Supply data for autocomplete ajax request in json form
|
||||
term = request.GET.get('term', None)
|
||||
if term:
|
||||
if fields is None: # Default to just name
|
||||
if fields is None: # Default to just name
|
||||
fields = ['name']
|
||||
|
||||
|
||||
# Build a list of Q objects for use later
|
||||
queries = []
|
||||
for part in term.split(" "):
|
||||
@@ -273,7 +344,6 @@ class SecureAPIRequest(generic.View):
|
||||
qs.append(q)
|
||||
queries.append(reduce(operator.or_, qs))
|
||||
|
||||
|
||||
# Build the data response list
|
||||
results = []
|
||||
query = reduce(operator.and_, queries)
|
||||
@@ -284,25 +354,31 @@ class SecureAPIRequest(generic.View):
|
||||
'value': o.pk,
|
||||
'label': o.name,
|
||||
}
|
||||
try: # See if there is a valid update URL
|
||||
data['update'] = reverse("%s_update" % model, kwargs={'pk': o.pk})
|
||||
try: # See if there is a valid update URL
|
||||
data['update'] = reverse(
|
||||
"%s_update" %
|
||||
model, kwargs={
|
||||
'pk': o.pk})
|
||||
except NoReverseMatch:
|
||||
pass
|
||||
results.append(data)
|
||||
|
||||
# return a data response
|
||||
json = simplejson.dumps(results)
|
||||
return HttpResponse(json, content_type="application/json") # Always json
|
||||
return HttpResponse(
|
||||
json, content_type="application/json") # Always json
|
||||
|
||||
start = request.GET.get('start', None)
|
||||
end = request.GET.get('end', None)
|
||||
|
||||
if model == "event" and start and end:
|
||||
# Probably a calendar request
|
||||
start_datetime = datetime.datetime.strptime( start, "%Y-%m-%dT%H:%M:%S" )
|
||||
end_datetime = datetime.datetime.strptime( end, "%Y-%m-%dT%H:%M:%S" )
|
||||
start_datetime = datetime.datetime.strptime(
|
||||
start, "%Y-%m-%dT%H:%M:%S")
|
||||
end_datetime = datetime.datetime.strptime(end, "%Y-%m-%dT%H:%M:%S")
|
||||
|
||||
objects = self.models[model].objects.events_in_bounds(start_datetime,end_datetime)
|
||||
objects = self.models[model].objects.events_in_bounds(
|
||||
start_datetime, end_datetime)
|
||||
|
||||
results = []
|
||||
for item in objects:
|
||||
@@ -318,10 +394,12 @@ class SecureAPIRequest(generic.View):
|
||||
|
||||
results.append(data)
|
||||
json = simplejson.dumps(results)
|
||||
return HttpResponse(json, content_type="application/json") # Always json
|
||||
return HttpResponse(
|
||||
json, content_type="application/json") # Always json
|
||||
|
||||
return HttpResponse(model)
|
||||
|
||||
|
||||
class ProfileDetail(generic.DetailView):
|
||||
model = models.Profile
|
||||
|
||||
@@ -334,6 +412,7 @@ class ProfileDetail(generic.DetailView):
|
||||
|
||||
return self.model.objects.filter(pk=pk)
|
||||
|
||||
|
||||
class ProfileUpdateSelf(generic.UpdateView):
|
||||
model = models.Profile
|
||||
fields = ['first_name', 'last_name', 'email', 'initials', 'phone']
|
||||
@@ -345,13 +424,14 @@ class ProfileUpdateSelf(generic.UpdateView):
|
||||
return self.model.objects.filter(pk=pk)
|
||||
|
||||
def get_success_url(self):
|
||||
url = reverse_lazy('profile_detail')
|
||||
url = reverse_lazy('profile_detail')
|
||||
return url
|
||||
|
||||
|
||||
class ResetApiKey(generic.RedirectView):
|
||||
def get_redirect_url(self, *args, **kwargs):
|
||||
self.request.user.api_key = self.request.user.make_api_key()
|
||||
|
||||
|
||||
self.request.user.save()
|
||||
|
||||
return reverse_lazy('profile_detail')
|
||||
|
||||
Reference in New Issue
Block a user