1
0
Files
coconut-leaf/src/static/js/api.js

220 lines
5.2 KiB
JavaScript
Raw Normal View History

2021-01-30 17:30:28 +08:00
// the api use bool to return status: fail: return false, true: return data(including true and false)
// the api use other type to return data: fail: return undefined, true: return data(if the returned value have change be null, return undefined instaed).
2021-01-20 22:57:41 +08:00
// var cached_salt = undefined
/*
2021-01-30 17:30:28 +08:00
function ccn_api_common_salt(_username) {
2021-01-20 22:57:41 +08:00
// true or false
// gotten salt store in cached_salt.
var gotten_data = undefined;
$.ajax({
url: '/api/common/salt',
type: "POST",
async: false,
data: {
username: _username
},
success: function (data) {
gotten_data = data;
}
});
if (IsResponseOK(gotten_data)) {
cached_salt = gotten_data['data'];
return true;
} else return false;
}
2021-01-30 17:30:28 +08:00
function ccn_api_common_login(_username, password) {
2021-01-20 22:57:41 +08:00
// return true or false, token is managed by this js file self.
// if cached_salt is undefined, return false directly
if (typeof(cached_salt) == undefined) return false;
var gotten_data = undefined;
$.ajax({
url: '/api/common/login',
type: "POST",
async: false,
data: {
username: _username,
password: ComputPasswordWithSalt(password, cached_salt)
},
success: function (data) {
gotten_data = data;
}
});
if (IsResponseOK(gotten_data) && gotten_data['data'] != '') {
SetApiToken(gotten_data['data']);
cached_salt = undefined;
return true;
} else return false;
}
*/
2021-01-23 18:37:12 +08:00
// ====================================================== common
2021-01-30 17:30:28 +08:00
function ccn_api_common_webLogin(_username, password) {
2021-01-20 22:57:41 +08:00
var gotten_data = undefined;
$.ajax({
url: '/api/common/webLogin',
type: "POST",
async: false,
data: {
username: _username,
password: password
},
success: function (data) {
gotten_data = data;
}
});
2021-01-23 18:37:12 +08:00
if (IsResponseOK(gotten_data)) {
2021-01-20 22:57:41 +08:00
SetApiToken(gotten_data['data']);
return true;
} else return false;
}
2021-01-30 17:30:28 +08:00
function ccn_api_common_logout() {
2021-01-20 22:57:41 +08:00
// return true or false
var gotten_data = undefined;
$.ajax({
url: '/api/common/logout',
type: "POST",
async: false,
data: {
token: GetApiToken()
},
success: function (data) {
gotten_data = data;
}
});
2021-01-30 17:30:28 +08:00
if (IsResponseOK(gotten_data) && gotten_data['data']) {
2021-01-20 22:57:41 +08:00
SetApiToken('');
return true;
} return false;
}
2021-01-30 17:30:28 +08:00
function ccn_api_common_tokenValid() {
2021-01-20 22:57:41 +08:00
// get from local database first, then judge it via post
// return true or false
var gotten_token = GetApiToken();
if (gotten_token == '') return false;
var gotten_data = undefined;
$.ajax({
url: '/api/common/tokenValid',
type: "POST",
async: false,
data: {
token: GetApiToken()
},
success: function (data) {
gotten_data = data;
}
});
2021-01-30 17:30:28 +08:00
if (IsResponseOK(gotten_data) && gotten_data['data']) return true;
2021-01-20 22:57:41 +08:00
else {
SetApiToken('');
return false;
}
2021-01-23 18:37:12 +08:00
}
// ====================================================== calendar
// ====================================================== collection
// ====================================================== todo
2021-01-30 17:30:28 +08:00
function ccn_api_todo_getFull() {
2021-01-23 18:37:12 +08:00
// return data or undefined
var gotten_data = undefined;
$.ajax({
url: '/api/todo/getFull',
type: "POST",
async: false,
data: {
token: GetApiToken()
},
success: function (data) {
gotten_data = data;
}
});
if (IsResponseOK(gotten_data)) return gotten_data['data'];
else return undefined;
}
2021-01-30 17:30:28 +08:00
function ccn_api_todo_add() {
2021-01-23 18:37:12 +08:00
// return data or undefined
var gotten_data = undefined;
$.ajax({
url: '/api/todo/add',
type: "POST",
async: false,
data: {
token: GetApiToken()
},
success: function (data) {
gotten_data = data;
}
});
if (IsResponseOK(gotten_data)) return gotten_data['data'];
else return undefined;
}
2021-01-30 17:30:28 +08:00
function ccn_api_todo_update(_uuid, _data, _lastChange) {
2021-01-23 18:37:12 +08:00
// return data or undefined
var gotten_data = undefined;
$.ajax({
url: '/api/todo/update',
type: "POST",
async: false,
data: {
token: GetApiToken(),
uuid: _uuid,
data: _data,
lastChange: _lastChange
},
success: function (data) {
gotten_data = data;
}
});
if (IsResponseOK(gotten_data)) return gotten_data['data'];
else return undefined;
}
2021-01-30 17:30:28 +08:00
function ccn_api_todo_delete(_uuid, _lastChange) {
2021-01-23 18:37:12 +08:00
// return true or false
var gotten_data = undefined;
$.ajax({
url: '/api/todo/delete',
type: "POST",
async: false,
data: {
token: GetApiToken(),
uuid: _uuid,
lastChange: _lastChange
},
success: function (data) {
gotten_data = data;
}
});
2021-01-30 17:30:28 +08:00
return (IsResponseOK(gotten_data) && gotten_data['data']);
2021-01-23 18:37:12 +08:00
}
// ====================================================== admin