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

107 lines
3.0 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.controls 1.0
import StatusQ.Core 0.1
import StatusQ.Core.Theme 0.1
import StatusQ.Popups 0.1
import StatusQ.Controls 0.1 as StatusQControls
StatusModal {
id: root
2021-02-12 18:19:31 +00:00
width: 400
height: 400
2020-12-18 20:55:33 +00:00
property var store
property string error: ""
property string keyValidationError: ""
property string communityKey: ""
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"
header.title: qsTrId("access-existing-community")
2020-12-18 20:55:33 +00:00
2021-02-12 18:19:31 +00:00
onClosed: {
root.destroy();
2020-12-18 20:55:33 +00:00
}
contentItem: Item {
width: root.width - 32
anchors.left: parent.left
anchors.right: parent.right
anchors.leftMargin: 16
anchors.rightMargin: 16
height: childrenRect.height
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
anchors.left: parent.left
anchors.right: parent.right
2021-02-12 18:19:31 +00:00
}
2020-12-18 20:55:33 +00:00
StatusBaseText {
2021-02-12 18:19:31 +00:00
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: Theme.palette.baseColor1
2021-02-12 18:19:31 +00:00
}
2020-12-18 20:55:33 +00:00
}
rightButtons: [
StatusQControls.StatusButton {
//% "Import"
text: qsTrId("import")
onClicked: {
if (!validate()) {
return;
}
2020-12-18 20:55:33 +00:00
communityKey = keyInput.text.trim();
if (!communityKey.startsWith("0x")) {
communityKey = "0x" + communityKey;
}
2020-12-18 20:55:33 +00:00
root.error = root.store.chatsModelInst.communities.importCommunity(communityKey, Utils.uuid())
if (!!root.error) {
creatingError.text = error;
return creatingError.open();
}
2020-12-18 20:55:33 +00:00
root.close();
}
2020-12-18 20:55:33 +00:00
MessageDialog {
id: creatingError
//% "Error importing the community"
title: qsTrId("error-importing-the-community")
icon: StandardIcon.Critical
standardButtons: StandardButton.Ok
}
2020-12-18 20:55:33 +00:00
}
]
2020-12-18 20:55:33 +00:00
}