def SearchPage(request): try: if request.GET['q']: try: redirect_name = TitleModel.objects.get(name=request.GET['q']).name except: new_title = TitleModel(name=request.GET['q']) #entry formunun kodları if request.POST: new_title.save() form = EntryForm(request.POST, initial={'author': request.user, 'title': request.GET['q']}) if form.is_valid(): form.save() return HttpResponseRedirect('/baslik/{}'.format(request.GET['q'])) else: TitleModel.objects.get(name=request.GET['q']).delete() else: form = EntryForm(initial={'author': request.user, 'title': request.GET['q']}) args = {} args.update(csrf(request)) args['form'] = form return render(request, 'search/no_title.html', { 'form': args, 'title': request.GET['q'] }) return HttpResponseRedirect('/baslik/{}'.format(redirect_name)) else: return render(request, 'search/search.html') except: return render(request, 'search/search.html')
def create_entry(request): if request.method == 'POST': entry_form = EntryForm(request.POST) if entry_form.is_valid(): entry_form.save(request.user) return HttpResponseRedirect('/') else: return HttpResponseRedirect('/')
def test_entryform_valid(self): user = User.objects.create_user(username='******', email='*****@*****.**', password='******') form = EntryForm({ 'user': user, 'keyword': 'test', 'content': 'this is a test' }) self.assertTrue(form.is_valid())
def EntryPage(request, entry_id): entry = get_object_or_404(EntryModel, id=entry_id) if request.POST: form = EntryForm(request.POST, initial={ 'author': request.user, 'title': get_object_or_404(TitleModel, name=entry.title) }) if form.is_valid(): form.save() return HttpResponseRedirect('/baslik/{}'.format(entry.title)) else: form = EntryForm( initial={ 'author': request.user, 'title': get_object_or_404(TitleModel, name=entry.title) }) args = {} args.update(csrf(request)) args['form'] = form return render(request, 'entry_page.html', {'entry': entry, 'form': args})
def EntryPage(request, entry_id): entry = get_object_or_404(EntryModel, id=entry_id) if request.POST: form = EntryForm(request.POST, initial={'author': request.user, 'title': get_object_or_404(TitleModel, name=entry.title)}) if form.is_valid(): form.save() return HttpResponseRedirect('/baslik/{}'.format(entry.title)) else: form = EntryForm(initial={'author': request.user, 'title': get_object_or_404(TitleModel, name=entry.title)}) args = {} args.update(csrf(request)) args['form'] = form return render(request, 'entry_page.html', { 'entry': entry, 'form': args })
def TitlePage(request, title): #entry formunun kodları if request.POST: form = EntryForm(request.POST, initial={'author': request.user, 'title': get_object_or_404(TitleModel, name=title)}) if form.is_valid(): form.save() return HttpResponseRedirect('/baslik/{}'.format(title)) else: form = EntryForm(initial={'author': request.user, 'title': get_object_or_404(TitleModel, name=title)}) args = {} args.update(csrf(request)) args['form'] = form #digerleri try: entries_of_the_title = get_list_or_404(EntryModel, title=get_object_or_404(TitleModel, name=title)) except: entries_of_the_title = "" #sayfa ayarlama kodlari pages = Paginator(entries_of_the_title, 10) try: if request.GET['p']: entries_of_the_title = pages.page(int(request.GET['p'])) num = str(request.GET['p']) except: entries_of_the_title = pages.page(1) num = "1" #hitcount return render(request, 'title_page.html', { 'title': title, 'entries': entries_of_the_title, 'form': args, 'pages': pages, 'current_page': entries_of_the_title, 'page_num': num }, context_instance=RequestContext(request))
def TitlePage(request, title): #entry formunun kodları if request.POST: form = EntryForm(request.POST, initial={ 'author': request.user, 'title': get_object_or_404(TitleModel, name=title) }) if form.is_valid(): form.save() return HttpResponseRedirect('/baslik/{}'.format(title)) else: form = EntryForm( initial={ 'author': request.user, 'title': get_object_or_404(TitleModel, name=title) }) args = {} args.update(csrf(request)) args['form'] = form #digerleri try: entries_of_the_title = get_list_or_404(EntryModel, title=get_object_or_404( TitleModel, name=title)) except: entries_of_the_title = "" #sayfa ayarlama kodlari pages = Paginator(entries_of_the_title, 10) try: if request.GET['p']: entries_of_the_title = pages.page(int(request.GET['p'])) num = str(request.GET['p']) except: entries_of_the_title = pages.page(1) num = "1" #hitcount return render(request, 'title_page.html', { 'title': title, 'entries': entries_of_the_title, 'form': args, 'pages': pages, 'current_page': entries_of_the_title, 'page_num': num }, context_instance=RequestContext(request))
def EditPage(request, id): if id: entry = get_object_or_404(EntryModel, id=id) if request.user != entry.author: return Http404() else: return Http404() if request.POST: form = EntryForm(request.POST, instance=entry) if form.is_valid(): form.save() return HttpResponseRedirect('/entry/{}'.format(entry.id)) else: form = EntryForm(instance=entry) args = {} args.update(csrf(request)) args['form'] = form return render(request, 'edit_entry.html', { 'form': args, 'entry': entry })
def index(request, template='main/view_entries.html', page_template='main/view_entries_page.html'): try: cookie = request.session['beta'] except KeyError: return HttpResponseRedirect('/beta/') else: domain = Site.objects.get_current().domain school_filter = request.GET.get('school') if not school_filter: entry_list = Entry.objects.filter( published='A').order_by('-created') entries = sorted(entry_list, key=lambda o: o.frontpage_rank(), reverse=True) else: entry_list = Entry.objects.filter(published='A').filter( school=school_filter).order_by('-created') entries = sorted(entry_list, key=lambda o: o.frontpage_rank(), reverse=True) form = EntryForm() pickerform = SchoolPickerForm(initial={'schoolpicker': school_filter}) showform = request.GET.get('showform') context = { 'form': form, 'pickerform': pickerform, 'domain': domain, 'entries': entry_list, 'page_template': page_template, 'showform': showform, } if request.is_ajax(): template = page_template if request.session['beta'] == 'first': request.session['beta'] = 'second' elif request.session['beta'] == 'second': request.session['beta'] = 'third' return render_to_response(template, context, context_instance=RequestContext(request))
def EditPage(request, id): if id: entry = get_object_or_404(EntryModel, id=id) if request.user != entry.author: return Http404() else: return Http404() if request.POST: form = EntryForm(request.POST, instance=entry) if form.is_valid(): form.save() return HttpResponseRedirect('/entry/{}'.format(entry.id)) else: form = EntryForm(instance=entry) args = {} args.update(csrf(request)) args['form'] = form return render(request, 'edit_entry.html', {'form': args, 'entry': entry})
def SearchPage(request): try: if request.GET['q']: try: redirect_name = TitleModel.objects.get( name=request.GET['q']).name except: new_title = TitleModel(name=request.GET['q']) #entry formunun kodları if request.POST: new_title.save() form = EntryForm(request.POST, initial={ 'author': request.user, 'title': request.GET['q'] }) if form.is_valid(): form.save() return HttpResponseRedirect('/baslik/{}'.format( request.GET['q'])) else: TitleModel.objects.get(name=request.GET['q']).delete() else: form = EntryForm(initial={ 'author': request.user, 'title': request.GET['q'] }) args = {} args.update(csrf(request)) args['form'] = form return render(request, 'search/no_title.html', { 'form': args, 'title': request.GET['q'] }) return HttpResponseRedirect('/baslik/{}'.format(redirect_name)) else: return render(request, 'search/search.html') except: return render(request, 'search/search.html')
def submit(request): if request.method == 'POST': form = EntryForm(request.POST or None) if not request.POST['honeypot']: try: time_since_last_post = time() - float( request.session['submitted'] ) # Check if user has previously submitted an entry except (KeyError, TypeError, ValueError): # Cookie does not exist time_since_last_post = None finally: if not time_since_last_post or time_since_last_post >= 10: #57600: # Prevent submission more than once in 16 hours if form.is_valid(): e = form.save(commit=False) e.upvotes = 1 e.downvotes = 0 e.published = 'A' # Change to "W" before launch #e.notify = '' #if e.solution == '' or e.solution[:46] == 'Have an idea of how your school can do better?': # e.solution = 'I have no idea.' e.thePost = unicode(e.thePost).encode( 'utf-8', 'ignore') #e.problem = unicode(e.problem).encode('utf-8', 'ignore') e.save() form.save_m2m() entry_id = str(e.id) request.session[entry_id] = "up" request.session['submitted'] = str(time()) if request.is_ajax(): return HttpResponse(status=200) else: request.session['errors'] = '' messages.success( request, "Thank you for sending your thoughts to fixmyschool.net. Your submission is now awaiting moderation. Please check back in the next hour or two to see if your post has been approved." ) return HttpResponseRedirect('/') else: html = form.errors.as_ul() if request.is_ajax(): response = simplejson.dumps({ 'success': 'False', 'html': html }) return HttpResponse( response, content_type="application/javascript") else: request.session['errors'] = html return HttpResponseRedirect("/?showform=True#form") else: # User is trying a repeat submission in less than 16 hrs html = "While we appreciate your dedication to fixmyschool.net,<br> only one submission per hour is permitted during the beta. Once the site launches, the limit will decrease to one submission per day. Please try again later." response = simplejson.dumps({ 'success': 'False', 'html': html }) return HttpResponse(response, content_type="application/javascript") else: return HttpResponse(status=403) #spambot trying to submit form