def iter_data(): for data in iter_site_cafes(): yield Cafe(**data) for data in iter_user_cafes(): yield Cafe(**data) for data in iter_cafe_topics(): yield CafeTopic(**data)
def home(): topics, _ = get_all_topics(0) topic_users = User.cache.get_dict({o.user_id for o in topics}) topic_cafes = CafeTopic.get_topics_cafes([o.id for o in topics]) return render_template( 'front/index.html', topics=topics, topic_users=topic_users, topic_cafes=topic_cafes, )
def home(): topics, _ = get_all_topics(0) topic_users = User.cache.get_dict({o.user_id for o in topics}) topic_cafes = CafeTopic.get_topics_cafes([o.id for o in topics]) return render( 'front/index.html', topics=topics, topic_users=topic_users, topic_cafes=topic_cafes, )
def add_cafe_topic(self, title, content, user_id, cafe_id): t = Topic(title=title, content=content, user_id=user_id) db.session.add(t) db.session.flush() ct = CafeTopic( cafe_id=cafe_id, topic_id=t.id, user_id=user_id, status=CafeTopic.STATUS_PUBLIC, ) db.session.add(ct) return t
def create_public_topic(self): cafe = Cafe( name=u'pub', slug='pub', user_id=1, permission=Cafe.PERMISSION_PUBLIC, status=9, ) db.session.add(cafe) topic = Topic(title=u'hello', content='', user_id=1) db.session.add(topic) db.session.flush() ct = CafeTopic(cafe_id=cafe.id, topic_id=topic.id, user_id=1) db.session.add(ct) db.session.commit() return topic
def timeline(): cursor = int_or_raise('cursor', 0) if request.args.get('show') == 'all': topics, cursor = get_all_topics(cursor) else: topics, cursor = get_timeline_topics(cursor, current_user.id) topics_cafes = CafeTopic.get_topics_cafes([t.id for t in topics]) data = [] for d in iter_items_with_users(topics): d['cafes'] = topics_cafes.get(d['id']) data.append(d) data = list(iter_topics_with_statuses(data, current_user.id)) return jsonify(data=data, cursor=cursor)
def view_topic(tid): topic = Topic.cache.get_or_404(tid) data = make_topic_response(topic) # /api/topic/:id?content=raw vs ?content=html content_format = request.args.get('content') if content_format == 'raw': data['content'] = topic.content else: data['content'] = topic.html TopicStat(tid).increase('views') data['cafes'] = CafeTopic.get_topic_cafes(tid, 1) data['user'] = User.cache.get(topic.user_id) return jsonify(data)