def register(request): context = RequestContext(request) registered = False if request.method == 'POST': user_form = UserForm(data=request.POST) player_form = PlayerForm(data=request.POST) if user_form.is_valid() and player_form.is_valid(): user = user_form.save() user.set_password(user.password) user.save() profile = player_form.save(commit=False) profile.user = user profile.save() registered = True else: print user_form.errors, player_form.errors else: user_form = UserForm() player_form = PlayerForm() return render_to_response( 'register.html', {'user_form': user_form, 'player_form': player_form, 'registered': registered},context)
def post(self, request, *args, **kwargs): user_form = UserForm(data=request.POST) player_form = PlayerForm(data=request.POST) if user_form.is_valid() and player_form.is_valid(): user = user_form.save() user.set_password(user.password) user.save() player = Player(user=user) player.save() user = authenticate( username=user_form.cleaned_data['username'], password=user_form.cleaned_data['password'] ) login(request, user) return HttpResponseRedirect('/') else: context = { 'user_form': user_form } messages.error(request, 'Something went wrong...') return render(request, self.template_name, context)
def post(self, request, *args, **kwargs): user_form = UserForm(data=request.POST) player_form = PlayerForm(data=request.POST) if user_form.is_valid() and player_form.is_valid(): user = user_form.save() user.set_password(user.password) user.save() player = Player(user=user) player.save() user = authenticate(username=user_form.cleaned_data['username'], password=user_form.cleaned_data['password']) login(request, user) return HttpResponseRedirect('/') else: context = {'user_form': user_form} messages.error(request, 'Something went wrong...') return render(request, self.template_name, context)
def register(request): """ Method who receive requests (post/get) from register.html create a player on post request """ if request.method == 'POST': # S'il s'agit d'une requête POST usr1 = PlayerForm(request.POST, prefix="usr1") reg1 = RegistrationForm(request.POST, prefix="reg1") usr2 = PlayerForm(request.POST, prefix="usr2") reg2 = RegistrationForm(request.POST, prefix="reg2") if 'solo_registration' in request.POST : usr2 = PlayerForm(prefix="usr2") reg2 = RegistrationForm(prefix="reg2") pair = PairRegistrationForm(request.POST) emailForm1 = EmailOldUserForm(prefix="email1") #Solo registration if 'solo_registration' in request.POST \ and usr1.is_valid() and reg1.is_valid(): new_user1 = User( \ firstname = usr1.cleaned_data['firstname'], \ lastname = usr1.cleaned_data['lastname'], \ gender = usr1.cleaned_data['gender'], \ birthdate = usr1.cleaned_data['birthdate'], \ address_street = usr1.cleaned_data['address_street'], \ address_number = usr1.cleaned_data['address_number'], \ address_box = usr1.cleaned_data['address_box'], \ city = usr1.cleaned_data['city'], \ country = usr1.cleaned_data['country'], \ zipcode = usr1.cleaned_data['zipcode'], \ email = usr1.cleaned_data['email'], \ phone = usr1.cleaned_data['phone']) new_user1.save() registration1 = UserRegistration( \ user = new_user1, \ season = settings.CURRENT_SEASON, \ bbq = reg1.cleaned_data['bbq'], \ level = reg1.cleaned_data['level']) registration1.save() assign_tournament_solo(new_user1) return redirect('players.views.payement', id_user1=new_user1.pk, id_registration1=registration1.pk, id_user2=-1, id_registration2=-1, id_pair=-1) #Pair registration elif usr1.is_valid() and usr2.is_valid() \ and reg1.is_valid() and reg2.is_valid() \ and pair.is_valid(): new_user1 = User( \ firstname = usr1.cleaned_data['firstname'], \ lastname = usr1.cleaned_data['lastname'], \ gender = usr1.cleaned_data['gender'], \ birthdate = usr1.cleaned_data['birthdate'], \ address_street = usr1.cleaned_data['address_street'], \ address_number = usr1.cleaned_data['address_number'], \ address_box = usr1.cleaned_data['address_box'], \ city = usr1.cleaned_data['city'], \ country = usr1.cleaned_data['country'], \ zipcode = usr1.cleaned_data['zipcode'], \ email = usr1.cleaned_data['email'], \ phone = usr1.cleaned_data['phone']) new_user1.save() registration1 = UserRegistration( \ user = new_user1, \ season = settings.CURRENT_SEASON, \ bbq = reg1.cleaned_data['bbq'], \ level = reg1.cleaned_data['level']) registration1.save() new_user2 = User( \ firstname = usr2.cleaned_data['firstname'], \ lastname = usr2.cleaned_data['lastname'], \ gender = usr2.cleaned_data['gender'], \ birthdate = usr2.cleaned_data['birthdate'], \ address_street = usr2.cleaned_data['address_street'], \ address_number = usr2.cleaned_data['address_number'], \ address_box = usr2.cleaned_data['address_box'], \ city = usr2.cleaned_data['city'], \ country = usr2.cleaned_data['country'], \ zipcode = usr2.cleaned_data['zipcode'], \ email = usr2.cleaned_data['email'], \ phone = usr2.cleaned_data['phone']) new_user2.save() registration2 = UserRegistration( \ user = new_user2, \ season = settings.CURRENT_SEASON, \ bbq = reg2.cleaned_data['bbq'], \ level = reg2.cleaned_data['level']) registration2.save() pair = Pair(player1 = new_user1, player2 = new_user2, \ average = 0.0, \ season = settings.CURRENT_SEASON, \ comment = pair.cleaned_data['comment']) pair.save() assign_tournament(pair) return redirect('players.views.payement', id_user1=new_user1.pk, id_user2=new_user2.pk, id_registration1=registration1.pk, id_registration2=registration2.pk, id_pair=pair.pk) else: usr1 = PlayerForm(prefix="usr1") reg1 = RegistrationForm(prefix="reg1") usr2 = PlayerForm(prefix="usr2") reg2 = RegistrationForm(prefix="reg2") pair = PairRegistrationForm() emailForm1 = EmailOldUserForm(prefix="email1") trn_open = Tournament.objects.filter(is_open=True).count() if trn_open == 0 : return render(request, 'players/no_tournament_open.html') return render(request, 'players/register.html', { "usr1": usr1, "reg1": reg1, "usr2": usr2, "reg2": reg2, "pair": pair, "email1": emailForm1, })
def particular_player(request, page_id, player_id): """Page showing information for a particular player.""" players_per_page = 10 #Number of players displayed by page number_players = User.objects.count() number_pages = ceil(number_players/players_per_page) #Number of pages for the navbar extremity1 = 0+(int(page_id)-1)*players_per_page #Range extremity2 = (int(page_id)*players_per_page)-1 players = User.objects.order_by('lastname', 'firstname').all()[extremity1:extremity2] player = User.objects.filter(id=player_id).get() if not request.user.is_authenticated(): return redirect('staff.views.login_staff') if request.method == 'POST': player = get_object_or_404(User, pk=player_id) form = PlayerForm(request.POST, player_id=player_id, instance=player) user_reg = get_object_or_404(UserRegistration, user=player, season=settings.CURRENT_SEASON) reg_form = RegistrationForm(request.POST, user_reg_id=user_reg.pk, instance=user_reg) pair_form = AssignPairForm(request.POST) if pair_form.is_valid(): other_player=pair_form.cleaned_data['other_player'].player solo = SoloParticipant.objects.get(player=player) solo.delete() SoloParticipant.objects.get(player=other_player).delete() Pair(player1=player, player2=other_player, average=0, season=settings.CURRENT_SEASON).save() user_id = request.user.pk user = Django_User.objects.get(pk=user_id) log_message = user.first_name + " " + user.last_name + "assigned to a pair on " + time.strftime("%c") + "\n" player.log = player.log + log_message player.save() if form.is_valid(): user_id = request.user.pk user = Django_User.objects.get(pk=user_id) log_message = user.first_name + " " + user.last_name + "edited on " + time.strftime("%c") + "\n" player.log = player.log + log_message player.save() obj = form.save() if reg_form.is_valid(): obj2 = reg_form.save() user_id = request.user.pk user = Django_User.objects.get(pk=user_id) log_message = user.first_name + " " + user.last_name + "edited on " + time.strftime("%c") + "\n" player.log = player.log + log_message player.save() player_pairs = Pair.objects.filter(season=settings.CURRENT_SEASON).filter(Q(player1=player) | Q(player2=player)) if player_pairs.count() == 0: player_pairs=None user_reg = UserRegistration.objects.get(user=player, season=settings.CURRENT_SEASON) form = PlayerForm(player_id=player.id) reg_form = RegistrationForm(user_reg_id = user_reg.pk) pair_form = AssignPairForm() return render(request, 'staff/particular_player.html', { \ 'player':player, \ 'form':form, 'players':players , 'player_pairs': player_pairs, 'page_id':int(page_id), 'number_pages':number_pages, 'n':range(1, number_pages+1), 'prev':int(page_id)-1, 'next':int(page_id)+1, 'reg_form': reg_form, 'pair_form':pair_form })