def change_password(request): if request.method == "POST": form = ChangePassword(request.POST, password=request.user.password) if form.is_valid(): new_password = request.POST.get('new_password') request.user.set_password(new_password) request.user.save() messages.success(request, "The password was changed successfully.") else: form = ChangePassword(password=request.user.password) if '000_555_from_other_role_change_to_team_member' in request.session: base_page = "base_site.html" refresh_active_contest(request) # refersh the contest session role = 'Team' else: role = check_role(request) if role == 'Admin': base_page = "admin_base_site.html" refresh_active_contest_in_admin( request) # refersh the contest session elif role == 'Jury': base_page = "jury_base.html" refresh_active_contest_in_admin( request) # refersh the contest session elif role == 'Judge Host': base_page = "judge_host_base.html" else: base_page = "base_site.html" refresh_active_contest(request) # refersh the contest session return render(request, 'change_password.html', { 'form': form, 'base_page': base_page })
def all_time_clarifications(request): refresh_active_contest_in_admin(request) # refersh the contest session all_clarification = None clarification_from_admin = ClarificationFromAdmin.objects.all() clarification_from_user = ClarificationFromUser.objects.all() clarification_from_team = ClarificationFromTeam.objects.all() all_clarification_from_team = [ (i.send_time, i.message, 'From Team ' + i.team.username, 'from_team', i.contest.title) for i in clarification_from_team ] all_clarification_from_user = [ (i.send_time, i.message, 'From User ' + i.user.username, 'from_user', i.contest.title) for i in clarification_from_user ] all_clarification_to_user = [ (i.send_time, i.message, 'To User ' + i.user.username, 'to_user', i.contest.title) for i in clarification_from_admin if i.user ] all_clarification_to_team = [ (i.send_time, i.message, 'To Team ' + i.team.username, 'to_team', i.contest.title) for i in clarification_from_admin if i.team ] all_clarification = [(i.send_time, i.message, 'To all Teams and Users', 'for_all', i.contest.title) for i in clarification_from_admin if i.is_public] all_clarification.extend(all_clarification_to_team) all_clarification.extend(all_clarification_to_user) all_clarification.extend(all_clarification_from_user) all_clarification.extend(all_clarification_from_team) all_clarification.sort(reverse=True) role = check_role(request) if role == 'Admin': base_page = "admin_base_site.html" else: base_page = "jury_base.html" return render(request, 'all_time_clarifications.html', { 'all_clarification': all_clarification, 'base_page': base_page })
def view_team(request, team_id): team = Team.objects.get(pk=team_id) if '000_555_from_other_role_change_to_team_member' in request.session: base_page = "team_base.html" refresh_active_contest(request) # refersh the contest session role = 'Team' else: role = check_role(request) if role == 'Admin': base_page = "admin_base_site.html" refresh_active_contest_in_admin( request) # refersh the contest session elif role == 'Jury': base_page = "jury_base.html" refresh_active_contest_in_admin( request) # refersh the contest session else: base_page = "team_base.html" refresh_active_contest(request) # refersh the contest session return render(request, 'view_team.html', { 'team': team, 'base_page': base_page })
def my_profile(request): if request.user.campus: user_campus = request.user.campus.name else: user_campus = 'None' user_category = request.user.category.category user_role = ', '.join([i.role for i in request.user.role.all()]) user_register_date = request.user.register_date user_score = request.user.score initial_info = { '_campus': user_campus, '_category': user_category, '_role': user_role, '_register_date': user_register_date, '_score': user_score } if request.method == "POST": form = EditMyProfile(request.POST, request.FILES, instance=request.user, initial=initial_info) if form.is_valid(): post = form.save(commit=False) post.save() messages.success( request, "The user " + post.username + " was update successfully.") redirect('user_view_profile') else: form = EditMyProfile(instance=request.user, initial=initial_info) if '000_555_from_other_role_change_to_team_member' in request.session: base_page = "base_site.html" refresh_active_contest(request) # refersh the contest session role = 'Team' else: role = check_role(request) if role == 'Admin': base_page = "admin_base_site.html" refresh_active_contest_in_admin( request) # refersh the contest session elif role == 'Jury': base_page = "jury_base.html" refresh_active_contest_in_admin( request) # refersh the contest session elif role == 'Judge Host': base_page = "judge_host_base.html" else: base_page = "base_site.html" refresh_active_contest(request) # refersh the contest session if role == "Team": try: active_team = ActiveTeam.objects.get(user=request.user).team except ActiveTeam.DoesNotExist: active_team = None team = Team.objects.filter(member=request.user) else: active_team = None team = None print(role, active_team, team) return render( request, 'profile.html', { 'form': form, 'base_page': base_page, 'team': team, 'active_team': active_team })
def clarification_send_by_admin(request): refresh_active_contest_in_admin(request) # refersh the contest session all_clarification = None form = [] current_contest_id = request.session.get('contest_741_852_963_admin') if current_contest_id: current_contest = Contest.objects.get(pk=current_contest_id) users_list = current_contest.user.all() teams_list = current_contest.team.all() if users_list and teams_list: for_all = 'To all Users and Teams' elif users_list: for_all = 'To all Users' elif teams_list: for_all = 'To all Teams' else: for_all = None clarification_from_admin = ClarificationFromAdmin.objects.filter( contest=current_contest) clarification_from_user = ClarificationFromUser.objects.filter( contest=current_contest) clarification_from_team = ClarificationFromTeam.objects.filter( contest=current_contest) all_clarification_from_team = [ (i.send_time, i.message, 'From Team ' + i.team.username, 'from_team') for i in clarification_from_team ] all_clarification_from_user = [ (i.send_time, i.message, 'From User ' + i.user.username, 'from_user') for i in clarification_from_user ] all_clarification_to_user = [ (i.send_time, i.message, 'To User ' + i.user.username, 'to_user') for i in clarification_from_admin if i.user ] all_clarification_to_team = [ (i.send_time, i.message, 'To Team ' + i.team.username, 'to_team') for i in clarification_from_admin if i.team ] all_clarification = [(i.send_time, i.message, for_all, 'for_all') for i in clarification_from_admin if i.is_public] all_clarification.extend(all_clarification_to_team) all_clarification.extend(all_clarification_to_user) all_clarification.extend(all_clarification_from_user) all_clarification.extend(all_clarification_from_team) all_clarification.sort(reverse=True) if request.method == 'POST': form = AdminClarification(request.POST) form.fields['user'].queryset = users_list form.fields['team'].queryset = teams_list if form.is_valid(): post = form.save(commit=False) now = timezone.now() post.send_time = now post.contest = current_contest post.save() return redirect('admin_clarification') else: form = AdminClarification() form.fields['user'].queryset = users_list form.fields['team'].queryset = teams_list return render(request, 'view_clarification_by_admin.html', { 'form': form, 'all_clarification': all_clarification })