Skip to content

Commit

Permalink
[article] show blocked content only for blocked users
Browse files Browse the repository at this point in the history
  • Loading branch information
MrOrz committed Jan 1, 2022
1 parent 0edcdb9 commit cf550a0
Showing 1 changed file with 31 additions and 9 deletions.
40 changes: 31 additions & 9 deletions pages/article/[id].js
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import useCurrentUser from 'lib/useCurrentUser';
import { nl2br, linkify, ellipsis } from 'lib/text';
import { usePushToDataLayer } from 'lib/gtm';
import getTermsString from 'lib/terms';
import { useIsUserBlocked } from 'lib/isUserBlocked';

import { LINE_URL } from 'constants/urls';

Expand Down Expand Up @@ -106,7 +107,12 @@ const useStyles = makeStyles(theme => ({
}));

const LOAD_ARTICLE = gql`
query LoadArticlePage($id: String!) {
query LoadArticlePage(
$id: String!
$replyRequestStatuses: [ReplyRequestStatusEnum!]
$articleReplyStatuses: [ArticleReplyStatusEnum!]
$articleCategoryStatuses: [ArticleCategoryStatusEnum!]
) {
GetArticle(id: $id) {
id
text
Expand All @@ -120,11 +126,11 @@ const LOAD_ARTICLE = gql`
hyperlinks {
...HyperlinkData
}
replyRequests {
replyRequests(statuses: $replyRequestStatuses) {
reason
...ReplyRequestInfo
}
articleReplies {
articleReplies(statuses: $articleReplyStatuses) {
...CurrentRepliesData
}
...RelatedArticleData
Expand All @@ -140,7 +146,7 @@ const LOAD_ARTICLE = gql`
}
}
}
articleCategories {
articleCategories(statuses: $articleCategoryStatuses) {
...ArticleCategoryData
...AddCategoryDialogData
}
Expand All @@ -161,16 +167,21 @@ const LOAD_ARTICLE = gql`
`;

const LOAD_ARTICLE_FOR_USER = gql`
query LoadArticlePageForUser($id: String!) {
query LoadArticlePageForUser(
$id: String!
$replyRequestStatuses: [ReplyRequestStatusEnum!]
$articleReplyStatuses: [ArticleReplyStatusEnum!]
$articleCategoryStatuses: [ArticleCategoryStatusEnum!]
) {
GetArticle(id: $id) {
id # Required, https://github.com/apollographql/apollo-client/issues/2510
replyRequests {
replyRequests(statuses: $replyRequestStatuses) {
...ReplyRequestInfoForUser
}
articleReplies {
articleReplies(statuses: $articleReplyStatuses) {
...ArticleReplyForUser
}
articleCategories {
articleCategories(statuses: $articleCategoryStatuses) {
...ArticleCategoryDataForUser
...AddCategoryDialogData
}
Expand All @@ -182,11 +193,22 @@ const LOAD_ARTICLE_FOR_USER = gql`
${ArticleCategories.fragments.AddCategoryDialogData}
`;

const NORMAL_ONLY = ['NORMAL'];
const NORMAL_AND_BLOCKED = ['NORMAL', 'BLOCKED'];

function ArticlePage() {
const { query } = useRouter();
const [showForm, setShowForm] = useState(false);
const [flashMessage, setFlashMessage] = useState(0);
const articleVars = { id: query.id };
const isUserBlocked = useIsUserBlocked();
const articleVars = {
id: query.id,
replyRequestStatuses: isUserBlocked ? NORMAL_AND_BLOCKED : NORMAL_ONLY,
articleCategoryStatuses: isUserBlocked ? NORMAL_AND_BLOCKED : NORMAL_ONLY,
articleReplyStatuses: isUserBlocked
? ['NORMAL', 'BLOCKED', 'DELETED']
: ['NORMAL', 'DELETED'],
};

const { data, loading } = useQuery(LOAD_ARTICLE, {
variables: articleVars,
Expand Down

0 comments on commit cf550a0

Please sign in to comment.