Esempio n. 1
0
def comment(status_id: str):
    from . import get_api
    api = get_api(session.get('at'), session.get('as'))
    g.form = TextAreaForm()
    if g.form.validate_on_submit():
        if g.form.image.data.filename == '':
            api.update_status(status=g.form.text.data,
                              in_reply_to_status_id=status_id)
        else:
            api.update_with_media(g.form.image.data.filename,
                                  status=g.form.text.data,
                                  in_reply_to_status_id=status_id,
                                  file=BytesIO(request.files[g.form.image.name].read()))
        flash('Tweet commented!', 'info')
        return redirect(url_for('show'))
    else:
        flash_form_error()
        if len(g.form.errors):
            return redirect(request.path)
    g.status = KagamiStatus(api.get_status(status_id))
    g.form.text.data = ' https://twitter.com/{0}/status/{1}'.format(
        g.status.author.screen_name,
        status_id
    )
    g.comment = True
    return render_template('status_detail_with_operation.html')
Esempio n. 2
0
def update():
    from . import get_api
    api = get_api(session.get('at'), session.get('as'))
    g.form = TextAreaForm()
    if g.form.validate_on_submit():
        if g.form.image.data.filename == '':
            api.update_status(status=g.form.text.data)
        else:
            api.update_with_media(g.form.image.data.filename,
                                  status=g.form.text.data,
                                  file=BytesIO(request.files[g.form.image.name].read()))
        flash('Tweet sent!', 'info')
    else:
        flash_form_error()
    return redirect(url_for('show'))
Esempio n. 3
0
def reply(status_id: str):
    from . import get_api
    api = get_api(session.get('at'), session.get('as'))
    g.form = TextAreaForm()
    if g.form.validate_on_submit():
        if g.form.image.data.filename == '':
            api.update_status(status=g.form.text.data,
                              in_reply_to_status_id=status_id)
        else:
            api.update_with_media(g.form.image.data.filename,
                                  status=g.form.text.data,
                                  in_reply_to_status_id=status_id,
                                  file=BytesIO(request.files[g.form.image.name].read()))
        flash('Tweet replied!', 'info')
        return redirect(url_for('show'))
    else:
        flash_form_error()
        if len(g.form.errors):
            return redirect(request.path)
    g.status = KagamiStatus(api.get_status(status_id))
    g.form.text.data = kagami.handler.reply_handle(g.status.text, g.status.user.screen_name)
    g.reply = True
    return render_template('status_detail_with_operation.html')