moved stats to own app, add template tags to it,
authorRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Fri, 16 Sep 2011 13:20:20 +0000 (15:20 +0200)
committerRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Fri, 16 Sep 2011 13:20:20 +0000 (15:20 +0200)
added tagline
added search fofm template tag
footnotes dictionary fix

25 files changed:
apps/catalogue/templatetags/catalogue_tags.py
apps/catalogue/urls.py
apps/catalogue/views.py
apps/dictionary/locale/pl/LC_MESSAGES/django.mo [new file with mode: 0644]
apps/dictionary/locale/pl/LC_MESSAGES/django.po [new file with mode: 0644]
apps/dictionary/models.py
apps/dictionary/templates/dictionary/note_list.html
apps/dictionary/tests.py
apps/stats/__init__.py [new file with mode: 0644]
apps/stats/models.py [new file with mode: 0644]
apps/stats/templates/stats/main.html [new file with mode: 0755]
apps/stats/templatetags/__init__.py [new file with mode: 0755]
apps/stats/templatetags/stats.py [new file with mode: 0755]
apps/stats/urls.py [new file with mode: 0755]
apps/stats/views.py [new file with mode: 0644]
wolnelektury/locale/pl/LC_MESSAGES/django.mo
wolnelektury/locale/pl/LC_MESSAGES/django.po
wolnelektury/settings.py
wolnelektury/static/css/master.css
wolnelektury/templates/base.html
wolnelektury/templates/catalogue/counters.html [deleted file]
wolnelektury/templates/catalogue/main_page.html
wolnelektury/templates/catalogue/search_form.html [new file with mode: 0755]
wolnelektury/templates/info/join_us.html
wolnelektury/urls.py

index c931e48..e433b8e 100644 (file)
@@ -14,6 +14,8 @@ from django.db.models import Q
 from django.conf import settings
 from django.utils.translation import ugettext as _
 
 from django.conf import settings
 from django.utils.translation import ugettext as _
 
+from catalogue.forms import SearchForm
+
 
 register = template.Library()
 
 
 register = template.Library()
 
@@ -166,9 +168,12 @@ def authentication_form():
     return LoginForm(prefix='login').as_ul()
 
 
     return LoginForm(prefix='login').as_ul()
 
 
+@register.inclusion_tag('catalogue/search_form.html')
+def search_form():
+    return {"form": SearchForm()}
+
 @register.inclusion_tag('catalogue/breadcrumbs.html')
 def breadcrumbs(tags, search_form=True):
 @register.inclusion_tag('catalogue/breadcrumbs.html')
 def breadcrumbs(tags, search_form=True):
-    from catalogue.forms import SearchForm
     context = {'tag_list': tags}
     try:
         max_tag_list = settings.MAX_TAG_LIST
     context = {'tag_list': tags}
     try:
         max_tag_list = settings.MAX_TAG_LIST
index a8f21d1..cb04ba3 100644 (file)
@@ -24,7 +24,6 @@ urlpatterns = patterns('catalogue.views',
 
     # tools
     url(r'^zegar/$', 'clock', name='clock'),
 
     # tools
     url(r'^zegar/$', 'clock', name='clock'),
-    url(r'^liczniki/$', 'counters', name='catalogue_counters'),
 
     # Public interface. Do not change this URLs.
     url(r'^lektura/(?P<slug>[a-zA-Z0-9-]+)\.html$', 'book_text', name='book_text'),
 
     # Public interface. Do not change this URLs.
     url(r'^lektura/(?P<slug>[a-zA-Z0-9-]+)\.html$', 'book_text', name='book_text'),
index 44a0147..2237af8 100644 (file)
@@ -129,27 +129,6 @@ def daisy_list(request):
                      template_name='catalogue/daisy_list.html')
 
 
                      template_name='catalogue/daisy_list.html')
 
 
-def counters(request):
-    form = forms.SearchForm()
-
-    books = models.Book.objects.count()
-    books_nonempty = models.Book.objects.exclude(html_file='').count()
-    books_empty = models.Book.objects.filter(html_file='').count()
-    books_root = models.Book.objects.filter(parent=None).count()
-
-    media = models.BookMedia.objects.count()
-    media_types = models.BookMedia.objects.values('type').\
-            annotate(count=Count('type')).\
-            order_by('type')
-    for mt in media_types:
-        mt['size'] = sum(b.file.size for b in models.BookMedia.objects.filter(type=mt['type']))
-        mt['deprecated'] = models.BookMedia.objects.filter(
-            type=mt['type'], source_sha1=None).count() if mt['type'] in ('mp3', 'ogg') else '-'
-
-    return render_to_response('catalogue/counters.html',
-                locals(), context_instance=RequestContext(request))
-
-
 def differentiate_tags(request, tags, ambiguous_slugs):
     beginning = '/'.join(tag.url_chunk for tag in tags)
     unparsed = '/'.join(ambiguous_slugs[1:])
 def differentiate_tags(request, tags, ambiguous_slugs):
     beginning = '/'.join(tag.url_chunk for tag in tags)
     unparsed = '/'.join(ambiguous_slugs[1:])
diff --git a/apps/dictionary/locale/pl/LC_MESSAGES/django.mo b/apps/dictionary/locale/pl/LC_MESSAGES/django.mo
new file mode 100644 (file)
index 0000000..1104f8b
Binary files /dev/null and b/apps/dictionary/locale/pl/LC_MESSAGES/django.mo differ
diff --git a/apps/dictionary/locale/pl/LC_MESSAGES/django.po b/apps/dictionary/locale/pl/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..8184c9a
--- /dev/null
@@ -0,0 +1,28 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-09-16 12:21+0200\n"
+"PO-Revision-Date: 2011-09-16 12:21+0100\n"
+"Last-Translator: Radek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: templates/dictionary/note_list.html:11
+msgid "By first letter"
+msgstr "Pierwsza litera"
+
+#: templates/dictionary/note_list.html:13
+#: templates/dictionary/note_list.html:15
+msgid "all"
+msgstr "wszystkie"
+
index 2606179..c0a92d1 100644 (file)
@@ -25,6 +25,6 @@ def notes_from_book(sender, **kwargs):
     if sender.has_html_file:
         for anchor, text_str, html_str in html.extract_annotations(sender.html_file.path):
             Note.objects.create(book=sender, anchor=anchor,
     if sender.has_html_file:
         for anchor, text_str, html_str in html.extract_annotations(sender.html_file.path):
             Note.objects.create(book=sender, anchor=anchor,
-                               html=html_str, sort_key=sortify(text_str))
+                               html=html_str, sort_key=sortify(text_str)[:128])
 
 Book.html_built.connect(notes_from_book)
 
 Book.html_built.connect(notes_from_book)
index bc15e95..6ae3664 100755 (executable)
@@ -1,13 +1,10 @@
 {% extends "base.html" %}
 {% load i18n pagination_tags %}
 {% extends "base.html" %}
 {% load i18n pagination_tags %}
+{% load catalogue_tags %}
 
 {% block body %}
     <h1>Przypisy</h1>
 
 {% block body %}
     <h1>Przypisy</h1>
-    <form action="{% url search %}" method="get" accept-charset="utf-8" id="search-form">
-        <p>{{ form.q }} <input type="submit" value="{% trans "Search" %}" /> <strong>{%trans "or" %}</strong> <a href="{% url main_page %}">{% trans "return to the main page" %}</a></p>
-    </form>
-
-
+    {% search_form %}
 
 
 <p>
 
 
 <p>
index 89d2ab9..0de7c5e 100755 (executable)
@@ -22,7 +22,7 @@ class DictionaryTests(WLTestCase):
             epoch="X-Epoch",
         )
 
             epoch="X-Epoch",
         )
 
-    def test_book_with_fragment(self):
+    def test_book_with_footnote(self):
         BOOK_TEXT = """<utwor>
         <opowiadanie>
             <akap><pe><slowo_obce>rose</slowo_obce> --- kind of a flower.</pe></akap>
         BOOK_TEXT = """<utwor>
         <opowiadanie>
             <akap><pe><slowo_obce>rose</slowo_obce> --- kind of a flower.</pe></akap>
