1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Add quick connect

This commit is contained in:
Matt Montgomery 2020-04-11 16:24:40 -05:00
parent 0ca38fb37c
commit b43adb7406
3 changed files with 74 additions and 1 deletions

View file

@ -150,6 +150,53 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout
});
}
function loginQuickConnect() {
var apiClient = getApiClient();
var identifier = ""
var interval = 0;
var friendlyName = "test";
$.get('/QuickConnect/Initiate?FriendlyName=' + friendlyName).then(json => {
if (!json.Secret || !json.Code) {
Dashboard.alert({
message: json.Error,
title: "Error"
});
return;
}
Dashboard.alert({
message: "Authorize request " + json.Code + " to continue",
title: "Quick Connect Code"
});
loading.show();
identifier = json.Secret;
interval = setInterval(() => {
$.get('/QuickConnect/Connect?Secret=' + identifier).then(x => {
if(x.Authenticated) {
apiClient.quickConnect(x.Authentication).then((result) => {
var user = result.User;
var serverId = getParameterByName("serverid");
var newUrl;
if (user.Policy.IsAdministrator && !serverId) {
newUrl = "dashboard.html";
} else {
newUrl = "home.html";
}
loading.hide();
Dashboard.onServerChanged(user.Id, result.AccessToken, apiClient);
Dashboard.navigate(newUrl);
clearInterval(interval);
});
}
});
}, 5000);
});
}
view.querySelector("#divUsers").addEventListener("click", function (e) {
var card = dom.parentWithClass(e.target, "card");
var cardContent = card ? card.querySelector(".cardContent") : null;
@ -183,6 +230,7 @@ define(["apphost", "appSettings", "dom", "connectionManager", "loading", "layout
Dashboard.navigate("forgotpassword.html");
});
view.querySelector(".btnCancel").addEventListener("click", showVisualForm);
view.querySelector(".btnQuick").addEventListener("click", loginQuickConnect);
view.querySelector(".btnManual").addEventListener("click", function () {
view.querySelector("#txtManualName").value = "";
showManualForm(view, true);