Exemple #1
0
def send_drift(gid):
    # 发起索要图书请求
    # 1.检查是不是自己的
    # 2.检查鱼豆是否大于1
    # 3.是否满足,成功索要两本书,必须成功送出一本书
    gift = Gift.query.filter_by(id=gid).first_or_404()
    if gift.is_myself_gift(current_user.id):
        flash('这本书是你自己的^_^, 不能向自己索要书籍噢')
        return redirect(url_for('web.book_detail', isbn=gift.isbn))
    if not current_user.can_send_drift():
        return render_template('not_enough_beans.html',
                               beans=current_user.beans)
    wtform = DriftForm(request.form)
    # 步入正文
    if request.method == 'POST' and wtform.validate():
        drift = Drift()
        drift.save_to_drift(wtform, gift, current_user.id,
                            current_user.nickname)
        send_mail(gift.user.email,
                  '有人想要您上传的图书: 《' + gift.book['title'] + '》',
                  'email/get_gift.html',
                  wisher=current_user,
                  gift=gift)
        return redirect(url_for('web.pending'))
    user = User.query.filter_by(id=gift.uid).first_or_404()
    viewmodel = UsersSummary(user)
    return render_template('drift.html',
                           gifter=viewmodel.first,
                           user_beans=current_user.beans,
                           form=wtform)
Exemple #2
0
def send_drift(gid):
    gift = Gift.query.get_or_404(gid)
    if gift.is_myself_gift(current_user.id):
        return redirect(url_for('web.book_detail', isbn=gift.isbn))
    if not current_user.can_send_drift():
        return render_template('not_enough_beans.html',
                               beans=current_user.beans)

    wtform = DriftForm(request.form)
    if request.method == 'POST' and wtform.validate():
        drift = Drift()
        drift.save_to_drift(wtform, gift, current_user.id,
                            current_user.nickname)
        send_mail(gift.user.email,
                  '有人想要您上传的图书: 《' + gift.book['title'] + '》',
                  'email/get_gift.html',
                  wisher=current_user,
                  gift=gift)
        return redirect(url_for('web.pending'))
    user = User.query.filter_by(id=gift.uid).first_or_404()
    viewmodel = UsersSummary(user)
    return render_template('drift.html',
                           gifter=viewmodel.first,
                           user_beans=current_user.beans,
                           form=wtform)