X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/6c071c6cbb739209e9d8488ff7080f8ad7c7d2d0..451f7b0e0ee3bfdab38cfa9c98a297c5320b52ad:/wolnelektury/views.py diff --git a/wolnelektury/views.py b/wolnelektury/views.py index 3fa4337af..cb1d2af96 100755 --- a/wolnelektury/views.py +++ b/wolnelektury/views.py @@ -2,6 +2,7 @@ from datetime import datetime import feedparser from django.contrib import auth +from django.contrib.auth.decorators import login_required from django.contrib.auth.forms import UserCreationForm, AuthenticationForm from django.core.cache import cache from django.http import HttpResponse, HttpResponseRedirect @@ -11,12 +12,15 @@ from django.utils.http import urlquote_plus from django.utils.translation import ugettext_lazy as _ from django.views.decorators.cache import never_cache +from django.conf import settings from ajaxable.utils import AjaxableFormView from catalogue.models import Book +from ajaxable.utils import placeholdized +@never_cache def main_page(request): - last_published = Book.objects.exclude(html_file='').order_by('-created_at')[:4] + last_published = Book.objects.filter(parent=None).order_by('-created_at')[:4] return render_to_response("main_page.html", locals(), context_instance=RequestContext(request)) @@ -24,9 +28,11 @@ def main_page(request): class LoginFormView(AjaxableFormView): form_class = AuthenticationForm - #template = "auth/login.html" + template = "auth/login.html" + placeholdize = True title = _('Sign in') submit = _('Sign in') + ajax_redirect = True def __call__(self, request): if request.user.is_authenticated(): @@ -39,9 +45,11 @@ class LoginFormView(AjaxableFormView): class RegisterFormView(AjaxableFormView): form_class = UserCreationForm - #template = "auth/register.html" + placeholdize = True title = _('Register') submit = _('Register') + ajax_redirect = True + form_prefix = 'register' def __call__(self, request): if request.user.is_authenticated(): @@ -49,7 +57,7 @@ class RegisterFormView(AjaxableFormView): return super(RegisterFormView, self).__call__(request) def success(self, form, request): - user = form.save() + form.save() user = auth.authenticate( username=form.cleaned_data['username'], password=form.cleaned_data['password1'] @@ -57,6 +65,17 @@ class RegisterFormView(AjaxableFormView): auth.login(request, user) +class LoginRegisterFormView(LoginFormView): + template = 'auth/login_register.html' + title = _('You have to be logged in to continue') + + def extra_context(self, request, obj): + return { + "register_form": placeholdized(UserCreationForm(prefix='register')), + "register_submit": _('Register'), + } + + @never_cache def logout_then_redirect(request): auth.logout(request) @@ -77,12 +96,11 @@ def publish_plan(request): if plan is None: plan = [] try: - feed = feedparser.parse('http://localhost:8000/documents/track/editor-proofreading/') + feed = feedparser.parse(settings.PUBLISH_PLAN_FEED) except: pass else: for i in range(len(feed['entries'])): - print i plan.append({ 'title': feed['entries'][i].title, 'link': feed['entries'][i].link, @@ -91,3 +109,9 @@ def publish_plan(request): return render_to_response("publish_plan.html", {'plan': plan}, context_instance=RequestContext(request)) + + +@login_required +def user_settings(request): + return render_to_response("user.html", + context_instance=RequestContext(request))