diff --git a/apps/stats/__init__.py b/apps/stats/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/apps/stats/models.py b/apps/stats/models.py
new file mode 100644 (file)
index 0000000..8b13789
--- /dev/null
@@ -0,0 +1 @@
+
diff --git a/apps/stats/templates/stats/main.html b/apps/stats/templates/stats/main.html
new file mode 100755 (executable)
index 0000000..2be411d
--- /dev/null
@@ -0,0 +1,30 @@
+{% extends "base.html" %}
+{% load i18n %}
+{% load stats catalogue_tags %}
+
+{% block title %}Statystyka w  WolneLektury.pl{% endblock %}
+
+{% block bodyid %}tagged-object-list{% endblock %}
+
+{% block body %}
+    <h1>Statystyka</h1>
+    {% search_form %}
+
+    <table>
+        <tr><th>Utwory</th></tr>
+        <tr><td>Wszystkie utwory:</td><td>{% count_books_all %}</td></tr>
+        <tr><td>Utwory z własną treścią:</td><td>{% count_books_nonempty %}</td></tr>
+        <tr><td>Utwory bez własnej treści:</td><td>{% count_books_empty %}</td></tr>
+        <tr><td>Niezależne książki:</td><td>{% count_books_root %}</td></tr>
+
+        <tr><th>Media</th><th>Liczba</th><th>Rozmiar</th><th>Do wymiany</th></tr>
+        {% for mt in media_types %}
+            <tr><td>{{ mt.type }}:</td>
+                <td>{{ mt.count }}</td>
+                <td>{{ mt.size|filesizeformat }}</td>
+                <td>{{ mt.deprecated }}</td>
+            </tr>
+        {% endfor %}
+    </table>
+
+{% endblock %}
diff --git a/apps/stats/templatetags/__init__.py b/apps/stats/templatetags/__init__.py
new file mode 100755 (executable)
index 0000000..e69de29
diff --git a/apps/stats/templatetags/stats.py b/apps/stats/templatetags/stats.py
new file mode 100755 (executable)
index 0000000..d13b9f6
--- /dev/null
@@ -0,0 +1,60 @@
+# -*- coding: utf-8 -*-
+# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+import feedparser
+import datetime
+
+from django import template
+
+from catalogue.models import Book, BookMedia
+
+
+register = template.Library()
+
+#~ 
+#~ @register.tag(name='captureas')
+#~ def do_captureas(parser, token):
+    #~ try:
+        #~ tag_name, args = token.contents.split(None, 1)
+    #~ except ValueError:
+        #~ raise template.TemplateSyntaxError("'captureas' node requires a variable name.")
+    #~ nodelist = parser.parse(('endcaptureas',))
+    #~ parser.delete_first_token()
+    #~ return CaptureasNode(nodelist, args)
+
+class StatsNode(template.Node):
+    def __init__(self, value, varname=None):
+        self.value = value
+        self.varname = varname
+
+    def render(self, context):
+        print self.varname
+        if self.varname:
+            context[self.varname] = self.value
+            return ''
+        else:
+            return self.value
+
+
+
+#~ @register.tag
+#~ def count_books_all(*args, **kwargs):
+    #~ print args, kwargs
+    #~ return StatsNode(Book.objects.all().count())
+
+@register.tag
+def count_books_nonempty(parser, token):
+    try:
+        tag_name, args = token.contents.split(None, 1)
+    except ValueError:
+        args = None
+    return StatsNode(Book.objects.exclude(html_file='').count(), args)
+
+#~ @register.simple_tag
+#~ def count_books_empty():
+    #~ return Book.objects.exclude(html_file='').count()
+#~ 
+#~ @register.simple_tag
+#~ def count_books_root():
+    #~ return Book.objects.filter(parent=None).count()
diff --git a/apps/stats/urls.py b/apps/stats/urls.py
new file mode 100755 (executable)
index 0000000..3b62409
--- /dev/null
@@ -0,0 +1,11 @@
+# -*- coding: utf-8 -*-
+# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+from django.conf.urls.defaults import *
+
+
+urlpatterns = patterns('stats.views',
+    url(r'^$', 'stats_page', name='stats'),
+)
+
diff --git a/apps/stats/views.py b/apps/stats/views.py
new file mode 100644 (file)
index 0000000..b4fd44b
--- /dev/null
@@ -0,0 +1,24 @@
+# -*- coding: utf-8 -*-
+# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+
+from django.db.models import Count
+from django.shortcuts import render_to_response
+from django.template import RequestContext
+
+from catalogue.models import Book, BookMedia
+
+
+def stats_page(request):
+    media = BookMedia.objects.count()
+    media_types = BookMedia.objects.values('type').\
+            annotate(count=Count('type')).\
+            order_by('type')
+    for mt in media_types:
+        mt['size'] = sum(b.file.size for b in BookMedia.objects.filter(type=mt['type']))
+        mt['deprecated'] = BookMedia.objects.filter(
+            type=mt['type'], source_sha1=None).count() if mt['type'] in ('mp3', 'ogg') else '-'
+
+    return render_to_response('stats/main.html',
+                locals(), context_instance=RequestContext(request))
index d1670ba..6887fc9 100644 (file)
Binary files a/wolnelektury/locale/pl/LC_MESSAGES/django.mo and b/wolnelektury/locale/pl/LC_MESSAGES/django.mo differ
index 0f0c95b..d6e382d 100644 (file)
 #
 msgid ""
 msgstr ""
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: WolneLektury\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-09-08 10:50+0200\n"
-"PO-Revision-Date: 2011-09-08 10:50+0100\n"
+"POT-Creation-Date: 2011-09-16 15:06+0200\n"
+"PO-Revision-Date: 2011-09-16 15:04+0100\n"
 "Last-Translator: Radek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Last-Translator: Radek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: \n"
+"Language: pl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Translated-Using: django-rosetta 0.5.6\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Translated-Using: django-rosetta 0.5.6\n"
+"X-Poedit-Language: Polish\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2)\n"
 
 
-#: templates/404.html:6
-#: templates/404.html.py:15
+#: templates/404.html:6 templates/404.html.py:15
 msgid "Page does not exist"
 msgstr "Podana strona nie istnieje"
 
 #: templates/404.html:17
 msgid "Page does not exist"
 msgstr "Podana strona nie istnieje"
 
 #: templates/404.html:17
-msgid "We are sorry, but this page does not exist. Please check if you entered correct address or go to "
-msgstr "Przepraszamy, ale ta strona nie istnieje. Sprawdź czy podałeś dobry adres, lub przejdź do"
+msgid ""
+"We are sorry, but this page does not exist. Please check if you entered "
+"correct address or go to "
+msgstr ""
+"Przepraszamy, ale ta strona nie istnieje. Sprawdź czy podałeś dobry adres, "
+"lub przejdź do"
 
 #: templates/404.html:17
 msgid "main page"
 msgstr "strony głównej"
 
 
 #: templates/404.html:17
 msgid "main page"
 msgstr "strony głównej"
 
-#: templates/500.html:6
-#: templates/500.html.py:54
+#: templates/500.html:6 templates/500.html.py:54
 msgid "Server error"
 msgstr "Błąd serwera"
 
 #: templates/500.html:55
 msgid "Server error"
 msgstr "Błąd serwera"
 
 #: templates/500.html:55
-msgid "<p>The Wolnelektury.pl site is currently unavailable. Meanwhile, visit our <a href='http://nowoczesnapolska.org.pl'>blog</a>.</p> <p>Inform our <a href='mailto:fundacja@nowoczesnapolska.org.pl'>administrators</a> about the error.</p>"
+msgid ""
+"<p>The Wolnelektury.pl site is currently unavailable. Meanwhile, visit our "
+"<a href='http://nowoczesnapolska.org.pl'>blog</a>.</p> <p>Inform our <a "
+"href='mailto:fundacja@nowoczesnapolska.org.pl'>administrators</a> about the "
+"error.</p>"
 msgstr ""
 msgstr ""
-"<p>Serwis Wolnelektury.pl jest chwilowo niedostępny. Odwiedź naszego <a href='http://nowoczesnapolska.org.pl'>bloga</a></p>\n"
-"<p>Powiadom <a href='mailto:fundacja@nowoczesnapolska.org.pl'>administratorów</a> o błędzie.</p>"
+"<p>Serwis Wolnelektury.pl jest chwilowo niedostępny. Odwiedź naszego <a "
+"href='http://nowoczesnapolska.org.pl'>bloga</a></p>\n"
+"<p>Powiadom <a href='mailto:fundacja@nowoczesnapolska.org."
+"pl'>administratorów</a> o błędzie.</p>"
 
 
-#: templates/503.html:6
-#: templates/503.html.py:54
+#: templates/503.html:6 templates/503.html.py:54
 msgid "Service unavailable"
 msgstr "Serwis niedostępny"
 
 #: templates/503.html:56
 msgid "The Wolnelektury.pl site is currently unavailable due to maintainance."
 msgid "Service unavailable"
 msgstr "Serwis niedostępny"
 
 #: templates/503.html:56
 msgid "The Wolnelektury.pl site is currently unavailable due to maintainance."
-msgstr "Serwis Wolnelektury.pl jest obecnie niedostępny z powodu prac konserwacyjnych."
+msgstr ""
+"Serwis Wolnelektury.pl jest obecnie niedostępny z powodu prac "
+"konserwacyjnych."
 
 #: templates/base.html:23
 
 #: templates/base.html:23
-msgid "Internet Explorer cannot display this site properly. Click here to read more..."
-msgstr "Internet Explorer nie potrafi poprawnie wyświetlić tej strony. Kliknij tutaj, aby dowiedzieć się więcej..."
+msgid ""
+"Internet Explorer cannot display this site properly. Click here to read "
+"more..."
+msgstr ""
+"Internet Explorer nie potrafi poprawnie wyświetlić tej strony. Kliknij "
+"tutaj, aby dowiedzieć się więcej..."
 
 
-#: templates/base.html:36
+#: templates/base.html:38
 msgid "Welcome"
 msgstr "Witaj"
 
 msgid "Welcome"
 msgstr "Witaj"
 
-#: templates/base.html:37
+#: templates/base.html:39
 msgid "Your shelves"
 msgstr "Twoje półki"
 
 msgid "Your shelves"
 msgstr "Twoje półki"
 
-#: templates/base.html:39
+#: templates/base.html:41
 msgid "Administration"
 msgstr "Administracja"
 
 msgid "Administration"
 msgstr "Administracja"
 
-#: templates/base.html:41
-#: templates/base.html.py:45
+#: templates/base.html:43 templates/base.html.py:47
 msgid "Report a bug"
 msgstr "Zgłoś błąd"
 
 msgid "Report a bug"
 msgstr "Zgłoś błąd"
 
-#: templates/base.html:42
+#: templates/base.html:44
 msgid "Logout"
 msgstr "Wyloguj"
 
 msgid "Logout"
 msgstr "Wyloguj"
 
-#: templates/base.html:46
-#: templates/base.html.py:100
-#: templates/base.html:104
-#: templates/base.html.py:108
-#: templates/auth/login.html:4
-#: templates/auth/login.html.py:7
-#: templates/auth/login.html:12
+#: templates/base.html:48 templates/base.html.py:102 templates/base.html:106
+#: templates/base.html.py:110 templates/auth/login.html:4
+#: templates/auth/login.html.py:7 templates/auth/login.html:12
 #: templates/auth/login.html.py:15
 msgid "Sign in"
 msgstr "Zaloguj się"
 
 #: templates/auth/login.html.py:15
 msgid "Sign in"
 msgstr "Zaloguj się"
 
-#: templates/base.html:46
-#: templates/base.html.py:100
-#: templates/base.html:108
-#: templates/base.html.py:112
-#: templates/auth/login.html:7
-#: templates/auth/login.html.py:21
-#: templates/auth/login.html:23
+#: templates/base.html:48 templates/base.html.py:102 templates/base.html:110
+#: templates/base.html.py:114 templates/auth/login.html:7
+#: templates/auth/login.html.py:21 templates/auth/login.html:23
 msgid "Register"
 msgstr "Załóż konto"
 
 msgid "Register"
 msgstr "Załóż konto"
 
