Skip to content

Commit

Permalink
enhancement fictadvisor#324: added new viewing rights for the admin p…
Browse files Browse the repository at this point in the history
…anel

- added new viewing rights for the admin panel
- added layout.tsx

closes fictadvisor#324
  • Loading branch information
sifes committed Apr 2, 2024
1 parent f75a8db commit ca01a65
Show file tree
Hide file tree
Showing 51 changed files with 507 additions and 348 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import React, { FC } from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import CommentsAdminEditPage from '@/components/pages/admin/admin-comments/pages/edit-comments-page';

interface AdminCommentEditProps {
Expand All @@ -11,11 +10,7 @@ interface AdminCommentEditProps {

const AdminCommentEdit: FC<AdminCommentEditProps> = ({ params }) => {
const comment = JSON.parse(decodeURIComponent(params.comment));
return (
<AdminPanelLayout>
<CommentsAdminEditPage comment={comment} />
</AdminPanelLayout>
);
return <CommentsAdminEditPage comment={comment} />;
};

export default AdminCommentEdit;
15 changes: 15 additions & 0 deletions fictadvisor-web/src/app/admin/comments/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
'use client';

import { PERMISSION } from '@fictadvisor/utils/security';

import AdminPanelAccessLayout from '@/components/common/layout/admin-panel-access-layout/AdminPanelAccessLayout';

const Layout = ({ children }: { children: React.ReactNode }) => {
return (
<AdminPanelAccessLayout permission={PERMISSION.ADMIN_PANEL_COMMENTS_SHOW}>
{children}
</AdminPanelAccessLayout>
);
};

export default Layout;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/comments/page.tsx
Original file line number Diff line number Diff line change
@@ -1,14 +1,9 @@
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import CommentsAdminPage from '@/components/pages/admin/admin-comments';

const Page = () => {
return (
<AdminPanelLayout>
<CommentsAdminPage />
</AdminPanelLayout>
);
return <CommentsAdminPage />;
};

export default Page;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/departments/create/page.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
'use client';
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import AdminDepartmentsCreatePage from '@/components/pages/admin/admin-departments/admin-departments-create-page/AdminDepartmentsCreatePage';

const Page = () => {
return (
<AdminPanelLayout>
<AdminDepartmentsCreatePage />
</AdminPanelLayout>
);
return <AdminDepartmentsCreatePage />;
};

export default Page;
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@
import React, { FC } from 'react';
import { useQuery } from 'react-query';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import Progress from '@/components/common/ui/progress/Progress';
import AdminDepartmentsEditPage from '@/components/pages/admin/admin-departments/admin-departments-edit-page/AdminDepartmentsEditPage';
import { useToastError } from '@/hooks/use-toast-error/useToastError';
import CathedraAPI from '@/lib/api/cathera/CathedraAPI';

interface AdminDepartmentEditProps {
Expand All @@ -13,23 +12,20 @@ interface AdminDepartmentEditProps {
};
}
const Page: FC<AdminDepartmentEditProps> = ({ params }) => {
const toast = useToastError();
const { data, isSuccess } = useQuery('department', () =>
const { data, isSuccess, isLoading } = useQuery('department', () =>
CathedraAPI.getAll(),
);
if (!isSuccess) return <div>Loading...</div>;
const department = data.cathedras.find(cathedra => {

if (isLoading) return <Progress />;

const department = data?.cathedras.find(cathedra => {
return cathedra.id === params.departmentId;
});
if (!department) {
toast.displayError('Error: Cathedra doesnt exist');
return;
}
return (
<AdminPanelLayout>
{isSuccess && <AdminDepartmentsEditPage department={department} />}
</AdminPanelLayout>
);

if (!isSuccess || !department)
return <>Something went wrong with the admin department edit</>;

return <AdminDepartmentsEditPage department={department} />;
};

export default Page;
17 changes: 17 additions & 0 deletions fictadvisor-web/src/app/admin/departments/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
'use client';

import { PERMISSION } from '@fictadvisor/utils/security';

import AdminPanelAccessLayout from '@/components/common/layout/admin-panel-access-layout/AdminPanelAccessLayout';

const Layout = ({ children }: { children: React.ReactNode }) => {
return (
<AdminPanelAccessLayout
permission={PERMISSION.ADMIN_PANEL_DEPARTMENTS_SHOW}
>
{children}
</AdminPanelAccessLayout>
);
};

export default Layout;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/departments/page.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
'use client';
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import AdminDepartmentSearchPage from '@/components/pages/admin/admin-departments/admin-departments-search-page/AdminDepartmentSearchPage';

const Page = () => {
return (
<AdminPanelLayout>
<AdminDepartmentSearchPage />
</AdminPanelLayout>
);
return <AdminDepartmentSearchPage />;
};

export default Page;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/disciplines/create/page.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
'use client';
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import DisciplinesAdminCreatePage from '@/components/pages/admin/disciplines-admin-page/pages/disciplines-create-page/DisciplinesAdminCreatePage';

const AdminSubjectCreate = () => {
return (
<AdminPanelLayout>
<DisciplinesAdminCreatePage></DisciplinesAdminCreatePage>
</AdminPanelLayout>
);
return <DisciplinesAdminCreatePage />;
};

export default AdminSubjectCreate;
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
import React, { FC } from 'react';
import { useQuery } from 'react-query';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import Progress from '@/components/common/ui/progress';
import DisciplinesEditPage from '@/components/pages/admin/disciplines-admin-page/pages/disciplines-edit-page/DisciplinesAdminEditPage';
import DisciplineAPI from '@/lib/api/discipline/DisciplineAPI';

Expand All @@ -13,19 +13,22 @@ interface AdminDisciplineEditProps {
}

const DisciplinesAdminEdit: FC<AdminDisciplineEditProps> = ({ params }) => {
const { data: disciplines } = useQuery('discipline', () =>
DisciplineAPI.getAllDisciplines(),
);

const discipline = disciplines?.disciplines.filter(
discipline => discipline.id == params.disciplineId,
)[0];

return (
<AdminPanelLayout>
{discipline && <DisciplinesEditPage discipline={discipline} />}
</AdminPanelLayout>
);
const {
data: disciplines,
isSuccess,
isLoading,
} = useQuery('discipline', () => DisciplineAPI.getAllDisciplines());

if (isLoading) return <Progress />;

const discipline = disciplines?.disciplines.find(discipline => {
return discipline.id === params.disciplineId;
});

if (!isSuccess || !discipline)
return <>Something went wrong with the admin discipline edit</>;

return <DisciplinesEditPage discipline={discipline} />;
};

export default DisciplinesAdminEdit;
17 changes: 17 additions & 0 deletions fictadvisor-web/src/app/admin/disciplines/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
'use client';

import { PERMISSION } from '@fictadvisor/utils/security';

import AdminPanelAccessLayout from '@/components/common/layout/admin-panel-access-layout/AdminPanelAccessLayout';

const Layout = ({ children }: { children: React.ReactNode }) => {
return (
<AdminPanelAccessLayout
permission={PERMISSION.ADMIN_PANEL_DISCIPLINES_SHOW}
>
{children}
</AdminPanelAccessLayout>
);
};

export default Layout;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/disciplines/page.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
'use client';
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import DisciplinesAdminPage from '@/components/pages/admin/disciplines-admin-page/DisciplinesAdminPage';

const DisciplinesAdminSearch = () => {
return (
<AdminPanelLayout>
<DisciplinesAdminPage />
</AdminPanelLayout>
);
return <DisciplinesAdminPage />;
};

export default DisciplinesAdminSearch;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/groups/create/page.tsx
Original file line number Diff line number Diff line change
@@ -1,14 +1,9 @@
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import AdminGroupsCreate from '@/components/pages/admin/admin-groups/create-groups-admin-page/AdminGroupsCreate';

const AdminCreateStudentPage = () => {
return (
<AdminPanelLayout>
<AdminGroupsCreate />
</AdminPanelLayout>
);
return <AdminGroupsCreate />;
};

export default AdminCreateStudentPage;
21 changes: 11 additions & 10 deletions fictadvisor-web/src/app/admin/groups/edit/[groupId]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
import React, { FC } from 'react';
import { useQuery } from 'react-query';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import Progress from '@/components/common/ui/progress/Progress';
import AdminGroupsEdit from '@/components/pages/admin/admin-groups/edit-groups-admin-page/AdminGroupsEdit';
import GroupAPI from '@/lib/api/group/GroupAPI';

Expand All @@ -14,16 +14,17 @@ interface AdminGroupEditBodyPageProps {
const AdminGroupEditBodyPage: FC<AdminGroupEditBodyPageProps> = ({
params,
}) => {
const { data: group, isSuccess: isSuccessGroup } = useQuery(
'getAdminGroup',
() => GroupAPI.get(params.groupId),
);
const {
data: group,
isSuccess,
isLoading,
} = useQuery('getAdminGroup', () => GroupAPI.get(params.groupId));

return (
<AdminPanelLayout>
{isSuccessGroup && <AdminGroupsEdit group={group} />}
</AdminPanelLayout>
);
if (isLoading) return <Progress />;

if (!isSuccess) return <>Something went wrong with the admin user edit</>;

return <AdminGroupsEdit group={group} />;
};

export default AdminGroupEditBodyPage;
15 changes: 15 additions & 0 deletions fictadvisor-web/src/app/admin/groups/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
'use client';

import { PERMISSION } from '@fictadvisor/utils/security';

import AdminPanelAccessLayout from '@/components/common/layout/admin-panel-access-layout/AdminPanelAccessLayout';

const Layout = ({ children }: { children: React.ReactNode }) => {
return (
<AdminPanelAccessLayout permission={PERMISSION.ADMIN_PANEL_GROUPS_SHOW}>
{children}
</AdminPanelAccessLayout>
);
};

export default Layout;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/groups/page.tsx
Original file line number Diff line number Diff line change
@@ -1,12 +1,7 @@
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import GroupsAdminPage from '@/components/pages/admin/admin-groups/search-groups-admin-page/AdminGroupsPage';

export default async function GroupsAdmin() {
return (
<AdminPanelLayout>
<GroupsAdminPage />
</AdminPanelLayout>
);
return <GroupsAdminPage />;
}
7 changes: 7 additions & 0 deletions fictadvisor-web/src/app/admin/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';

const DashboardLayout = ({ children }: { children: React.ReactNode }) => {
return <AdminPanelLayout>{children}</AdminPanelLayout>;
};

export default DashboardLayout;
15 changes: 15 additions & 0 deletions fictadvisor-web/src/app/admin/main/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
'use client';

import { PERMISSION } from '@fictadvisor/utils/security';

import AdminPanelAccessLayout from '@/components/common/layout/admin-panel-access-layout/AdminPanelAccessLayout';

const Layout = ({ children }: { children: React.ReactNode }) => {
return (
<AdminPanelAccessLayout permission={PERMISSION.ADMIN_PANEL_MAIN_SHOW}>
{children}
</AdminPanelAccessLayout>
);
};

export default Layout;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/main/page.tsx
Original file line number Diff line number Diff line change
@@ -1,14 +1,9 @@
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import AdminHomePage from '@/components/pages/admin/admin-main/AdminHomePage';

const Page = () => {
return (
<AdminPanelLayout>
<AdminHomePage />
</AdminPanelLayout>
);
return <AdminHomePage />;
};

export default Page;
7 changes: 1 addition & 6 deletions fictadvisor-web/src/app/admin/page.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
'use client';
import React from 'react';

import AdminPanelLayout from '@/components/common/layout/admin-panel-layout/AdminPanelLayout';
import AdminMainPage from '@/components/pages/admin/admin-default/AdminMainPage';

const AdminMain = () => {
return (
<AdminPanelLayout>
<AdminMainPage />
</AdminPanelLayout>
);
return <AdminMainPage />;
};

export default AdminMain;
Loading

0 comments on commit ca01a65

Please sign in to comment.