refactor(FE): Add isRecordingEditable check to detail actions

This commit is contained in:
rstubryan
2026-03-08 22:12:29 +07:00
parent 41d2e8737b
commit 7207f1ba75
@@ -272,6 +272,16 @@ const RecordingForm = ({ type = 'add', initialValues }: RecordingFormProps) => {
return recording?.approval?.action === 'REJECTED';
}, []);
const isRecordingEditable = useCallback((recording?: Recording) => {
if (
recording?.executed_at &&
recording?.project_flock?.project_flock_category === 'GROWING'
) {
return false;
}
return true;
}, []);
// ===== PAYLOAD CREATION HELPERS =====
const createGrowingPayload = useCallback(
(values: RecordingGrowingFormValues) => {
@@ -2990,7 +3000,9 @@ const RecordingForm = ({ type = 'add', initialValues }: RecordingFormProps) => {
<div className='flex flex-col sm:flex-row sm:justify-between gap-2'>
{/* Left side - Detail & Edit actions */}
<div className='flex flex-col sm:flex-row justify-start gap-2 w-full sm:w-auto'>
{type === 'detail' && deleteRecordingClickHandler && (
{type === 'detail' &&
deleteRecordingClickHandler &&
isRecordingEditable(initialValues) && (
<RequirePermission permissions='lti.production.recording.delete'>
<Button
type='button'
@@ -3008,7 +3020,9 @@ const RecordingForm = ({ type = 'add', initialValues }: RecordingFormProps) => {
</Button>
</RequirePermission>
)}
{type === 'detail' && initialValues && (
{type === 'detail' &&
initialValues &&
isRecordingEditable(initialValues) && (
<RequirePermission permissions='lti.production.recording.update'>
<Button
type='button'