def edit_post(post_id, text, taglist=None, private=None): taglist = parse_tags(taglist) try: posts.edit_post(post_id, text, taglist, private) except (SubscribeError, PostAuthorError): return xmpp_template('post_denied', post_id=post_id) except PostUpdateError: return xmpp_template('post_upd_err', post_id=post_id) except PostCommentedError: return xmpp_template('post_commented_err', post_id=post_id) except PostDiffError: return xmpp_template('post_diff_err', post_id=post_id) return xmpp_template('post_upd', post_id=post_id)
def save(post): text = env.request.args('text', '').strip() tags = env.request.args('tags', '').strip(' \t*,;') if isinstance(tags, str): tags = tags.decode('utf-8') tags = [t.replace(u"\xa0", " ") for t in re.split(r'\s*[,;*]\s*', tags)] private = bool(env.request.args('private')) posts.edit_post(post, text=text, tags=tags, private=private, files=files) return Response(redirect='%s://%s.%s/%s' % \ (env.request.protocol, env.user.login, settings.domain, post.id))
def edit_post(id): post = posts.show_post(id) text = env.request.args('text', '').strip() #private = bool(env.request.args('private')) tags = env.request.args('tag', '') or env.request.args('tag[]', '') if not tags: tags = [] elif not isinstance(tags, (list, tuple)): tags = [tags] def _t(tag): if isinstance(tag, str): tag = tag.decode('utf-8') return tag.replace(u"\xa0", " ") tags = map(_t, tags) posts.edit_post(post, text=text, tags=tags)