added button to dupplicate a post

This commit is contained in:
2022-05-19 16:45:24 +02:00
parent 9c61a8e98b
commit f018b418c0
14 changed files with 59 additions and 19 deletions

View File

@@ -31,6 +31,35 @@ def blog(request):
}
@view_config(route_name='blog_copy',
renderer='cao_blogr:templates/blog_copy.jinja2', permission='view')
def blog_copy(request):
# get post parameters from request
topic = request.matchdict['topic']
blog_id = request.matchdict['id']
# get the post
entry = BlogRecordService.by_id(request, blog_id)
if not entry:
request.session.flash("Page non trouvée : %s" % blog_id, 'warning')
return HTTPFound(location=request.route_url('topic', topic=topic))
# create a new post
dup_entry = BlogRecord()
dup_entry.title = entry.title + ' - copie'
dup_entry.body = entry.body
dup_entry.topic_id = entry.topic_id
dup_entry.tag = entry.tag
dup_entry.author = entry.author
dup_entry.status = entry.status
request.dbsession.add(dup_entry)
request.session.flash("La page a été duppliquée avec succès", 'success')
return HTTPFound(location=request.route_url('topic', topic=topic))
@view_config(route_name='blog_edit',
renderer='cao_blogr:templates/blog_edit.jinja2', permission='view')
def blog_edit(request):
@@ -54,8 +83,8 @@ def blog_edit(request):
# modify post
entry = BlogRecordService.by_id(request, blog_id)
if not entry:
request.session.flash(u"Page non trouvée : %s" % blog_id, 'warning')
return HTTPFound(location=request.route_url('home'))
request.session.flash("Page non trouvée : %s" % blog_id, 'warning')
return HTTPFound(location=request.route_url('topic', topic=topic))
form = BlogUpdateForm(request.POST, entry)
form.tag.choices = [(row.tag, row.tag_name) for row in tags]
page_title = 'Modifier : ' + entry.title

View File

@@ -83,7 +83,7 @@ Le site "meditation-sunyata.paris"
}
@view_config(route_name='settings', renderer='cao_blogr:templates/settings.jinja2', permission='manage')
@view_config(route_name='settings', renderer='cao_blogr:templates/settings.jinja2', permission='view')
def settings(request):
# lire toutes les docs du topic
@@ -196,7 +196,7 @@ def user_pwd(request):
}
@view_config(route_name='topics',
renderer='cao_blogr:templates/topics.jinja2', permission='manage')
renderer='cao_blogr:templates/topics.jinja2', permission='view')
def topics(request):
# get all topics
topics = BlogRecordService.get_topics(request)
@@ -206,7 +206,7 @@ def topics(request):
}
@view_config(route_name='topic_edit',
renderer='cao_blogr:templates/topic_edit.jinja2', permission='manage')
renderer='cao_blogr:templates/topic_edit.jinja2', permission='view')
def topic_edit(request):
# get topic parameters from request
topic = request.matchdict['topic']
@@ -254,7 +254,7 @@ def topic_edit(request):
}
@view_config(route_name='tag_edit',
renderer='cao_blogr:templates/tag_edit.jinja2', permission='manage')
renderer='cao_blogr:templates/tag_edit.jinja2', permission='view')
def tag_edit(request):
# get tag parameters from request
topic = request.matchdict['topic']