Files
amnezia-client/client/ui/qml/Components/SubscriptionExpiredDrawer.qml
T

109 lines
3.0 KiB
QML
Raw Normal View History

2026-03-24 17:45:02 +03:00
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import PageEnum 1.0
import Style 1.0
import "../Controls2"
import "../Controls2/TextTypes"
DrawerType2 {
id: root
property bool isRenewalAvailable: false
2026-04-08 11:21:12 +07:00
onOpened: {
isRenewalAvailable = ServersModel.getProcessedServerData("isRenewalAvailable") && !ApiAccountInfoModel.data("isInAppPurchase")
2026-04-08 11:21:12 +07:00
}
2026-03-24 17:45:02 +03:00
expandedStateContent: ColumnLayout {
id: content
anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
spacing: 0
onImplicitHeightChanged: {
root.expandedHeight = content.implicitHeight + 32 + SettingsController.safeAreaBottomMargin
}
Item {
Layout.fillWidth: true
Layout.topMargin: 24
Layout.rightMargin: 16
Layout.leftMargin: 16
implicitHeight: titleText.implicitHeight
Header2TextType {
id: titleText
anchors.left: parent.left
anchors.right: parent.right
2026-03-24 17:45:02 +03:00
text: ServersModel.getProcessedServerData("name") + qsTr(" subscription has expired")
2026-03-24 17:45:02 +03:00
horizontalAlignment: Text.AlignLeft
}
}
ParagraphTextType {
visible: root.isRenewalAvailable
2026-04-08 11:21:12 +07:00
2026-03-24 17:45:02 +03:00
Layout.fillWidth: true
Layout.topMargin: 8
Layout.rightMargin: 16
Layout.leftMargin: 16
2026-04-10 21:24:00 +07:00
text: qsTr("Renew to continue using VPN")
2026-03-24 17:45:02 +03:00
horizontalAlignment: Text.AlignLeft
}
BasicButtonType {
visible: root.isRenewalAvailable
2026-04-08 11:21:12 +07:00
2026-03-24 17:45:02 +03:00
Layout.fillWidth: true
Layout.topMargin: 16
Layout.rightMargin: 16
Layout.leftMargin: 16
text: qsTr("Renew")
defaultColor: AmneziaStyle.color.paleGray
hoveredColor: AmneziaStyle.color.lightGray
pressedColor: AmneziaStyle.color.mutedGray
textColor: AmneziaStyle.color.midnightBlack
clickedFunc: function() {
ApiSettingsController.getRenewalLink()
}
}
BasicButtonType {
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: 8
2026-03-24 17:45:02 +03:00
Layout.bottomMargin: 8
implicitHeight: 25
2026-03-24 17:45:02 +03:00
defaultColor: AmneziaStyle.color.transparent
hoveredColor: AmneziaStyle.color.translucentWhite
pressedColor: AmneziaStyle.color.sheerWhite
textColor: AmneziaStyle.color.goldenApricot
text: qsTr("Support")
clickedFunc: function() {
PageController.showBusyIndicator(true)
let result = ApiSettingsController.getAccountInfo(false)
PageController.showBusyIndicator(false)
if (result) {
root.closeTriggered()
PageController.goToPage(PageEnum.PageSettingsApiSupport)
}
2026-03-24 17:45:02 +03:00
}
}
}
}