def update(type, cid): if not (g.user.is_planner() or g.user.is_operater()): abort(403) case = Case.get(cid) mediums_form = MediumsForm(request.form) mediums_form.mediums.data = [u.id for u in case.mediums] if request.method == 'POST': name = request.values.get('name', '') url = request.values.get('url', '') brand = request.values.get('brand', '') industry = request.values.get('industry', '') desc = request.values.get('desc', '') tags = request.values.get('tags', '').split(',') is_win = int(request.values.get('is_win', 0)) pwd = request.values.get('pwd', '') case.name = name case.url = url case.medium = Medium.get(1) case.mediums = Medium.gets(request.values.getlist('mediums')) case.brand = brand case.industry = industry case.desc = desc case.is_win = is_win case.creator = g.user case.create_time = datetime.datetime.now() case.pwd = pwd case.save() TagCase.query.filter_by(case=case).delete() for k in tags: if k: tag = Tag.query.filter_by(name=k) if tag.count() > 0: tag = tag.first() else: tag = Tag.add(name=k) tag = Tag.get(tag.id) TagCase.add(tag=tag, case=case) flash(u'修改成功', 'success') return redirect(url_for('mediums_planning.update', type=type, cid=cid)) return tpl('/mediums/planning/update.html', title=CASE_TYPE_CN[int(type)], mediums=Medium.all(), type=type, case=case, mediums_form=mediums_form, INDUSTRY=INDUSTRY)
def create(type): if not (g.user.is_planner() or g.user.is_operater()): abort(403) mediums_form = MediumsForm(request.form) if request.method == 'POST': name = request.values.get('name', '') url = request.values.get('url', '') brand = request.values.get('brand', '') industry = request.values.get('industry', '') desc = request.values.get('desc', '') pwd = request.values.get('pwd', '') tags = request.values.get('tags', '').split(',') is_win = int(request.values.get('is_win', 0)) if Case.query.filter_by(name=name, type=type).count() > 0: flash(u'名称已存在', 'danger') return redirect(url_for('mediums_planning.create', type=type)) case = Case.add(name=name, url=url, medium=Medium.get(1), mediums=Medium.gets(request.values.getlist('mediums')), brand=brand, industry=industry, desc=desc, creator=g.user, type=type, is_win=is_win, pwd=pwd) case = Case.get(case.id) for k in tags: if k: tag = Tag.query.filter_by(name=k) if tag.count() > 0: tag = tag.first() else: tag = Tag.add(name=k) tag = Tag.get(tag.id) TagCase.add(tag=tag, case=case) flash(u'添加成功', 'success') return redirect(url_for('mediums_planning.index', type=type)) return tpl('/mediums/planning/create.html', title=CASE_TYPE_CN[int(type)], mediums=Medium.all(), type=type, mediums_form=mediums_form, INDUSTRY=INDUSTRY)
def update(type, cid): if not (g.user.is_planner() or g.user.is_operater()): abort(403) case = Case.get(cid) mediums_form = MediumsForm(request.form) mediums_form.mediums.data = [u.id for u in case.mediums] if request.method == 'POST': name = request.values.get('name', '') url = request.values.get('url', '') brand = request.values.get('brand', '') industry = request.values.get('industry', '') desc = request.values.get('desc', '') tags = request.values.get('tags', '').split(',') is_win = int(request.values.get('is_win', 0)) pwd = request.values.get('pwd', '') case.name = name case.url = url case.medium = Medium.get(1) case.mediums = Medium.gets(request.values.getlist('mediums')) case.brand = brand case.industry = industry case.desc = desc case.is_win = is_win case.creator = g.user case.create_time = datetime.datetime.now() case.pwd = pwd case.save() TagCase.query.filter_by(case=case).delete() for k in tags: if k: tag = Tag.query.filter_by(name=k) if tag.count() > 0: tag = tag.first() else: tag = Tag.add(name=k) tag = Tag.get(tag.id) TagCase.add(tag=tag, case=case) flash(u'修改成功', 'success') return redirect(url_for('mediums_planning.update', type=type, cid=cid)) return tpl('/mediums/planning/update.html', title=CASE_TYPE_CN[int(type)], mediums=Medium.all(), type=type, case=case, mediums_form=mediums_form, INDUSTRY=INDUSTRY)
def create(type): if not (g.user.is_planner() or g.user.is_operater()): abort(403) mediums_form = MediumsForm(request.form) if request.method == 'POST': name = request.values.get('name', '') url = request.values.get('url', '') brand = request.values.get('brand', '') industry = request.values.get('industry', '') desc = request.values.get('desc', '') pwd = request.values.get('pwd', '') tags = request.values.get('tags', '').split(',') is_win = int(request.values.get('is_win', 0)) if Case.query.filter_by(name=name, type=type).count() > 0: flash(u'名称已存在', 'danger') return redirect(url_for('mediums_planning.create', type=type)) case = Case.add(name=name, url=url, medium=Medium.get(1), mediums=Medium.gets(request.values.getlist('mediums')), brand=brand, industry=industry, desc=desc, creator=g.user, type=type, is_win=is_win, pwd=pwd) case = Case.get(case.id) for k in tags: if k: tag = Tag.query.filter_by(name=k) if tag.count() > 0: tag = tag.first() else: tag = Tag.add(name=k) tag = Tag.get(tag.id) TagCase.add(tag=tag, case=case) flash(u'添加成功', 'success') return redirect(url_for('mediums_planning.index', type=type)) return tpl('/mediums/planning/create.html', title=CASE_TYPE_CN[int(type)], mediums=Medium.all(), type=type, mediums_form=mediums_form, INDUSTRY=INDUSTRY)