Skip to content
Snippets Groups Projects
Unverified Commit e217f990 authored by Kali Kaneko's avatar Kali Kaneko
Browse files

[feat] improve phrasing for login dialog, split into its own file

parent a40434d4
No related branches found
No related tags found
No related merge requests found
......@@ -6,6 +6,7 @@
<file>qml/DonateDialog.qml</file>
<file>qml/LoginDialog.qml</file>
<file>qml/LoginOKDialog.qml</file>
<file>qml/FailDialog.qml</file>
<file>assets/icon/png/black/vpn_off.png</file>
<file>assets/icon/png/black/vpn_on.png</file>
......
......@@ -18,4 +18,4 @@
"timeStamp": "2020-09-08 03:42:39"
}
]
}
\ No newline at end of file
}
import QtQuick 2.0
import QtQuick.Dialogs 1.2
MessageDialog {
title: qsTr("Initialization Error")
modality: Qt.NonModal
text: ""
onAccepted: retryOrQuit()
onRejected: retryOrQuit()
Component.onCompleted: {
buttons: MessageDialog.Ok
}
function retryOrQuit() {
if (ctx.loginDialog == 'true') {
login.visible = true
} else {
backend.quit()
}
}
}
......@@ -5,10 +5,15 @@ import QtQuick.Controls 1.4
Dialog {
standardButtons: StandardButton.Ok
title: qsTr("Login")
Column {
anchors.fill: parent
Text {
text: qsTr("Log in with your library credentials")
text: getLoginText()
font.bold: true
}
Text {
text: getDetailedText()
}
TextField {
id: username
......@@ -25,4 +30,16 @@ Dialog {
visible: false
onAccepted: backend.login(username.text, password.text)
onRejected: backend.quit()
function getLoginText() {
if (allowEmptyPass) {
return qsTr("Enter your Patron ID")
} else {
return qsTr("Log in with your library credentials")
}
}
function getDetailedText() {
return qsTr("You can check your Patron ID number in the back of your library card")
}
}
......@@ -37,16 +37,30 @@ ApplicationWindow {
} else if ( ctx.errors == "nopolkit" ) {
showInitFailure(qsTr("Could not find polkit agent."))
} else {
//: %1 -> application name
//: %2 -> error string
showInitFailure(qsTr("Got an error starting %1: %2").arg(ctx.appName).arg(ctx.errors))
console.debug(ctx.errors)
showInitFailure()
}
}
}
}
function showInitFailure(msg) {
console.debug("ERRORS:", ctx.errors)
if (msg == undefined) {
if (ctx.errors == 'bad_auth') {
if (allowEmptyPass) {
// For now, this is a libraryVPN, so we can be explicit about what credentials are here.
// Another option to consider is to customize the error strings while vendoring.
msg = qsTr("Please check your Patron ID")
} else {
msg = qsTr("Could not log in with those credentials, please retry")
}
initFailure.title = qsTr("Login Error")
} else {
//: %1 -> application name
//: %2 -> error string
msg = qsTr("Got an error starting %1: %2").arg(ctx.appName).arg(ctx.errors)
}
}
initFailure.text = msg
initFailure.visible = true
}
......@@ -249,6 +263,7 @@ ApplicationWindow {
id: about
visible: false
}
LoginDialog {
id: login
......@@ -279,22 +294,8 @@ ApplicationWindow {
visible: false
}
MessageDialog {
FailDialog {
id: initFailure
buttons: MessageDialog.Ok
modality: Qt.NonModal
title: qsTr("Initialization Error")
text: ""
visible: false
onAccepted: retryOrQuit()
onRejected: retryOrQuit()
function retryOrQuit() {
if (ctx.loginDialog == 'true') {
login.visible = true
} else {
backend.quit()
}
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment