<template>
	<view class="group_settings_container">
		<u-navbar :autoBack="true" bgColor="#ECECEC" title="群管理" safeAreaInsetTop placeholder fixed></u-navbar>
		<uni-list>
			<uni-list-item title="群主管理权转让" @click="toTransfer" showArrow clickable></uni-list-item>
			<uni-list-item title="进群验证" @switchChange="updateGroupInfo('needVerification',storeCurrentGroup.needVerification==1 ? 2: 1)" showSwitch :switchChecked="!(storeCurrentGroup.needVerification != 1)"></uni-list-item>
			<uni-list-item title="允许查看成员资料" @switchChange="updateGroupInfo('lookMemberInfo',storeCurrentGroup.applyMemberFriend == 1 ? 0 : 1)" showSwitch :switchChecked="storeCurrentGroup.applyMemberFriend==0"></uni-list-item>
			<uni-list-item title="允许群内添加好友" @switchChange="updateGroupInfo('applyMemberFriend',storeCurrentGroup.applyMemberFriend == 1 ? 0 : 1)" showSwitch :switchChecked="storeCurrentGroup.applyMemberFriend==0"></uni-list-item>
			<uni-list-item :title="isMute ? '解除禁言':'全员禁言'" @switchChange="updateMute" showSwitch :switchChecked="isMute"></uni-list-item>

		</uni-list>
	</view>
</template>

<script>
	import {mapGetters} from "vuex";
	import IMSDK, {
		GroupMemberRole,
		GroupStatus,
		GroupVerificationType,
		IMMethods,
		MessageReceiveOptType,
	} from "openim-uniapp-polyfill";
	import {GroupMemberListTypes} from "@/constant";
	export default {
		data() {
			return {
				isMute:false,
			};
		},
		computed: {
			...mapGetters([
				"storeCurrentConversation",
				"storeCurrentMemberInGroup",
				"storeCurrentGroup",
			]),
		},
		onLoad() {
			// IMSDK.asyncApi('getSpecifiedGroupsInfo', IMSDK.uuid(), [this.storeCurrentGroup.groupID]).then(res=>{
			// 	console.log(res);
			// }).catch(e=>{
			// 	console.log(e);
			// })
		},
		methods: {
			toTransfer() {
				uni.navigateTo({
					url: `/pages/conversation/groupMemberList/index?type=${GroupMemberListTypes.Transfer}&groupID=${this.storeCurrentGroup.groupID}`,
				});
			},
			updateMute(){
				IMSDK.asyncApi('changeGroupMute', IMSDK.uuid(), {
					groupID: this.storeCurrentGroup.groupID,
					isMute: this.isMute
				}).then(res=>{
					console.log(res);
				}).catch(e=>{
					console.log(e);
				})
			},
			updateGroupInfo(field,value1){
				const data = {groupID:this.storeCurrentGroup.groupID};
				data[field] = value1;
				IMSDK.asyncApi('setGroupInfo', IMSDK.uuid(),data).then(res=>{
					console.log(res);
				}).catch(e=>{
					console.log(e);
				})
			},
		},
	};
</script>

<style lang="scss" scoped>
	.group_settings_container {
		@include colBox(false);
		height: 100vh;
		background-color: #f6f6f6;

		.setting_row {
			background-color: #fff;
			margin: 24rpx 24rpx 0;
			border-radius: 6px;
			overflow: hidden;
		}
	}
</style>