Merge branch 'master' into Develop
# Conflicts: # cps/shelf.py
This commit is contained in:
		
						commit
						50ba2e329a
					
				| 
						 | 
				
			
			@ -30,7 +30,7 @@ Calibre-Web is a web app providing a clean interface for browsing, reading and d
 | 
			
		|||
 | 
			
		||||
## Quick start
 | 
			
		||||
 | 
			
		||||
1. Install dependencies by running `pip3 install --target vendor -r requirements.txt`.
 | 
			
		||||
1. Install dependencies by running `pip3 install --target vendor -r requirements.txt` (python3.x) or `pip install --target vendor -r requirements.txt` (python2.7).
 | 
			
		||||
2. Execute the command: `python cps.py` (or `nohup python cps.py` - recommended if you want to exit the terminal window)
 | 
			
		||||
3. Point your browser to `http://localhost:8083` or `http://localhost:8083/opds` for the OPDS catalog
 | 
			
		||||
4. Set `Location of Calibre database` to the path of the folder where your Calibre library (metadata.db) lives, push "submit" button\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -50,7 +50,7 @@ def oauth_required(f):
 | 
			
		|||
    def inner(*args, **kwargs):
 | 
			
		||||
        if config.config_login_type == constants.LOGIN_OAUTH:
 | 
			
		||||
            return f(*args, **kwargs)
 | 
			
		||||
        if request.is_xhr:
 | 
			
		||||
        if request.headers.get('X-Requested-With') == 'XMLHttpRequest':
 | 
			
		||||
            data = {'status': 'error', 'message': 'Not Found'}
 | 
			
		||||
            response = make_response(json.dumps(data, ensure_ascii=False))
 | 
			
		||||
            response.headers["Content-Type"] = "application/json; charset=utf-8"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -146,7 +146,7 @@ class WebServer(object):
 | 
			
		|||
                self.unix_socket_file = None
 | 
			
		||||
 | 
			
		||||
    def _start_tornado(self):
 | 
			
		||||
        if os.name == 'nt':
 | 
			
		||||
        if os.name == 'nt' and sys.version_info > (3, 7):
 | 
			
		||||
            import asyncio
 | 
			
		||||
            asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
 | 
			
		||||
        log.info('Starting Tornado server on %s', _readable_listen_address(self.listen_address, self.listen_port))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										40
									
								
								cps/shelf.py
									
									
									
									
									
								
							
							
						
						
									
										40
									
								
								cps/shelf.py
									
									
									
									
									
								
							| 
						 | 
				
			
			@ -40,17 +40,18 @@ log = logger.create()
 | 
			
		|||
@shelf.route("/shelf/add/<int:shelf_id>/<int:book_id>")
 | 
			
		||||
@login_required
 | 
			
		||||
def add_to_shelf(shelf_id, book_id):
 | 
			
		||||
    xhr = request.headers.get('X-Requested-With') == 'XMLHttpRequest'
 | 
			
		||||
    shelf = ub.session.query(ub.Shelf).filter(ub.Shelf.id == shelf_id).first()
 | 
			
		||||
    if shelf is None:
 | 
			
		||||
        log.error("Invalid shelf specified: %s", shelf_id)
 | 
			
		||||
        if not request.is_xhr:
 | 
			
		||||
        if not xhr:
 | 
			
		||||
            flash(_(u"Invalid shelf specified"), category="error")
 | 
			
		||||
            return redirect(url_for('web.index'))
 | 
			
		||||
        return "Invalid shelf specified", 400
 | 
			
		||||
 | 
			
		||||
    if not shelf.is_public and not shelf.user_id == int(current_user.id):
 | 
			
		||||
        log.error("User %s not allowed to add a book to %s", current_user, shelf)
 | 
			
		||||
        if not request.is_xhr:
 | 
			
		||||
        if not xhr:
 | 
			
		||||
            flash(_(u"Sorry you are not allowed to add a book to the the shelf: %(shelfname)s", shelfname=shelf.name),
 | 
			
		||||
                  category="error")
 | 
			
		||||
            return redirect(url_for('web.index'))
 | 
			
		||||
| 
						 | 
				
			
			@ -58,7 +59,7 @@ def add_to_shelf(shelf_id, book_id):
 | 
			
		|||
 | 
			
		||||
    if shelf.is_public and not current_user.role_edit_shelfs():
 | 
			
		||||
        log.info("User %s not allowed to edit public shelves", current_user)
 | 
			
		||||
        if not request.is_xhr:
 | 
			
		||||
        if not xhr:
 | 
			
		||||
            flash(_(u"You are not allowed to edit public shelves"), category="error")
 | 
			
		||||
            return redirect(url_for('web.index'))
 | 
			
		||||
        return "User is not allowed to edit public shelves", 403
 | 
			
		||||
| 
						 | 
				
			
			@ -67,7 +68,7 @@ def add_to_shelf(shelf_id, book_id):
 | 
			
		|||
                                          ub.BookShelf.book_id == book_id).first()
 | 
			
		||||
    if book_in_shelf:
 | 
			
		||||
        log.error("Book %s is already part of %s", book_id, shelf)
 | 
			
		||||
        if not request.is_xhr:
 | 
			
		||||
        if not xhr:
 | 
			
		||||
            flash(_(u"Book is already part of the shelf: %(shelfname)s", shelfname=shelf.name), category="error")
 | 
			
		||||
            return redirect(url_for('web.index'))
 | 
			
		||||
        return "Book is already part of the shelf: %s" % shelf.name, 400
 | 
			
		||||
| 
						 | 
				
			
			@ -81,7 +82,7 @@ def add_to_shelf(shelf_id, book_id):
 | 
			
		|||
    ins = ub.BookShelf(shelf=shelf.id, book_id=book_id, order=maxOrder + 1)
 | 
			
		||||
    ub.session.add(ins)
 | 
			
		||||
    ub.session.commit()
 | 
			
		||||
    if not request.is_xhr:
 | 
			
		||||
    if not xhr:
 | 
			
		||||
        flash(_(u"Book has been added to shelf: %(sname)s", sname=shelf.name), category="success")
 | 
			
		||||
        if "HTTP_REFERER" in request.environ:
 | 
			
		||||
            return redirect(request.environ["HTTP_REFERER"])
 | 
			
		||||
| 
						 | 
				
			
			@ -147,10 +148,11 @@ def search_to_shelf(shelf_id):
 | 
			
		|||
@shelf.route("/shelf/remove/<int:shelf_id>/<int:book_id>")
 | 
			
		||||
@login_required
 | 
			
		||||
def remove_from_shelf(shelf_id, book_id):
 | 
			
		||||
    xhr = request.headers.get('X-Requested-With') == 'XMLHttpRequest'
 | 
			
		||||
    shelf = ub.session.query(ub.Shelf).filter(ub.Shelf.id == shelf_id).first()
 | 
			
		||||
    if shelf is None:
 | 
			
		||||
        log.error("Invalid shelf specified: %s", shelf_id)
 | 
			
		||||
        if not request.is_xhr:
 | 
			
		||||
        if not xhr:
 | 
			
		||||
            return redirect(url_for('web.index'))
 | 
			
		||||
        return "Invalid shelf specified", 400
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -169,20 +171,20 @@ def remove_from_shelf(shelf_id, book_id):
 | 
			
		|||
 | 
			
		||||
        if book_shelf is None:
 | 
			
		||||
            log.error("Book %s already removed from %s", book_id, shelf)
 | 
			
		||||
            if not request.is_xhr:
 | 
			
		||||
            if not xhr:
 | 
			
		||||
                return redirect(url_for('web.index'))
 | 
			
		||||
            return "Book already removed from shelf", 410
 | 
			
		||||
 | 
			
		||||
        ub.session.delete(book_shelf)
 | 
			
		||||
        ub.session.commit()
 | 
			
		||||
 | 
			
		||||
        if not request.is_xhr:
 | 
			
		||||
        if not xhr:
 | 
			
		||||
            flash(_(u"Book has been removed from shelf: %(sname)s", sname=shelf.name), category="success")
 | 
			
		||||
            return redirect(request.environ["HTTP_REFERER"])
 | 
			
		||||
        return "", 204
 | 
			
		||||
    else:
 | 
			
		||||
        log.error("User %s not allowed to remove a book from %s", current_user, shelf)
 | 
			
		||||
        if not request.is_xhr:
 | 
			
		||||
        if not xhr:
 | 
			
		||||
            flash(_(u"Sorry you are not allowed to remove a book from this shelf: %(sname)s", sname=shelf.name),
 | 
			
		||||
                  category="error")
 | 
			
		||||
            return redirect(url_for('web.index'))
 | 
			
		||||
| 
						 | 
				
			
			@ -284,8 +286,14 @@ def show_shelf(shelf_type, shelf_id):
 | 
			
		|||
 | 
			
		||||
        books_in_shelf = ub.session.query(ub.BookShelf).filter(ub.BookShelf.shelf == shelf_id)\
 | 
			
		||||
            .order_by(ub.BookShelf.order.asc()).all()
 | 
			
		||||
        books_list = [ b.book_id for b in books_in_shelf]
 | 
			
		||||
        result = db.session.query(db.Books).filter(db.Books.id.in_(books_list)).filter(common_filters()).all()
 | 
			
		||||
        for book in books_in_shelf:
 | 
			
		||||
            cur_book = db.session.query(db.Books).filter(db.Books.id == book.book_id).filter(common_filters()).first()
 | 
			
		||||
            if cur_book:
 | 
			
		||||
                result.append(cur_book)
 | 
			
		||||
            else:
 | 
			
		||||
                log.info('Not existing book %s in %s deleted', book.book_id, shelf)
 | 
			
		||||
                ub.session.query(ub.BookShelf).filter(ub.BookShelf.book_id == book.book_id).delete()
 | 
			
		||||
                ub.session.commit()
 | 
			
		||||
        return render_title_template(page, entries=result, title=_(u"Shelf: '%(name)s'", name=shelf.name),
 | 
			
		||||
                                 shelf=shelf, page="shelf")
 | 
			
		||||
    else:
 | 
			
		||||
