mirror of
https://github.com/janeczku/calibre-web
synced 2024-11-28 12:30:00 +00:00
Own function for getting the current commit hash and datetime
This commit is contained in:
parent
cb5adb3a31
commit
f7872aded0
@ -547,6 +547,7 @@ def check_unrar(unrarLocation):
|
|||||||
error=True
|
error=True
|
||||||
return (error, version)
|
return (error, version)
|
||||||
|
|
||||||
|
|
||||||
def is_sha1(sha1):
|
def is_sha1(sha1):
|
||||||
if len(sha1) != 40:
|
if len(sha1) != 40:
|
||||||
return False
|
return False
|
||||||
@ -555,3 +556,19 @@ def is_sha1(sha1):
|
|||||||
except ValueError:
|
except ValueError:
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
|
def get_current_version_info():
|
||||||
|
try:
|
||||||
|
with open('version', 'r') as f:
|
||||||
|
content = f.readlines()
|
||||||
|
content = [x.strip() for x in content]
|
||||||
|
|
||||||
|
if len(content) != 2:
|
||||||
|
return False
|
||||||
|
|
||||||
|
if is_sha1(content[0]) and len(content[1]) > 0:
|
||||||
|
return {'sha': content[0], 'datetime': content[1]}
|
||||||
|
except FileNotFoundError:
|
||||||
|
return False
|
||||||
|
return False
|
||||||
|
19
cps/web.py
19
cps/web.py
@ -1094,14 +1094,11 @@ def get_update_status():
|
|||||||
tz = datetime.timedelta(seconds=time.timezone if (time.localtime().tm_isdst == 0) else time.altzone)
|
tz = datetime.timedelta(seconds=time.timezone if (time.localtime().tm_isdst == 0) else time.altzone)
|
||||||
|
|
||||||
if request.method == "GET":
|
if request.method == "GET":
|
||||||
# get current commit hash from file
|
version = helper.get_current_version_info()
|
||||||
try:
|
if version is False:
|
||||||
with open('version', 'r') as f:
|
status['current_commit_hash'] = _(u'Unknown')
|
||||||
data = f.read().replace('\n', '')
|
else:
|
||||||
if helper.is_sha1(data):
|
status['current_commit_hash'] = version['sha']
|
||||||
status['current_commit_hash'] = data
|
|
||||||
except FileNotFoundError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
r = requests.get(repository_url + '/git/refs/heads/master')
|
r = requests.get(repository_url + '/git/refs/heads/master')
|
||||||
@ -2749,10 +2746,12 @@ def profile():
|
|||||||
@login_required
|
@login_required
|
||||||
@admin_required
|
@admin_required
|
||||||
def admin():
|
def admin():
|
||||||
commit = '$Format:%cI$'
|
version = helper.get_current_version_info()
|
||||||
if commit.startswith("$"):
|
if version is False:
|
||||||
commit = _(u'Unknown')
|
commit = _(u'Unknown')
|
||||||
else:
|
else:
|
||||||
|
commit = version['datetime']
|
||||||
|
|
||||||
tz = datetime.timedelta(seconds=time.timezone if (time.localtime().tm_isdst == 0) else time.altzone)
|
tz = datetime.timedelta(seconds=time.timezone if (time.localtime().tm_isdst == 0) else time.altzone)
|
||||||
form_date = datetime.datetime.strptime(commit[:19], "%Y-%m-%dT%H:%M:%S")
|
form_date = datetime.datetime.strptime(commit[:19], "%Y-%m-%dT%H:%M:%S")
|
||||||
if len(commit) > 19: # check if string has timezone
|
if len(commit) > 19: # check if string has timezone
|
||||||
|
Loading…
Reference in New Issue
Block a user