diff --git a/src/helpers/permissions.ts b/src/helpers/permissions.ts index 5bf8e15..e29bc4d 100644 --- a/src/helpers/permissions.ts +++ b/src/helpers/permissions.ts @@ -95,6 +95,21 @@ export enum PermissionEnum { BLOGS_UPDATE = "blogs_update", BLOGS_DELETE = "blogs_delete", + BLOG_CATEGORIES_CREATE = "blog_categories_create", + BLOG_CATEGORIES_READ = "blog_categories_read", + BLOG_CATEGORIES_UPDATE = "blog_categories_update", + BLOG_CATEGORIES_DELETE = "blog_categories_delete", + + BLOG_COMMENTS_CREATE = "blog_comments_create", + BLOG_COMMENTS_READ = "blog_comments_read", + BLOG_COMMENTS_UPDATE = "blog_comments_update", + BLOG_COMMENTS_DELETE = "blog_comments_delete", + + SLIDERS_CREATE = "sliders_create", + SLIDERS_READ = "sliders_read", + SLIDERS_UPDATE = "sliders_update", + SLIDERS_DELETE = "sliders_delete", + LEARNINGS_CREATE = "learnings_create", LEARNINGS_READ = "learnings_read", LEARNINGS_UPDATE = "learnings_update", @@ -170,7 +185,15 @@ export type CrudAction = "create" | "read" | "update" | "delete"; const CRUD_ACTIONS: readonly CrudAction[] = ["create", "read", "update", "delete"]; -export const CONTENT_PERMISSION_RESOURCES = ["blogs", "learnings", "advertisements", "announcements"] as const; +export const CONTENT_PERMISSION_RESOURCES = [ + "blogs", + "blog_categories", + "blog_comments", + "sliders", + "learnings", + "advertisements", + "announcements", +] as const; export const FINANCIAL_PERMISSION_RESOURCES = ["payments", "invoices", "transactions", "discounts", "bank_accounts"] as const; export const SUPPORT_PERMISSION_RESOURCES = [ "support_plan", diff --git a/src/pages/blog/BlogCategory.tsx b/src/pages/blog/BlogCategory.tsx index 7da58f3..07a72c6 100644 --- a/src/pages/blog/BlogCategory.tsx +++ b/src/pages/blog/BlogCategory.tsx @@ -104,10 +104,10 @@ const BlogCategory: FC = () => {
- {canUpdate('blogs') && ( + {canUpdate('blog_categories') && ( )} - {canDelete('blogs') && ( + {canDelete('blog_categories') && ( { deleteBlogCategory.mutateAsync(item.id, { onSuccess: () => { @@ -129,7 +129,7 @@ const BlogCategory: FC = () => {
- {canCreate('blogs') && ( + {canCreate('blog_categories') && (

{t('blog.add_category')}

diff --git a/src/pages/blog/Comments.tsx b/src/pages/blog/Comments.tsx index e54be75..a2de148 100644 --- a/src/pages/blog/Comments.tsx +++ b/src/pages/blog/Comments.tsx @@ -7,8 +7,10 @@ import moment from 'moment-jalaali' import { CloseCircle, TickCircle } from 'iconsax-react' import { ErrorType } from '../../helpers/types' import { toast } from '../../components/Toast'; +import { usePermissions } from '../../hooks/usePermissions' const Comments: FC = () => { const { t } = useTranslation('global') + const { canUpdate } = usePermissions() const getBlogComments = useGetBlogComments() const changeStatusComment = useChangeStatusComment() const handleChangeStatus = (id: string, status: string) => { @@ -49,7 +51,7 @@ const Comments: FC = () => { { - item.status === 'PENDING' && + item.status === 'PENDING' && canUpdate('blog_comments') &&
handleChangeStatus(item.id, 'APPROVED')} color='green' size={20} /> handleChangeStatus(item.id, 'REJECTED')} color='red' size={20} /> diff --git a/src/pages/slider/List.tsx b/src/pages/slider/List.tsx index b26a591..7515129 100644 --- a/src/pages/slider/List.tsx +++ b/src/pages/slider/List.tsx @@ -37,7 +37,7 @@ const SliderList: FC = () => {
{t('slider.list_slider')}
- {canCreate('blogs') && ( + {canCreate('sliders') && (