19import QtQuick.Controls.Suru 2.2
20import Lomiri.Components 1.3
21import Dekko.Mail.API 1.0
22import Dekko.Mail.Stores.Accounts 1.0
24import Dekko.Lomiri.Components 1.0
25import Dekko.Lomiri.Constants 1.0
28 objectName: "userInputUI"
29 pageHeader.title: AccountSetup.accountDescripion
35 objectName:
"userInputNameField"
37 placeholderText: qsTr(
"Full name")
38 inputMethodHints: Qt.ImhNoPredictiveText
43 objectName:
"descriptionInput"
44 title: qsTr(
"Description")
45 placeholderText: qsTr(
"E.g Home, Work...")
46 inputMethodHints: Qt.ImhNoPredictiveText
51 objectName:
"userInputEmailField"
52 title: qsTr(
"Email address")
53 inputMethodHints: Qt.ImhNoAutoUppercase | Qt.ImhEmailCharactersOnly | Qt.ImhNoPredictiveText
54 placeholderText: qsTr(
"email@example.org")
59 objectName:
"userInputPasswordField"
60 title: qsTr(
"Password")
61 inputMethodHints: Qt.ImhHiddenText | Qt.ImhNoAutoUppercase | Qt.ImhNoPredictiveText
62 echoMode: showPassword.checked ? TextInput.Normal : TextInput.Password
63 placeholderText: qsTr(
"Password")
68 objectName:
"showPwdCheckBox"
69 text: qsTr(
"Show password")
70 textColor: Suru.secondaryForegroundColor
78 previousAction: Action {
80 onTriggered: WizardActions.wizardStepBack()
84 onTriggered: WizardActions.validateUserDetails()
90 property var userDetails
91 runWhen: WizardKeys.validateUserDetails
96 "password": password.text,
97 "nickname": nickname.text
100 WizardActions.validateUser(userDetails)
103 once(WizardKeys.userDetailsValid, function() {
105 Log.logInfo(
"UserInputUI",
"User details valid")
106 WizardActions.setUserDetails(userDetails)
107 name.requiredField =
false
108 email.requiredField =
false
109 WizardActions.wizardStepForward()
113 once(WizardKeys.userDetailsInvalid, function(message) {
115 Log.logInfo(
"UserInputUI::userDetailsInvalid",
"User details invalid")
116 name.requiredField = message.result.indexOf(
"name") > -1
117 email.requiredField = message.result.indexOf(
"email") > -1
118 nickname.requiredField = message.result.indexOf(
"nickname") > -1
122 once(WizardKeys.noPasswordSet, function() {
124 Log.logWarning(
"UserInputUI::noPasswordSet",
"No password set, :-/ asking user if this is what they want")
125 PopupActions.showConfirmationDialog(PopupKeys.popupSetupWizard,
"userinputpwd", qsTr(
"Password empty"), qsTr(
"Would you like to continue?"))
127 }).then(PopupKeys.confirmationDialogConfirmed,function(message) {
128 if (message.id !==
"userinputpwd") {
131 Log.logInfo(
"UserInputUI::confirmationDialogConfirmed",
"Seems they do! Setting validation to allow empty password")
132 WizardActions.setNoPasswordAllowed()
133 WizardActions.validateUserDetails()
136 once(WizardKeys.wizardStepBack, exit.bind(
this, 0))
137 once(WizardKeys.wizardStepForward, exit.bind(this, 0))