def createPaste(request): if request.method == 'GET': return HttpResponse("This address is meant for POST requests.\n") lUsername = request.POST.get('username') lPassword = request.POST.get('password') lTitle = request.POST.get('title') lContent = request.POST.get('content') if lTitle == None: lTitle = "Untitled" p = Paste(content = lContent, title = lTitle) if lUsername != None and lPassword != None: if User.objects.filter(username=lUsername).count() != 0: lUser = User.objects.filter(username = lUsername)[0] if check_password(lPassword, lUser.password): p.owner = lUser else: return HttpResponse("Authentification failed:") else: return HttpResponse("User does not exist.") p.save() return HttpResponse("http://localhost:8000/paste/" + str(p.id) + "\n")
def manage(request): if request.method == 'POST': t = request.POST.get('title', None) l = request.POST.get('lang', None) c = request.POST.get('content', None) snippet = Paste(title=t, lang=l, content=c) snippet.save() #Filtrar: lang = request.GET.get('l', None) query = request.GET.get('q', None) #obtener todos los snippets snippets = Paste.objects.all() #snippets es un QuerySet, y éstos son encadenables (se les #pueden aplicar otros querysets) if lang: snippets = snippets.filter(lang=lang) if query: snippets = snippets.filter(title__icontains=query) #obtener la plantilla template = loader.get_template('list.html') context = Context({ 'snippets': snippets, 'langs': Paste.LANGS, 'choice': lang }) return HttpResponse(template.render(context))
def paste_view(request, pastehash = None): """Basic pastebin.""" context = {} context['errors'] = [] if request.method == "POST" and request.POST: paste = Paste() pasteform = PasteForm(request.POST, instance=paste) if pasteform.is_valid(): paste = pasteform.save() return redirect(paste.get_absolute_url()) else: if pastehash: paste = get_object_or_404(Paste, id=pastehash) paste.save() context['paste'] = paste # For now, I'm going to leave the expiration here. Paste.objects.remove_expired() pasteform = PasteForm() context['pasteform'] = pasteform context['previous_pastes'] = Paste.objects.all()[:settings.SHOWN_RECENT_PASTES] return render(request, 'paste.html', context)
def test_many_create_paste(self): """Because I can. Also, makes a good stress test. My current ID length is set to 6. This should give me a hash space of just over a billion. 32^6. Collisions won't be an issue.""" count = 1000 # 1,000,000 takes just under a half hour on my setup for x in xrange(count): p = Paste(title="test%s" % x, text="multiple test %s" % x) p.save() self.assertEqual(count, Paste.objects.count())
def new(request): if request.POST.has_key('text'): pasted = Paste() pasted.text = request.POST['text'] pasted.save() return HttpResponseRedirect(reverse('pastebin.views.show', kwargs={'id': pasted.id})) # return HttpResponseRedirect("/%i/" % pasted.id) else: return render_to_response('input.html', context_instance=RequestContext(request))
def _create_random_paste(user, syntax, date=datetime.datetime.now(), expires_in=10 * 60): paste = Paste() paste.title = _create_random_string() paste.content = _create_random_string() paste.syntax = syntax paste.expires_in = expires_in paste.author = user paste.created = date paste.save() return paste
def main(request): if request.method == "POST": previous = request.POST["content"] new_hash = previous.strip() id = hashlib.md5(new_hash.encode()).hexdigest() try: Paste.object.get(url=id) except: p = Paste(content=previous, url=id) p.save() new_url = 'http://%s%s' % ('127.0.0.1:8000/pastebin/fetch_paste/', id) return render(request, 'pastebin/index.html', {'new_url': new_url}) else: return render(request, 'pastebin/index.html')
def page(request): if request.POST: form = PasteForm(request.POST) if request.user.is_authenticated(): user_obj = User.objects.get(username=request.user) else: try: user_obj = User.objects.get(username='******') except: # Create a dummy user user_obj = User.objects.create_user(username='******', password='******') user_obj.is_active = False user_obj.is_staff = False user_obj.first_name = 'Temp User' user_obj.save() if form.is_valid(): content = form.cleaned_data['content'] title = form.cleaned_data['title'] syntax = form.cleaned_data['syntax'] createDate = form.cleaned_data['createDate'] expiryDate = form.cleaned_data['expiryDate'] new_paste = Paste(author=user_obj, content=content, title=title, syntax=syntax, createDate=createDate, expiryDate=expiryDate) new_paste.save() return redirect('paste_detail/' + str(new_paste.id) + '/') else: return render(request, 'paste_form.html', {'form': form}) else: form = PasteForm() return render(request, 'paste_form.html', {'form': form})
def manage(request): if request.method == "POST": t = request.POST.get("title", None) l = request.POST.get("lang", None) c = request.POST.get("content", None) snippet = Paste(title=t, lang=l, content=c) snippet.save() # Filtrar: lang = request.GET.get("l", None) query = request.GET.get("q", None) # obtener todos los snippets snippets = Paste.objects.all() # snippets es un QuerySet, y éstos son encadenables (se les # pueden aplicar otros querysets) if lang: snippets = snippets.filter(lang=lang) if query: snippets = snippets.filter(title__icontains=query) # obtener la plantilla template = loader.get_template("list.html") context = Context({"snippets": snippets, "langs": Paste.LANGS, "choice": lang}) return HttpResponse(template.render(context))
def PasteListView(request): if request.POST : a=Paste(title=request.POST['title'],syntax=request.POST['syntax'],poster=request.POST['poster'],content=request.POST['content']) a.save() paste=Paste.objects.all() return render_to_response("pastebin/paste_list.html",{'object_list':paste})
def save(self): cd = self.cleaned_data paste = Paste(code=cd['code']) paste.save() return paste