Files
sgeUpdated/sge-frontend/src/navigation/horizontal/index.js

251 lines
7.0 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import {
Clipboard,
Map,
Users,
UserCheck,
Home,
PlusSquare,
Database,
Droplet,
List,
ArrowRight,
BarChart2,
CheckCircle,
HelpCircle,
FileText,
Layers,
AlignCenter,
Archive,
Phone,
Zap,
} from "react-feather";
const permissions = JSON.parse(localStorage.getItem("permissions"));
const permissionsList = permissions?.map(({ tag }) => tag);
function permissionCheck(permission) {
return permissionsList?.includes(permission);
}
export default [
{
id: "Map",
title: "Map.map",
icon: <Map size={20} />,
navLink: "/harita",
},
{
id: "Management",
title: "Management",
icon: <Clipboard size={20} />,
display:
permissionCheck("paginate_organizations_get") ||
permissionCheck("paginate_users_get") ||
permissionCheck("paginate_roles_get")
? ""
: "none",
children: (permissionCheck("paginate_organizations_get") ||
permissionCheck("paginate_users_get") ||
permissionCheck("paginate_roles_get")) && [
{
id: "Organizations",
title: "Organizations.organizations",
icon: <Home size={20} />,
navLink: "/organizasyonlar",
display: permissionCheck("paginate_organizations_get") ? "" : "none",
},
{
id: "UserManagement",
title: "Users.users",
icon: <Users size={20} />,
navLink: "/kullanicilar",
display: permissionCheck("paginate_users_get") ? "" : "none",
},
{
id: "RoleManegement",
title: "Roles.roles",
icon: <UserCheck size={20} />,
navLink: "/roller",
display: permissionCheck("paginate_roles_get") ? "" : "none",
},
],
},
{
id: "DataInput",
title: "DataInput.dataInput",
icon: <PlusSquare size={20} />,
navLink: "/veri-girisi",
display: permissionCheck("dataset_create") ? "" : "none",
},
{
id: "Datas",
title: "DataInput.reports",
icon: <BarChart2 size={20} />,
navLink: "/raporlar",
display: permissionCheck("paginate_datasets_get") ? "" : "none",
},
{
id: "Graphics",
title: "Graphics.graphics",
icon: <Layers size={20} />,
navLink: "/grafikler",
display: permissionCheck("show_graphics") ? "" : "none",
},
{
id: "DataSet",
title: "EmissionSources.dataSet",
icon: <Database size={20} />,
display:
permissionCheck("paginate_emission_sources_get") ||
permissionCheck("sectors_get") ||
permissionCheck("sub_sectors_get") ||
permissionCheck("activity_sub_units_get")
? ""
: "none",
children: (permissionCheck("paginate_emission_sources_get") ||
permissionCheck("sectors_get") ||
permissionCheck("sub_sectors_get") ||
permissionCheck("activity_sub_units_get")) && [
{
id: "EmissionSource",
title: "EmissionSources.emissionSources",
icon: <Droplet size={20} />,
navLink: "/emisyon-kaynaklari",
display: permissionCheck("paginate_emission_sources_get") ? "" : "none",
},
{
id: "Sectors",
title: "EmissionSources.sectors",
icon: <ArrowRight size={20} />,
navLink: "/veri-sektorleri",
display: permissionCheck("sectors_get") ? "" : "none",
},
{
id: "SubSector",
title: "EmissionSources.subSectors",
icon: <ArrowRight size={20} />,
navLink: "/sektor-alt-birimleri",
display: permissionCheck("sub_sectors_get") ? "" : "none",
},
{
id: "ActivitySubUnit",
title: "EmissionSources.subUnits",
icon: <ArrowRight size={20} />,
navLink: "/faaliyet-alt-birimleri",
display: permissionCheck("activity_sub_units_get") ? "" : "none",
},
],
},
{
id: "DataCenter",
title: "Data Center",
icon: <Zap size={20} />,
navLink: "/verimerkezi",
},
{
id: "Areas",
title: "Areas.areas",
icon: <List size={20} />,
display:
permissionCheck("paginate_areas_get") ||
permissionCheck("paginate_countries_get") ||
permissionCheck("paginate_cities_get") ||
permissionCheck("paginate_districts_get") ||
permissionCheck("paginate_neighborhoods_get")
? ""
: "none",
children: (permissionCheck("paginate_areas_get") ||
permissionCheck("paginate_countries_get") ||
permissionCheck("paginate_cities_get") ||
permissionCheck("paginate_districts_get") ||
permissionCheck("paginate_neighborhoods_get")) && [
{
id: "Areas",
title: "Areas.areas",
icon: <ArrowRight size={20} />,
navLink: "/alanlar",
display: permissionCheck("paginate_areas_get") ? "" : "none",
},
{
id: "Countries",
title: "Areas.countries",
icon: <ArrowRight size={20} />,
navLink: "/ulkeler",
display: permissionCheck("paginate_countries_get") ? "" : "none",
},
{
id: "Cities",
title: "Areas.cities",
icon: <ArrowRight size={20} />,
navLink: "/iller",
display: permissionCheck("paginate_cities_get") ? "" : "none",
},
{
id: "Districts",
title: "Areas.districts",
icon: <ArrowRight size={20} />,
navLink: "/ilceler",
display: permissionCheck("paginate_districts_get") ? "" : "none",
},
{
id: "Neighborhoods",
title: "Areas.neighborhoods",
icon: <ArrowRight size={20} />,
navLink: "/mahalleler",
display: permissionCheck("paginate_neighborhoods_get") ? "" : "none",
},
],
},
{
id: "Survey",
title: "Survey.survey",
icon: <FileText size={20} />,
display:
permissionCheck("paginate_questions_get") ||
permissionCheck("paginate_answers_get") ||
permissionCheck("paginate_surveys_get") ||
permissionCheck("surveys_get")
? ""
: "none",
children: (permissionCheck("paginate_questions_get") ||
permissionCheck("paginate_answers_get") ||
permissionCheck("paginate_surveys_get") ||
permissionCheck("surveys_get")) && [
{
id: "Questions",
title: "Survey.questions",
icon: <HelpCircle size={20} />,
navLink: "/sorular",
display: permissionCheck("paginate_questions_get") ? "" : "none",
},
{
id: "Answers",
title: "Survey.answers",
icon: <CheckCircle size={20} />,
navLink: "/cevaplar",
display: permissionCheck("paginate_answers_get") ? "" : "none",
},
{
id: "Surveys",
title: "Survey.surveys",
icon: <AlignCenter size={20} />,
navLink: "/anketler",
display: permissionCheck("paginate_surveys_get") ? "" : "none",
},
{
id: "SavedSurveys",
title: "Anket Sonuçları",
icon: <Archive size={20} />,
navLink: "/anket-sonuclari",
display: permissionCheck("surveys_get") ? "" : "none",
},
],
},
{
id: "Communication",
title: "Contact.contact",
icon: <Phone size={20} />,
navLink: "/iletisim",
},
];