-#: templates/base.html:67
+#: templates/base.html:69
 msgid "Didn't find a book? Make a suggestion."
 msgstr "Nie znalazłeś utworu na stronie? Zgłoś sugestię."
 
 msgid "Didn't find a book? Make a suggestion."
 msgstr "Nie znalazłeś utworu na stronie? Zgłoś sugestię."
 
-#: templates/base.html:79
+#: templates/base.html:81
 msgid ""
 "\n"
 msgid ""
 "\n"
-"\t\t\t\tWolne Lektury is a project lead by <a href=\"http://nowoczesnapolska.org.pl/\">Modern Poland Foundation</a>.\n"
-"\t\t\t\tDigital reproductions are made by <a href=\"http://www.bn.org.pl/\">The National Library</a>, <a href=\"http://www.bs.katowice.pl/\">Biblioteka Śląska</a> and <a href=\"http://www.bibliotekaelblaska.pl/\">Biblioteka Elbląska</a>, based on TNL, BŚ and BE resources.\n"
+"\t\t\t\tWolne Lektury is a project lead by <a href=\"http://nowoczesnapolska."
+"org.pl/\">Modern Poland Foundation</a>.\n"
+"\t\t\t\tDigital reproductions are made by <a href=\"http://www.bn.org.pl/"
+"\">The National Library</a>, <a href=\"http://www.bs.katowice.pl/"
+"\">Biblioteka Śląska</a> and <a href=\"http://www.bibliotekaelblaska.pl/"
+"\">Biblioteka Elbląska</a>, based on TNL, BŚ and BE resources.\n"
 "\t\t\t\tHosting: <a href=\"http://www.icm.edu.pl/\">ICM</a>.\n"
 "\t\t\t\t"
 msgstr ""
 "\n"
 "\t\t\t\tHosting: <a href=\"http://www.icm.edu.pl/\">ICM</a>.\n"
 "\t\t\t\t"
 msgstr ""
 "\n"
-"Wolne Lektury to projekt prowadzony przez <a href=\"http://nowoczesnapolska.org.pl/\">fundację Nowoczesna Polska</a>. \n"
-"Reprodukcje cyfrowe wykonane przez <a href=\"http://www.bn.org.pl/\">Bibliotekę Narodową</a>, <a href=\"http://www.bs.katowice.pl/\">Bibliotekę Śląską</a> i <a href=\"http://www.bibliotekaelblaska.pl/\">Bibliotekę Elbląską</a> z egzemplarzy pochodzących ze zbiorów BN, BŚ i BE.\n"
+"Wolne Lektury to projekt prowadzony przez <a href=\"http://nowoczesnapolska."
+"org.pl/\">fundację Nowoczesna Polska</a>. \n"
+"Reprodukcje cyfrowe wykonane przez <a href=\"http://www.bn.org.pl/"
+"\">Bibliotekę Narodową</a>, <a href=\"http://www.bs.katowice.pl/"
+"\">Bibliotekę Śląską</a> i <a href=\"http://www.bibliotekaelblaska.pl/"
+"\">Bibliotekę Elbląską</a> z egzemplarzy pochodzących ze zbiorów BN, BŚ i "
+"BE.\n"
 "Hosting: <a href=\"http://www.icm.edu.pl/\">ICM</a>."
 
 "Hosting: <a href=\"http://www.icm.edu.pl/\">ICM</a>."
 
-#: templates/base.html:86
+#: templates/base.html:88
 msgid ""
 "\n"
 msgid ""
 "\n"
-"\t\t\t\tModern Poland Foundation, 00-514 Warsaw, ul. Marszałkowska 84/92 lok. 125, tel/fax: (22) 621-30-17\n"
-"                e-mail: <a href=\"mailto:fundacja@nowoczesnapolska.org.pl\">fundacja@nowoczesnapolska.org.pl</a>\n"
+"\t\t\t\tModern Poland Foundation, 00-514 Warsaw, ul. Marszałkowska 84/92 "
+"lok. 125, tel/fax: (22) 621-30-17\n"
+"                e-mail: <a href=\"mailto:fundacja@nowoczesnapolska.org.pl"
+"\">fundacja@nowoczesnapolska.org.pl</a>\n"
 "\t\t\t\t"
 msgstr ""
 "\n"
 "\t\t\t\t"
 msgstr ""
 "\n"
-"Fundacja Nowoczesna Polska, 00-514 Warszawa, ul. Marszałkowska 84/92 lok. 125, tel/fax: (22) 621-30-17, e-mail: <a href=\"mailto:fundacja@nowoczesnapolska.org.pl\">fundacja@nowoczesnapolska.org.pl</a>"
+"Fundacja Nowoczesna Polska, 00-514 Warszawa, ul. Marszałkowska 84/92 lok. "
+"125, tel/fax: (22) 621-30-17, e-mail: <a href=\"mailto:"
+"fundacja@nowoczesnapolska.org.pl\">fundacja@nowoczesnapolska.org.pl</a>"
 
 
-#: templates/base.html:97
-#: templates/base.html.py:118
-#: templates/base.html:124
-#: templates/base.html.py:130
-#: templates/catalogue/book_detail.html:205
+#: templates/base.html:99 templates/base.html.py:120 templates/base.html:126
+#: templates/base.html.py:132 templates/catalogue/book_detail.html:205
 #: templates/catalogue/book_fragments.html:33
 #: templates/catalogue/differentiate_tags.html:23
 #: templates/catalogue/search_multiple_hits.html:29
 #: templates/catalogue/book_fragments.html:33
 #: templates/catalogue/differentiate_tags.html:23
 #: templates/catalogue/search_multiple_hits.html:29
@@ -136,9 +153,7 @@ msgstr ""
 msgid "Close"
 msgstr "Zamknij"
 
 msgid "Close"
 msgstr "Zamknij"
 
-#: templates/base.html:120
-#: templates/base.html.py:126
-#: templates/base.html:132
+#: templates/base.html:122 templates/base.html.py:128 templates/base.html:134
 #: templates/catalogue/book_detail.html:207
 #: templates/catalogue/book_fragments.html:35
 #: templates/catalogue/differentiate_tags.html:25
 #: templates/catalogue/book_detail.html:207
 #: templates/catalogue/book_fragments.html:35
 #: templates/catalogue/differentiate_tags.html:25
@@ -148,8 +163,7 @@ msgstr "Zamknij"
 msgid "Loading"
 msgstr "Ładowanie"
 
 msgid "Loading"
 msgstr "Ładowanie"
 
-#: templates/admin/base_site.html:4
-#: templates/admin/base_site.html.py:7
+#: templates/admin/base_site.html:4 templates/admin/base_site.html.py:7
 msgid "Site administration"
 msgstr "Administracja stroną"
 
 msgid "Site administration"
 msgstr "Administracja stroną"
 
@@ -174,14 +188,12 @@ msgstr "Importuj książkę"
 msgid "Register on"
 msgstr "Zarejestruj się w"
 
 msgid "Register on"
 msgstr "Zarejestruj się w"
 
-#: templates/auth/login.html:9
-#: templates/catalogue/book_detail.html:14
+#: templates/auth/login.html:9 templates/catalogue/book_detail.html:14
 #: templates/catalogue/book_fragments.html:12
 #: templates/catalogue/book_list.html:12
 #: templates/catalogue/breadcrumbs.html:21
 #: templates/catalogue/book_fragments.html:12
 #: templates/catalogue/book_list.html:12
 #: templates/catalogue/breadcrumbs.html:21
-#: templates/catalogue/counters.html:11
-#: templates/catalogue/main_page.html:23
-#: templates/info/base.html:12
+#: templates/catalogue/main_page.html:39
+#: templates/catalogue/search_form.html:3 templates/info/base.html:12
 #: templates/lesmianator/lesmianator.html:14
 #: templates/lessons/document_list.html:34
 #: templates/pdcounter/author_detail.html:13
 #: templates/lesmianator/lesmianator.html:14
 #: templates/lessons/document_list.html:34
 #: templates/pdcounter/author_detail.html:13
@@ -189,14 +201,11 @@ msgstr "Zarejestruj się w"
 msgid "Search"
 msgstr "Szukaj"
 
 msgid "Search"
 msgstr "Szukaj"
 
-#: templates/auth/login.html:9
-#: templates/catalogue/book_detail.html:14
+#: templates/auth/login.html:9 templates/catalogue/book_detail.html:14
 #: templates/catalogue/book_fragments.html:12
 #: templates/catalogue/book_fragments.html:12
-#: templates/catalogue/book_list.html:13
-#: templates/catalogue/counters.html:11
-#: templates/catalogue/main_page.html:24
-#: templates/catalogue/tagged_object_list.html:44
-#: templates/info/base.html:12
+#: templates/catalogue/book_list.html:13 templates/catalogue/main_page.html:40
+#: templates/catalogue/search_form.html:3
+#: templates/catalogue/tagged_object_list.html:44 templates/info/base.html:12
 #: templates/lesmianator/lesmianator.html:14
 #: templates/lessons/document_list.html:34
 #: templates/pdcounter/author_detail.html:13
 #: templates/lesmianator/lesmianator.html:14
 #: templates/lessons/document_list.html:34
 #: templates/pdcounter/author_detail.html:13
@@ -204,9 +213,7 @@ msgstr "Szukaj"
 msgid "or"
 msgstr "lub"
 
 msgid "or"
 msgstr "lub"
 
-#: templates/auth/login.html:9
-#: templates/catalogue/book_detail.html:14
-#: templates/catalogue/counters.html:11
+#: templates/auth/login.html:9 templates/catalogue/book_detail.html:14
 #: templates/lesmianator/lesmianator.html:14
 #: templates/lessons/document_list.html:34
 #: templates/pdcounter/author_detail.html:13
 #: templates/lesmianator/lesmianator.html:14
 #: templates/lessons/document_list.html:34
 #: templates/pdcounter/author_detail.html:13
@@ -334,8 +341,10 @@ msgstr "%(cs)s, finansowanego przez %(fb)s"
 
 #: templates/catalogue/book_detail.html:124
 #, python-format
 
 #: templates/catalogue/book_detail.html:124
 #, python-format
