mirror of
https://github.com/janeczku/calibre-web
synced 2024-11-28 04:19:59 +00:00
Merge branch 'master' into Develop
This commit is contained in:
commit
61bfeae936
36
cps/about.py
36
cps/about.py
@ -25,8 +25,15 @@ import platform
|
|||||||
import sqlite3
|
import sqlite3
|
||||||
from collections import OrderedDict
|
from collections import OrderedDict
|
||||||
|
|
||||||
import babel, pytz, requests, sqlalchemy
|
import babel
|
||||||
import werkzeug, flask, flask_login, flask_principal, jinja2
|
import pytz
|
||||||
|
import requests
|
||||||
|
import sqlalchemy
|
||||||
|
import werkzeug
|
||||||
|
import flask
|
||||||
|
import flask_login
|
||||||
|
import flask_principal
|
||||||
|
import jinja2
|
||||||
from flask_babel import gettext as _
|
from flask_babel import gettext as _
|
||||||
try:
|
try:
|
||||||
from flask_wtf import __version__ as flaskwtf_version
|
from flask_wtf import __version__ as flaskwtf_version
|
||||||
@ -58,12 +65,6 @@ try:
|
|||||||
except ImportError:
|
except ImportError:
|
||||||
greenlet_Version = None
|
greenlet_Version = None
|
||||||
|
|
||||||
try:
|
|
||||||
from scholarly import scholarly
|
|
||||||
scholarly_version = _(u'installed')
|
|
||||||
except ImportError:
|
|
||||||
scholarly_version = _(u'not installed')
|
|
||||||
|
|
||||||
from . import services
|
from . import services
|
||||||
|
|
||||||
about = flask.Blueprint('about', __name__)
|
about = flask.Blueprint('about', __name__)
|
||||||
@ -78,8 +79,8 @@ if constants.NIGHTLY_VERSION[0] == "$Format:%H$":
|
|||||||
calibre_web_version = constants.STABLE_VERSION['version']
|
calibre_web_version = constants.STABLE_VERSION['version']
|
||||||
else:
|
else:
|
||||||
calibre_web_version = (constants.STABLE_VERSION['version'] + ' - '
|
calibre_web_version = (constants.STABLE_VERSION['version'] + ' - '
|
||||||
+ constants.NIGHTLY_VERSION[0].replace('%','%%') + ' - '
|
+ constants.NIGHTLY_VERSION[0].replace('%', '%%') + ' - '
|
||||||
+ constants.NIGHTLY_VERSION[1].replace('%','%%'))
|
+ constants.NIGHTLY_VERSION[1].replace('%', '%%'))
|
||||||
if getattr(sys, 'frozen', False):
|
if getattr(sys, 'frozen', False):
|
||||||
calibre_web_version += " - Exe-Version"
|
calibre_web_version += " - Exe-Version"
|
||||||
elif constants.HOME_CONFIG:
|
elif constants.HOME_CONFIG:
|
||||||
@ -87,7 +88,7 @@ elif constants.HOME_CONFIG:
|
|||||||
|
|
||||||
if not ret:
|
if not ret:
|
||||||
_VERSIONS = OrderedDict(
|
_VERSIONS = OrderedDict(
|
||||||
Platform = '{0[0]} {0[2]} {0[3]} {0[4]} {0[5]}'.format(platform.uname()),
|
Platform='{0[0]} {0[2]} {0[3]} {0[4]} {0[5]}'.format(platform.uname()),
|
||||||
Python=sys.version,
|
Python=sys.version,
|
||||||
Calibre_Web=calibre_web_version,
|
Calibre_Web=calibre_web_version,
|
||||||
WebServer=server.VERSION,
|
WebServer=server.VERSION,
|
||||||
@ -105,7 +106,6 @@ if not ret:
|
|||||||
iso639=isoLanguages.__version__,
|
iso639=isoLanguages.__version__,
|
||||||
pytz=pytz.__version__,
|
pytz=pytz.__version__,
|
||||||
Unidecode=unidecode_version,
|
Unidecode=unidecode_version,
|
||||||
Scholarly=scholarly_version,
|
|
||||||
Flask_SimpleLDAP=u'installed' if bool(services.ldap) else None,
|
Flask_SimpleLDAP=u'installed' if bool(services.ldap) else None,
|
||||||
python_LDAP=services.ldapVersion if bool(services.ldapVersion) else None,
|
python_LDAP=services.ldapVersion if bool(services.ldapVersion) else None,
|
||||||
Goodreads=u'installed' if bool(services.goodreads_support) else None,
|
Goodreads=u'installed' if bool(services.goodreads_support) else None,
|
||||||
@ -117,23 +117,25 @@ if not ret:
|
|||||||
_VERSIONS.update(uploader.get_versions(True))
|
_VERSIONS.update(uploader.get_versions(True))
|
||||||
else:
|
else:
|
||||||
_VERSIONS = OrderedDict(
|
_VERSIONS = OrderedDict(
|
||||||
Platform = '{0[0]} {0[2]} {0[3]} {0[4]} {0[5]}'.format(platform.uname()),
|
Platform='{0[0]} {0[2]} {0[3]} {0[4]} {0[5]}'.format(platform.uname()),
|
||||||
Python = sys.version,
|
Python=sys.version,
|
||||||
Calibre_Web=calibre_web_version,
|
Calibre_Web=calibre_web_version,
|
||||||
Werkzeug = werkzeug.__version__,
|
Werkzeug=werkzeug.__version__,
|
||||||
Jinja2=jinja2.__version__,
|
Jinja2=jinja2.__version__,
|
||||||
pySqlite = sqlite3.version,
|
pySqlite=sqlite3.version,
|
||||||
SQLite = sqlite3.sqlite_version,
|
SQLite=sqlite3.sqlite_version,
|
||||||
)
|
)
|
||||||
_VERSIONS.update(ret)
|
_VERSIONS.update(ret)
|
||||||
_VERSIONS.update(uploader.get_versions(False))
|
_VERSIONS.update(uploader.get_versions(False))
|
||||||
|
|
||||||
|
|
||||||
def collect_stats():
|
def collect_stats():
|
||||||
_VERSIONS['ebook converter'] = _(converter.get_calibre_version())
|
_VERSIONS['ebook converter'] = _(converter.get_calibre_version())
|
||||||
_VERSIONS['unrar'] = _(converter.get_unrar_version())
|
_VERSIONS['unrar'] = _(converter.get_unrar_version())
|
||||||
_VERSIONS['kepubify'] = _(converter.get_kepubify_version())
|
_VERSIONS['kepubify'] = _(converter.get_kepubify_version())
|
||||||
return _VERSIONS
|
return _VERSIONS
|
||||||
|
|
||||||
|
|
||||||
@about.route("/stats")
|
@about.route("/stats")
|
||||||
@flask_login.login_required
|
@flask_login.login_required
|
||||||
def stats():
|
def stats():
|
||||||
|
@ -33,13 +33,6 @@ try:
|
|||||||
except ImportError:
|
except ImportError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
# Improve this to check if scholarly is available in a global way, like other pythonic libraries
|
|
||||||
try:
|
|
||||||
from scholarly import scholarly
|
|
||||||
have_scholar = True
|
|
||||||
except ImportError:
|
|
||||||
have_scholar = False
|
|
||||||
|
|
||||||
from flask import Blueprint, request, flash, redirect, url_for, abort, Markup, Response
|
from flask import Blueprint, request, flash, redirect, url_for, abort, Markup, Response
|
||||||
from flask_babel import gettext as _
|
from flask_babel import gettext as _
|
||||||
from flask_login import current_user, login_required
|
from flask_login import current_user, login_required
|
||||||
|
@ -19,7 +19,14 @@ import itertools
|
|||||||
from typing import Dict, List, Optional
|
from typing import Dict, List, Optional
|
||||||
from urllib.parse import quote
|
from urllib.parse import quote
|
||||||
|
|
||||||
from scholarly import scholarly
|
try:
|
||||||
|
from fake_useragent.errors import FakeUserAgentError
|
||||||
|
except (ImportError):
|
||||||
|
FakeUserAgentError = BaseException
|
||||||
|
try:
|
||||||
|
from scholarly import scholarly
|
||||||
|
except FakeUserAgentError:
|
||||||
|
raise ImportError("No module named 'scholarly'")
|
||||||
|
|
||||||
from cps.services.Metadata import MetaRecord, MetaSourceInfo, Metadata
|
from cps.services.Metadata import MetaRecord, MetaSourceInfo, Metadata
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user