status-desktop/ui/app/AppLayouts/Chat/popups/community/AccessExistingCommunityPopu...

97 lines
2.6 KiB
QML
Raw Normal View History

2020-12-18 20:55:33 +00:00
import QtQuick 2.12
import QtQuick.Controls 2.3
import QtGraphicalEffects 1.13
import QtQuick.Dialogs 1.3
import utils 1.0
import "../../../../../shared"
import "../../../../../shared/popups"
import "../../../../../shared/controls"
import "../../../../../shared/panels"
import "../../../../../shared/status"
2020-12-18 20:55:33 +00:00
// TODO: replace with StatusModal
2020-12-18 20:55:33 +00:00
ModalPopup {
id: popup
2021-02-12 18:19:31 +00:00
width: 400
height: 400
2020-12-18 20:55:33 +00:00
property string keyValidationError: ""
function validate() {
keyValidationError = ""
if (keyInput.text.trim() === "") {
//% "You need to enter a key"
keyValidationError = qsTrId("you-need-to-enter-a-key")
}
return !keyValidationError
}
//% "Access existing community"
title: qsTrId("access-existing-community")
2020-12-18 20:55:33 +00:00
2021-02-12 18:19:31 +00:00
onClosed: {
popup.destroy();
2020-12-18 20:55:33 +00:00
}
2021-02-12 18:19:31 +00:00
Item {
anchors.fill: parent
2020-12-18 20:55:33 +00:00
2021-02-12 18:19:31 +00:00
StyledTextArea {
id: keyInput
//% "Community private key"
label: qsTrId("community-key")
2021-02-12 18:19:31 +00:00
placeholderText: "0x0..."
customHeight: 110
}
2020-12-18 20:55:33 +00:00
2021-02-12 18:19:31 +00:00
StyledText {
id: infoText1
//% "Entering a community key will grant you the ownership of that community. Please be responsible with it and dont share the key with people you dont trust."
text: qsTrId("entering-a-community-key-will-grant-you-the-ownership-of-that-community--please-be-responsible-with-it-and-don-t-share-the-key-with-people-you-don-t-trust-")
anchors.top: keyInput.bottom
2021-02-12 18:19:31 +00:00
wrapMode: Text.WordWrap
anchors.topMargin: Style.current.bigPadding
width: parent.width
font.pixelSize: 13
color: Style.current.secondaryText
}
2020-12-18 20:55:33 +00:00
}
footer: StatusButton {
2021-02-12 18:19:31 +00:00
id: btnBack
//% "Import"
text: qsTrId("import")
2020-12-18 20:55:33 +00:00
anchors.right: parent.right
onClicked: {
if (!validate()) {
return
}
let communityKey = keyInput.text.trim()
2020-12-18 20:55:33 +00:00
if (!communityKey.startsWith("0x")) {
communityKey = "0x" + communityKey
}
const error = chatsModel.communities.importCommunity(communityKey, Utils.uuid())
2020-12-18 20:55:33 +00:00
if (error) {
creatingError.text = error
return creatingError.open()
}
2020-12-22 20:23:21 +00:00
popup.close()
2020-12-18 20:55:33 +00:00
}
MessageDialog {
id: creatingError
//% "Error importing the community"
title: qsTrId("error-importing-the-community")
2020-12-18 20:55:33 +00:00
icon: StandardIcon.Critical
standardButtons: StandardButton.Ok
}
}
}