-msgid "Audiobooks were prepared as a part of the %(cs)s project funded by %(fb)s."
-msgstr "Audiobooki przygotowane w ramach projektu %(cs)s finansowanego przez %(fb)s."
+msgid ""
+"Audiobooks were prepared as a part of the %(cs)s project funded by %(fb)s."
+msgstr ""
+"Audiobooki przygotowane w ramach projektu %(cs)s finansowanego przez %(fb)s."
 
 #: templates/catalogue/book_detail.html:126
 #, python-format
 
 #: templates/catalogue/book_detail.html:126
 #, python-format
@@ -423,9 +432,17 @@ msgid ""
 "        distributed. If there are any additional copyrighted materials\n"
 "        provided with this work (such as annotations, motifs etc.), those\n"
 "        materials are licensed under the \n"
 "        distributed. If there are any additional copyrighted materials\n"
 "        provided with this work (such as annotations, motifs etc.), those\n"
 "        materials are licensed under the \n"
-"        <a href=\"http://creativecommons.org/licenses/by-sa/3.0/\">Creative Commons Attribution-ShareAlike 3.0</a>\n"
+"        <a href=\"http://creativecommons.org/licenses/by-sa/3.0/\">Creative "
+"Commons Attribution-ShareAlike 3.0</a>\n"
 "        license."
 "        license."
-msgstr "Ten utwór nie jest chroniony prawem autorskim i&nbsp;znajduje się w&nbsp;domenie publicznej, co oznacza że możesz go swobodnie wykorzystywać, publikować i&nbsp;rozpowszechniać. Jeśli utwór opatrzony jest dodatkowymi materiałami (przypisy, motywy literackie etc.), które podlegają prawu autorskiemu, to te dodatkowe materiały udostępnione są na licencji <a href=\"http://creativecommons.org/licenses/by-sa/3.0/deed.pl\">Uznanie autorstwa-Na tych samych warunkach 3.0</a>."
+msgstr ""
+"Ten utwór nie jest chroniony prawem autorskim i&nbsp;znajduje się w&nbsp;"
+"domenie publicznej, co oznacza że możesz go swobodnie wykorzystywać, "
+"publikować i&nbsp;rozpowszechniać. Jeśli utwór opatrzony jest dodatkowymi "
+"materiałami (przypisy, motywy literackie etc.), które podlegają prawu "
+"autorskiemu, to te dodatkowe materiały udostępnione są na licencji <a href="
+"\"http://creativecommons.org/licenses/by-sa/3.0/deed.pl\">Uznanie autorstwa-"
+"Na tych samych warunkach 3.0</a>."
 
 #: templates/catalogue/book_info.html:20
 msgid "Text prepared based on:"
 
 #: templates/catalogue/book_info.html:20
 msgid "Text prepared based on:"
@@ -443,23 +460,19 @@ msgstr "Spis wszystkich utworów w WolneLektury.pl"
 msgid "Listing of all works"
 msgstr "Spis wszystkich utworów"
 
 msgid "Listing of all works"
 msgstr "Spis wszystkich utworów"
 
-#: templates/catalogue/book_list.html:13
-#: templates/catalogue/main_page.html:24
+#: templates/catalogue/book_list.html:13 templates/catalogue/main_page.html:40
 msgid "see"
 msgstr "zobacz"
 
 msgid "see"
 msgstr "zobacz"
 
-#: templates/catalogue/book_list.html:15
-#: templates/catalogue/main_page.html:26
+#: templates/catalogue/book_list.html:15 templates/catalogue/main_page.html:42
 msgid "all books"
 msgstr "wszystkie utwory"
 
 msgid "all books"
 msgstr "wszystkie utwory"
 
-#: templates/catalogue/book_list.html:16
-#: templates/catalogue/main_page.html:27
+#: templates/catalogue/book_list.html:16 templates/catalogue/main_page.html:43
 msgid "audiobooks"
 msgstr "audiobooki"
 
 msgid "audiobooks"
 msgstr "audiobooki"
 
-#: templates/catalogue/book_list.html:17
-#: templates/catalogue/main_page.html:28
+#: templates/catalogue/book_list.html:17 templates/catalogue/main_page.html:44
 msgid "DAISY"
 msgstr "DAISY"
 
 msgid "DAISY"
 msgstr "DAISY"
 
@@ -475,18 +488,18 @@ msgstr "↑ góra ↑"
 msgid "Put a book on the shelf!"
 msgstr "Wrzuć lekturę na półkę!"
 
 msgid "Put a book on the shelf!"
 msgstr "Wrzuć lekturę na półkę!"
 
-#: templates/catalogue/book_sets.html:3
-#: templates/catalogue/book_sets.html:6
+#: templates/catalogue/book_sets.html:3 templates/catalogue/book_sets.html:6
 #: templates/catalogue/fragment_sets.html:16
 msgid "Create new shelf"
 msgstr "Utwórz nową półkę"
 
 #: templates/catalogue/book_sets.html:10
 msgid "You do not have any shelves. You can create one below, if you want to."
 #: templates/catalogue/fragment_sets.html:16
 msgid "Create new shelf"
 msgstr "Utwórz nową półkę"
 
 #: templates/catalogue/book_sets.html:10
 msgid "You do not have any shelves. You can create one below, if you want to."
-msgstr "Nie posiadasz żadnych półek. Jeśli chcesz, możesz utworzyć nową półkę poniżej."
+msgstr ""
+"Nie posiadasz żadnych półek. Jeśli chcesz, możesz utworzyć nową półkę "
+"poniżej."
 
 
-#: templates/catalogue/book_sets.html:15
-#: templates/catalogue/book_short.html:4
+#: templates/catalogue/book_sets.html:15 templates/catalogue/book_short.html:4
 msgid "Put on the shelf!"
 msgstr "Wrzuć na półkę"
 
 msgid "Put on the shelf!"
 msgstr "Wrzuć na półkę"
 
@@ -531,30 +544,34 @@ msgstr "Spis wszystkich plików DAISY"
 msgid ""
 "System DAISY to uznany na całym świecie format udostępniania książek\n"
 "dostosowany do potrzeb osób słabowidzących, niewidomych oraz innych osób\n"
 msgid ""
 "System DAISY to uznany na całym świecie format udostępniania książek\n"
 "dostosowany do potrzeb osób słabowidzących, niewidomych oraz innych osób\n"
-"mających trudności z czytaniem. Możecie z nich korzystać bezpłatnie i bez ograniczeń."
+"mających trudności z czytaniem. Możecie z nich korzystać bezpłatnie i bez "
+"ograniczeń."
 msgstr ""
 "System DAISY to uznany na całym świecie format udostępniania książek\n"
 "dostosowany do potrzeb osób słabowidzących, niewidomych oraz innych osób\n"
 msgstr ""
 "System DAISY to uznany na całym świecie format udostępniania książek\n"
 "dostosowany do potrzeb osób słabowidzących, niewidomych oraz innych osób\n"
-"mających trudności z czytaniem. Możecie z nich korzystać bezpłatnie i bez ograniczeń."
+"mających trudności z czytaniem. Możecie z nich korzystać bezpłatnie i bez "
+"ograniczeń."
 
 #: templates/catalogue/differentiate_tags.html:13
 msgid "The criteria are ambiguous. Please select one of the following options:"
 
 #: templates/catalogue/differentiate_tags.html:13
 msgid "The criteria are ambiguous. Please select one of the following options:"
-msgstr "Podane kryteria są niejednoznaczne. Proszę wybrać jedną z następujących możliwości:"
+msgstr ""
+"Podane kryteria są niejednoznaczne. Proszę wybrać jedną z następujących "
+"możliwości:"
 
 #: templates/catalogue/folded_tag_list.html:4
 msgid "Show full category"
 msgstr "Zobacz całą kategorię"
 
 #: templates/catalogue/folded_tag_list.html:13
 
 #: templates/catalogue/folded_tag_list.html:4
 msgid "Show full category"
 msgstr "Zobacz całą kategorię"
 
 #: templates/catalogue/folded_tag_list.html:13
-#: templates/catalogue/main_page.html:92
-#: templates/catalogue/main_page.html:97
-#: templates/catalogue/main_page.html:136
-#: templates/catalogue/main_page.html:331
+#: templates/catalogue/main_page.html:120
+#: templates/catalogue/main_page.html:125
+#: templates/catalogue/main_page.html:164
+#: templates/catalogue/main_page.html:359
 msgid "See more"
 msgstr "Zobacz więcej"
 
 #: templates/catalogue/folded_tag_list.html:22
 msgid "See more"
 msgstr "Zobacz więcej"
 
 #: templates/catalogue/folded_tag_list.html:22
-#: templates/catalogue/main_page.html:299
+#: templates/catalogue/main_page.html:327
 msgid "Hide"
 msgstr "Zwiń"
 
 msgid "Hide"
 msgstr "Zwiń"
 
@@ -563,9 +580,11 @@ msgid "Shelves containing fragment"
 msgstr "Półki zawierające fragment"
 
 #: templates/catalogue/fragment_sets.html:4
 msgstr "Półki zawierające fragment"
 
 #: templates/catalogue/fragment_sets.html:4
-#: templates/catalogue/main_page.html:66
+#: templates/catalogue/main_page.html:94
 msgid "You do not own any shelves. You can create one below, if you want to."
 msgid "You do not own any shelves. You can create one below, if you want to."
-msgstr "Nie posiadasz żadnych półek. Jeśli chcesz, możesz utworzyć nową półkę poniżej."
+msgstr ""
+"Nie posiadasz żadnych półek. Jeśli chcesz, możesz utworzyć nową półkę "
+"poniżej."
 
 #: templates/catalogue/fragment_sets.html:9
 msgid "Save all shelves"
 
 #: templates/catalogue/fragment_sets.html:9
 msgid "Save all shelves"
@@ -583,165 +602,225 @@ msgstr "Zwiń fragment"
 msgid "See in a book"
 msgstr "Zobacz w utworze"
 
 msgid "See in a book"
 msgstr "Zobacz w utworze"
 
