Esempio n. 1
0
    def post(self, **kwargs):
        self.form = PasteForm(request.form)

        if self.form.validate():
            if self.current_user:
                user_key = str(self.current_user.key())
            else:
                user_key = None

            language_code = request.form.get('language')
            code_raw = request.form.get('code', u'')
            code = highlight(code_raw, language_code)

            values = {
                'area_key': str(self.area.key()),
                'user_key': user_key,
                'code_raw': code_raw,
                'code':     code,
                'language': language_code,
            }
            paste = Paste(**values)
            paste.put()
            self.set_message('success', _('The paste was saved.'), flash=True)

            return redirect_to('paste/view', paste_id=paste.id,
                area_name=self.area.name)
        else:
            self.set_form_error(_('Ooops, code is empty! Please post '
                'some lines.'))
            return self.get()
Esempio n. 2
0
    def get(self, **kwargs):
        paste_id = kwargs.pop('paste_id', None)
        if not paste_id:
            raise NotFound()

        paste = Paste.get_by_id(paste_id)
        if not paste:
            raise NotFound()

        return Response(paste.code_raw)
Esempio n. 3
0
    def get(self, **kwargs):
        paste_id = kwargs.pop('paste_id', None)
        if not paste_id:
            raise NotFound()

        paste = Paste.get_by_id(paste_id)
        if not paste:
            raise NotFound()

        self.add_breadcrumb('paste/view',
            _('Paste #%(paste_id)s', paste_id=paste.id),
            paste_id=paste.id)
        form = PasteForm(code=paste.code_raw, language=paste.language)

        context = {
            'paste': paste,
            'form': form,
        }
        return self.render_response('paste/view.html', **context)