fnp
/
wolnelektury.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
allow empty part name in bookmedia
[wolnelektury.git]
/
src
/
wolnelektury
/
views.py
diff --git
a/src/wolnelektury/views.py
b/src/wolnelektury/views.py
index
0ff2d67
..
c62c2e5
100644
(file)
--- a/
src/wolnelektury/views.py
+++ b/
src/wolnelektury/views.py
@@
-21,29
+21,33
@@
from ajaxable.utils import placeholdized
from catalogue.models import Book, Collection, Tag, Fragment
from ssify import ssi_included
from catalogue.models import Book, Collection, Tag, Fragment
from ssify import ssi_included
+from social.utils import get_or_choose_cite
+from wolnelektury.forms import RegistrationForm
+
def main_page(request):
ctx = {
'last_published': Book.objects.exclude(cover_thumb='').filter(parent=None).order_by('-created_at')[:6],
def main_page(request):
ctx = {
'last_published': Book.objects.exclude(cover_thumb='').filter(parent=None).order_by('-created_at')[:6],
+ 'theme_books': [],
+ 'cite': get_or_choose_cite(request),
}
}
- for category in ('author', 'epoch', 'genre', 'kind'):
- try:
- ctx[category] = Tag.objects.filter(category=category).order_by('?')[:1][0]
- except IndexError:
- pass
+
#
for category in ('author', 'epoch', 'genre', 'kind'):
+
#
try:
+
#
ctx[category] = Tag.objects.filter(category=category).order_by('?')[:1][0]
+
#
except IndexError:
+
#
pass
# FIXME: find this theme and books properly.
# FIXME: find this theme and books properly.
- ctx['theme_books'] = []
- if Fragment.objects.count():
+ if Fragment.objects.exists():
while True:
ctx['theme'] = Tag.objects.filter(category='theme').order_by('?')[:1][0]
while True:
ctx['theme'] = Tag.objects.filter(category='theme').order_by('?')[:1][0]
- tf = Fragment.tagged.with_any([ctx['theme']]).order_by('?')[:100]
+ tf = Fragment.tagged.with_any([ctx['theme']]).
select_related('book').
order_by('?')[:100]
if not tf:
continue
ctx['theme_fragment'] = tf[0]
for f in tf:
if not tf:
continue
ctx['theme_fragment'] = tf[0]
for f in tf:
- if
not f.book
in ctx['theme_books']:
+ if
f.book not
in ctx['theme_books']:
ctx['theme_books'].append(f.book)
if len(ctx['theme_books']) == 3:
break
ctx['theme_books'].append(f.book)
if len(ctx['theme_books']) == 3:
break
@@
-70,9
+74,9
@@
class LoginFormView(AjaxableFormView):
def __call__(self, request):
if request.user.is_authenticated():
def __call__(self, request):
if request.user.is_authenticated():
- return self.redirect_or_refresh(
request, '/',
- message=_('Already logged in as user %(user)s', ) %
-
{'user': request.user.username})
+ return self.redirect_or_refresh(
+ request, '/',
+
message=_('Already logged in as user %(user)s', ) %
{'user': request.user.username})
return super(LoginFormView, self).__call__(request)
def success(self, form, request):
return super(LoginFormView, self).__call__(request)
def success(self, form, request):
@@
-80,7
+84,7
@@
class LoginFormView(AjaxableFormView):
class RegisterFormView(AjaxableFormView):
class RegisterFormView(AjaxableFormView):
- form_class =
UserCre
ationForm
+ form_class =
Registr
ationForm
template = "auth/register.html"
placeholdize = True
title = _('Register')
template = "auth/register.html"
placeholdize = True
title = _('Register')
@@
-91,9
+95,9
@@
class RegisterFormView(AjaxableFormView):
def __call__(self, request):
if request.user.is_authenticated():
def __call__(self, request):
if request.user.is_authenticated():
- return self.redirect_or_refresh(
request, '/',
- message=_('Already logged in as user %(user)s', ) %
-
{'user': request.user.username})
+ return self.redirect_or_refresh(
+ request, '/',
+
message=_('Already logged in as user %(user)s', ) %
{'user': request.user.username})
return super(RegisterFormView, self).__call__(request)
def success(self, form, request):
return super(RegisterFormView, self).__call__(request)
def success(self, form, request):
@@
-180,3
+184,11
@@
def latest_blog_posts(request, feed_url=None, posts_to_show=5):
@ssi_included(use_lang=False)
def widget(request):
return render(request, 'widget.html')
@ssi_included(use_lang=False)
def widget(request):
return render(request, 'widget.html')
+
+
+def exception_test(request):
+ msg = request.GET.get('msg')
+ if msg:
+ raise Exception('Exception test: %s' % msg)
+ else:
+ raise Exception('Exception test')
\ No newline at end of file