mirror of
https://github.com/hrfee/jfa-go.git
synced 2024-12-22 09:00:10 +00:00
add reset link option to setup
This commit is contained in:
parent
af61549bf1
commit
43effd0c32
13
api.go
13
api.go
@ -1805,22 +1805,27 @@ func (app *appContext) Logout(gc *gin.Context) {
|
|||||||
func (app *appContext) GetLanguages(gc *gin.Context) {
|
func (app *appContext) GetLanguages(gc *gin.Context) {
|
||||||
page := gc.Param("page")
|
page := gc.Param("page")
|
||||||
resp := langDTO{}
|
resp := langDTO{}
|
||||||
if page == "form" {
|
switch page {
|
||||||
|
case "form":
|
||||||
for key, lang := range app.storage.lang.Form {
|
for key, lang := range app.storage.lang.Form {
|
||||||
resp[key] = lang.Meta.Name
|
resp[key] = lang.Meta.Name
|
||||||
}
|
}
|
||||||
} else if page == "admin" {
|
case "admin":
|
||||||
for key, lang := range app.storage.lang.Admin {
|
for key, lang := range app.storage.lang.Admin {
|
||||||
resp[key] = lang.Meta.Name
|
resp[key] = lang.Meta.Name
|
||||||
}
|
}
|
||||||
} else if page == "setup" {
|
case "setup":
|
||||||
for key, lang := range app.storage.lang.Setup {
|
for key, lang := range app.storage.lang.Setup {
|
||||||
resp[key] = lang.Meta.Name
|
resp[key] = lang.Meta.Name
|
||||||
}
|
}
|
||||||
} else if page == "email" {
|
case "email":
|
||||||
for key, lang := range app.storage.lang.Email {
|
for key, lang := range app.storage.lang.Email {
|
||||||
resp[key] = lang.Meta.Name
|
resp[key] = lang.Meta.Name
|
||||||
}
|
}
|
||||||
|
case "pwr":
|
||||||
|
for key, lang := range app.storage.lang.PasswordReset {
|
||||||
|
resp[key] = lang.Meta.Name
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if len(resp) == 0 {
|
if len(resp) == 0 {
|
||||||
respond(500, "Couldn't get languages", gc)
|
respond(500, "Couldn't get languages", gc)
|
||||||
|
@ -376,7 +376,18 @@
|
|||||||
<input type="text" class="input ~neutral !normal mt-half" id="password_resets-watch_directory" placeholder="/config/jellyfin">
|
<input type="text" class="input ~neutral !normal mt-half" id="password_resets-watch_directory" placeholder="/config/jellyfin">
|
||||||
<p class="support mb-1">{{ .lang.PasswordResets.pathToJellyfinNotice }}</p>
|
<p class="support mb-1">{{ .lang.PasswordResets.pathToJellyfinNotice }}</p>
|
||||||
</label>
|
</label>
|
||||||
<label class="label">
|
<label class="switch">
|
||||||
|
<input type="checkbox" id="password_resets-link_reset"><span>{{ .lang.PasswordResets.resetLinks }}</span>
|
||||||
|
<p class="support mb-1">{{ .lang.PasswordResets.resetLinksNotice }}</p>
|
||||||
|
</label>
|
||||||
|
<label class="row label">
|
||||||
|
<p class="mt-half">{{ .lang.PasswordResets.resetLinksLanguage }}</p>
|
||||||
|
<div class="select ~neutral !normal mt-half mb-1">
|
||||||
|
<select id="password_resets-language">
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</label>
|
||||||
|
<label class="row label">
|
||||||
<span class="mt-half">{{ .lang.Strings.emailSubject }}</span>
|
<span class="mt-half">{{ .lang.Strings.emailSubject }}</span>
|
||||||
<input type="text" class="input ~neutral !normal mt-half mb-1" id="password_resets-subject" placeholder="{{ .emailLang.PasswordReset.title }}">
|
<input type="text" class="input ~neutral !normal mt-half mb-1" id="password_resets-subject" placeholder="{{ .emailLang.PasswordReset.title }}">
|
||||||
</label>
|
</label>
|
||||||
|
@ -76,7 +76,7 @@
|
|||||||
},
|
},
|
||||||
"ombi": {
|
"ombi": {
|
||||||
"title": "Ombi",
|
"title": "Ombi",
|
||||||
"description": "By connecting to Ombi, both a Jellyfin and Ombi account will be created when a user joins through jfa-go. After setup if finished, go to Settings to set a default profile for new ombi users.",
|
"description": "By connecting to Ombi, both a Jellyfin and Ombi account will be created when a user joins through jfa-go. After setup is finished, go to Settings to set a default profile for new ombi users.",
|
||||||
"apiKeyNotice": "Find this in the first tab of Ombi settings."
|
"apiKeyNotice": "Find this in the first tab of Ombi settings."
|
||||||
},
|
},
|
||||||
"email": {
|
"email": {
|
||||||
@ -108,7 +108,10 @@
|
|||||||
"title": "Password Resets",
|
"title": "Password Resets",
|
||||||
"description": "When a user tries to reset their password, Jellyfin creates a file named 'passwordreset-*.json' which contains a PIN. jfa-go reads the file and sends the PIN to the user.",
|
"description": "When a user tries to reset their password, Jellyfin creates a file named 'passwordreset-*.json' which contains a PIN. jfa-go reads the file and sends the PIN to the user.",
|
||||||
"pathToJellyfin": "Path to Jellyfin configuration directory",
|
"pathToJellyfin": "Path to Jellyfin configuration directory",
|
||||||
"pathToJellyfinNotice": "If you don't know where this is, try resetting your password in Jellyfin. A popup with '<path to jellyfin>/passwordreset-*.json' will appear."
|
"pathToJellyfinNotice": "If you don't know where this is, try resetting your password in Jellyfin. A popup with '<path to jellyfin>/passwordreset-*.json' will appear.",
|
||||||
|
"resetLinks": "Send a link instead of a PIN",
|
||||||
|
"resetLinksNotice": "If Ombi integration is enabled, use this to sync Jellyfin password resets with Ombi.",
|
||||||
|
"resetLinksLanguage": "Default reset link language"
|
||||||
},
|
},
|
||||||
"passwordValidation": {
|
"passwordValidation": {
|
||||||
"title": "Password Validation",
|
"title": "Password Validation",
|
||||||
|
@ -187,8 +187,8 @@ class Select {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class LangSelect extends Select {
|
class LangSelect extends Select {
|
||||||
constructor(page: string, el: HTMLElement) {
|
constructor(page: string, el: HTMLElement, depends?: string, dependsTrue?: boolean, section?: string, setting?: string) {
|
||||||
super(el);
|
super(el, depends, dependsTrue, section, setting);
|
||||||
_get("/lang/" + page, null, (req: XMLHttpRequest) => {
|
_get("/lang/" + page, null, (req: XMLHttpRequest) => {
|
||||||
if (req.readyState == 4 && req.status == 200) {
|
if (req.readyState == 4 && req.status == 200) {
|
||||||
for (let code in req.response) {
|
for (let code in req.response) {
|
||||||
@ -256,7 +256,9 @@ const settings = {
|
|||||||
"password_resets": {
|
"password_resets": {
|
||||||
"enabled": new Checkbox(get("password_resets-enabled"), "", false, "password_resets", "enabled"),
|
"enabled": new Checkbox(get("password_resets-enabled"), "", false, "password_resets", "enabled"),
|
||||||
"watch_directory": new Input(get("password_resets-watch_directory"), "", "", "enabled", true, "password_resets"),
|
"watch_directory": new Input(get("password_resets-watch_directory"), "", "", "enabled", true, "password_resets"),
|
||||||
"subject": new Input(get("password_resets-subject"), "", "", "enabled", true, "password_resets")
|
"subject": new Input(get("password_resets-subject"), "", "", "enabled", true, "password_resets"),
|
||||||
|
"link_reset": new Checkbox(get("password_resets-link_reset"), "enabled", true, "password_resets", "link_reset"),
|
||||||
|
"language": new LangSelect("pwr", get("password_resets-language"), "link_reset", true, "password_resets", "language")
|
||||||
},
|
},
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"enabled": new Checkbox(get("notifications-enabled"))
|
"enabled": new Checkbox(get("notifications-enabled"))
|
||||||
|
Loading…
Reference in New Issue
Block a user