2020-07-21 21:03:22 +00:00
|
|
|
import QtQuick 2.13
|
2022-03-28 09:38:58 +00:00
|
|
|
import QtQuick.Controls 2.3
|
2020-07-21 21:03:22 +00:00
|
|
|
import QtQuick.Layouts 1.13
|
2021-09-28 15:04:06 +00:00
|
|
|
|
|
|
|
import utils 1.0
|
2021-10-27 21:27:49 +00:00
|
|
|
import shared 1.0
|
|
|
|
import shared.panels 1.0
|
|
|
|
import shared.popups 1.0
|
2024-01-13 03:24:57 +00:00
|
|
|
import shared.stores 1.0
|
2022-03-16 21:20:03 +00:00
|
|
|
import shared.controls.chat 1.0
|
2020-07-21 21:03:22 +00:00
|
|
|
|
2021-10-06 09:16:39 +00:00
|
|
|
import "../popups"
|
2021-12-30 12:39:47 +00:00
|
|
|
import "../stores"
|
2022-06-22 12:16:21 +00:00
|
|
|
import "../controls"
|
|
|
|
import "./profile"
|
2021-10-06 09:16:39 +00:00
|
|
|
|
|
|
|
import StatusQ.Core 0.1
|
2021-09-09 14:03:17 +00:00
|
|
|
import StatusQ.Core.Theme 0.1
|
|
|
|
import StatusQ.Components 0.1
|
2021-10-18 10:34:16 +00:00
|
|
|
import StatusQ.Controls 0.1
|
2021-09-09 14:03:17 +00:00
|
|
|
|
2024-01-13 03:24:57 +00:00
|
|
|
import AppLayouts.Wallet.stores 1.0
|
|
|
|
|
2022-05-07 11:45:15 +00:00
|
|
|
SettingsContentBase {
|
2021-10-06 09:16:39 +00:00
|
|
|
id: root
|
|
|
|
|
2022-06-22 12:16:21 +00:00
|
|
|
property WalletStore walletStore
|
2021-12-30 12:39:47 +00:00
|
|
|
property ProfileStore profileStore
|
2022-06-22 12:16:21 +00:00
|
|
|
property PrivacyStore privacyStore
|
2022-09-27 21:26:26 +00:00
|
|
|
property ContactsStore contactsStore
|
2024-02-02 09:55:56 +00:00
|
|
|
property NetworkConnectionStore networkConnectionStore
|
2024-01-13 03:24:57 +00:00
|
|
|
required property WalletAssetsStore walletAssetsStore
|
|
|
|
required property CurrenciesStore currencyStore
|
|
|
|
|
2023-02-28 15:00:10 +00:00
|
|
|
property var communitiesModel
|
2022-06-22 12:16:21 +00:00
|
|
|
|
|
|
|
titleRowComponentLoader.sourceComponent: StatusButton {
|
2022-08-24 09:51:20 +00:00
|
|
|
objectName: "profileSettingsChangePasswordButton"
|
2022-06-22 12:16:21 +00:00
|
|
|
text: qsTr("Change Password")
|
2023-05-23 12:46:16 +00:00
|
|
|
onClicked: Global.openPopup(changePasswordModal)
|
2022-09-26 11:57:32 +00:00
|
|
|
enabled: !userProfile.isKeycardUser
|
2022-06-22 12:16:21 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
dirty: settingsView.dirty
|
|
|
|
saveChangesButtonEnabled: settingsView.valid
|
|
|
|
|
2022-09-27 21:26:26 +00:00
|
|
|
onResetChangesClicked: {
|
|
|
|
settingsView.reset()
|
|
|
|
profilePreview.reload()
|
|
|
|
}
|
|
|
|
onSaveChangesClicked: {
|
|
|
|
settingsView.save()
|
|
|
|
profilePreview.reload()
|
|
|
|
}
|
2020-07-21 21:03:22 +00:00
|
|
|
|
2022-10-20 13:41:18 +00:00
|
|
|
bottomHeaderComponents: StatusTabBar {
|
|
|
|
id: editPreviwTabBar
|
|
|
|
StatusTabButton {
|
2023-09-22 09:58:02 +00:00
|
|
|
leftPadding: 0
|
2022-10-20 13:41:18 +00:00
|
|
|
width: implicitWidth
|
|
|
|
text: qsTr("Edit")
|
|
|
|
}
|
|
|
|
StatusTabButton {
|
|
|
|
width: implicitWidth
|
|
|
|
text: qsTr("Preview")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-05-07 11:45:15 +00:00
|
|
|
ColumnLayout {
|
2022-06-22 12:16:21 +00:00
|
|
|
id: layout
|
2022-05-07 11:45:15 +00:00
|
|
|
spacing: Constants.settingsSection.itemSpacing
|
|
|
|
width: root.contentWidth
|
2020-07-21 21:03:22 +00:00
|
|
|
|
2022-06-22 12:16:21 +00:00
|
|
|
StackLayout {
|
2022-11-11 16:46:35 +00:00
|
|
|
id: stackLayout
|
2022-06-22 12:16:21 +00:00
|
|
|
currentIndex: editPreviwTabBar.currentIndex
|
2020-07-21 21:03:22 +00:00
|
|
|
|
2022-06-22 12:16:21 +00:00
|
|
|
MyProfileSettingsView {
|
|
|
|
id: settingsView
|
2022-11-29 10:30:51 +00:00
|
|
|
objectName: "myProfileSettingsView"
|
2022-06-22 12:16:21 +00:00
|
|
|
profileStore: root.profileStore
|
|
|
|
privacyStore: root.privacyStore
|
|
|
|
walletStore: root.walletStore
|
2023-02-28 15:00:10 +00:00
|
|
|
communitiesModel: root.communitiesModel
|
2024-01-13 03:24:57 +00:00
|
|
|
walletAssetsStore: root.walletAssetsStore
|
|
|
|
currencyStore: root.currencyStore
|
2022-11-11 16:46:35 +00:00
|
|
|
|
|
|
|
onVisibleChanged: if (visible) stackLayout.Layout.preferredHeight = settingsView.implicitHeight
|
|
|
|
Component.onCompleted: stackLayout.Layout.preferredHeight = Qt.binding(() => settingsView.implicitHeight)
|
2022-05-07 11:45:15 +00:00
|
|
|
}
|
2022-03-16 21:20:03 +00:00
|
|
|
|
2022-06-22 12:16:21 +00:00
|
|
|
MyProfilePreview {
|
|
|
|
id: profilePreview
|
2022-11-11 16:46:35 +00:00
|
|
|
|
2022-06-22 12:16:21 +00:00
|
|
|
profileStore: root.profileStore
|
2022-09-27 21:26:26 +00:00
|
|
|
contactsStore: root.contactsStore
|
2024-02-02 09:55:56 +00:00
|
|
|
networkConnectionStore: root.networkConnectionStore
|
2023-02-28 15:00:10 +00:00
|
|
|
communitiesModel: root.communitiesModel
|
2022-11-08 18:30:50 +00:00
|
|
|
dirtyValues: settingsView.dirtyValues
|
|
|
|
dirty: settingsView.dirty
|
2022-11-11 16:46:35 +00:00
|
|
|
|
|
|
|
onVisibleChanged: if (visible) stackLayout.Layout.preferredHeight = Qt.binding(() => profilePreview.implicitHeight)
|
2022-05-07 11:45:15 +00:00
|
|
|
}
|
2022-03-16 21:20:03 +00:00
|
|
|
}
|
|
|
|
|
2023-05-23 12:46:16 +00:00
|
|
|
Component {
|
2022-06-22 12:16:21 +00:00
|
|
|
id: changePasswordModal
|
2023-05-23 12:46:16 +00:00
|
|
|
ChangePasswordModal {
|
|
|
|
privacyStore: root.privacyStore
|
|
|
|
onPasswordChanged: Global.openPopup(successPopup);
|
|
|
|
}
|
2020-07-21 21:03:22 +00:00
|
|
|
}
|
|
|
|
|
2023-05-23 12:46:16 +00:00
|
|
|
Component {
|
2022-06-22 12:16:21 +00:00
|
|
|
id: successPopup
|
2023-05-23 12:46:16 +00:00
|
|
|
ChangePasswordSuccessModal { }
|
2020-08-19 21:01:22 +00:00
|
|
|
}
|
|
|
|
}
|
2020-07-21 21:03:22 +00:00
|
|
|
}
|