diff --git a/templates/index_blog.html b/templates/index_blog.html index 55b17dd..45e0ac6 100644 --- a/templates/index_blog.html +++ b/templates/index_blog.html @@ -8,27 +8,34 @@ + {% if not(posts) %} +

Désolé ce blog n'existe pas encore :/

+ + + {% else %} +
{% for post in posts %} - -

{{ post.title }}

- - -
- {% if post.last_updated %} - - - {% endif %} -
-
-

{{ post.subtitle }}

-

Lire la suite...

-
+ +

{{ post.title }}

+ + +
+ {% if post.last_updated %} + + + {% endif %} +
+
+

{{ post.subtitle }}

+

Lire la suite...

+
{% endfor %}
+ {% endif %} diff --git a/views/blog.py b/views/blog.py index 584abc9..9f2db59 100644 --- a/views/blog.py +++ b/views/blog.py @@ -49,9 +49,7 @@ def new_article(): @login_required def edit(title): user='%s'% escape(session['username']) - folder_blog = DOSSIER_PERSO + user + "/blog/articles/" - if request.method == 'POST' : title = requrest.form['title'] subtitle = request.form['subtitle'] @@ -64,7 +62,6 @@ def edit(title): cursor.execute("""UPDATE Blog_posts SET title, subtitle=?, category=?, last_updated=?, status=?, content=? WHERE title=? AND author=?""", (title, subtitle, category, updated, newstatus, newcontent, title, user)) conn.commit() conn.close() - return redirect(url_for('blog.list_articles_blog')) else: conn = sqlite3.connect(DATABASE) # Connexion à la base de donnée @@ -90,21 +87,22 @@ def list_articles_blog(): nb_articles=0 for post in list_posts: posts = [dict(title=post[0], - subtitle=post[1], - time=post[2], - last_updated=post[3], - status=post[4])] + posts + subtitle=post[1], + time=post[2], + last_updated=post[3], + status=post[4])] + posts nb_articles =+ 1 - - return render_template('list_articles.html', + + return render_template('list_articles.html', section="Articles", list_posts=posts, nb_articles=nb_articles ) - + @blog.route('/myblog/delete/') @login_required def delete(title): + title = escape(title) user='%s'% escape(session['username']) folder_blog = DOSSIER_PERSO + user + "/blog/articles/" folder_blog_public = DOSSIER_PUBLIC + user + "/blog/articles/" @@ -131,7 +129,6 @@ def view_internal(): conn.close() posts=list() id=0 - if list_posts != None: for post in list_posts: posts = [dict(title=post[0], subtitle=post[1], content=post[2], creation_date=post[3], last_updated=post[4], author=post[5], status=post[6] )] + posts @@ -144,13 +141,11 @@ def view_internal(): def view(): conn = sqlite3.connect(DATABASE) # Connexion à la base de donnée cursor = conn.cursor() # Création de l'objet "curseur" - cursor.execute("""SELECT title, subtitle, creation_date, author FROM Blog_posts WHERE status='public'""" ) + cursor.execute("""SELECT title, subtitle, creation_date, author, status FROM Blog_posts WHERE status='public'""" ) list_posts=cursor.fetchall() posts=list() id=0 - conn.close() - print (list_posts) if list_posts != None: for post in list_posts: posts=[dict(title=post[0], subtitle=post[1], creation_date=post[2], author=post[3], status=post[4])] + posts @@ -160,19 +155,41 @@ def view(): return render_template('index_blog.html', section='Blog', posts=posts) + +@blog.route('/blog/<author>/', methods=['GET']) +def viewuser(author): + author = escape(author) + conn = sqlite3.connect(DATABASE) # Connexion à la base de donnée + cursor = conn.cursor() # Création de l'objet "curseur" + cursor.execute("""SELECT title, subtitle, creation_date, last_updated, author FROM Blog_posts WHERE author=? AND status='public' """, (author,)) + list_posts=cursor.fetchall() + posts=None + id=0 + conn.close() + if list_posts != None: + posts=list() + for post in list_posts: + posts=[dict(title=post[0], subtitle=post[1], creation_date=post[2], author=post[3], status=post[4])] + posts + else: + return redirect(BASE_URL, code=404) + + + return render_template('index_blog.html', section='Blog', posts=posts) + + @blog.route('/blog/private/<username>/<title>', methods=['GET']) @login_required def viewPrivateArticle(username, title): - user = username + user = escape(username) + title = escape(title) conn = sqlite3.connect(DATABASE) # Connexion à la base de donnée cursor = conn.cursor() # Création de l'objet "curseur" - cursor.execute("""SELECT title, subtitle, content, creation_date, last_updated, author, status FROM Blog_posts WHERE author=? AND title=? AND status!='draft' """, (user, title) ) + cursor.execute("""SELECT title, subtitle, content, creation_date, last_updated, author, status FROM Blog_posts WHERE author=? AND title=? AND status!='draft' """, (user, title)) post = cursor.fetchone() conn.close() if post != None: post_info = (dict(title=post[0], subtitle=post[1], creation_date=post[3], last_updated=post[4],author=post[5])) content= markdown(post[2]) - return render_template('blog.html', post_info=post_info, content=content) else: return redirect(url_for('blog'), code=404);