-#: templates/catalogue/main_page.html:33
+#: templates/catalogue/main_page.html:13
+#, python-format
+msgid ""
+"\n"
+"%(c)s book from <a href='http://domenapubliczna.org'>public domain</a> or "
+"under\n"
+"a <a href='http://creativecommons.org/licenses/by-sa/3.0/deed.pl'>free "
+"license</a>.\n"
+msgid_plural ""
+"\n"
+"%(c)s books from <a href='http://domenapubliczna.org'>public domain</a> or "
+"under\n"
+"a <a href='http://creativecommons.org/licenses/by-sa/3.0/deed.pl'>free "
+"license</a>.\n"
+msgstr[0] ""
+"\n"
+"%(c)s lektura z <a href='http://domenapubliczna.org'>domeny publicznej</a>\n"
+"lub na <a href='http://creativecommons.org/licenses/by-sa/3.0/deed."
+"pl'>wolnej licencji</a>.\n"
+msgstr[1] ""
+"\n"
+"%(c)s lektury z <a href='http://domenapubliczna.org'>domeny publicznej</a>\n"
+"i na <a href='http://creativecommons.org/licenses/by-sa/3.0/deed.pl'>wolnej "
+"licencji</a>.\n"
+msgstr[2] ""
+"\n"
+"%(c)s lektur z <a href='http://domenapubliczna.org'>domeny publicznej</a>\n"
+"i na <a href='http://creativecommons.org/licenses/by-sa/3.0/deed.pl'>wolnej "
+"licencji</a>.\n"
+
+#: templates/catalogue/main_page.html:49
 msgid "Browse books by categories"
 msgstr "Przeglądaj lektury według wybranych kategorii"
 
 msgid "Browse books by categories"
 msgstr "Przeglądaj lektury według wybranych kategorii"
 
-#: templates/catalogue/main_page.html:50
+#: templates/catalogue/main_page.html:78
 msgid "Books for every school level"
 msgstr "Lektury na każdy poziom edukacji"
 
 msgid "Books for every school level"
 msgstr "Lektury na każdy poziom edukacji"
 
-#: templates/catalogue/main_page.html:52
+#: templates/catalogue/main_page.html:80
 msgid "primary school"
 msgstr "szkoła podstawowa"
 
 msgid "primary school"
 msgstr "szkoła podstawowa"
 
-#: templates/catalogue/main_page.html:53
+#: templates/catalogue/main_page.html:81
 msgid "gymnasium"
 msgstr "gimnazjum"
 
 msgid "gymnasium"
 msgstr "gimnazjum"
 
-#: templates/catalogue/main_page.html:54
+#: templates/catalogue/main_page.html:82
 msgid "high school"
 msgstr "szkoła średnia"
 
 msgid "high school"
 msgstr "szkoła średnia"
 
-#: templates/catalogue/main_page.html:57
+#: templates/catalogue/main_page.html:85
 #: templates/catalogue/user_shelves.html:2
 msgid "Your shelves with books"
 msgstr "Twoje półki z lekturami"
 
 #: templates/catalogue/user_shelves.html:2
 msgid "Your shelves with books"
 msgstr "Twoje półki z lekturami"
 
-#: templates/catalogue/main_page.html:62
+#: templates/catalogue/main_page.html:90
 msgid "delete"
 msgstr "usuń"
 
 msgid "delete"
 msgstr "usuń"
 
-#: templates/catalogue/main_page.html:71
+#: templates/catalogue/main_page.html:99
 #: templates/catalogue/user_shelves.html:15
 msgid "Create shelf"
 msgstr "Utwórz półkę"
 
 #: templates/catalogue/user_shelves.html:15
 msgid "Create shelf"
 msgstr "Utwórz półkę"
 
-#: templates/catalogue/main_page.html:75
-msgid "Create your own book set. You can share it with friends by sending them link to your shelf."
-msgstr "Stwórz własny zestaw lektur. Możesz się nim później podzielić z innymi, przesyłając im link do Twojej półki."
+#: templates/catalogue/main_page.html:103
+msgid ""
+"Create your own book set. You can share it with friends by sending them link "
+"to your shelf."
+msgstr ""
+"Stwórz własny zestaw lektur. Możesz się nim później podzielić z innymi, "
+"przesyłając im link do Twojej półki."
 
 
-#: templates/catalogue/main_page.html:76
+#: templates/catalogue/main_page.html:104
 msgid "You need to "
 msgstr "Aby zarządzać swoimi półkami, musisz się"
 
 msgid "You need to "
 msgstr "Aby zarządzać swoimi półkami, musisz się"
 
-#: templates/catalogue/main_page.html:76
+#: templates/catalogue/main_page.html:104
 msgid "sign in"
 msgstr "zalogować"
 
 msgid "sign in"
 msgstr "zalogować"
 
-#: templates/catalogue/main_page.html:76
+#: templates/catalogue/main_page.html:104
 msgid "to manage your shelves."
 msgstr "."
 
 msgid "to manage your shelves."
 msgstr "."
 
-#: templates/catalogue/main_page.html:82
+#: templates/catalogue/main_page.html:110
 msgid "Twórzże się!"
 msgstr ""
 
 msgid "Twórzże się!"
 msgstr ""
 
-#: templates/catalogue/main_page.html:84
-#: templates/catalogue/main_page.html:92
+#: templates/catalogue/main_page.html:112
+#: templates/catalogue/main_page.html:120
 msgid "Wolne Lektury Widget"
 msgstr "Widżet Wolne Lektury"
 
 msgid "Wolne Lektury Widget"
 msgstr "Widżet Wolne Lektury"
 
-#: templates/catalogue/main_page.html:85
-msgid "Place our widget - search engine for Wolne Lektury which gives access to free books and audiobooks - on your homepage! Just copy the HTML code below onto your page:"
-msgstr "Umieść widżet – wyszukiwarkę Wolnych Lektur umożliwiającą dostęp do darmowych lektur i audiobooków – na swojej stronie WWW! Po prostu skopiuj poniższy kod HTML na swoją stronę:"
+#: templates/catalogue/main_page.html:113
+msgid ""
+"Place our widget - search engine for Wolne Lektury which gives access to "
+"free books and audiobooks - on your homepage! Just copy the HTML code below "
+"onto your page:"
+msgstr ""
+"Umieść widżet – wyszukiwarkę Wolnych Lektur umożliwiającą dostęp do "
+"darmowych lektur i audiobooków – na swojej stronie WWW! Po prostu skopiuj "
+"poniższy kod HTML na swoją stronę:"
 
 
-#: templates/catalogue/main_page.html:86
+#: templates/catalogue/main_page.html:114
 msgid "Insert this element in place where you want display the widget"
 msgstr "Umieść ten element w miejscu gdzie chcesz wyświetlić widżet"
 
 msgid "Insert this element in place where you want display the widget"
 msgstr "Umieść ten element w miejscu gdzie chcesz wyświetlić widżet"
 
-#: templates/catalogue/main_page.html:89
+#: templates/catalogue/main_page.html:117
 msgid "Place this element just before closing body tag: &lt;/body&gt;"
 msgstr "Umieść ten element tuż przed zamknięciem taga body: &lt;/body&gt;"
 
 msgid "Place this element just before closing body tag: &lt;/body&gt;"
 msgstr "Umieść ten element tuż przed zamknięciem taga body: &lt;/body&gt;"
 
-#: templates/catalogue/main_page.html:95
-#: templates/catalogue/main_page.html:97
+#: templates/catalogue/main_page.html:123
+#: templates/catalogue/main_page.html:125
 #: templates/lessons/document_list.html:32
 msgid "Hand-outs for teachers"
 msgstr "Materiały pomocnicze dla nauczycieli"
 
 #: templates/lessons/document_list.html:32
 msgid "Hand-outs for teachers"
 msgstr "Materiały pomocnicze dla nauczycieli"
 
-#: templates/catalogue/main_page.html:96
-msgid "Lessons' prospects and other ideas for using Wolnelektury.pl for teaching."
-msgstr "Scenariusze lekcji i inne pomysły na wykorzytanie serwisu WolneLektury.pl podczas nauczania."
+#: templates/catalogue/main_page.html:124
+msgid ""
+"Lessons' prospects and other ideas for using Wolnelektury.pl for teaching."
+msgstr ""
+"Scenariusze lekcji i inne pomysły na wykorzytanie serwisu WolneLektury.pl "
+"podczas nauczania."
 
 
-#: templates/catalogue/main_page.html:103
+#: templates/catalogue/main_page.html:131
 #: templates/catalogue/tagged_object_list.html:112
 msgid "Authors"
 msgstr "Autorzy"
 
 #: templates/catalogue/tagged_object_list.html:112
 msgid "Authors"
 msgstr "Autorzy"
 
-#: templates/catalogue/main_page.html:107
+#: templates/catalogue/main_page.html:135
 #: templates/catalogue/tagged_object_list.html:116
 msgid "Kinds"
 msgstr "Rodzaje"
 
 #: templates/catalogue/tagged_object_list.html:116
 msgid "Kinds"
 msgstr "Rodzaje"
 
-#: templates/catalogue/main_page.html:111
+#: templates/catalogue/main_page.html:139
 #: templates/catalogue/tagged_object_list.html:120
 msgid "Genres"
 msgstr "Gatunki"
 
 #: templates/catalogue/tagged_object_list.html:120
 msgid "Genres"
 msgstr "Gatunki"
 
-#: templates/catalogue/main_page.html:115
+#: templates/catalogue/main_page.html:143
 #: templates/catalogue/tagged_object_list.html:124
 msgid "Epochs"
 msgstr "Epoki"
 
 #: templates/catalogue/tagged_object_list.html:124
 msgid "Epochs"
 msgstr "Epoki"
 
-#: templates/catalogue/main_page.html:121
-#: templates/catalogue/main_page.html:136
+#: templates/catalogue/main_page.html:149
+#: templates/catalogue/main_page.html:164
 msgid "Themes and topics"
 msgstr "Motywy i tematy"
 
 msgid "Themes and topics"
 msgstr "Motywy i tematy"
 
