From: Radek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl> Date: Fri, 16 Sep 2011 13:20:20 +0000 (+0200) Subject: moved stats to own app, add template tags to it, X-Git-Url: https://git.mdrn.pl/wolnelektury.git/commitdiff_plain/876c24227952faa17eda5d706cb0b3316d5ffe24 moved stats to own app, add template tags to it, added tagline added search fofm template tag footnotes dictionary fix --- diff --git a/apps/catalogue/templatetags/catalogue_tags.py b/apps/catalogue/templatetags/catalogue_tags.py index c931e4880..e433b8e32 100644 --- a/apps/catalogue/templatetags/catalogue_tags.py +++ b/apps/catalogue/templatetags/catalogue_tags.py @@ -14,6 +14,8 @@ from django.db.models import Q from django.conf import settings from django.utils.translation import ugettext as _ +from catalogue.forms import SearchForm + register = template.Library() @@ -166,9 +168,12 @@ def authentication_form(): 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): - from catalogue.forms import SearchForm context = {'tag_list': tags} try: max_tag_list = settings.MAX_TAG_LIST diff --git a/apps/catalogue/urls.py b/apps/catalogue/urls.py index a8f21d1b4..cb04ba390 100644 --- a/apps/catalogue/urls.py +++ b/apps/catalogue/urls.py @@ -24,7 +24,6 @@ urlpatterns = patterns('catalogue.views', # 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'), diff --git a/apps/catalogue/views.py b/apps/catalogue/views.py index 44a01479d..2237af862 100644 --- a/apps/catalogue/views.py +++ b/apps/catalogue/views.py @@ -129,27 +129,6 @@ def daisy_list(request): 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:]) diff --git a/apps/dictionary/locale/pl/LC_MESSAGES/django.mo b/apps/dictionary/locale/pl/LC_MESSAGES/django.mo new file mode 100644 index 000000000..1104f8ba7 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 index 000000000..8184c9a75 --- /dev/null +++ b/apps/dictionary/locale/pl/LC_MESSAGES/django.po @@ -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" + diff --git a/apps/dictionary/models.py b/apps/dictionary/models.py index 260617927..c0a92d101 100644 --- a/apps/dictionary/models.py +++ b/apps/dictionary/models.py @@ -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, - html=html_str, sort_key=sortify(text_str)) + html=html_str, sort_key=sortify(text_str)[:128]) Book.html_built.connect(notes_from_book) diff --git a/apps/dictionary/templates/dictionary/note_list.html b/apps/dictionary/templates/dictionary/note_list.html index bc15e9541..6ae3664ea 100755 --- a/apps/dictionary/templates/dictionary/note_list.html +++ b/apps/dictionary/templates/dictionary/note_list.html @@ -1,13 +1,10 @@ {% extends "base.html" %} {% load i18n pagination_tags %} +{% load catalogue_tags %} {% 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> diff --git a/apps/dictionary/tests.py b/apps/dictionary/tests.py index 89d2ab9fb..0de7c5e6d 100755 --- a/apps/dictionary/tests.py +++ b/apps/dictionary/tests.py @@ -22,7 +22,7 @@ class DictionaryTests(WLTestCase): 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> diff --git a/apps/stats/__init__.py b/apps/stats/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/apps/stats/models.py b/apps/stats/models.py new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/apps/stats/models.py @@ -0,0 +1 @@ + diff --git a/apps/stats/templates/stats/main.html b/apps/stats/templates/stats/main.html new file mode 100755 index 000000000..2be411d0e --- /dev/null +++ b/apps/stats/templates/stats/main.html @@ -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 index 000000000..e69de29bb diff --git a/apps/stats/templatetags/stats.py b/apps/stats/templatetags/stats.py new file mode 100755 index 000000000..d13b9f67a --- /dev/null +++ b/apps/stats/templatetags/stats.py @@ -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 index 000000000..3b624099b --- /dev/null +++ b/apps/stats/urls.py @@ -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 index 000000000..b4fd44bed --- /dev/null +++ b/apps/stats/views.py @@ -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)) diff --git a/wolnelektury/locale/pl/LC_MESSAGES/django.mo b/wolnelektury/locale/pl/LC_MESSAGES/django.mo index d1670baf4..6887fc94f 100644 Binary files a/wolnelektury/locale/pl/LC_MESSAGES/django.mo and b/wolnelektury/locale/pl/LC_MESSAGES/django.mo differ diff --git a/wolnelektury/locale/pl/LC_MESSAGES/django.po b/wolnelektury/locale/pl/LC_MESSAGES/django.po index 0f0c95bdd..d6e382ded 100644 --- a/wolnelektury/locale/pl/LC_MESSAGES/django.po +++ b/wolnelektury/locale/pl/LC_MESSAGES/django.po @@ -5,129 +5,146 @@ # msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: WolneLektury\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" -"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" +"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 "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/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 "<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 "" -"<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." -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 -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" -#: templates/base.html:37 +#: templates/base.html:39 msgid "Your shelves" msgstr "Twoje póÅki" -#: templates/base.html:39 +#: templates/base.html:41 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" -#: templates/base.html:42 +#: templates/base.html:44 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/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" -#: 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Ä." -#: templates/base.html:79 +#: templates/base.html:81 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" -"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>." -#: templates/base.html:86 +#: templates/base.html:88 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" -"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 @@ -136,9 +153,7 @@ msgstr "" 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 @@ -148,8 +163,7 @@ msgstr "Zamknij" 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Ä " @@ -174,14 +188,12 @@ msgstr "Importuj ksiÄ Å¼kÄ" 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/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 @@ -189,14 +201,11 @@ msgstr "Zarejestruj siÄ w" 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_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 @@ -204,9 +213,7 @@ msgstr "Szukaj" 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 @@ -334,8 +341,10 @@ msgstr "%(cs)s, finansowanego przez %(fb)s" #: 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 @@ -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" -" <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." -msgstr "Ten utwór nie jest chroniony prawem autorskim i znajduje siÄ w domenie publicznej, co oznacza że możesz go swobodnie wykorzystywaÄ, publikowaÄ i 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 znajduje siÄ w " +"domenie publicznej, co oznacza że możesz go swobodnie wykorzystywaÄ, " +"publikowaÄ i 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:" @@ -443,23 +460,19 @@ msgstr "Spis wszystkich utworów w WolneLektury.pl" 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" -#: 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" -#: 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" -#: 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" @@ -475,18 +488,18 @@ msgstr "â góra â" 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." -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Ä" @@ -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" -"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" -"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:" -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/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 -#: templates/catalogue/main_page.html:299 +#: templates/catalogue/main_page.html:327 msgid "Hide" msgstr "ZwiÅ" @@ -563,9 +580,11 @@ msgid "Shelves containing fragment" 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." -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" @@ -583,165 +602,225 @@ msgstr "ZwiÅ fragment" 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" -#: 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" -#: templates/catalogue/main_page.html:52 +#: templates/catalogue/main_page.html:80 msgid "primary school" msgstr "szkoÅa podstawowa" -#: templates/catalogue/main_page.html:53 +#: templates/catalogue/main_page.html:81 msgid "gymnasium" msgstr "gimnazjum" -#: templates/catalogue/main_page.html:54 +#: templates/catalogue/main_page.html:82 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/main_page.html:62 +#: templates/catalogue/main_page.html:90 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/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Ä" -#: templates/catalogue/main_page.html:76 +#: templates/catalogue/main_page.html:104 msgid "sign in" msgstr "zalogowaÄ" -#: templates/catalogue/main_page.html:76 +#: templates/catalogue/main_page.html:104 msgid "to manage your shelves." msgstr "." -#: templates/catalogue/main_page.html:82 +#: templates/catalogue/main_page.html:110 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" -#: 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" -#: templates/catalogue/main_page.html:89 +#: templates/catalogue/main_page.html:117 msgid "Place this element just before closing body tag: </body>" msgstr "UmieÅÄ ten element tuż przed zamkniÄciem taga body: </body>" -#: 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/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/main_page.html:107 +#: templates/catalogue/main_page.html:135 #: 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/main_page.html:115 +#: templates/catalogue/main_page.html:143 #: 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" -#: templates/catalogue/main_page.html:124 +#: templates/catalogue/main_page.html:152 msgid "Themes groups" msgstr "Rodziny motywów" -#: templates/catalogue/main_page.html:309 +#: templates/catalogue/main_page.html:337 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" -#: 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!" -#: templates/catalogue/main_page.html:318 +#: templates/catalogue/main_page.html:346 msgid "Become a volunteer – 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." -#: templates/catalogue/main_page.html:320 +#: templates/catalogue/main_page.html:348 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" -#: templates/catalogue/main_page.html:327 +#: templates/catalogue/main_page.html:355 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" -"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" -"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" -"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 @@ -763,9 +842,13 @@ msgstr "Przepraszamy! Brak wyników speÅniajÄ cych kryteria podane w zapytaniu. #: 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." -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." @@ -780,8 +863,12 @@ msgid "Your shelf is empty" 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" @@ -826,8 +913,11 @@ msgid "Share this shelf" 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 @@ -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" -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" -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" @@ -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" -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 "" -"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" -"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% 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% 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% " +"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% " +"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% " +"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..." -#: 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." -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" @@ -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 -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 -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 -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 -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 -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 -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." diff --git a/wolnelektury/settings.py b/wolnelektury/settings.py index 6c58bff46..9b346351b 100644 --- a/wolnelektury/settings.py +++ b/wolnelektury/settings.py @@ -115,35 +115,38 @@ LOGIN_URL = '/uzytkownicy/zaloguj/' 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', - - # external + 'pagination', + 'piston', + 'piwik.django', + 'rosetta', 'south', 'sorl.thumbnail', - 'sponsors', - 'newtagging', - 'pagination', - 'chunks', + + # included 'compress', 'modeltranslation', + + # our + 'api', 'catalogue', + 'chunks', 'dictionary', - 'lessons', - 'piston', - 'api', - 'rosetta', 'infopages', - 'suggest', 'lesmianator', + 'lessons', + 'newtagging', 'opds', 'pdcounter', - 'piwik.django', + 'sponsors', + 'stats', + 'suggest', ] #CACHE_BACKEND = 'locmem:///?max_entries=3000' diff --git a/wolnelektury/static/css/master.css b/wolnelektury/static/css/master.css index 0da323672..89040a5b7 100644 --- a/wolnelektury/static/css/master.css +++ b/wolnelektury/static/css/master.css @@ -87,10 +87,15 @@ hr { #header #logo img { margin-bottom: -1.25em; } -#header #logo a { +#header a.logo { display:block; color: #777; } + +#tagline { + position: absolute; +} + #logo a:hover { text-decoration: none; } diff --git a/wolnelektury/templates/base.html b/wolnelektury/templates/base.html index 3e3de9816..061197f9b 100644 --- a/wolnelektury/templates/base.html +++ b/wolnelektury/templates/base.html @@ -28,7 +28,9 @@ </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 %} diff --git a/wolnelektury/templates/catalogue/counters.html b/wolnelektury/templates/catalogue/counters.html deleted file mode 100755 index 9262a4841..000000000 --- a/wolnelektury/templates/catalogue/counters.html +++ /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 %} diff --git a/wolnelektury/templates/catalogue/main_page.html b/wolnelektury/templates/catalogue/main_page.html index 7e9f7c2e2..38b3f0f8a 100644 --- a/wolnelektury/templates/catalogue/main_page.html +++ b/wolnelektury/templates/catalogue/main_page.html @@ -1,11 +1,27 @@ {% 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 %} +{% 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 %} @@ -16,7 +32,7 @@ {# 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"> diff --git a/wolnelektury/templates/catalogue/search_form.html b/wolnelektury/templates/catalogue/search_form.html new file mode 100755 index 000000000..453522666 --- /dev/null +++ b/wolnelektury/templates/catalogue/search_form.html @@ -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> diff --git a/wolnelektury/templates/info/join_us.html b/wolnelektury/templates/info/join_us.html index a837d51ef..fee416ea0 100644 --- a/wolnelektury/templates/info/join_us.html +++ b/wolnelektury/templates/info/join_us.html @@ -1,8 +1,19 @@ {% 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% 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 -or transferring 1% of your income tax</a>.{% endblocktrans %} +or transferring 1% 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 diff --git a/wolnelektury/urls.py b/wolnelektury/urls.py index 92e3dc505..aa9588af4 100644 --- a/wolnelektury/urls.py +++ b/wolnelektury/urls.py @@ -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'^statystyka/', include('stats.urls')), # Static pages url(r'^mozesz-nam-pomoc/$', 'infopages.views.infopage', {'slug': 'help_us'}, name='help_us'),