mirror of https://github.com/Nheko-Reborn/nheko
parent
bbfbba30b0
commit
bb971b0575
@ -0,0 +1,85 @@ |
||||
// SPDX-FileCopyrightText: Nheko Contributors |
||||
// |
||||
// SPDX-License-Identifier: GPL-3.0-or-later |
||||
|
||||
import QtQuick |
||||
import QtQuick.Controls |
||||
import QtQuick.Layouts |
||||
import im.nheko |
||||
|
||||
ApplicationWindow { |
||||
required property string eventId |
||||
|
||||
width: 400 |
||||
height: gl.implicitHeight + 2 * Nheko.paddingMedium |
||||
title: qsTr("Report message") |
||||
|
||||
GridLayout { |
||||
id: gl |
||||
|
||||
columnSpacing: Nheko.paddingMedium |
||||
rowSpacing: Nheko.paddingMedium |
||||
columns: 2 |
||||
anchors.fill: parent |
||||
anchors.margins: Nheko.paddingMedium |
||||
|
||||
Label { |
||||
Layout.columnSpan: 2 |
||||
Layout.fillWidth: true |
||||
wrapMode: Label.WordWrap |
||||
text: qsTr("This message you are reporting will be sent to your server administrator for review. Please note that not all server administrators review reported content. You should also ask a room moderator to remove the content if necessary.") |
||||
} |
||||
|
||||
Label { |
||||
text: qsTr("Enter your reason for reporting:") |
||||
} |
||||
|
||||
TextField { |
||||
id: reason |
||||
|
||||
Layout.fillWidth: true |
||||
} |
||||
|
||||
Label { |
||||
text: qsTr("How bad is the message?") |
||||
} |
||||
|
||||
Slider { |
||||
id: score |
||||
|
||||
from: 0 |
||||
to: -100 |
||||
stepSize: 25 |
||||
snapMode: Slider.SnapAlways |
||||
Layout.fillWidth: true |
||||
} |
||||
|
||||
Item {} |
||||
|
||||
Label { |
||||
text: { |
||||
if (score.value === 0) |
||||
return qsTr("Not bad") |
||||
else if (score.value === -25) |
||||
return qsTr("Mild") |
||||
else if (score.value === -50) |
||||
return qsTr("Bad") |
||||
else if (score.value === -75) |
||||
return qsTr("Serious") |
||||
else if (score.value === -100) |
||||
return qsTr("Extremely serious") |
||||
} |
||||
} |
||||
|
||||
DialogButtonBox { |
||||
Layout.columnSpan: 2 |
||||
Layout.alignment: Qt.AlignRight |
||||
standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel |
||||
onAccepted: { |
||||
room.reportEvent(eventId, reason.text, score.value); |
||||
close(); |
||||
} |
||||
onRejected: close() |
||||
} |
||||
} |
||||
} |
Loading…
Reference in new issue