Пример #1
0
def view_paste(type, paste):
    if type == "p":
        if isinstance(paste, list):
            raise Exception()

        try:
            paste = PasteController().read_text(uid=paste)
        except:
            return render_error("No Paste by that ID")

    elif type == "i":
        pastes = []

        if isinstance(paste, list):
            for p in paste:
                try:
                    paste = PasteController().read_image(uid=p)
                    pastes.append(paste)
                except:
                    pass
        else:
            pastes.append(PasteController().read_image(uid=paste))

        return render("paste", type=type, pastes=pastes, multi=True)

    return render("paste", type=type, paste=paste, multi=False)
Пример #2
0
def view_paste(type, paste):
    if type == "p":
        if isinstance(paste, list):
            raise Exception()

        try:
            paste = PasteController().read_text(uid=paste)
        except:
            return render_error("No Paste by that ID")

    elif type == "i":
        pastes = []

        if isinstance(paste, list):
            for p in paste:
                try:
                    paste = PasteController().read_image(uid=p)
                    pastes.append(paste)
                except:
                    pass
        else:
            pastes.append(PasteController().read_image(uid=paste))

        return render("paste", type=type, pastes=pastes, multi=True)

    return render("paste", type=type, paste=paste, multi=False)
Пример #3
0
def paste():
    try:
        content = request.form['paste[body]']

        if 'paste[restricted]' in request.form and request.form['paste[restricted]'] == '1':
            restricted = True
        else:
            restricted = False

        lang = request.form['paste[lang]']
        if lang == '0':
            lang = 'plain'

        lang = re.sub('[^0-9a-zA-Z]+', '', lang)

        expiration = expires_at(request.form['paste[expir]'])

        uid = PasteController().write(ip_addr=request.remote_addr,
                                      syntax=lang,
                                      expiration=expiration,
                                      contents=content,
                                      private=restricted)

        return redirect('/paste/%s' % uid, code=302)
    except:
        return render('index', errors=['Bla failed j00'])
Пример #4
0
def static(filename):
    if filename.startswith('/'):
        return abort(404)

    from paste.controllers.helpers import render

    filename = filename.replace('..', '')
    filename = filename.replace('./', '')

    search_dirs = ['static/']

    # if not settings.local:
    #     search_dirs.insert(0, 'themes/_setup/static/')

    if filename.startswith('themes/'):
        spl = filename.split('/')

        if len(spl) >= 3 and spl[2] == 'static':
            filename = '/'.join(spl[3:])
            search_dirs.insert(0, 'themes/%s/static/' % spl[1])

    for search_dir in search_dirs:
        directory = '%s/%s' % (app.config['dir_base'], search_dir)

        if os.path.isfile(directory + filename):
            return send_from_directory(directory, filename)

    return render('errors/404', status_code=404)
Пример #5
0
def paste():
    try:
        if request.files:
            files = request.files
            if not "files[]" in files:
                raise Exception("files[] not found")

            uids = []
            uploaded_files = request.files.getlist("files[]")
            for img in uploaded_files:
                uid = PasteController().write_image(
                    ip_addr=request.remote_addr, image=img)
                uids.append(uid)

            if uids:
                return jsonify({
                    "success": True,
                    "uri": "/i/%s" % ",".join(uids)
                })
            else:
                raise Exception()
        else:
            content = request.form.get("paste[body]", {})

            if "paste[restricted]" in request.form and request.form[
                    "paste[restricted]"] == "1":
                restricted = True
            else:
                restricted = False

            lang = request.form.get("paste[lang]", {})
            if lang == "0":
                lang = "plain"

            lang = re.sub("[^0-9a-zA-Z]+", "", lang)

            expiration = expires_at(request.form["paste[expir]"])

            uid = PasteController().write_text(ip_addr=request.remote_addr,
                                               syntax=lang,
                                               expiration=expiration,
                                               contents=content,
                                               private=restricted)

            return redirect("/p/%s" % uid, code=302)
    except Exception as ex:
        return render("index", errors=["failed j00"])
Пример #6
0
def paste():
    try:
        if request.files:
            files = request.files
            if not "files[]" in files:
                raise Exception("files[] not found")

            uids = []
            uploaded_files = request.files.getlist("files[]")
            for img in uploaded_files:
                uid = PasteController().write_image(ip_addr=request.remote_addr,
                                                    image=img)
                uids.append(uid)

            if uids:
                return jsonify({"success": True, "uri": "/i/%s" % ",".join(uids)})
            else:
                raise Exception()
        else:
            content = request.form.get("paste[body]", {})

            if "paste[restricted]" in request.form and request.form["paste[restricted]"] == "1":
                restricted = True
            else:
                restricted = False

            lang = request.form.get("paste[lang]", {})
            if lang == "0":
                lang = "plain"

            lang = re.sub("[^0-9a-zA-Z]+", "", lang)

            expiration = expires_at(request.form["paste[expir]"])

            uid = PasteController().write_text(ip_addr=request.remote_addr,
                                               syntax=lang,
                                               expiration=expiration,
                                               contents=content,
                                               private=restricted)

            return redirect("/p/%s" % uid, code=302)
    except Exception as ex:
        return render("index", errors=["failed j00"])
Пример #7
0
def root():
    return render('index')
Пример #8
0
def error(e):
    return render('error', msg=str(e))
Пример #9
0
def view_paste(paste):
    if isinstance(paste, (str, unicode)):
        return paste

    return render('paste', paste=paste)