import React from 'react';
import { InjectedFormProps } from 'redux-form';
import { WithDialogProps } from 'store/dialog/with-dialog';
-import { ProjectUpdateFormDialogData } from 'store/projects/project-update-actions';
+import { ProjectUpdateFormDialogData, PROJECT_UPDATE_FORM_NAME } from 'store/projects/project-update-actions';
import { FormDialog } from 'components/form-dialog/form-dialog';
-import { ProjectNameField, ProjectDescriptionField, UsersField } from 'views-components/form-fields/project-form-fields';
+import { ProjectNameField, ProjectDescriptionField } from 'views-components/form-fields/project-form-fields';
import { GroupClass } from 'models/group';
+import { FormGroup, FormLabel } from '@material-ui/core';
+import { UpdateProjectPropertiesForm } from 'views-components/project-properties/update-project-properties-form';
+import { resourcePropertiesList } from 'views-components/resource-properties/resource-properties-list';
-type DialogProjectProps = WithDialogProps<{sourcePanel: GroupClass, showUsersField?: boolean}> & InjectedFormProps<ProjectUpdateFormDialogData>;
+type DialogProjectProps = WithDialogProps<{sourcePanel: GroupClass}> & InjectedFormProps<ProjectUpdateFormDialogData>;
export const DialogProjectUpdate = (props: DialogProjectProps) => {
let title = 'Edit Project';
- let fields = ProjectEditFields;
const sourcePanel = props.data.sourcePanel || '';
- const showUsersField = !!props.data.showUsersField;
if (sourcePanel === GroupClass.ROLE) {
- title = showUsersField ? 'Create Group' : 'Edit Group';
- fields = showUsersField ? GroupAddFields : ProjectEditFields;
+ title = 'Edit Group';
}
return <FormDialog
dialogTitle={title}
- formFields={fields}
+ formFields={ProjectEditFields}
submitLabel='Save'
{...props}
/>;
};
+const UpdateProjectPropertiesList = resourcePropertiesList(PROJECT_UPDATE_FORM_NAME);
+
// Also used as "Group Edit Fields"
const ProjectEditFields = () => <span>
<ProjectNameField />
<ProjectDescriptionField />
-</span>;
-
-const GroupAddFields = () => <span>
- <ProjectNameField />
- <UsersField />
- <ProjectDescriptionField />
+ <FormLabel>Properties</FormLabel>
+ <FormGroup>
+ <UpdateProjectPropertiesForm />
+ <UpdateProjectPropertiesList />
+ </FormGroup>
</span>;