Warning, /network/tokodon/src/content/ui/LoginFlow/RulesPage.qml is written in an unsupported language. File is not indexed.
0001 // SPDX-FileCopyrightText: 2023 Joshua Goins <josh@redstrate.com> 0002 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0003 0004 import QtQuick 0005 import org.kde.kirigami 2 as Kirigami 0006 import QtQuick.Controls 2 as QQC2 0007 import QtQuick.Layouts 0008 import QtQml.Models 0009 0010 import org.kde.kirigamiaddons.formcard 1 as FormCard 0011 import org.kde.kirigamiaddons.components 1 as Components 0012 0013 import org.kde.tokodon 0014 0015 MastoPage { 0016 id: root 0017 0018 title: i18nc("@title:window", "Rules") 0019 0020 required property var account 0021 0022 data: [ 0023 Connections { 0024 target: Controller 0025 function onNetworkErrorOccurred(error) { 0026 message.text = i18nc("@info:status Network status", "Failed to contact server: %1. Please check your proxy settings.", error) 0027 message.visible = true; 0028 } 0029 } 0030 ] 0031 0032 header: Components.Banner { 0033 id: message 0034 type: Kirigami.MessageType.Error 0035 width: parent.width 0036 0037 showCloseButton: true 0038 0039 actions: Kirigami.Action { 0040 text: i18n("Proxy Settings") 0041 icon.name: "settings-configure" 0042 onTriggered: pageStack.pushDialogLayer(Qt.createComponent("org.kde.tokodon", "NetworkProxyPage")) 0043 } 0044 } 0045 0046 FormCard.FormHeader { 0047 title: i18nc("@title:group", "Rules") 0048 } 0049 0050 FormCard.FormCard { 0051 Repeater { 0052 model: RulesModel { 0053 account: root.account 0054 } 0055 0056 delegate: ColumnLayout { 0057 id: ruleLayout 0058 0059 required property int index 0060 required property string text 0061 0062 spacing: 0 0063 0064 FormCard.FormDelegateSeparator { 0065 visible: index !== 0 0066 } 0067 0068 FormCard.FormTextDelegate { 0069 text: ruleLayout.text 0070 } 0071 } 0072 } 0073 } 0074 0075 FormCard.FormCard { 0076 Layout.topMargin: Kirigami.Units.largeSpacing 0077 0078 FormCard.FormButtonDelegate { 0079 id: agreeButton 0080 0081 text: i18nc("@action:button Agree to server rules", "Agree") 0082 icon.name: "dialog-ok" 0083 0084 onClicked: { 0085 root.Window.window.pageStack.layers.push(Qt.createComponent("org.kde.tokodon", "RegistrationPage"), { 0086 account: account, 0087 }); 0088 } 0089 } 0090 0091 FormCard.FormDelegateSeparator { 0092 above: agreeButton 0093 below: disagreeButton 0094 } 0095 0096 FormCard.FormButtonDelegate { 0097 id: disagreeButton 0098 0099 text: i18nc("@action:button Disagree to server rules", "Disagree") 0100 icon.name: "dialog-cancel" 0101 0102 onClicked: root.Window.window.pageStack.layers.pop() 0103 } 0104 } 0105 }