rename benutzer to users
add role management to media page
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import React, { useState } from 'react';
|
||||
import React, { useMemo, useState } from 'react';
|
||||
import { useAuth } from '../useAuth';
|
||||
import { DialogComponent } from '@syncfusion/ej2-react-popups';
|
||||
import {
|
||||
FileManagerComponent,
|
||||
@@ -19,6 +20,8 @@ type CustomSelectUploadEventModalProps = {
|
||||
|
||||
const CustomSelectUploadEventModal: React.FC<CustomSelectUploadEventModalProps> = props => {
|
||||
const { open, onClose, onSelect } = props;
|
||||
const { user } = useAuth();
|
||||
const isSuperadmin = useMemo(() => user?.role === 'superadmin', [user]);
|
||||
|
||||
const [selectedFile, setSelectedFile] = useState<{
|
||||
id: string;
|
||||
@@ -63,6 +66,23 @@ const CustomSelectUploadEventModal: React.FC<CustomSelectUploadEventModalProps>
|
||||
}
|
||||
};
|
||||
|
||||
type FileItem = { name: string; isFile: boolean };
|
||||
type ReadSuccessArgs = { action: string; result?: { files?: FileItem[] } };
|
||||
type FileOpenArgs = { fileDetails?: FileItem; cancel?: boolean };
|
||||
|
||||
const handleSuccess = (args: ReadSuccessArgs) => {
|
||||
if (isSuperadmin) return;
|
||||
if (args && args.action === 'read' && args.result && Array.isArray(args.result.files)) {
|
||||
args.result.files = args.result.files.filter((f: FileItem) => !(f.name === 'converted' && !f.isFile));
|
||||
}
|
||||
};
|
||||
|
||||
const handleFileOpen = (args: FileOpenArgs) => {
|
||||
if (!isSuperadmin && args && args.fileDetails && args.fileDetails.name === 'converted' && !args.fileDetails.isFile) {
|
||||
args.cancel = true;
|
||||
}
|
||||
};
|
||||
|
||||
return (
|
||||
<DialogComponent
|
||||
target="#root"
|
||||
@@ -84,6 +104,9 @@ const CustomSelectUploadEventModal: React.FC<CustomSelectUploadEventModalProps>
|
||||
)}
|
||||
>
|
||||
<FileManagerComponent
|
||||
cssClass="e-bigger media-icons-xl"
|
||||
success={handleSuccess}
|
||||
fileOpen={handleFileOpen}
|
||||
ajaxSettings={{
|
||||
url: hostUrl + 'operations',
|
||||
getImageUrl: hostUrl + 'get-image',
|
||||
|
||||
Reference in New Issue
Block a user