nightly commit
This commit is contained in:
@@ -20,8 +20,9 @@ def SafeDatabaseOperation(func):
|
||||
|
||||
# do real data work
|
||||
try:
|
||||
if self.isFirstRun:
|
||||
self.isFirstRun = False
|
||||
currentTime = utils.GetCurrentTimestamp()
|
||||
if currentTime - self.latestClean > config.CustomConfig['auto-token-clean-duration']:
|
||||
self.latestClean = currentTime
|
||||
print('Cleaning outdated token...')
|
||||
self.tokenOper_clean()
|
||||
|
||||
@@ -45,14 +46,14 @@ class CalendarDatabase(object):
|
||||
self.db = None
|
||||
self.cursor = None
|
||||
self.mutex = threading.Lock()
|
||||
self.isFirstRun = True
|
||||
self.latestClean = 0
|
||||
|
||||
def open(self):
|
||||
if (self.is_database_valid()):
|
||||
raise Exception('Databade is opened')
|
||||
|
||||
if config.CustomConfig['database-type'] == 'sqlite':
|
||||
self.db = sqlite3.connect(config.CustomConfig['database-config']['url'])
|
||||
self.db = sqlite3.connect(config.CustomConfig['database-config']['url'], check_same_thread = False)
|
||||
elif config.CustomConfig['database-type'] == 'mysql':
|
||||
raise Exception('Not implemented database')
|
||||
else:
|
||||
@@ -114,7 +115,10 @@ class CalendarDatabase(object):
|
||||
token,
|
||||
utils.GetCurrentTimestamp()
|
||||
))
|
||||
return self.cursor.fetchone()[0]
|
||||
result = self.cursor.fetchone()[0]
|
||||
# need postpone expire on time
|
||||
self.tokenOper_postpone_expireOn(token)
|
||||
return result
|
||||
|
||||
# =============================== # =============================== operation function
|
||||
# =============================== common
|
||||
|
||||
@@ -14,10 +14,12 @@ import config
|
||||
import database
|
||||
|
||||
app = Flask(__name__)
|
||||
calendar_db = database.CalendarDatabase()
|
||||
|
||||
# render_static_resources = None
|
||||
|
||||
# =============================================database
|
||||
'''
|
||||
def get_database():
|
||||
db = getattr(g, '_database', None)
|
||||
if db is None:
|
||||
@@ -30,6 +32,7 @@ def close_database(exception):
|
||||
db = getattr(g, '_database', None)
|
||||
if db is not None:
|
||||
db.close()
|
||||
'''
|
||||
|
||||
# ============================================= static page route
|
||||
|
||||
@@ -70,7 +73,7 @@ def web_loginHandle():
|
||||
def api_common_saltHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('username', ))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.common_salt(request.form['username'])
|
||||
|
||||
return ConstructResponseBody(result)
|
||||
@@ -79,7 +82,7 @@ def api_common_saltHandle():
|
||||
def api_common_loginHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('username', 'password'))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.common_login(
|
||||
request.form['username'],
|
||||
request.form['password']
|
||||
@@ -91,7 +94,7 @@ def api_common_loginHandle():
|
||||
def api_common_webLoginHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('username', 'password'))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.common_webLogin(
|
||||
request.form['username'],
|
||||
request.form['password']
|
||||
@@ -103,7 +106,7 @@ def api_common_webLoginHandle():
|
||||
def api_common_logoutHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('token', ))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.common_logout(request.form['token'])
|
||||
|
||||
return ConstructResponseBody(result)
|
||||
@@ -112,7 +115,7 @@ def api_common_logoutHandle():
|
||||
def api_common_tokenValidHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('token', ))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.common_tokenValid(request.form['token'])
|
||||
|
||||
return ConstructResponseBody(result)
|
||||
@@ -194,7 +197,7 @@ def api_collection_getSharedHandle():
|
||||
def api_todo_getFullHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('token', ))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.todo_getFull(request.form['token'])
|
||||
|
||||
return ConstructResponseBody(result)
|
||||
@@ -203,7 +206,7 @@ def api_todo_getFullHandle():
|
||||
def api_todo_getListHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('token', ))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.todo_getList(request.form['token'])
|
||||
|
||||
return ConstructResponseBody(result)
|
||||
@@ -212,7 +215,7 @@ def api_todo_getListHandle():
|
||||
def api_todo_getDetailHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('token', 'uuid'))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.todo_getDetail(
|
||||
request.form['token'],
|
||||
request.form['uuid']
|
||||
@@ -224,7 +227,7 @@ def api_todo_getDetailHandle():
|
||||
def api_todo_addHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('token', ))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.todo_add(request.form['token'])
|
||||
|
||||
return ConstructResponseBody(result)
|
||||
@@ -233,7 +236,7 @@ def api_todo_addHandle():
|
||||
def api_todo_updateHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('token', 'uuid', 'data', 'lastChange'))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.todo_update(
|
||||
request.form['token'],
|
||||
request.form['uuid'],
|
||||
@@ -247,7 +250,7 @@ def api_todo_updateHandle():
|
||||
def api_todo_deleteHandle():
|
||||
result = (False, None)
|
||||
if (CheckParameter(('token', 'uuid', 'lastChange'))):
|
||||
db = get_database()
|
||||
db = calendar_db
|
||||
result = db.todo_delete(
|
||||
request.form['token'],
|
||||
request.form['uuid'],
|
||||
@@ -307,5 +310,7 @@ def ConstructResponseBody(returnedTuple):
|
||||
}
|
||||
|
||||
def run():
|
||||
calendar_db.open()
|
||||
app.run(port=config.CustomConfig['web']['port'])
|
||||
calendar_db.close()
|
||||
|
||||
@@ -43,7 +43,6 @@ CREATE TABLE calendar(
|
||||
[ccn_description] TEXT NOT NULL,
|
||||
[ccn_lastChange] TEXT NOT NULL,
|
||||
|
||||
[ccn_eventDateTimeType] TINYINT NOT NULL,
|
||||
[ccn_eventDateTimeStart] BIGINT NOT NULL,
|
||||
[ccn_eventDateTimeEnd] BIGINT NOT NULL,
|
||||
|
||||
|
||||
@@ -29,13 +29,5 @@ $(document).ready(function() {
|
||||
});
|
||||
|
||||
function ccn_calendar_LoadCalendarBody() {
|
||||
$.ajax({
|
||||
url: $("#jsrender-tmpl-calendarItem").attr('src'),
|
||||
type: "GET",
|
||||
async: false,
|
||||
success: function (data) {
|
||||
var tmpl = $.templates(data);
|
||||
$('#ccn-calendar-calendarBbody').append(tmpl.render());
|
||||
}
|
||||
});
|
||||
$('#ccn-calendar-calendarBbody').append(ccn_template_calendarItem.render());
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
$(document).ready(function() {
|
||||
ccn_pages_currentPage = ccn_pages_enumPages.login;
|
||||
|
||||
|
||||
// template process
|
||||
ccn_template_Load();
|
||||
|
||||
@@ -9,11 +9,11 @@ $(document).ready(function() {
|
||||
cnn_headerNav_BindEvents();
|
||||
cnn_headerNav_LoggedRefresh();
|
||||
|
||||
// bind login event
|
||||
$("#ccn-login-form-login").click(ccn_login_startLogin);
|
||||
|
||||
// apply i18n
|
||||
ccn_i18n_ApplyLanguage();
|
||||
|
||||
// bind login event
|
||||
$("#ccn-login-form-login").click(ccn_login_startLogin);
|
||||
});
|
||||
|
||||
function ccn_login_startLogin() {
|
||||
|
||||
@@ -11,15 +11,15 @@ $(document).ready(function() {
|
||||
cnn_headerNav_BindEvents();
|
||||
cnn_headerNav_LoggedRefresh();
|
||||
|
||||
// apply i18n
|
||||
ccn_i18n_ApplyLanguage();
|
||||
|
||||
// refresh once
|
||||
ccn_todo_Refresh();
|
||||
|
||||
// bind event
|
||||
$("#ccn-todo-btnAdd").click(ccn_todo_Add);
|
||||
$("#ccn-todo-btnRefresh").click(ccn_todo_Refresh);
|
||||
|
||||
// apply i18n
|
||||
ccn_i18n_ApplyLanguage();
|
||||
});
|
||||
|
||||
function ccn_todo_RefreshCacheList() {
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
<div>
|
||||
{{for start=0 end=7 step=1 itemVar="~column"}}
|
||||
<div id="ccn-calendar-calendarItem-{{:~row}}-{{:~column}}">
|
||||
<p><b>1</b></p>
|
||||
<p><small>春分</small></p>
|
||||
<p><span class="icon is-small"><i class="fas fa-tasks"></i></span>114514</p>
|
||||
<p><b id="ccn-calendar-calendarItem-title-{{:~row}}-{{:~column}}"> </b></p>
|
||||
<p><small id="ccn-calendar-calendarItem-desc-{{:~row}}-{{:~column}}"> </small></p>
|
||||
<p><span class="icon is-small"><i class="fas fa-tasks"></i></span id="ccn-calendar-calendarItem-task-{{:~row}}-{{:~column}}"> </p>
|
||||
</div>
|
||||
{{/for}}
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user