summaryrefslogtreecommitdiffstats
path: root/resources/qml/device-verification/NewVerificationRequest.qml
blob: b37c4641fb363a91cfe766403adf906bd20ad1d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import QtQuick 2.3
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.10
import im.nheko 1.0

Pane {
    property string title: flow.sender ? qsTr("Send Verification Request") : qsTr("Received Verification Request")

    ColumnLayout {
        spacing: 16

        Label {
            // Self verification

            Layout.maximumWidth: 400
            Layout.fillHeight: true
            Layout.fillWidth: true
            wrapMode: Text.Wrap
            text: {
                if (flow.sender) {
                    if (flow.isSelfVerification)
                        return qsTr("To allow other users to see, which of your devices actually belong to you, you can verify them. This also allows key backup to work automatically. Verify %1 now?").arg(flow.deviceId);
                    else
                        return qsTr("To ensure that no malicious user can eavesdrop on your encrypted communications you can verify the other party.");
                } else {
                    if (!flow.isSelfVerification && flow.isDeviceVerification)
                        return qsTr("%1 has requested to verify their device %2.").arg(flow.userId).arg(flow.deviceId);
                    else if (!flow.isSelfVerification && !flow.isDeviceVerification)
                        return qsTr("%1 using the device %2 has requested to be verified.").arg(flow.userId).arg(flow.deviceId);
                    else
                        return qsTr("Your device (%1) has requested to be verified.").arg(flow.deviceId);
                }
            }
            color: colors.text
            verticalAlignment: Text.AlignVCenter
        }

        RowLayout {
            Button {
                Layout.alignment: Qt.AlignLeft
                text: flow.sender ? qsTr("Cancel") : qsTr("Deny")
                onClicked: {
                    flow.cancel();
                    dialog.close();
                }
            }

            Item {
                Layout.fillWidth: true
            }

            Button {
                Layout.alignment: Qt.AlignRight
                text: flow.sender ? qsTr("Start verification") : qsTr("Accept")
                onClicked: flow.next()
            }

        }

    }

}