2024-02-08 16:59:53 +00:00
|
|
|
import QtQuick 2.15
|
|
|
|
import QtQuick.Controls 2.15
|
|
|
|
import QtQuick.Layouts 1.15
|
2021-07-15 11:15:56 +00:00
|
|
|
|
2024-08-27 14:35:52 +00:00
|
|
|
import StatusQ 0.1
|
2021-07-15 11:15:56 +00:00
|
|
|
import StatusQ.Controls 0.1
|
|
|
|
import StatusQ.Popups 0.1
|
|
|
|
|
2021-09-28 15:04:06 +00:00
|
|
|
|
|
|
|
import utils 1.0
|
2020-12-15 16:04:19 +00:00
|
|
|
|
2023-06-23 06:17:04 +00:00
|
|
|
import AppLayouts.Communities.panels 1.0
|
2021-10-01 15:58:36 +00:00
|
|
|
|
2021-07-15 11:15:56 +00:00
|
|
|
StatusModal {
|
2021-10-22 20:49:47 +00:00
|
|
|
id: root
|
2021-07-16 12:36:27 +00:00
|
|
|
|
|
|
|
property var community
|
2022-01-19 20:07:02 +00:00
|
|
|
property bool hasAddedContacts
|
2022-01-18 20:54:14 +00:00
|
|
|
property var communitySectionModule
|
2021-07-16 12:36:27 +00:00
|
|
|
|
2021-03-16 13:07:09 +00:00
|
|
|
onClosed: {
|
2021-09-07 13:37:00 +00:00
|
|
|
while (contentItem.depth > 1) {
|
|
|
|
contentItem.pop()
|
2021-03-16 13:07:09 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-05-23 12:46:16 +00:00
|
|
|
headerSettings.title: contentItem.currentItem.headerTitle
|
|
|
|
headerSettings.subTitle: contentItem.currentItem.headerSubtitle || ""
|
|
|
|
headerSettings.asset.name: contentItem.currentItem.headerImageSource || ""
|
|
|
|
headerSettings.asset.isImage: !!contentItem.currentItem.headerImageSource
|
|
|
|
headerSettings.asset.isLetterIdenticon: contentItem.currentItem.headerTitle === root.community.name && !contentItem.currentItem.headerImageSource
|
|
|
|
headerSettings.asset.bgColor: root.community.color
|
2021-02-12 16:32:04 +00:00
|
|
|
|
2021-09-02 14:40:10 +00:00
|
|
|
contentItem: StackView {
|
2021-03-16 13:07:09 +00:00
|
|
|
id: stack
|
|
|
|
initialItem: profileOverview
|
2021-10-22 20:49:47 +00:00
|
|
|
width: root.width
|
2021-09-07 13:37:00 +00:00
|
|
|
implicitHeight: currentItem.implicitHeight || currentItem.height
|
2020-12-16 18:56:48 +00:00
|
|
|
|
2021-03-16 13:07:09 +00:00
|
|
|
pushEnter: Transition { enabled: false }
|
|
|
|
pushExit: Transition { enabled: false }
|
|
|
|
popEnter: Transition { enabled: false }
|
|
|
|
popExit: Transition { enabled: false }
|
2020-12-18 20:15:00 +00:00
|
|
|
|
2021-03-16 13:07:09 +00:00
|
|
|
Component {
|
|
|
|
id: profileOverview
|
2023-06-26 11:48:45 +00:00
|
|
|
ProfilePopupOverviewPanel {
|
2021-07-15 11:15:56 +00:00
|
|
|
width: stack.width
|
|
|
|
|
2021-10-22 20:49:47 +00:00
|
|
|
headerTitle: root.community.name
|
2021-07-15 11:15:56 +00:00
|
|
|
headerSubtitle: {
|
2021-10-22 20:49:47 +00:00
|
|
|
switch(root.community.access) {
|
2022-04-04 11:26:30 +00:00
|
|
|
case Constants.communityChatPublicAccess: return qsTr("Public community");
|
|
|
|
case Constants.communityChatInvitationOnlyAccess: return qsTr("Invitation only community");
|
|
|
|
case Constants.communityChatOnRequestAccess: return qsTr("On request community");
|
|
|
|
default: return qsTr("Unknown community");
|
2020-12-17 13:24:33 +00:00
|
|
|
}
|
|
|
|
}
|
2022-01-05 15:11:26 +00:00
|
|
|
headerImageSource: root.community.image
|
2021-10-22 20:49:47 +00:00
|
|
|
community: root.community
|
2021-07-15 11:15:56 +00:00
|
|
|
|
2021-08-02 09:39:51 +00:00
|
|
|
onLeaveButtonClicked: {
|
2021-10-22 20:49:47 +00:00
|
|
|
root.close();
|
2023-06-14 08:42:52 +00:00
|
|
|
root.community.spectated ? communitySectionModule.leaveCommunity()
|
|
|
|
: Global.leaveCommunityRequested(root.community.name, root.community.id, root.community.outroMessage)
|
2021-08-02 09:39:51 +00:00
|
|
|
}
|
2024-08-27 14:35:52 +00:00
|
|
|
onCopyToClipboard: ClipboardUtils.setText(link)
|
2021-07-16 12:36:27 +00:00
|
|
|
}
|
|
|
|
}
|
2021-03-16 13:07:09 +00:00
|
|
|
}
|
2020-12-18 20:15:00 +00:00
|
|
|
|
2021-07-15 11:15:56 +00:00
|
|
|
leftButtons: [
|
2022-08-02 13:48:07 +00:00
|
|
|
StatusBackButton {
|
2021-07-16 07:53:41 +00:00
|
|
|
id: backButton
|
2021-09-07 13:37:00 +00:00
|
|
|
visible: contentItem.depth > 1
|
2021-07-15 11:15:56 +00:00
|
|
|
height: !visible ? 0 : implicitHeight
|
2021-03-16 13:07:09 +00:00
|
|
|
onClicked: {
|
2021-09-07 13:37:00 +00:00
|
|
|
contentItem.pop()
|
2020-12-16 18:56:48 +00:00
|
|
|
}
|
2024-02-08 16:59:53 +00:00
|
|
|
|
|
|
|
Layout.minimumWidth: implicitWidth
|
2020-12-16 18:56:48 +00:00
|
|
|
}
|
2021-07-15 11:15:56 +00:00
|
|
|
]
|
2020-12-15 16:04:19 +00:00
|
|
|
}
|