def activate(request): if request.method == 'GET': reqdict = request.GET.dict() if 'token' not in reqdict: return render_with_default( request, 'user/activate.html', {'title': 'Failure | iFSR Course Management', 'error': 'You didn\'t provide a token.'}) else: try: db_entry = Activation.objects.get(token=reqdict['token']) except ObjectDoesNotExist: return render_with_default( request, 'user/activate.html', {'title': 'Failure | iFSR Course Management', 'error': 'The token you provided is invalid.'}) db_entry.user.is_active = True db_entry.user.save() db_entry.delete() return render_with_default( request, 'user/activate.html', {'title': 'Success | iFSR Course Management'}) else: return redirect('index')
def modify(request): if request.method == "POST": form = ModifyUserForm(request.POST) user = request.user student = user.student if form.is_valid(): cleaned = form.cleaned_data print(cleaned) for prop in ( 'first_name', 'last_name', 'email' ): if prop in cleaned: print(cleaned[prop]) user.__setattr__(prop, cleaned[prop]) for prop in ( 'faculty' ): if prop in cleaned: student.__setattr__(prop, cleaned[prop]) user.save() student.save() return redirect('modify-user') else: form = ModifyUserForm() return render_with_default(request, 'user/modify.html', {'form': form})
def register(request): if request.method == 'POST': form = RegistrationForm(request.POST) if form.is_valid(): userdata = form.cleaned_data createduser = Student.create(email=userdata['s_number'] + '@mail.zih.tu-dresden.de', password=userdata['password'], first_name=userdata['first_name'], last_name=userdata['family_name'], s_number=userdata['s_number'], faculty=userdata['faculty']) if createduser is None: return render_with_default( request, 'registration/register.html', {'title': 'Registration | iFSR Course Management', 'error': 'The s-Number you entered is already in use!', 'form': form}) else: activationMail(createduser.user, request) return render_with_default( request, 'registration/registrationsuccess.html', {'title': 'Registration successfull | iFSR Course Management', 'acc': userdata['s_number']}) else: return render_with_default( request, 'registration/register.html', {'title': 'Registration | iFSR Course Management', 'error': 'Please check your input.', 'form': form}) else: form = RegistrationForm() return render_with_default( request, 'registration/register.html', {'title': 'Registration | iFSR Course Management', 'form': form})
def render_course(request, course_id): active_course = course.Course.objects.get(id=course_id) participants_count, max_participants = active_course.saturation_level context = { 'title': active_course.subject.name, 'course_id': course_id, 'course': active_course, 'is_subbed': active_course.participants.filter(id=request.user.student.id).exists(), 'backurl': reverse('subject', args=[active_course.subject.name]), 'participants_count': participants_count, 'max_participants': max_participants, } if active_course.teacher.filter(user=request.user).exists(): context['is_teacher'] = True context['students'] = active_course.participants.all() return render_with_default( request, 'course/info.html', context )
def edit_course(request, course_id): if request.method == "POST": form = EditCourseForm(request.POST) if form.is_valid(): c = course.Course.objects.get(id=course_id) cleaned = form.cleaned_data for prop in ( 'active', 'max_participants' ): if prop in cleaned: c.__setattr__(prop,cleaned[prop]) if 'description' in cleaned: c.description = bleach.clean(cleaned['description'], strip=True) c.save() return redirect('course', course_id) else: c = course.Course.objects.get(id=course_id) form = EditCourseForm(dict( active = c.active, description = c.description, max_participants = c.max_participants )) return render_with_default( request, 'course/edit.html', { 'form': form, 'course_id': course_id } )
def render_course_overview(request, subjectname): active_subject = subject.Subject.objects.filter(name=subjectname).get() return render_with_default(request, 'subject.html', {'title': '{name} | iFSR Course Management'.format(name=subjectname), 'subject': active_subject, })
def login(request): return render_with_default(request, 'login.html', {'title': 'Sign in'})
def index(request): return render_with_default(request, "index.html", {"title": "Welcome"})
def profile(request): return render_with_default(request, 'user/profile.html', {})