def add_widget(): target_type = request.form['target_type'] target_id = int(request.form['target_id']) title = request.form['title'] content = request.form['content'] index = int(request.form['index']) Widget.add_widget(target_type, target_id, title, content, index) return redirect(url_for('admin_widgets', target_type=target_type, target_id=target_id))
def add_widget(): target_type = request.form['target_type'] target_id = int(request.form['target_id']) title = request.form['title'] content = request.form['content'] index = int(request.form['index']) Widget.add_widget(target_type, target_id, title, content, index) return redirect( url_for('admin_widgets', target_type=target_type, target_id=target_id))
def edit_widget(widget_id): if request.method == 'GET': widget = Widget.get_widget(widget_id) return render_template('edit_widget.html', widget=widget) elif request.method == 'POST': target_type = request.form['target_type'] target_id = int(request.form['target_id']) title = request.form['title'] content = request.form['content'] index = int(request.form['index']) Widget.edit_widget(widget_id, title, content, index) return redirect(url_for('admin_widgets', target_type=target_type, target_id=target_id))
def single_work(work_id): work = Work.get_work(work_id) # add comment work['Content'] = re.sub(r'<([^<^b]+)>', r"<sup title='\1'></sup>", work['Content']) work['Content'] = work['Content'].replace('%', " ") # count the geci's padding left if work['Type'] == "geci": paras = work['Content'].split('/')[0].split('\r\n\r\n') total_word_len = 0 total_row_num = 0 for para in paras: if len(para) != 0: total_word_len += len(para) total_row_num += 1 geci_padding_left = (36 - total_word_len / total_row_num) / 2 + 1 else: geci_padding_left = '0' # gene paragraph work['Content'] = markdown2.markdown(work['Content']) # add bank row work['Content'] = work['Content'].replace('<p>/</p>', "<div class='bank'></div>") reviews = Review.get_reviews_by_work(work_id) widgets = Widget.get_widgets('work', work_id) # check is loved if 'user_id' in session: is_loved = Love.check_love(session['user_id'], work_id) else: is_loved = False return render_template('single_work.html', work=work, reviews=reviews, widgets=widgets, is_loved=is_loved, geci_padding_left=geci_padding_left)
def edit_widget(widget_id): if request.method == 'GET': widget = Widget.get_widget(widget_id) return render_template('edit_widget.html', widget=widget) elif request.method == 'POST': target_type = request.form['target_type'] target_id = int(request.form['target_id']) title = request.form['title'] content = request.form['content'] index = int(request.form['index']) Widget.edit_widget(widget_id, title, content, index) return redirect( url_for('admin_widgets', target_type=target_type, target_id=target_id))
def admin_widgets(target_type, target_id): check_admin() widgets = Widget.get_widgets(target_type, target_id) return render_template('admin_widgets.html', target_type=target_type, target_id=target_id, widgets=widgets)
def single_work(work_id): work = Work.get_work(work_id) if not work: abort(404) # add comment, split ci, gene paragraph work['Content'] = re.sub(r'<([^<^b]+)>', r"<sup title='\1'></sup>", work['Content']) work['Content'] = work['Content'].replace('%', " ") work['Content'] = markdown2.markdown(work['Content']) # check is loved if 'user_id' in session: is_loved = Love_work.check_love(session['user_id'], work_id) tags = Love_work.get_tags(session['user_id'], work_id) if is_loved else "" my_tags = Tag.get_user_tags(session['user_id'], 20) popular_tags = Tag.get_work_tags(work_id, 20) else: is_loved = False tags = "" my_tags = [] popular_tags = [] reviews = Review.get_reviews_by_work(work_id) for r in reviews: r['Time'] = time_diff(r['Time']) widgets = Widget.get_widgets('work', work_id) product = Product.get_product_by_random() other_works = Work.get_other_works_by_author(work['AuthorID'], work_id, 5) for ow in other_works: ow['Content'] = content_clean(ow['Content']) lovers = Love_work.get_users_by_work(work_id, 4) return render_template('single_work.html', work=work, tags=tags, my_tags=my_tags, popular_tags=popular_tags, reviews=reviews, widgets=widgets, is_loved=is_loved, product=product, other_works=other_works, lovers=lovers)
def admin_widgets(target_type, target_id): widgets = Widget.get_widgets(target_type, target_id) return render_template('admin_widgets.html', target_type=target_type, target_id=target_id, widgets=widgets)