-#: templates/catalogue/main_page.html:124
+#: templates/catalogue/main_page.html:152
 msgid "Themes groups"
 msgstr "Rodziny motywów"
 
 msgid "Themes groups"
 msgstr "Rodziny motywów"
 
-#: templates/catalogue/main_page.html:309
+#: templates/catalogue/main_page.html:337
 msgid "News"
 msgstr "Aktualności"
 
 msgid "News"
 msgstr "Aktualności"
 
-#: templates/catalogue/main_page.html:313
+#: templates/catalogue/main_page.html:341
 msgid "See our blog"
 msgstr "Zobacz nasz blog"
 
 msgid "See our blog"
 msgstr "Zobacz nasz blog"
 
-#: templates/catalogue/main_page.html:316
-#: templates/catalogue/main_page.html:322
+#: templates/catalogue/main_page.html:344
+#: templates/catalogue/main_page.html:350
 msgid "You can help us!"
 msgstr "Możesz nam pomóc!"
 
 msgid "You can help us!"
 msgstr "Możesz nam pomóc!"
 
-#: templates/catalogue/main_page.html:318
+#: templates/catalogue/main_page.html:346
 msgid "Become a volunteer &ndash; an editor, developer or translator."
 msgstr "Zostań naszym redaktorem, programistą lub tłumaczem – wolontariuszem."
 
 msgid "Become a volunteer &ndash; an editor, developer or translator."
 msgstr "Zostań naszym redaktorem, programistą lub tłumaczem – wolontariuszem."
 
-#: templates/catalogue/main_page.html:319
+#: templates/catalogue/main_page.html:347
 msgid "Gain new skills and experience."
 msgstr "Zdobądź nowe umiejętności i doświadczenie."
 
 msgid "Gain new skills and experience."
 msgstr "Zdobądź nowe umiejętności i doświadczenie."
 
-#: templates/catalogue/main_page.html:320
+#: templates/catalogue/main_page.html:348
 msgid "Join an open project of creating an innovative online library."
 msgid "Join an open project of creating an innovative online library."
-msgstr "Weź udział w otwartym projekcie i twórz innowacyjną bibliotekę internetową."
+msgstr ""
+"Weź udział w otwartym projekcie i twórz innowacyjną bibliotekę internetową."
 
 
-#: templates/catalogue/main_page.html:325
-#: templates/catalogue/main_page.html:331
+#: templates/catalogue/main_page.html:353
+#: templates/catalogue/main_page.html:359
 msgid "About us"
 msgstr "O projekcie"
 
 msgid "About us"
 msgstr "O projekcie"
 
-#: templates/catalogue/main_page.html:327
+#: templates/catalogue/main_page.html:355
 msgid ""
 "\n"
 msgid ""
 "\n"
-"\t\t\tInternet library with school readings “Wolne Lektury” (<a href=\"http://wolnelektury.pl\">www.wolnelektury.pl</a>) is a project made by Modern Poland Foundation. It started in 2007 and shares school readings, which are recommended by Ministry of National Education and are in public domain.\n"
+"\t\t\tInternet library with school readings “Wolne Lektury” (<a href="
+"\"http://wolnelektury.pl\">www.wolnelektury.pl</a>) is a project made by "
+"Modern Poland Foundation. It started in 2007 and shares school readings, "
+"which are recommended by Ministry of National Education and are in public "
+"domain.\n"
 "\t\t\t"
 msgstr ""
 "\n"
 "\t\t\t"
 msgstr ""
 "\n"
-"Biblioteka internetowa z lekturami szkolnymi „Wolne Lektury” (<a href=\"http://wolnelektury.pl\">www.wolnelektury.pl</a>) to projekt realizowany przez fundację Nowoczesna Polska. Działa od 2007 roku i udostępnia w swoich zbiorach lektury szkolne, które są zalecane do użytku przez Ministerstwo Edukacji Narodowej i które trafiły już do domeny publicznej."
+"Biblioteka internetowa z lekturami szkolnymi „Wolne Lektury” (<a href="
+"\"http://wolnelektury.pl\">www.wolnelektury.pl</a>) to projekt realizowany "
+"przez fundację Nowoczesna Polska. Działa od 2007 roku i udostępnia w swoich "
+"zbiorach lektury szkolne, które są zalecane do użytku przez Ministerstwo "
+"Edukacji Narodowej i które trafiły już do domeny publicznej."
 
 
-#: templates/catalogue/main_page.html:340
+#: templates/catalogue/main_page.html:368
 msgid ""
 "\n"
 msgid ""
 "\n"
-"Portions of this page are modifications based on work created and <a href=\"http://code.google.com/policies.html\">shared by Google</a> and used\n"
-"according to terms described in the <a href=\"http://creativecommons.org/licenses/by/3.0/\">Creative Commons\n"
+"Portions of this page are modifications based on work created and <a href="
+"\"http://code.google.com/policies.html\">shared by Google</a> and used\n"
+"according to terms described in the <a href=\"http://creativecommons.org/"
+"licenses/by/3.0/\">Creative Commons\n"
 "3.0 Attribution License</a>.\n"
 msgstr ""
 "\n"
 "3.0 Attribution License</a>.\n"
 msgstr ""
 "\n"
-"Strona zawiera zmodyfikowane logo Androida, stworzone i <a href=\"http://code.google.com/policies.html\">udostępnione przez Google</a>\n"
-"na warunkach licencji <a href=\"http://creativecommons.org/licenses/by/3.0/\">Creative Commons 3.0 Uznanie Autorstwa</a>.\n"
+"Strona zawiera zmodyfikowane logo Androida, stworzone i <a href=\"http://"
+"code.google.com/policies.html\">udostępnione przez Google</a>\n"
+"na warunkach licencji <a href=\"http://creativecommons.org/licenses/by/3.0/"
+"\">Creative Commons 3.0 Uznanie Autorstwa</a>.\n"
+
+#: templates/catalogue/search_form.html:3 templates/info/base.html:12
+msgid "return to the main page"
+msgstr "wróć do strony głównej"
 
 #: templates/catalogue/search_multiple_hits.html:5
 #: templates/catalogue/search_too_short.html:5
 
 #: templates/catalogue/search_multiple_hits.html:5
 #: templates/catalogue/search_too_short.html:5
@@ -763,9 +842,13 @@ msgstr "Przepraszamy! Brak wyników spełniających kryteria podane w zapytaniu.
 
 #: templates/catalogue/search_no_hits.html:16
 msgid ""
 
 #: templates/catalogue/search_no_hits.html:16
 msgid ""
-"Search engine supports following criteria: title, author, theme/topic, epoch, kind and genre.\n"
+"Search engine supports following criteria: title, author, theme/topic, "
+"epoch, kind and genre.\n"
 "\t\tAs for now we do not support full text search."
 "\t\tAs for now we do not support full text search."
-msgstr "Wyszukiwarka obsługuje takie kryteria jak tytuł, autor, motyw/temat, epoka, rodzaj i gatunek utworu. Obecnie nie obsługujemy wyszukiwania fraz w tekstach utworów."
+msgstr ""
+"Wyszukiwarka obsługuje takie kryteria jak tytuł, autor, motyw/temat, epoka, "
+"rodzaj i gatunek utworu. Obecnie nie obsługujemy wyszukiwania fraz w "
+"tekstach utworów."
 
 #: templates/catalogue/search_too_short.html:14
 msgid "Sorry! Search query must have at least two characters."
 
 #: templates/catalogue/search_too_short.html:14
 msgid "Sorry! Search query must have at least two characters."
@@ -780,8 +863,12 @@ msgid "Your shelf is empty"
 msgstr "Twoja półka jest pusta"
 
 #: templates/catalogue/tagged_object_list.html:16
 msgstr "Twoja półka jest pusta"
 
 #: templates/catalogue/tagged_object_list.html:16
-msgid "You can put a book on a shelf by entering page of the reading and clicking 'Put on the shelf'."
-msgstr "Możesz wrzucić książkę na półkę, wchodząc na stronę danej lektury i klikając na przycisk „Na półkę!”."
+msgid ""
+"You can put a book on a shelf by entering page of the reading and clicking "
+"'Put on the shelf'."
+msgstr ""
+"Możesz wrzucić książkę na półkę, wchodząc na stronę danej lektury i klikając "
+"na przycisk „Na półkę!”."
 
 #: templates/catalogue/tagged_object_list.html:32
 msgid "Download all books from this shelf"
 
 #: templates/catalogue/tagged_object_list.html:32
 msgid "Download all books from this shelf"
@@ -826,8 +913,11 @@ msgid "Share this shelf"
 msgstr "Podziel się tą półką"
 
 #: templates/catalogue/tagged_object_list.html:51
 msgstr "Podziel się tą półką"
 
 #: templates/catalogue/tagged_object_list.html:51
-msgid "Copy this link and share it with other people to let them see your shelf."
-msgstr "Skopiuj ten link i przekaż go osobom, z którymi chcesz się podzielić tą półką."
+msgid ""
+"Copy this link and share it with other people to let them see your shelf."
+msgstr ""
+"Skopiuj ten link i przekaż go osobom, z którymi chcesz się podzielić tą "
+"półką."
 
 #: templates/catalogue/tagged_object_list.html:61
 #: templates/pdcounter/author_detail.html:27
 
 #: templates/catalogue/tagged_object_list.html:61
 #: templates/pdcounter/author_detail.html:27
@@ -842,12 +932,14 @@ msgstr "Przeczytaj omówienia z epoki %(last_tag)s w serwisie Lektury.Gazeta.pl"
 #: templates/catalogue/tagged_object_list.html:65
 #, python-format
 msgid "Read study of kind %(last_tag)s on Lektury.Gazeta.pl"
 #: templates/catalogue/tagged_object_list.html:65
 #, python-format
 msgid "Read study of kind %(last_tag)s on Lektury.Gazeta.pl"
-msgstr "Przeczytaj omówienia z rodzaju %(last_tag)s w serwisie Lektury.Gazeta.pl"
+msgstr ""
+"Przeczytaj omówienia z rodzaju %(last_tag)s w serwisie Lektury.Gazeta.pl"
 
 #: templates/catalogue/tagged_object_list.html:67
 #, python-format
 msgid "Read study of genre %(last_tag)s on Lektury.Gazeta.pl"
 
 #: templates/catalogue/tagged_object_list.html:67
 #, python-format
 msgid "Read study of genre %(last_tag)s on Lektury.Gazeta.pl"
