def create(request): if request.POST: form = PlayerForm(request.POST) if form.is_valid(): form.save() return HttpResponseRedirect('/players/') else: form = PlayerForm() args = {} args.update(csrf(request)) args['form'] = form return render_to_response('players/create.html', args)
def edit(request, player_id): if player_id: player = Player.objects.get(id=player_id) if request.method == "POST": form = PlayerForm(request.POST, instance=player) if form.is_valid(): form.save() return HttpResponseRedirect('/players/') else: form = PlayerForm(instance=player) args = {} args.update(csrf(request)) args['form'] = form args['player'] = player return render_to_response('players/edit.html', args)
def activate_study(request, code): try: cron = Cron.objects.get(activationCode=code) except Cron.DoesNotExist: cron = None if cron == None: return render(request, 'players/registration.html', {"wrongCode": True}) elif cron.activated: return render(request, 'players/registration.html', {"alreadyActivated": True}) else: if request.method == 'POST': form = PlayerForm(request.POST, prefix="player") if form.is_valid(): player = form.save() cron.player = player cron.activated = True cron.save() logging.log_action(ActionLog.ACTION_CRON_ACTIVATED, cron) return render(request, 'players/registration.html', {"cron": player.cron, "study":True}) else: return render(request, 'players/study.html', {"form": form, "code":code}) else: form = PlayerForm(prefix='player') logging.log_action(ActionLog.ACTION_CRON_VIEW_STUDY, cron) return render(request, 'players/study.html', {"form": form, "code":code})
def register(request): uform = UserForm(request.POST or None) form = PlayerForm(request.POST or None) if uform.is_valid() and form.is_valid(): dj_user = uform.save() player = form.save(commit=False) player.user = dj_user prof = Profile() prof.save() player.profile = prof player.save() #authenticate user #dj_user = authenticate(username=uform.cleaned_data['username'], # password=uform.cleaned_data['password'], # ) #login(request, dj_user) #success sends to map and the questions.. return redirect(reverse('login')) #register invalid.. go back to register (test registration errors!! probably fix css for errors) return render(request, 'registration/register.html', context={ 'form': form, 'uform': uform })
def edit_player(request, id): player = get_object_or_404(Player, pk=id) if request.method == "POST": form = PlayerForm(request.POST, request.FILES, instance=player) if form.is_valid(): player = form.save(False) player.save() messages.success( request, "You have edited " + player.name + ' ' + player.last_name + "!") return redirect('get_team', player.team_id) else: messages.error(request, 'Please correct the errors below.') else: form = PlayerForm(instance=player) if request.user.is_superuser: form.fields['team'].queryset = Team.objects.all() else: form.fields['team'].queryset = Team.objects.filter( id=request.user.profile.team_id) | Team.objects.filter( name="Unassigned") return render( request, 'form.html', { 'form': form, 'cancelview': "get_team", 'cancelid': player.team.id, 'heading_text': 'You are editing ' + player.name + ' ' + player.last_name, 'button_text': 'Save Player', })
def new_player(request): if request.method == "POST": form = PlayerForm(request.POST) if form.is_valid(): player = form.save(commit=False) player.save() messages.success( request, "You have added " + player.name + " " + player.last_name + " to " + player.team.name + " Team!") return redirect('get_team', player.team_id) else: messages.error(request, 'Please correct the errors below.') else: form = PlayerForm() if request.user.is_superuser: form.fields['team'].queryset = Team.objects.all() else: form.fields["team"].queryset = Team.objects.filter( id=request.user.profile.team_id) return render( request, 'form.html', { 'form': form, 'heading_text': 'You are creating a new player!', 'button_text': 'Save Player', })
def new_player(request): if request.method == 'POST': pf = PlayerForm(request.POST) if pf.is_valid(): new_p = pf.save(commit=False) new_p.balance = STARTING_BALANCE new_p.save() return redirect('bank.views.player', new_p.id) else: pf = PlayerForm() return render(request, "new_player.html", {'form': pf})
def register(request): if request.method == 'POST': player_form = PlayerForm(request.POST, prefix="player") user_form = UserCreationForm(request.POST, prefix = "user") passcode = request.POST.get('registration_passcode', '') if passcode == registration_passcode and player_form.is_valid() and user_form.is_valid(): player = player_form.save() user = user_form.save() cron = Cron() cron.player = player cron.user = user cron.activated = False cron.save() provlog_add_cron_register(cron) email_tpl = loader.get_template('players/activation.txt') url = request.build_absolute_uri(reverse('players_activation', args=[cron.activationCode])) c = Context({ 'cron': cron, 'url':url }) email = EmailMessage( subject='[cr0n] Activate your account', body= email_tpl.render(c), to=[cron.player.email,], ) #in settings.py you can configure console backend for displaying emails instead of sending them - great for testing! email.send(fail_silently=True) return render_to_response('players/registration.html', {"registered": True, "cron":cron}) else: return render_to_response( 'players/registration.html', {"player_form": player_form, "user_form": user_form}, context_instance=RequestContext(request) ) else: player_form = PlayerForm(prefix='player') user_form = UserCreationForm(prefix='user') return render_to_response( 'players/registration.html', {"player_form": player_form, "user_form": user_form}, context_instance=RequestContext(request) )