def new_post(): key = request.forms.get('key') if not key_verified(key): return 'Verify Failured, Key Error!\n' filename = request.forms.get('filename') content = request.forms.get('content') filename = os.path.basename(filename) title, ext = os.path.splitext(filename) ext = ext.lstrip('.') try: tags_str, content = content.split('\n', 1) tags_str = tags_str.split(':')[-1] tags = [t.strip() for t in tags_str.split(',')] except: return 'Invalid content!\n' try: c = Convert(ext) except NotImplementedError: return 'This format not supported yet!\n' except Exception: return 'Error occurred!\n' try: html = c.convert(content) except ClassNotFound, e: return 'ClassNotFound, %s\n' % str(e)
def new_post(): key = request.forms.get('key') if not key_verified(key): return '<h2>Security Key NOT matched!</h2>' title = request.forms.get('title').strip() if not title: return "<h2>Error: title is empty!</h2>" tags_str = request.forms.get('tags').strip().strip(",") if not tags_str: return "<h2>Error: tag is empty!</h2>" tags = [t.strip() for t in tags_str.split(',')] md = request.forms.get('markdown') if not md: return "<h2>Error: no contents!</h2>" code = request.forms.get('code') html = Convert("md").convert(md) try: with session_context() as session: if not code: p = store_new_post(session, title, html, md, tags) else: p = edit_post(session, code, title, html, md, tags) except Exception as err: p = None msg = str(err) return template('jump2article', p = p, msg = '' if p else msg)
def new_post(): key = request.forms.get("key") if not key_verified(key): return "Verify Failured, Key Error!\n" filename = request.forms.get("filename") content = request.forms.get("content") filename = os.path.basename(filename) title, ext = os.path.splitext(filename) ext = ext.lstrip(".") try: tags_str, content = content.split("\n", 1) tags_str = tags_str.split(":")[-1] tags = [t.strip() for t in tags_str.split(",")] except: return "Invalid content!\n" try: c = Convert(ext) except NotImplementedError: return "This format not supported yet!\n" except Exception: return "Error occurred!\n" try: html = c.convert(content) except ClassNotFound, e: return "ClassNotFound, %s\n" % str(e)
def edit(): key = request.forms.get('key') if not key_verified(key): return {"example": "Security key NOT matched!", "title": '', 'tags': '', 'code': ''} post_id = request.forms.get("blog_id") try: post_id_int = int(post_id) except ValueError as err: example = str(err) with session_context() as session: p = session.query(Post).filter(Post.id == post_id_int) if p.count > 0: p = p.one() title = p.title example = p.markdown tags_list = [t.name for t in p.tags] tags = ','.join(tags_list) code = p.code else: example = 'No blog found!' title = '' tags = '' code = '' return {"example": example, "title": title, "tags": tags, "code": code}