-msgstr "Przeczytaj omówienia z gatunku %(last_tag)s w serwisie Lektury.Gazeta.pl"
+msgstr ""
+"Przeczytaj omówienia z gatunku %(last_tag)s w serwisie Lektury.Gazeta.pl"
 
 #: templates/catalogue/tagged_object_list.html:69
 msgid "Read related study on Lektury.Gazeta.pl"
 
 #: templates/catalogue/tagged_object_list.html:69
 msgid "Read related study on Lektury.Gazeta.pl"
@@ -887,31 +979,55 @@ msgstr "usuń"
 
 #: templates/catalogue/user_shelves.html:10
 msgid "You do not own any shelves. You can create one below if you want to"
 
 #: templates/catalogue/user_shelves.html:10
 msgid "You do not own any shelves. You can create one below if you want to"
-msgstr "Nie posiadasz żadnych półek. Jeśli chcesz, możesz utworzyć półkę poniżej."
-
-#: templates/info/base.html:12
-msgid "return to the main page"
-msgstr "wróć do strony głównej"
+msgstr ""
+"Nie posiadasz żadnych półek. Jeśli chcesz, możesz utworzyć półkę poniżej."
 
 
-#: templates/info/join_us.html:2
+#: templates/info/join_us.html:6
+#, python-format
 msgid ""
 msgid ""
-"We have over 1200 works published in Wolne Lektury!\n"
+"\n"
+"We have %(c)s work published in Wolne Lektury!\n"
 "Help us expand the library and set new readings free by\n"
 "<a href=\"http://nowoczesnapolska.org.pl/wesprzyj_nas/\">making a donation\n"
 "Help us expand the library and set new readings free by\n"
 "<a href=\"http://nowoczesnapolska.org.pl/wesprzyj_nas/\">making a donation\n"
-"or transferring 1% of your income tax</a>."
-msgstr "W serwisie Wolne Lektury już teraz opublikowanych jest ponad 1200 utworów! Pomóż w rozwijaniu biblioteki i uwalnianiu nowych lektur <a href=\"http://nowoczesnapolska.org.pl/wesprzyj_nas/\">przekazując nam darowiznę lub 1% podatku</a>."
+"or transferring 1&#37; of your income tax</a>.\n"
+msgid_plural ""
+"\n"
+"We have %(c)s works published in Wolne Lektury!\n"
+"Help us expand the library and set new readings free by\n"
+"<a href=\"http://nowoczesnapolska.org.pl/wesprzyj_nas/\">making a donation\n"
+"or transferring 1&#37; of your income tax</a>.\n"
+msgstr[0] ""
+"\n"
+"W serwisie Wolne Lektury już teraz opublikowany jest %(c)s utwór! Pomóż w "
+"rozwijaniu biblioteki i uwalnianiu nowych lektur <a href=\"http://"
+"nowoczesnapolska.org.pl/wesprzyj_nas/\">przekazując nam darowiznę lub 1&#37; "
+"podatku</a>.\n"
+msgstr[1] ""
+"\n"
+"W serwisie Wolne Lektury już teraz opublikowane są %(c)s utwory! Pomóż w "
+"rozwijaniu biblioteki i uwalnianiu nowych lektur <a href=\"http://"
+"nowoczesnapolska.org.pl/wesprzyj_nas/\">przekazując nam darowiznę lub 1&#37; "
+"podatku</a>.\n"
+msgstr[2] ""
+"\n"
+"W serwisie Wolne Lektury już teraz opublikowanych jest %(c)s utworów! Pomóż "
+"w rozwijaniu biblioteki i uwalnianiu nowych lektur <a href=\"http://"
+"nowoczesnapolska.org.pl/wesprzyj_nas/\">przekazując nam darowiznę lub 1&#37; "
+"podatku</a>.\n"
 
 
-#: templates/info/join_us.html:6
-#: templates/info/join_us.html.py:11
+#: templates/info/join_us.html:17 templates/info/join_us.html.py:22
 msgid "More..."
 msgstr "Więcej..."
 
 msgid "More..."
 msgstr "Więcej..."
 
-#: templates/info/join_us.html:8
+#: templates/info/join_us.html:19
 msgid ""
 "Become an editor of Wolne Lektury! Find out if\n"
 "we're currently working on a reading you're looking for and prepare\n"
 "a publication by yourself by logging into the Editorial Platform."
 msgid ""
 "Become an editor of Wolne Lektury! Find out if\n"
 "we're currently working on a reading you're looking for and prepare\n"
 "a publication by yourself by logging into the Editorial Platform."
-msgstr "Zostań redaktorem lub redaktorką Wolnych Lektur! Sprawdź, czy obecnie pracujemy nad publikacją wyszukiwanej przez ciebie lektury i samodzielnie przygotuj publikację logując się na Platformie Redakcyjnej."
+msgstr ""
+"Zostań redaktorem lub redaktorką Wolnych Lektur! Sprawdź, czy obecnie "
+"pracujemy nad publikacją wyszukiwanej przez ciebie lektury i samodzielnie "
+"przygotuj publikację logując się na Platformie Redakcyjnej."
 
 #: templates/lessons/ajax_document_detail.html:3
 msgid "author"
 
 #: templates/lessons/ajax_document_detail.html:3
 msgid "author"
@@ -937,29 +1053,54 @@ msgstr "Dzieła tego autora objęte są prawem autorskim."
 
 #: templates/pdcounter/author_detail.html:38
 #: templates/pdcounter/author_detail.html:46
 
 #: templates/pdcounter/author_detail.html:38
 #: templates/pdcounter/author_detail.html:46
-msgid "<a href='http://domenapubliczna.org/co-to-jest-domena-publiczna/'>Find out</a> why Internet libraries can't publish this author's works."
-msgstr "<a href='http://domenapubliczna.org/co-to-jest-domena-publiczna/'>Dowiedz się</a>, dlaczego biblioteki internetowe nie mogą udostępniać dzieł tego autora."
+msgid ""
+"<a href='http://domenapubliczna.org/co-to-jest-domena-publiczna/'>Find out</"
+"a> why Internet libraries can't publish this author's works."
+msgstr ""
+"<a href='http://domenapubliczna.org/co-to-jest-domena-publiczna/'>Dowiedz "
+"się</a>, dlaczego biblioteki internetowe nie mogą udostępniać dzieł tego "
+"autora."
 
 #: templates/pdcounter/author_detail.html:41
 
 #: templates/pdcounter/author_detail.html:41
-msgid "This author's works are in public domain and will be published on Internet school library of Wolne Lektury soon."
-msgstr "Dzieła tego autora znajdują się w domenie publicznej i niedługo zostaną opublikowane w szkolnej bibliotece internetowej Wolne Lektury."
+msgid ""
+"This author's works are in public domain and will be published on Internet "
+"school library of Wolne Lektury soon."
+msgstr ""
+"Dzieła tego autora znajdują się w domenie publicznej i niedługo zostaną "
+"opublikowane w szkolnej bibliotece internetowej Wolne Lektury."
 
 #: templates/pdcounter/author_detail.html:44
 
 #: templates/pdcounter/author_detail.html:44
-msgid "This author's works will become part of public domain and will be allowed to be published without restrictions in"
-msgstr "Dzieła tego autora przejdą do zasobów domeny publicznej i będą mogły być publikowane bez żadnych ograniczeń za"
+msgid ""
+"This author's works will become part of public domain and will be allowed to "
+"be published without restrictions in"
+msgstr ""
+"Dzieła tego autora przejdą do zasobów domeny publicznej i będą mogły być "
+"publikowane bez żadnych ograniczeń za"
 
 #: templates/pdcounter/book_stub_detail.html:18
 
 #: templates/pdcounter/book_stub_detail.html:18
-msgid "This work is in public domain and will be published on Internet school library of Wolne Lektury soon."
-msgstr "To dzieło znajduje się w domenie publicznej i niedługo zostanie opublikowane w szkolnej bibliotece internetowej Wolne Lektury."
+msgid ""
+"This work is in public domain and will be published on Internet school "
+"library of Wolne Lektury soon."
+msgstr ""
+"To dzieło znajduje się w domenie publicznej i niedługo zostanie opublikowane "
+"w szkolnej bibliotece internetowej Wolne Lektury."
 
 #: templates/pdcounter/book_stub_detail.html:21
 
 #: templates/pdcounter/book_stub_detail.html:21
-msgid "This work will become part of public domain and will be allowed to be published without restrictions in"
-msgstr "To dzieło przejdzie do zasobów domeny publicznej i będzie mogło być publikowane bez żadnych ograniczeń za"
+msgid ""
+"This work will become part of public domain and will be allowed to be "
+"published without restrictions in"
+msgstr ""
+"To dzieło przejdzie do zasobów domeny publicznej i będzie mogło być "
+"publikowane bez żadnych ograniczeń za"
 
 #: templates/pdcounter/book_stub_detail.html:23
 #: templates/pdcounter/book_stub_detail.html:26
 
 #: templates/pdcounter/book_stub_detail.html:23
 #: templates/pdcounter/book_stub_detail.html:26
-msgid "<a href='http://domenapubliczna.org/co-to-jest-domena-publiczna/'>Find out</a> why Internet libraries can't publish this work."
-msgstr "<a href='http://domenapubliczna.org/co-to-jest-domena-publiczna/'>Dowiedz się</a>, dlaczego biblioteki internetowe nie mogą udostępniać tego dzieła."
+msgid ""
+"<a href='http://domenapubliczna.org/co-to-jest-domena-publiczna/'>Find out</"
+"a> why Internet libraries can't publish this work."
+msgstr ""
+"<a href='http://domenapubliczna.org/co-to-jest-domena-publiczna/'>Dowiedz "
+"się</a>, dlaczego biblioteki internetowe nie mogą udostępniać tego dzieła."
 
 #: templates/pdcounter/book_stub_detail.html:25
 msgid "This work is copyrighted."
 
 #: templates/pdcounter/book_stub_detail.html:25
 msgid "This work is copyrighted."