| 
						 | 
				
			
			@ -315,11 +323,13 @@ def order_shelf(shelf_id):
 | 
			
		|||
                                                           ub.Shelf.id == shelf_id))).first()
 | 
			
		||||
    result = list()
 | 
			
		||||
    if shelf:
 | 
			
		||||
        books_in_shelf = ub.session.query(ub.BookShelf).filter(ub.BookShelf.shelf == shelf_id) \
 | 
			
		||||
        books_in_shelf2 = ub.session.query(ub.BookShelf).filter(ub.BookShelf.shelf == shelf_id) \
 | 
			
		||||
            .order_by(ub.BookShelf.order.asc()).all()
 | 
			
		||||
        books_list = [ b.book_id for b in books_in_shelf]
 | 
			
		||||
        # cover, title, series, name, all author names,
 | 
			
		||||
        result = db.session.query(db.Books).filter(db.Books.id.in_(books_list)).filter(common_filters()).all()
 | 
			
		||||
        for book in books_in_shelf2:
 | 
			
		||||
            cur_book = db.session.query(db.Books).filter(db.Books.id == book.book_id).filter(common_filters()).first()
 | 
			
		||||
            result.append(cur_book)
 | 
			
		||||
        #books_list = [ b.book_id for b in books_in_shelf2]
 | 
			
		||||
        #result = db.session.query(db.Books).filter(db.Books.id.in_(books_list)).filter(common_filters()).all()
 | 
			
		||||
    return render_title_template('shelf_order.html', entries=result,
 | 
			
		||||
                                 title=_(u"Change order of Shelf: '%(name)s'", name=shelf.name),
 | 
			
		||||
                                 shelf=shelf, page="shelforder")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -55,9 +55,9 @@ $(function () {
 | 
			
		|||
        $(".cover img").attr("src", book.cover);
 | 
			
		||||
        $("#cover_url").val(book.cover);
 | 
			
		||||
        $("#pubdate").val(book.publishedDate);
 | 
			
		||||
        $("#publisher").val(book.publisher)
 | 
			
		||||
        if (book.series != undefined) {
 | 
			
		||||
            $("#series").val(book.series)
 | 
			
		||||
        $("#publisher").val(book.publisher);
 | 
			
		||||
        if (typeof book.series !== "undefined") {
 | 
			
		||||
            $("#series").val(book.series);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -72,16 +72,18 @@ $(function () {
 | 
			
		|||
        }
 | 
			
		||||
        function formatDate (date) {
 | 
			
		||||
            var d = new Date(date),
 | 
			
		||||
                month = '' + (d.getMonth() + 1),
 | 
			
		||||
                day = '' + d.getDate(),
 | 
			
		||||
                month = "" + (d.getMonth() + 1),
 | 
			
		||||
                day = "" + d.getDate(),
 | 
			
		||||
                year = d.getFullYear();
 | 
			
		||||
 | 
			
		||||
            if (month.length < 2) 
 | 
			
		||||
                month = '0' + month;
 | 
			
		||||
            if (day.length < 2) 
 | 
			
		||||
                day = '0' + day;
 | 
			
		||||
            if (month.length < 2) {
 | 
			
		||||
                month = "0" + month;
 | 
			
		||||
            }
 | 
			
		||||
            if (day.length < 2) {
 | 
			
		||||
                day = "0" + day;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return [year, month, day].join('-');
 | 
			
		||||
            return [year, month, day].join("-");
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (ggDone && ggResults.length > 0) {
 | 
			
		||||
| 
						 | 
				
			
			@ -116,15 +118,16 @@ $(function () {
 | 
			
		|||
        }
 | 
			
		||||
        if (dbDone && dbResults.length > 0) {
 | 
			
		||||
            dbResults.forEach(function(result) {
 | 
			
		||||
                if (result.series){
 | 
			
		||||
                    var series_title = result.series.title
 | 
			
		||||
                var seriesTitle = "";
 | 
			
		||||
                if (result.series) {
 | 
			
		||||
                    seriesTitle = result.series.title;
 | 
			
		||||
                }
 | 
			
		||||
                var date_fomers = result.pubdate.split("-")
 | 
			
		||||
                var publishedYear = parseInt(date_fomers[0])
 | 
			
		||||
                var publishedMonth = parseInt(date_fomers[1])
 | 
			
		||||
                var publishedDate = new Date(publishedYear, publishedMonth-1, 1)
 | 
			
		||||
                var dateFomers = result.pubdate.split("-");
 | 
			
		||||
                var publishedYear = parseInt(dateFomers[0]);
 | 
			
		||||
                var publishedMonth = parseInt(dateFomers[1]);
 | 
			
		||||
                var publishedDate = new Date(publishedYear, publishedMonth - 1, 1);
 | 
			
		||||
 | 
			
		||||
                publishedDate = formatDate(publishedDate)
 | 
			
		||||
                publishedDate = formatDate(publishedDate);
 | 
			
		||||
 | 
			
		||||
                var book = {
 | 
			
		||||
                    id: result.id,
 | 
			
		||||
| 
						 | 
				
			
			@ -137,7 +140,7 @@ $(function () {
 | 
			
		|||
                        return tag.title.toLowerCase().replace(/,/g, "_");
 | 
			
		||||
                    }),
 | 
			
		||||
                    rating: result.rating.average || 0,
 | 
			
		||||
                    series: series_title || "",
 | 
			
		||||
                    series: seriesTitle || "",
 | 
			
		||||
                    cover: result.image,
 | 
			
		||||
                    url: "https://book.douban.com/subject/" + result.id,
 | 
			
		||||
                    source: {
 | 
			
		||||
| 
						 | 
				
			
			@ -183,7 +186,7 @@ $(function () {
 | 
			
		|||
    }
 | 
			
		||||
 | 
			
		||||
    function dbSearchBook (title) {
 | 
			
		||||
        apikey="0df993c66c0c636e29ecbb5344252a4a"
 | 
			
		||||
        var apikey = "0df993c66c0c636e29ecbb5344252a4a";
 | 
			
		||||
        $.ajax({
 | 
			
		||||
            url: douban + dbSearch + "?apikey=" + apikey + "&q=" + title + "&fields=all&count=10",
 | 
			
		||||
            type: "GET",
 | 
			
		||||
| 
						 | 
				
			
			@ -193,7 +196,7 @@ $(function () {
 | 
			
		|||
                dbResults = data.books;
 | 
			
		||||
            },
 | 
			
		||||
            error: function error() {
 | 
			
		||||
                $("#meta-info").html("<p class=\"text-danger\">" + msg.search_error + "!</p>"+ $("#meta-info")[0].innerHTML)
 | 
			
		||||
                $("#meta-info").html("<p class=\"text-danger\">" + msg.search_error + "!</p>" + $("#meta-info")[0].innerHTML);
 | 
			
		||||
            },
 | 
			
		||||
            complete: function complete() {
 | 
			
		||||
                dbDone = true;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										4
									
								
								cps/static/js/libs/Sortable.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								cps/static/js/libs/Sortable.min.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| 
						 | 
				
			
			@ -29,7 +29,7 @@ function sendData(path) {
 | 
			
		|||
    var maxElements;
 | 
			
		||||
    var tmp = [];
 | 
			
		||||
 | 
			
		||||
    elements = Sortable.utils.find(sortTrue, "div");
 | 
			
		||||
    elements = $(".list-group-item");
 | 
			
		||||
    maxElements = elements.length;
 | 
			
		||||
 | 
			
		||||
    var form = document.createElement("form");
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
        {% endfor %}
 | 
			
		||||
      </div>
 | 
			
		||||
        <button onclick="sendData('{{ url_for('shelf.order_shelf', shelf_id=shelf.id) }}')" class="btn btn-default" id="ChangeOrder">{{_('Change order')}}</button>
 | 
			
		||||
        <a href="{{ url_for('shelf.show_shelf', shelf_id=shelf.id) }}" class="btn btn-default">{{_('Back')}}</a>
 | 
			
		||||
        <a href="{{ url_for('shelf.show_shelf', shelf_id=shelf.id) }}" id="shelf_back" class="btn btn-default">{{_('Back')}}</a>
 | 
			
		||||
  </div>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -6,7 +6,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2020-01-08 11:37+0000\n"
 | 
			
		||||
"Last-Translator: Lukas Heroudek <lukas.heroudek@gmail.com>\n"
 | 
			
		||||
"Language: cs_CZ\n"
 | 
			
		||||
| 
						 | 
				
			
			@ -79,7 +79,7 @@ msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu nebo přezdí
 | 
			
		|||
#: cps/admin.py:489
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "User '%(user)s' created"
 | 
			
		||||
msgstr "Uživatel ‘%(user)s’ vytvořen"
 | 
			
		||||
msgstr "Uživatel '%(user)s' vytvořen"
 | 
			
		||||
 | 
			
		||||
#: cps/admin.py:509
 | 
			
		||||
msgid "Edit e-mail server settings"
 | 
			
		||||
| 
						 | 
				
			
			@ -205,7 +205,7 @@ msgstr "není nakonfigurováno"
 | 
			
		|||
 | 
			
		||||
#: cps/editbooks.py:214 cps/editbooks.py:396
 | 
			
		||||
msgid "Error opening eBook. File does not exist or file is not accessible"
 | 
			
		||||
msgstr "Chyba otevírání eKnihy. Soubor neexistuje nebo není přístupný"
 | 
			
		||||
msgstr "Chyba otevírání eknihy. Soubor neexistuje nebo není přístupný"
 | 
			
		||||
 | 
			
		||||
#: cps/editbooks.py:242
 | 
			
		||||
msgid "edit metadata"
 | 
			
		||||
| 
						 | 
				
			
			@ -214,11 +214,11 @@ msgstr "upravit metadata"
 | 
			
		|||
#: cps/editbooks.py:321 cps/editbooks.py:569
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server"
 | 
			
		||||
msgstr "Soubor s příponou ‘%(ext)s’ nelze odeslat na tento server"
 | 
			
		||||
msgstr "Soubor s příponou '%(ext)s' nelze odeslat na tento server"
 | 
			
		||||
 | 
			
		||||
#: cps/editbooks.py:325 cps/editbooks.py:573
 | 
			
		||||
msgid "File to be uploaded must have an extension"
 | 
			
		||||
msgstr "Soubor, který má být odeslán, musí mít příponu"
 | 
			
		||||
msgstr "Soubor, který má být odeslán musí mít příponu"
 | 
			
		||||
 | 
			
		||||
#: cps/editbooks.py:337 cps/editbooks.py:607
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -296,7 +296,7 @@ msgstr "Při převodu této knihy došlo k chybě: %(res)s"
 | 
			
		|||
 | 
			
		||||
#: cps/gdrive.py:62
 | 
			
		||||
msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again"
 | 
			
		||||
msgstr "Google Drive nastavení nebylo dokončeno, zkuste  znovu deaktivovat a aktivovat  Google Drive"
 | 
			
		||||
msgstr "Google Drive nastavení nebylo dokončeno, zkuste  znovu deaktivovat a aktivovat Google Drive"
 | 
			
		||||
 | 
			
		||||
#: cps/gdrive.py:104
 | 
			
		||||
msgid "Callback domain is not verified, please follow steps to verify domain in google developer console"
 | 
			
		||||
| 
						 | 
				
			
			@ -366,17 +366,17 @@ msgstr "Požadovaný soubor nelze přečíst. Možná nesprávná oprávnění?"
 | 
			
		|||
#: cps/helper.py:322
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
 | 
			
		||||
msgstr "Přejmenování názvu z: ‘%(src)s‘ na ‘%(dest)s'  selhalo chybou: %(error)s"
 | 
			
		||||
msgstr "Přejmenování názvu z: '%(src)s' na '%(dest)s'  selhalo chybou: %(error)s"
 | 
			
		||||
 | 
			
		||||
#: cps/helper.py:332
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
 | 
			
		||||
msgstr "Přejmenovat autora z: ‘%(src)s‘ na ‘%(dest)s’ selhalo chybou: %(error)s"
 | 
			
		||||
msgstr "Přejmenovat autora z: '%(src)s' na '%(dest)s' selhalo chybou: %(error)s"
 | 
			
		||||
 | 
			
		||||
#: cps/helper.py:346
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
 | 
			
		||||
msgstr "Přejmenování souboru v cestě ‘%(src)s‘ na ‘%(dest)s‘ selhalo  chybou: %(error)s"
 | 
			
		||||
msgstr "Přejmenování souboru v cestě '%(src)s' na '%(dest)s' selhalo  chybou: %(error)s"
 | 
			
		||||
 | 
			
		||||
#: cps/helper.py:372 cps/helper.py:382 cps/helper.py:390
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -528,7 +528,7 @@ msgstr "Lituji, nejste oprávněni odebrat knihu z této police: %(sname)s"
 | 
			
		|||
#: cps/shelf.py:207 cps/shelf.py:231
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "A shelf with the name '%(title)s' already exists."
 | 
			
		||||
msgstr "Police s názvem  ‘%(title)s’ již existuje."
 | 
			
		||||
msgstr "Police s názvem  '%(title)s' již existuje."
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:212
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -555,7 +555,7 @@ msgstr "Upravit polici"
 | 
			
		|||
#: cps/shelf.py:289
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Shelf: '%(name)s'"
 | 
			
		||||
msgstr "Police: ’%(name)s’"
 | 
			
		||||
msgstr "Police: '%(name)s'"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:292
 | 
			
		||||
msgid "Error opening shelf. Shelf does not exist or is not accessible"
 | 
			
		||||
| 
						 | 
				
			
			@ -564,7 +564,7 @@ msgstr "Chyba otevírání police. Police neexistuje nebo není přístupná"
 | 
			
		|||
#: cps/shelf.py:323
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Change order of Shelf: '%(name)s'"
 | 
			
		||||
msgstr "Změnit  pořadí Police: ‘%(name)s’"
 | 
			
		||||
msgstr "Změnit  pořadí Police: '%(name)s'"
 | 
			
		||||
 | 
			
		||||
#: cps/ub.py:57
 | 
			
		||||
msgid "Recently Added"
 | 
			
		||||
| 
						 | 
				
			
			@ -858,7 +858,7 @@ msgstr "Nelze aktivovat ověření LDAP"
 | 
			
		|||
#: cps/web.py:1151 cps/web.py:1278
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "you are now logged in as: '%(nickname)s'"
 | 
			
		||||
msgstr "nyní jste přihlášeni jako: ‘%(nickname)s’"
 | 
			
		||||
msgstr "nyní jste přihlášeni jako: '%(nickname)s'"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:1156
 | 
			
		||||
msgid "Could not login. LDAP server down, please contact your administrator"
 | 
			
		||||
| 
						 | 
				
			
			@ -1153,7 +1153,7 @@ msgstr "Převést formát knihy:"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/book_edit.html:30
 | 
			
		||||
msgid "Convert from:"
 | 
			
		||||
msgstr "Převest z:"
 | 
			
		||||
msgstr "Převést z:"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39
 | 
			
		||||
msgid "select an option"
 | 
			
		||||
| 
						 | 
				
			
			@ -1165,7 +1165,7 @@ msgstr "Převést do:"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/book_edit.html:46
 | 
			
		||||
msgid "Convert book"
 | 
			
		||||
msgstr "Převest knihu"
 | 
			
		||||
msgstr "Převést knihu"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/book_edit.html:55 cps/templates/search_form.html:6
 | 
			
		||||
msgid "Book Title"
 | 
			
		||||
| 
						 | 
				
			
			@ -1341,7 +1341,7 @@ msgstr "Server port"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:91
 | 
			
		||||
msgid "SSL certfile location (leave it empty for non-SSL Servers)"
 | 
			
		||||
msgstr "Umístění certifikátu SSL (ponechejte prázdné u serverů jiných než SSL)"
 | 
			
		||||
msgstr "Umístění certifikátu SSL (ponechte prázdné pro servery jiné než SSL)"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:95
 | 
			
		||||
msgid "SSL Keyfile location (leave it empty for non-SSL Servers)"
 | 
			
		||||
| 
						 | 
				
			
			@ -1405,7 +1405,7 @@ msgstr "Povolit veřejnou registraci"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:170
 | 
			
		||||
msgid "Enable remote login (\"magic link\")"
 | 
			
		||||
msgstr "Povolit vzdálené přihlášení (\\“magic link\\”)"
 | 
			
		||||
msgstr "Povolit vzdálené přihlášení (\\\"magic link\\\")"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:175
 | 
			
		||||
msgid "Use Goodreads"
 | 
			
		||||
| 
						 | 
				
			
			@ -1495,12 +1495,12 @@ msgstr "Obtain %(provider)s OAuth Credential"
 | 
			
		|||
#: cps/templates/config_edit.html:263
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "%(provider)s OAuth Client Id"
 | 
			
		||||
msgstr "%(provider)s OAuth Client Id"
 | 
			
		||||
msgstr "%(provider)s OAuth Klient Id"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:267
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "%(provider)s OAuth Client Secret"
 | 
			
		||||
msgstr "%(provider)s OAuth Client Secret"
 | 
			
		||||
msgstr "%(provider)s OAuth Klient Tajemství"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:276
 | 
			
		||||
msgid "Allow Reverse Proxy Authentication"
 | 
			
		||||
| 
						 | 
				
			
			@ -1532,7 +1532,7 @@ msgstr "Nastavení převaděče eknih"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:312
 | 
			
		||||
msgid "Path to convertertool"
 | 
			
		||||
msgstr "Cesta k převáděči"
 | 
			
		||||
msgstr "Cesta k převaděči"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:318
 | 
			
		||||
msgid "Location of Unrar binary"
 | 
			
		||||
| 
						 | 
				
			
			@ -1577,7 +1577,7 @@ msgstr "Regulární výraz pro ignorování sloupců"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_view_edit.html:46
 | 
			
		||||
msgid "Link read/unread status to Calibre column"
 | 
			
		||||
msgstr "Propojit stav čtení/nepřečtení  do sloupce Calibre"
 | 
			
		||||
msgstr "Propojit stav čtení/nepřečtení do sloupce Calibre"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_view_edit.html:55
 | 
			
		||||
msgid "Regular expression for title sorting"
 | 
			
		||||
| 
						 | 
				
			
			@ -1625,7 +1625,7 @@ msgstr "Povolit úpravy veřejných polic"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_view_edit.html:119
 | 
			
		||||
msgid "Default visibilities for new users"
 | 
			
		||||
msgstr "Výchozí viditelnosti pro nové uživatele"
 | 
			
		||||
msgstr "Výchozí zobrazení pro nové uživatele"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_view_edit.html:135 cps/templates/user_edit.html:76
 | 
			
		||||
msgid "Show random books in detail view"
 | 
			
		||||
| 
						 | 
				
			
			@ -2337,7 +2337,7 @@ msgstr "Nedávná stahování"
 | 
			
		|||
#~ msgstr "Prohlížeč PDF.js"
 | 
			
		||||
 | 
			
		||||
#~ msgid "Preparing document for printing..."
 | 
			
		||||
#~ msgstr "Příprava dokumentu pro tisk …"
 | 
			
		||||
#~ msgstr "Příprava dokumentu pro tisk..."
 | 
			
		||||
 | 
			
		||||
#~ msgid "Using your another device, visit"
 | 
			
		||||
#~ msgstr "Pomocí jiného zařízení navštivte"
 | 
			
		||||
| 
						 | 
				
			
			@ -3315,7 +3315,7 @@ msgstr "Nedávná stahování"
 | 
			
		|||
#~ msgstr "Selkup"
 | 
			
		||||
 | 
			
		||||
#~ msgid "Irish; Old (to 900)"
 | 
			
		||||
#~ msgstr "Irlandese antico (fino al ’900)"
 | 
			
		||||
#~ msgstr "Irlandese antico (fino al 900)"
 | 
			
		||||
 | 
			
		||||
#~ msgid "Shan"
 | 
			
		||||
#~ msgstr "Shan"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -7,7 +7,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2020-01-18 12:52+0100\n"
 | 
			
		||||
"Last-Translator: Ozzie Isaacs\n"
 | 
			
		||||
"Language: de\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -8,7 +8,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2019-07-26 11:44+0100\n"
 | 
			
		||||
"Last-Translator: minakmostoles <xxx@xxx.com>\n"
 | 
			
		||||
"Language: es\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -7,7 +7,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2020-01-12 13:56+0100\n"
 | 
			
		||||
"Last-Translator: Samuli Valavuo <svalavuo@gmail.com>\n"
 | 
			
		||||
"Language: fi\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -20,7 +20,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2019-08-21 15:20+0100\n"
 | 
			
		||||
"Last-Translator: Nicolas Roudninski <nicoroud@gmail.com>\n"
 | 
			
		||||
"Language: fr\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -7,7 +7,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version: PROJECT VERSION\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2019-04-06 23:36+0200\n"
 | 
			
		||||
"Last-Translator: \n"
 | 
			
		||||
"Language: hu\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -6,7 +6,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2017-04-04 15:09+0200\n"
 | 
			
		||||
"Last-Translator: ElQuimm <quimm@webtaste.com>\n"
 | 
			
		||||
"Language: it\n"
 | 
			
		||||
| 
						 | 
				
			
			@ -165,7 +165,7 @@ msgstr "Decomprimo il pacchetto di aggiornamento"
 | 
			
		|||
 | 
			
		||||
#: cps/admin.py:717
 | 
			
		||||
msgid "Replacing files"
 | 
			
		||||
msgstr "Sostituzione files"
 | 
			
		||||
msgstr "Sostituisco i file"
 | 
			
		||||
 | 
			
		||||
#: cps/admin.py:718
 | 
			
		||||
msgid "Database connections are closed"
 | 
			
		||||
| 
						 | 
				
			
			@ -177,7 +177,7 @@ msgstr "Arresta il server"
 | 
			
		|||
 | 
			
		||||
#: cps/admin.py:720
 | 
			
		||||
msgid "Update finished, please press okay and reload page"
 | 
			
		||||
msgstr "Aggiornamento completato, prego premere ok e ricaricare la pagina"
 | 
			
		||||
msgstr "Aggiornamento completato, prego premi ok e ricarica la pagina"
 | 
			
		||||
 | 
			
		||||
#: cps/admin.py:721 cps/admin.py:722 cps/admin.py:723 cps/admin.py:724
 | 
			
		||||
msgid "Update failed:"
 | 
			
		||||
| 
						 | 
				
			
			@ -268,7 +268,7 @@ msgstr "Probabilmnete il libro caricato esiste già nella libreria; considera di
 | 
			
		|||
#: cps/editbooks.py:613
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Failed to store file %(file)s (Permission denied)."
 | 
			
		||||
msgstr "Impossibile salvare il file %(file)s (autorizzazione negata)"
 | 
			
		||||
msgstr "Impossibile salvare il file %(file)s (autorizzazione negata)."
 | 
			
		||||
 | 
			
		||||
#: cps/editbooks.py:619
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -305,7 +305,7 @@ msgstr "Callback domain non è stato verificato. Per favore intraprendi il neces
 | 
			
		|||
#: cps/helper.py:80
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "%(format)s format not found for book id: %(book)d"
 | 
			
		||||
msgstr "%(format)s formato non trovato per il libro: %(book)d"
 | 
			
		||||
msgstr "Formato %(format)s non trovato per il libro: %(book)d"
 | 
			
		||||
 | 
			
		||||
#: cps/helper.py:92
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -341,7 +341,7 @@ msgstr "Inizia con Calibre-Web"
 | 
			
		|||
#: cps/helper.py:135
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Registration e-mail for user: %(name)s"
 | 
			
		||||
msgstr "E-mail di registrazione per l'utente: %(name)s"
 | 
			
		||||
msgstr "E-mail di registrazione dell'utente: %(name)s"
 | 
			
		||||
 | 
			
		||||
#: cps/helper.py:149 cps/helper.py:151 cps/helper.py:153 cps/helper.py:161
 | 
			
		||||
#: cps/helper.py:163 cps/helper.py:165
 | 
			
		||||
| 
						 | 
				
			
			@ -386,15 +386,15 @@ msgstr "File %(file)s non trovato su Google Drive"
 | 
			
		|||
#: cps/helper.py:411
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Book path %(path)s not found on Google Drive"
 | 
			
		||||
msgstr "Non ho trovato la cartella %(path)s su Google Drive"
 | 
			
		||||
msgstr "Non ho trovato la cartella %(path)s del libro su Google Drive"
 | 
			
		||||
 | 
			
		||||
#: cps/helper.py:643
 | 
			
		||||
msgid "Waiting"
 | 
			
		||||
msgstr "Attendere"
 | 
			
		||||
msgstr "Attendi"
 | 
			
		||||
 | 
			
		||||
#: cps/helper.py:645
 | 
			
		||||
msgid "Failed"
 | 
			
		||||
msgstr "Fallito"
 | 
			
		||||
msgstr "Non riuscito"
 | 
			
		||||
 | 
			
		||||
#: cps/helper.py:647
 | 
			
		||||
msgid "Started"
 | 
			
		||||
| 
						 | 
				
			
			@ -431,19 +431,19 @@ msgstr "Registra con %(provider)s"
 | 
			
		|||
 | 
			
		||||
#: cps/oauth_bb.py:155
 | 
			
		||||
msgid "Failed to log in with GitHub."
 | 
			
		||||
msgstr "Fallito l'accesso con GitHub."
 | 
			
		||||
msgstr "Accesso con GitHub non riuscito."
 | 
			
		||||
 | 
			
		||||
#: cps/oauth_bb.py:160
 | 
			
		||||
msgid "Failed to fetch user info from GitHub."
 | 
			
		||||
msgstr "Fallito il recupero delle informazioni dell'utente da GitHub."
 | 
			
		||||
msgstr "Il recupero delle informazioni dell'utente da GitHub non è riuscito."
 | 
			
		||||
 | 
			
		||||
#: cps/oauth_bb.py:171
 | 
			
		||||
msgid "Failed to log in with Google."
 | 
			
		||||
msgstr "Fallito l'accesso con Google."
 | 
			
		||||
msgstr "Accesso con Google non riuscito."
 | 
			
		||||
 | 
			
		||||
#: cps/oauth_bb.py:176
 | 
			
		||||
msgid "Failed to fetch user info from Google."
 | 
			
		||||
msgstr "Fallito il recupero delle informazioni da Google."
 | 
			
		||||
msgstr "Il recupero delle informazioni dell'utente da Google non è riuscito."
 | 
			
		||||
 | 
			
		||||
#: cps/oauth_bb.py:274
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -453,7 +453,7 @@ msgstr "Scollegato da %(oauth)s con successo."
 | 
			
		|||
#: cps/oauth_bb.py:278
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Unlink to %(oauth)s failed."
 | 
			
		||||
msgstr "Scollegamento da %(oauth)s fallito.\""
 | 
			
		||||
msgstr "Scollegamento da %(oauth)s fallito."
 | 
			
		||||
 | 
			
		||||
#: cps/oauth_bb.py:281
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -462,11 +462,11 @@ msgstr "Non collegato a %(oauth)s."
 | 
			
		|||
 | 
			
		||||
#: cps/oauth_bb.py:309
 | 
			
		||||
msgid "GitHub Oauth error, please retry later."
 | 
			
		||||
msgstr "GitHub Oauth error, per favore riprova più tardi."
 | 
			
		||||
msgstr "GitHub errore Oauth, per favore riprova più tardi."
 | 
			
		||||
 | 
			
		||||
#: cps/oauth_bb.py:328
 | 
			
		||||
msgid "Google Oauth error, please retry later."
 | 
			
		||||
msgstr "Google Oauth error, per favore riprova più tardi."
 | 
			
		||||
msgstr "Google errore Oauth, per favore riprova più tardi."
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:47 cps/shelf.py:99
 | 
			
		||||
msgid "Invalid shelf specified"
 | 
			
		||||
| 
						 | 
				
			
			@ -572,7 +572,7 @@ msgstr "Aggiunto recentemente"
 | 
			
		|||
 | 
			
		||||
#: cps/ub.py:59
 | 
			
		||||
msgid "Show recent books"
 | 
			
		||||
msgstr "Mostra i libri recenti"
 | 
			
		||||
msgstr "Mostra i libri più recenti"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/index.xml:17 cps/ub.py:60
 | 
			
		||||
msgid "Hot Books"
 | 
			
		||||
| 
						 | 
				
			
			@ -614,7 +614,7 @@ msgstr "Per scoprire"
 | 
			
		|||
 | 
			
		||||
#: cps/ub.py:76
 | 
			
		||||
msgid "Show random books"
 | 
			
		||||
msgstr "Mostra libro a caso"
 | 
			
		||||
msgstr "Mostra libri a caso"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/index.xml:75 cps/ub.py:77
 | 
			
		||||
msgid "Categories"
 | 
			
		||||
| 
						 | 
				
			
			@ -667,11 +667,11 @@ msgstr "Mostra la selezione della valutazione"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/index.xml:96 cps/ub.py:97
 | 
			
		||||
msgid "File formats"
 | 
			
		||||
msgstr "Formati dei file"
 | 
			
		||||
msgstr "Formato file"
 | 
			
		||||
 | 
			
		||||
#: cps/ub.py:99
 | 
			
		||||
msgid "Show file formats selection"
 | 
			
		||||
msgstr "Mostra la selezione dei formati dei file"
 | 
			
		||||
msgstr "Mostra la selezione del formato dei file"
 | 
			
		||||
 | 
			
		||||
#: cps/updater.py:252 cps/updater.py:359 cps/updater.py:372
 | 
			
		||||
msgid "Unexpected data while reading update information"
 | 
			
		||||
| 
						 | 
				
			
			@ -708,11 +708,11 @@ msgstr "Libri aggiunti di recente"
 | 
			
		|||
 | 
			
		||||
#: cps/web.py:514
 | 
			
		||||
msgid "Best rated books"
 | 
			
		||||
msgstr "I libri con le migliori valutazioni"
 | 
			
		||||
msgstr "Libri con le migliori valutazioni"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/index.xml:38 cps/web.py:522
 | 
			
		||||
msgid "Random Books"
 | 
			
		||||
msgstr "Libri a caso"
 | 
			
		||||
msgstr "Libri casuali"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:548
 | 
			
		||||
msgid "Books"
 | 
			
		||||
| 
						 | 
				
			
			@ -763,19 +763,19 @@ msgstr "Lingua: %(name)s"
 | 
			
		|||
 | 
			
		||||
#: cps/web.py:705
 | 
			
		||||
msgid "Publisher list"
 | 
			
		||||
msgstr "Lista degli editori"
 | 
			
		||||
msgstr "Elenco degli editori"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:721
 | 
			
		||||
msgid "Series list"
 | 
			
		||||
msgstr "Lista delle serie"
 | 
			
		||||
msgstr "Elenco delle serie"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:735
 | 
			
		||||
msgid "Ratings list"
 | 
			
		||||
msgstr "Lista delle valutazioni"
 | 
			
		||||
msgstr "Elenco delle valutazioni"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:748
 | 
			
		||||
msgid "File formats list"
 | 
			
		||||
msgstr "Lista dei formati di file"
 | 
			
		||||
msgstr "Elenco dei formati"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:776
 | 
			
		||||
msgid "Available languages"
 | 
			
		||||
| 
						 | 
				
			
			@ -783,7 +783,7 @@ msgstr "Lingue disponibili"
 | 
			
		|||
 | 
			
		||||
#: cps/web.py:793
 | 
			
		||||
msgid "Category list"
 | 
			
		||||
msgstr "Elenco categorie"
 | 
			
		||||
msgstr "Elenco delle categorie"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/layout.html:73 cps/web.py:807
 | 
			
		||||
msgid "Tasks"
 | 
			
		||||
| 
						 | 
				
			
			@ -895,7 +895,7 @@ msgstr "Il token è scaduto"
 | 
			
		|||
 | 
			
		||||
#: cps/web.py:1240
 | 
			
		||||
msgid "Success! Please return to your device"
 | 
			
		||||
msgstr "Successo! Torna al tuo dispositivo"
 | 
			
		||||
msgstr "Riuscito! Torna al tuo dispositivo"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:1317 cps/web.py:1360 cps/web.py:1366
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -1045,7 +1045,7 @@ msgstr "Amministrazione"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/admin.html:122
 | 
			
		||||
msgid "View Logfiles"
 | 
			
		||||
msgstr "Visualizza LogFiles"
 | 
			
		||||
msgstr "Visualizza LogFile"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/admin.html:123
 | 
			
		||||
msgid "Reconnect to Calibre DB"
 | 
			
		||||
| 
						 | 
				
			
			@ -1217,7 +1217,7 @@ msgstr "Lingua"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/book_edit.html:113 cps/templates/search_form.html:137
 | 
			
		||||
msgid "Yes"
 | 
			
		||||
msgstr "Si"
 | 
			
		||||
msgstr "Sì"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/book_edit.html:114 cps/templates/search_form.html:138
 | 
			
		||||
msgid "No"
 | 
			
		||||
| 
						 | 
				
			
			@ -1377,7 +1377,7 @@ msgstr "Livello di Log"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:131
 | 
			
		||||
msgid "Location and name of logfile (calibre-web.log for no entry)"
 | 
			
		||||
msgstr "Percorso e nome del logfile (senza indicazioni sarà calibre-web.log)"
 | 
			
		||||
msgstr "Percorso e nome del Logfile (senza indicazioni sarà calibre-web.log)"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:136
 | 
			
		||||
msgid "Enable Access Log"
 | 
			
		||||
| 
						 | 
				
			
			@ -1385,11 +1385,11 @@ msgstr "Abilita l'Access Log"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:139
 | 
			
		||||
msgid "Location and name of access logfile (access.log for no entry)"
 | 
			
		||||
msgstr "Percorso e nome del logfile di accesso (senza indicazioni sarà access.log)"
 | 
			
		||||
msgstr "Percorso e nome del Logfile di accesso (senza indicazioni sarà access.log)"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:150
 | 
			
		||||
msgid "Feature Configuration"
 | 
			
		||||
msgstr "Configurazione della caratteristica"
 | 
			
		||||
msgstr "Ulteriori opzioni"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:158
 | 
			
		||||
msgid "Enable uploading"
 | 
			
		||||
| 
						 | 
				
			
			@ -1528,7 +1528,7 @@ msgstr "Utilizza il convertitore di Calibre"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:308
 | 
			
		||||
msgid "E-Book converter settings"
 | 
			
		||||
msgstr "Configurazione del convertitore di e-book"
 | 
			
		||||
msgstr "Configurazione del convertitore di libri"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:312
 | 
			
		||||
msgid "Path to convertertool"
 | 
			
		||||
| 
						 | 
				
			
			@ -1585,7 +1585,7 @@ msgstr "Espressione regolare per ordinare la visualizzazione del titolo"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_view_edit.html:59
 | 
			
		||||
msgid "Tags for Mature Content"
 | 
			
		||||
msgstr "Tags per i libri per adulti"
 | 
			
		||||
msgstr "Tags dei libri per adulti"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_view_edit.html:73
 | 
			
		||||
msgid "Default settings for new users"
 | 
			
		||||
| 
						 | 
				
			
			@ -1629,7 +1629,7 @@ msgstr "Visibilità di base per i nuovi utenti"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_view_edit.html:135 cps/templates/user_edit.html:76
 | 
			
		||||
msgid "Show random books in detail view"
 | 
			
		||||
msgstr "Mostra libri a caso nella vista dettagliata"
 | 
			
		||||
msgstr "Mostra libri scelti alleatoriamente nella vista dettagliata"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_view_edit.html:139 cps/templates/user_edit.html:89
 | 
			
		||||
msgid "Show mature content"
 | 
			
		||||
| 
						 | 
				
			
			@ -1705,7 +1705,7 @@ msgstr "password SMTP"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/email_edit.html:35
 | 
			
		||||
msgid "From e-mail"
 | 
			
		||||
msgstr "Dall'email"
 | 
			
		||||
msgstr "E-mail mittente"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/email_edit.html:38
 | 
			
		||||
msgid "Save settings"
 | 
			
		||||
| 
						 | 
				
			
			@ -1717,7 +1717,7 @@ msgstr "Salva le impostazioni e invia e-mail di test"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/email_edit.html:43
 | 
			
		||||
msgid "Allowed domains for registering"
 | 
			
		||||
msgstr "Dominii autorizzti alla registrazione"
 | 
			
		||||
msgstr "Dominii autorizzati alla registrazione"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/email_edit.html:46 cps/templates/email_edit.html:72
 | 
			
		||||
msgid "Add Domain"
 | 
			
		||||
| 
						 | 
				
			
			@ -1749,7 +1749,7 @@ msgstr "Crea-segnala un problema"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/http_error.html:44
 | 
			
		||||
msgid "Back to home"
 | 
			
		||||
msgstr "Ritorno alla pagina principale"
 | 
			
		||||
msgstr "Ritorna alla pagina principale"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/index.html:5
 | 
			
		||||
msgid "Discover (Random Books)"
 | 
			
		||||
| 
						 | 
				
			
			@ -1781,7 +1781,7 @@ msgstr "Gli ultimi libri"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/index.xml:42
 | 
			
		||||
msgid "Show Random Books"
 | 
			
		||||
msgstr "Mostra libri casuali"
 | 
			
		||||
msgstr "Mostra libri casualmente"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/index.xml:65
 | 
			
		||||
msgid "Books ordered by Author"
 | 
			
		||||
| 
						 | 
				
			
			@ -1854,7 +1854,7 @@ msgstr "Registra"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/layout.html:116 cps/templates/layout.html:223
 | 
			
		||||
msgid "Uploading..."
 | 
			
		||||
msgstr "Carica"
 | 
			
		||||
msgstr "Carico..."
 | 
			
		||||
 | 
			
		||||
#: cps/templates/layout.html:117
 | 
			
		||||
msgid "please don't refresh the page"
 | 
			
		||||
| 
						 | 
				
			
			@ -1912,11 +1912,11 @@ msgstr "Accedi con magic link"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/logviewer.html:6
 | 
			
		||||
msgid "Show Calibre-Web log: "
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Mostra il log di Calibre-Web: "
 | 
			
		||||
 | 
			
		||||
#: cps/templates/logviewer.html:8
 | 
			
		||||
msgid "Calibre-Web log: "
 | 
			
		||||
msgstr "Mostra il log Calibre-Web"
 | 
			
		||||
msgstr "Calibre-Web\" log: "
 | 
			
		||||
 | 
			
		||||
#: cps/templates/logviewer.html:8
 | 
			
		||||
msgid "Stream output, can't be displayed"
 | 
			
		||||
| 
						 | 
				
			
			@ -1924,7 +1924,7 @@ msgstr "Flusso attivo, non può essere visualizzato"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/logviewer.html:12
 | 
			
		||||
msgid "Show access log: "
 | 
			
		||||
msgstr "Mostra il log di accesso"
 | 
			
		||||
msgstr "Mostra il log di accesso: "
 | 
			
		||||
 | 
			
		||||
#: cps/templates/osd.xml:5
 | 
			
		||||
msgid "Calibre-Web ebook catalog"
 | 
			
		||||
| 
						 | 
				
			
			@ -2072,7 +2072,7 @@ msgstr "Nessun risultato per:"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/search.html:6
 | 
			
		||||
msgid "Please try a different search"
 | 
			
		||||
msgstr "Prova una ricerca diversa"
 | 
			
		||||
msgstr "Prova una ricerca differente"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/search.html:8
 | 
			
		||||
msgid "Results for:"
 | 
			
		||||
| 
						 | 
				
			
			@ -2116,7 +2116,7 @@ msgstr "Valutazione inferiore a"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/shelf.html:10
 | 
			
		||||
msgid "Delete this Shelf"
 | 
			
		||||
msgstr "Cancellare questo scaffale"
 | 
			
		||||
msgstr "Cancella questo scaffale"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/shelf.html:11
 | 
			
		||||
msgid "Edit Shelf"
 | 
			
		||||
| 
						 | 
				
			
			@ -2144,7 +2144,7 @@ msgstr "Riordina tramite drag and drop"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/stats.html:7
 | 
			
		||||
msgid "Calibre library statistics"
 | 
			
		||||
msgstr "Statistiche libreria Calibre"
 | 
			
		||||
msgstr "Statistiche della libreria di Calibre"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/stats.html:12
 | 
			
		||||
msgid "Books in this Library"
 | 
			
		||||
| 
						 | 
				
			
			@ -2220,11 +2220,11 @@ msgstr "E-mail di Kindle"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/user_edit.html:41
 | 
			
		||||
msgid "Show books with language"
 | 
			
		||||
msgstr "Mostra libri per lingua"
 | 
			
		||||
msgstr "Mostra libri in "
 | 
			
		||||
 | 
			
		||||
#: cps/templates/user_edit.html:43
 | 
			
		||||
msgid "Show all"
 | 
			
		||||
msgstr "Mostra tutto"
 | 
			
		||||
msgstr "Mostra libri in tutte le lingue presenti"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/user_edit.html:53
 | 
			
		||||
msgid "OAuth Settings"
 | 
			
		||||
| 
						 | 
				
			
			@ -3513,7 +3513,7 @@ msgstr "Download recenti"
 | 
			
		|||
#~ msgstr "La copertina non è un file in formato jpg: non posso salvare"
 | 
			
		||||
 | 
			
		||||
#~ msgid "Preparing document for printing..."
 | 
			
		||||
#~ msgstr "Preparo documento per la stampa..."
 | 
			
		||||
#~ msgstr "Preparo il documento per la stampa..."
 | 
			
		||||
 | 
			
		||||
#~ msgid "Using your another device, visit"
 | 
			
		||||
#~ msgstr "Utilizza il tuo altro dispositivo, visita"
 | 
			
		||||
| 
						 | 
				
			
			@ -3522,10 +3522,10 @@ msgstr "Download recenti"
 | 
			
		|||
#~ msgstr "e accedi"
 | 
			
		||||
 | 
			
		||||
#~ msgid "Using your another device, login and visit "
 | 
			
		||||
#~ msgstr "Utilizza il tuo altro apparecchio, collegati e visita"
 | 
			
		||||
#~ msgstr "Utilizza il tuo altro apparecchio, collegati e visita "
 | 
			
		||||
 | 
			
		||||
#~ msgid "Newest Books"
 | 
			
		||||
#~ msgstr "I libri più nuovi"
 | 
			
		||||
#~ msgstr "I libri più recenti"
 | 
			
		||||
 | 
			
		||||
#~ msgid "Oldest Books"
 | 
			
		||||
#~ msgstr "I libri più vecchi"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -7,7 +7,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2018-02-07 02:20-0500\n"
 | 
			
		||||
"Last-Translator: white <space_white@yahoo.com>\n"
 | 
			
		||||
"Language: ja\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -8,7 +8,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2018-08-27 17:06+0700\n"
 | 
			
		||||
"Last-Translator: \n"
 | 
			
		||||
"Language: km_KH\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -8,7 +8,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version: Calibre-Web (GPLV3)\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2019-06-17 22:37+0200\n"
 | 
			
		||||
"Last-Translator: Marcel Maas <marcel.maas@outlook.com>\n"
 | 
			
		||||
"Language: nl\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -8,9 +8,9 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version: Calibre Web - polski (POT: 2019-08-06 18:35)\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2019-08-18 22:06+0200\n"
 | 
			
		||||
"Last-Translator: Radosław Kierznowski <radek.kierznowski@outlook.com>\n"
 | 
			
		||||
"Last-Translator: Jerzy Piątek <jerzy.piatek@gmail.com>\n"
 | 
			
		||||
"Language: pl\n"
 | 
			
		||||
"Language-Team: \n"
 | 
			
		||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
 | 
			
		||||
| 
						 | 
				
			
			@ -48,7 +48,7 @@ msgstr "Nieznany"
 | 
			
		|||
 | 
			
		||||
#: cps/admin.py:129
 | 
			
		||||
msgid "Admin page"
 | 
			
		||||
msgstr " Panel administratora"
 | 
			
		||||
msgstr "Panel administratora"
 | 
			
		||||
 | 
			
		||||
#: cps/admin.py:148 cps/templates/admin.html:115
 | 
			
		||||
msgid "UI Configuration"
 | 
			
		||||
| 
						 | 
				
			
			@ -100,7 +100,7 @@ msgstr "Wystąpił błąd podczas wysyłania e-maila testowego: %(res)s"
 | 
			
		|||
 | 
			
		||||
#: cps/admin.py:540
 | 
			
		||||
msgid "Please configure your e-mail address first..."
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Najpierw skonfiguruj swój adres e-mail..."
 | 
			
		||||
 | 
			
		||||
#: cps/admin.py:542
 | 
			
		||||
msgid "E-mail server settings updated"
 | 
			
		||||
| 
						 | 
				
			
			@ -126,7 +126,7 @@ msgstr "Edytuj użytkownika %(nick)s"
 | 
			
		|||
 | 
			
		||||
#: cps/admin.py:622 cps/web.py:1324
 | 
			
		||||
msgid "This username is already taken"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nazwa użytkownika jest już zajęta"
 | 
			
		||||
 | 
			
		||||
#: cps/admin.py:637
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -194,7 +194,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/admin.py:722 cps/updater.py:274 cps/updater.py:461
 | 
			
		||||
msgid "Connection error"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Błąd połączenia"
 | 
			
		||||
 | 
			
		||||
#: cps/admin.py:723 cps/updater.py:276 cps/updater.py:463
 | 
			
		||||
msgid "Timeout while establishing connection"
 | 
			
		||||
| 
						 | 
				
			
			@ -206,7 +206,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/converter.py:31
 | 
			
		||||
msgid "not configured"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "nie skonfigurowane"
 | 
			
		||||
 | 
			
		||||
#: cps/editbooks.py:214 cps/editbooks.py:396
 | 
			
		||||
msgid "Error opening eBook. File does not exist or file is not accessible"
 | 
			
		||||
| 
						 | 
				
			
			@ -265,11 +265,11 @@ msgstr "Błąd podczas edycji książki, sprawdź plik logu, aby uzyskać szczeg
 | 
			
		|||
#: cps/editbooks.py:581
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "File %(filename)s could not saved to temp dir"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nie można zapisać pliku %(filename)s w katalogu tymczasowym"
 | 
			
		||||
 | 
			
		||||
#: cps/editbooks.py:598
 | 
			
		||||
msgid "Uploaded book probably exists in the library, consider to change before upload new: "
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Przesłana książka prawdopodobnie istnieje w bibliotece, rozważ zmianę przed przesłaniem nowej: "
 | 
			
		||||
 | 
			
		||||
#: cps/editbooks.py:613
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -479,7 +479,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/shelf.py:47 cps/shelf.py:99
 | 
			
		||||
msgid "Invalid shelf specified"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Podano niewłaściwą półkę"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:54
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -488,12 +488,12 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/shelf.py:62
 | 
			
		||||
msgid "You are not allowed to edit public shelves"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nie masz uprawnień do edytowania publicznej półki"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:71
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Book is already part of the shelf: %(shelfname)s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Książka jest już dodana do półki"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:85
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -503,26 +503,26 @@ msgstr "Książka została dodana do półki: %(sname)s"
 | 
			
		|||
#: cps/shelf.py:104
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "You are not allowed to add a book to the the shelf: %(name)s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nie masz uprawnień do dodania ksiażki do półki: %(name)s"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:109
 | 
			
		||||
msgid "User is not allowed to edit public shelves"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Użytkownik nie ma uprawnień do edytowania publicznych półek"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:127
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Books are already part of the shelf: %(name)s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Książki są już dodane do półki: %(name)s"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:141
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Books have been added to shelf: %(sname)s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Książki zostały dodane do półki %(sname)s"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:143
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Could not add books to shelf: %(sname)s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nie można dodać książek do półki: %(sname)s"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:180
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -532,7 +532,7 @@ msgstr "Książka została usunięta z półki: %(sname)s"
 | 
			
		|||
#: cps/shelf.py:186
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Niestety nie możesz usunąć książki z tej półki %(sname)s"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:207 cps/shelf.py:231
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -568,7 +568,7 @@ msgstr "Półka: '%(name)s'"
 | 
			
		|||
 | 
			
		||||
#: cps/shelf.py:292
 | 
			
		||||
msgid "Error opening shelf. Shelf does not exist or is not accessible"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Błąd otwierania półki. Półka nie istnieje lub jest niedostępna"
 | 
			
		||||
 | 
			
		||||
#: cps/shelf.py:323
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -615,7 +615,7 @@ msgstr "Nieprzeczytane książki"
 | 
			
		|||
 | 
			
		||||
#: cps/ub.py:73
 | 
			
		||||
msgid "Show unread"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Pokaż nieprzeczytane"
 | 
			
		||||
 | 
			
		||||
#: cps/ub.py:74
 | 
			
		||||
msgid "Discover"
 | 
			
		||||
| 
						 | 
				
			
			@ -688,28 +688,28 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/updater.py:259 cps/updater.py:365
 | 
			
		||||
msgid "No update available. You already have the latest version installed"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Brak dostępnej aktualizacji. Masz już zainstalowaną najnowszą wersję"
 | 
			
		||||
 | 
			
		||||
#: cps/updater.py:285
 | 
			
		||||
msgid "A new update is available. Click on the button below to update to the latest version."
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktualizować do najnowszej wersji."
 | 
			
		||||
 | 
			
		||||
#: cps/updater.py:338
 | 
			
		||||
msgid "Could not fetch update information"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nie można pobrać informacji o aktualizacji"
 | 
			
		||||
 | 
			
		||||
#: cps/updater.py:352
 | 
			
		||||
msgid "No release information available"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Brak dostępnych informacji o wersji"
 | 
			
		||||
 | 
			
		||||
#: cps/updater.py:405 cps/updater.py:414
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "A new update is available. Click on the button below to update to version: %(version)s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktualizować do wersji: %(version)s"
 | 
			
		||||
 | 
			
		||||
#: cps/updater.py:424
 | 
			
		||||
msgid "Click on the button below to update to the latest stable version."
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Kliknij przycisk poniżej, aby zaktualizować do najnowszej stabilnej wersji."
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:486
 | 
			
		||||
msgid "Recently Added Books"
 | 
			
		||||
| 
						 | 
				
			
			@ -796,7 +796,7 @@ msgstr "Lista kategorii"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/layout.html:73 cps/web.py:807
 | 
			
		||||
msgid "Tasks"
 | 
			
		||||
msgstr " Zadania"
 | 
			
		||||
msgstr "Zadania"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/feed.xml:33 cps/templates/layout.html:44
 | 
			
		||||
#: cps/templates/layout.html:45 cps/web.py:827 cps/web.py:829
 | 
			
		||||
| 
						 | 
				
			
			@ -841,7 +841,7 @@ msgstr "Najpierw skonfiguruj adres e-mail Kindla..."
 | 
			
		|||
 | 
			
		||||
#: cps/web.py:1084
 | 
			
		||||
msgid "E-Mail server is not configured, please contact your administrator!"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Serwer e-mail nie jest skonfigurowany, skontaktuj się z administratorem!"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:1085 cps/web.py:1091 cps/web.py:1116 cps/web.py:1120
 | 
			
		||||
#: cps/web.py:1125 cps/web.py:1129
 | 
			
		||||
| 
						 | 
				
			
			@ -879,11 +879,11 @@ msgstr "Błędna nazwa użytkownika lub hasło"
 | 
			
		|||
 | 
			
		||||
#: cps/web.py:1167
 | 
			
		||||
msgid "New Password was send to your email address"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nowe hasło zostało wysłane na Twój adres e-mail"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:1173
 | 
			
		||||
msgid "Please enter valid username to reset password"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Wprowadź prawidłową nazwę użytkownika, aby zresetować hasło"
 | 
			
		||||
 | 
			
		||||
#: cps/web.py:1179
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -957,7 +957,7 @@ msgstr "DLS"
 | 
			
		|||
# ???
 | 
			
		||||
#: cps/templates/admin.html:16 cps/templates/layout.html:76
 | 
			
		||||
msgid "Admin"
 | 
			
		||||
msgstr " Panel administratora"
 | 
			
		||||
msgstr "Panel administratora"
 | 
			
		||||
 | 
			
		||||
# ???
 | 
			
		||||
#: cps/templates/admin.html:17 cps/templates/detail.html:18
 | 
			
		||||
| 
						 | 
				
			
			@ -1040,7 +1040,7 @@ msgstr "Publiczna rejestracja"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/admin.html:100 cps/templates/remote_login.html:4
 | 
			
		||||
msgid "Remote login"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Zdalne logowanie"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/admin.html:104
 | 
			
		||||
msgid "Reverse proxy login"
 | 
			
		||||
| 
						 | 
				
			
			@ -1048,7 +1048,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/admin.html:109
 | 
			
		||||
msgid "Reverse proxy header name"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nazwa nagłówka reverse proxy"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/admin.html:121
 | 
			
		||||
msgid "Administration"
 | 
			
		||||
| 
						 | 
				
			
			@ -1127,7 +1127,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/author.html:23
 | 
			
		||||
msgid "In Library"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "W Bibliotece"
 | 
			
		||||
 | 
			
		||||
# ???
 | 
			
		||||
#: cps/templates/author.html:34 cps/templates/list.html:14
 | 
			
		||||
| 
						 | 
				
			
			@ -1144,7 +1144,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/author.html:94
 | 
			
		||||
msgid "More by"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Więcej według"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/book_edit.html:12
 | 
			
		||||
msgid "Delete Book"
 | 
			
		||||
| 
						 | 
				
			
			@ -1213,7 +1213,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/book_edit.html:87
 | 
			
		||||
msgid "Upload Cover from local drive"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Prześlij okładkę z dysku lokalnego"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/book_edit.html:92 cps/templates/detail.html:165
 | 
			
		||||
msgid "Publishing date"
 | 
			
		||||
| 
						 | 
				
			
			@ -1320,15 +1320,15 @@ msgstr "Użyć dysku Google?"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:31
 | 
			
		||||
msgid "Google Drive config problem"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Problem z konfiguracją Dysku Google"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:37
 | 
			
		||||
msgid "Authenticate Google Drive"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Uwierzytelnij Dysk Google"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:41
 | 
			
		||||
msgid "Please hit submit to continue with setup"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Kliknij przycisk, aby kontynuować instalację"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:44
 | 
			
		||||
msgid "Please finish Google Drive setup after login"
 | 
			
		||||
| 
						 | 
				
			
			@ -1369,11 +1369,11 @@ msgstr "Kanał aktualizacji"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:101
 | 
			
		||||
msgid "Stable"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Stabilna"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:102
 | 
			
		||||
msgid "Stable (Automatic)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Stablina (Automatycznie)"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:103
 | 
			
		||||
msgid "Nightly"
 | 
			
		||||
| 
						 | 
				
			
			@ -1425,15 +1425,15 @@ msgstr "Włącz zdalne logowanie (\"magic link\")"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:175
 | 
			
		||||
msgid "Use Goodreads"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Użyj Goodreads"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:176
 | 
			
		||||
msgid "Obtain an API Key"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Uzyskaj klucz API"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:180
 | 
			
		||||
msgid "Goodreads API Key"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Klucz API Goodreads "
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:184
 | 
			
		||||
msgid "Goodreads API Secret"
 | 
			
		||||
| 
						 | 
				
			
			@ -1441,55 +1441,55 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:191
 | 
			
		||||
msgid "Login type"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Rodzaj logowania"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:193
 | 
			
		||||
msgid "Use standard Authentication"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Użyj standardowego uwierzytelnienia"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:195
 | 
			
		||||
msgid "Use LDAP Authentication"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Użyj uwierzytelniania LDAP"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:198
 | 
			
		||||
msgid "Use OAuth"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Uzyj OAuth"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:205
 | 
			
		||||
msgid "LDAP Server Host Name or IP Address"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nazwa hosta lub adres IP serwera LDAP"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:209
 | 
			
		||||
msgid "LDAP Server Port"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Port serwera LDAP"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:213
 | 
			
		||||
msgid "LDAP schema (ldap or ldaps)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Schemat LDAP (ldap lub ldaps)"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:217
 | 
			
		||||
msgid "LDAP Admin username"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nazwa administratora LDAP"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:221
 | 
			
		||||
msgid "LDAP Admin password"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Hasło administratora LDAP"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:226
 | 
			
		||||
msgid "LDAP Server use SSL"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Serwer LDAP korzysta z protokołu SSL"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:230
 | 
			
		||||
msgid "LDAP Server use TLS"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Serwer LDAP korzysta z TLS"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:234
 | 
			
		||||
msgid "LDAP Server Certificate"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Certyfikat serwera LDAP"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:238
 | 
			
		||||
msgid "LDAP SSL Certificate Path"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Ścieżka certyfikatu SSL LDAP"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:243
 | 
			
		||||
msgid "LDAP Distinguished Name (DN)"
 | 
			
		||||
| 
						 | 
				
			
			@ -1501,7 +1501,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:252
 | 
			
		||||
msgid "LDAP Server is OpenLDAP?"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Serwer LDAP to OpenLDAP?"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:260
 | 
			
		||||
#, python-format
 | 
			
		||||
| 
						 | 
				
			
			@ -1524,7 +1524,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:280
 | 
			
		||||
msgid "Reverse Proxy Header Name"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nazwa nagłowka reverse proxy"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:292
 | 
			
		||||
msgid "External binaries"
 | 
			
		||||
| 
						 | 
				
			
			@ -1552,7 +1552,7 @@ msgstr "Lokalizacja do pliku konwertera"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_edit.html:318
 | 
			
		||||
msgid "Location of Unrar binary"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Lokalizacja pliku binarnego Unrar"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_edit.html:334 cps/templates/layout.html:84
 | 
			
		||||
#: cps/templates/login.html:4
 | 
			
		||||
| 
						 | 
				
			
			@ -1565,7 +1565,7 @@ msgstr "Konfiguracja Widoku"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_view_edit.html:19 cps/templates/shelf_edit.html:7
 | 
			
		||||
msgid "Title"
 | 
			
		||||
msgstr "Nazwa serwera"
 | 
			
		||||
msgstr "Nazwa"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_view_edit.html:27
 | 
			
		||||
msgid "No. of random books to show"
 | 
			
		||||
| 
						 | 
				
			
			@ -1573,7 +1573,7 @@ msgstr "Liczba losowych książek do pokazania"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/config_view_edit.html:31
 | 
			
		||||
msgid "No. of authors to show before hiding (0=disable hiding)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Liczba autorów do pokazania przed ukryciem (0=wyłącza ukrywanie)"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/config_view_edit.html:35 cps/templates/readcbr.html:112
 | 
			
		||||
msgid "Theme"
 | 
			
		||||
| 
						 | 
				
			
			@ -1657,7 +1657,7 @@ msgstr "Czytaj w przeglądarce"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/detail.html:72
 | 
			
		||||
msgid "Listen in browser"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Słuchaj w przeglądarce"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/detail.html:117
 | 
			
		||||
msgid "Book"
 | 
			
		||||
| 
						 | 
				
			
			@ -1733,27 +1733,27 @@ msgstr "Zapisz ustawienia i wyślij testową wiadomość e-mail"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/email_edit.html:43
 | 
			
		||||
msgid "Allowed domains for registering"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Domeny dozwolone do rejestracji"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/email_edit.html:46 cps/templates/email_edit.html:72
 | 
			
		||||
msgid "Add Domain"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Dodaj domenę"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/email_edit.html:49 cps/templates/email_edit.html:75
 | 
			
		||||
msgid "Add"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Dodaj"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/email_edit.html:54 cps/templates/email_edit.html:64
 | 
			
		||||
msgid "Enter domainname"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Podaj nazwę domeny"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/email_edit.html:60
 | 
			
		||||
msgid "Denied domains for registering"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nie można zarejestrowac domen"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/email_edit.html:90
 | 
			
		||||
msgid "Do you really want to delete this domain rule?"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Czy naprawdę chcesz usunąć tę regułę domeny?"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/feed.xml:21 cps/templates/layout.html:176
 | 
			
		||||
msgid "Next"
 | 
			
		||||
| 
						 | 
				
			
			@ -1792,7 +1792,7 @@ msgstr "Popularne publikacje z tego katalogu bazujące na ocenach."
 | 
			
		|||
 | 
			
		||||
#: cps/templates/index.xml:31
 | 
			
		||||
msgid "Recently added Books"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Ostatnio dodane książki"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/index.xml:35
 | 
			
		||||
msgid "The latest Books"
 | 
			
		||||
| 
						 | 
				
			
			@ -1820,11 +1820,11 @@ msgstr "Książki sortowane według serii"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/index.xml:93
 | 
			
		||||
msgid "Books ordered by Languages"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Ksiązki posortowane według języka"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/index.xml:100
 | 
			
		||||
msgid "Books ordered by file formats"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Ksiązki posortowane według formatu"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/index.xml:103 cps/templates/layout.html:137
 | 
			
		||||
msgid "Public Shelves"
 | 
			
		||||
| 
						 | 
				
			
			@ -1925,7 +1925,7 @@ msgstr "Zapamiętaj mnie"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/login.html:22
 | 
			
		||||
msgid "Forgot password"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Zapomniałem hasła"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/login.html:25
 | 
			
		||||
msgid "Log in with magic link"
 | 
			
		||||
| 
						 | 
				
			
			@ -1933,19 +1933,19 @@ msgstr "Zaloguj się za pomocą \"magic link\""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/logviewer.html:6
 | 
			
		||||
msgid "Show Calibre-Web log: "
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Pokaż log Calibre-Web"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/logviewer.html:8
 | 
			
		||||
msgid "Calibre-Web log: "
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Log Calibre-Web"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/logviewer.html:8
 | 
			
		||||
msgid "Stream output, can't be displayed"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Nie można wyświetlić wyjścia"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/logviewer.html:12
 | 
			
		||||
msgid "Show access log: "
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Pokaż log dostępu"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/osd.xml:5
 | 
			
		||||
msgid "Calibre-Web ebook catalog"
 | 
			
		||||
| 
						 | 
				
			
			@ -1958,27 +1958,27 @@ msgstr "Tekst pływający, gdy paski boczne są otwarte."
 | 
			
		|||
 | 
			
		||||
#: cps/templates/readcbr.html:88
 | 
			
		||||
msgid "Keyboard Shortcuts"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Skróty klawiaturowe"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:91
 | 
			
		||||
msgid "Previous Page"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Poprzednia strona"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:92
 | 
			
		||||
msgid "Next Page"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Następna strona"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:93
 | 
			
		||||
msgid "Scale to Best"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Skaluj do najlepszego"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:94
 | 
			
		||||
msgid "Scale to Width"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Skaluj do szerokości"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:95
 | 
			
		||||
msgid "Scale to Height"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Skaluj do wysokości"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:96
 | 
			
		||||
msgid "Scale to Native"
 | 
			
		||||
| 
						 | 
				
			
			@ -1986,11 +1986,11 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/readcbr.html:97
 | 
			
		||||
msgid "Rotate Right"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Obróć w prawo"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:98
 | 
			
		||||
msgid "Rotate Left"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Obróć w lewo"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:99
 | 
			
		||||
msgid "Flip Image"
 | 
			
		||||
| 
						 | 
				
			
			@ -1998,27 +1998,27 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/readcbr.html:115
 | 
			
		||||
msgid "Light"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Jasny"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:116
 | 
			
		||||
msgid "Dark"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Ciemny"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:121
 | 
			
		||||
msgid "Scale"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Skaluj"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:124
 | 
			
		||||
msgid "Best"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Najlepszy"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:125
 | 
			
		||||
msgid "Width"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Szerokość"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:126
 | 
			
		||||
msgid "Height"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Wysokość"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:127
 | 
			
		||||
msgid "Native"
 | 
			
		||||
| 
						 | 
				
			
			@ -2026,7 +2026,7 @@ msgstr ""
 | 
			
		|||
 | 
			
		||||
#: cps/templates/readcbr.html:132
 | 
			
		||||
msgid "Rotate"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Obrót"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:143
 | 
			
		||||
msgid "Flip"
 | 
			
		||||
| 
						 | 
				
			
			@ -2042,7 +2042,7 @@ msgstr "Pionowo"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/readcbr.html:152
 | 
			
		||||
msgid "Direction"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Kierunek"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readcbr.html:155
 | 
			
		||||
msgid "Left to Right"
 | 
			
		||||
| 
						 | 
				
			
			@ -2050,11 +2050,11 @@ msgstr "od lewej do prawej"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/readcbr.html:156
 | 
			
		||||
msgid "Right to Left"
 | 
			
		||||
msgstr "od prawej do lewej"
 | 
			
		||||
msgstr "Od prawej do lewej"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readpdf.html:29
 | 
			
		||||
msgid "PDF reader"
 | 
			
		||||
msgstr "czytnik PDF"
 | 
			
		||||
msgstr "Czytnik PDF"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/readtxt.html:6
 | 
			
		||||
msgid "Basic txt Reader"
 | 
			
		||||
| 
						 | 
				
			
			@ -2078,11 +2078,11 @@ msgstr "Twój adres e-mail"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/remote_login.html:6
 | 
			
		||||
msgid "Use your other device, login and visit "
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Użyj innego urządzenia, zaloguj się i odwiedź"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/remote_login.html:9
 | 
			
		||||
msgid "Once you do so, you will automatically get logged in on this device."
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Gdy to zrobisz, automatycznie zalogujesz się na tym urządzeniu."
 | 
			
		||||
 | 
			
		||||
#: cps/templates/remote_login.html:12
 | 
			
		||||
msgid "The link will expire after 10 minutes."
 | 
			
		||||
| 
						 | 
				
			
			@ -2122,11 +2122,11 @@ msgstr "Wyklucz języki"
 | 
			
		|||
 | 
			
		||||
#: cps/templates/search_form.html:95
 | 
			
		||||
msgid "Extensions"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Rozszerzenia"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/search_form.html:105
 | 
			
		||||
msgid "Exclude Extensions"
 | 
			
		||||
msgstr ""
 | 
			
		||||
msgstr "Wyklucz rozszerzenia"
 | 
			
		||||
 | 
			
		||||
#: cps/templates/search_form.html:117
 | 
			
		||||
msgid "Rating bigger than"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -8,7 +8,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2020-01-21 23:03+0400\n"
 | 
			
		||||
"Last-Translator: ZIZA\n"
 | 
			
		||||
"Language: ru\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -7,7 +7,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2020-01-18 11:22+0100\n"
 | 
			
		||||
"Last-Translator: Jonatan Nyberg <jonatan.nyberg.karl@gmail.com>\n"
 | 
			
		||||
"Language: sv\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -6,7 +6,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/calibre-web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2017-04-30 00:47+0300\n"
 | 
			
		||||
"Last-Translator: ABIS Team <biblio.if.abis@gmail.com>\n"
 | 
			
		||||
"Language: uk\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											Binary file not shown.
										
									
								
							| 
						 | 
				
			
			@ -7,7 +7,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version:  Calibre-Web\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: 2017-01-06 17:00+0000\n"
 | 
			
		||||
"Last-Translator: dalin <dalin.lin@gmail.com>\n"
 | 
			
		||||
"Language: zh_Hans_CN\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -151,7 +151,7 @@ def load_user_from_auth_header(header_val):
 | 
			
		|||
        header_val = base64.b64decode(header_val).decode('utf-8')
 | 
			
		||||
        basic_username = header_val.split(':')[0]
 | 
			
		||||
        basic_password = header_val.split(':')[1]
 | 
			
		||||
    except TypeError:
 | 
			
		||||
    except (TypeError, UnicodeDecodeError):
 | 
			
		||||
        pass
 | 
			
		||||
    user = _fetch_user_by_name(basic_username)
 | 
			
		||||
    if user and check_password_hash(str(user.password), basic_password):
 | 
			
		||||
| 
						 | 
				
			
			@ -173,7 +173,7 @@ def remote_login_required(f):
 | 
			
		|||
    def inner(*args, **kwargs):
 | 
			
		||||
        if config.config_remote_login:
 | 
			
		||||
            return f(*args, **kwargs)
 | 
			
		||||
        if request.is_xhr:
 | 
			
		||||
        if request.headers.get('X-Requested-With') == 'XMLHttpRequest':
 | 
			
		||||
            data = {'status': 'error', 'message': 'Forbidden'}
 | 
			
		||||
            response = make_response(json.dumps(data, ensure_ascii=False))
 | 
			
		||||
            response.headers["Content-Type"] = "application/json; charset=utf-8"
 | 
			
		||||
| 
						 | 
				
			
			@ -1469,7 +1469,7 @@ def show_book(book_id):
 | 
			
		|||
                audioentries.append(media_format.format.lower())
 | 
			
		||||
 | 
			
		||||
        return render_title_template('detail.html', entry=entries, audioentries=audioentries, cc=cc,
 | 
			
		||||
                                     is_xhr=request.is_xhr, title=entries.title, books_shelfs=book_in_shelfs,
 | 
			
		||||
                                     is_xhr=request.headers.get('X-Requested-With')=='XMLHttpRequest', title=entries.title, books_shelfs=book_in_shelfs,
 | 
			
		||||
                                     have_read=have_read, kindle_list=kindle_list, reader_list=reader_list, page="book")
 | 
			
		||||
    else:
 | 
			
		||||
        log.debug(u"Error opening eBook. File does not exist or file is not accessible:")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,7 +8,7 @@ msgid ""
 | 
			
		|||
msgstr ""
 | 
			
		||||
"Project-Id-Version: PROJECT VERSION\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
 | 
			
		||||
"POT-Creation-Date: 2020-01-27 18:16+0100\n"
 | 
			
		||||
"POT-Creation-Date: 2020-02-01 15:02+0100\n"
 | 
			
		||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
			
		||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
			
		||||
"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user