79 lines
2.8 KiB
QML
79 lines
2.8 KiB
QML
import QtQuick 2.15
|
||
import QtQuick.Controls 2.15
|
||
import QtQuick.Layouts 1.15
|
||
import QtQml.Models 2.15
|
||
|
||
import StatusQ.Core 0.1
|
||
import StatusQ.Core.Theme 0.1
|
||
import StatusQ.Controls 0.1
|
||
|
||
import utils 1.0
|
||
|
||
CommonContactDialog {
|
||
id: root
|
||
|
||
readonly property bool removeIDVerification: ctrlRemoveIDVerification.checked
|
||
readonly property bool removeContact: ctrlRemoveContact.checked
|
||
|
||
title: qsTr("Block user")
|
||
|
||
readonly property var d: QtObject {
|
||
id: d
|
||
readonly property int outgoingVerificationStatus: contactDetails.verificationStatus
|
||
readonly property int incomingVerificationStatus: contactDetails.incomingVerificationStatus
|
||
readonly property bool isVerificationRequestReceived: incomingVerificationStatus === Constants.verificationStatus.verifying ||
|
||
incomingVerificationStatus === Constants.verificationStatus.verified
|
||
readonly property bool isTrusted: outgoingVerificationStatus === Constants.verificationStatus.trusted ||
|
||
incomingVerificationStatus === Constants.verificationStatus.trusted
|
||
}
|
||
|
||
StatusBaseText {
|
||
Layout.fillWidth: true
|
||
wrapMode: Text.WordWrap
|
||
lineHeight: 22
|
||
lineHeightMode: Text.FixedHeight
|
||
text: qsTr("You will not see %1’s messages but %1 can still see your messages in mutual group chats and communities. %1 will be unable to message you.").arg(mainDisplayName)
|
||
}
|
||
|
||
StatusWarningBox {
|
||
Layout.fillWidth: true
|
||
Layout.topMargin: Style.current.padding
|
||
icon: "warning"
|
||
iconColor: Theme.palette.dangerColor1
|
||
bgColor: Theme.palette.dangerColor1
|
||
borderColor: Theme.palette.dangerColor2
|
||
textColor: Theme.palette.directColor1
|
||
textSize: Theme.secondaryTextFontSize
|
||
text: qsTr("Blocking a user purges the database of all messages that you’ve previously received from %1 in all contexts. This can take a moment.").arg(mainDisplayName)
|
||
}
|
||
|
||
StatusCheckBox {
|
||
Layout.topMargin: Style.current.halfPadding
|
||
id: ctrlRemoveContact
|
||
visible: contactDetails.isContact
|
||
checked: visible
|
||
enabled: false
|
||
text: qsTr("Remove contact")
|
||
}
|
||
|
||
StatusCheckBox {
|
||
id: ctrlRemoveIDVerification
|
||
visible: contactDetails.isContact && !d.isTrusted && d.isVerificationRequestReceived
|
||
checked: visible
|
||
enabled: false
|
||
text: qsTr("Remove ID verification")
|
||
}
|
||
|
||
rightButtons: ObjectModel {
|
||
StatusFlatButton {
|
||
text: qsTr("Cancel")
|
||
onClicked: root.close()
|
||
}
|
||
StatusButton {
|
||
type: StatusBaseButton.Type.Danger
|
||
text: qsTr("Block")
|
||
onClicked: root.accepted()
|
||
}
|
||
}
|
||
}
|