|
|
@@ -1,23 +1,27 @@
|
|
|
from django.shortcuts import render
|
|
|
from django.template import loader
|
|
|
from django.urls import reverse
|
|
|
-from django.utils.html import strip_tags
|
|
|
-from django.http import HttpResponse, HttpResponseRedirect
|
|
|
-from django.contrib import messages
|
|
|
-from django.db.models import Q
|
|
|
|
|
|
+from django.http import HttpResponse, HttpResponseRedirect
|
|
|
+from django.utils.html import strip_tags
|
|
|
|
|
|
+from django.core.paginator import Paginator
|
|
|
|
|
|
+from django.contrib import messages
|
|
|
from django.contrib.auth import authenticate, login, logout
|
|
|
from django.contrib.auth.forms import AuthenticationForm, UserCreationForm
|
|
|
from django.contrib.auth.models import User
|
|
|
|
|
|
+from django.db.models import Q
|
|
|
+
|
|
|
#from blog.forms import *
|
|
|
from core.views import gen_page_base, gen_page_sys
|
|
|
from blog.models import *
|
|
|
|
|
|
def blog_index(request, bcat):
|
|
|
|
|
|
+#print(bcat)
|
|
|
+
|
|
|
template = loader.get_template('listing.html')
|
|
|
page = gen_page_base()
|
|
|
page.p_adresse = reverse('blog_index')
|
|
|
@@ -26,32 +30,41 @@ def blog_index(request, bcat):
|
|
|
page.p_right = "Retrouvez les tous les articles de mon blog"
|
|
|
page.p_description = strip_tags(page.p_right)
|
|
|
page.p_mots_clefs = "blog, news, "
|
|
|
-
|
|
|
|
|
|
|
|
|
- if request.method == 'GET':
|
|
|
- search = request.GET['b_search']
|
|
|
- q_search = Q(b_titre__icontains=search) | Q(b_mots_clefs__icontains=search)| Q(b_description__icontains=search)| Q(b_cat__cb_titre__icontains=search)
|
|
|
- page.blog_search = Blog_search_Form(initial={'b_search': search})
|
|
|
- else :
|
|
|
- page.blog_search = Blog_search_Form()
|
|
|
+ b_search = request.GET.get('b_search')
|
|
|
|
|
|
+ if b_search != None:
|
|
|
+ page.blog_search = Blog_search_Form(initial={'b_search': b_search,})
|
|
|
+ q= Q(b_titre__icontains=b_search) | Q(b_mots_clefs__icontains=b_search) | Q(b_description__icontains=b_search)
|
|
|
+ else:
|
|
|
+ page.blog_search = Blog_search_Form()
|
|
|
if bcat == "index":
|
|
|
- if not q_search :
|
|
|
- page.blog_art = Blog.objects.filter( b_publier = True ).order_by( '-b_publdate' )[:15]
|
|
|
+ if b_search != None:
|
|
|
+ blog_art = Blog.objects.filter( b_publier = True ).filter(q).order_by( '-b_publdate' )[:5]
|
|
|
else :
|
|
|
- page.blog_art = Blog.objects.filter(q_search).filter( b_publier = True ).order_by( '-b_publdate' )[:15]
|
|
|
+ blog_art = Blog.objects.filter( b_publier = True ).order_by( '-b_publdate' )[:5]
|
|
|
page.blog_cat = Cat_Blog.objects.all()[:15]
|
|
|
|
|
|
elif bcat == "all":
|
|
|
- page.blog_art = Blog.objects.filter( b_publier = True ).order_by( '-b_publdate' )
|
|
|
+ blog_art = Blog.objects.filter( b_publier = True ).order_by( '-b_publdate' )
|
|
|
page.blog_cat = Cat_Blog.objects.all()[:15]
|
|
|
else :
|
|
|
- page.blog_art = Blog.objects.filter( b_publier = True ).filter( b_cat__cb_titre_slgify = bcat ).order_by( '-b_publdate' )[:15]
|
|
|
+ if b_search != None:
|
|
|
+ blog_art = Blog.objects.filter( b_publier = True ).filter( b_cat__cb_titre_slgify = bcat ).filter(q).order_by( '-b_publdate' )
|
|
|
+ else :
|
|
|
+ blog_art = Blog.objects.filter( b_publier = True ).filter( b_cat__cb_titre_slgify = bcat ).order_by( '-b_publdate' )
|
|
|
page.blog_cat = Cat_Blog.objects.filter( cb_titre_slgify = bcat )[:15]
|
|
|
- page.blog_filter = True
|
|
|
page.retour = "blog_index"
|
|
|
|
|
|
+ paginator = Paginator(blog_art, 15)
|
|
|
+ page.number = request.GET.get('page')
|
|
|
+
|
|
|
+ page.blog_art = paginator.get_page(page.number)
|
|
|
+ #print(page.blog_art.paginator.num_pages)
|
|
|
+
|
|
|
+ page.blog_art.nbpage = range(page.blog_art.paginator.num_pages)
|
|
|
+
|
|
|
for cat in page.blog_cat.all():
|
|
|
page.p_mots_clefs = page.p_mots_clefs + cat.cb_titre + ', '
|
|
|
|
|
|
@@ -69,8 +82,7 @@ def blog_play(request, bart):
|
|
|
template = loader.get_template('read.html')
|
|
|
page = gen_page_base()
|
|
|
page.p_adresse = reverse('blog_index')
|
|
|
- page.blog_art = Blog.objects.filter( b_titre_slugify = bart)[:1]
|
|
|
- page.retour = "blog_index"
|
|
|
+ page.blog_art = Blog.objects.filter(b_titre_slugify = bart)[:1]
|
|
|
|
|
|
for art in page.blog_art:
|
|
|
page.p_titre = art.b_titre
|
|
|
@@ -88,6 +100,8 @@ def blog_play(request, bart):
|
|
|
art.b_reading = art.b_reading + 1
|
|
|
art.save()
|
|
|
|
|
|
+ print(page)
|
|
|
+
|
|
|
html = template.render({
|
|
|
'page': page,
|
|
|
'user': request.user,
|