def snippet_details(request, snippet_id, template_name='dpaste/snippet_details.html', is_raw=False): """ Details list view of a snippet. Handles the actual view, reply and tree/diff view. """ snippet = get_object_or_404(Snippet, secret_id=snippet_id) # One time snippet get deleted if the view count matches our limit if snippet.expire_type == Snippet.EXPIRE_ONETIME \ and snippet.view_count >= ONETIME_LIMIT: snippet.delete() raise Http404() # Increase the view count of the snippet snippet.view_count += 1 snippet.save() tree = snippet.get_root() tree = tree.get_descendants(include_self=True) new_snippet_initial = { 'content': snippet.content, 'lexer': snippet.lexer, } if request.method == "POST": snippet_form = SnippetForm( data=request.POST, request=request, initial=new_snippet_initial) if snippet_form.is_valid(): new_snippet = snippet_form.save(parent=snippet) url = new_snippet.get_absolute_url() return HttpResponseRedirect(url) else: snippet_form = SnippetForm( initial=new_snippet_initial, request=request) template_context = { 'snippet_form': snippet_form, 'snippet': snippet, 'lexers': LEXER_LIST, 'lines': range(snippet.get_linecount()), 'tree': tree, 'wordwrap': snippet.lexer in LEXER_WORDWRAP and 'True' or 'False', } response = render_to_response( template_name, template_context, RequestContext(request) ) if is_raw: response['Content-Type'] = 'text/plain;charset=UTF-8' response['X-Content-Type-Options'] = 'nosniff' return response else: return response
def snippet_details(request, snippet_id, template_name='dpaste/snippet_details.html', is_raw=False): """ Details list view of a snippet. Handles the actual view, reply and tree/diff view. """ try: snippet = Snippet.objects.get(secret_id=snippet_id) except MultipleObjectsReturned: raise Http404('Multiple snippets exist for this slug. This should never ' 'happen but its likely that you are a spam bot, so I dont ' 'care.') except ObjectDoesNotExist: raise Http404('This snippet does not exist anymore. Its likely that its ' 'lifetime is expired.') tree = snippet.get_root() tree = tree.get_descendants(include_self=True) new_snippet_initial = { 'content': snippet.content, 'lexer': snippet.lexer, } if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request, initial=new_snippet_initial) if snippet_form.is_valid(): new_snippet = snippet_form.save(parent=snippet) url = new_snippet.get_absolute_url() return HttpResponseRedirect(url) else: snippet_form = SnippetForm(initial=new_snippet_initial, request=request) template_context = { 'snippet_form': snippet_form, 'snippet': snippet, 'lexers': LEXER_LIST, 'lines': range(snippet.get_linecount()), 'tree': tree, 'wordwrap': snippet.lexer in LEXER_WORDWRAP and 'True' or 'False', } response = render_to_response( template_name, template_context, RequestContext(request) ) if is_raw: response['Content-Type'] = 'text/plain;charset=UTF-8' return response else: return response
def snippet_details(request, snippet_id, template_name='dpaste/snippet_details.html', is_raw=False): group, bridge = group_and_bridge(request) # Make queryset suitable for getting the right snippet if group: snippets = group.content_objects(Snippet) else: snippets = Snippet.objects.filter(group_object_id=None) snippet = get_object_or_404(snippets, secret_id=snippet_id) request.session.setdefault('snippet_list', []) tree = snippet.get_root() tree = tree.get_descendants(include_self=True) new_snippet_initial = { 'content': snippet.content, 'lexer': snippet.lexer, } if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request, initial=new_snippet_initial) if snippet_form.is_valid(): request, new_snippet = snippet_form.save(parent=snippet, group=group) return HttpResponseRedirect(new_snippet.get_absolute_url()) else: snippet_form = SnippetForm(initial=new_snippet_initial, request=request) template_context = group_context(group, bridge) template_context.update({ 'snippet_form': snippet_form, 'snippet': snippet, 'lines': range(snippet.get_linecount()), 'tree': tree, }) response = render_to_response( template_name, template_context, RequestContext(request) ) if is_raw: response['Content-Type'] = 'text/plain' return response else: return response
def snippet_new(request, template_name='dpaste/snippet_new.html'): if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request) if snippet_form.is_valid(): request, new_snippet = snippet_form.save() return HttpResponseRedirect(new_snippet.get_absolute_url()) else: snippet_form = SnippetForm(request=request) template_context = { 'snippet_form': snippet_form, } return render_to_response( template_name, template_context, RequestContext(request) )
def snippet_new(request, template_name='dpaste/snippet_new.html'): if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request) if snippet_form.is_valid(): request, new_snippet = snippet_form.save(commit=False) # Even if the user is not authenticated new_snippet.author = request.user snippet_form.save() if request.POST.get('announce') != 'none': try: requests.post(PASTE_BASE_URL + '/website/', data={ 'author': str(new_snippet.author), 'id': str(new_snippet.secret_id), 'channel': str(request.POST.get('announce')), 'name': str(new_snippet.title), 'lexer': str(new_snippet.lexer), }) except: pass return HttpResponseRedirect(new_snippet.get_absolute_url()) else: snippet_form = SnippetForm(request=request) template_context = { 'snippet_form': snippet_form, } template_context.update(csrf(request)) return render_to_response( template_name, template_context, RequestContext(request) )
def snippet_details(request, snippet_id, template_name='dpaste/snippet_details.html', is_raw=False): snippet = get_object_or_404(Snippet, secret_id=snippet_id) tree = snippet.get_root() tree = tree.get_descendants(include_self=True) new_snippet_initial = { 'content': snippet.content, 'lexer': snippet.lexer, } if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request, initial=new_snippet_initial) if snippet_form.is_valid(): request, new_snippet = snippet_form.save(parent=snippet) return HttpResponseRedirect(new_snippet.get_absolute_url()) else: snippet_form = SnippetForm(initial=new_snippet_initial, request=request) template_context = { 'snippet_form': snippet_form, 'snippet': snippet, 'lines': range(snippet.get_linecount()), 'tree': tree, } response = render_to_response( template_name, template_context, RequestContext(request) ) if is_raw: response['Content-Type'] = 'text/plain' return response else: return response
def snippet_details(request, snippet_id, template_name='dpaste/snippet_details.html', is_raw=False): """ Details list view of a snippet. Handles the actual view, reply and tree/diff view. """ snippet = get_object_or_404(Snippet, secret_id=snippet_id) # One time snippet get deleted if the view count matches our limit if snippet.expire_type == Snippet.EXPIRE_ONETIME \ and snippet.view_count >= ONETIME_LIMIT: snippet.delete() raise Http404() # Increase the view count of the snippet snippet.view_count += 1 snippet.save() tree = snippet.get_root() tree = tree.get_descendants(include_self=True) new_snippet_initial = { 'content': snippet.content, 'lexer': snippet.lexer, } if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request, initial=new_snippet_initial) if snippet_form.is_valid(): new_snippet = snippet_form.save(parent=snippet) url = new_snippet.get_absolute_url() return HttpResponseRedirect(url) else: snippet_form = SnippetForm(initial=new_snippet_initial, request=request) template_context = { 'snippet_form': snippet_form, 'snippet': snippet, 'lexers': LEXER_LIST, 'lines': range(snippet.get_linecount()), 'tree': tree, 'wordwrap': snippet.lexer in LEXER_WORDWRAP and 'True' or 'False', } response = render_to_response(template_name, template_context, RequestContext(request)) if is_raw: response['Content-Type'] = 'text/plain;charset=UTF-8' response['X-Content-Type-Options'] = 'nosniff' return response else: return response
def snippet_details(request, snippet_id, template_name='dpaste/snippet_details.html', is_raw=False): """ Details list view of a snippet. Handles the actual view, reply and tree/diff view. """ try: snippet = Snippet.objects.get(secret_id=snippet_id) except MultipleObjectsReturned: raise Http404( 'Multiple snippets exist for this slug. This should never ' 'happen but its likely that you are a spam bot, so I dont ' 'care.') except ObjectDoesNotExist: raise Http404( 'This snippet does not exist anymore. Its likely that its ' 'lifetime is expired.') tree = snippet.get_root() tree = tree.get_descendants(include_self=True) new_snippet_initial = { 'content': snippet.content, 'lexer': snippet.lexer, } if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request, initial=new_snippet_initial) if snippet_form.is_valid(): new_snippet = snippet_form.save(parent=snippet) url = new_snippet.get_absolute_url() return HttpResponseRedirect(url) else: snippet_form = SnippetForm(initial=new_snippet_initial, request=request) template_context = { 'snippet_form': snippet_form, 'snippet': snippet, 'lexers': LEXER_LIST, 'lines': range(snippet.get_linecount()), 'tree': tree, 'wordwrap': snippet.lexer in LEXER_WORDWRAP and 'True' or 'False', } response = render_to_response(template_name, template_context, RequestContext(request)) if is_raw: response['Content-Type'] = 'text/plain;charset=UTF-8' return response else: return response
def snippet_new(request, template_name='dpaste/snippet_new.html'): """ Create a new snippet. """ if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request) if snippet_form.is_valid(): new_snippet = snippet_form.save() url = new_snippet.get_absolute_url() return HttpResponseRedirect(url) else: snippet_form = SnippetForm(request=request) template_context = { 'snippet_form': snippet_form, 'lexer_list': LEXER_LIST, 'is_new': True, } return render_to_response( template_name, template_context, RequestContext(request) )
def snippet_new(request, template_name='dpaste/snippet_new.html'): if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request) if snippet_form.is_valid(): request, new_snippet = snippet_form.save() return HttpResponseRedirect(new_snippet.get_absolute_url()) else: snippet_form = SnippetForm(request=request) template_context = { 'snippet_form': snippet_form, } return render_to_response(template_name, template_context, RequestContext(request))
def snippet_details(request, snippet_id, template_name='dpaste/snippet_details.html', is_raw=False): snippet = get_object_or_404(Snippet, secret_id=snippet_id) tree = snippet.get_root() tree = tree.get_descendants(include_self=True) new_snippet_initial = { 'content': snippet.content, 'lexer': snippet.lexer, } if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request, initial=new_snippet_initial) if snippet_form.is_valid(): request, new_snippet = snippet_form.save(parent=snippet) return HttpResponseRedirect(new_snippet.get_absolute_url()) else: snippet_form = SnippetForm(initial=new_snippet_initial, request=request) template_context = { 'snippet_form': snippet_form, 'snippet': snippet, 'lines': range(snippet.get_linecount()), 'tree': tree, } response = render_to_response(template_name, template_context, RequestContext(request)) if is_raw: response['Content-Type'] = 'text/plain' return response else: return response
def snippet_new(request, template_name='dpaste/snippet_new.html'): """ Create a new snippet. """ if request.method == "POST": snippet_form = SnippetForm(data=request.POST, request=request) if snippet_form.is_valid(): new_snippet = snippet_form.save() url = new_snippet.get_absolute_url() return HttpResponseRedirect(url) else: snippet_form = SnippetForm(request=request) template_context = { 'snippet_form': snippet_form, 'lexer_list': LEXER_LIST, 'is_new': True, } return render_to_response(template_name, template_context, RequestContext(request))