index 6c58bff..9b34635 100644 (file)
@@ -115,35 +115,38 @@ LOGIN_URL = '/uzytkownicy/zaloguj/'
 LOGIN_REDIRECT_URL = '/'
 
 INSTALLED_APPS = [
 LOGIN_REDIRECT_URL = '/'
 
 INSTALLED_APPS = [
-    # included
+    # external
     'django.contrib.auth',
     'django.contrib.contenttypes',
     'django.contrib.sessions',
     'django.contrib.sites',
     'django.contrib.admin',
     'django.contrib.admindocs',
     'django.contrib.auth',
     'django.contrib.contenttypes',
     'django.contrib.sessions',
     'django.contrib.sites',
     'django.contrib.admin',
     'django.contrib.admindocs',
-
-    # external
+    'pagination',
+    'piston',
+    'piwik.django',
+    'rosetta',
     'south',
     'sorl.thumbnail',
     'south',
     'sorl.thumbnail',
-    'sponsors',
-    'newtagging',
-    'pagination',
-    'chunks',
+
+    # included
     'compress',
     'modeltranslation',
     'compress',
     'modeltranslation',
+
+    # our
+    'api',
     'catalogue',
     'catalogue',
+    'chunks',
     'dictionary',
     'dictionary',
-    'lessons',
-    'piston',
-    'api',
-    'rosetta',
     'infopages',
     'infopages',
-    'suggest',
     'lesmianator',
     'lesmianator',
+    'lessons',
+    'newtagging',
     'opds',
     'pdcounter',
     'opds',
     'pdcounter',
-    'piwik.django',
+    'sponsors',
+    'stats',
+    'suggest',
 ]
 
 #CACHE_BACKEND = 'locmem:///?max_entries=3000'
 ]
 
 #CACHE_BACKEND = 'locmem:///?max_entries=3000'
index 0da3236..89040a5 100644 (file)
@@ -87,10 +87,15 @@ hr {
 #header #logo img {
     margin-bottom: -1.25em;
 }
 #header #logo img {
     margin-bottom: -1.25em;
 }
-#header #logo a {
+#header a.logo {
     display:block;
     color: #777;
 }
     display:block;
     color: #777;
 }
+
+#tagline {
+    position: absolute;
+}
+
 #logo a:hover {
     text-decoration: none;
 }
 #logo a:hover {
     text-decoration: none;
 }
index 3e3de98..061197f 100644 (file)
@@ -28,7 +28,9 @@
         </div>
         <div id="header">
             <div id="logo">
         </div>
         <div id="header">
             <div id="logo">
-                <a href="/"><img src="{% block logo_url %}{{ STATIC_URL }}img/logo-bez.png{% endblock %}" alt="WolneLektury.pl" /><br/>szkolna biblioteka internetowa</a>
+                <a class="logo" href="/"><img src="{% block logo_url %}{{ STATIC_URL }}img/logo-bez.png{% endblock %}" alt="WolneLektury.pl" />
+                <br/>szkolna biblioteka internetowa</a>
+                {% block tagline %}{% endblock %}
             </div>
             <div id="user-info" style="display:none">
                 {% if user.is_authenticated %}
             </div>
             <div id="user-info" style="display:none">
                 {% if user.is_authenticated %}
diff --git a/wolnelektury/templates/catalogue/counters.html b/wolnelektury/templates/catalogue/counters.html
deleted file mode 100755 (executable)
index 9262a48..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-{% extends "base.html" %}
-{% load i18n %}
-
-{% block title %}Liczniki w  WolneLektury.pl{% endblock %}
-
-{% block bodyid %}tagged-object-list{% endblock %}
-
-{% block body %}
-    <h1>Liczniki</h1>
-    <form action="{% url search %}" method="get" accept-charset="utf-8" id="search-form">
-        <p>{{ form.q }} <input type="submit" value="{% trans "Search" %}" /> <strong>{% trans "or" %}</strong> <a href="{% url main_page %}">{% trans "return to main page" %}</a></p>
-    </form>
-
-    <table>
-        <tr><th>Utwory</th></tr>
-        <tr><td>Wszystkie utwory:</td><td>{{ books }}</td></tr>
-        <tr><td>Utwory z własną treścią:</td><td>{{ books_nonempty }}</td></tr>
-        <tr><td>Utwory bez własnej treści:</td><td>{{ books_empty }}</td></tr>
-        <tr><td>Niezależne książki:</td><td>{{ books_root }}</td></tr>
-
-        <tr><th>Media</th><th>Liczba</th><th>Rozmiar</th><th>Do wymiany</th></tr>
-        {% for mt in media_types %}
-            <tr><td>{{ mt.type }}:</td>
-                <td>{{ mt.count }}</td>
-                <td>{{ mt.size|filesizeformat }}</td>
-                <td>{{ mt.deprecated }}</td>
-            </tr>
-        {% endfor %}
-    </table>
-
-{% endblock %}
index 7e9f7c2..38b3f0f 100644 (file)
@@ -1,11 +1,27 @@
 {% extends "base.html" %}
 {% load i18n %}
 {% extends "base.html" %}
 {% load i18n %}
-{% load catalogue_tags chunks cache %}
+{% load catalogue_tags chunks cache stats %}
 
 {# doodle #}
 {% block logo_url %}{{ STATIC_URL }}img/doodle/20110908-logo.png{% endblock %}
 
 
 
 {# doodle #}
 {% block logo_url %}{{ STATIC_URL }}img/doodle/20110908-logo.png{% endblock %}
 
 
+{% block tagline %}
+<div id='tagline'>
+
+{% count_books_nonempty count_books %}
+{% blocktrans count count_books as c %}
+{{c}} book from <a href='http://domenapubliczna.org'>public domain</a> or under
+a <a href='http://creativecommons.org/licenses/by-sa/3.0/deed.pl'>free license</a>.
+{% plural %}
+{{c}} books from <a href='http://domenapubliczna.org'>public domain</a> or under
+a <a href='http://creativecommons.org/licenses/by-sa/3.0/deed.pl'>free license</a>.
+{% endblocktrans %}
+
+</div>
+{% endblock %}
+
+
 {% block bodyid %}main-page{% endblock %}
 
 {% block body %}
 {% block bodyid %}main-page{% endblock %}
 
 {% block body %}
@@ -16,7 +32,7 @@
         {# doodle #}
         <div style="position:relative;">
             <a href="https://market.android.com/details?id=pl.org.nowoczesnapolska.wlmobi" target="_blank">
         {# doodle #}
         <div style="position:relative;">
             <a href="https://market.android.com/details?id=pl.org.nowoczesnapolska.wlmobi" target="_blank">
-                <img src="{{ STATIC_URL }}img/doodle/20110908-android.png" style="position:absolute; top:-100px; left: 250px; margin-top: .5em;" />
+                <img src="{{ STATIC_URL }}img/doodle/20110908-android.png" style="position:absolute; top:-100px; left: 320px; margin-top: .5em;" />
             </a>
         </div>
     <form action="{% url search %}" method="get" accept-charset="utf-8" id="search-form">
             </a>
         </div>
     <form action="{% url search %}" method="get" accept-charset="utf-8" id="search-form">
diff --git a/wolnelektury/templates/catalogue/search_form.html b/wolnelektury/templates/catalogue/search_form.html
new file mode 100755 (executable)
index 0000000..4535226
--- /dev/null
@@ -0,0 +1,4 @@
+{% load i18n %}
+<form action="{% url search %}" method="get" accept-charset="utf-8" id="search-form">
+    <p>{{ form.q }} <input type="submit" value="{% trans "Search" %}" /> <strong>{%trans "or" %}</strong> <a href="{% url main_page %}">{% trans "return to the main page" %}</a></p>
+</form>
index a837d51..fee416e 100644 (file)
@@ -1,8 +1,19 @@
 {% load i18n %}
 {% load i18n %}
-<p>{% blocktrans %}We have over 1200 works published in Wolne Lektury!
+{% load stats %}
+
+{% count_books_nonempty book_count %}
+<p>
+{% blocktrans count book_count as c %}
+We have {{c}} work published in Wolne Lektury!
+Help us expand the library and set new readings free by
+<a href="http://nowoczesnapolska.org.pl/wesprzyj_nas/">making a donation
+or transferring 1&#37; of your income tax</a>.
+{% plural %}
+We have {{c}} works published in Wolne Lektury!
 Help us expand the library and set new readings free by
 <a href="http://nowoczesnapolska.org.pl/wesprzyj_nas/">making a donation
 Help us expand the library and set new readings free by
 <a href="http://nowoczesnapolska.org.pl/wesprzyj_nas/">making a donation
-or transferring 1% of your income tax</a>.{% endblocktrans %}
+or transferring 1&#37; of your income tax</a>.
+{% endblocktrans %}
 {% comment %}<a href='{}'>{% trans "More..." %}</a>{% endcomment %}</p>
 
 <p>{% blocktrans %}Become an editor of Wolne Lektury! Find out if
 {% comment %}<a href='{}'>{% trans "More..." %}</a>{% endcomment %}</p>
 
 <p>{% blocktrans %}Become an editor of Wolne Lektury! Find out if
index 92e3dc5..aa9588a 100644 (file)
@@ -19,6 +19,7 @@ urlpatterns = patterns('',
     url(r'^sugestia/', include('suggest.urls')),
     url(r'^lesmianator/', include('lesmianator.urls')),
     url(r'^przypisy/', include('dictionary.urls')),
     url(r'^sugestia/', include('suggest.urls')),
     url(r'^lesmianator/', include('lesmianator.urls')),
     url(r'^przypisy/', include('dictionary.urls')),
+    url(r'^statystyka/', include('stats.urls')),
 
     # Static pages
     url(r'^mozesz-nam-pomoc/$', 'infopages.views.infopage', {'slug': 'help_us'}, name='help_us'),
 
     # Static pages
     url(r'^mozesz-nam-pomoc/$', 'infopages.views.infopage', {'slug': 'help_us'}, name='help_us'),