def game_edit_request(request, game_id): g = Game.objects.get(pk=game_id) ayah_html = ayah.get_publisher_html() if not request.user.is_authenticated(): return HttpResponseRedirect('/login/') if request.method == 'POST': form = GameRegistrationForm(request.POST, request.FILES) if form.is_valid(): secret = request.POST['session_secret'] passed = ayah.score_result(secret) if passed: try: g.concept_only=form.cleaned_data['concept_only'] except Error: pass g.name=form.cleaned_data['name'] g.short_desc = form.cleaned_data['short_desc'] g.description = form.cleaned_data['description'] g.team = form.cleaned_data['team'] g.save() return HttpResponseRedirect('/members/profile/') else: context = {'form':form, 'ayah_html':ayah_html} else: context = {'form':form,'ayah_html':ayah_html} else: form = GameRegistrationForm(instance=g) context = {'form':form,'ayah_html':ayah_html} return render_to_response( 'runs/edit_game.html', context, context_instance=RequestContext(request))
def game_registration_request(request): ayah_html = ayah.get_publisher_html() if not request.user.is_authenticated(): return HttpResponseRedirect('/login/') if request.method == 'POST': form = GameRegistrationForm(request.POST, request.FILES) if form.is_valid(): secret = request.POST['session_secret'] passed = ayah.score_result(secret) if passed: g = form.save(commit=False) g.added_date = timezone.now() g.description = sanitizeHtml(request.POST['description']) g.run = get_object_or_404(Run, current_run = True) g.leader = request.user g.save() return HttpResponseRedirect('/members/profile/') else: context = {'form':form, 'ayah_html':ayah_html} else: context = {'form':form,'ayah_html':ayah_html} else: form = GameRegistrationForm() context = {'form':form,'ayah_html':ayah_html} return render_to_response( 'runs/register_game.html', context, context_instance=RequestContext(request))
def GET(self): sidebar = load_pagefile('/sidebar') footer = load_pagefile('/footer') contacttext = load_pagefile('/contact') if sidebar == False: sidebar = '' if footer == False: footer = '' if contacttext == False: contacttext = '' ayahhtml = ayah.get_publisher_html() return templates.contact(contacttext,ayahhtml,sidebar,footer)
def GET(self): sidebar = load_pagefile('/sidebar') footer = load_pagefile('/footer') contacttext = load_pagefile('/contact') if sidebar == False: sidebar = '' if footer == False: footer = '' if contacttext == False: contacttext = '' ayahhtml = ayah.get_publisher_html() return templates.contact(contacttext, ayahhtml, sidebar, footer)
def handle_list_events(): """ Display frontpage form """ upcoming_events = get_upcoming_events() ongoing_events = get_ongoing_events() # Setup Are You A Human check ayah.configure(app.config['ARE_YOU_HUMAN_PUBLISHER_KEY'], app.config['ARE_YOU_HUMAN_SCORING_KEY']) ayah_html = ayah.get_publisher_html() return render_template('index.html', upcoming_events=upcoming_events, ongoing_events=ongoing_events, ayah_html=ayah_html)
def add_article(request): ayah.configure(settings.AYAH_PUBLISHER_KEY, settings.AYAH_SCORING_KEY) if request.method == "POST": form = ArticleForm(request.POST) if form.is_valid(): #subject = form.cleaned_data['subject'] #message = form.cleaned_data['message'] #sender = form.cleaned_data['sender'] #cc_myself = form.cleaned_data['cc_myself'] ayah_form_secret = form.data.get('session_secret') if not settings.DEBUG and not ayah.score_result(ayah_form_secret): return HttpResponseRedirect('/') recipients = [settings.DEFAULT_FROM_EMAIL] message = 'Url - %s Tags: %s' % (form.cleaned_data['link'], form.cleaned_data['tags']) test = form.save(commit=False) # Add user test.added_by = request.user test.save() article_id = Article.objects.get(id=test.id) for tag in form.cleaned_data['tags']: # Add the tags to the article Article_Tags(article=article_id, tag=tag).save() from django.core.mail import send_mail send_mail('New article: %s' % form.cleaned_data['link'], message, '*****@*****.**', recipients) return HttpResponseRedirect('/') else: form = ArticleForm() return render_to_response('article/add_article.html', { 'form':form, 'ayah': ayah.get_publisher_html() }, context_instance=RequestContext(request) )
def member_registration(request): ''' This view controls User registration. ''' ayah_html = ayah.get_publisher_html() if request.user.is_authenticated(): return HttpResponseRedirect('/members/profile/') if request.method == 'POST': form = UserRegistrationForm(request.POST, request.FILES) if form.is_valid(): secret = request.POST['session_secret'] passed = ayah.score_result(secret) if passed: user = User.objects.create_user( username=form.cleaned_data['username'], email = form.cleaned_data['email'], password = form.cleaned_data['password'], ) user.first_name = form.cleaned_data['first_name'] user.last_name = form.cleaned_data['last_name'] user.save() profile = user.get_profile() profile.about = form.cleaned_data['about'] profile.save() member = authenticate(username=form.cleaned_data['username'], password=form.cleaned_data['password']) login(request, member) return HttpResponseRedirect('/members/profile/') else: context = {'form':form, 'ayah_html':ayah_html} else: context = {'form':form, 'ayah_html':ayah_html} else: form = UserRegistrationForm() context = {'form':form, 'ayah_html':ayah_html} return render_to_response( 'members/register_member.html', context, context_instance=RequestContext(request))
def member_registration(request): ''' This view controls User registration. ''' ayah_html = ayah.get_publisher_html() if request.user.is_authenticated(): return HttpResponseRedirect('/members/profile/') if request.method == 'POST': form = UserRegistrationForm(request.POST, request.FILES) if form.is_valid(): secret = request.POST['session_secret'] passed = ayah.score_result(secret) if passed: user = User.objects.create_user( username=form.cleaned_data['username'], email=form.cleaned_data['email'], password=form.cleaned_data['password'], ) user.first_name = form.cleaned_data['first_name'] user.last_name = form.cleaned_data['last_name'] user.save() profile = user.get_profile() profile.about = form.cleaned_data['about'] profile.save() member = authenticate(username=form.cleaned_data['username'], password=form.cleaned_data['password']) login(request, member) return HttpResponseRedirect('/members/profile/') else: context = {'form': form, 'ayah_html': ayah_html} else: context = {'form': form, 'ayah_html': ayah_html} else: form = UserRegistrationForm() context = {'form': form, 'ayah_html': ayah_html} return render_to_response('members/register_member.html', context, context_instance=RequestContext(request))
def render(self, name, value, attrs=None): # a hack :-( assert name == 'session_secret' return mark_safe(unicode(ayah.get_publisher_html()))
def register(): """ The register view. Renders the register form when requested and performs the registration process when submitted. """ ayah_html = ayah.get_publisher_html() if request.method == 'POST': form = request.form hashed_username = unicode(hash_username(form['username'])) secret = form['session_secret'] passed = ayah.score_result(secret) if passed: # check if the email exists already in the DB. try: email_user_object = None email_user_cursor = r.db(DB_EMAILS).table(T_EMAILS).get_all(form['email'], index="email").run() for d in email_user_cursor: email_user_object = d if len(form['email']) == 0: pass elif len(form['email']) > 0: if email_user_object is not None: if email_user_object['email'] == form['email']: form = RegisterForm(request.form) message = "Email already exists!" return render_template('register.html', form=form, ayah_html=ayah_html, message=message) else: pass except RqlRuntimeError: form = RegisterForm(request.form) message = "Email already exists!" return render_template('register.html', form=form, ayah_html=ayah_html, message=message) try: # if this runs, DB already exists with email and we continue on r.db_create(hashed_username).run() # this is where all graphs will be saved new_user = {} new_user['email'] = form['email'] # can be empty, but must be unique, as checked above. new_user['user_id'] = form['username'] new_user['username'] = form['username'] new_user['password'] = hash_password(form['username'], form['password']) new_user['site_id'] = hashed_username # just the username hashed new_user['date_registered'] = str(datetime.now()) r.db(DB_USERS).table_create(hashed_username).run() r.db(DB_USERS).table(hashed_username).insert(new_user).run() r.db(DB_USERS).table(hashed_username).index_create("site_id").run() # r.db(DB_USERS).table(hashed_username).index_wait("site_id").run() r.db(DB_USERS).table(hashed_username).index_create("email").run() # r.db(DB_USERS).table(hashed_username).index_wait("email").run() email_map_obj = { 'username': form['username'], 'email': form['email'] } r.db(DB_EMAILS).table(T_EMAILS).insert(email_map_obj).run() return redirect(url_for('login')) except RqlRuntimeError: form = RegisterForm(request.form) message = "Username already exists! Please try again." return render_template('register.html', form=form, ayah_html=ayah_html, message=message) else: form = RegisterForm(request.form) message = "You ain't no human! Please try again." return render_template('register.html', form=form, ayah_html=ayah_html, message=message) elif request.method == 'GET': form = RegisterForm(request.form) return render_template('register.html', form=form, ayah_html=ayah_html)