def Home(request): # round = Round.objects.get(id=264) # # games = Game.objects.filter(round=round) # print "HOME" # for g in games: # pst = Preferred_start_time.objects.filter(game=g, player=g.player1) # if len(pst) == 0: # p = Preferred_start_time(game=g, player=g.player1) # p.save() # print str(g.id) # pst = Preferred_start_time.objects.filter(game=g, player=g.player2) # if len(pst) == 0: # p = Preferred_start_time(game=g, player=g.player2) # p.save() # print str(g.id) if request.user.is_authenticated(): nextGames = len(Game.objects.filter(Q(log = False), Q(start_time__gte = datetime.datetime.now()), Q(player1 = request.user) | Q(player2 = request.user))) wonGames = len(Game.objects.filter(Q(winner = request.user), Q(log=True))) lostGames = len(Game.objects.filter(Q(player1 = request.user) | Q(player2 = request.user), ~Q(winner = request.user), Q(log=True))) #myTournaments = len(Tournament.objects.filter(players = request.user).filter(Q(finish_date__gte = datetime.datetime.now()))) myTournaments = len(Tournament.objects.filter(players = request.user)) activeTournaments = len(Tournament.objects.filter(start_date__lte = datetime.date.today(), finish_date__gte = datetime.date.today())) nextTournaments = len(Tournament.objects.filter(start_date__gt = datetime.date.today())) finishedTournaments = len(Tournament.objects.filter(finish_date__lt = datetime.datetime.now())) if request.mobile: return render_to_response('mobile/home.html', { 'nextGames': nextGames, 'wonGames': wonGames, 'lostGames': lostGames, 'myTournaments': myTournaments, 'activeTournaments': activeTournaments, 'nextTournaments': nextTournaments, 'finishedTournaments': finishedTournaments, }) return HttpResponseRedirect("/next-games") else: if request.method == 'POST': # If the form has been submitted... loginForm = LoginForm(request.POST) # A form bound to the POST data if loginForm.is_valid(): # All validation rules pass user = authenticate(username=request.POST['username'], password=request.POST['password']) timezone = request.POST['timezone'] userProfile = UserProfile.objects.get(user=user) userProfile.timezone = timezone userProfile.save() login(request, user) if request.mobile: return render_to_response('mobile/home.html', {}) else: #return HttpResponseRedirect('/next-games') myFutureGames = Game.objects.filter(Q(log = False), Q(player1 = request.user) | Q(player2 = request.user)).order_by('start_time') dates = [] for game in myFutureGames: if not game.start_time_committed and (datetime.datetime.now() + datetime.timedelta(minutes=120)) > game.start_time: game.start_time_committed = True game.save() if not game.start_time.date() in dates: dates.append(game.start_time.date()) template ='custom/next-games.html' if request.mobile: template = 'mobile/next-games.html' up = UserProfile.objects.get(user=request.user) timezone = up.timezone return render_to_response(template, { 'user_me': request.user, 'timezone': timezone, 'myNextGames': myFutureGames, 'dates': dates }) else: registerForm = RegisterForm() template = get_template('custom/splash.html') if request.mobile: template = get_template('mobile/login.html') return HttpResponse(template.render(RequestContext(request, {'loginForm': loginForm}))) else: if request.mobile: return HttpResponse(get_template('mobile/login.html').render(RequestContext(request, {}))) return HttpResponse(get_template('custom/splash.html').render(RequestContext(request, {})))
def Login(request): if not request.mobile: return HttpResponseRedirect("/") if request.user.is_authenticated(): nextGames = len(Game.objects.filter(Q(log__isnull = False), Q(start_time__gte = datetime.datetime.now()), Q(player1 = request.user) | Q(player2 = request.user))) wonGames = len(Game.objects.filter(winner = request.user)) lostGames = len(Game.objects.filter(Q(player1 = request.user) | Q(player2 = request.user), ~Q(winner = request.user), Q(log=True))) #myTournaments = len(Tournament.objects.filter(players = request.user).filter(Q(finish_date__gte = datetime.datetime.now()))) myTournaments = len(Tournament.objects.filter(players = request.user)) activeTournaments = len(Tournament.objects.filter(start_date__lte = datetime.date.today(), finish_date__gte = datetime.date.today())) nextTournaments = len(Tournament.objects.filter(start_date__gt = datetime.date.today())) finishedTournaments = len(Tournament.objects.filter(finish_date__lt = datetime.datetime.now())) return render_to_response('mobile/home.html', { 'nextGames': nextGames, 'wonGames': wonGames, 'lostGames': lostGames, 'myTournaments': myTournaments, 'activeTournaments': activeTournaments, 'nextTournaments': nextTournaments, 'finishedTournaments': finishedTournaments, }) # Load strings language to template login.html try: lang = strLang() except: lang = '' if request.method == 'POST': # If the form has been submitted... loginForm = LoginForm(request.POST) # A form bound to the POST data if loginForm.is_valid(): # All validation rules pass user = authenticate(username=request.POST['username'], password=request.POST['password']) login(request, user) return render_to_response('mobile/home.html', {}) else: registerForm = RegisterForm() return render_to_response('mobile/login.html', { 'loginForm': loginForm, 'lang': lang, }) else: loginForm = LoginForm() # An unbound form registerForm = RegisterForm() # return render_to_response('mobile/login.html', { # 'loginForm': loginForm, # 'lang': lang, # }) return HttpResponse(get_template('mobile/login.html').render(RequestContext(request, { 'loginForm': loginForm, 'lang': lang, })))