Beispiel #1
0
def person_info(request):
	search = request.GET.get("person_info_search", None)
	
	if not search:
		return HttpResponseBadRequest("person_info_search is required")
	
	o = lib.codeSearch(search)
	person = lib.autoPerson(o)
	
	if not person:
		return HttpResponseNotFound("Person not found for %s" % search)
	
	templateVars = {}
	
	templateVars["person"] = person
	
	registrations = list(person.registration_set.all())
	registrations.sort(key=lambda x: lib.registrationCardCodeKey(x.registration_session.card_code))
	registrations.reverse()
	templateVars["registrations"] = registrations
	
	allLists = List.objects.filter(people=person).order_by('name')
	entryLists = allLists.filter(list_type='entry_list')
	adminLists = allLists.filter(list_type='admin_list')
	
	queryLists = []
	
	for q in QueryList.objects.all():
		if person in q.people:
			queryLists.append(q)
	queryLists.sort(key=lambda q: q.name)
			
	templateVars["entry_lists"] = entryLists
	templateVars["admin_lists"] = adminLists
	templateVars["query_lists"] = queryLists
	
	
	return render(request, 'dashboard_person_info.html', templateVars)
Beispiel #2
0
def person_info(request):
	search = request.GET.get("person_info_search", None)
	
	if not search:
		return HttpResponseBadRequest("person_info_search is required")
	
	o = lib.codeSearch(search)
	person = lib.autoPerson(o)
	
	if not person:
		return HttpResponseNotFound("Person not found for %s" % search)
	
	templateVars = {}
	
	templateVars["person"] = person
	
	registrations = list(person.registration_set.all())
	registrations.sort(key=lambda x: lib.registrationCardCodeKey(x.registration_session.card_code))
	registrations.reverse()
	templateVars["registrations"] = registrations
	
	allLists = List.objects.filter(people=person).order_by('name')
	entryLists = allLists.filter(list_type='entry_list')
	adminLists = allLists.filter(list_type='admin_list')
	
	queryLists = []
	
	for q in QueryList.objects.all():
		if person in q.people:
			queryLists.append(q)
	queryLists.sort(key=lambda q: q.name)
			
	templateVars["entry_lists"] = entryLists
	templateVars["admin_lists"] = adminLists
	templateVars["query_lists"] = queryLists
	
	
	return render(request, 'dashboard_person_info.html', templateVars)
Beispiel #3
0
def index(request):	
	managedLists = {}
	
	for l in List.objects.exclude(list_type__in=['admin_list', 'entry_list']):
		listType = l.get_list_type_display()
		if listType not in managedLists:
			managedLists[listType] = {}
		
		print (l)

		try:
			semester, listName = l.slug.split('-', 1)
		except ValueError as e:
			print("Could not process %s as a semester list" % l.slug)
			print(e)
			continue

		if semester not in managedLists[listType]:
			managedLists[listType][semester] = []
		managedLists[listType][semester].append(l)
	
	sortedManagedLists = OrderedDict()
			
	for listType in managedLists:
		sortedManagedLists[listType] = OrderedDict()
		
		semestersDict = managedLists[listType]
		
		for semesterCode in reversed(sorted(semestersDict, key=lib.registrationCardCodeKey)):
			sortedManagedLists[listType][semesterCode] = sorted(semestersDict[semesterCode], key=lambda x: x.name)
			
	unmanagedLists = List.objects.filter(list_type__in=['admin_list']).order_by('name')
		
	return render(request, "dashboard_reporting.html", 
	{'registration_sessions': reversed(sorted(RegistrationSession.objects.all(), key=lambda rs: lib.registrationCardCodeKey(rs.card_code))), 
	'managed_lists': sortedManagedLists,
	'unmanaged_lists': unmanagedLists,
	'query_lists': QueryList.objects.all()})
Beispiel #4
0
def index(request):	
	managedLists = {}
	
	for l in List.objects.exclude(list_type__in=['admin_list', 'entry_list']):
		listType = l.get_list_type_display()
		if listType not in managedLists:
			managedLists[listType] = {}
			
		semester, listName = l.slug.split('-', 1)
		if semester not in managedLists[listType]:
			managedLists[listType][semester] = []
		managedLists[listType][semester].append(l)
	
	sortedManagedLists = OrderedDict()
			
	for listType in managedLists:
		sortedManagedLists[listType] = OrderedDict()
		
		semestersDict = managedLists[listType]
		
		for semesterCode in reversed(sorted(semestersDict, key=lib.registrationCardCodeKey)):
			sortedManagedLists[listType][semesterCode] = sorted(semestersDict[semesterCode], key=lambda x: x.name)
			
	unmanagedLists = List.objects.filter(list_type__in=['admin_list']).order_by('name')
		
	return render(request, "dashboard_reporting.html", 
	{'registration_sessions': reversed(sorted(RegistrationSession.objects.all(), key=lambda rs: lib.registrationCardCodeKey(rs.card_code))), 
	'managed_lists': sortedManagedLists,
	'unmanaged_lists': unmanagedLists,
	'query_lists': QueryList.objects.all()})