Exemplo n.º 1
0
def discuss_paste(request,hash_key):
    """ Creates a new Paste, linking it with a previous one.
        In this way, Pastes may be enhanced and diffs can be performed
    """
    paste_discussed = get_object_or_404(Paste, hash_key=hash_key)
    update_last_view(paste_discussed)
    clean_pastes()
    form = PasteForm(instance=paste_discussed)
    language = paste_discussed.language
    private = paste_discussed.private
    
    if request.method == 'POST': 
        form = PasteForm(request.POST)
        if form.is_valid():
            tempPaste = form.save(commit=False)
            tempPaste.hash_key = tempPaste.hash()
            # recompute the hash key if there is a collision
            while (is_collision(tempPaste.hash_key)): 
                tempPaste.hash_key = tempPaste.hash()
            tempPaste.in_response_to = paste_discussed
            tempPaste.private = private
            tempPaste.save()
            return HttpResponseRedirect(tempPaste.get_absolute_url()) # visualize the Paste'''
    return render_to_response('discuss_paste.html', {
        'error_message': None,
        'paste_discussed': paste_discussed,
        'form': form,
    },context_instance=RequestContext(request))
Exemplo n.º 2
0
def create(request):
    if request.method == 'POST':
        form = PasteForm(request.POST)
        if form.is_valid():
            paste = form.save()
            return HttpResponseRedirect(paste.get_absolute_url())
    else:
        form = PasteForm()
    
    return render_to_response('geopastebin/create.html', {
        'form' : form,
    }, context_instance=RequestContext(request))
Exemplo n.º 3
0
def index(request):
    """Displays form."""
    data = {"menu": "index", "max_characters": settings.MAX_CHARACTERS}
    if request.method == "POST":
        paste = Paste(
            slug=random_id(), paste_ip=request.META["REMOTE_ADDR"], paste_agent=request.META["HTTP_USER_AGENT"]
        )
        form = PasteForm(request.POST, instance=paste)
        if not form.is_valid():
            data["form"] = form
            return render(request, "paste/index.html", data)
        form.save()  # Some logic added to overrided method, see forms.py
        return redirect(reverse("paste", kwargs={"slug": paste.slug, "renderer": settings.DEFAULT_RENDERER}))
    data["form"] = PasteForm()
    return render(request, "paste/index.html", data)
Exemplo n.º 4
0
def home(request):
    if request.method == 'POST':
        logging.info(request.POST)
        print request.POST
        form = PasteForm(request.POST)
        if form.is_valid():
            guest = User.objects.get_or_create(username='******')[0]
            Snippet.objects.create(owner=guest,title=request.POST['title'],
                                   language=request.POST['language'],code=request.POST['snippet'])

            return HttpResponseRedirect(reverse('home'))
    else:
        form = PasteForm()
    template = "index.html"
    return render_to_response(template,{'form': form},
        context_instance=RequestContext(request))
Exemplo n.º 5
0
def home(request):
    if request.method == 'POST':
        logging.info(request.POST)
        print request.POST
        form = PasteForm(request.POST)
        if form.is_valid():
            guest = User.objects.get_or_create(username='******')[0]
            Snippet.objects.create(owner=guest,
                                   title=request.POST['title'],
                                   language=request.POST['language'],
                                   code=request.POST['snippet'])

            return HttpResponseRedirect(reverse('home'))
    else:
        form = PasteForm()
    template = "index.html"
    return render_to_response(template, {'form': form},
                              context_instance=RequestContext(request))
Exemplo n.º 6
0
def index(request):
    """Displays form."""
    data = {'menu': 'index', 'max_characters': settings.MAX_CHARACTERS}
    if request.method == 'POST':
        paste = Paste(slug=random_id(),
                      paste_ip=request.META['REMOTE_ADDR'],
                      paste_agent=request.META['HTTP_USER_AGENT'])
        form = PasteForm(request.POST, instance=paste)
        if not form.is_valid():
            data['form'] = form
            return render(request, 'paste/index.html', data)
        form.save()  # Some logic added to overrided method, see forms.py
        return redirect(
            reverse('paste',
                    kwargs={
                        'slug': paste.slug,
                        'renderer': settings.DEFAULT_RENDERER
                    }))
    data['form'] = PasteForm()
    return render(request, 'paste/index.html', data)
Exemplo n.º 7
0
def add_paste(request):
    """ Adds a new paste in the database
    """
    clean_pastes()
    if request.method == 'POST': # If the form has been submitted...
        form = PasteForm(request.POST) # creates a PasteForm object with the posted data
        if form.is_valid():
            tempPaste = form.save(commit=False)
            tempPaste.hash_key = tempPaste.hash()
            # recompute the hash key if there is a collision
            while (is_collision(tempPaste.hash_key)): 
                tempPaste.hash_key = tempPaste.hash()   
            tempPaste.save()
            remember_the_paste(request,tempPaste)
            return HttpResponseRedirect(tempPaste.get_absolute_url()) # visualize the Paste
    else:
        form = PasteForm() # A new form
    return render_to_response('paste_form.html', {
        'error_message': None,
        'form': form,
    },context_instance=RequestContext(request))