173 lines
4.9 KiB
JavaScript
173 lines
4.9 KiB
JavaScript
let apiUri = `http://${window.location.host.split(':')[0]}:6531`
|
|
|
|
if(getCookie("apiUri") != ""){
|
|
apiUri = getCookie("apiUri");
|
|
}
|
|
function getCookie(cname) {
|
|
let name = cname + "=";
|
|
let decodedCookie = decodeURIComponent(document.cookie);
|
|
let ca = decodedCookie.split(';');
|
|
for(let i = 0; i < ca.length; i++) {
|
|
let c = ca[i];
|
|
while (c.charAt(0) == ' ') {
|
|
c = c.substring(1);
|
|
}
|
|
if (c.indexOf(name) == 0) {
|
|
return c.substring(name.length, c.length);
|
|
}
|
|
}
|
|
return "";
|
|
}
|
|
|
|
async function GetData(uri){
|
|
let request = await fetch(uri, {
|
|
method: 'GET',
|
|
headers: {
|
|
'Accept': 'application/json'
|
|
}
|
|
});
|
|
let json = await request.json();
|
|
return json;
|
|
}
|
|
|
|
function PostData(uri){
|
|
fetch(uri, {
|
|
method: 'POST'
|
|
});
|
|
}
|
|
|
|
function DeleteData(uri){
|
|
fetch(uri, {
|
|
method: 'DELETE'
|
|
});
|
|
}
|
|
|
|
async function GetAvailableControllers(){
|
|
var uri = apiUri + "/Connectors";
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
async function GetPublicationFromConnector(connectorName, title){
|
|
var uri = apiUri + `/Publications/FromConnector?connectorName=${connectorName}&title=${title}`;
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
async function GetKnownPublications(){
|
|
var uri = apiUri + "/Publications/Known";
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
async function GetPublication(internalId){
|
|
var uri = apiUri + `/Publications/Known?internalId=${internalId}`;
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
async function GetChapters(internalId, connectorName, onlyNew, language){
|
|
var uri = apiUri + `/Publications/Chapters?internalId=${internalId}&connectorName=${connectorName}&onlyNew=${onlyNew}&language=${language}`;
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
async function GetTaskTypes(){
|
|
var uri = apiUri + "/Tasks/Types";
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
async function GetRunningTasks(){
|
|
var uri = apiUri + "/Tasks/RunningTasks";
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
async function GetDownloadTasks(){
|
|
var uri = apiUri + "/Tasks?taskType=MonitorPublication";
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
async function GetSettings(){
|
|
var uri = apiUri + "/Settings";
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
async function GetKomgaTask(){
|
|
var uri = apiUri + "/Tasks?taskType=UpdateLibraries";
|
|
let json = await GetData(uri);
|
|
return json;
|
|
}
|
|
|
|
function CreateMonitorTask(connectorName, internalId, reoccurrence, language){
|
|
var uri = apiUri + `/Tasks/CreateMonitorTask?connectorName=${connectorName}&internalId=${internalId}&reoccurrenceTime=${reoccurrence}&language=${language}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function CreateUpdateLibraryTask(reoccurrence){
|
|
var uri = apiUri + `/Tasks/CreateUpdateLibraryTask?reoccurrenceTime=${reoccurrence}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function CreateDownloadChaptersTask(connectorName, internalId, chapters, language){
|
|
var uri = apiUri + `/Tasks/CreateDownloadChaptersTask?connectorName=${connectorName}&internalId=${internalId}&chapters=${chapters}&language=${language}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function StartTask(taskType, connectorName, internalId){
|
|
var uri = apiUri + `/Tasks/Start?taskType=${taskType}&connectorName=${connectorName}&internalId=${internalId}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function EnqueueTask(taskType, connectorName, publicationId){
|
|
var uri = apiUri + `/Queue/Enqueue?taskType=${taskType}&connectorName=${connectorName}&publicationId=${publicationId}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function UpdateDownloadLocation(downloadLocation){
|
|
var uri = apiUri + "/Settings/Update?"
|
|
uri += "&downloadLocation="+downloadLocation;
|
|
PostData(uri);
|
|
}
|
|
|
|
function UpdateKomga(komgaUrl, komgaAuth){
|
|
var uri = apiUri + "/Settings/Update?"
|
|
uri += `&komgaUrl=${komgaUrl}&komgaAuth=${komgaAuth}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function UpdateKavita(kavitaUrl, kavitaUser, kavitaPass){
|
|
var uri = apiUri + "/Settings/Update?"
|
|
uri += `&kavitaUrl=${kavitaUrl}&kavitaUsername=${kavitaUser}&kavitaPassword=${kavitaPass}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function UpdateGotify(gotifyUrl, gotifyAppToken){
|
|
var uri = apiUri + "/Settings/Update?"
|
|
uri += `&gotifyUrl=${gotifyUrl}&gotifyAppToken=${gotifyAppToken}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function UpdateLunaSea(lunaseaWebhook){
|
|
var uri = apiUri + "/Settings/Update?"
|
|
uri += `&lunaseaWebhook=${lunaseaWebhook}`;
|
|
PostData(uri);
|
|
}
|
|
|
|
function DeleteTask(taskType, connectorName, publicationId){
|
|
var uri = apiUri + `/Tasks?taskType=${taskType}&connectorName=${connectorName}&publicationId=${publicationId}`;
|
|
DeleteData(uri);
|
|
}
|
|
|
|
function DequeueTask(taskType, connectorName, publicationId){
|
|
var uri = apiUri + `/Queue/Dequeue?taskType=${taskType}&connectorName=${connectorName}&publicationId=${publicationId}`;
|
|
DeleteData(uri);
|
|
}
|
|
|
|
async function GetQueue(){
|
|
var uri = apiUri + "/Queue/List";
|
|
let json = await GetData(uri);
|
|
return json;
|
|
} |