🐛 Fix unable select answer
This commit is contained in:
parent
603875b1af
commit
21a1d4a2ad
@ -103,7 +103,7 @@ class PostCommentSliverListState extends State<PostCommentSliverList> {
|
|||||||
final sn = context.read<SnNetworkProvider>();
|
final sn = context.read<SnNetworkProvider>();
|
||||||
await sn.client
|
await sn.client
|
||||||
.put('/cgi/co/questions/${widget.parentPost.id}/answer', data: {
|
.put('/cgi/co/questions/${widget.parentPost.id}/answer', data: {
|
||||||
'publisher': answer.publisherId,
|
'publisher': widget.parentPost.publisherId,
|
||||||
'answer_id': answer.id,
|
'answer_id': answer.id,
|
||||||
});
|
});
|
||||||
if (!mounted) return;
|
if (!mounted) return;
|
||||||
|
@ -279,6 +279,8 @@ class _PostItemState extends State<PostItem> {
|
|||||||
final ua = context.read<UserProvider>();
|
final ua = context.read<UserProvider>();
|
||||||
final isAuthor =
|
final isAuthor =
|
||||||
ua.isAuthorized && widget.data.publisher.accountId == ua.user?.id;
|
ua.isAuthorized && widget.data.publisher.accountId == ua.user?.id;
|
||||||
|
final isParentAuthor = ua.isAuthorized &&
|
||||||
|
widget.data.replyTo?.publisher.accountId == ua.user?.id;
|
||||||
|
|
||||||
final displayableAttachments = widget.data.preload?.attachments
|
final displayableAttachments = widget.data.preload?.attachments
|
||||||
?.where((ele) =>
|
?.where((ele) =>
|
||||||
@ -333,6 +335,7 @@ class _PostItemState extends State<PostItem> {
|
|||||||
_PostActionPopup(
|
_PostActionPopup(
|
||||||
data: widget.data,
|
data: widget.data,
|
||||||
isAuthor: isAuthor,
|
isAuthor: isAuthor,
|
||||||
|
isParentAuthor: isParentAuthor,
|
||||||
onShare: () => _doShare(context),
|
onShare: () => _doShare(context),
|
||||||
onShareImage: () => _doShareViaPicture(context),
|
onShareImage: () => _doShareViaPicture(context),
|
||||||
onSelectAnswer: widget.onSelectAnswer,
|
onSelectAnswer: widget.onSelectAnswer,
|
||||||
@ -577,6 +580,7 @@ class _PostItemState extends State<PostItem> {
|
|||||||
_PostActionPopup(
|
_PostActionPopup(
|
||||||
data: widget.data,
|
data: widget.data,
|
||||||
isAuthor: isAuthor,
|
isAuthor: isAuthor,
|
||||||
|
isParentAuthor: isParentAuthor,
|
||||||
onShare: () => _doShare(context),
|
onShare: () => _doShare(context),
|
||||||
onShareImage: () => _doShareViaPicture(context),
|
onShareImage: () => _doShareViaPicture(context),
|
||||||
onSelectAnswer: widget.onSelectAnswer,
|
onSelectAnswer: widget.onSelectAnswer,
|
||||||
@ -1317,6 +1321,7 @@ class _PostAvatar extends StatelessWidget {
|
|||||||
class _PostActionPopup extends StatelessWidget {
|
class _PostActionPopup extends StatelessWidget {
|
||||||
final SnPost data;
|
final SnPost data;
|
||||||
final bool isAuthor;
|
final bool isAuthor;
|
||||||
|
final bool isParentAuthor;
|
||||||
final Function onDeleted;
|
final Function onDeleted;
|
||||||
final Function() onShare, onShareImage;
|
final Function() onShare, onShareImage;
|
||||||
final Function()? onSelectAnswer;
|
final Function()? onSelectAnswer;
|
||||||
@ -1324,6 +1329,7 @@ class _PostActionPopup extends StatelessWidget {
|
|||||||
const _PostActionPopup({
|
const _PostActionPopup({
|
||||||
required this.data,
|
required this.data,
|
||||||
required this.isAuthor,
|
required this.isAuthor,
|
||||||
|
required this.isParentAuthor,
|
||||||
required this.onDeleted,
|
required this.onDeleted,
|
||||||
required this.onShare,
|
required this.onShare,
|
||||||
required this.onShareImage,
|
required this.onShareImage,
|
||||||
@ -1397,7 +1403,7 @@ class _PostActionPopup extends StatelessWidget {
|
|||||||
},
|
},
|
||||||
),
|
),
|
||||||
if (onTranslate != null) PopupMenuDivider(),
|
if (onTranslate != null) PopupMenuDivider(),
|
||||||
if (isAuthor && onSelectAnswer != null)
|
if (isParentAuthor && onSelectAnswer != null)
|
||||||
PopupMenuItem(
|
PopupMenuItem(
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
@ -1410,7 +1416,7 @@ class _PostActionPopup extends StatelessWidget {
|
|||||||
onSelectAnswer?.call();
|
onSelectAnswer?.call();
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
if (isAuthor && onSelectAnswer != null) PopupMenuDivider(),
|
if (isParentAuthor && onSelectAnswer != null) PopupMenuDivider(),
|
||||||
if (isAuthor)
|
if (isAuthor)
|
||||||
PopupMenuItem(
|
PopupMenuItem(
|
||||||
child: Row(
|
child: Row(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user