mirror of
https://github.com/janeczku/calibre-web
synced 2024-12-25 17:40:31 +00:00
Code cosmetics
Bugfix upload
This commit is contained in:
parent
ab534b21c1
commit
d59be5faf4
@ -4,6 +4,7 @@
|
|||||||
* Google Books api document: https://developers.google.com/books/docs/v1/using
|
* Google Books api document: https://developers.google.com/books/docs/v1/using
|
||||||
* Douban Books api document: https://developers.douban.com/wiki/?title=book_v2 (Chinese Only)
|
* Douban Books api document: https://developers.douban.com/wiki/?title=book_v2 (Chinese Only)
|
||||||
*/
|
*/
|
||||||
|
/* global i18nMsg */
|
||||||
|
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
var msg = i18nMsg;
|
var msg = i18nMsg;
|
||||||
@ -26,36 +27,39 @@ $(document).ready(function () {
|
|||||||
};
|
};
|
||||||
|
|
||||||
function showResult () {
|
function showResult () {
|
||||||
|
var book;
|
||||||
|
var i;
|
||||||
|
var bookHtml;
|
||||||
showFlag++;
|
showFlag++;
|
||||||
if (showFlag === 1) {
|
if (showFlag === 1) {
|
||||||
$("#meta-info").html('<ul id="book-list" class="media-list"></ul>');
|
$("#meta-info").html("<ul id=\"book-list\" class=\"media-list\"></ul>");
|
||||||
}
|
}
|
||||||
if (ggDone && dbDone) {
|
if (ggDone && dbDone) {
|
||||||
if (!ggResults && !dbResults) {
|
if (!ggResults && !dbResults) {
|
||||||
$("#meta-info").html('<p class="text-danger">'+ msg.no_result +"</p>");
|
$("#meta-info").html("<p class=\"text-danger\">"+ msg.no_result +"</p>");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ggDone && ggResults.length > 0) {
|
if (ggDone && ggResults.length > 0) {
|
||||||
for (var i = 0; i < ggResults.length; i++) {
|
for (i = 0; i < ggResults.length; i++) {
|
||||||
var book = ggResults[i];
|
book = ggResults[i];
|
||||||
var bookCover;
|
var bookCover;
|
||||||
if (book.volumeInfo.imageLinks) {
|
if (book.volumeInfo.imageLinks) {
|
||||||
bookCover = book.volumeInfo.imageLinks.thumbnail;
|
bookCover = book.volumeInfo.imageLinks.thumbnail;
|
||||||
} else {
|
} else {
|
||||||
bookCover = "/static/generic_cover.jpg";
|
bookCover = "/static/generic_cover.jpg";
|
||||||
}
|
}
|
||||||
var bookHtml = '<li class="media">' +
|
bookHtml = "<li class=\"media\">" +
|
||||||
'<img class="pull-left img-responsive" data-toggle="modal" data-target="#metaModal" src="' +
|
"<img class=\"pull-left img-responsive\" data-toggle=\"modal\" data-target=\"#metaModal\" src=\"" +
|
||||||
bookCover + '" alt="Cover" style="width:100px;height:150px" onclick=\'javascript:get_meta("google",' +
|
bookCover + "\" alt=\"Cover\" style=\"width:100px;height:150px\" onclick='javascript:getMeta(\"google\"," +
|
||||||
i + ')\'>' +
|
i + ")\\>\"" +
|
||||||
'<div class="media-body">' +
|
"<div class=\"media-body\">" +
|
||||||
'<h4 class="media-heading"><a href="https://books.google.com/books?id=' +
|
"<h4 class=\"media-heading\"><a href=\"https://books.google.com/books?id=" +
|
||||||
book.id + '" target="_blank">' + book.volumeInfo.title + '</a></h4>' +
|
book.id + "\" target=\"_blank\">" + book.volumeInfo.title + "</a></h4>" +
|
||||||
"<p>"+ msg.author +":" + book.volumeInfo.authors + "</p>" +
|
"<p>"+ msg.author +":" + book.volumeInfo.authors + "</p>" +
|
||||||
"<p>"+ msg.publisher + ":" + book.volumeInfo.publisher + "</p>" +
|
"<p>"+ msg.publisher + ":" + book.volumeInfo.publisher + "</p>" +
|
||||||
"<p>"+ msg.description + ":" + book.volumeInfo.description + "</p>" +
|
"<p>"+ msg.description + ":" + book.volumeInfo.description + "</p>" +
|
||||||
"<p>"+ msg.source + ':<a href="https://books.google.com" target="_blank">Google Books</a></p>' +
|
"<p>"+ msg.source + ":<a href=\"https://books.google.com\" target=\"_blank\">Google Books</a></p>" +
|
||||||
"</div>" +
|
"</div>" +
|
||||||
"</li>";
|
"</li>";
|
||||||
$("#book-list").append(bookHtml);
|
$("#book-list").append(bookHtml);
|
||||||
@ -63,19 +67,19 @@ $(document).ready(function () {
|
|||||||
ggDone = false;
|
ggDone = false;
|
||||||
}
|
}
|
||||||
if (dbDone && dbResults.length > 0) {
|
if (dbDone && dbResults.length > 0) {
|
||||||
for (var i = 0; i < dbResults.length; i++) {
|
for (i = 0; i < dbResults.length; i++) {
|
||||||
var book = dbResults[i];
|
book = dbResults[i];
|
||||||
var bookHtml = '<li class="media">' +
|
bookHtml = "<li class=\"media\">" +
|
||||||
'<img class="pull-left img-responsive" data-toggle="modal" data-target="#metaModal" src="' +
|
"<img class=\"pull-left img-responsive\" data-toggle=\"modal\" data-target=\"#metaModal\" src=\"" +
|
||||||
book.image + '" alt="Cover" style="width:100px;height: 150px" onclick=\'javascript:get_meta("douban",' +
|
book.image + "\" alt=\"Cover\" style=\"width:100px;height: 150px\" onclick='javascript:getMeta(\"douban\"," +
|
||||||
i + ')\'>' +
|
i + ")\\'>" +
|
||||||
'<div class="media-body">' +
|
"<div class=\"media-body\">" +
|
||||||
'<h4 class="media-heading"><a href="https://book.douban.com/subject/' +
|
"<h4 class=\"media-heading\"><a href=\"https://book.douban.com/subject/" +
|
||||||
book.id + '" target="_blank">' + book.title + "</a></h4>" +
|
book.id + "\" target=\"_blank\">" + book.title + "</a></h4>" +
|
||||||
"<p>" + msg.author + ":" + book.author + "</p>" +
|
"<p>" + msg.author + ":" + book.author + "</p>" +
|
||||||
"<p>" + msg.publisher + ":" + book.publisher + "</p>" +
|
"<p>" + msg.publisher + ":" + book.publisher + "</p>" +
|
||||||
"<p>" + msg.description + ":" + book.summary + "</p>" +
|
"<p>" + msg.description + ":" + book.summary + "</p>" +
|
||||||
"<p>" + msg.source + ':<a href="https://book.douban.com" target="_blank">Douban Books</a></p>' +
|
"<p>" + msg.source + ":<a href=\"https://book.douban.com\" target=\"_blank\">Douban Books</a></p>" +
|
||||||
"</div>" +
|
"</div>" +
|
||||||
"</li>";
|
"</li>";
|
||||||
$("#book-list").append(bookHtml);
|
$("#book-list").append(bookHtml);
|
||||||
@ -92,17 +96,17 @@ $(document).ready(function () {
|
|||||||
type: "GET",
|
type: "GET",
|
||||||
dataType: "jsonp",
|
dataType: "jsonp",
|
||||||
jsonp: "callback",
|
jsonp: "callback",
|
||||||
success: function (data) {
|
success (data) {
|
||||||
ggResults = data.items;
|
ggResults = data.items;
|
||||||
},
|
},
|
||||||
complete: function () {
|
complete () {
|
||||||
ggDone = true;
|
ggDone = true;
|
||||||
showResult();
|
showResult();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function get_meta (source, id) {
|
function getMeta (source, id) {
|
||||||
var meta;
|
var meta;
|
||||||
var tags;
|
var tags;
|
||||||
if (source === "google") {
|
if (source === "google") {
|
||||||
@ -134,6 +138,26 @@ $(document).ready(function () {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function dbSearchBook (title) {
|
||||||
|
var url = douban + dbSearch + "?q=" + title + "&fields=all&count=10";
|
||||||
|
$.ajax({
|
||||||
|
url: url,
|
||||||
|
type: "GET",
|
||||||
|
dataType: "jsonp",
|
||||||
|
jsonp: "callback",
|
||||||
|
success (data) {
|
||||||
|
dbResults = data.books;
|
||||||
|
},
|
||||||
|
error () {
|
||||||
|
$("#meta-info").html('<p class="text-danger">'+ msg.search_error+"!</p>");
|
||||||
|
},
|
||||||
|
complete () {
|
||||||
|
dbDone = true;
|
||||||
|
showResult();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
function doSearch (keyword) {
|
function doSearch (keyword) {
|
||||||
showFlag = 0;
|
showFlag = 0;
|
||||||
$("#meta-info").text(msg.loading);
|
$("#meta-info").text(msg.loading);
|
||||||
@ -144,26 +168,6 @@ $(document).ready(function () {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function dbSearchBook (title) {
|
|
||||||
var url = douban + dbSearch + "?q=" + title + "&fields=all&count=10";
|
|
||||||
$.ajax({
|
|
||||||
url: url,
|
|
||||||
type: "GET",
|
|
||||||
dataType: "jsonp",
|
|
||||||
jsonp: "callback",
|
|
||||||
success: function (data) {
|
|
||||||
dbResults = data.books;
|
|
||||||
},
|
|
||||||
error: function () {
|
|
||||||
$("#meta-info").html('<p class="text-danger">'+ msg.search_error+"!</p>");
|
|
||||||
},
|
|
||||||
complete: function () {
|
|
||||||
dbDone = true;
|
|
||||||
showResult();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
$("#do-search").click(function () {
|
$("#do-search").click(function () {
|
||||||
var keyword = $("#keyword").val();
|
var keyword = $("#keyword").val();
|
||||||
if (keyword) {
|
if (keyword) {
|
||||||
|
16
cps/web.py
16
cps/web.py
@ -2688,13 +2688,15 @@ def upload():
|
|||||||
author_names.append(author.name)
|
author_names.append(author.name)
|
||||||
if config.config_use_google_drive:
|
if config.config_use_google_drive:
|
||||||
updateGdriveCalibreFromLocal()
|
updateGdriveCalibreFromLocal()
|
||||||
cc = db.session.query(db.Custom_Columns).filter(db.Custom_Columns.datatype.notin_(db.cc_exceptions)).all()
|
cc = db.session.query(db.Custom_Columns).filter(db.Custom_Columns.datatype.notin_(db.cc_exceptions)).all()
|
||||||
if current_user.role_edit() or current_user.role_admin():
|
if current_user.role_edit() or current_user.role_admin():
|
||||||
return render_title_template('book_edit.html', book=db_book, authors=author_names, cc=cc,
|
return render_title_template('book_edit.html', book=db_book, authors=author_names, cc=cc,
|
||||||
title=_(u"edit metadata"))
|
title=_(u"edit metadata"))
|
||||||
book_in_shelfs = []
|
book_in_shelfs = []
|
||||||
return render_title_template('detail.html', entry=db_book, cc=cc, title=db_book.title,
|
return render_title_template('detail.html', entry=db_book, cc=cc, title=db_book.title,
|
||||||
books_shelfs=book_in_shelfs, )
|
books_shelfs=book_in_shelfs, )
|
||||||
|
else:
|
||||||
|
return redirect(url_for("index"))
|
||||||
|
|
||||||
def start_gevent():
|
def start_gevent():
|
||||||
from gevent.wsgi import WSGIServer
|
from gevent.wsgi import WSGIServer
|
||||||
|
Loading…
Reference in New Issue
Block a user