2019-08-14 17:12:24 -04:00
|
|
|
import React, { Fragment } from 'react';
|
2021-02-24 22:22:25 -05:00
|
|
|
import InfoBox from '../../components/info-box';
|
2022-06-01 05:35:35 -04:00
|
|
|
import { dataFields } from '../../config/data-fields-config';
|
2022-06-01 05:36:47 -04:00
|
|
|
import SelectDataEntry from '../data-components/select-data-entry';
|
2022-06-01 06:15:19 -04:00
|
|
|
import NumericDataEntry from '../data-components/numeric-data-entry';
|
2022-06-01 09:29:06 -04:00
|
|
|
import Verification from '../data-components/verification';
|
2022-06-01 11:02:11 -04:00
|
|
|
import { MultiDataEntry } from '../data-components/multi-data-entry/multi-data-entry';
|
2022-07-22 11:06:59 -04:00
|
|
|
import { LogicalDataEntry, LogicalDataEntryYesOnly } from '../data-components/logical-data-entry/logical-data-entry';
|
2022-06-06 09:20:27 -04:00
|
|
|
import { DataEntryGroup } from '../data-components/data-entry-group';
|
2019-08-14 14:33:26 -04:00
|
|
|
|
2019-08-14 16:54:00 -04:00
|
|
|
import withCopyEdit from '../data-container';
|
2019-11-07 02:39:26 -05:00
|
|
|
|
2019-10-18 10:06:50 -04:00
|
|
|
import { CategoryViewProps } from './category-view-props';
|
2019-08-14 14:33:26 -04:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Team view/edit section
|
|
|
|
*/
|
2022-06-01 06:12:49 -04:00
|
|
|
const TeamView: React.FunctionComponent<CategoryViewProps> = (props) => {
|
|
|
|
const building = props.building;
|
2022-06-01 06:29:59 -04:00
|
|
|
const currentYear = new Date().getFullYear();
|
2022-06-01 06:12:49 -04:00
|
|
|
const currentBuildingConstructionYear = building.date_year || undefined;
|
2022-06-01 09:08:46 -04:00
|
|
|
return (
|
2022-06-06 05:45:03 -04:00
|
|
|
<form>
|
2022-06-06 05:11:30 -04:00
|
|
|
<InfoBox msg="Can you help us capture information on who built the current building?"></InfoBox>
|
2022-07-22 11:16:53 -04:00
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.landowner.title}
|
|
|
|
slug="landowner"
|
|
|
|
value={props.building.landowner}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
tooltip={dataFields.landowner.tooltip}
|
|
|
|
placeholder=""
|
|
|
|
editableEntries={true}
|
|
|
|
/>
|
|
|
|
<Verification
|
2022-07-22 11:24:00 -04:00
|
|
|
slug="landowner"
|
2022-07-22 11:16:53 -04:00
|
|
|
allow_verify={props.user !== undefined && props.building.landowner !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
2022-07-22 11:24:00 -04:00
|
|
|
user_verified={props.user_verified.hasOwnProperty("landowner")}
|
2022-07-22 11:16:53 -04:00
|
|
|
user_verified_as={props.user_verified.landowner}
|
|
|
|
verified_count={props.building.verified.landowner}
|
|
|
|
/>
|
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.landowner_source_link.title}
|
|
|
|
slug="landowner_source_link"
|
|
|
|
value={props.building.landowner_source_link}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
tooltip={dataFields.landowner_source_link.tooltip}
|
|
|
|
placeholder="https://..."
|
|
|
|
editableEntries={true}
|
|
|
|
isUrl={true}
|
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="landowner_source_link"
|
|
|
|
allow_verify={props.user !== undefined && props.building.landowner_source_link !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("landowner_source_link")}
|
|
|
|
user_verified_as={props.user_verified.landowner_source_link}
|
|
|
|
verified_count={props.building.verified.landowner_source_link}
|
|
|
|
/>
|
2022-06-06 09:33:02 -04:00
|
|
|
<NumericDataEntry
|
|
|
|
slug='date_year'
|
|
|
|
title={dataFields.date_year.title}
|
|
|
|
value={currentBuildingConstructionYear}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
step={1}
|
|
|
|
min={1}
|
|
|
|
max={currentYear}
|
|
|
|
tooltip={dataFields.extension_year.tooltip}
|
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="date_year"
|
|
|
|
allow_verify={props.user !== undefined && props.building.date_year !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("date_year")}
|
|
|
|
user_verified_as={props.user_verified.date_year}
|
|
|
|
verified_count={props.building.verified.date_year}
|
|
|
|
/>
|
2022-06-06 09:29:35 -04:00
|
|
|
<LogicalDataEntry
|
2022-06-06 09:20:27 -04:00
|
|
|
title={dataFields.has_extension.title}
|
|
|
|
slug="has_extension"
|
|
|
|
value={props.building.has_extension}
|
2022-06-01 09:08:46 -04:00
|
|
|
mode={props.mode}
|
2022-06-20 06:52:57 -04:00
|
|
|
copy={props.copy}
|
2022-06-01 09:08:46 -04:00
|
|
|
onChange={props.onChange}
|
2022-06-06 09:20:27 -04:00
|
|
|
tooltip={dataFields.has_extension.tooltip}
|
2022-06-01 09:08:46 -04:00
|
|
|
/>
|
2022-06-06 09:24:16 -04:00
|
|
|
{props.building.has_extension ? (
|
2022-06-06 05:46:34 -04:00
|
|
|
<>
|
2022-06-06 05:40:01 -04:00
|
|
|
<NumericDataEntry
|
|
|
|
slug='extension_year'
|
|
|
|
title={dataFields.extension_year.title}
|
|
|
|
value={props.building.extension_year}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
step={1}
|
|
|
|
min={1}
|
|
|
|
max={currentYear}
|
|
|
|
tooltip={dataFields.extension_year.tooltip_extension}
|
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="extension_year"
|
|
|
|
allow_verify={props.user !== undefined && props.building.extension_year !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("extension_year")}
|
|
|
|
user_verified_as={props.user_verified.extension_year}
|
|
|
|
verified_count={props.building.verified.extension_year}
|
|
|
|
/>
|
2022-06-06 05:46:34 -04:00
|
|
|
</>
|
2022-06-06 09:33:02 -04:00
|
|
|
) : (null)}
|
2022-06-06 04:52:50 -04:00
|
|
|
<SelectDataEntry
|
|
|
|
slug='developer_type'
|
|
|
|
title={dataFields.developer_type.title}
|
|
|
|
value={props.building.developer_type}
|
|
|
|
options={dataFields.developer_type.items}
|
|
|
|
onChange={props.onChange}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
2022-06-01 11:17:23 -04:00
|
|
|
/>
|
2022-06-06 06:14:21 -04:00
|
|
|
<Verification
|
|
|
|
slug="developer_type"
|
|
|
|
allow_verify={props.user !== undefined && props.building.developer_type !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("developer_type")}
|
|
|
|
user_verified_as={props.user_verified.developer_type}
|
|
|
|
verified_count={props.building.verified.developer_type}
|
|
|
|
/>
|
2022-06-10 08:38:54 -04:00
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.developer_name.title}
|
|
|
|
slug="developer_name"
|
|
|
|
value={props.building.developer_name}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
tooltip={dataFields.developer_name.tooltip}
|
|
|
|
placeholder=""
|
|
|
|
editableEntries={true}
|
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="developer_name"
|
|
|
|
allow_verify={props.user !== undefined && props.building.developer_name !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("developer_name")}
|
|
|
|
user_verified_as={props.user_verified.developer_name}
|
|
|
|
verified_count={props.building.verified.developer_name}
|
|
|
|
/>
|
2022-06-10 06:14:45 -04:00
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.developer_source_link.title}
|
|
|
|
slug="developer_source_link"
|
|
|
|
value={props.building.developer_source_link}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
tooltip={dataFields.developer_source_link.tooltip}
|
|
|
|
placeholder="https://..."
|
|
|
|
editableEntries={true}
|
2022-07-07 05:25:13 -04:00
|
|
|
isUrl={true}
|
2022-06-10 06:14:45 -04:00
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="developer_source_link"
|
|
|
|
allow_verify={props.user !== undefined && props.building.developer_source_link !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("developer_source_link")}
|
|
|
|
user_verified_as={props.user_verified.developer_source_link}
|
|
|
|
verified_count={props.building.verified.developer_source_link}
|
|
|
|
/>
|
2022-06-06 10:41:39 -04:00
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.designers.title}
|
|
|
|
slug="designers"
|
|
|
|
value={props.building.designers}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
tooltip={dataFields.designers.tooltip}
|
|
|
|
placeholder=""
|
|
|
|
editableEntries={true}
|
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="designers"
|
|
|
|
allow_verify={props.user !== undefined && props.building.designers !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("designers")}
|
|
|
|
user_verified_as={props.user_verified.designers}
|
|
|
|
verified_count={props.building.verified.designers}
|
|
|
|
/>
|
2022-06-06 04:52:50 -04:00
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.designers_source_link.title}
|
|
|
|
slug="designers_source_link"
|
|
|
|
value={props.building.designers_source_link}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
tooltip={dataFields.designers_source_link.tooltip}
|
|
|
|
placeholder="https://..."
|
|
|
|
editableEntries={true}
|
2022-07-07 05:25:13 -04:00
|
|
|
isUrl={true}
|
2022-06-06 04:52:50 -04:00
|
|
|
/>
|
2022-06-06 06:14:21 -04:00
|
|
|
<Verification
|
|
|
|
slug="designers_source_link"
|
|
|
|
allow_verify={props.user !== undefined && props.building.designers_source_link !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("designers_source_link")}
|
|
|
|
user_verified_as={props.user_verified.designers_source_link}
|
|
|
|
verified_count={props.building.verified.designers_source_link}
|
|
|
|
/>
|
2022-06-06 04:52:50 -04:00
|
|
|
<SelectDataEntry
|
|
|
|
slug='lead_designer_type'
|
|
|
|
title={dataFields.lead_designer_type.title}
|
|
|
|
value={props.building.lead_designer_type}
|
|
|
|
options={dataFields.lead_designer_type.items}
|
|
|
|
onChange={props.onChange}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
2022-06-01 11:25:20 -04:00
|
|
|
/>
|
2022-06-06 06:14:21 -04:00
|
|
|
<Verification
|
|
|
|
slug="lead_designer_type"
|
|
|
|
allow_verify={props.user !== undefined && props.building.lead_designer_type !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("lead_designer_type")}
|
|
|
|
user_verified_as={props.user_verified.lead_designer_type}
|
|
|
|
verified_count={props.building.verified.lead_designer_type}
|
|
|
|
/>
|
2022-07-22 11:06:59 -04:00
|
|
|
<LogicalDataEntryYesOnly
|
2022-06-06 04:52:50 -04:00
|
|
|
slug='designer_awards'
|
|
|
|
title={dataFields.designer_awards.title}
|
|
|
|
tooltip={dataFields.designer_awards.tooltip}
|
|
|
|
value={props.building.designer_awards}
|
2022-06-20 06:52:57 -04:00
|
|
|
copy={props.copy}
|
2022-06-06 04:52:50 -04:00
|
|
|
onChange={props.onChange}
|
|
|
|
mode={props.mode}
|
|
|
|
/>
|
2022-06-06 06:14:21 -04:00
|
|
|
<Verification
|
|
|
|
slug="designer_awards"
|
|
|
|
allow_verify={props.user !== undefined && props.building.designer_awards !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("designer_awards")}
|
|
|
|
user_verified_as={props.user_verified.designer_awards}
|
|
|
|
verified_count={props.building.verified.designer_awards}
|
|
|
|
/>
|
2022-06-06 05:53:17 -04:00
|
|
|
{props.building.designer_awards ? (
|
|
|
|
<>
|
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.awards_source_link.title}
|
|
|
|
slug="awards_source_link"
|
|
|
|
value={props.building.awards_source_link}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
tooltip={dataFields.awards_source_link.tooltip}
|
|
|
|
placeholder="https://..."
|
|
|
|
editableEntries={true}
|
2022-07-07 05:25:13 -04:00
|
|
|
isUrl={true}
|
2022-06-06 05:53:17 -04:00
|
|
|
/>
|
2022-06-06 06:14:21 -04:00
|
|
|
<Verification
|
|
|
|
slug="awards_source_link"
|
|
|
|
allow_verify={props.user !== undefined && props.building.awards_source_link !== null && !props.edited}
|
2022-06-06 06:22:01 -04:00
|
|
|
onVerify={props.onVerify}
|
2022-06-06 06:14:21 -04:00
|
|
|
user_verified={props.user_verified.hasOwnProperty("awards_source_link")}
|
|
|
|
user_verified_as={props.user_verified.awards_source_link}
|
|
|
|
verified_count={props.building.verified.awards_source_link}
|
|
|
|
/>
|
2022-06-06 05:53:17 -04:00
|
|
|
</>
|
|
|
|
) : (null)
|
|
|
|
}
|
2022-06-10 06:37:52 -04:00
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.builder.title}
|
|
|
|
slug="builder"
|
|
|
|
value={props.building.builder}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
placeholder=""
|
|
|
|
editableEntries={true}
|
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="builder"
|
|
|
|
allow_verify={props.user !== undefined && props.building.builder !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("builder")}
|
|
|
|
user_verified_as={props.user_verified.builder}
|
|
|
|
verified_count={props.building.verified.builder}
|
|
|
|
/>
|
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.builder_source_link.title}
|
|
|
|
slug="builder_source_link"
|
|
|
|
value={props.building.builder_source_link}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
placeholder="https://..."
|
|
|
|
editableEntries={true}
|
2022-07-07 05:25:13 -04:00
|
|
|
isUrl={true}
|
2022-06-10 06:37:52 -04:00
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="builder_source_link"
|
|
|
|
allow_verify={props.user !== undefined && props.building.builder_source_link !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("builder_source_link")}
|
|
|
|
user_verified_as={props.user_verified.builder_source_link}
|
|
|
|
verified_count={props.building.verified.builder_source_link}
|
|
|
|
/>
|
2022-06-10 08:13:23 -04:00
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.other_team.title}
|
|
|
|
slug="other_team"
|
|
|
|
value={props.building.other_team}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
placeholder=""
|
|
|
|
editableEntries={true}
|
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="other_team"
|
|
|
|
allow_verify={props.user !== undefined && props.building.other_team !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("other_team")}
|
|
|
|
user_verified_as={props.user_verified.other_team}
|
|
|
|
verified_count={props.building.verified.other_team}
|
|
|
|
/>
|
|
|
|
<MultiDataEntry
|
|
|
|
title={dataFields.other_team_source_link.title}
|
|
|
|
slug="other_team_source_link"
|
|
|
|
value={props.building.other_team_source_link}
|
|
|
|
mode={props.mode}
|
|
|
|
copy={props.copy}
|
|
|
|
onChange={props.onChange}
|
|
|
|
placeholder="https://..."
|
|
|
|
editableEntries={true}
|
2022-07-07 05:25:13 -04:00
|
|
|
isUrl={true}
|
2022-06-10 08:13:23 -04:00
|
|
|
/>
|
|
|
|
<Verification
|
|
|
|
slug="other_team_source_link"
|
|
|
|
allow_verify={props.user !== undefined && props.building.other_team_source_link !== null && !props.edited}
|
|
|
|
onVerify={props.onVerify}
|
|
|
|
user_verified={props.user_verified.hasOwnProperty("other_team_source_link")}
|
|
|
|
user_verified_as={props.user_verified.other_team_source_link}
|
|
|
|
verified_count={props.building.verified.other_team_source_link}
|
|
|
|
/>
|
2022-06-06 05:45:03 -04:00
|
|
|
</form>
|
2022-06-06 04:52:50 -04:00
|
|
|
);
|
2022-06-01 06:12:49 -04:00
|
|
|
};
|
2019-08-14 14:33:26 -04:00
|
|
|
const TeamContainer = withCopyEdit(TeamView);
|
|
|
|
|
|
|
|
export default TeamContainer;
|