def posts_add(page=False): post = Post() if page: urls = 'admin.pages' else: urls = 'admin.posts' if request.args.get('edit'): post = Post.query.get(request.args.get('edit')) if post: if post.parent: return redirect(url_for(urls+'_add', edit=post.parent)) if request.form: post_id = Post.update(request.form, post) flash(messages['updated']+' ('+str(post)+')') return redirect(url_for(urls+'_add', edit=post_id)) else: return handle_404() else: if request.form: post_id = Post.create(request.form) flash(messages['added']+' ('+str(post)+')') return redirect(url_for(urls+'_add', edit=post_id)) folders = Folder.get_all() if page: title = gettext('New - Page') else: title = gettext('New - Post') return render_template('admin/posts_new.html', folders=folders, post=post, title=title, page=page, urls=urls)
def sitemap(): posts = Post.query.filter(status='published', type='post').order_by('created').all() folders = Folder.get_all() pages = [] # home pages.append({'url': request.url_root, 'freq': 'daily', 'prio': '1'}) # folders for folder in folders: if folder.guid != '': url = request.url_root+folder.guid+'/' modified = folder.modified.strftime('%Y-%m-%d') pages.append({'url': url, 'mod': modified, 'freq': 'weekly', 'prio': '0.6'}) # pages posts = Post.query.filter(status='published', type='page').order_by('created').limit(20, 0, array=True) for post in posts: if post.slug != 'index': url = request.url_root+post.guid+'.html' modified = post.modified.strftime('%Y-%m-%d') pages.append({'url': url, 'mod': modified, 'freq': 'monthly', 'prio': '0.9'}) # posts posts = Post.query.filter(status='published', type='post').order_by('created').limit(20, 0, array=True) for post in posts: url = request.url_root+post.guid+'.html' modified = post.modified.strftime('%Y-%m-%d') pages.append({'url': url, 'mod': modified, 'freq': 'monthly', 'prio': '0.8'}) response = make_response(render_template('front/_sitemap.xml', pages=pages)) response.headers["Content-Type"] = 'application/xml' return response
def folders(): folders = Folder.get_all(True) folder = None if request.args.get('edit') and request.args.get('edit') != 1: folder = Folder.get(Folder.id == request.args.get('edit')) form = FolderForm(obj=folder) if form.validate_on_submit(): form.populate_obj(folder) folder.modified = datetime.datetime.now() folder.save() flash(messages['updated'] + ' (' + str(folder) + ')') return redirect(url_for('admin.folders')) else: form = FolderForm() if form.validate_on_submit(): Folder.add(form) flash(messages['added'] + ' (' + str(folder) + ')') return redirect(url_for('admin.folders')) return render_template('admin/folders.html', folders=folders, folder=folder, title=gettext('Categories'), form=form)
def sitemap(): posts = Post.filter(Post.status == 'published', Post.type == 'post').order_by(Post.created).all() folders = Folder.get_all() pages = [] # home pages.append({'url': request.url_root, 'freq': 'daily', 'prio': '1'}) # folders for folder in folders: if folder.guid != '': url = request.url_root + folder.guid + '/' modified = folder.modified.strftime('%Y-%m-%d') pages.append({'url': url, 'mod': modified, 'freq': 'weekly', 'prio': '0.6'}) # pages posts = Post.filter(Post.status == 'published', Post.type == 'page').order_by(Post.created).limit(20) for post in posts: if post.slug != 'index': url = request.url_root + post.guid + '.html' modified = post.modified.strftime('%Y-%m-%d') pages.append({'url': url, 'mod': modified, 'freq': 'monthly', 'prio': '0.9'}) # posts posts = Post.filter(Post.status == 'published', Post.type == 'post').order_by(Post.created).limit(20,) for post in posts: url = request.url_root + post.guid + '.html' modified = post.modified.strftime('%Y-%m-%d') pages.append({'url': url, 'mod': modified, 'freq': 'monthly', 'prio': '0.8'}) response = make_response(render_template(Theme.get_template('_sitemap.xml'), pages=pages)) response.headers["Content-Type"] = 'application/xml' return response
def folders(): folders = Folder.get_all(True) folder = None if request.args.get('edit') and request.args.get('edit') != 1: folder = Folder.query.get(request.args.get('edit')) form = FolderForm(obj=folder) if form.validate_on_submit(): form.populate_obj(folder) folder.modified = 'NOW()' Folder.query.update(folder) flash(messages['updated']+' ('+str(folder)+')') return redirect(url_for('admin.folders')) else: form = FolderForm() if form.validate_on_submit(): Folder.add(form) flash(messages['added']+' ('+str(folder)+')') return redirect(url_for('admin.folders')) return render_template('admin/folders.html', folders=folders, folder=folder, title=gettext('Categories'), form=form)