@plusscommunities/pluss-maintenance-app 8.0.11 → 8.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -397,6 +397,13 @@ class RequestDetail extends Component {
397
397
  this.markSeen();
398
398
  });
399
399
  }
400
+ openGallery(galleryImages, index) {
401
+ this.setState({
402
+ galleryOpen: true,
403
+ galleryImages
404
+ });
405
+ this.imagePopup.current.scrollTo(index);
406
+ }
400
407
  openGallery(galleryImages, index) {
401
408
  this.setState({
402
409
  galleryOpen: true,
@@ -748,7 +755,6 @@ class RequestDetail extends Component {
748
755
  textStyle: styles.detailsText,
749
756
  sectionStyle: styles.detailsSection
750
757
  }), this.state.showMore && /*#__PURE__*/React.createElement(View, null, hasCustomFields ? this.renderCustomFields() : null, !hasCustomFields ? /*#__PURE__*/React.createElement(React.Fragment, null, this.renderImage(job.images, job.image), !_.isEmpty(job.description) && /*#__PURE__*/React.createElement(Text, {
751
- numberOfLines: 10,
752
758
  style: styles.jobDescriptionText
753
759
  }, job.description)) : null, /*#__PURE__*/React.createElement(Text, {
754
760
  style: styles.locationLabel
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","Text","ScrollView","View","StyleSheet","KeyboardAvoidingView","TouchableOpacity","ImageBackground","Platform","DateTimePicker","Icon","_","moment","connect","maintenanceActions","jobAdded","jobStatusesUpdate","jobHideSeenUpdate","StatusSelectorPopup","PrioritySelectorPopup","getJobStatus","getJobPriority","Services","Colours","Helper","Components","Config","values","RequestDetail","constructor","props","_defineProperty","setState","loading","res","getJob","job","site","id","data","updateJobState","getExternalSync","error","console","log","toString","response","status","forbidden","hasPermission","getAssignees","user","assignees","Users","_this$props$job","loadingExternalSync","externalSync","_error$response","state","seen","Id","userID","updated","editJob","expectedDate","utc","toISOString","editJobStatus","editJobPriority","priority","navigation","goBack","showStatusPopup","updateJobStatus","showPriorityPopup","updateJobPriority","navigate","screenRequestNotes","onChange","popUpType","isDateTimePickerVisible","date","expectedDateText","format","updateJob","showMore","showMessages","count","permissions","includes","permissionMaintenanceTracking","permissionMaintenanceAssignment","AssigneeId","url","showFullscreenVideo","length","currentVideoUrl","options","map","a","key","name","displayName","selection","title","onSelect","onSelectAssignee","assignee","assignJob","galleryOpen","galleryImages","selectedPDF","scrollView","createRef","commentReply","commentSection","imagePopup","componentDidMount","defaultJob","find","jobs","j","newState","markSeen","openGallery","index","refs","scrollTo","closeGallery","renderLoading","createElement","LoadingIndicator","visible","renderTop","statusOption","canEdit","isStaff","category","showSeen","text","style","getShadowStyle","styles","jobTitleContainer","jobId","jobIdText","color","colourBrandingMain","textEntityName","jobTitleText","jobTypeSeenContainer","jobTypeContainer","backgroundColor","hexToRGBAstring","jobTypeText","numberOfLines","type","hideSeen","jobSeenContainer","iconStyle","jobSeenIcon","jobSeenText","lastActivityUnix","textSectionInner","textSectionLabel","textSectionTextContainer","textSectionText","jobInfoContainer","jobStatusExpectedContainer","jobStatusOuterContainer","jobStatusHeading","onPress","onOpenStatusPicker","jobStatusContainer","jobStatusText","openStaffNotes","jobStatusIcon","Notes","jobPriorityOuterContainer","onOpenPriorityPicker","label","renderPlayableImageUrl","images","containerStyle","thumbUrl","getThumb300","isVideo","flex","source","uri","imagePlayContainer","toggleFullscreenVideo","bind","imageControlIcon","imageUrl","get1400","imageContainer","plusImages","renderPlayableImage","renderImage","image","isNil","isEmpty","sideBySideImages","sideBySideImageContainer","singleImageContainer","renderDocument","documents","document","documentContainer","documentTypeContainer","documentTypeText","ext","documentText","uploading","uploadProgress","renderImagePopup","ImagePopup","onClose","ref","renderDocumentPopup","PDFPopup","pdfCount","renderAssignee","Assignee","content","locationLabel","profileContainer","ProfilePic","profilePic","Diameter","nameContainer","nameText","FormCardSectionOptionLauncher","onOpenAssigneePicker","value","textStyle","detailsText","sectionStyle","detailsSection","renderExternalSync","externalSyncContainer","externalSyncHeader","externalSyncTitle","externalSyncIcon","externalSyncContent","systemType","externalSyncRow","externalSyncLabel","externalSyncValue","externalId","syncedAt","renderCustomFields","customFields","renderAnswer","field","customText","answer","Array","isArray","join","customImage","customDocument","customLabel","rendeDetails","hasCustomFields","onToggleDetails","icon","Fragment","description","jobDescriptionText","locationText","room","isHome","homeText","requesterLabel","userProfilePic","userName","phone","phoneText","renderMessages","CommentSection","adminPermission","entityType","commentKey","entityId","entityName","location","live","refreshFrequency","placeHolder","paddingHorizontal","paddingTop","onCommentsLoaded","onCommentAdded","hideAddComment","disableFlag","InlineButton","onLeaveMessage","touchableStyle","marginTop","height","fullWidth","renderMessagesReply","CommentReply","renderStatusPopup","onCloseStatusPopup","onSelectStatus","renderPriorityPopup","onClosePriorityPopup","onSelectPriority","render","Forbidden","behavior","container","Header","leftIcon","onPressLeft","onPressBack","env","strings","MAINTENANCE_REQUEST_DETAILS","contentContainerStyle","paddingBottom","innerContainer","isVisible","onConfirm","onDateSelected","onCancel","onCloseDatePicker","mode","headerTextIOS","Date","create","paddingVertical","fontFamily","fontSize","marginBottom","TEXT_DARKEST","flexDirection","alignItems","padding","minWidth","maxWidth","borderRadius","justifyContent","textAlign","marginLeft","jobStatusDateText","TEXT_LIGHT","borderTopWidth","borderTopColor","LINEGREY","letterSpacing","TEXT_DARK","width","marginRight","jobExpectedDateContainer","BOXGREY","paddingLeft","jobExpectedDate","overflow","position","top","left","right","bottom","textShadowColor","textShadowOffset","textShadowRadius","lineHeight","textSectionAngleRight","customStaticTitle","customStaticText","borderBottomWidth","borderBottomColor","mapStateToProps","getMainBrandingColourFromState","reducerKey","statusTypes","jobstatuses"],"sources":["RequestDetail.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tScrollView,\n\tView,\n\tStyleSheet,\n\tKeyboardAvoidingView,\n\tTouchableOpacity,\n\tImageBackground,\n\tPlatform,\n} from \"react-native\";\nimport DateTimePicker from \"react-native-modal-datetime-picker\";\nimport { Icon } from \"@rneui/themed\";\nimport _ from \"lodash\";\nimport moment from \"moment\";\nimport { connect } from \"react-redux\";\nimport { maintenanceActions } from \"../apis\";\nimport { jobAdded, jobStatusesUpdate, jobHideSeenUpdate } from \"../actions\";\nimport StatusSelectorPopup from \"../components/StatusSelectorPopup\";\nimport PrioritySelectorPopup from \"../components/PrioritySelectorPopup\";\nimport { getJobStatus, getJobPriority } from \"../helper\";\nimport { Services } from \"../feature.config\";\nimport { Colours, Helper, Components, Config } from \"../core.config\";\nimport { values } from \"../values.config\";\n\nclass RequestDetail extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\n\t\tthis.state = {\n\t\t\tjob: {},\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tpopUpType: \"\",\n\t\t\tstatus: \"\",\n\t\t\tpriority: \"\",\n\t\t\texpectedDate: null,\n\t\t\texpectedDateText: \"\",\n\t\t\tseen: false,\n\t\t\tshowMore: true,\n\t\t\tshowStatusPopup: false,\n\t\t\tshowPriorityPopup: false,\n\t\t\tloading: false,\n\t\t\tshowFullscreenVideo: false,\n\t\t\tcurrentVideoUrl: \"\",\n\t\t\tgalleryOpen: false,\n\t\t\tgalleryImages: [],\n\t\t\tshowMessages: false,\n\t\t\tassignees: [],\n\t\t\tselectedPDF: null,\n\t\t\texternalSync: null,\n\t\t\tloadingExternalSync: false,\n\t\t};\n\n\t\tthis.scrollView = React.createRef();\n\t\tthis.commentReply = React.createRef();\n\t\tthis.commentSection = React.createRef();\n\t\tthis.imagePopup = React.createRef();\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.props.jobStatusesUpdate(this.props.job.site);\n\t\tthis.props.jobHideSeenUpdate(this.props.job.site);\n\t\tthis.getJob();\n\t\tthis.updateJobState(this.props.job);\n\t\tthis.getAssignees();\n\t\tthis.getExternalSync();\n\t}\n\n\tgetJob = async () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst res = await maintenanceActions.getJob(\n\t\t\t\t\tthis.props.job.site,\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t);\n\t\t\t\t// console.log('getJob', JSON.stringify(res.data, null, 2));\n\t\t\t\tthis.props.jobAdded(res.data);\n\t\t\t\tthis.updateJobState(res.data);\n\t\t\t\t// Refresh external sync data when job is refreshed\n\t\t\t\tthis.getExternalSync();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"getJob error\", error.toString());\n\t\t\t\t// check for 403 or 404 error\n\t\t\t\tif (error.response.status === 403 || error.response.status === 404) {\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tforbidden: true,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tconsole.log(\"getJob error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tgetAssignees = async () => {\n\t\tif (!this.hasPermission()) return;\n\t\ttry {\n\t\t\tconst res = await maintenanceActions.getAssignees(this.props.user.site);\n\t\t\tthis.setState({ assignees: res.data.Users });\n\t\t} catch (error) {\n\t\t\tconsole.log(\"getAssignees error\", error);\n\t\t}\n\t};\n\n\tgetExternalSync = async () => {\n\t\t// Only fetch if user has maintenance tracking permission\n\t\tif (!this.hasPermission()) return;\n\t\tif (!this.props.job?.id) return;\n\n\t\ttry {\n\t\t\tthis.setState({ loadingExternalSync: true });\n\t\t\tconst res = await maintenanceActions.getExternalSync(this.props.job.id);\n\t\t\tthis.setState({ externalSync: res.data, loadingExternalSync: false });\n\t\t} catch (error) {\n\t\t\t// 404 is expected if no sync - don't show error\n\t\t\tif (error.response?.status !== 404) {\n\t\t\t\tconsole.log(\"getExternalSync error\", error);\n\t\t\t}\n\t\t\tthis.setState({ loadingExternalSync: false });\n\t\t}\n\t};\n\n\tupdateJobState(defaultJob) {\n\t\tconst job =\n\t\t\t_.find(this.props.jobs, (j) => j.id === this.props.job.id) || defaultJob;\n\t\tif (!job) {\n\t\t\tthis.getJob();\n\t\t\treturn;\n\t\t}\n\t\tconst newState = { job, status: job.status };\n\t\tif (job.expectedDate) {\n\t\t\tnewState.expectedDate = moment(job.expectedDate);\n\t\t\tnewState.expectedDateText = newState.expectedDate.format(\"DD/MM/YYYY\");\n\t\t}\n\t\tif (job.seen) newState.seen = job.seen;\n\t\tthis.setState(newState, () => {\n\t\t\tthis.markSeen();\n\t\t});\n\t}\n\n\tmarkSeen = () => {\n\t\tconst { user } = this.props;\n\t\tconst { job } = this.state;\n\t\t// Must have maintenance permission and not the requester\n\t\t// console.log('markSeen check', job.userID, user.Id);\n\t\tif (job.seen === true) return;\n\t\tif (!this.hasPermission()) return;\n\t\tif (user.Id === job.userID) return;\n\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst updated = {\n\t\t\t\t\tid: job.id,\n\t\t\t\t\tseen: true,\n\t\t\t\t\tstatus: job.status || \"Unassigned\",\n\t\t\t\t};\n\t\t\t\tconst res = await maintenanceActions.editJob(updated, user.site);\n\t\t\t\t// console.log('markSeen updated');\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t\tthis.setState({ loading: false, seen: true });\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"markSeen error\", error);\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tupdateJob = () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\tconst { user } = this.props;\n\t\t\tconst { job } = this.state;\n\t\t\ttry {\n\t\t\t\tconst updated = { id: job.id };\n\t\t\t\tif (this.state.expectedDate) {\n\t\t\t\t\tupdated.expectedDate = moment(this.state.expectedDate)\n\t\t\t\t\t\t.utc()\n\t\t\t\t\t\t.toISOString();\n\t\t\t\t}\n\t\t\t\tconst res = await maintenanceActions.editJob(updated, user.site);\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"updateJob error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tupdateJobStatus = () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst res = await maintenanceActions.editJobStatus(\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t\tthis.state.status,\n\t\t\t\t);\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"updateJobStatus error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tupdateJobPriority = () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst res = await maintenanceActions.editJobPriority(\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t\tthis.state.priority,\n\t\t\t\t);\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"updateJobPriority error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tonPressBack = () => {\n\t\tServices.navigation.goBack();\n\t};\n\n\tonOpenStatusPicker = () => {\n\t\tthis.setState({ showStatusPopup: true });\n\t};\n\n\tonCloseStatusPopup = () => {\n\t\tthis.setState({ showStatusPopup: false });\n\t};\n\n\tonSelectStatus = (status) => {\n\t\tif (this.state.loading) return;\n\t\tthis.setState({ status, showStatusPopup: false }, () => {\n\t\t\tthis.updateJobStatus();\n\t\t});\n\t};\n\n\tonOpenPriorityPicker = () => {\n\t\tthis.setState({ showPriorityPopup: true });\n\t};\n\n\tonClosePriorityPopup = () => {\n\t\tthis.setState({ showPriorityPopup: false });\n\t};\n\n\tonSelectPriority = (priority) => {\n\t\tif (this.state.loading) return;\n\t\tthis.setState({ priority, showPriorityPopup: false }, () => {\n\t\t\tthis.updateJobPriority();\n\t\t});\n\t};\n\n\topenStaffNotes = () => {\n\t\tServices.navigation.navigate(values.screenRequestNotes, {\n\t\t\tjob: this.state.job,\n\t\t\tonChange: this.getJob,\n\t\t});\n\t};\n\n\tonOpenDatePicker = () => {\n\t\tthis.setState({ popUpType: \"date\", isDateTimePickerVisible: true });\n\t};\n\n\tonCloseDatePicker = () => {\n\t\tthis.setState({ isDateTimePickerVisible: false });\n\t};\n\n\tonDateSelected = (date) => {\n\t\tif (this.state.popUpType === \"date\") {\n\t\t\tdate = moment(date);\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\texpectedDate: date,\n\t\t\t\t\texpectedDateText: date.format(\"DD/MM/YYYY\"),\n\t\t\t\t\tisDateTimePickerVisible: false,\n\t\t\t\t},\n\t\t\t\t() => {\n\t\t\t\t\tthis.updateJob();\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\t};\n\n\tonToggleDetails = () => {\n\t\tthis.setState({ showMore: !this.state.showMore });\n\t};\n\n\tonLeaveMessage = () => {\n\t\tthis.setState({ showMessages: true });\n\t};\n\n\tonCommentsLoaded = (count) => {\n\t\tif (count > 0) {\n\t\t\tthis.setState({ showMessages: true });\n\t\t}\n\t};\n\n\tonCommentAdded = () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst job = await maintenanceActions.getJob(\n\t\t\t\t\tthis.props.user.site,\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t);\n\t\t\t\t// console.log('onCommentAdded', job?.data);\n\t\t\t\tthis.props.jobAdded(job.data);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"onCommentAdded error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\thasPermission = () => {\n\t\tconst { job } = this.state;\n\t\tconst { permissions } = this.props.user;\n\t\tif (_.includes(permissions, values.permissionMaintenanceTracking)) {\n\t\t\treturn true;\n\t\t}\n\t\tif (_.includes(permissions, values.permissionMaintenanceAssignment)) {\n\t\t\treturn job.AssigneeId === this.props.user.Id;\n\t\t}\n\t\treturn false;\n\t};\n\n\ttoggleFullscreenVideo = (url) => {\n\t\tif (typeof url !== \"string\") url = \"\";\n\t\tthis.setState({\n\t\t\tshowFullscreenVideo: url.length > 0,\n\t\t\tcurrentVideoUrl: url,\n\t\t});\n\t};\n\n\topenGallery(galleryImages, index) {\n\t\tthis.setState({\n\t\t\tgalleryOpen: true,\n\t\t\tgalleryImages,\n\t\t});\n\t\tthis.refs.imagePopup.scrollTo(index);\n\t}\n\n\tcloseGallery() {\n\t\tthis.setState({\n\t\t\tgalleryOpen: false,\n\t\t});\n\t}\n\n\tonOpenAssigneePicker = () => {\n\t\tconst options = this.state.assignees.map((a) => {\n\t\t\treturn { key: a.id, name: a.displayName };\n\t\t});\n\t\tServices.navigation.navigate(\"optionSelector\", {\n\t\t\toptions,\n\t\t\tselection: this.state.job.AssigneeId,\n\t\t\ttitle: \"Assign request\",\n\t\t\tonSelect: this.onSelectAssignee,\n\t\t});\n\t};\n\n\tonSelectAssignee = (assignee) => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconsole.log(\"onSelectAssignee\", this.props.job.id, assignee.key);\n\t\t\t\tconst res = await maintenanceActions.assignJob(\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t\tassignee.key,\n\t\t\t\t);\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"onSelectAssignee error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\trenderLoading() {\n\t\treturn <Components.LoadingIndicator visible={this.state.loading} />;\n\t}\n\n\trenderTop() {\n\t\tconst { status, job } = this.state;\n\t\tconst statusOption = getJobStatus(status, this.props);\n\t\tconst priority = getJobPriority(job.priority);\n\t\tconst canEdit = this.hasPermission();\n\t\tconst isStaff = this.props.user.category === \"staff\";\n\t\tconst showSeen = !status || status === getJobStatus(null, this.props).text;\n\n\t\treturn (\n\t\t\t<View style={{ ...Helper.getShadowStyle() }}>\n\t\t\t\t<View style={styles.jobTitleContainer}>\n\t\t\t\t\t{job.jobId ? (\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.jobIdText,\n\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>{`${values.textEntityName} #${job.jobId}`}</Text>\n\t\t\t\t\t) : null}\n\t\t\t\t\t<Text style={styles.jobTitleText}>{job.title}</Text>\n\t\t\t\t\t<View style={styles.jobTypeSeenContainer}>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.jobTypeContainer,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbackgroundColor: Colours.hexToRGBAstring(\n\t\t\t\t\t\t\t\t\t\tthis.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t0.2,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\tstyles.jobTypeText,\n\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\tnumberOfLines={2}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{job.type}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t{!this.props.hideSeen && showSeen && this.state.seen && (\n\t\t\t\t\t\t\t<View style={styles.jobSeenContainer}>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tname=\"check\"\n\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.jobSeenIcon,\n\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.jobSeenText,\n\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\tSeen\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\n\t\t\t\t\t{job.lastActivityUnix && (\n\t\t\t\t\t\t<View style={styles.textSectionInner}>\n\t\t\t\t\t\t\t<Text style={styles.textSectionLabel}>Last Updated On</Text>\n\t\t\t\t\t\t\t<View style={styles.textSectionTextContainer}>\n\t\t\t\t\t\t\t\t<Text style={styles.textSectionText}>\n\t\t\t\t\t\t\t\t\t{moment(job.lastActivityUnix).format(\"ddd D MMMM, h:mm A\")}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t\t{/* <View style={styles.textSectionInner}>\n <Text style={styles.textSectionLabel}>Expected Date</Text>\n <TouchableOpacity onPress={this.onOpenDatePicker}>\n <View style={styles.textSectionTextContainer}>\n <Text style={styles.textSectionText}>{this.state.expectedDateText || 'Select Date'}</Text>\n <Icon\n name=\"angle-right\"\n type=\"font-awesome\"\n iconStyle={[styles.textSectionAngleRight, { color: this.props.colourBrandingMain }]}\n />\n </View>\n </TouchableOpacity>\n </View> */}\n\t\t\t\t</View>\n\t\t\t\t<View style={styles.jobInfoContainer}>\n\t\t\t\t\t<View style={styles.jobStatusExpectedContainer}>\n\t\t\t\t\t\t<View style={styles.jobStatusOuterContainer}>\n\t\t\t\t\t\t\t<Text style={styles.jobStatusHeading}>STATUS</Text>\n\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\tonPress={canEdit ? this.onOpenStatusPicker : null}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.jobStatusContainer,\n\t\t\t\t\t\t\t\t\t\t{ backgroundColor: statusOption.color },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Text style={styles.jobStatusText}>{statusOption?.text}</Text>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t{this.hasPermission() && (\n\t\t\t\t\t\t\t<View style={styles.jobStatusOuterContainer}>\n\t\t\t\t\t\t\t\t<Text style={styles.jobStatusHeading}>STAFF NOTES</Text>\n\t\t\t\t\t\t\t\t<TouchableOpacity onPress={this.openStaffNotes}>\n\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.jobStatusContainer,\n\t\t\t\t\t\t\t\t\t\t\t{ backgroundColor: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\tname=\"pencil-square-o\"\n\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\ticonStyle={styles.jobStatusIcon}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.jobStatusText}>\n\t\t\t\t\t\t\t\t\t\t\tNotes ({(job.Notes || []).length})\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\t\t\t\t\t{isStaff && (\n\t\t\t\t\t\t<View style={styles.jobPriorityOuterContainer}>\n\t\t\t\t\t\t\t<Text style={styles.jobStatusHeading}>PRIORITY</Text>\n\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\tonPress={canEdit ? this.onOpenPriorityPicker : null}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.jobStatusContainer,\n\t\t\t\t\t\t\t\t\t\t{ backgroundColor: priority.color },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Text style={styles.jobStatusText}>{priority.label}</Text>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderPlayableImageUrl(images, index, containerStyle, showMore) {\n\t\tconst url = images[index || 0];\n\t\tconst thumbUrl = Helper.getThumb300(url);\n\n\t\tif (Helper.isVideo(url)) {\n\t\t\treturn (\n\t\t\t\t<ImageBackground\n\t\t\t\t\tstyle={[{ flex: 1 }, containerStyle]}\n\t\t\t\t\tsource={{ uri: thumbUrl }}\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.imagePlayContainer}>\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tonPress={this.toggleFullscreenVideo.bind(this, url)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"play\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t</View>\n\t\t\t\t</ImageBackground>\n\t\t\t);\n\t\t}\n\n\t\tconst imageUrl = Helper.get1400(url);\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={containerStyle}\n\t\t\t\tonPress={this.openGallery.bind(this, images, index || 0)}\n\t\t\t>\n\t\t\t\t<ImageBackground\n\t\t\t\t\tstyle={styles.imageContainer}\n\t\t\t\t\tsource={{ uri: imageUrl }}\n\t\t\t\t>\n\t\t\t\t\t{showMore && (\n\t\t\t\t\t\t<Text style={styles.plusImages}>\n\t\t\t\t\t\t\t+{this.state.job.images.length - 2}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t)}\n\t\t\t\t</ImageBackground>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\trenderPlayableImage(images, index, containerStyle, showMore) {\n\t\treturn this.renderPlayableImageUrl(images, index, containerStyle, showMore);\n\t}\n\n\trenderImage(images, image = null) {\n\t\tif (!_.isNil(images) && !_.isEmpty(images)) {\n\t\t\tif (images.length >= 2) {\n\t\t\t\treturn (\n\t\t\t\t\t<View style={styles.sideBySideImages}>\n\t\t\t\t\t\t{this.renderPlayableImage(\n\t\t\t\t\t\t\timages,\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\tstyles.sideBySideImageContainer,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this.renderPlayableImage(\n\t\t\t\t\t\t\timages,\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\tstyles.sideBySideImageContainer,\n\t\t\t\t\t\t\timages.length > 2,\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\treturn (\n\t\t\t\t\t<View style={styles.singleImageContainer}>\n\t\t\t\t\t\t{this.renderPlayableImage(images, 0)}\n\t\t\t\t\t</View>\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (!_.isNil(image)) {\n\t\t\treturn (\n\t\t\t\t<View style={styles.singleImageContainer}>\n\t\t\t\t\t{this.renderPlayableImageUrl([image], 0)}\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\n\trenderDocument(documents) {\n\t\tconst { colourBrandingMain } = this.props;\n\n\t\tif (!_.isNil(documents) && !_.isEmpty(documents)) {\n\t\t\treturn documents.map((document, index) => {\n\t\t\t\treturn (\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tkey={index}\n\t\t\t\t\t\tstyle={styles.documentContainer}\n\t\t\t\t\t\tonPress={() => this.setState({ selectedPDF: document })}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t...styles.documentTypeContainer,\n\t\t\t\t\t\t\t\tbackgroundColor: colourBrandingMain,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text style={styles.documentTypeText}>{document.ext}</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tstyle={styles.documentText}\n\t\t\t\t\t\t>{`${document.name}${document.uploading ? ` - ${document.uploadProgress}` : \"\"}`}</Text>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\t\treturn null;\n\t}\n\n\trenderImagePopup() {\n\t\treturn (\n\t\t\t<Components.ImagePopup\n\t\t\t\tvisible={this.state.galleryOpen}\n\t\t\t\timages={this.state.galleryImages}\n\t\t\t\tonClose={this.closeGallery.bind(this)}\n\t\t\t\tref={this.imagePopup}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderDocumentPopup() {\n\t\tif (_.isEmpty(this.state.selectedPDF)) return null;\n\t\treturn (\n\t\t\t<Components.PDFPopup\n\t\t\t\tsource={this.state.selectedPDF.url}\n\t\t\t\tonClose={() => this.setState({ selectedPDF: null })}\n\t\t\t\ttitle={this.state.selectedPDF.name}\n\t\t\t\tpdfCount={1}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderAssignee() {\n\t\tconst { job } = this.state;\n\t\tif (!this.hasPermission() && !job.Assignee) return null;\n\n\t\tconst content = (\n\t\t\t<View>\n\t\t\t\t<Text style={styles.locationLabel}>Assigned To</Text>\n\t\t\t\t<View>\n\t\t\t\t\t{job.Assignee && (\n\t\t\t\t\t\t<View style={styles.profileContainer}>\n\t\t\t\t\t\t\t<Components.ProfilePic\n\t\t\t\t\t\t\t\tProfilePic={job.Assignee.profilePic}\n\t\t\t\t\t\t\t\tDiameter={40}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<View style={styles.nameContainer}>\n\t\t\t\t\t\t\t\t<Text style={styles.nameText}>{job.Assignee.displayName}</Text>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t);\n\n\t\tif (this.hasPermission()) {\n\t\t\treturn (\n\t\t\t\t<Components.FormCardSectionOptionLauncher\n\t\t\t\t\tonPress={this.onOpenAssigneePicker}\n\t\t\t\t\ttitle=\"Assigned To\"\n\t\t\t\t\tvalue={job.Assignee ? job.Assignee.displayName : \"Unassigned\"}\n\t\t\t\t\ttextStyle={styles.detailsText}\n\t\t\t\t\tsectionStyle={styles.detailsSection}\n\t\t\t\t>\n\t\t\t\t\t{content}\n\t\t\t\t</Components.FormCardSectionOptionLauncher>\n\t\t\t);\n\t\t}\n\t\treturn content;\n\t}\n\n\trenderExternalSync() {\n\t\tconst { externalSync, loadingExternalSync } = this.state;\n\n\t\t// Only show if user has permission and external sync data exists\n\t\tif (!this.hasPermission()) return null;\n\t\tif (!externalSync || loadingExternalSync) return null;\n\n\t\treturn (\n\t\t\t<View style={[styles.externalSyncContainer, Helper.getShadowStyle()]}>\n\t\t\t\t<View style={styles.externalSyncHeader}>\n\t\t\t\t\t<Text style={styles.externalSyncTitle}>External Sync</Text>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tname=\"sync\"\n\t\t\t\t\t\ttype=\"material\"\n\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\tstyles.externalSyncIcon,\n\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t]}\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<View style={styles.externalSyncContent}>\n\t\t\t\t\t{externalSync.systemType && (\n\t\t\t\t\t\t<View style={styles.externalSyncRow}>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncLabel}>System:</Text>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncValue}>\n\t\t\t\t\t\t\t\t{externalSync.systemType}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t\t{externalSync.externalId && (\n\t\t\t\t\t\t<View style={styles.externalSyncRow}>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncLabel}>External ID:</Text>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncValue}>\n\t\t\t\t\t\t\t\t{externalSync.externalId}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t\t{externalSync.syncedAt && (\n\t\t\t\t\t\t<View style={styles.externalSyncRow}>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncLabel}>Synced:</Text>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncValue}>\n\t\t\t\t\t\t\t\t{moment(externalSync.syncedAt).format(\"D MMM YYYY h:mma\")}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderCustomFields() {\n\t\tconst { job } = this.state;\n\t\tconst { customFields } = job;\n\n\t\tconst renderAnswer = (field) => {\n\t\t\tswitch (field.type) {\n\t\t\t\tcase \"date\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Text style={styles.customText}>\n\t\t\t\t\t\t\t{field.answer\n\t\t\t\t\t\t\t\t? moment(field.answer, \"YYYY-MM-DD\").format(\"DD MMM YYYY\")\n\t\t\t\t\t\t\t\t: \"\"}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t);\n\t\t\t\tcase \"time\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Text style={styles.customText}>\n\t\t\t\t\t\t\t{field.answer\n\t\t\t\t\t\t\t\t? moment(field.answer, \"HH:mm\").format(\"h:mm a\")\n\t\t\t\t\t\t\t\t: \"\"}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t);\n\t\t\t\tcase \"yn\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Text style={styles.customText}>{field.answer ? \"Yes\" : \"No\"}</Text>\n\t\t\t\t\t);\n\t\t\t\tcase \"checkbox\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Text style={styles.customText}>\n\t\t\t\t\t\t\t{field.answer && Array.isArray(field.answer)\n\t\t\t\t\t\t\t\t? field.answer.join(\", \")\n\t\t\t\t\t\t\t\t: \"\"}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t);\n\t\t\t\tcase \"image\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<View style={styles.customImage}>\n\t\t\t\t\t\t\t{this.renderImage(field.answer)}\n\t\t\t\t\t\t</View>\n\t\t\t\t\t);\n\t\t\t\tcase \"document\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<View style={styles.customDocument}>\n\t\t\t\t\t\t\t{this.renderDocument(field.answer)}\n\t\t\t\t\t\t</View>\n\t\t\t\t\t);\n\t\t\t\tdefault:\n\t\t\t\t\treturn <Text style={styles.customText}>{field.answer}</Text>;\n\t\t\t}\n\t\t};\n\n\t\treturn customFields.map((field, index) => {\n\t\t\tif ([\"staticTitle\", \"staticText\"].includes(field.type)) return null;\n\t\t\tif (\n\t\t\t\t_.isNil(field.answer) ||\n\t\t\t\tfield.answer === \"\" ||\n\t\t\t\t(Array.isArray(field.answer) && field.answer.length === 0)\n\t\t\t)\n\t\t\t\treturn null;\n\t\t\treturn (\n\t\t\t\t<View key={index}>\n\t\t\t\t\t<Text style={styles.customLabel}>{field.label}</Text>\n\t\t\t\t\t{renderAnswer(field)}\n\t\t\t\t</View>\n\t\t\t);\n\t\t});\n\t}\n\n\trendeDetails() {\n\t\tconst { job } = this.state;\n\t\tconst { customFields } = job;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t<Components.FormCardSectionOptionLauncher\n\t\t\t\t\tonPress={this.onToggleDetails}\n\t\t\t\t\ttitle=\"Details\"\n\t\t\t\t\ticon={this.state.showMore ? \"angle-up\" : \"angle-down\"}\n\t\t\t\t\ttextStyle={styles.detailsText}\n\t\t\t\t\tsectionStyle={styles.detailsSection}\n\t\t\t\t/>\n\t\t\t\t{this.state.showMore && (\n\t\t\t\t\t<View>\n\t\t\t\t\t\t{hasCustomFields ? this.renderCustomFields() : null}\n\t\t\t\t\t\t{!hasCustomFields ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{this.renderImage(job.images, job.image)}\n\t\t\t\t\t\t\t\t{!_.isEmpty(job.description) && (\n\t\t\t\t\t\t\t\t\t<Text numberOfLines={10} style={styles.jobDescriptionText}>\n\t\t\t\t\t\t\t\t\t\t{job.description}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<Text style={styles.locationLabel}>Address</Text>\n\t\t\t\t\t\t<Text style={styles.locationText}>{job.room}</Text>\n\t\t\t\t\t\t{!hasCustomFields && job.isHome ? (\n\t\t\t\t\t\t\t<View style={styles.detailsSection}>\n\t\t\t\t\t\t\t\t<Text style={styles.locationLabel}>Must be home</Text>\n\t\t\t\t\t\t\t\t<Text style={styles.locationText}>{job.homeText}</Text>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<Text style={styles.requesterLabel}>Submitted By</Text>\n\t\t\t\t\t\t<View style={styles.profileContainer}>\n\t\t\t\t\t\t\t<Components.ProfilePic\n\t\t\t\t\t\t\t\tProfilePic={job.userProfilePic}\n\t\t\t\t\t\t\t\tDiameter={40}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<View style={styles.nameContainer}>\n\t\t\t\t\t\t\t\t<Text style={styles.nameText}>{job.userName}</Text>\n\t\t\t\t\t\t\t\t{!_.isEmpty(job.phone) && (\n\t\t\t\t\t\t\t\t\t<Text style={styles.phoneText}>{job.phone}</Text>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t{this.renderExternalSync()}\n\t\t\t\t\t</View>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderMessages() {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t<Components.CommentSection\n\t\t\t\t\tref={this.commentSection}\n\t\t\t\t\tcommentReply={this.commentReply}\n\t\t\t\t\tscrollView={this.scrollView}\n\t\t\t\t\tadminPermission={values.permissionMaintenanceTracking}\n\t\t\t\t\tentityType={values.commentKey}\n\t\t\t\t\tentityId={this.props.job.id}\n\t\t\t\t\tentityName={this.props.job.title}\n\t\t\t\t\tsite={this.state.job.site || this.state.job.location}\n\t\t\t\t\tlive\n\t\t\t\t\trefreshFrequency={10000}\n\t\t\t\t\tplaceHolder={\"\"}\n\t\t\t\t\tstyle={{ flex: 1, paddingHorizontal: 0, paddingTop: 16 }}\n\t\t\t\t\tonCommentsLoaded={this.onCommentsLoaded}\n\t\t\t\t\tonCommentAdded={this.onCommentAdded}\n\t\t\t\t\thideAddComment\n\t\t\t\t\tdisableFlag\n\t\t\t\t/>\n\t\t\t\t{!this.state.showMessages && (\n\t\t\t\t\t<Components.InlineButton\n\t\t\t\t\t\tonPress={this.onLeaveMessage}\n\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t\ttouchableStyle={{ marginTop: 10 }}\n\t\t\t\t\t\tstyle={{ height: 36 }}\n\t\t\t\t\t\ttextStyle={{ color: \"#fff\" }}\n\t\t\t\t\t\tfullWidth\n\t\t\t\t\t>\n\t\t\t\t\t\tLeave Message\n\t\t\t\t\t</Components.InlineButton>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderMessagesReply() {\n\t\tif (!this.state.showMessages) return null;\n\n\t\treturn (\n\t\t\t<Components.CommentReply\n\t\t\t\tref={this.commentReply}\n\t\t\t\tcommentSection={this.commentSection}\n\t\t\t\tscrollView={this.scrollView}\n\t\t\t\tentityType={values.commentKey}\n\t\t\t\tentityId={this.props.job.id}\n\t\t\t\tentityName={this.props.job.title}\n\t\t\t\tsite={this.state.job.site || this.state.job.location}\n\t\t\t\t// noScroll={true}\n\t\t\t\t// style={{ position: 'absolute', bottom: 0, left: 0, right: 0 }}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderStatusPopup() {\n\t\tif (!this.state.showStatusPopup) return null;\n\t\treturn (\n\t\t\t<StatusSelectorPopup\n\t\t\t\tonClose={this.onCloseStatusPopup}\n\t\t\t\tonSelect={this.onSelectStatus}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderPriorityPopup() {\n\t\tif (!this.state.showPriorityPopup) return null;\n\t\treturn (\n\t\t\t<PrioritySelectorPopup\n\t\t\t\tonClose={this.onClosePriorityPopup}\n\t\t\t\tonSelect={this.onSelectPriority}\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tif (this.state.forbidden) {\n\t\t\treturn <Components.Forbidden />;\n\t\t}\n\t\treturn (\n\t\t\t<KeyboardAvoidingView behavior={\"padding\"} style={styles.container}>\n\t\t\t\t<Components.Header\n\t\t\t\t\tleftIcon=\"angle-left\"\n\t\t\t\t\tonPressLeft={this.onPressBack}\n\t\t\t\t\ttext={Config.env.strings.MAINTENANCE_REQUEST_DETAILS}\n\t\t\t\t/>\n\t\t\t\t{this.renderLoading()}\n\t\t\t\t<ScrollView\n\t\t\t\t\tref={this.scrollView}\n\t\t\t\t\tcontentContainerStyle={{ paddingBottom: 26 }}\n\t\t\t\t\tstyle={{ height: \"100%\" }}\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.innerContainer}>\n\t\t\t\t\t\t{this.renderTop()}\n\t\t\t\t\t\t{this.renderAssignee()}\n\t\t\t\t\t\t{this.rendeDetails()}\n\t\t\t\t\t\t{this.renderMessages()}\n\t\t\t\t\t</View>\n\t\t\t\t</ScrollView>\n\t\t\t\t{this.renderMessagesReply()}\n\t\t\t\t{this.renderStatusPopup()}\n\t\t\t\t{this.renderPriorityPopup()}\n\t\t\t\t{this.renderImagePopup()}\n\t\t\t\t{this.renderDocumentPopup()}\n\t\t\t\t<DateTimePicker\n\t\t\t\t\tisVisible={this.state.isDateTimePickerVisible}\n\t\t\t\t\tonConfirm={this.onDateSelected}\n\t\t\t\t\tonCancel={this.onCloseDatePicker}\n\t\t\t\t\tmode={this.state.popUpType}\n\t\t\t\t\theaderTextIOS={`Pick a ${this.state.popUpType}`}\n\t\t\t\t\tdate={new Date()}\n\t\t\t\t/>\n\t\t\t</KeyboardAvoidingView>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tcontainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#fff\",\n\t},\n\tinnerContainer: {\n\t\tpaddingTop: 23,\n\t\tpaddingHorizontal: 16,\n\t},\n\tjobTitleContainer: {\n\t\tpaddingVertical: 14,\n\t\tpaddingHorizontal: 12,\n\t},\n\tjobIdText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 12,\n\t\tmarginBottom: 4,\n\t},\n\tjobTitleText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 20,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tmarginBottom: 8,\n\t},\n\tjobTypeSeenContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tjobTypeContainer: {\n\t\tpadding: 4,\n\t\tminWidth: 80,\n\t\tmaxWidth: 140,\n\t\tborderRadius: 4,\n\t\tjustifyContent: \"center\",\n\t},\n\tjobTypeText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 12,\n\t\ttextAlign: \"center\",\n\t\tmaxWidth: \"100%\",\n\t},\n\tjobSeenContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tmarginLeft: 10,\n\t},\n\tjobSeenIcon: {\n\t\tfontSize: 12,\n\t},\n\tjobSeenText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 12,\n\t\tmarginLeft: 4,\n\t},\n\tjobStatusDateText: {\n\t\tmarginTop: 8,\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 13,\n\t\tcolor: Colours.TEXT_LIGHT,\n\t},\n\tjobInfoContainer: {\n\t\tborderTopWidth: 1,\n\t\tborderTopColor: Colours.LINEGREY,\n\t\tpaddingVertical: 14,\n\t\tpaddingHorizontal: 12,\n\t},\n\tjobStatusExpectedContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"flex-start\",\n\t\tjustifyContent: \"space-between\",\n\t},\n\tjobStatusOuterContainer: {\n\t\t// marginRight: 50,\n\t},\n\tjobStatusHeading: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 11,\n\t\tletterSpacing: 0.8,\n\t\tcolor: Colours.TEXT_DARK,\n\t\tmarginBottom: 6,\n\t},\n\tjobStatusContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\twidth: 120,\n\t\theight: 30,\n\t\tpaddingHorizontal: 8,\n\t\tborderRadius: 4,\n\t},\n\tjobStatusIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 14,\n\t\tmarginRight: 8,\n\t},\n\tjobStatusText: {\n\t\tcolor: \"#fff\",\n\t\ttextAlign: \"center\",\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 13,\n\t\tflex: 1,\n\t\ttextAlign: \"center\",\n\t},\n\tjobPriorityOuterContainer: {\n\t\tmarginTop: 12,\n\t},\n\tjobExpectedDateContainer: {\n\t\tbackgroundColor: Colours.BOXGREY,\n\t\tflexDirection: \"row\",\n\t\twidth: 115,\n\t\theight: 30,\n\t\tborderRadius: 4,\n\t\talignItems: \"center\",\n\t\tpaddingLeft: 8,\n\t},\n\tjobExpectedDate: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 13,\n\t\tcolor: Colours.hexToRGBAstring(Colours.TEXT_DARKEST, 0.5),\n\t},\n\tdetailsText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tdetailsSection: {\n\t\tmarginTop: 8,\n\t\tpaddingHorizontal: 0,\n\t\tpaddingBottom: 12,\n\t},\n\tsideBySideImages: {\n\t\tflex: 1,\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\tmarginBottom: 16,\n\t},\n\tsideBySideImageContainer: {\n\t\tbackgroundColor: \"#fff\",\n\t\twidth: \"48%\",\n\t\theight: 150,\n\t\tborderRadius: 2,\n\t\toverflow: \"hidden\",\n\t},\n\tsingleImageContainer: {\n\t\tbackgroundColor: \"#fff\",\n\t\twidth: \"100%\",\n\t\theight: 150,\n\t\tflex: 1,\n\t\tborderRadius: 2,\n\t\toverflow: \"hidden\",\n\t\tmarginBottom: 16,\n\t},\n\timageContainer: {\n\t\theight: 150,\n\t\twidth: \"auto\",\n\t\tjustifyContent: \"center\",\n\t},\n\timagePlayContainer: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\timageControlIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 30,\n\t\ttextShadowColor: \"rgba(0,0,0,0.3)\",\n\t\ttextShadowOffset: { width: 2, height: 2 },\n\t},\n\tplusImages: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 32,\n\t\ttextAlign: \"center\",\n\t\tcolor: \"#fff\",\n\t\ttextShadowColor: \"rgba(0, 0, 0, 0.5)\",\n\t\ttextShadowOffset: { width: 0, height: 2 },\n\t\ttextShadowRadius: 8,\n\t},\n\tjobDescriptionText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_LIGHT,\n\t\tpaddingBottom: 16,\n\t},\n\tlocationLabel: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tlocationText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tpaddingVertical: 8,\n\t},\n\trequesterLabel: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tpaddingVertical: 10,\n\t},\n\tprofileContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tnameContainer: {\n\t\tmarginLeft: 18,\n\t},\n\tnameText: {\n\t\tfontSize: \"sf-semibold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tmarginBottom: 4,\n\t},\n\tphoneText: {\n\t\tfontSize: \"sf-medium\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_LIGHT,\n\t},\n\ttextSectionInner: {\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t\tmarginTop: 8,\n\t},\n\ttextSectionLabel: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 12,\n\t\tlineHeight: 24,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\ttextSectionTextContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\ttextSectionText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 13,\n\t\tlineHeight: 24,\n\t\tcolor: Colours.TEXT_LIGHT,\n\t},\n\ttextSectionAngleRight: {\n\t\tfontSize: 24,\n\t\tmarginLeft: 10,\n\t\tlineHeight: 24,\n\t},\n\tcustomLabel: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tcustomText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tpaddingVertical: 8,\n\t},\n\tcustomImage: {\n\t\tmarginTop: 8,\n\t},\n\tcustomDocument: {\n\t\tmarginTop: 8,\n\t\tmarginBottom: 16,\n\t},\n\tcustomStaticTitle: {\n\t\tfontSize: 20,\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tmarginBottom: 10,\n\t},\n\tcustomStaticText: {\n\t\tfontSize: 17,\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tlineHeight: 24,\n\t\tmarginBottom: 10,\n\t},\n\tdocumentContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"space-between\",\n\t\tpaddingVertical: 4,\n\t},\n\tdocumentTypeContainer: {\n\t\twidth: 50,\n\t\theight: 60,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderRadius: 5,\n\t\tmarginRight: 8,\n\t},\n\tdocumentTypeText: {\n\t\tcolor: \"#fff\",\n\t\tfontFamily: \"sf-semibold\",\n\t\ttextAlign: \"center\",\n\t},\n\tdocumentText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\texternalSyncContainer: {\n\t\tbackgroundColor: \"#fff\",\n\t\tmarginTop: 16,\n\t\tborderRadius: 8,\n\t\tpadding: 16,\n\t},\n\texternalSyncHeader: {\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t\tmarginBottom: 12,\n\t\tpaddingBottom: 12,\n\t\tborderBottomWidth: 1,\n\t\tborderBottomColor: Colours.LINEGREY,\n\t},\n\texternalSyncTitle: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\texternalSyncIcon: {\n\t\tfontSize: 20,\n\t},\n\texternalSyncContent: {\n\t\tpaddingTop: 4,\n\t},\n\texternalSyncRow: {\n\t\tflexDirection: \"row\",\n\t\tmarginBottom: 10,\n\t},\n\texternalSyncLabel: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARK,\n\t\twidth: 100,\n\t},\n\texternalSyncValue: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tflex: 1,\n\t},\n});\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tuser: state.user,\n\t\tcolourBrandingMain: Colours.getMainBrandingColourFromState(state),\n\t\tjobs: state[values.reducerKey].jobs,\n\t\tstatusTypes: state[values.reducerKey].jobstatuses,\n\t\thideSeen: state[values.reducerKey].hideSeen,\n\t};\n};\n\nexport default connect(mapStateToProps, {\n\tjobAdded,\n\tjobStatusesUpdate,\n\tjobHideSeenUpdate,\n})(RequestDetail);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","Text","ScrollView","View","StyleSheet","KeyboardAvoidingView","TouchableOpacity","ImageBackground","Platform","DateTimePicker","Icon","_","moment","connect","maintenanceActions","jobAdded","jobStatusesUpdate","jobHideSeenUpdate","StatusSelectorPopup","PrioritySelectorPopup","getJobStatus","getJobPriority","Services","Colours","Helper","Components","Config","values","RequestDetail","constructor","props","_defineProperty","setState","loading","res","getJob","job","site","id","data","updateJobState","getExternalSync","error","console","log","toString","response","status","forbidden","hasPermission","getAssignees","user","assignees","Users","_this$props$job","loadingExternalSync","externalSync","_error$response","state","seen","Id","userID","updated","editJob","expectedDate","utc","toISOString","editJobStatus","editJobPriority","priority","navigation","goBack","showStatusPopup","updateJobStatus","showPriorityPopup","updateJobPriority","navigate","screenRequestNotes","onChange","popUpType","isDateTimePickerVisible","date","expectedDateText","format","updateJob","showMore","showMessages","count","permissions","includes","permissionMaintenanceTracking","permissionMaintenanceAssignment","AssigneeId","url","showFullscreenVideo","length","currentVideoUrl","options","map","a","key","name","displayName","selection","title","onSelect","onSelectAssignee","assignee","assignJob","galleryOpen","galleryImages","selectedPDF","scrollView","createRef","commentReply","commentSection","imagePopup","componentDidMount","defaultJob","find","jobs","j","newState","markSeen","openGallery","index","current","scrollTo","refs","closeGallery","renderLoading","createElement","LoadingIndicator","visible","renderTop","statusOption","canEdit","isStaff","category","showSeen","text","style","getShadowStyle","styles","jobTitleContainer","jobId","jobIdText","color","colourBrandingMain","textEntityName","jobTitleText","jobTypeSeenContainer","jobTypeContainer","backgroundColor","hexToRGBAstring","jobTypeText","numberOfLines","type","hideSeen","jobSeenContainer","iconStyle","jobSeenIcon","jobSeenText","lastActivityUnix","textSectionInner","textSectionLabel","textSectionTextContainer","textSectionText","jobInfoContainer","jobStatusExpectedContainer","jobStatusOuterContainer","jobStatusHeading","onPress","onOpenStatusPicker","jobStatusContainer","jobStatusText","openStaffNotes","jobStatusIcon","Notes","jobPriorityOuterContainer","onOpenPriorityPicker","label","renderPlayableImageUrl","images","containerStyle","thumbUrl","getThumb300","isVideo","flex","source","uri","imagePlayContainer","toggleFullscreenVideo","bind","imageControlIcon","imageUrl","get1400","imageContainer","plusImages","renderPlayableImage","renderImage","image","isNil","isEmpty","sideBySideImages","sideBySideImageContainer","singleImageContainer","renderDocument","documents","document","documentContainer","documentTypeContainer","documentTypeText","ext","documentText","uploading","uploadProgress","renderImagePopup","ImagePopup","onClose","ref","renderDocumentPopup","PDFPopup","pdfCount","renderAssignee","Assignee","content","locationLabel","profileContainer","ProfilePic","profilePic","Diameter","nameContainer","nameText","FormCardSectionOptionLauncher","onOpenAssigneePicker","value","textStyle","detailsText","sectionStyle","detailsSection","renderExternalSync","externalSyncContainer","externalSyncHeader","externalSyncTitle","externalSyncIcon","externalSyncContent","systemType","externalSyncRow","externalSyncLabel","externalSyncValue","externalId","syncedAt","renderCustomFields","customFields","renderAnswer","field","customText","answer","Array","isArray","join","customImage","customDocument","customLabel","rendeDetails","hasCustomFields","onToggleDetails","icon","Fragment","description","jobDescriptionText","locationText","room","isHome","homeText","requesterLabel","userProfilePic","userName","phone","phoneText","renderMessages","CommentSection","adminPermission","entityType","commentKey","entityId","entityName","location","live","refreshFrequency","placeHolder","paddingHorizontal","paddingTop","onCommentsLoaded","onCommentAdded","hideAddComment","disableFlag","InlineButton","onLeaveMessage","touchableStyle","marginTop","height","fullWidth","renderMessagesReply","CommentReply","renderStatusPopup","onCloseStatusPopup","onSelectStatus","renderPriorityPopup","onClosePriorityPopup","onSelectPriority","render","Forbidden","behavior","container","Header","leftIcon","onPressLeft","onPressBack","env","strings","MAINTENANCE_REQUEST_DETAILS","contentContainerStyle","paddingBottom","innerContainer","isVisible","onConfirm","onDateSelected","onCancel","onCloseDatePicker","mode","headerTextIOS","Date","create","paddingVertical","fontFamily","fontSize","marginBottom","TEXT_DARKEST","flexDirection","alignItems","padding","minWidth","maxWidth","borderRadius","justifyContent","textAlign","marginLeft","jobStatusDateText","TEXT_LIGHT","borderTopWidth","borderTopColor","LINEGREY","letterSpacing","TEXT_DARK","width","marginRight","jobExpectedDateContainer","BOXGREY","paddingLeft","jobExpectedDate","overflow","position","top","left","right","bottom","textShadowColor","textShadowOffset","textShadowRadius","lineHeight","textSectionAngleRight","customStaticTitle","customStaticText","borderBottomWidth","borderBottomColor","mapStateToProps","getMainBrandingColourFromState","reducerKey","statusTypes","jobstatuses"],"sources":["RequestDetail.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tScrollView,\n\tView,\n\tStyleSheet,\n\tKeyboardAvoidingView,\n\tTouchableOpacity,\n\tImageBackground,\n\tPlatform,\n} from \"react-native\";\nimport DateTimePicker from \"react-native-modal-datetime-picker\";\nimport { Icon } from \"@rneui/themed\";\nimport _ from \"lodash\";\nimport moment from \"moment\";\nimport { connect } from \"react-redux\";\nimport { maintenanceActions } from \"../apis\";\nimport { jobAdded, jobStatusesUpdate, jobHideSeenUpdate } from \"../actions\";\nimport StatusSelectorPopup from \"../components/StatusSelectorPopup\";\nimport PrioritySelectorPopup from \"../components/PrioritySelectorPopup\";\nimport { getJobStatus, getJobPriority } from \"../helper\";\nimport { Services } from \"../feature.config\";\nimport { Colours, Helper, Components, Config } from \"../core.config\";\nimport { values } from \"../values.config\";\n\nclass RequestDetail extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\n\t\tthis.state = {\n\t\t\tjob: {},\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tpopUpType: \"\",\n\t\t\tstatus: \"\",\n\t\t\tpriority: \"\",\n\t\t\texpectedDate: null,\n\t\t\texpectedDateText: \"\",\n\t\t\tseen: false,\n\t\t\tshowMore: true,\n\t\t\tshowStatusPopup: false,\n\t\t\tshowPriorityPopup: false,\n\t\t\tloading: false,\n\t\t\tshowFullscreenVideo: false,\n\t\t\tcurrentVideoUrl: \"\",\n\t\t\tgalleryOpen: false,\n\t\t\tgalleryImages: [],\n\t\t\tshowMessages: false,\n\t\t\tassignees: [],\n\t\t\tselectedPDF: null,\n\t\t\texternalSync: null,\n\t\t\tloadingExternalSync: false,\n\t\t};\n\n\t\tthis.scrollView = React.createRef();\n\t\tthis.commentReply = React.createRef();\n\t\tthis.commentSection = React.createRef();\n\t\tthis.imagePopup = React.createRef();\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.props.jobStatusesUpdate(this.props.job.site);\n\t\tthis.props.jobHideSeenUpdate(this.props.job.site);\n\t\tthis.getJob();\n\t\tthis.updateJobState(this.props.job);\n\t\tthis.getAssignees();\n\t\tthis.getExternalSync();\n\t}\n\n\tgetJob = async () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst res = await maintenanceActions.getJob(\n\t\t\t\t\tthis.props.job.site,\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t);\n\t\t\t\t// console.log('getJob', JSON.stringify(res.data, null, 2));\n\t\t\t\tthis.props.jobAdded(res.data);\n\t\t\t\tthis.updateJobState(res.data);\n\t\t\t\t// Refresh external sync data when job is refreshed\n\t\t\t\tthis.getExternalSync();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"getJob error\", error.toString());\n\t\t\t\t// check for 403 or 404 error\n\t\t\t\tif (error.response.status === 403 || error.response.status === 404) {\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tforbidden: true,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tconsole.log(\"getJob error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tgetAssignees = async () => {\n\t\tif (!this.hasPermission()) return;\n\t\ttry {\n\t\t\tconst res = await maintenanceActions.getAssignees(this.props.user.site);\n\t\t\tthis.setState({ assignees: res.data.Users });\n\t\t} catch (error) {\n\t\t\tconsole.log(\"getAssignees error\", error);\n\t\t}\n\t};\n\n\tgetExternalSync = async () => {\n\t\t// Only fetch if user has maintenance tracking permission\n\t\tif (!this.hasPermission()) return;\n\t\tif (!this.props.job?.id) return;\n\n\t\ttry {\n\t\t\tthis.setState({ loadingExternalSync: true });\n\t\t\tconst res = await maintenanceActions.getExternalSync(this.props.job.id);\n\t\t\tthis.setState({ externalSync: res.data, loadingExternalSync: false });\n\t\t} catch (error) {\n\t\t\t// 404 is expected if no sync - don't show error\n\t\t\tif (error.response?.status !== 404) {\n\t\t\t\tconsole.log(\"getExternalSync error\", error);\n\t\t\t}\n\t\t\tthis.setState({ loadingExternalSync: false });\n\t\t}\n\t};\n\n\tupdateJobState(defaultJob) {\n\t\tconst job =\n\t\t\t_.find(this.props.jobs, (j) => j.id === this.props.job.id) || defaultJob;\n\t\tif (!job) {\n\t\t\tthis.getJob();\n\t\t\treturn;\n\t\t}\n\t\tconst newState = { job, status: job.status };\n\t\tif (job.expectedDate) {\n\t\t\tnewState.expectedDate = moment(job.expectedDate);\n\t\t\tnewState.expectedDateText = newState.expectedDate.format(\"DD/MM/YYYY\");\n\t\t}\n\t\tif (job.seen) newState.seen = job.seen;\n\t\tthis.setState(newState, () => {\n\t\t\tthis.markSeen();\n\t\t});\n\t}\n\n\tmarkSeen = () => {\n\t\tconst { user } = this.props;\n\t\tconst { job } = this.state;\n\t\t// Must have maintenance permission and not the requester\n\t\t// console.log('markSeen check', job.userID, user.Id);\n\t\tif (job.seen === true) return;\n\t\tif (!this.hasPermission()) return;\n\t\tif (user.Id === job.userID) return;\n\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst updated = {\n\t\t\t\t\tid: job.id,\n\t\t\t\t\tseen: true,\n\t\t\t\t\tstatus: job.status || \"Unassigned\",\n\t\t\t\t};\n\t\t\t\tconst res = await maintenanceActions.editJob(updated, user.site);\n\t\t\t\t// console.log('markSeen updated');\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t\tthis.setState({ loading: false, seen: true });\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"markSeen error\", error);\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tupdateJob = () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\tconst { user } = this.props;\n\t\t\tconst { job } = this.state;\n\t\t\ttry {\n\t\t\t\tconst updated = { id: job.id };\n\t\t\t\tif (this.state.expectedDate) {\n\t\t\t\t\tupdated.expectedDate = moment(this.state.expectedDate)\n\t\t\t\t\t\t.utc()\n\t\t\t\t\t\t.toISOString();\n\t\t\t\t}\n\t\t\t\tconst res = await maintenanceActions.editJob(updated, user.site);\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"updateJob error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tupdateJobStatus = () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst res = await maintenanceActions.editJobStatus(\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t\tthis.state.status,\n\t\t\t\t);\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"updateJobStatus error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tupdateJobPriority = () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst res = await maintenanceActions.editJobPriority(\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t\tthis.state.priority,\n\t\t\t\t);\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"updateJobPriority error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\tonPressBack = () => {\n\t\tServices.navigation.goBack();\n\t};\n\n\tonOpenStatusPicker = () => {\n\t\tthis.setState({ showStatusPopup: true });\n\t};\n\n\tonCloseStatusPopup = () => {\n\t\tthis.setState({ showStatusPopup: false });\n\t};\n\n\tonSelectStatus = (status) => {\n\t\tif (this.state.loading) return;\n\t\tthis.setState({ status, showStatusPopup: false }, () => {\n\t\t\tthis.updateJobStatus();\n\t\t});\n\t};\n\n\tonOpenPriorityPicker = () => {\n\t\tthis.setState({ showPriorityPopup: true });\n\t};\n\n\tonClosePriorityPopup = () => {\n\t\tthis.setState({ showPriorityPopup: false });\n\t};\n\n\tonSelectPriority = (priority) => {\n\t\tif (this.state.loading) return;\n\t\tthis.setState({ priority, showPriorityPopup: false }, () => {\n\t\t\tthis.updateJobPriority();\n\t\t});\n\t};\n\n\topenStaffNotes = () => {\n\t\tServices.navigation.navigate(values.screenRequestNotes, {\n\t\t\tjob: this.state.job,\n\t\t\tonChange: this.getJob,\n\t\t});\n\t};\n\n\tonOpenDatePicker = () => {\n\t\tthis.setState({ popUpType: \"date\", isDateTimePickerVisible: true });\n\t};\n\n\tonCloseDatePicker = () => {\n\t\tthis.setState({ isDateTimePickerVisible: false });\n\t};\n\n\tonDateSelected = (date) => {\n\t\tif (this.state.popUpType === \"date\") {\n\t\t\tdate = moment(date);\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\texpectedDate: date,\n\t\t\t\t\texpectedDateText: date.format(\"DD/MM/YYYY\"),\n\t\t\t\t\tisDateTimePickerVisible: false,\n\t\t\t\t},\n\t\t\t\t() => {\n\t\t\t\t\tthis.updateJob();\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\t};\n\n\tonToggleDetails = () => {\n\t\tthis.setState({ showMore: !this.state.showMore });\n\t};\n\n\tonLeaveMessage = () => {\n\t\tthis.setState({ showMessages: true });\n\t};\n\n\tonCommentsLoaded = (count) => {\n\t\tif (count > 0) {\n\t\t\tthis.setState({ showMessages: true });\n\t\t}\n\t};\n\n\tonCommentAdded = () => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconst job = await maintenanceActions.getJob(\n\t\t\t\t\tthis.props.user.site,\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t);\n\t\t\t\t// console.log('onCommentAdded', job?.data);\n\t\t\t\tthis.props.jobAdded(job.data);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"onCommentAdded error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\topenGallery(galleryImages, index) {\n\t\tthis.setState({\n\t\t\tgalleryOpen: true,\n\t\t\tgalleryImages,\n\t\t});\n\t\tthis.imagePopup.current.scrollTo(index);\n\t}\n\n\thasPermission = () => {\n\t\tconst { job } = this.state;\n\t\tconst { permissions } = this.props.user;\n\t\tif (_.includes(permissions, values.permissionMaintenanceTracking)) {\n\t\t\treturn true;\n\t\t}\n\t\tif (_.includes(permissions, values.permissionMaintenanceAssignment)) {\n\t\t\treturn job.AssigneeId === this.props.user.Id;\n\t\t}\n\t\treturn false;\n\t};\n\n\ttoggleFullscreenVideo = (url) => {\n\t\tif (typeof url !== \"string\") url = \"\";\n\t\tthis.setState({\n\t\t\tshowFullscreenVideo: url.length > 0,\n\t\t\tcurrentVideoUrl: url,\n\t\t});\n\t};\n\n\topenGallery(galleryImages, index) {\n\t\tthis.setState({\n\t\t\tgalleryOpen: true,\n\t\t\tgalleryImages,\n\t\t});\n\t\tthis.refs.imagePopup.scrollTo(index);\n\t}\n\n\tcloseGallery() {\n\t\tthis.setState({\n\t\t\tgalleryOpen: false,\n\t\t});\n\t}\n\n\tonOpenAssigneePicker = () => {\n\t\tconst options = this.state.assignees.map((a) => {\n\t\t\treturn { key: a.id, name: a.displayName };\n\t\t});\n\t\tServices.navigation.navigate(\"optionSelector\", {\n\t\t\toptions,\n\t\t\tselection: this.state.job.AssigneeId,\n\t\t\ttitle: \"Assign request\",\n\t\t\tonSelect: this.onSelectAssignee,\n\t\t});\n\t};\n\n\tonSelectAssignee = (assignee) => {\n\t\tthis.setState({ loading: true }, async () => {\n\t\t\ttry {\n\t\t\t\tconsole.log(\"onSelectAssignee\", this.props.job.id, assignee.key);\n\t\t\t\tconst res = await maintenanceActions.assignJob(\n\t\t\t\t\tthis.props.job.id,\n\t\t\t\t\tassignee.key,\n\t\t\t\t);\n\t\t\t\tthis.props.jobAdded(res.data.job);\n\t\t\t\tthis.getJob();\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"onSelectAssignee error\", error);\n\t\t\t} finally {\n\t\t\t\tthis.setState({ loading: false });\n\t\t\t}\n\t\t});\n\t};\n\n\trenderLoading() {\n\t\treturn <Components.LoadingIndicator visible={this.state.loading} />;\n\t}\n\n\trenderTop() {\n\t\tconst { status, job } = this.state;\n\t\tconst statusOption = getJobStatus(status, this.props);\n\t\tconst priority = getJobPriority(job.priority);\n\t\tconst canEdit = this.hasPermission();\n\t\tconst isStaff = this.props.user.category === \"staff\";\n\t\tconst showSeen = !status || status === getJobStatus(null, this.props).text;\n\n\t\treturn (\n\t\t\t<View style={{ ...Helper.getShadowStyle() }}>\n\t\t\t\t<View style={styles.jobTitleContainer}>\n\t\t\t\t\t{job.jobId ? (\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.jobIdText,\n\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>{`${values.textEntityName} #${job.jobId}`}</Text>\n\t\t\t\t\t) : null}\n\t\t\t\t\t<Text style={styles.jobTitleText}>{job.title}</Text>\n\t\t\t\t\t<View style={styles.jobTypeSeenContainer}>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\tstyles.jobTypeContainer,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tbackgroundColor: Colours.hexToRGBAstring(\n\t\t\t\t\t\t\t\t\t\tthis.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t0.2,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\tstyles.jobTypeText,\n\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\tnumberOfLines={2}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{job.type}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t{!this.props.hideSeen && showSeen && this.state.seen && (\n\t\t\t\t\t\t\t<View style={styles.jobSeenContainer}>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tname=\"check\"\n\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.jobSeenIcon,\n\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.jobSeenText,\n\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\tSeen\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\n\t\t\t\t\t{job.lastActivityUnix && (\n\t\t\t\t\t\t<View style={styles.textSectionInner}>\n\t\t\t\t\t\t\t<Text style={styles.textSectionLabel}>Last Updated On</Text>\n\t\t\t\t\t\t\t<View style={styles.textSectionTextContainer}>\n\t\t\t\t\t\t\t\t<Text style={styles.textSectionText}>\n\t\t\t\t\t\t\t\t\t{moment(job.lastActivityUnix).format(\"ddd D MMMM, h:mm A\")}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t\t{/* <View style={styles.textSectionInner}>\n <Text style={styles.textSectionLabel}>Expected Date</Text>\n <TouchableOpacity onPress={this.onOpenDatePicker}>\n <View style={styles.textSectionTextContainer}>\n <Text style={styles.textSectionText}>{this.state.expectedDateText || 'Select Date'}</Text>\n <Icon\n name=\"angle-right\"\n type=\"font-awesome\"\n iconStyle={[styles.textSectionAngleRight, { color: this.props.colourBrandingMain }]}\n />\n </View>\n </TouchableOpacity>\n </View> */}\n\t\t\t\t</View>\n\t\t\t\t<View style={styles.jobInfoContainer}>\n\t\t\t\t\t<View style={styles.jobStatusExpectedContainer}>\n\t\t\t\t\t\t<View style={styles.jobStatusOuterContainer}>\n\t\t\t\t\t\t\t<Text style={styles.jobStatusHeading}>STATUS</Text>\n\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\tonPress={canEdit ? this.onOpenStatusPicker : null}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.jobStatusContainer,\n\t\t\t\t\t\t\t\t\t\t{ backgroundColor: statusOption.color },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Text style={styles.jobStatusText}>{statusOption?.text}</Text>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t{this.hasPermission() && (\n\t\t\t\t\t\t\t<View style={styles.jobStatusOuterContainer}>\n\t\t\t\t\t\t\t\t<Text style={styles.jobStatusHeading}>STAFF NOTES</Text>\n\t\t\t\t\t\t\t\t<TouchableOpacity onPress={this.openStaffNotes}>\n\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.jobStatusContainer,\n\t\t\t\t\t\t\t\t\t\t\t{ backgroundColor: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\tname=\"pencil-square-o\"\n\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\ticonStyle={styles.jobStatusIcon}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.jobStatusText}>\n\t\t\t\t\t\t\t\t\t\t\tNotes ({(job.Notes || []).length})\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\t\t\t\t\t{isStaff && (\n\t\t\t\t\t\t<View style={styles.jobPriorityOuterContainer}>\n\t\t\t\t\t\t\t<Text style={styles.jobStatusHeading}>PRIORITY</Text>\n\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\tonPress={canEdit ? this.onOpenPriorityPicker : null}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\tstyles.jobStatusContainer,\n\t\t\t\t\t\t\t\t\t\t{ backgroundColor: priority.color },\n\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Text style={styles.jobStatusText}>{priority.label}</Text>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderPlayableImageUrl(images, index, containerStyle, showMore) {\n\t\tconst url = images[index || 0];\n\t\tconst thumbUrl = Helper.getThumb300(url);\n\n\t\tif (Helper.isVideo(url)) {\n\t\t\treturn (\n\t\t\t\t<ImageBackground\n\t\t\t\t\tstyle={[{ flex: 1 }, containerStyle]}\n\t\t\t\t\tsource={{ uri: thumbUrl }}\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.imagePlayContainer}>\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tonPress={this.toggleFullscreenVideo.bind(this, url)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"play\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t</View>\n\t\t\t\t</ImageBackground>\n\t\t\t);\n\t\t}\n\n\t\tconst imageUrl = Helper.get1400(url);\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tstyle={containerStyle}\n\t\t\t\tonPress={this.openGallery.bind(this, images, index || 0)}\n\t\t\t>\n\t\t\t\t<ImageBackground\n\t\t\t\t\tstyle={styles.imageContainer}\n\t\t\t\t\tsource={{ uri: imageUrl }}\n\t\t\t\t>\n\t\t\t\t\t{showMore && (\n\t\t\t\t\t\t<Text style={styles.plusImages}>\n\t\t\t\t\t\t\t+{this.state.job.images.length - 2}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t)}\n\t\t\t\t</ImageBackground>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\trenderPlayableImage(images, index, containerStyle, showMore) {\n\t\treturn this.renderPlayableImageUrl(images, index, containerStyle, showMore);\n\t}\n\n\trenderImage(images, image = null) {\n\t\tif (!_.isNil(images) && !_.isEmpty(images)) {\n\t\t\tif (images.length >= 2) {\n\t\t\t\treturn (\n\t\t\t\t\t<View style={styles.sideBySideImages}>\n\t\t\t\t\t\t{this.renderPlayableImage(\n\t\t\t\t\t\t\timages,\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\tstyles.sideBySideImageContainer,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{this.renderPlayableImage(\n\t\t\t\t\t\t\timages,\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\tstyles.sideBySideImageContainer,\n\t\t\t\t\t\t\timages.length > 2,\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\treturn (\n\t\t\t\t\t<View style={styles.singleImageContainer}>\n\t\t\t\t\t\t{this.renderPlayableImage(images, 0)}\n\t\t\t\t\t</View>\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (!_.isNil(image)) {\n\t\t\treturn (\n\t\t\t\t<View style={styles.singleImageContainer}>\n\t\t\t\t\t{this.renderPlayableImageUrl([image], 0)}\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\n\trenderDocument(documents) {\n\t\tconst { colourBrandingMain } = this.props;\n\n\t\tif (!_.isNil(documents) && !_.isEmpty(documents)) {\n\t\t\treturn documents.map((document, index) => {\n\t\t\t\treturn (\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tkey={index}\n\t\t\t\t\t\tstyle={styles.documentContainer}\n\t\t\t\t\t\tonPress={() => this.setState({ selectedPDF: document })}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t...styles.documentTypeContainer,\n\t\t\t\t\t\t\t\tbackgroundColor: colourBrandingMain,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text style={styles.documentTypeText}>{document.ext}</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tstyle={styles.documentText}\n\t\t\t\t\t\t>{`${document.name}${document.uploading ? ` - ${document.uploadProgress}` : \"\"}`}</Text>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\t\treturn null;\n\t}\n\n\trenderImagePopup() {\n\t\treturn (\n\t\t\t<Components.ImagePopup\n\t\t\t\tvisible={this.state.galleryOpen}\n\t\t\t\timages={this.state.galleryImages}\n\t\t\t\tonClose={this.closeGallery.bind(this)}\n\t\t\t\tref={this.imagePopup}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderDocumentPopup() {\n\t\tif (_.isEmpty(this.state.selectedPDF)) return null;\n\t\treturn (\n\t\t\t<Components.PDFPopup\n\t\t\t\tsource={this.state.selectedPDF.url}\n\t\t\t\tonClose={() => this.setState({ selectedPDF: null })}\n\t\t\t\ttitle={this.state.selectedPDF.name}\n\t\t\t\tpdfCount={1}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderAssignee() {\n\t\tconst { job } = this.state;\n\t\tif (!this.hasPermission() && !job.Assignee) return null;\n\n\t\tconst content = (\n\t\t\t<View>\n\t\t\t\t<Text style={styles.locationLabel}>Assigned To</Text>\n\t\t\t\t<View>\n\t\t\t\t\t{job.Assignee && (\n\t\t\t\t\t\t<View style={styles.profileContainer}>\n\t\t\t\t\t\t\t<Components.ProfilePic\n\t\t\t\t\t\t\t\tProfilePic={job.Assignee.profilePic}\n\t\t\t\t\t\t\t\tDiameter={40}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<View style={styles.nameContainer}>\n\t\t\t\t\t\t\t\t<Text style={styles.nameText}>{job.Assignee.displayName}</Text>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t);\n\n\t\tif (this.hasPermission()) {\n\t\t\treturn (\n\t\t\t\t<Components.FormCardSectionOptionLauncher\n\t\t\t\t\tonPress={this.onOpenAssigneePicker}\n\t\t\t\t\ttitle=\"Assigned To\"\n\t\t\t\t\tvalue={job.Assignee ? job.Assignee.displayName : \"Unassigned\"}\n\t\t\t\t\ttextStyle={styles.detailsText}\n\t\t\t\t\tsectionStyle={styles.detailsSection}\n\t\t\t\t>\n\t\t\t\t\t{content}\n\t\t\t\t</Components.FormCardSectionOptionLauncher>\n\t\t\t);\n\t\t}\n\t\treturn content;\n\t}\n\n\trenderExternalSync() {\n\t\tconst { externalSync, loadingExternalSync } = this.state;\n\n\t\t// Only show if user has permission and external sync data exists\n\t\tif (!this.hasPermission()) return null;\n\t\tif (!externalSync || loadingExternalSync) return null;\n\n\t\treturn (\n\t\t\t<View style={[styles.externalSyncContainer, Helper.getShadowStyle()]}>\n\t\t\t\t<View style={styles.externalSyncHeader}>\n\t\t\t\t\t<Text style={styles.externalSyncTitle}>External Sync</Text>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tname=\"sync\"\n\t\t\t\t\t\ttype=\"material\"\n\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\tstyles.externalSyncIcon,\n\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t]}\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<View style={styles.externalSyncContent}>\n\t\t\t\t\t{externalSync.systemType && (\n\t\t\t\t\t\t<View style={styles.externalSyncRow}>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncLabel}>System:</Text>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncValue}>\n\t\t\t\t\t\t\t\t{externalSync.systemType}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t\t{externalSync.externalId && (\n\t\t\t\t\t\t<View style={styles.externalSyncRow}>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncLabel}>External ID:</Text>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncValue}>\n\t\t\t\t\t\t\t\t{externalSync.externalId}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t\t{externalSync.syncedAt && (\n\t\t\t\t\t\t<View style={styles.externalSyncRow}>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncLabel}>Synced:</Text>\n\t\t\t\t\t\t\t<Text style={styles.externalSyncValue}>\n\t\t\t\t\t\t\t\t{moment(externalSync.syncedAt).format(\"D MMM YYYY h:mma\")}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t)}\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderCustomFields() {\n\t\tconst { job } = this.state;\n\t\tconst { customFields } = job;\n\n\t\tconst renderAnswer = (field) => {\n\t\t\tswitch (field.type) {\n\t\t\t\tcase \"date\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Text style={styles.customText}>\n\t\t\t\t\t\t\t{field.answer\n\t\t\t\t\t\t\t\t? moment(field.answer, \"YYYY-MM-DD\").format(\"DD MMM YYYY\")\n\t\t\t\t\t\t\t\t: \"\"}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t);\n\t\t\t\tcase \"time\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Text style={styles.customText}>\n\t\t\t\t\t\t\t{field.answer\n\t\t\t\t\t\t\t\t? moment(field.answer, \"HH:mm\").format(\"h:mm a\")\n\t\t\t\t\t\t\t\t: \"\"}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t);\n\t\t\t\tcase \"yn\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Text style={styles.customText}>{field.answer ? \"Yes\" : \"No\"}</Text>\n\t\t\t\t\t);\n\t\t\t\tcase \"checkbox\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Text style={styles.customText}>\n\t\t\t\t\t\t\t{field.answer && Array.isArray(field.answer)\n\t\t\t\t\t\t\t\t? field.answer.join(\", \")\n\t\t\t\t\t\t\t\t: \"\"}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t);\n\t\t\t\tcase \"image\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<View style={styles.customImage}>\n\t\t\t\t\t\t\t{this.renderImage(field.answer)}\n\t\t\t\t\t\t</View>\n\t\t\t\t\t);\n\t\t\t\tcase \"document\":\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<View style={styles.customDocument}>\n\t\t\t\t\t\t\t{this.renderDocument(field.answer)}\n\t\t\t\t\t\t</View>\n\t\t\t\t\t);\n\t\t\t\tdefault:\n\t\t\t\t\treturn <Text style={styles.customText}>{field.answer}</Text>;\n\t\t\t}\n\t\t};\n\n\t\treturn customFields.map((field, index) => {\n\t\t\tif ([\"staticTitle\", \"staticText\"].includes(field.type)) return null;\n\t\t\tif (\n\t\t\t\t_.isNil(field.answer) ||\n\t\t\t\tfield.answer === \"\" ||\n\t\t\t\t(Array.isArray(field.answer) && field.answer.length === 0)\n\t\t\t)\n\t\t\t\treturn null;\n\t\t\treturn (\n\t\t\t\t<View key={index}>\n\t\t\t\t\t<Text style={styles.customLabel}>{field.label}</Text>\n\t\t\t\t\t{renderAnswer(field)}\n\t\t\t\t</View>\n\t\t\t);\n\t\t});\n\t}\n\n\trendeDetails() {\n\t\tconst { job } = this.state;\n\t\tconst { customFields } = job;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t<Components.FormCardSectionOptionLauncher\n\t\t\t\t\tonPress={this.onToggleDetails}\n\t\t\t\t\ttitle=\"Details\"\n\t\t\t\t\ticon={this.state.showMore ? \"angle-up\" : \"angle-down\"}\n\t\t\t\t\ttextStyle={styles.detailsText}\n\t\t\t\t\tsectionStyle={styles.detailsSection}\n\t\t\t\t/>\n\t\t\t\t{this.state.showMore && (\n\t\t\t\t\t<View>\n\t\t\t\t\t\t{hasCustomFields ? this.renderCustomFields() : null}\n\t\t\t\t\t\t{!hasCustomFields ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{this.renderImage(job.images, job.image)}\n\t\t\t\t\t\t\t\t{!_.isEmpty(job.description) && (\n\t\t\t\t\t\t\t\t\t<Text style={styles.jobDescriptionText}>\n\t\t\t\t\t\t\t\t\t\t{job.description}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<Text style={styles.locationLabel}>Address</Text>\n\t\t\t\t\t\t<Text style={styles.locationText}>{job.room}</Text>\n\t\t\t\t\t\t{!hasCustomFields && job.isHome ? (\n\t\t\t\t\t\t\t<View style={styles.detailsSection}>\n\t\t\t\t\t\t\t\t<Text style={styles.locationLabel}>Must be home</Text>\n\t\t\t\t\t\t\t\t<Text style={styles.locationText}>{job.homeText}</Text>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<Text style={styles.requesterLabel}>Submitted By</Text>\n\t\t\t\t\t\t<View style={styles.profileContainer}>\n\t\t\t\t\t\t\t<Components.ProfilePic\n\t\t\t\t\t\t\t\tProfilePic={job.userProfilePic}\n\t\t\t\t\t\t\t\tDiameter={40}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<View style={styles.nameContainer}>\n\t\t\t\t\t\t\t\t<Text style={styles.nameText}>{job.userName}</Text>\n\t\t\t\t\t\t\t\t{!_.isEmpty(job.phone) && (\n\t\t\t\t\t\t\t\t\t<Text style={styles.phoneText}>{job.phone}</Text>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t{this.renderExternalSync()}\n\t\t\t\t\t</View>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderMessages() {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t<Components.CommentSection\n\t\t\t\t\tref={this.commentSection}\n\t\t\t\t\tcommentReply={this.commentReply}\n\t\t\t\t\tscrollView={this.scrollView}\n\t\t\t\t\tadminPermission={values.permissionMaintenanceTracking}\n\t\t\t\t\tentityType={values.commentKey}\n\t\t\t\t\tentityId={this.props.job.id}\n\t\t\t\t\tentityName={this.props.job.title}\n\t\t\t\t\tsite={this.state.job.site || this.state.job.location}\n\t\t\t\t\tlive\n\t\t\t\t\trefreshFrequency={10000}\n\t\t\t\t\tplaceHolder={\"\"}\n\t\t\t\t\tstyle={{ flex: 1, paddingHorizontal: 0, paddingTop: 16 }}\n\t\t\t\t\tonCommentsLoaded={this.onCommentsLoaded}\n\t\t\t\t\tonCommentAdded={this.onCommentAdded}\n\t\t\t\t\thideAddComment\n\t\t\t\t\tdisableFlag\n\t\t\t\t/>\n\t\t\t\t{!this.state.showMessages && (\n\t\t\t\t\t<Components.InlineButton\n\t\t\t\t\t\tonPress={this.onLeaveMessage}\n\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t\ttouchableStyle={{ marginTop: 10 }}\n\t\t\t\t\t\tstyle={{ height: 36 }}\n\t\t\t\t\t\ttextStyle={{ color: \"#fff\" }}\n\t\t\t\t\t\tfullWidth\n\t\t\t\t\t>\n\t\t\t\t\t\tLeave Message\n\t\t\t\t\t</Components.InlineButton>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderMessagesReply() {\n\t\tif (!this.state.showMessages) return null;\n\n\t\treturn (\n\t\t\t<Components.CommentReply\n\t\t\t\tref={this.commentReply}\n\t\t\t\tcommentSection={this.commentSection}\n\t\t\t\tscrollView={this.scrollView}\n\t\t\t\tentityType={values.commentKey}\n\t\t\t\tentityId={this.props.job.id}\n\t\t\t\tentityName={this.props.job.title}\n\t\t\t\tsite={this.state.job.site || this.state.job.location}\n\t\t\t\t// noScroll={true}\n\t\t\t\t// style={{ position: 'absolute', bottom: 0, left: 0, right: 0 }}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderStatusPopup() {\n\t\tif (!this.state.showStatusPopup) return null;\n\t\treturn (\n\t\t\t<StatusSelectorPopup\n\t\t\t\tonClose={this.onCloseStatusPopup}\n\t\t\t\tonSelect={this.onSelectStatus}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderPriorityPopup() {\n\t\tif (!this.state.showPriorityPopup) return null;\n\t\treturn (\n\t\t\t<PrioritySelectorPopup\n\t\t\t\tonClose={this.onClosePriorityPopup}\n\t\t\t\tonSelect={this.onSelectPriority}\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tif (this.state.forbidden) {\n\t\t\treturn <Components.Forbidden />;\n\t\t}\n\t\treturn (\n\t\t\t<KeyboardAvoidingView behavior={\"padding\"} style={styles.container}>\n\t\t\t\t<Components.Header\n\t\t\t\t\tleftIcon=\"angle-left\"\n\t\t\t\t\tonPressLeft={this.onPressBack}\n\t\t\t\t\ttext={Config.env.strings.MAINTENANCE_REQUEST_DETAILS}\n\t\t\t\t/>\n\t\t\t\t{this.renderLoading()}\n\t\t\t\t<ScrollView\n\t\t\t\t\tref={this.scrollView}\n\t\t\t\t\tcontentContainerStyle={{ paddingBottom: 26 }}\n\t\t\t\t\tstyle={{ height: \"100%\" }}\n\t\t\t\t>\n\t\t\t\t\t<View style={styles.innerContainer}>\n\t\t\t\t\t\t{this.renderTop()}\n\t\t\t\t\t\t{this.renderAssignee()}\n\t\t\t\t\t\t{this.rendeDetails()}\n\t\t\t\t\t\t{this.renderMessages()}\n\t\t\t\t\t</View>\n\t\t\t\t</ScrollView>\n\t\t\t\t{this.renderMessagesReply()}\n\t\t\t\t{this.renderStatusPopup()}\n\t\t\t\t{this.renderPriorityPopup()}\n\t\t\t\t{this.renderImagePopup()}\n\t\t\t\t{this.renderDocumentPopup()}\n\t\t\t\t<DateTimePicker\n\t\t\t\t\tisVisible={this.state.isDateTimePickerVisible}\n\t\t\t\t\tonConfirm={this.onDateSelected}\n\t\t\t\t\tonCancel={this.onCloseDatePicker}\n\t\t\t\t\tmode={this.state.popUpType}\n\t\t\t\t\theaderTextIOS={`Pick a ${this.state.popUpType}`}\n\t\t\t\t\tdate={new Date()}\n\t\t\t\t/>\n\t\t\t</KeyboardAvoidingView>\n\t\t);\n\t}\n}\n\nconst styles = StyleSheet.create({\n\tcontainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#fff\",\n\t},\n\tinnerContainer: {\n\t\tpaddingTop: 23,\n\t\tpaddingHorizontal: 16,\n\t},\n\tjobTitleContainer: {\n\t\tpaddingVertical: 14,\n\t\tpaddingHorizontal: 12,\n\t},\n\tjobIdText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 12,\n\t\tmarginBottom: 4,\n\t},\n\tjobTitleText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 20,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tmarginBottom: 8,\n\t},\n\tjobTypeSeenContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tjobTypeContainer: {\n\t\tpadding: 4,\n\t\tminWidth: 80,\n\t\tmaxWidth: 140,\n\t\tborderRadius: 4,\n\t\tjustifyContent: \"center\",\n\t},\n\tjobTypeText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 12,\n\t\ttextAlign: \"center\",\n\t\tmaxWidth: \"100%\",\n\t},\n\tjobSeenContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tmarginLeft: 10,\n\t},\n\tjobSeenIcon: {\n\t\tfontSize: 12,\n\t},\n\tjobSeenText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 12,\n\t\tmarginLeft: 4,\n\t},\n\tjobStatusDateText: {\n\t\tmarginTop: 8,\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 13,\n\t\tcolor: Colours.TEXT_LIGHT,\n\t},\n\tjobInfoContainer: {\n\t\tborderTopWidth: 1,\n\t\tborderTopColor: Colours.LINEGREY,\n\t\tpaddingVertical: 14,\n\t\tpaddingHorizontal: 12,\n\t},\n\tjobStatusExpectedContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"flex-start\",\n\t\tjustifyContent: \"space-between\",\n\t},\n\tjobStatusOuterContainer: {\n\t\t// marginRight: 50,\n\t},\n\tjobStatusHeading: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 11,\n\t\tletterSpacing: 0.8,\n\t\tcolor: Colours.TEXT_DARK,\n\t\tmarginBottom: 6,\n\t},\n\tjobStatusContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\twidth: 120,\n\t\theight: 30,\n\t\tpaddingHorizontal: 8,\n\t\tborderRadius: 4,\n\t},\n\tjobStatusIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 14,\n\t\tmarginRight: 8,\n\t},\n\tjobStatusText: {\n\t\tcolor: \"#fff\",\n\t\ttextAlign: \"center\",\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 13,\n\t\tflex: 1,\n\t\ttextAlign: \"center\",\n\t},\n\tjobPriorityOuterContainer: {\n\t\tmarginTop: 12,\n\t},\n\tjobExpectedDateContainer: {\n\t\tbackgroundColor: Colours.BOXGREY,\n\t\tflexDirection: \"row\",\n\t\twidth: 115,\n\t\theight: 30,\n\t\tborderRadius: 4,\n\t\talignItems: \"center\",\n\t\tpaddingLeft: 8,\n\t},\n\tjobExpectedDate: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 13,\n\t\tcolor: Colours.hexToRGBAstring(Colours.TEXT_DARKEST, 0.5),\n\t},\n\tdetailsText: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tdetailsSection: {\n\t\tmarginTop: 8,\n\t\tpaddingHorizontal: 0,\n\t\tpaddingBottom: 12,\n\t},\n\tsideBySideImages: {\n\t\tflex: 1,\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\tmarginBottom: 16,\n\t},\n\tsideBySideImageContainer: {\n\t\tbackgroundColor: \"#fff\",\n\t\twidth: \"48%\",\n\t\theight: 150,\n\t\tborderRadius: 2,\n\t\toverflow: \"hidden\",\n\t},\n\tsingleImageContainer: {\n\t\tbackgroundColor: \"#fff\",\n\t\twidth: \"100%\",\n\t\theight: 150,\n\t\tflex: 1,\n\t\tborderRadius: 2,\n\t\toverflow: \"hidden\",\n\t\tmarginBottom: 16,\n\t},\n\timageContainer: {\n\t\theight: 150,\n\t\twidth: \"auto\",\n\t\tjustifyContent: \"center\",\n\t},\n\timagePlayContainer: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\timageControlIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 30,\n\t\ttextShadowColor: \"rgba(0,0,0,0.3)\",\n\t\ttextShadowOffset: { width: 2, height: 2 },\n\t},\n\tplusImages: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 32,\n\t\ttextAlign: \"center\",\n\t\tcolor: \"#fff\",\n\t\ttextShadowColor: \"rgba(0, 0, 0, 0.5)\",\n\t\ttextShadowOffset: { width: 0, height: 2 },\n\t\ttextShadowRadius: 8,\n\t},\n\tjobDescriptionText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_LIGHT,\n\t\tpaddingBottom: 16,\n\t},\n\tlocationLabel: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tlocationText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tpaddingVertical: 8,\n\t},\n\trequesterLabel: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tpaddingVertical: 10,\n\t},\n\tprofileContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tnameContainer: {\n\t\tmarginLeft: 18,\n\t},\n\tnameText: {\n\t\tfontSize: \"sf-semibold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tmarginBottom: 4,\n\t},\n\tphoneText: {\n\t\tfontSize: \"sf-medium\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_LIGHT,\n\t},\n\ttextSectionInner: {\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t\tmarginTop: 8,\n\t},\n\ttextSectionLabel: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 12,\n\t\tlineHeight: 24,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\ttextSectionTextContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\ttextSectionText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 13,\n\t\tlineHeight: 24,\n\t\tcolor: Colours.TEXT_LIGHT,\n\t},\n\ttextSectionAngleRight: {\n\t\tfontSize: 24,\n\t\tmarginLeft: 10,\n\t\tlineHeight: 24,\n\t},\n\tcustomLabel: {\n\t\tfontFamily: \"sf-bold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tcustomText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tpaddingVertical: 8,\n\t},\n\tcustomImage: {\n\t\tmarginTop: 8,\n\t},\n\tcustomDocument: {\n\t\tmarginTop: 8,\n\t\tmarginBottom: 16,\n\t},\n\tcustomStaticTitle: {\n\t\tfontSize: 20,\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tmarginBottom: 10,\n\t},\n\tcustomStaticText: {\n\t\tfontSize: 17,\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tlineHeight: 24,\n\t\tmarginBottom: 10,\n\t},\n\tdocumentContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"space-between\",\n\t\tpaddingVertical: 4,\n\t},\n\tdocumentTypeContainer: {\n\t\twidth: 50,\n\t\theight: 60,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderRadius: 5,\n\t\tmarginRight: 8,\n\t},\n\tdocumentTypeText: {\n\t\tcolor: \"#fff\",\n\t\tfontFamily: \"sf-semibold\",\n\t\ttextAlign: \"center\",\n\t},\n\tdocumentText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\texternalSyncContainer: {\n\t\tbackgroundColor: \"#fff\",\n\t\tmarginTop: 16,\n\t\tborderRadius: 8,\n\t\tpadding: 16,\n\t},\n\texternalSyncHeader: {\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t\tmarginBottom: 12,\n\t\tpaddingBottom: 12,\n\t\tborderBottomWidth: 1,\n\t\tborderBottomColor: Colours.LINEGREY,\n\t},\n\texternalSyncTitle: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\texternalSyncIcon: {\n\t\tfontSize: 20,\n\t},\n\texternalSyncContent: {\n\t\tpaddingTop: 4,\n\t},\n\texternalSyncRow: {\n\t\tflexDirection: \"row\",\n\t\tmarginBottom: 10,\n\t},\n\texternalSyncLabel: {\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARK,\n\t\twidth: 100,\n\t},\n\texternalSyncValue: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tflex: 1,\n\t},\n});\n\nconst mapStateToProps = (state) => {\n\treturn {\n\t\tuser: state.user,\n\t\tcolourBrandingMain: Colours.getMainBrandingColourFromState(state),\n\t\tjobs: state[values.reducerKey].jobs,\n\t\tstatusTypes: state[values.reducerKey].jobstatuses,\n\t\thideSeen: state[values.reducerKey].hideSeen,\n\t};\n};\n\nexport default connect(mapStateToProps, {\n\tjobAdded,\n\tjobStatusesUpdate,\n\tjobHideSeenUpdate,\n})(RequestDetail);\n"],"mappings":"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","ignoreList":[]}
@@ -36,7 +36,10 @@ class MaintenanceRequest extends Component {
36
36
  _defineProperty(this, "loadSiteUsers", async () => {
37
37
  try {
38
38
  const response = await userActions.getSiteUsers(this.props.site);
39
- // PC-1255: Load all users (not just residents) to match web admin behavior
39
+ let items = response.data.Items || [];
40
+ if (this.props.optionOnlyForResidents) {
41
+ items = _.filter(items, u => u.category === "resident");
42
+ }
40
43
  const users = _.sortBy(response.data.Items || [], u => (u.displayName || "").toLowerCase());
41
44
  this.setState({
42
45
  users
@@ -1579,7 +1582,8 @@ const mapStateToProps = state => {
1579
1582
  phoneNumber,
1580
1583
  permissions,
1581
1584
  colourBrandingMain: Colours.getMainBrandingColourFromState(state),
1582
- strings: ((_state$strings = state.strings) === null || _state$strings === void 0 ? void 0 : _state$strings.config) || {}
1585
+ strings: ((_state$strings = state.strings) === null || _state$strings === void 0 ? void 0 : _state$strings.config) || {},
1586
+ optionOnlyForResidents: Helper.getSiteSettingFromState(state, values.optionOnlyForResidents)
1583
1587
  };
1584
1588
  };
1585
1589
  export default connect(mapStateToProps, {
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","Text","Dimensions","Platform","KeyboardAvoidingView","ScrollView","TouchableOpacity","View","Switch","FlatList","ImageBackground","Keyboard","Alert","DateTimePicker","Icon","_","moment","connect","jobAdded","maintenanceActions","userActions","Services","Components","Colours","Helper","Config","values","PHOTO_SIZE","get","width","MaintenanceRequest","constructor","props","_defineProperty","_this$props$permissio","hasUserManagement","permissions","includes","setState","canCreateOnBehalf","loadSiteUsers","setDefaultUser","response","getSiteUsers","site","users","sortBy","data","Items","u","displayName","toLowerCase","error","console","log","userType","defaultUser","userId","uid","profilePic","selectedUser","userName","roomNumber","unit","phone","isEmpty","phoneNumber","update","state","customFields","some","title","length","navigation","navigate","screenUserPicker","currentUser","onSelectUser","bind","user","Id","fetchUser","userDetails","fieldId","answer","cloneDeep","field","isTitle","undefined","xor","join","dismiss","dateFieldId","popUpType","type","isDateTimePickerVisible","date","dateObj","format","uploadUri","imageUri","imageFieldId","imagesUpdate","getImages","splice","uploading","uploadProgress","allowRetry","setImages","progress","map","img","uri","percentage","url","replace","thumbNailExists","thumbNailUrl","getThumb300","waitForThumbnails","get1400","documentUri","documentName","documentExt","documentFieldId","documentsUpdate","getDocuments","setDocuments","doc","mandatory","checkMandatory","isBoolean","imagesList","getImageUrls","documentsList","getDocumentAnswers","isArray","isNil","checkFormat","isEmail","isValid","valid","uploadingImage","submitting","imageUploader","showUploadMenu","description","isHome","times","setTimeout","scrollContainer","scrollTo","y","images","updatedCustomFields","sendMaintenanceRequest","getSite","then","res","success","refreshRequest","searchResult","onSubmissionSuccess","confirmationToShow","catch","err","id","job","getJob","every","index","isFieldValid","customFieldImages","Array","add","callback","filter","checkThumb","setInterval","Promise","all","image","resolve","newImage","push","imageExists","thumbnailsExist","clearInterval","customFieldDocuments","name","ext","showFullscreenVideo","currentVideoUrl","fail","showError","loadingTypes","forceCustomFields","types","keyboardTypes","email","text","componentDidMount","checkUserPermissions","getJobTypes","componentWillUnmount","onPressBack","goBack","onPressType","screenJobTypePicker","currentType","onSelectType","pickType","onCloseConfirmationPopup","onBack","onConfirmationReset","getDefaultJob","selected","find","t","typeName","hasCustomFields","noType","jobId","defaultType","submitRequest","showFormErrorAlert","connected","message","alert","validateCustomFields","submit","renderImageUploader","createElement","ImageUploader","ref","onUploadStarted","onUploadStartedImage","onUploadSuccess","onUploadSuccessImage","onUploadFailed","onUploadFailedImage","onUploadProgress","onUploadProgressImage","onLibrarySelected","onLibrarySelectedImage","size","quality","fileName","popupTitle","allowsEditing","multiple","hideLibrary","renderImage","item","isVideoUrl","isVideo","activeOpacity","onPress","style","styles","imageContainer","imageContainerNotEmpty","marginLeft","marginTop","imageCircle","iconStyle","addImageIcon","ImageUploadProgress","uploader","color","colourBrandingMain","imageBackground","source","getImageSource","imagePlayContainer","toggleFullscreenVideo","imageControlIcon","removeImage","renderDocument","key","documentContainer","documentTypeContainer","backgroundColor","documentTypeText","documentText","removeDocumentButton","removeDocument","removeDocumentIcon","renderSuccess","padding","flex","requestSuccess","renderImageList","imageListContainer","imageListContainerEmpty","keyboardShouldPersistTaps","enableEmptySections","renderItem","keyExtractor","numColumns","renderDocumentList","documentListContainer","document","DocumentUploader","buttonTitle","allowedTypes","onUploadStartedDocument","onUploadProgressDocument","onUploadSuccessDocument","onUploadFailedDocument","disabled","renderDateField","sectionStyle","displayText","placeHolder","icon","errorText","GenericInputSection","label","required","dateContainer","dateFieldButton","onOpenDatePicker","dateFieldContainer","dateText","dateIcon","dateClearButton","onClearDate","removeIcon","renderField","marginBottom","inputType","value","onChange","onChangeToggleAnswer","options","o","Label","Value","i","isActive","onChangeCheckboxAnswer","multiChoiceOption","hitSlop","top","left","bottom","right","TickIcon","tick","unticked","multiChoiceText","placeholder","onChangeText","val","onChangeAnswer","editable","squaredCorners","autoCapitalize","keyboardType","staticTitle","staticText","toParagraphed","renderCustomFields","FormCard","renderForm","_this$state$selectedU","_this$state$selectedU2","_this$state$selectedU3","Spinner","paddingBottom","LoadingIndicator","visible","FormCardSection","textValue","hasContent","hasUnderline","borderBottomWidth","borderBottomColor","LINEGREY","onPressUser","userPickerContainer","profileContainer","ProfilePic","Diameter","nameText","sectionTitle","fontSize","onChangeName","paddingHorizontal","paddingVertical","flexDirection","justifyContent","textJobType","marginRight","Fragment","autoCorrect","multiline","autoGrow","alignItems","position","env","strings","MAINTENANCE_HOME","onValueChange","trackColor","false","true","thumbColor","OS","minHeight","renderRegisterConfirmation","ConfirmationPopup","confirmText","textEntityName","repeatText","onClose","onPressAction","renderVideoPlayerPopup","VideoPopup","showFullscreenButton","renderNoType","WarningPopup","infoText","padHorizontal","render","behavior","viewContainer","container","Header","leftIcon","onPressLeft","featureKey","textFeatureTitle","rightText","onPressRight","absoluteRight","isVisible","onConfirm","onDateSelected","onCancel","mode","headerTextIOS","Date","fontFamily","COLOUR_TANGERINE","TEXT_DARK","textAlign","BOXGREY","height","borderStyle","borderWidth","borderColor","borderRadius","PINKISH_GREY","textShadowColor","textShadowOffset","TEXT_DARKEST","lineHeight","TEXT_BLUEGREY","paddingLeft","mapStateToProps","_state$strings","connection","getMainBrandingColourFromState","config"],"sources":["ServiceRequest.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tDimensions,\n\tPlatform,\n\tKeyboardAvoidingView,\n\tScrollView,\n\tTouchableOpacity,\n\tView,\n\tSwitch,\n\tFlatList,\n\tImageBackground,\n\tKeyboard,\n\tAlert,\n} from \"react-native\";\nimport DateTimePicker from \"react-native-modal-datetime-picker\";\nimport { Icon } from \"@rneui/themed\";\nimport _ from \"lodash\";\nimport moment from \"moment\";\nimport { connect } from \"react-redux\";\nimport { jobAdded } from \"../actions\";\nimport { maintenanceActions, userActions } from \"../apis\";\nimport { Services } from \"../feature.config\";\nimport { Components, Colours, Helper, Config } from \"../core.config\";\nimport { values } from \"../values.config\";\n\nconst PHOTO_SIZE = (Dimensions.get(\"window\").width - 64) / 3;\n\nclass MaintenanceRequest extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tsubmitting: false,\n\t\t\tsuccess: false,\n\t\t\tfail: false,\n\t\t\terror: null,\n\t\t\tshowError: false,\n\t\t\tloadingTypes: values.forceCustomFields,\n\n\t\t\tuserName: \"\",\n\t\t\troomNumber: \"\",\n\t\t\tphone: \"\",\n\t\t\ttitle: \"\",\n\t\t\tdescription: \"\",\n\t\t\ttimes: \"\",\n\n\t\t\ttype: \"General\",\n\n\t\t\tuploadingImage: false,\n\t\t\timages: [\n\t\t\t\t{\n\t\t\t\t\tadd: true,\n\t\t\t\t},\n\t\t\t],\n\t\t\tshowFullscreenVideo: false,\n\t\t\tcurrentVideoUrl: \"\",\n\n\t\t\tisHome: false,\n\n\t\t\ttypes: [],\n\n\t\t\tconfirmationToShow: false,\n\n\t\t\tcustomFields: [],\n\t\t\tcustomFieldImages: {},\n\t\t\tcustomFieldDocuments: {},\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tpopUpType: \"date\",\n\t\t\tdateFieldId: null,\n\t\t\timageFieldId: null,\n\n\t\t\t// PC-1255: On-behalf request fields\n\t\t\tcanCreateOnBehalf: false,\n\t\t\tselectedUser: null,\n\t\t\tusers: [],\n\t\t};\n\t\tthis.checkThumb = null;\n\t\tthis.keyboardTypes = {\n\t\t\tphone: \"phone-pad\",\n\t\t\temail: \"email-address\",\n\t\t\ttext: \"default\",\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.checkUserPermissions();\n\t\tthis.getJobTypes();\n\t}\n\n\tcheckUserPermissions = async () => {\n\t\t// PC-1255: Check if user has userManagement permission\n\t\tconst hasUserManagement =\n\t\t\tthis.props.permissions?.includes(\"userManagement\") || false;\n\n\t\tif (hasUserManagement) {\n\t\t\tthis.setState({ canCreateOnBehalf: true });\n\t\t\t// Load site users for picker\n\t\t\tawait this.loadSiteUsers();\n\t\t} else {\n\t\t\t// Default to logged-in user for non-staff or staff without permission\n\t\t\tthis.setDefaultUser();\n\t\t}\n\t};\n\n\tloadSiteUsers = async () => {\n\t\ttry {\n\t\t\tconst response = await userActions.getSiteUsers(this.props.site);\n\t\t\t// PC-1255: Load all users (not just residents) to match web admin behavior\n\t\t\tconst users = _.sortBy(response.data.Items || [], (u) =>\n\t\t\t\t(u.displayName || \"\").toLowerCase(),\n\t\t\t);\n\t\t\tthis.setState({ users });\n\t\t} catch (error) {\n\t\t\tconsole.log(\"Error loading site users:\", error);\n\t\t\t// Fall back to default user if loading fails\n\t\t\tthis.setDefaultUser();\n\t\t}\n\t};\n\n\tsetDefaultUser = () => {\n\t\tif (this.props.userType !== \"KIOSK\") {\n\t\t\tconst defaultUser = {\n\t\t\t\tuserId: this.props.uid,\n\t\t\t\tdisplayName: this.props.displayName,\n\t\t\t\tprofilePic: this.props.profilePic,\n\t\t\t};\n\t\t\tthis.setState({\n\t\t\t\tselectedUser: defaultUser,\n\t\t\t\tuserName: this.props.displayName,\n\t\t\t\troomNumber: this.props.unit,\n\t\t\t\tphone: !_.isEmpty(this.props.phoneNumber) ? this.props.phoneNumber : \"\",\n\t\t\t});\n\t\t}\n\t};\n\n\tcomponentWillUnmount() {\n\t\tclearInterval(this.checkThumb);\n\t}\n\n\tonChangeName = (userName) => {\n\t\tconst update = { userName };\n\t\tif (\n\t\t\t!this.state.customFields ||\n\t\t\t!_.some(this.state.customFields, \"isTitle\")\n\t\t) {\n\t\t\tupdate.title = userName;\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\t// PC-1255: Handle user picker navigation\n\tonPressUser = () => {\n\t\tconst { users, selectedUser } = this.state;\n\t\tif (!users || users.length === 0) return;\n\n\t\tServices.navigation.navigate(values.screenUserPicker, {\n\t\t\tcurrentUser: selectedUser,\n\t\t\tusers,\n\t\t\tonSelectUser: this.onSelectUser.bind(this),\n\t\t});\n\t};\n\n\t// PC-1255: Handle user selection and auto-populate contact details\n\tonSelectUser = async (user) => {\n\t\tconst update = {\n\t\t\tselectedUser: user,\n\t\t\tuserName: user.displayName,\n\t\t};\n\n\t\t// PC-1255: Try to fetch full user details for auto-population\n\t\ttry {\n\t\t\t// getSiteUsers returns 'Id', but fetchUser expects 'userId'\n\t\t\tconst userId = user.userId || user.Id;\n\t\t\tconst response = await userActions.fetchUser(this.props.site, userId);\n\t\t\tif (response.data && response.data.user) {\n\t\t\t\tconst userDetails = response.data.user;\n\t\t\t\tif (userDetails.phoneNumber) {\n\t\t\t\t\tupdate.phone = userDetails.phoneNumber;\n\t\t\t\t}\n\t\t\t\tif (userDetails.unit) {\n\t\t\t\t\tupdate.roomNumber = userDetails.unit;\n\t\t\t\t}\n\t\t\t\tif (\n\t\t\t\t\t!this.state.customFields ||\n\t\t\t\t\t!_.some(this.state.customFields, \"isTitle\")\n\t\t\t\t) {\n\t\t\t\t\tupdate.title = userDetails.displayName || null;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t// Permission denied (403) or other error - continue without auto-population\n\t\t\t// User can still manually enter contact details\n\t\t\tconsole.log(\"Could not fetch user details for auto-population:\", error);\n\t\t} finally {\n\t\t\t// In any case, we still need a title. Inform the user to set one form field as a title.\n\t\t\tif (!this.state.title && !update.title) {\n\t\t\t\tupdate.title =\n\t\t\t\t\t\"[Missing title - Set one of the form field as title in the community manager]\";\n\t\t\t}\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\tonChangeAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = answer;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonChangeToggleAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = field.answer === answer ? undefined : answer;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonChangeCheckboxAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = _.xor(field.answer || [], [answer]);\n\t\tif (field.isTitle) update.title = field.answer.join(\", \");\n\t\tthis.setState(update);\n\t};\n\n\tonOpenDatePicker = (field, fieldId) => {\n\t\tKeyboard.dismiss();\n\t\tthis.setState({\n\t\t\tdateFieldId: fieldId,\n\t\t\tpopUpType: field.type,\n\t\t\tisDateTimePickerVisible: true,\n\t\t});\n\t};\n\n\tonClearDate = (fieldId) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = undefined;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonDateSelected = (date) => {\n\t\tconst { customFields, dateFieldId, popUpType } = this.state;\n\t\tconst update = {\n\t\t\tcustomFields: _.cloneDeep(customFields),\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tfieldId: null,\n\t\t};\n\t\tconst field = update.customFields[dateFieldId];\n\t\tconst dateObj = moment(date);\n\t\tif (popUpType === \"date\") {\n\t\t\tfield.answer = dateObj.format(\"YYYY-MM-DD\");\n\t\t\tif (field.isTitle) update.title = dateObj.format(\"DD MMM YYYY\");\n\t\t} else {\n\t\t\tfield.answer = dateObj.format(\"HH:mm\");\n\t\t\tif (field.isTitle) update.title = dateObj.format(\"h:mm a\");\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\tonUploadStartedImage = (uploadUri, imageUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.splice(imagesUpdate.length - 1, 0, {\n\t\t\tuploading: true,\n\t\t\tuploadProgress: \"0%\",\n\t\t\tuploadUri,\n\t\t\timageUri,\n\t\t\tallowRetry: true,\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadProgressImage = (progress) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === progress.uri) {\n\t\t\t\timg.uploadProgress = progress.percentage;\n\t\t\t\timg.uploading = true;\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadSuccessImage = async (uri, uploadUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === uploadUri && img.uploading) {\n\t\t\t\timg.url = uri.replace(\"/general/\", \"/general1400/\");\n\t\t\t\timg.thumbNailExists = false;\n\t\t\t\timg.thumbNailUrl = Helper.getThumb300(img.url);\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId, () => this.waitForThumbnails());\n\t};\n\n\tonUploadFailedImage = (uploadUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === uploadUri) {\n\t\t\t\timg.uploading = true; // Requried for retry\n\t\t\t\timg.uploadProgress = \"\";\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonLibrarySelectedImage = (uri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.splice(imagesUpdate.length - 1, 0, {\n\t\t\tuploading: false,\n\t\t\tallowRetry: false,\n\t\t\turl: Helper.get1400(uri),\n\t\t\tthumbNailExists: true,\n\t\t\tthumbNailUrl: Helper.getThumb300(uri),\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadStartedDocument = (\n\t\tuploadUri,\n\t\tdocumentUri,\n\t\tdocumentName,\n\t\tdocumentExt,\n\t\tdocumentFieldId,\n\t) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.splice(documentsUpdate.length - 1, 0, {\n\t\t\tuploading: true,\n\t\t\tuploadProgress: \"0%\",\n\t\t\tuploadUri,\n\t\t\tdocumentUri,\n\t\t\tdocumentName,\n\t\t\tdocumentExt,\n\t\t\tallowRetry: true,\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadProgressDocument = (progress, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === progress.uri) {\n\t\t\t\tdoc.uploadProgress = progress.percentage;\n\t\t\t\tdoc.uploading = true;\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadSuccessDocument = async (uri, uploadUri, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === uploadUri && doc.uploading) {\n\t\t\t\tdoc.uploading = false;\n\t\t\t\tdoc.uploadProgress = \"100%\";\n\t\t\t\tdoc.url = uri;\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadFailedDocument = (uploadUri, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === uploadUri) {\n\t\t\t\tdoc.uploading = true; // Requried for retry\n\t\t\t\tdoc.uploadProgress = \"\";\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonPressBack() {\n\t\tServices.navigation.goBack();\n\t}\n\n\tonPressType() {\n\t\tServices.navigation.navigate(values.screenJobTypePicker, {\n\t\t\tcurrentType: this.state.type,\n\t\t\ttypes: this.state.types,\n\t\t\tonSelectType: this.pickType.bind(this),\n\t\t});\n\t}\n\n\tonCloseConfirmationPopup() {\n\t\tthis.setState({\n\t\t\tconfirmationToShow: false,\n\t\t});\n\t\tServices.navigation.goBack();\n\t\tthis.props.onBack && this.props.onBack();\n\t}\n\n\tonConfirmationReset() {\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\tconfirmationToShow: false,\n\t\t\t\ttitle: \"\",\n\t\t\t\tdescription: \"\",\n\t\t\t\ttimes: \"\",\n\t\t\t\tisHome: false,\n\t\t\t\tuploadingImage: false,\n\t\t\t\timages: [\n\t\t\t\t\t{\n\t\t\t\t\t\tadd: true,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tsubmitting: false,\n\t\t\t\tsuccess: false,\n\t\t\t\tfail: false,\n\t\t\t\tcustomFields: [],\n\t\t\t\tcustomFieldImages: {},\n\t\t\t\tcustomFieldDocuments: {},\n\t\t\t\tisDateTimePickerVisible: false,\n\t\t\t\tpopUpType: \"date\",\n\t\t\t\tdateFieldId: null,\n\t\t\t\timageFieldId: null,\n\t\t\t},\n\t\t\t() => this.pickType(this.state.type),\n\t\t);\n\t}\n\n\tisFieldValid = (field, fieldId) => {\n\t\tconst { mandatory, type, answer } = field;\n\t\tif ([\"staticTitle\", \"staticText\"].includes(type)) return true;\n\n\t\tconst checkMandatory = () => {\n\t\t\tif (!mandatory) return true;\n\t\t\tswitch (type) {\n\t\t\t\tcase \"yn\":\n\t\t\t\t\treturn _.isBoolean(answer);\n\t\t\t\tcase \"image\":\n\t\t\t\t\tconst imagesList = this.getImageUrls(fieldId);\n\t\t\t\t\treturn imagesList.length > 0;\n\t\t\t\tcase \"document\":\n\t\t\t\t\tconst documentsList = this.getDocumentAnswers(fieldId);\n\t\t\t\t\treturn documentsList.length > 0;\n\t\t\t\tcase \"checkbox\":\n\t\t\t\t\treturn _.isArray(answer) && answer.length > 0;\n\t\t\t\tdefault:\n\t\t\t\t\treturn !_.isNil(answer) && !_.isEmpty(answer);\n\t\t\t}\n\t\t};\n\t\tconst checkFormat = () => {\n\t\t\tif (_.isNil(answer) || _.isEmpty(answer)) return true;\n\t\t\tswitch (type) {\n\t\t\t\tcase \"email\":\n\t\t\t\t\treturn Helper.isEmail(answer);\n\t\t\t\tcase \"date\":\n\t\t\t\t\treturn moment(answer, \"YYYY-MM-DD\", true).isValid();\n\t\t\t\tcase \"time\":\n\t\t\t\t\treturn moment(answer, \"HH:mm\", true).isValid();\n\t\t\t\tdefault:\n\t\t\t\t\treturn true;\n\t\t\t}\n\t\t};\n\n\t\tconst valid = checkMandatory() && checkFormat();\n\t\treturn valid;\n\t};\n\n\tgetJobTypes() {\n\t\tmaintenanceActions\n\t\t\t.getJobTypes(Helper.getSite(this.props.site))\n\t\t\t.then((res) => {\n\t\t\t\tthis.setState(\n\t\t\t\t\t{\n\t\t\t\t\t\ttypes: res.data,\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tthis.getDefaultJob();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t})\n\t\t\t.catch(() => {});\n\t}\n\n\tpickType(type) {\n\t\tconst { types } = this.state;\n\t\tconst selected = types.find((t) => t.typeName === type) || {};\n\t\tif (values.forceCustomFields && !selected.hasCustomFields) {\n\t\t\tthis.setState({\n\t\t\t\ttype,\n\t\t\t\tcustomFields: [],\n\t\t\t\tnoType: true,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst update = {\n\t\t\ttype,\n\t\t\tcustomFields:\n\t\t\t\tselected.hasCustomFields && selected.customFields.length > 0\n\t\t\t\t\t? _.cloneDeep(selected.customFields)\n\t\t\t\t\t: [],\n\t\t\tloadingTypes: false,\n\t\t};\n\n\t\tif (\n\t\t\t!_.isEmpty(update.customFields) &&\n\t\t\t!_.some(update.customFields, \"isTitle\")\n\t\t) {\n\t\t\tupdate.title = this.state.userName;\n\t\t}\n\n\t\tthis.setState(update);\n\t}\n\n\tgetDefaultJob() {\n\t\tconst { types, jobId } = this.state;\n\t\tif (types.length !== 0 && jobId == null) {\n\t\t\tconst defaultType = types[0];\n\t\t\tthis.pickType(defaultType.typeName);\n\t\t}\n\t}\n\n\tshowUploadMenu = (fieldId) => {\n\t\tKeyboard.dismiss();\n\t\tif (this.state.uploadingImage || this.state.submitting) {\n\t\t\treturn;\n\t\t}\n\t\tif (fieldId) this.setState({ imageFieldId: fieldId });\n\t\tthis.imageUploader.showUploadMenu();\n\t};\n\n\tsubmit = async () => {\n\t\tthis.setState({ submitting: true });\n\n\t\tlet description = this.state.description;\n\n\t\tif (this.state.isHome) {\n\t\t\tdescription = description + `. -- Times Available: ${this.state.times}`;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\tthis.scrollContainer.scrollTo({ y: 0 });\n\t\t}, 100);\n\n\t\tconst images = this.getImageUrls();\n\n\t\t// Fix custom images field answers\n\t\tconst customFields = _.cloneDeep(this.state.customFields);\n\t\tconst updatedCustomFields = customFields.map((field, fieldId) => {\n\t\t\tif (field.type === \"image\") field.answer = this.getImageUrls(fieldId);\n\t\t\tif (field.type === \"document\")\n\t\t\t\tfield.answer = this.getDocumentAnswers(fieldId);\n\t\t\treturn field;\n\t\t});\n\n\t\tmaintenanceActions\n\t\t\t.sendMaintenanceRequest(\n\t\t\t\tthis.props.uid,\n\t\t\t\tthis.state.userName,\n\t\t\t\tthis.state.phone,\n\t\t\t\tthis.state.roomNumber,\n\t\t\t\tthis.state.title,\n\t\t\t\tdescription,\n\t\t\t\tnull,\n\t\t\t\tthis.state.type,\n\t\t\t\timages,\n\t\t\t\tHelper.getSite(this.props.site),\n\t\t\t\tthis.state.isHome,\n\t\t\t\tthis.state.times,\n\t\t\t\tupdatedCustomFields,\n\t\t\t)\n\t\t\t.then((res) => {\n\t\t\t\tif (res.data.success) {\n\t\t\t\t\tthis.refreshRequest(res.data.searchResult);\n\t\t\t\t\tif (this.props.onSubmissionSuccess)\n\t\t\t\t\t\tthis.props.onSubmissionSuccess(res.data);\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tsubmitting: false,\n\t\t\t\t\t\tsuccess: true,\n\t\t\t\t\t\tconfirmationToShow: true,\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tsubmitting: false,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tconsole.log(\"maintenance submission fail.\");\n\t\t\t\tconsole.log(err);\n\t\t\t\tthis.setState({\n\t\t\t\t\tsubmitting: false,\n\t\t\t\t});\n\t\t\t});\n\t};\n\n\trefreshRequest = async (id) => {\n\t\ttry {\n\t\t\tconst job = await maintenanceActions.getJob(\n\t\t\t\tHelper.getSite(this.props.site),\n\t\t\t\tid,\n\t\t\t);\n\t\t\tthis.props.jobAdded(job.data);\n\t\t} catch (error) {\n\t\t\tconsole.log(\"refreshRequest error\", error);\n\t\t}\n\t};\n\n\tvalidateCustomFields = () => {\n\t\tconst { customFields } = this.state;\n\t\tif (!customFields || customFields.length === 0) return true;\n\n\t\treturn customFields.every((field, index) => {\n\t\t\tconst isValid = this.isFieldValid(field, index);\n\t\t\treturn isValid;\n\t\t});\n\t};\n\n\tsubmitRequest() {\n\t\tconst {\n\t\t\tcustomFields,\n\t\t\tsubmitting,\n\t\t\tuploadingImage,\n\t\t\ttitle,\n\t\t\troomNumber,\n\t\t\tisHome,\n\t\t\tcustomFieldImages,\n\t\t} = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\t\tfunction showFormErrorAlert() {}\n\n\t\tif (submitting || !this.props.connected) {\n\t\t\tif (!this.props.connected) {\n\t\t\t\tthis.setState({\n\t\t\t\t\terror: { message: \"No internet connection detected\" },\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (uploadingImage) return;\n\t\tthis.setState({ error: null, showError: false });\n\n\t\t// PC-1255: Validate user selection for on-behalf requests\n\t\tif (this.state.canCreateOnBehalf && !this.state.selectedUser) {\n\t\t\tconsole.log(\"submitRequest - no user selected for on-behalf request\");\n\t\t\tAlert.alert(\n\t\t\t\t\"Missing Information\",\n\t\t\t\t\"Please select a user to submit the form on behalf of\",\n\t\t\t);\n\t\t\tthis.setState({ showError: true });\n\t\t\treturn;\n\t\t}\n\n\t\tif (title.length === 0 || !roomNumber || roomNumber.length === 0) {\n\t\t\tconsole.log(\"submitRequest - error\", { title, roomNumber });\n\t\t\tAlert.alert(\n\t\t\t\t\"Missing Information\",\n\t\t\t\t\"Please fill out your address details\",\n\t\t\t);\n\t\t\tthis.setState({ showError: true });\n\t\t\treturn;\n\t\t}\n\t\tif (hasCustomFields) {\n\t\t\tif (!this.validateCustomFields()) {\n\t\t\t\tconsole.log(\"submitRequest - custom fields error\");\n\t\t\t\tAlert.alert(\n\t\t\t\t\t\"Invalid Information\",\n\t\t\t\t\t\"Please review the form for errors and try submitting again.\",\n\t\t\t\t);\n\t\t\t\tthis.setState({ showError: true });\n\t\t\t\treturn;\n\t\t\t}\n\t\t} else {\n\t\t\tif (isHome && times.length < 2) {\n\t\t\t\tconsole.log(\"submitRequest - error\", { isHome, times });\n\t\t\t\tAlert.alert(\n\t\t\t\t\t\"Invalid Information\",\n\t\t\t\t\t\"Please review the form for errors and try submitting again.\",\n\t\t\t\t);\n\t\t\t\tthis.setState({ showError: true });\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.submit();\n\t}\n\n\tgetImages = (fieldId = null) => {\n\t\tconst { images, customFieldImages } = this.state;\n\t\tconst imagesList = _.cloneDeep(\n\t\t\tfieldId ? customFieldImages[fieldId] : images,\n\t\t);\n\t\tif (!imagesList || !Array.isArray(imagesList) || imagesList.length === 0) {\n\t\t\treturn [{ add: true }];\n\t\t}\n\t\treturn imagesList;\n\t};\n\n\tsetImages = (imagesList, fieldId = null, callback = null) => {\n\t\tlet update = {};\n\t\tif (fieldId) {\n\t\t\tconst customFieldImages = _.cloneDeep(this.state.customFieldImages);\n\t\t\tcustomFieldImages[fieldId] = imagesList;\n\t\t\tupdate = { customFieldImages };\n\t\t} else {\n\t\t\tupdate = { images: imagesList };\n\t\t}\n\t\tthis.setState(update, callback);\n\t};\n\n\tgetImageUrls = (fieldId = null) => {\n\t\tconst imagesList = this.getImages(fieldId);\n\t\treturn _.filter(imagesList, (img) => {\n\t\t\treturn !img.uploading && !img.add;\n\t\t}).map((img) => {\n\t\t\treturn img.url;\n\t\t});\n\t};\n\n\twaitForThumbnails = () => {\n\t\tif (this.checkThumb) return;\n\n\t\tthis.checkThumb = setInterval(async () => {\n\t\t\tconst { imageFieldId } = this.state;\n\t\t\tconst imagesList = this.getImages(imageFieldId);\n\t\t\tconst imagesUpdate = [];\n\t\t\tawait Promise.all(\n\t\t\t\timagesList.map((image) => {\n\t\t\t\t\treturn new Promise(async (resolve) => {\n\t\t\t\t\t\tconst newImage = { ...image };\n\t\t\t\t\t\timagesUpdate.push(newImage);\n\t\t\t\t\t\tif (newImage.url && !newImage.thumbNailExists) {\n\t\t\t\t\t\t\tnewImage.uploading = false;\n\t\t\t\t\t\t\tnewImage.allowRetry = false;\n\t\t\t\t\t\t\tnewImage.thumbNailExists = await Helper.imageExists(\n\t\t\t\t\t\t\t\tnewImage.thumbNailUrl,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tresolve(newImage.thumbNailExists);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t);\n\t\t\tconst thumbnailsExist = imagesUpdate.every(\n\t\t\t\t(image) => !image.url || image.thumbNailExists,\n\t\t\t);\n\t\t\tif (thumbnailsExist) {\n\t\t\t\tclearInterval(this.checkThumb);\n\t\t\t\tthis.checkThumb = null;\n\t\t\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t\t\t}\n\t\t}, 2000);\n\t};\n\n\tremoveImage = (index, fieldId) => {\n\t\tconst imagesUpdate = this.getImages(fieldId);\n\t\timagesUpdate.splice(index, 1);\n\n\t\tthis.setImages(imagesUpdate, fieldId);\n\t};\n\n\tgetDocuments = (fieldId) => {\n\t\tconst { customFieldDocuments } = this.state;\n\t\tconst documentsList = _.cloneDeep(customFieldDocuments[fieldId]) || [];\n\t\treturn documentsList;\n\t};\n\n\tsetDocuments = (documentsList, fieldId) => {\n\t\tlet update = {};\n\t\tconst customFieldDocuments = _.cloneDeep(this.state.customFieldDocuments);\n\t\tcustomFieldDocuments[fieldId] = documentsList;\n\t\tupdate = { customFieldDocuments };\n\t\tthis.setState(update);\n\t};\n\n\tgetDocumentAnswers = (fieldId) => {\n\t\tconst documentsList = this.getDocuments(fieldId);\n\t\treturn _.filter(documentsList, (doc) => {\n\t\t\treturn !doc.uploading && doc.url;\n\t\t}).map((doc) => {\n\t\t\treturn {\n\t\t\t\tname: doc.documentName,\n\t\t\t\text: doc.documentExt,\n\t\t\t\turl: doc.url,\n\t\t\t};\n\t\t});\n\t};\n\n\tremoveDocument = (index, fieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(fieldId);\n\t\tdocumentsUpdate.splice(index, 1);\n\n\t\tthis.setDocuments(documentsUpdate, fieldId);\n\t};\n\n\ttoggleFullscreenVideo = (url) => {\n\t\tif (typeof url !== \"string\") url = \"\";\n\t\tthis.setState({\n\t\t\tshowFullscreenVideo: url.length > 0,\n\t\t\tcurrentVideoUrl: url,\n\t\t});\n\t};\n\n\trenderImageUploader() {\n\t\treturn (\n\t\t\t<Components.ImageUploader\n\t\t\t\tref={(ref) => (this.imageUploader = ref)}\n\t\t\t\tonUploadStarted={this.onUploadStartedImage}\n\t\t\t\tonUploadSuccess={this.onUploadSuccessImage}\n\t\t\t\tonUploadFailed={this.onUploadFailedImage}\n\t\t\t\tonUploadProgress={this.onUploadProgressImage}\n\t\t\t\tonLibrarySelected={this.onLibrarySelectedImage}\n\t\t\t\tsize={{ width: 1400 }}\n\t\t\t\tquality={0.8}\n\t\t\t\tfileName={\"serviceImage\"}\n\t\t\t\tpopupTitle={\"Upload Image\"}\n\t\t\t\tuserId={this.props.uid}\n\t\t\t\tallowsEditing={false}\n\t\t\t\tmultiple\n\t\t\t\thideLibrary\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderImage(item, index, fieldId = null) {\n\t\tconst isVideoUrl = Helper.isVideo(item.url);\n\t\tconst imagesList = this.getImages(fieldId);\n\n\t\tif (item.add) {\n\t\t\treturn (\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tactiveOpacity={0.8}\n\t\t\t\t\tonPress={() => this.showUploadMenu(fieldId)}\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\t\t\timagesList.length > 1 && styles.imageContainerNotEmpty,\n\t\t\t\t\t\t\tindex % 3 === 0 && { marginLeft: 0 },\n\t\t\t\t\t\t\tindex > 2 && { marginTop: 8 },\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={styles.imageCircle}>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"camera\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.addImageIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableOpacity>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\timagesList.length > 1 && styles.imageContainerNotEmpty,\n\t\t\t\t\tindex % 3 === 0 && { marginLeft: 0 },\n\t\t\t\t\tindex > 2 && { marginTop: 8 },\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t{item.uploading ? (\n\t\t\t\t\t<Components.ImageUploadProgress\n\t\t\t\t\t\tuploader={this.imageUploader}\n\t\t\t\t\t\timage={item}\n\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<ImageBackground\n\t\t\t\t\t\tstyle={styles.imageBackground}\n\t\t\t\t\t\tsource={Helper.getImageSource(\n\t\t\t\t\t\t\titem.thumbNailExists ? item.thumbNailUrl : item.url,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{isVideoUrl && (\n\t\t\t\t\t\t\t<View style={styles.imagePlayContainer}>\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={this.toggleFullscreenVideo.bind(this, item.url)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"play\"\n\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tstyle={styles.removeImage}\n\t\t\t\t\t\t\tonPress={() => this.removeImage(index, fieldId)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t\tstyle={styles.removeImage}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t</ImageBackground>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDocument(item, index, fieldId) {\n\t\tconst { colourBrandingMain } = this.props;\n\t\treturn (\n\t\t\t<View key={index} style={styles.documentContainer}>\n\t\t\t\t<View\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t...styles.documentTypeContainer,\n\t\t\t\t\t\tbackgroundColor: colourBrandingMain,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<Text style={styles.documentTypeText}>{item.documentExt}</Text>\n\t\t\t\t</View>\n\t\t\t\t<Text\n\t\t\t\t\tstyle={styles.documentText}\n\t\t\t\t>{`${item.documentName}${item.uploading ? ` - ${item.uploadProgress}` : \"\"}`}</Text>\n\t\t\t\t{!item.uploading && (\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tstyle={styles.removeDocumentButton}\n\t\t\t\t\t\tonPress={() => this.removeDocument(index, fieldId)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\ticonStyle={{\n\t\t\t\t\t\t\t\t...styles.removeDocumentIcon,\n\t\t\t\t\t\t\t\tcolor: colourBrandingMain,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderSuccess() {\n\t\treturn (\n\t\t\t<View style={{ padding: 16, flex: 1, backgroundColor: \"#fff\" }}>\n\t\t\t\t<Text style={styles.requestSuccess}>\n\t\t\t\t\tYour request has been submitted. Thank you.\n\t\t\t\t</Text>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderImageList(fieldId = null) {\n\t\tconst imagesList = this.getImages(fieldId);\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.imageListContainer,\n\t\t\t\t\timagesList.length < 2 && styles.imageListContainerEmpty,\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t<FlatList\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tenableEmptySections\n\t\t\t\t\tdata={imagesList}\n\t\t\t\t\trenderItem={({ item, index }) =>\n\t\t\t\t\t\tthis.renderImage(item, index, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tkeyExtractor={(item, index) => index}\n\t\t\t\t\tnumColumns={3}\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDocumentList(fieldId) {\n\t\tconst documentsList = this.getDocuments(fieldId);\n\t\treturn (\n\t\t\t<View style={styles.documentListContainer}>\n\t\t\t\t{documentsList.length > 0\n\t\t\t\t\t? documentsList.map((document, index) =>\n\t\t\t\t\t\t\tthis.renderDocument(document, index, fieldId),\n\t\t\t\t\t\t)\n\t\t\t\t\t: null}\n\t\t\t\t<Components.DocumentUploader\n\t\t\t\t\tbuttonTitle=\"Add Files\"\n\t\t\t\t\tallowedTypes={[\"application/pdf\"]}\n\t\t\t\t\tonUploadStarted={(uploadUri, uri, name, ext) =>\n\t\t\t\t\t\tthis.onUploadStartedDocument(uploadUri, uri, name, ext, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadProgress={(progress) =>\n\t\t\t\t\t\tthis.onUploadProgressDocument(progress, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadSuccess={(uri, uploadUri) =>\n\t\t\t\t\t\tthis.onUploadSuccessDocument(uri, uploadUri, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadFailed={(uploadUri) =>\n\t\t\t\t\t\tthis.onUploadFailedDocument(uploadUri, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tfileName=\"serviceDocument\"\n\t\t\t\t\tuserId={this.props.uid}\n\t\t\t\t\tdisabled={false}\n\t\t\t\t\tmultiple\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDateField(field, fieldId, sectionStyle) {\n\t\tlet displayText, placeHolder, icon, errorText;\n\t\tif (field.type === \"date\") {\n\t\t\tdisplayText = field.answer\n\t\t\t\t? moment(field.answer, \"YYYY-MM-DD\").format(\"DD MMM YYYY\")\n\t\t\t\t: \"\";\n\t\t\tplaceHolder = \"dd mmm yyyy\";\n\t\t\ticon = \"calendar\";\n\t\t\terrorText = \"Not a valid date\";\n\t\t} else {\n\t\t\tdisplayText = field.answer\n\t\t\t\t? moment(field.answer, \"HH:mm\").format(\"h:mm a\")\n\t\t\t\t: \"\";\n\t\t\tplaceHolder = \"--:-- --\";\n\t\t\ticon = \"clock-o\";\n\t\t\terrorText = \"Not a valid time\";\n\t\t}\n\n\t\treturn (\n\t\t\t<Components.GenericInputSection\n\t\t\t\tkey={fieldId}\n\t\t\t\tlabel={field.label}\n\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\trequired={field.mandatory}\n\t\t\t\tshowError={this.state.showError}\n\t\t\t\terrorText={errorText}\n\t\t\t>\n\t\t\t\t<View style={styles.dateContainer}>\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tstyle={styles.dateFieldButton}\n\t\t\t\t\t\tonPress={() => this.onOpenDatePicker(field, fieldId)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={styles.dateFieldContainer}>\n\t\t\t\t\t\t\t<Text style={styles.dateText}>{displayText || placeHolder}</Text>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname={icon}\n\t\t\t\t\t\t\t\ticonStyle={styles.dateIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t{displayText ? (\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tstyle={styles.dateClearButton}\n\t\t\t\t\t\t\tonPress={() => this.onClearDate(fieldId)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname=\"times\"\n\t\t\t\t\t\t\t\ticonStyle={styles.removeIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t) : null}\n\t\t\t\t</View>\n\t\t\t</Components.GenericInputSection>\n\t\t);\n\t}\n\n\trenderField(field, fieldId) {\n\t\tconst sectionStyle = {\n\t\t\tmarginTop: fieldId === 0 ? 24 : 0,\n\t\t\tmarginBottom: 24,\n\t\t};\n\t\tswitch (field.type) {\n\t\t\tcase \"yn\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tinputType=\"toggle\"\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChange={(answer) => this.onChangeToggleAnswer(fieldId, answer)}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"multichoice\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tinputType=\"radio\"\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChange={(answer) => this.onChangeToggleAnswer(fieldId, answer)}\n\t\t\t\t\t\toptions={field.values.map((o) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tLabel: o,\n\t\t\t\t\t\t\t\tValue: o,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"checkbox\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t>\n\t\t\t\t\t\t{field.values.map((o, i) => {\n\t\t\t\t\t\t\tconst isActive = field.answer && _.includes(field.answer, o);\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={() => this.onChangeCheckboxAnswer(fieldId, o)}\n\t\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\t\tstyle={styles.multiChoiceOption}\n\t\t\t\t\t\t\t\t\thitSlop={{ top: 8, left: 8, bottom: 8, right: 8 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{isActive ? (\n\t\t\t\t\t\t\t\t\t\t<Components.TickIcon\n\t\t\t\t\t\t\t\t\t\t\tstyle={styles.tick}\n\t\t\t\t\t\t\t\t\t\t\tsize={20}\n\t\t\t\t\t\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<View style={styles.unticked} />\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<Text style={styles.multiChoiceText}>{o}</Text>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tcase \"text\":\n\t\t\tcase \"email\":\n\t\t\tcase \"phone\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tplaceholder={field.placeHolder}\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChangeText={(val) => this.onChangeAnswer(fieldId, val)}\n\t\t\t\t\t\teditable\n\t\t\t\t\t\tsquaredCorners\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\terrorText={field.type === \"email\" ? \"Not a valid email\" : undefined}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tautoCapitalize=\"sentences\"\n\t\t\t\t\t\tkeyboardType={this.keyboardTypes[field.type]}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"staticTitle\":\n\t\t\t\treturn (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.staticTitle,\n\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\tsectionStyle,\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{field.label}\n\t\t\t\t\t</Text>\n\t\t\t\t);\n\t\t\tcase \"staticText\":\n\t\t\t\treturn (\n\t\t\t\t\t<View key={fieldId} style={[styles.staticText, sectionStyle]}>\n\t\t\t\t\t\t{Helper.toParagraphed(field.label, styles.staticText)}\n\t\t\t\t\t</View>\n\t\t\t\t);\n\t\t\tcase \"date\":\n\t\t\tcase \"time\":\n\t\t\t\treturn this.renderDateField(field, fieldId, sectionStyle);\n\t\t\tcase \"image\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.renderImageList(fieldId)}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tcase \"document\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.renderDocumentList(fieldId)}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn null;\n\t\t}\n\t}\n\n\trenderCustomFields() {\n\t\tconst { customFields } = this.state;\n\t\tif (!customFields || customFields.length === 0) return null;\n\n\t\treturn (\n\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t{customFields.map((field, i) => this.renderField(field, i))}\n\t\t\t</Components.FormCard>\n\t\t);\n\t}\n\n\trenderForm() {\n\t\tconst { customFields, loadingTypes } = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\n\t\tif (loadingTypes) {\n\t\t\treturn <Components.Spinner />;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={{ flex: 1 }}>\n\t\t\t\t<ScrollView\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tstyle={{ flex: 1 }}\n\t\t\t\t\tref={(ref) => (this.scrollContainer = ref)}\n\t\t\t\t>\n\t\t\t\t\t<View style={{ paddingBottom: 2 }}>\n\t\t\t\t\t\t<Components.LoadingIndicator visible={this.state.submitting} />\n\t\t\t\t\t\t{this.state.error && (\n\t\t\t\t\t\t\t<Text style={styles.errorText}>{this.state.error}</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t\t\t\t{/* PC-1255: User picker for on-behalf requests */}\n\t\t\t\t\t\t\t{this.state.canCreateOnBehalf && (\n\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\tlabel={\"Select User\"}\n\t\t\t\t\t\t\t\t\ttextValue={this.state.selectedUser?.displayName}\n\t\t\t\t\t\t\t\t\thasContent\n\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\terrorText=\"Please select a user.\"\n\t\t\t\t\t\t\t\t\tshowError={this.state.showError && !this.state.selectedUser}\n\t\t\t\t\t\t\t\t\tsectionStyle={{\n\t\t\t\t\t\t\t\t\t\tborderBottomWidth: 1,\n\t\t\t\t\t\t\t\t\t\tborderBottomColor: Colours.LINEGREY,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onPressUser}>\n\t\t\t\t\t\t\t\t\t\t<View style={styles.userPickerContainer}>\n\t\t\t\t\t\t\t\t\t\t\t<View style={styles.profileContainer}>\n\t\t\t\t\t\t\t\t\t\t\t\t<Components.ProfilePic\n\t\t\t\t\t\t\t\t\t\t\t\t\tProfilePic={this.state.selectedUser?.profilePic}\n\t\t\t\t\t\t\t\t\t\t\t\t\tDiameter={30}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t<Text style={styles.nameText}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.selectedUser?.displayName ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"Select User\"}\n\t\t\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfontSize: 20,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolor: this.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t</Components.FormCardSection>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{/* PC-1255: Hide Name field when creating on behalf - name comes from selected user */}\n\t\t\t\t\t\t\t{!this.state.canCreateOnBehalf && (\n\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\tlabel={\"Name\"}\n\t\t\t\t\t\t\t\t\tplaceholder={\"Enter your name\"}\n\t\t\t\t\t\t\t\t\ttextValue={this.state.userName}\n\t\t\t\t\t\t\t\t\tonChangeText={(userName) => this.onChangeName(userName)}\n\t\t\t\t\t\t\t\t\teditable={\n\t\t\t\t\t\t\t\t\t\tthis.props.userType === \"KIOSK\" &&\n\t\t\t\t\t\t\t\t\t\tthis.state.submitting === false\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\treturn this.state.userName.length > 1;\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\terrorText=\"Please enter your name.\"\n\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\tthis.state.showError && this.state.userName.length < 2\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\tlabel={\"Contact number\"}\n\t\t\t\t\t\t\t\tplaceholder={\"Enter phone number\"}\n\t\t\t\t\t\t\t\ttextValue={this.state.phone}\n\t\t\t\t\t\t\t\tonChangeText={(phone) => this.setState({ phone })}\n\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\tkeyboardType={\"phone-pad\"}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\tlabel={\"Address\"}\n\t\t\t\t\t\t\t\tplaceholder={\"Enter your address\"}\n\t\t\t\t\t\t\t\ttextValue={this.state.roomNumber}\n\t\t\t\t\t\t\t\tonChangeText={(roomNumber) => this.setState({ roomNumber })}\n\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\tthis.state.roomNumber && this.state.roomNumber.length > 1\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\terrorText=\"Please provide your address.\"\n\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\tthis.state.showError &&\n\t\t\t\t\t\t\t\t\t(!this.state.roomNumber || this.state.roomNumber.length < 2)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t<Components.FormCard\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\tmarginTop: 16,\n\t\t\t\t\t\t\t\tpaddingHorizontal: 24,\n\t\t\t\t\t\t\t\tpaddingVertical: 16,\n\t\t\t\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text style={styles.sectionTitle}>{values.textJobType}</Text>\n\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onPressType.bind(this)}>\n\t\t\t\t\t\t\t\t<View style={{ flexDirection: \"row\" }}>\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain, marginRight: 16 },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{this.state.type}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t{ fontSize: 20, color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t{hasCustomFields ? (\n\t\t\t\t\t\t\tthis.renderCustomFields()\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\tlabel={\"Title\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={\"Enter a title for your request\"}\n\t\t\t\t\t\t\t\t\t\ttextValue={this.state.title}\n\t\t\t\t\t\t\t\t\t\tonChangeText={(title) => this.setState({ title })}\n\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\t\treturn this.state.title.length > 1;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\terrorText=\"Please provide a title.\"\n\t\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\t\tthis.state.showError && this.state.title.length < 2\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\tlabel={\"Description\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={\"Describe your request here in detail\"}\n\t\t\t\t\t\t\t\t\t\ttextValue={this.state.description}\n\t\t\t\t\t\t\t\t\t\tonChangeText={(description) =>\n\t\t\t\t\t\t\t\t\t\t\tthis.setState({ description })\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t\t\t<Components.FormCard\n\t\t\t\t\t\t\t\t\tstyle={{ marginTop: 16, paddingHorizontal: 24 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\t\t\t\tpaddingVertical: 16,\n\t\t\t\t\t\t\t\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\t\t\t\t\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\t\t\t\t\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\t\t\t\t\t\t\t\tposition: \"relative\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tthis.state.isHome && {\n\t\t\t\t\t\t\t\t\t\t\t\tborderBottomWidth: 1,\n\t\t\t\t\t\t\t\t\t\t\t\tborderBottomColor: Colours.LINEGREY,\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.sectionTitle}>\n\t\t\t\t\t\t\t\t\t\t\t{Config.env.strings.MAINTENANCE_HOME}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t<Switch\n\t\t\t\t\t\t\t\t\t\t\tvalue={this.state.isHome}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={this.state.submitting}\n\t\t\t\t\t\t\t\t\t\t\tonValueChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({ isHome: value })\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ttrackColor={{\n\t\t\t\t\t\t\t\t\t\t\t\tfalse: \"#ddd\",\n\t\t\t\t\t\t\t\t\t\t\t\ttrue: this.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tthumbColor={Platform.OS === \"android\" ? \"#fff\" : null}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t{this.state.isHome && (\n\t\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\t\tlabel={\"Available times\"}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\t\t\t\t\t\"Describe your available times here in detail.\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ttextValue={this.state.times}\n\t\t\t\t\t\t\t\t\t\t\tonChangeText={(times) => this.setState({ times })}\n\t\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn this.state.times.length > 1;\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\terrorText=\"Please provide available times.\"\n\t\t\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.showError &&\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.isHome &&\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.times.length < 2\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tminHeight={40}\n\t\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t\t\t{this.renderImageList()}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\t\t\t\t</ScrollView>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderRegisterConfirmation() {\n\t\treturn (\n\t\t\t<Components.ConfirmationPopup\n\t\t\t\tconfirmText={`${values.textEntityName} submitted`}\n\t\t\t\trepeatText={\"Submit another\"}\n\t\t\t\tvisible={this.state.confirmationToShow}\n\t\t\t\tonClose={this.onCloseConfirmationPopup.bind(this)}\n\t\t\t\tonPressAction={this.onConfirmationReset.bind(this)}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderVideoPlayerPopup() {\n\t\tconst { showFullscreenVideo, currentVideoUrl } = this.state;\n\t\tif (!currentVideoUrl) return;\n\n\t\treturn (\n\t\t\t<Components.VideoPopup\n\t\t\t\turi={currentVideoUrl}\n\t\t\t\tvisible={showFullscreenVideo}\n\t\t\t\tshowFullscreenButton={false}\n\t\t\t\tonClose={this.toggleFullscreenVideo}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderNoType() {\n\t\tif (!this.state.noType) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<Components.WarningPopup\n\t\t\t\tconfirmText={\"No forms are available\"}\n\t\t\t\tinfoText={\"Check back later for forms.\"}\n\t\t\t\tvisible={this.state.noType}\n\t\t\t\tonClose={this.onPressBack.bind(this)}\n\t\t\t\tpadHorizontal\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { submitting, success, isDateTimePickerVisible, popUpType } =\n\t\t\tthis.state;\n\n\t\treturn (\n\t\t\t<KeyboardAvoidingView behavior={\"padding\"} style={styles.viewContainer}>\n\t\t\t\t{this.renderImageUploader()}\n\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t<Components.Header\n\t\t\t\t\t\tleftIcon=\"angle-left\"\n\t\t\t\t\t\tonPressLeft={this.onPressBack.bind(this)}\n\t\t\t\t\t\ttext={\n\t\t\t\t\t\t\tthis.props.strings[`${values.featureKey}_textFeatureTitle`] ||\n\t\t\t\t\t\t\tvalues.textFeatureTitle\n\t\t\t\t\t\t}\n\t\t\t\t\t\trightText={submitting || success ? null : \"Done\"}\n\t\t\t\t\t\tonPressRight={this.submitRequest.bind(this)}\n\t\t\t\t\t\tabsoluteRight\n\t\t\t\t\t/>\n\t\t\t\t\t{this.renderForm()}\n\t\t\t\t</View>\n\t\t\t\t{this.renderRegisterConfirmation()}\n\t\t\t\t{this.renderVideoPlayerPopup()}\n\t\t\t\t{this.renderNoType()}\n\t\t\t\t<DateTimePicker\n\t\t\t\t\tisVisible={isDateTimePickerVisible}\n\t\t\t\t\tonConfirm={this.onDateSelected}\n\t\t\t\t\tonCancel={() => this.setState({ isDateTimePickerVisible: false })}\n\t\t\t\t\tmode={popUpType}\n\t\t\t\t\theaderTextIOS={`Pick a ${popUpType}`}\n\t\t\t\t\tdate={new Date()}\n\t\t\t\t/>\n\t\t\t</KeyboardAvoidingView>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tviewContainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#fff\",\n\t},\n\tcontainer: {\n\t\tflex: 1,\n\t\tposition: \"relative\",\n\t\tbackgroundColor: \"#f0f0f5\",\n\t},\n\terrorText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.COLOUR_TANGERINE,\n\t\tfontSize: 16,\n\t},\n\trequestSuccess: {\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARK,\n\t\tfontSize: 17,\n\t\ttextAlign: \"center\",\n\t},\n\tsectionTitle: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 17,\n\t\tcolor: Colours.TEXT_DARK,\n\t},\n\timageListContainer: {\n\t\tmarginTop: 8,\n\t\tpadding: 8,\n\t\tflexDirection: \"row\",\n\t\tbackgroundColor: Colours.BOXGREY,\n\t\tminHeight: 106,\n\t},\n\timageListContainerEmpty: {\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tflexDirection: \"column\",\n\t},\n\tdocumentListContainer: {\n\t\tmarginTop: 8,\n\t\tflexDirection: \"column\",\n\t\talignItems: \"flex-start\",\n\t},\n\timageContainer: {\n\t\twidth: PHOTO_SIZE,\n\t\theight: PHOTO_SIZE,\n\t\tborderStyle: \"dashed\",\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderWidth: 1,\n\t\tborderColor: Colours.LINEGREY,\n\t\tborderRadius: 4,\n\t\tmarginLeft: 8,\n\t},\n\timageContainerNotEmpty: {\n\t\tborderWidth: 1,\n\t\tborderColor: Colours.LINEGREY,\n\t\tbackgroundColor: \"#fff\",\n\t\tborderStyle: \"dashed\",\n\t},\n\timageBackground: {\n\t\tflex: 1,\n\t\theight: \"100%\",\n\t\twidth: \"100%\",\n\t\tborderRadius: 4,\n\t},\n\timageCircle: {\n\t\twidth: 90,\n\t\theight: 90,\n\t\tborderRadius: 45,\n\t\tbackgroundColor: Colours.PINKISH_GREY,\n\t\tjustifyContent: \"center\",\n\t},\n\taddImageIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 32,\n\t},\n\timagePlayContainer: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\timageControlIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 20,\n\t\ttextShadowColor: \"rgba(0,0,0,0.3)\",\n\t\ttextShadowOffset: { width: 2, height: 2 },\n\t},\n\tremoveImage: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tright: 0,\n\t\tpadding: 4,\n\t\twidth: 40,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\tstaticTitle: {\n\t\tfontSize: 20,\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tstaticText: {\n\t\tfontSize: 17,\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tlineHeight: 24,\n\t},\n\tmultiChoiceOption: {\n\t\tmarginTop: 16,\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tminHeight: 20,\n\t},\n\tmultiChoiceText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARK,\n\t},\n\ttick: {\n\t\tmarginRight: 10,\n\t\tborderRadius: 4,\n\t},\n\tunticked: {\n\t\tmarginRight: 10,\n\t\twidth: 20,\n\t\theight: 20,\n\t\tborderColor: Colours.LINEGREY,\n\t\tborderWidth: 1,\n\t\tborderRadius: 4,\n\t},\n\tdateContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tdateFieldButton: {\n\t\tflex: 1,\n\t},\n\tdateFieldContainer: {\n\t\tflexDirection: \"row\",\n\t\tborderRadius: 2,\n\t\tbackgroundColor: \"#ebeff2\",\n\t\tpadding: 8,\n\t\tmarginTop: 8,\n\t},\n\tdateText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\tdateIcon: {\n\t\tfontSize: 18,\n\t\tcolor: Colours.TEXT_BLUEGREY,\n\t},\n\tdateClearButton: {\n\t\tpaddingLeft: 12,\n\t},\n\tremoveIcon: {\n\t\tfontSize: 26,\n\t\tcolor: Colours.TEXT_BLUEGREY,\n\t},\n\tdocumentContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"space-between\",\n\t\tpaddingVertical: 4,\n\t},\n\tdocumentTypeContainer: {\n\t\twidth: 50,\n\t\theight: 60,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderRadius: 5,\n\t\tmarginRight: 8,\n\t},\n\tdocumentTypeText: {\n\t\tcolor: \"#fff\",\n\t\tfontFamily: \"sf-semibold\",\n\t\ttextAlign: \"center\",\n\t},\n\tdocumentText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\tremoveDocumentButton: {\n\t\tpadding: 4,\n\t\twidth: 40,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tmarginLeft: 8,\n\t},\n\tremoveDocumentIcon: {\n\t\tfontSize: 24,\n\t},\n\t// PC-1255: User picker styles\n\tuserPickerContainer: {\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t},\n\tprofileContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tnameText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARK,\n\t\tmarginLeft: 8,\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\tconst { user, connection } = state;\n\tconst { displayName, profilePic, uid, site, unit, phoneNumber, permissions } =\n\t\tuser;\n\treturn {\n\t\tconnected: connection.connected,\n\t\tuserType: user.type,\n\t\tdisplayName,\n\t\tprofilePic,\n\t\tuid,\n\t\tsite,\n\t\tunit,\n\t\tphoneNumber,\n\t\tpermissions,\n\t\tcolourBrandingMain: Colours.getMainBrandingColourFromState(state),\n\t\tstrings: state.strings?.config || {},\n\t};\n};\n\nexport default connect(mapStateToProps, { jobAdded })(MaintenanceRequest);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","Text","Dimensions","Platform","KeyboardAvoidingView","ScrollView","TouchableOpacity","View","Switch","FlatList","ImageBackground","Keyboard","Alert","DateTimePicker","Icon","_","moment","connect","jobAdded","maintenanceActions","userActions","Services","Components","Colours","Helper","Config","values","PHOTO_SIZE","get","width","MaintenanceRequest","constructor","props","_defineProperty","_this$props$permissio","hasUserManagement","permissions","includes","setState","canCreateOnBehalf","loadSiteUsers","setDefaultUser","response","getSiteUsers","site","items","data","Items","optionOnlyForResidents","filter","u","category","users","sortBy","displayName","toLowerCase","error","console","log","userType","defaultUser","userId","uid","profilePic","selectedUser","userName","roomNumber","unit","phone","isEmpty","phoneNumber","update","state","customFields","some","title","length","navigation","navigate","screenUserPicker","currentUser","onSelectUser","bind","user","Id","fetchUser","userDetails","fieldId","answer","cloneDeep","field","isTitle","undefined","xor","join","dismiss","dateFieldId","popUpType","type","isDateTimePickerVisible","date","dateObj","format","uploadUri","imageUri","imageFieldId","imagesUpdate","getImages","splice","uploading","uploadProgress","allowRetry","setImages","progress","map","img","uri","percentage","url","replace","thumbNailExists","thumbNailUrl","getThumb300","waitForThumbnails","get1400","documentUri","documentName","documentExt","documentFieldId","documentsUpdate","getDocuments","setDocuments","doc","mandatory","checkMandatory","isBoolean","imagesList","getImageUrls","documentsList","getDocumentAnswers","isArray","isNil","checkFormat","isEmail","isValid","valid","uploadingImage","submitting","imageUploader","showUploadMenu","description","isHome","times","setTimeout","scrollContainer","scrollTo","y","images","updatedCustomFields","sendMaintenanceRequest","getSite","then","res","success","refreshRequest","searchResult","onSubmissionSuccess","confirmationToShow","catch","err","id","job","getJob","every","index","isFieldValid","customFieldImages","Array","add","callback","checkThumb","setInterval","Promise","all","image","resolve","newImage","push","imageExists","thumbnailsExist","clearInterval","customFieldDocuments","name","ext","showFullscreenVideo","currentVideoUrl","fail","showError","loadingTypes","forceCustomFields","types","keyboardTypes","email","text","componentDidMount","checkUserPermissions","getJobTypes","componentWillUnmount","onPressBack","goBack","onPressType","screenJobTypePicker","currentType","onSelectType","pickType","onCloseConfirmationPopup","onBack","onConfirmationReset","getDefaultJob","selected","find","t","typeName","hasCustomFields","noType","jobId","defaultType","submitRequest","showFormErrorAlert","connected","message","alert","validateCustomFields","submit","renderImageUploader","createElement","ImageUploader","ref","onUploadStarted","onUploadStartedImage","onUploadSuccess","onUploadSuccessImage","onUploadFailed","onUploadFailedImage","onUploadProgress","onUploadProgressImage","onLibrarySelected","onLibrarySelectedImage","size","quality","fileName","popupTitle","allowsEditing","multiple","hideLibrary","renderImage","item","isVideoUrl","isVideo","activeOpacity","onPress","style","styles","imageContainer","imageContainerNotEmpty","marginLeft","marginTop","imageCircle","iconStyle","addImageIcon","ImageUploadProgress","uploader","color","colourBrandingMain","imageBackground","source","getImageSource","imagePlayContainer","toggleFullscreenVideo","imageControlIcon","removeImage","renderDocument","key","documentContainer","documentTypeContainer","backgroundColor","documentTypeText","documentText","removeDocumentButton","removeDocument","removeDocumentIcon","renderSuccess","padding","flex","requestSuccess","renderImageList","imageListContainer","imageListContainerEmpty","keyboardShouldPersistTaps","enableEmptySections","renderItem","keyExtractor","numColumns","renderDocumentList","documentListContainer","document","DocumentUploader","buttonTitle","allowedTypes","onUploadStartedDocument","onUploadProgressDocument","onUploadSuccessDocument","onUploadFailedDocument","disabled","renderDateField","sectionStyle","displayText","placeHolder","icon","errorText","GenericInputSection","label","required","dateContainer","dateFieldButton","onOpenDatePicker","dateFieldContainer","dateText","dateIcon","dateClearButton","onClearDate","removeIcon","renderField","marginBottom","inputType","value","onChange","onChangeToggleAnswer","options","o","Label","Value","i","isActive","onChangeCheckboxAnswer","multiChoiceOption","hitSlop","top","left","bottom","right","TickIcon","tick","unticked","multiChoiceText","placeholder","onChangeText","val","onChangeAnswer","editable","squaredCorners","autoCapitalize","keyboardType","staticTitle","staticText","toParagraphed","renderCustomFields","FormCard","renderForm","_this$state$selectedU","_this$state$selectedU2","_this$state$selectedU3","Spinner","paddingBottom","LoadingIndicator","visible","FormCardSection","textValue","hasContent","hasUnderline","borderBottomWidth","borderBottomColor","LINEGREY","onPressUser","userPickerContainer","profileContainer","ProfilePic","Diameter","nameText","sectionTitle","fontSize","onChangeName","paddingHorizontal","paddingVertical","flexDirection","justifyContent","textJobType","marginRight","Fragment","autoCorrect","multiline","autoGrow","alignItems","position","env","strings","MAINTENANCE_HOME","onValueChange","trackColor","false","true","thumbColor","OS","minHeight","renderRegisterConfirmation","ConfirmationPopup","confirmText","textEntityName","repeatText","onClose","onPressAction","renderVideoPlayerPopup","VideoPopup","showFullscreenButton","renderNoType","WarningPopup","infoText","padHorizontal","render","behavior","viewContainer","container","Header","leftIcon","onPressLeft","featureKey","textFeatureTitle","rightText","onPressRight","absoluteRight","isVisible","onConfirm","onDateSelected","onCancel","mode","headerTextIOS","Date","fontFamily","COLOUR_TANGERINE","TEXT_DARK","textAlign","BOXGREY","height","borderStyle","borderWidth","borderColor","borderRadius","PINKISH_GREY","textShadowColor","textShadowOffset","TEXT_DARKEST","lineHeight","TEXT_BLUEGREY","paddingLeft","mapStateToProps","_state$strings","connection","getMainBrandingColourFromState","config","getSiteSettingFromState"],"sources":["ServiceRequest.js"],"sourcesContent":["import React, { Component } from \"react\";\nimport { Text } from \"@plusscommunities/pluss-core-app/components\";\nimport {\n\tDimensions,\n\tPlatform,\n\tKeyboardAvoidingView,\n\tScrollView,\n\tTouchableOpacity,\n\tView,\n\tSwitch,\n\tFlatList,\n\tImageBackground,\n\tKeyboard,\n\tAlert,\n} from \"react-native\";\nimport DateTimePicker from \"react-native-modal-datetime-picker\";\nimport { Icon } from \"@rneui/themed\";\nimport _ from \"lodash\";\nimport moment from \"moment\";\nimport { connect } from \"react-redux\";\nimport { jobAdded } from \"../actions\";\nimport { maintenanceActions, userActions } from \"../apis\";\nimport { Services } from \"../feature.config\";\nimport { Components, Colours, Helper, Config } from \"../core.config\";\nimport { values } from \"../values.config\";\n\nconst PHOTO_SIZE = (Dimensions.get(\"window\").width - 64) / 3;\n\nclass MaintenanceRequest extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tsubmitting: false,\n\t\t\tsuccess: false,\n\t\t\tfail: false,\n\t\t\terror: null,\n\t\t\tshowError: false,\n\t\t\tloadingTypes: values.forceCustomFields,\n\n\t\t\tuserName: \"\",\n\t\t\troomNumber: \"\",\n\t\t\tphone: \"\",\n\t\t\ttitle: \"\",\n\t\t\tdescription: \"\",\n\t\t\ttimes: \"\",\n\n\t\t\ttype: \"General\",\n\n\t\t\tuploadingImage: false,\n\t\t\timages: [\n\t\t\t\t{\n\t\t\t\t\tadd: true,\n\t\t\t\t},\n\t\t\t],\n\t\t\tshowFullscreenVideo: false,\n\t\t\tcurrentVideoUrl: \"\",\n\n\t\t\tisHome: false,\n\n\t\t\ttypes: [],\n\n\t\t\tconfirmationToShow: false,\n\n\t\t\tcustomFields: [],\n\t\t\tcustomFieldImages: {},\n\t\t\tcustomFieldDocuments: {},\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tpopUpType: \"date\",\n\t\t\tdateFieldId: null,\n\t\t\timageFieldId: null,\n\n\t\t\t// PC-1255: On-behalf request fields\n\t\t\tcanCreateOnBehalf: false,\n\t\t\tselectedUser: null,\n\t\t\tusers: [],\n\t\t};\n\t\tthis.checkThumb = null;\n\t\tthis.keyboardTypes = {\n\t\t\tphone: \"phone-pad\",\n\t\t\temail: \"email-address\",\n\t\t\ttext: \"default\",\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.checkUserPermissions();\n\t\tthis.getJobTypes();\n\t}\n\n\tcheckUserPermissions = async () => {\n\t\t// PC-1255: Check if user has userManagement permission\n\t\tconst hasUserManagement =\n\t\t\tthis.props.permissions?.includes(\"userManagement\") || false;\n\n\t\tif (hasUserManagement) {\n\t\t\tthis.setState({ canCreateOnBehalf: true });\n\t\t\t// Load site users for picker\n\t\t\tawait this.loadSiteUsers();\n\t\t} else {\n\t\t\t// Default to logged-in user for non-staff or staff without permission\n\t\t\tthis.setDefaultUser();\n\t\t}\n\t};\n\n\tloadSiteUsers = async () => {\n\t\ttry {\n\t\t\tconst response = await userActions.getSiteUsers(this.props.site);\n\n\t\t\tlet items = response.data.Items || [];\n\t\t\tif (this.props.optionOnlyForResidents) {\n\t\t\t\titems = _.filter(items, (u) => u.category === \"resident\");\n\t\t\t}\n\t\t\tconst users = _.sortBy(response.data.Items || [], (u) =>\n\t\t\t\t(u.displayName || \"\").toLowerCase(),\n\t\t\t);\n\t\t\tthis.setState({ users });\n\t\t} catch (error) {\n\t\t\tconsole.log(\"Error loading site users:\", error);\n\t\t\t// Fall back to default user if loading fails\n\t\t\tthis.setDefaultUser();\n\t\t}\n\t};\n\n\tsetDefaultUser = () => {\n\t\tif (this.props.userType !== \"KIOSK\") {\n\t\t\tconst defaultUser = {\n\t\t\t\tuserId: this.props.uid,\n\t\t\t\tdisplayName: this.props.displayName,\n\t\t\t\tprofilePic: this.props.profilePic,\n\t\t\t};\n\t\t\tthis.setState({\n\t\t\t\tselectedUser: defaultUser,\n\t\t\t\tuserName: this.props.displayName,\n\t\t\t\troomNumber: this.props.unit,\n\t\t\t\tphone: !_.isEmpty(this.props.phoneNumber) ? this.props.phoneNumber : \"\",\n\t\t\t});\n\t\t}\n\t};\n\n\tcomponentWillUnmount() {\n\t\tclearInterval(this.checkThumb);\n\t}\n\n\tonChangeName = (userName) => {\n\t\tconst update = { userName };\n\t\tif (\n\t\t\t!this.state.customFields ||\n\t\t\t!_.some(this.state.customFields, \"isTitle\")\n\t\t) {\n\t\t\tupdate.title = userName;\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\t// PC-1255: Handle user picker navigation\n\tonPressUser = () => {\n\t\tconst { users, selectedUser } = this.state;\n\t\tif (!users || users.length === 0) return;\n\n\t\tServices.navigation.navigate(values.screenUserPicker, {\n\t\t\tcurrentUser: selectedUser,\n\t\t\tusers,\n\t\t\tonSelectUser: this.onSelectUser.bind(this),\n\t\t});\n\t};\n\n\t// PC-1255: Handle user selection and auto-populate contact details\n\tonSelectUser = async (user) => {\n\t\tconst update = {\n\t\t\tselectedUser: user,\n\t\t\tuserName: user.displayName,\n\t\t};\n\n\t\t// PC-1255: Try to fetch full user details for auto-population\n\t\ttry {\n\t\t\t// getSiteUsers returns 'Id', but fetchUser expects 'userId'\n\t\t\tconst userId = user.userId || user.Id;\n\t\t\tconst response = await userActions.fetchUser(this.props.site, userId);\n\t\t\tif (response.data && response.data.user) {\n\t\t\t\tconst userDetails = response.data.user;\n\t\t\t\tif (userDetails.phoneNumber) {\n\t\t\t\t\tupdate.phone = userDetails.phoneNumber;\n\t\t\t\t}\n\t\t\t\tif (userDetails.unit) {\n\t\t\t\t\tupdate.roomNumber = userDetails.unit;\n\t\t\t\t}\n\t\t\t\tif (\n\t\t\t\t\t!this.state.customFields ||\n\t\t\t\t\t!_.some(this.state.customFields, \"isTitle\")\n\t\t\t\t) {\n\t\t\t\t\tupdate.title = userDetails.displayName || null;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t// Permission denied (403) or other error - continue without auto-population\n\t\t\t// User can still manually enter contact details\n\t\t\tconsole.log(\"Could not fetch user details for auto-population:\", error);\n\t\t} finally {\n\t\t\t// In any case, we still need a title. Inform the user to set one form field as a title.\n\t\t\tif (!this.state.title && !update.title) {\n\t\t\t\tupdate.title =\n\t\t\t\t\t\"[Missing title - Set one of the form field as title in the community manager]\";\n\t\t\t}\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\tonChangeAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = answer;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonChangeToggleAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = field.answer === answer ? undefined : answer;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonChangeCheckboxAnswer = (fieldId, answer) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = _.xor(field.answer || [], [answer]);\n\t\tif (field.isTitle) update.title = field.answer.join(\", \");\n\t\tthis.setState(update);\n\t};\n\n\tonOpenDatePicker = (field, fieldId) => {\n\t\tKeyboard.dismiss();\n\t\tthis.setState({\n\t\t\tdateFieldId: fieldId,\n\t\t\tpopUpType: field.type,\n\t\t\tisDateTimePickerVisible: true,\n\t\t});\n\t};\n\n\tonClearDate = (fieldId) => {\n\t\tconst update = { customFields: _.cloneDeep(this.state.customFields) };\n\t\tconst field = update.customFields[fieldId];\n\t\tfield.answer = undefined;\n\t\tif (field.isTitle) update.title = field.answer;\n\t\tthis.setState(update);\n\t};\n\n\tonDateSelected = (date) => {\n\t\tconst { customFields, dateFieldId, popUpType } = this.state;\n\t\tconst update = {\n\t\t\tcustomFields: _.cloneDeep(customFields),\n\t\t\tisDateTimePickerVisible: false,\n\t\t\tfieldId: null,\n\t\t};\n\t\tconst field = update.customFields[dateFieldId];\n\t\tconst dateObj = moment(date);\n\t\tif (popUpType === \"date\") {\n\t\t\tfield.answer = dateObj.format(\"YYYY-MM-DD\");\n\t\t\tif (field.isTitle) update.title = dateObj.format(\"DD MMM YYYY\");\n\t\t} else {\n\t\t\tfield.answer = dateObj.format(\"HH:mm\");\n\t\t\tif (field.isTitle) update.title = dateObj.format(\"h:mm a\");\n\t\t}\n\t\tthis.setState(update);\n\t};\n\n\tonUploadStartedImage = (uploadUri, imageUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.splice(imagesUpdate.length - 1, 0, {\n\t\t\tuploading: true,\n\t\t\tuploadProgress: \"0%\",\n\t\t\tuploadUri,\n\t\t\timageUri,\n\t\t\tallowRetry: true,\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadProgressImage = (progress) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === progress.uri) {\n\t\t\t\timg.uploadProgress = progress.percentage;\n\t\t\t\timg.uploading = true;\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadSuccessImage = async (uri, uploadUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === uploadUri && img.uploading) {\n\t\t\t\timg.url = uri.replace(\"/general/\", \"/general1400/\");\n\t\t\t\timg.thumbNailExists = false;\n\t\t\t\timg.thumbNailUrl = Helper.getThumb300(img.url);\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId, () => this.waitForThumbnails());\n\t};\n\n\tonUploadFailedImage = (uploadUri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.map((img) => {\n\t\t\tif (img.uploadUri === uploadUri) {\n\t\t\t\timg.uploading = true; // Requried for retry\n\t\t\t\timg.uploadProgress = \"\";\n\t\t\t\timg.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonLibrarySelectedImage = (uri) => {\n\t\tconst { imageFieldId } = this.state;\n\t\tconst imagesUpdate = this.getImages(imageFieldId);\n\t\timagesUpdate.splice(imagesUpdate.length - 1, 0, {\n\t\t\tuploading: false,\n\t\t\tallowRetry: false,\n\t\t\turl: Helper.get1400(uri),\n\t\t\tthumbNailExists: true,\n\t\t\tthumbNailUrl: Helper.getThumb300(uri),\n\t\t});\n\n\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t};\n\n\tonUploadStartedDocument = (\n\t\tuploadUri,\n\t\tdocumentUri,\n\t\tdocumentName,\n\t\tdocumentExt,\n\t\tdocumentFieldId,\n\t) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.splice(documentsUpdate.length - 1, 0, {\n\t\t\tuploading: true,\n\t\t\tuploadProgress: \"0%\",\n\t\t\tuploadUri,\n\t\t\tdocumentUri,\n\t\t\tdocumentName,\n\t\t\tdocumentExt,\n\t\t\tallowRetry: true,\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadProgressDocument = (progress, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === progress.uri) {\n\t\t\t\tdoc.uploadProgress = progress.percentage;\n\t\t\t\tdoc.uploading = true;\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadSuccessDocument = async (uri, uploadUri, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === uploadUri && doc.uploading) {\n\t\t\t\tdoc.uploading = false;\n\t\t\t\tdoc.uploadProgress = \"100%\";\n\t\t\t\tdoc.url = uri;\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonUploadFailedDocument = (uploadUri, documentFieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(documentFieldId);\n\t\tdocumentsUpdate.map((doc) => {\n\t\t\tif (doc.uploadUri === uploadUri) {\n\t\t\t\tdoc.uploading = true; // Requried for retry\n\t\t\t\tdoc.uploadProgress = \"\";\n\t\t\t\tdoc.allowRetry = true;\n\t\t\t}\n\t\t});\n\n\t\tthis.setDocuments(documentsUpdate, documentFieldId);\n\t};\n\n\tonPressBack() {\n\t\tServices.navigation.goBack();\n\t}\n\n\tonPressType() {\n\t\tServices.navigation.navigate(values.screenJobTypePicker, {\n\t\t\tcurrentType: this.state.type,\n\t\t\ttypes: this.state.types,\n\t\t\tonSelectType: this.pickType.bind(this),\n\t\t});\n\t}\n\n\tonCloseConfirmationPopup() {\n\t\tthis.setState({\n\t\t\tconfirmationToShow: false,\n\t\t});\n\t\tServices.navigation.goBack();\n\t\tthis.props.onBack && this.props.onBack();\n\t}\n\n\tonConfirmationReset() {\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\tconfirmationToShow: false,\n\t\t\t\ttitle: \"\",\n\t\t\t\tdescription: \"\",\n\t\t\t\ttimes: \"\",\n\t\t\t\tisHome: false,\n\t\t\t\tuploadingImage: false,\n\t\t\t\timages: [\n\t\t\t\t\t{\n\t\t\t\t\t\tadd: true,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tsubmitting: false,\n\t\t\t\tsuccess: false,\n\t\t\t\tfail: false,\n\t\t\t\tcustomFields: [],\n\t\t\t\tcustomFieldImages: {},\n\t\t\t\tcustomFieldDocuments: {},\n\t\t\t\tisDateTimePickerVisible: false,\n\t\t\t\tpopUpType: \"date\",\n\t\t\t\tdateFieldId: null,\n\t\t\t\timageFieldId: null,\n\t\t\t},\n\t\t\t() => this.pickType(this.state.type),\n\t\t);\n\t}\n\n\tisFieldValid = (field, fieldId) => {\n\t\tconst { mandatory, type, answer } = field;\n\t\tif ([\"staticTitle\", \"staticText\"].includes(type)) return true;\n\n\t\tconst checkMandatory = () => {\n\t\t\tif (!mandatory) return true;\n\t\t\tswitch (type) {\n\t\t\t\tcase \"yn\":\n\t\t\t\t\treturn _.isBoolean(answer);\n\t\t\t\tcase \"image\":\n\t\t\t\t\tconst imagesList = this.getImageUrls(fieldId);\n\t\t\t\t\treturn imagesList.length > 0;\n\t\t\t\tcase \"document\":\n\t\t\t\t\tconst documentsList = this.getDocumentAnswers(fieldId);\n\t\t\t\t\treturn documentsList.length > 0;\n\t\t\t\tcase \"checkbox\":\n\t\t\t\t\treturn _.isArray(answer) && answer.length > 0;\n\t\t\t\tdefault:\n\t\t\t\t\treturn !_.isNil(answer) && !_.isEmpty(answer);\n\t\t\t}\n\t\t};\n\t\tconst checkFormat = () => {\n\t\t\tif (_.isNil(answer) || _.isEmpty(answer)) return true;\n\t\t\tswitch (type) {\n\t\t\t\tcase \"email\":\n\t\t\t\t\treturn Helper.isEmail(answer);\n\t\t\t\tcase \"date\":\n\t\t\t\t\treturn moment(answer, \"YYYY-MM-DD\", true).isValid();\n\t\t\t\tcase \"time\":\n\t\t\t\t\treturn moment(answer, \"HH:mm\", true).isValid();\n\t\t\t\tdefault:\n\t\t\t\t\treturn true;\n\t\t\t}\n\t\t};\n\n\t\tconst valid = checkMandatory() && checkFormat();\n\t\treturn valid;\n\t};\n\n\tgetJobTypes() {\n\t\tmaintenanceActions\n\t\t\t.getJobTypes(Helper.getSite(this.props.site))\n\t\t\t.then((res) => {\n\t\t\t\tthis.setState(\n\t\t\t\t\t{\n\t\t\t\t\t\ttypes: res.data,\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tthis.getDefaultJob();\n\t\t\t\t\t},\n\t\t\t\t);\n\t\t\t})\n\t\t\t.catch(() => {});\n\t}\n\n\tpickType(type) {\n\t\tconst { types } = this.state;\n\t\tconst selected = types.find((t) => t.typeName === type) || {};\n\t\tif (values.forceCustomFields && !selected.hasCustomFields) {\n\t\t\tthis.setState({\n\t\t\t\ttype,\n\t\t\t\tcustomFields: [],\n\t\t\t\tnoType: true,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst update = {\n\t\t\ttype,\n\t\t\tcustomFields:\n\t\t\t\tselected.hasCustomFields && selected.customFields.length > 0\n\t\t\t\t\t? _.cloneDeep(selected.customFields)\n\t\t\t\t\t: [],\n\t\t\tloadingTypes: false,\n\t\t};\n\n\t\tif (\n\t\t\t!_.isEmpty(update.customFields) &&\n\t\t\t!_.some(update.customFields, \"isTitle\")\n\t\t) {\n\t\t\tupdate.title = this.state.userName;\n\t\t}\n\n\t\tthis.setState(update);\n\t}\n\n\tgetDefaultJob() {\n\t\tconst { types, jobId } = this.state;\n\t\tif (types.length !== 0 && jobId == null) {\n\t\t\tconst defaultType = types[0];\n\t\t\tthis.pickType(defaultType.typeName);\n\t\t}\n\t}\n\n\tshowUploadMenu = (fieldId) => {\n\t\tKeyboard.dismiss();\n\t\tif (this.state.uploadingImage || this.state.submitting) {\n\t\t\treturn;\n\t\t}\n\t\tif (fieldId) this.setState({ imageFieldId: fieldId });\n\t\tthis.imageUploader.showUploadMenu();\n\t};\n\n\tsubmit = async () => {\n\t\tthis.setState({ submitting: true });\n\n\t\tlet description = this.state.description;\n\n\t\tif (this.state.isHome) {\n\t\t\tdescription = description + `. -- Times Available: ${this.state.times}`;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\tthis.scrollContainer.scrollTo({ y: 0 });\n\t\t}, 100);\n\n\t\tconst images = this.getImageUrls();\n\n\t\t// Fix custom images field answers\n\t\tconst customFields = _.cloneDeep(this.state.customFields);\n\t\tconst updatedCustomFields = customFields.map((field, fieldId) => {\n\t\t\tif (field.type === \"image\") field.answer = this.getImageUrls(fieldId);\n\t\t\tif (field.type === \"document\")\n\t\t\t\tfield.answer = this.getDocumentAnswers(fieldId);\n\t\t\treturn field;\n\t\t});\n\n\t\tmaintenanceActions\n\t\t\t.sendMaintenanceRequest(\n\t\t\t\tthis.props.uid,\n\t\t\t\tthis.state.userName,\n\t\t\t\tthis.state.phone,\n\t\t\t\tthis.state.roomNumber,\n\t\t\t\tthis.state.title,\n\t\t\t\tdescription,\n\t\t\t\tnull,\n\t\t\t\tthis.state.type,\n\t\t\t\timages,\n\t\t\t\tHelper.getSite(this.props.site),\n\t\t\t\tthis.state.isHome,\n\t\t\t\tthis.state.times,\n\t\t\t\tupdatedCustomFields,\n\t\t\t)\n\t\t\t.then((res) => {\n\t\t\t\tif (res.data.success) {\n\t\t\t\t\tthis.refreshRequest(res.data.searchResult);\n\t\t\t\t\tif (this.props.onSubmissionSuccess)\n\t\t\t\t\t\tthis.props.onSubmissionSuccess(res.data);\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tsubmitting: false,\n\t\t\t\t\t\tsuccess: true,\n\t\t\t\t\t\tconfirmationToShow: true,\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tsubmitting: false,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch((err) => {\n\t\t\t\tconsole.log(\"maintenance submission fail.\");\n\t\t\t\tconsole.log(err);\n\t\t\t\tthis.setState({\n\t\t\t\t\tsubmitting: false,\n\t\t\t\t});\n\t\t\t});\n\t};\n\n\trefreshRequest = async (id) => {\n\t\ttry {\n\t\t\tconst job = await maintenanceActions.getJob(\n\t\t\t\tHelper.getSite(this.props.site),\n\t\t\t\tid,\n\t\t\t);\n\t\t\tthis.props.jobAdded(job.data);\n\t\t} catch (error) {\n\t\t\tconsole.log(\"refreshRequest error\", error);\n\t\t}\n\t};\n\n\tvalidateCustomFields = () => {\n\t\tconst { customFields } = this.state;\n\t\tif (!customFields || customFields.length === 0) return true;\n\n\t\treturn customFields.every((field, index) => {\n\t\t\tconst isValid = this.isFieldValid(field, index);\n\t\t\treturn isValid;\n\t\t});\n\t};\n\n\tsubmitRequest() {\n\t\tconst {\n\t\t\tcustomFields,\n\t\t\tsubmitting,\n\t\t\tuploadingImage,\n\t\t\ttitle,\n\t\t\troomNumber,\n\t\t\tisHome,\n\t\t\tcustomFieldImages,\n\t\t} = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\t\tfunction showFormErrorAlert() {}\n\n\t\tif (submitting || !this.props.connected) {\n\t\t\tif (!this.props.connected) {\n\t\t\t\tthis.setState({\n\t\t\t\t\terror: { message: \"No internet connection detected\" },\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (uploadingImage) return;\n\t\tthis.setState({ error: null, showError: false });\n\n\t\t// PC-1255: Validate user selection for on-behalf requests\n\t\tif (this.state.canCreateOnBehalf && !this.state.selectedUser) {\n\t\t\tconsole.log(\"submitRequest - no user selected for on-behalf request\");\n\t\t\tAlert.alert(\n\t\t\t\t\"Missing Information\",\n\t\t\t\t\"Please select a user to submit the form on behalf of\",\n\t\t\t);\n\t\t\tthis.setState({ showError: true });\n\t\t\treturn;\n\t\t}\n\n\t\tif (title.length === 0 || !roomNumber || roomNumber.length === 0) {\n\t\t\tconsole.log(\"submitRequest - error\", { title, roomNumber });\n\t\t\tAlert.alert(\n\t\t\t\t\"Missing Information\",\n\t\t\t\t\"Please fill out your address details\",\n\t\t\t);\n\t\t\tthis.setState({ showError: true });\n\t\t\treturn;\n\t\t}\n\t\tif (hasCustomFields) {\n\t\t\tif (!this.validateCustomFields()) {\n\t\t\t\tconsole.log(\"submitRequest - custom fields error\");\n\t\t\t\tAlert.alert(\n\t\t\t\t\t\"Invalid Information\",\n\t\t\t\t\t\"Please review the form for errors and try submitting again.\",\n\t\t\t\t);\n\t\t\t\tthis.setState({ showError: true });\n\t\t\t\treturn;\n\t\t\t}\n\t\t} else {\n\t\t\tif (isHome && times.length < 2) {\n\t\t\t\tconsole.log(\"submitRequest - error\", { isHome, times });\n\t\t\t\tAlert.alert(\n\t\t\t\t\t\"Invalid Information\",\n\t\t\t\t\t\"Please review the form for errors and try submitting again.\",\n\t\t\t\t);\n\t\t\t\tthis.setState({ showError: true });\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.submit();\n\t}\n\n\tgetImages = (fieldId = null) => {\n\t\tconst { images, customFieldImages } = this.state;\n\t\tconst imagesList = _.cloneDeep(\n\t\t\tfieldId ? customFieldImages[fieldId] : images,\n\t\t);\n\t\tif (!imagesList || !Array.isArray(imagesList) || imagesList.length === 0) {\n\t\t\treturn [{ add: true }];\n\t\t}\n\t\treturn imagesList;\n\t};\n\n\tsetImages = (imagesList, fieldId = null, callback = null) => {\n\t\tlet update = {};\n\t\tif (fieldId) {\n\t\t\tconst customFieldImages = _.cloneDeep(this.state.customFieldImages);\n\t\t\tcustomFieldImages[fieldId] = imagesList;\n\t\t\tupdate = { customFieldImages };\n\t\t} else {\n\t\t\tupdate = { images: imagesList };\n\t\t}\n\t\tthis.setState(update, callback);\n\t};\n\n\tgetImageUrls = (fieldId = null) => {\n\t\tconst imagesList = this.getImages(fieldId);\n\t\treturn _.filter(imagesList, (img) => {\n\t\t\treturn !img.uploading && !img.add;\n\t\t}).map((img) => {\n\t\t\treturn img.url;\n\t\t});\n\t};\n\n\twaitForThumbnails = () => {\n\t\tif (this.checkThumb) return;\n\n\t\tthis.checkThumb = setInterval(async () => {\n\t\t\tconst { imageFieldId } = this.state;\n\t\t\tconst imagesList = this.getImages(imageFieldId);\n\t\t\tconst imagesUpdate = [];\n\t\t\tawait Promise.all(\n\t\t\t\timagesList.map((image) => {\n\t\t\t\t\treturn new Promise(async (resolve) => {\n\t\t\t\t\t\tconst newImage = { ...image };\n\t\t\t\t\t\timagesUpdate.push(newImage);\n\t\t\t\t\t\tif (newImage.url && !newImage.thumbNailExists) {\n\t\t\t\t\t\t\tnewImage.uploading = false;\n\t\t\t\t\t\t\tnewImage.allowRetry = false;\n\t\t\t\t\t\t\tnewImage.thumbNailExists = await Helper.imageExists(\n\t\t\t\t\t\t\t\tnewImage.thumbNailUrl,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tresolve(newImage.thumbNailExists);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tresolve(true);\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t);\n\t\t\tconst thumbnailsExist = imagesUpdate.every(\n\t\t\t\t(image) => !image.url || image.thumbNailExists,\n\t\t\t);\n\t\t\tif (thumbnailsExist) {\n\t\t\t\tclearInterval(this.checkThumb);\n\t\t\t\tthis.checkThumb = null;\n\t\t\t\tthis.setImages(imagesUpdate, imageFieldId);\n\t\t\t}\n\t\t}, 2000);\n\t};\n\n\tremoveImage = (index, fieldId) => {\n\t\tconst imagesUpdate = this.getImages(fieldId);\n\t\timagesUpdate.splice(index, 1);\n\n\t\tthis.setImages(imagesUpdate, fieldId);\n\t};\n\n\tgetDocuments = (fieldId) => {\n\t\tconst { customFieldDocuments } = this.state;\n\t\tconst documentsList = _.cloneDeep(customFieldDocuments[fieldId]) || [];\n\t\treturn documentsList;\n\t};\n\n\tsetDocuments = (documentsList, fieldId) => {\n\t\tlet update = {};\n\t\tconst customFieldDocuments = _.cloneDeep(this.state.customFieldDocuments);\n\t\tcustomFieldDocuments[fieldId] = documentsList;\n\t\tupdate = { customFieldDocuments };\n\t\tthis.setState(update);\n\t};\n\n\tgetDocumentAnswers = (fieldId) => {\n\t\tconst documentsList = this.getDocuments(fieldId);\n\t\treturn _.filter(documentsList, (doc) => {\n\t\t\treturn !doc.uploading && doc.url;\n\t\t}).map((doc) => {\n\t\t\treturn {\n\t\t\t\tname: doc.documentName,\n\t\t\t\text: doc.documentExt,\n\t\t\t\turl: doc.url,\n\t\t\t};\n\t\t});\n\t};\n\n\tremoveDocument = (index, fieldId) => {\n\t\tconst documentsUpdate = this.getDocuments(fieldId);\n\t\tdocumentsUpdate.splice(index, 1);\n\n\t\tthis.setDocuments(documentsUpdate, fieldId);\n\t};\n\n\ttoggleFullscreenVideo = (url) => {\n\t\tif (typeof url !== \"string\") url = \"\";\n\t\tthis.setState({\n\t\t\tshowFullscreenVideo: url.length > 0,\n\t\t\tcurrentVideoUrl: url,\n\t\t});\n\t};\n\n\trenderImageUploader() {\n\t\treturn (\n\t\t\t<Components.ImageUploader\n\t\t\t\tref={(ref) => (this.imageUploader = ref)}\n\t\t\t\tonUploadStarted={this.onUploadStartedImage}\n\t\t\t\tonUploadSuccess={this.onUploadSuccessImage}\n\t\t\t\tonUploadFailed={this.onUploadFailedImage}\n\t\t\t\tonUploadProgress={this.onUploadProgressImage}\n\t\t\t\tonLibrarySelected={this.onLibrarySelectedImage}\n\t\t\t\tsize={{ width: 1400 }}\n\t\t\t\tquality={0.8}\n\t\t\t\tfileName={\"serviceImage\"}\n\t\t\t\tpopupTitle={\"Upload Image\"}\n\t\t\t\tuserId={this.props.uid}\n\t\t\t\tallowsEditing={false}\n\t\t\t\tmultiple\n\t\t\t\thideLibrary\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderImage(item, index, fieldId = null) {\n\t\tconst isVideoUrl = Helper.isVideo(item.url);\n\t\tconst imagesList = this.getImages(fieldId);\n\n\t\tif (item.add) {\n\t\t\treturn (\n\t\t\t\t<TouchableOpacity\n\t\t\t\t\tactiveOpacity={0.8}\n\t\t\t\t\tonPress={() => this.showUploadMenu(fieldId)}\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\t\t\timagesList.length > 1 && styles.imageContainerNotEmpty,\n\t\t\t\t\t\t\tindex % 3 === 0 && { marginLeft: 0 },\n\t\t\t\t\t\t\tindex > 2 && { marginTop: 8 },\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={styles.imageCircle}>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"camera\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.addImageIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</TouchableOpacity>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.imageContainer,\n\t\t\t\t\timagesList.length > 1 && styles.imageContainerNotEmpty,\n\t\t\t\t\tindex % 3 === 0 && { marginLeft: 0 },\n\t\t\t\t\tindex > 2 && { marginTop: 8 },\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t{item.uploading ? (\n\t\t\t\t\t<Components.ImageUploadProgress\n\t\t\t\t\t\tuploader={this.imageUploader}\n\t\t\t\t\t\timage={item}\n\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<ImageBackground\n\t\t\t\t\t\tstyle={styles.imageBackground}\n\t\t\t\t\t\tsource={Helper.getImageSource(\n\t\t\t\t\t\t\titem.thumbNailExists ? item.thumbNailUrl : item.url,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{isVideoUrl && (\n\t\t\t\t\t\t\t<View style={styles.imagePlayContainer}>\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={this.toggleFullscreenVideo.bind(this, item.url)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"play\"\n\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tstyle={styles.removeImage}\n\t\t\t\t\t\t\tonPress={() => this.removeImage(index, fieldId)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\ticonStyle={styles.imageControlIcon}\n\t\t\t\t\t\t\t\tstyle={styles.removeImage}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t</ImageBackground>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDocument(item, index, fieldId) {\n\t\tconst { colourBrandingMain } = this.props;\n\t\treturn (\n\t\t\t<View key={index} style={styles.documentContainer}>\n\t\t\t\t<View\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\t...styles.documentTypeContainer,\n\t\t\t\t\t\tbackgroundColor: colourBrandingMain,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<Text style={styles.documentTypeText}>{item.documentExt}</Text>\n\t\t\t\t</View>\n\t\t\t\t<Text\n\t\t\t\t\tstyle={styles.documentText}\n\t\t\t\t>{`${item.documentName}${item.uploading ? ` - ${item.uploadProgress}` : \"\"}`}</Text>\n\t\t\t\t{!item.uploading && (\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tstyle={styles.removeDocumentButton}\n\t\t\t\t\t\tonPress={() => this.removeDocument(index, fieldId)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tname=\"remove\"\n\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\ticonStyle={{\n\t\t\t\t\t\t\t\t...styles.removeDocumentIcon,\n\t\t\t\t\t\t\t\tcolor: colourBrandingMain,\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t)}\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderSuccess() {\n\t\treturn (\n\t\t\t<View style={{ padding: 16, flex: 1, backgroundColor: \"#fff\" }}>\n\t\t\t\t<Text style={styles.requestSuccess}>\n\t\t\t\t\tYour request has been submitted. Thank you.\n\t\t\t\t</Text>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderImageList(fieldId = null) {\n\t\tconst imagesList = this.getImages(fieldId);\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={[\n\t\t\t\t\tstyles.imageListContainer,\n\t\t\t\t\timagesList.length < 2 && styles.imageListContainerEmpty,\n\t\t\t\t]}\n\t\t\t>\n\t\t\t\t<FlatList\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tenableEmptySections\n\t\t\t\t\tdata={imagesList}\n\t\t\t\t\trenderItem={({ item, index }) =>\n\t\t\t\t\t\tthis.renderImage(item, index, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tkeyExtractor={(item, index) => index}\n\t\t\t\t\tnumColumns={3}\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDocumentList(fieldId) {\n\t\tconst documentsList = this.getDocuments(fieldId);\n\t\treturn (\n\t\t\t<View style={styles.documentListContainer}>\n\t\t\t\t{documentsList.length > 0\n\t\t\t\t\t? documentsList.map((document, index) =>\n\t\t\t\t\t\t\tthis.renderDocument(document, index, fieldId),\n\t\t\t\t\t\t)\n\t\t\t\t\t: null}\n\t\t\t\t<Components.DocumentUploader\n\t\t\t\t\tbuttonTitle=\"Add Files\"\n\t\t\t\t\tallowedTypes={[\"application/pdf\"]}\n\t\t\t\t\tonUploadStarted={(uploadUri, uri, name, ext) =>\n\t\t\t\t\t\tthis.onUploadStartedDocument(uploadUri, uri, name, ext, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadProgress={(progress) =>\n\t\t\t\t\t\tthis.onUploadProgressDocument(progress, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadSuccess={(uri, uploadUri) =>\n\t\t\t\t\t\tthis.onUploadSuccessDocument(uri, uploadUri, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tonUploadFailed={(uploadUri) =>\n\t\t\t\t\t\tthis.onUploadFailedDocument(uploadUri, fieldId)\n\t\t\t\t\t}\n\t\t\t\t\tfileName=\"serviceDocument\"\n\t\t\t\t\tuserId={this.props.uid}\n\t\t\t\t\tdisabled={false}\n\t\t\t\t\tmultiple\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderDateField(field, fieldId, sectionStyle) {\n\t\tlet displayText, placeHolder, icon, errorText;\n\t\tif (field.type === \"date\") {\n\t\t\tdisplayText = field.answer\n\t\t\t\t? moment(field.answer, \"YYYY-MM-DD\").format(\"DD MMM YYYY\")\n\t\t\t\t: \"\";\n\t\t\tplaceHolder = \"dd mmm yyyy\";\n\t\t\ticon = \"calendar\";\n\t\t\terrorText = \"Not a valid date\";\n\t\t} else {\n\t\t\tdisplayText = field.answer\n\t\t\t\t? moment(field.answer, \"HH:mm\").format(\"h:mm a\")\n\t\t\t\t: \"\";\n\t\t\tplaceHolder = \"--:-- --\";\n\t\t\ticon = \"clock-o\";\n\t\t\terrorText = \"Not a valid time\";\n\t\t}\n\n\t\treturn (\n\t\t\t<Components.GenericInputSection\n\t\t\t\tkey={fieldId}\n\t\t\t\tlabel={field.label}\n\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\trequired={field.mandatory}\n\t\t\t\tshowError={this.state.showError}\n\t\t\t\terrorText={errorText}\n\t\t\t>\n\t\t\t\t<View style={styles.dateContainer}>\n\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\tstyle={styles.dateFieldButton}\n\t\t\t\t\t\tonPress={() => this.onOpenDatePicker(field, fieldId)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={styles.dateFieldContainer}>\n\t\t\t\t\t\t\t<Text style={styles.dateText}>{displayText || placeHolder}</Text>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname={icon}\n\t\t\t\t\t\t\t\ticonStyle={styles.dateIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t{displayText ? (\n\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\tstyle={styles.dateClearButton}\n\t\t\t\t\t\t\tonPress={() => this.onClearDate(fieldId)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\tname=\"times\"\n\t\t\t\t\t\t\t\ticonStyle={styles.removeIcon}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t) : null}\n\t\t\t\t</View>\n\t\t\t</Components.GenericInputSection>\n\t\t);\n\t}\n\n\trenderField(field, fieldId) {\n\t\tconst sectionStyle = {\n\t\t\tmarginTop: fieldId === 0 ? 24 : 0,\n\t\t\tmarginBottom: 24,\n\t\t};\n\t\tswitch (field.type) {\n\t\t\tcase \"yn\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tinputType=\"toggle\"\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChange={(answer) => this.onChangeToggleAnswer(fieldId, answer)}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"multichoice\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tinputType=\"radio\"\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChange={(answer) => this.onChangeToggleAnswer(fieldId, answer)}\n\t\t\t\t\t\toptions={field.values.map((o) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tLabel: o,\n\t\t\t\t\t\t\t\tValue: o,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"checkbox\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t>\n\t\t\t\t\t\t{field.values.map((o, i) => {\n\t\t\t\t\t\t\tconst isActive = field.answer && _.includes(field.answer, o);\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<TouchableOpacity\n\t\t\t\t\t\t\t\t\tonPress={() => this.onChangeCheckboxAnswer(fieldId, o)}\n\t\t\t\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\t\t\t\tstyle={styles.multiChoiceOption}\n\t\t\t\t\t\t\t\t\thitSlop={{ top: 8, left: 8, bottom: 8, right: 8 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{isActive ? (\n\t\t\t\t\t\t\t\t\t\t<Components.TickIcon\n\t\t\t\t\t\t\t\t\t\t\tstyle={styles.tick}\n\t\t\t\t\t\t\t\t\t\t\tsize={20}\n\t\t\t\t\t\t\t\t\t\t\tcolor={this.props.colourBrandingMain}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<View style={styles.unticked} />\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<Text style={styles.multiChoiceText}>{o}</Text>\n\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tcase \"text\":\n\t\t\tcase \"email\":\n\t\t\tcase \"phone\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tplaceholder={field.placeHolder}\n\t\t\t\t\t\tvalue={field.answer}\n\t\t\t\t\t\tonChangeText={(val) => this.onChangeAnswer(fieldId, val)}\n\t\t\t\t\t\teditable\n\t\t\t\t\t\tsquaredCorners\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t\terrorText={field.type === \"email\" ? \"Not a valid email\" : undefined}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tautoCapitalize=\"sentences\"\n\t\t\t\t\t\tkeyboardType={this.keyboardTypes[field.type]}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\tcase \"staticTitle\":\n\t\t\t\treturn (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\tstyles.staticTitle,\n\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\tsectionStyle,\n\t\t\t\t\t\t]}\n\t\t\t\t\t>\n\t\t\t\t\t\t{field.label}\n\t\t\t\t\t</Text>\n\t\t\t\t);\n\t\t\tcase \"staticText\":\n\t\t\t\treturn (\n\t\t\t\t\t<View key={fieldId} style={[styles.staticText, sectionStyle]}>\n\t\t\t\t\t\t{Helper.toParagraphed(field.label, styles.staticText)}\n\t\t\t\t\t</View>\n\t\t\t\t);\n\t\t\tcase \"date\":\n\t\t\tcase \"time\":\n\t\t\t\treturn this.renderDateField(field, fieldId, sectionStyle);\n\t\t\tcase \"image\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.renderImageList(fieldId)}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tcase \"document\":\n\t\t\t\treturn (\n\t\t\t\t\t<Components.GenericInputSection\n\t\t\t\t\t\tkey={fieldId}\n\t\t\t\t\t\tlabel={field.label}\n\t\t\t\t\t\tsectionStyle={sectionStyle}\n\t\t\t\t\t\tisValid={() => this.isFieldValid(field, fieldId)}\n\t\t\t\t\t\trequired={field.mandatory}\n\t\t\t\t\t\tshowError={this.state.showError}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.renderDocumentList(fieldId)}\n\t\t\t\t\t</Components.GenericInputSection>\n\t\t\t\t);\n\t\t\tdefault:\n\t\t\t\treturn null;\n\t\t}\n\t}\n\n\trenderCustomFields() {\n\t\tconst { customFields } = this.state;\n\t\tif (!customFields || customFields.length === 0) return null;\n\n\t\treturn (\n\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t{customFields.map((field, i) => this.renderField(field, i))}\n\t\t\t</Components.FormCard>\n\t\t);\n\t}\n\n\trenderForm() {\n\t\tconst { customFields, loadingTypes } = this.state;\n\t\tconst hasCustomFields = customFields && customFields.length > 0;\n\n\t\tif (loadingTypes) {\n\t\t\treturn <Components.Spinner />;\n\t\t}\n\n\t\treturn (\n\t\t\t<View style={{ flex: 1 }}>\n\t\t\t\t<ScrollView\n\t\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\t\tstyle={{ flex: 1 }}\n\t\t\t\t\tref={(ref) => (this.scrollContainer = ref)}\n\t\t\t\t>\n\t\t\t\t\t<View style={{ paddingBottom: 2 }}>\n\t\t\t\t\t\t<Components.LoadingIndicator visible={this.state.submitting} />\n\t\t\t\t\t\t{this.state.error && (\n\t\t\t\t\t\t\t<Text style={styles.errorText}>{this.state.error}</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t\t\t\t{/* PC-1255: User picker for on-behalf requests */}\n\t\t\t\t\t\t\t{this.state.canCreateOnBehalf && (\n\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\tlabel={\"Select User\"}\n\t\t\t\t\t\t\t\t\ttextValue={this.state.selectedUser?.displayName}\n\t\t\t\t\t\t\t\t\thasContent\n\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\terrorText=\"Please select a user.\"\n\t\t\t\t\t\t\t\t\tshowError={this.state.showError && !this.state.selectedUser}\n\t\t\t\t\t\t\t\t\tsectionStyle={{\n\t\t\t\t\t\t\t\t\t\tborderBottomWidth: 1,\n\t\t\t\t\t\t\t\t\t\tborderBottomColor: Colours.LINEGREY,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onPressUser}>\n\t\t\t\t\t\t\t\t\t\t<View style={styles.userPickerContainer}>\n\t\t\t\t\t\t\t\t\t\t\t<View style={styles.profileContainer}>\n\t\t\t\t\t\t\t\t\t\t\t\t<Components.ProfilePic\n\t\t\t\t\t\t\t\t\t\t\t\t\tProfilePic={this.state.selectedUser?.profilePic}\n\t\t\t\t\t\t\t\t\t\t\t\t\tDiameter={30}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t<Text style={styles.nameText}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.selectedUser?.displayName ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"Select User\"}\n\t\t\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfontSize: 20,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolor: this.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t\t\t</Components.FormCardSection>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{/* PC-1255: Hide Name field when creating on behalf - name comes from selected user */}\n\t\t\t\t\t\t\t{!this.state.canCreateOnBehalf && (\n\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\tlabel={\"Name\"}\n\t\t\t\t\t\t\t\t\tplaceholder={\"Enter your name\"}\n\t\t\t\t\t\t\t\t\ttextValue={this.state.userName}\n\t\t\t\t\t\t\t\t\tonChangeText={(userName) => this.onChangeName(userName)}\n\t\t\t\t\t\t\t\t\teditable={\n\t\t\t\t\t\t\t\t\t\tthis.props.userType === \"KIOSK\" &&\n\t\t\t\t\t\t\t\t\t\tthis.state.submitting === false\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\treturn this.state.userName.length > 1;\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\terrorText=\"Please enter your name.\"\n\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\tthis.state.showError && this.state.userName.length < 2\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\tlabel={\"Contact number\"}\n\t\t\t\t\t\t\t\tplaceholder={\"Enter phone number\"}\n\t\t\t\t\t\t\t\ttextValue={this.state.phone}\n\t\t\t\t\t\t\t\tonChangeText={(phone) => this.setState({ phone })}\n\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\tkeyboardType={\"phone-pad\"}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\tlabel={\"Address\"}\n\t\t\t\t\t\t\t\tplaceholder={\"Enter your address\"}\n\t\t\t\t\t\t\t\ttextValue={this.state.roomNumber}\n\t\t\t\t\t\t\t\tonChangeText={(roomNumber) => this.setState({ roomNumber })}\n\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\tthis.state.roomNumber && this.state.roomNumber.length > 1\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\terrorText=\"Please provide your address.\"\n\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\tthis.state.showError &&\n\t\t\t\t\t\t\t\t\t(!this.state.roomNumber || this.state.roomNumber.length < 2)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t<Components.FormCard\n\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\tmarginTop: 16,\n\t\t\t\t\t\t\t\tpaddingHorizontal: 24,\n\t\t\t\t\t\t\t\tpaddingVertical: 16,\n\t\t\t\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text style={styles.sectionTitle}>{values.textJobType}</Text>\n\t\t\t\t\t\t\t<TouchableOpacity onPress={this.onPressType.bind(this)}>\n\t\t\t\t\t\t\t\t<View style={{ flexDirection: \"row\" }}>\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t{ color: this.props.colourBrandingMain, marginRight: 16 },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{this.state.type}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tname=\"angle-right\"\n\t\t\t\t\t\t\t\t\t\ttype=\"font-awesome\"\n\t\t\t\t\t\t\t\t\t\ticonStyle={[\n\t\t\t\t\t\t\t\t\t\t\tstyles.sectionTitle,\n\t\t\t\t\t\t\t\t\t\t\t{ fontSize: 20, color: this.props.colourBrandingMain },\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t</TouchableOpacity>\n\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t{hasCustomFields ? (\n\t\t\t\t\t\t\tthis.renderCustomFields()\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Components.FormCard style={{ marginTop: 16 }}>\n\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\tlabel={\"Title\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={\"Enter a title for your request\"}\n\t\t\t\t\t\t\t\t\t\ttextValue={this.state.title}\n\t\t\t\t\t\t\t\t\t\tonChangeText={(title) => this.setState({ title })}\n\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\t\treturn this.state.title.length > 1;\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\terrorText=\"Please provide a title.\"\n\t\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\t\tthis.state.showError && this.state.title.length < 2\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\tlabel={\"Description\"}\n\t\t\t\t\t\t\t\t\t\tplaceholder={\"Describe your request here in detail\"}\n\t\t\t\t\t\t\t\t\t\ttextValue={this.state.description}\n\t\t\t\t\t\t\t\t\t\tonChangeText={(description) =>\n\t\t\t\t\t\t\t\t\t\t\tthis.setState({ description })\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t\t\t<Components.FormCard\n\t\t\t\t\t\t\t\t\tstyle={{ marginTop: 16, paddingHorizontal: 24 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\t\t\tstyle={[\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\t\t\t\tpaddingVertical: 16,\n\t\t\t\t\t\t\t\t\t\t\t\tflexDirection: \"row\",\n\t\t\t\t\t\t\t\t\t\t\t\tjustifyContent: \"space-between\",\n\t\t\t\t\t\t\t\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\t\t\t\t\t\t\t\tposition: \"relative\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\tthis.state.isHome && {\n\t\t\t\t\t\t\t\t\t\t\t\tborderBottomWidth: 1,\n\t\t\t\t\t\t\t\t\t\t\t\tborderBottomColor: Colours.LINEGREY,\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Text style={styles.sectionTitle}>\n\t\t\t\t\t\t\t\t\t\t\t{Config.env.strings.MAINTENANCE_HOME}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t<Switch\n\t\t\t\t\t\t\t\t\t\t\tvalue={this.state.isHome}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={this.state.submitting}\n\t\t\t\t\t\t\t\t\t\t\tonValueChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({ isHome: value })\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ttrackColor={{\n\t\t\t\t\t\t\t\t\t\t\t\tfalse: \"#ddd\",\n\t\t\t\t\t\t\t\t\t\t\t\ttrue: this.props.colourBrandingMain,\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tthumbColor={Platform.OS === \"android\" ? \"#fff\" : null}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t\t\t\t{this.state.isHome && (\n\t\t\t\t\t\t\t\t\t\t<Components.FormCardSection\n\t\t\t\t\t\t\t\t\t\t\tlabel={\"Available times\"}\n\t\t\t\t\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\t\t\t\t\t\"Describe your available times here in detail.\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\ttextValue={this.state.times}\n\t\t\t\t\t\t\t\t\t\t\tonChangeText={(times) => this.setState({ times })}\n\t\t\t\t\t\t\t\t\t\t\teditable={this.state.submitting === false}\n\t\t\t\t\t\t\t\t\t\t\thasUnderline\n\t\t\t\t\t\t\t\t\t\t\tisValid={() => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn this.state.times.length > 1;\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\terrorText=\"Please provide available times.\"\n\t\t\t\t\t\t\t\t\t\t\tshowError={\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.showError &&\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.isHome &&\n\t\t\t\t\t\t\t\t\t\t\t\tthis.state.times.length < 2\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tminHeight={40}\n\t\t\t\t\t\t\t\t\t\t\tautoCorrect\n\t\t\t\t\t\t\t\t\t\t\tmultiline\n\t\t\t\t\t\t\t\t\t\t\tautoGrow\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</Components.FormCard>\n\t\t\t\t\t\t\t\t{this.renderImageList()}\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</View>\n\t\t\t\t</ScrollView>\n\t\t\t</View>\n\t\t);\n\t}\n\n\trenderRegisterConfirmation() {\n\t\treturn (\n\t\t\t<Components.ConfirmationPopup\n\t\t\t\tconfirmText={`${values.textEntityName} submitted`}\n\t\t\t\trepeatText={\"Submit another\"}\n\t\t\t\tvisible={this.state.confirmationToShow}\n\t\t\t\tonClose={this.onCloseConfirmationPopup.bind(this)}\n\t\t\t\tonPressAction={this.onConfirmationReset.bind(this)}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderVideoPlayerPopup() {\n\t\tconst { showFullscreenVideo, currentVideoUrl } = this.state;\n\t\tif (!currentVideoUrl) return;\n\n\t\treturn (\n\t\t\t<Components.VideoPopup\n\t\t\t\turi={currentVideoUrl}\n\t\t\t\tvisible={showFullscreenVideo}\n\t\t\t\tshowFullscreenButton={false}\n\t\t\t\tonClose={this.toggleFullscreenVideo}\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderNoType() {\n\t\tif (!this.state.noType) {\n\t\t\treturn null;\n\t\t}\n\t\treturn (\n\t\t\t<Components.WarningPopup\n\t\t\t\tconfirmText={\"No forms are available\"}\n\t\t\t\tinfoText={\"Check back later for forms.\"}\n\t\t\t\tvisible={this.state.noType}\n\t\t\t\tonClose={this.onPressBack.bind(this)}\n\t\t\t\tpadHorizontal\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { submitting, success, isDateTimePickerVisible, popUpType } =\n\t\t\tthis.state;\n\n\t\treturn (\n\t\t\t<KeyboardAvoidingView behavior={\"padding\"} style={styles.viewContainer}>\n\t\t\t\t{this.renderImageUploader()}\n\t\t\t\t<View style={styles.container}>\n\t\t\t\t\t<Components.Header\n\t\t\t\t\t\tleftIcon=\"angle-left\"\n\t\t\t\t\t\tonPressLeft={this.onPressBack.bind(this)}\n\t\t\t\t\t\ttext={\n\t\t\t\t\t\t\tthis.props.strings[`${values.featureKey}_textFeatureTitle`] ||\n\t\t\t\t\t\t\tvalues.textFeatureTitle\n\t\t\t\t\t\t}\n\t\t\t\t\t\trightText={submitting || success ? null : \"Done\"}\n\t\t\t\t\t\tonPressRight={this.submitRequest.bind(this)}\n\t\t\t\t\t\tabsoluteRight\n\t\t\t\t\t/>\n\t\t\t\t\t{this.renderForm()}\n\t\t\t\t</View>\n\t\t\t\t{this.renderRegisterConfirmation()}\n\t\t\t\t{this.renderVideoPlayerPopup()}\n\t\t\t\t{this.renderNoType()}\n\t\t\t\t<DateTimePicker\n\t\t\t\t\tisVisible={isDateTimePickerVisible}\n\t\t\t\t\tonConfirm={this.onDateSelected}\n\t\t\t\t\tonCancel={() => this.setState({ isDateTimePickerVisible: false })}\n\t\t\t\t\tmode={popUpType}\n\t\t\t\t\theaderTextIOS={`Pick a ${popUpType}`}\n\t\t\t\t\tdate={new Date()}\n\t\t\t\t/>\n\t\t\t</KeyboardAvoidingView>\n\t\t);\n\t}\n}\n\nconst styles = {\n\tviewContainer: {\n\t\tflex: 1,\n\t\tbackgroundColor: \"#fff\",\n\t},\n\tcontainer: {\n\t\tflex: 1,\n\t\tposition: \"relative\",\n\t\tbackgroundColor: \"#f0f0f5\",\n\t},\n\terrorText: {\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.COLOUR_TANGERINE,\n\t\tfontSize: 16,\n\t},\n\trequestSuccess: {\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARK,\n\t\tfontSize: 17,\n\t\ttextAlign: \"center\",\n\t},\n\tsectionTitle: {\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 17,\n\t\tcolor: Colours.TEXT_DARK,\n\t},\n\timageListContainer: {\n\t\tmarginTop: 8,\n\t\tpadding: 8,\n\t\tflexDirection: \"row\",\n\t\tbackgroundColor: Colours.BOXGREY,\n\t\tminHeight: 106,\n\t},\n\timageListContainerEmpty: {\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tflexDirection: \"column\",\n\t},\n\tdocumentListContainer: {\n\t\tmarginTop: 8,\n\t\tflexDirection: \"column\",\n\t\talignItems: \"flex-start\",\n\t},\n\timageContainer: {\n\t\twidth: PHOTO_SIZE,\n\t\theight: PHOTO_SIZE,\n\t\tborderStyle: \"dashed\",\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderWidth: 1,\n\t\tborderColor: Colours.LINEGREY,\n\t\tborderRadius: 4,\n\t\tmarginLeft: 8,\n\t},\n\timageContainerNotEmpty: {\n\t\tborderWidth: 1,\n\t\tborderColor: Colours.LINEGREY,\n\t\tbackgroundColor: \"#fff\",\n\t\tborderStyle: \"dashed\",\n\t},\n\timageBackground: {\n\t\tflex: 1,\n\t\theight: \"100%\",\n\t\twidth: \"100%\",\n\t\tborderRadius: 4,\n\t},\n\timageCircle: {\n\t\twidth: 90,\n\t\theight: 90,\n\t\tborderRadius: 45,\n\t\tbackgroundColor: Colours.PINKISH_GREY,\n\t\tjustifyContent: \"center\",\n\t},\n\taddImageIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 32,\n\t},\n\timagePlayContainer: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tleft: 0,\n\t\tright: 0,\n\t\tbottom: 0,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\timageControlIcon: {\n\t\tcolor: \"#fff\",\n\t\tfontSize: 20,\n\t\ttextShadowColor: \"rgba(0,0,0,0.3)\",\n\t\ttextShadowOffset: { width: 2, height: 2 },\n\t},\n\tremoveImage: {\n\t\tposition: \"absolute\",\n\t\ttop: 0,\n\t\tright: 0,\n\t\tpadding: 4,\n\t\twidth: 40,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t},\n\tstaticTitle: {\n\t\tfontSize: 20,\n\t\tfontFamily: \"sf-semibold\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t},\n\tstaticText: {\n\t\tfontSize: 17,\n\t\tfontFamily: \"sf-regular\",\n\t\tcolor: Colours.TEXT_DARKEST,\n\t\tlineHeight: 24,\n\t},\n\tmultiChoiceOption: {\n\t\tmarginTop: 16,\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tminHeight: 20,\n\t},\n\tmultiChoiceText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 14,\n\t\tcolor: Colours.TEXT_DARK,\n\t},\n\ttick: {\n\t\tmarginRight: 10,\n\t\tborderRadius: 4,\n\t},\n\tunticked: {\n\t\tmarginRight: 10,\n\t\twidth: 20,\n\t\theight: 20,\n\t\tborderColor: Colours.LINEGREY,\n\t\tborderWidth: 1,\n\t\tborderRadius: 4,\n\t},\n\tdateContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tdateFieldButton: {\n\t\tflex: 1,\n\t},\n\tdateFieldContainer: {\n\t\tflexDirection: \"row\",\n\t\tborderRadius: 2,\n\t\tbackgroundColor: \"#ebeff2\",\n\t\tpadding: 8,\n\t\tmarginTop: 8,\n\t},\n\tdateText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-regular\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\tdateIcon: {\n\t\tfontSize: 18,\n\t\tcolor: Colours.TEXT_BLUEGREY,\n\t},\n\tdateClearButton: {\n\t\tpaddingLeft: 12,\n\t},\n\tremoveIcon: {\n\t\tfontSize: 26,\n\t\tcolor: Colours.TEXT_BLUEGREY,\n\t},\n\tdocumentContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"space-between\",\n\t\tpaddingVertical: 4,\n\t},\n\tdocumentTypeContainer: {\n\t\twidth: 50,\n\t\theight: 60,\n\t\tjustifyContent: \"center\",\n\t\talignItems: \"center\",\n\t\tborderRadius: 5,\n\t\tmarginRight: 8,\n\t},\n\tdocumentTypeText: {\n\t\tcolor: \"#fff\",\n\t\tfontFamily: \"sf-semibold\",\n\t\ttextAlign: \"center\",\n\t},\n\tdocumentText: {\n\t\tflex: 1,\n\t\tfontFamily: \"sf-semibold\",\n\t\tfontSize: 16,\n\t\tcolor: \"#65686D\",\n\t},\n\tremoveDocumentButton: {\n\t\tpadding: 4,\n\t\twidth: 40,\n\t\theight: 40,\n\t\talignItems: \"center\",\n\t\tjustifyContent: \"center\",\n\t\tmarginLeft: 8,\n\t},\n\tremoveDocumentIcon: {\n\t\tfontSize: 24,\n\t},\n\t// PC-1255: User picker styles\n\tuserPickerContainer: {\n\t\tflexDirection: \"row\",\n\t\tjustifyContent: \"space-between\",\n\t\talignItems: \"center\",\n\t},\n\tprofileContainer: {\n\t\tflexDirection: \"row\",\n\t\talignItems: \"center\",\n\t},\n\tnameText: {\n\t\tfontFamily: \"sf-medium\",\n\t\tfontSize: 16,\n\t\tcolor: Colours.TEXT_DARK,\n\t\tmarginLeft: 8,\n\t},\n};\n\nconst mapStateToProps = (state) => {\n\tconst { user, connection } = state;\n\tconst { displayName, profilePic, uid, site, unit, phoneNumber, permissions } =\n\t\tuser;\n\treturn {\n\t\tconnected: connection.connected,\n\t\tuserType: user.type,\n\t\tdisplayName,\n\t\tprofilePic,\n\t\tuid,\n\t\tsite,\n\t\tunit,\n\t\tphoneNumber,\n\t\tpermissions,\n\t\tcolourBrandingMain: Colours.getMainBrandingColourFromState(state),\n\t\tstrings: state.strings?.config || {},\n\t\toptionOnlyForResidents: Helper.getSiteSettingFromState(\n\t\t\tstate,\n\t\t\tvalues.optionOnlyForResidents,\n\t\t),\n\t};\n};\n\nexport default connect(mapStateToProps, { jobAdded })(MaintenanceRequest);\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plusscommunities/pluss-maintenance-app",
3
- "version": "8.0.11",
3
+ "version": "8.0.12",
4
4
  "description": "Extension package to enable maintenance on Pluss Communities Platform",
5
5
  "main": "dist/module/index.js",
6
6
  "module": "dist/module/index.js",
@@ -320,6 +320,14 @@ class RequestDetail extends Component {
320
320
  });
321
321
  };
322
322
 
323
+ openGallery(galleryImages, index) {
324
+ this.setState({
325
+ galleryOpen: true,
326
+ galleryImages,
327
+ });
328
+ this.imagePopup.current.scrollTo(index);
329
+ }
330
+
323
331
  hasPermission = () => {
324
332
  const { job } = this.state;
325
333
  const { permissions } = this.props.user;
@@ -852,7 +860,7 @@ class RequestDetail extends Component {
852
860
  <>
853
861
  {this.renderImage(job.images, job.image)}
854
862
  {!_.isEmpty(job.description) && (
855
- <Text numberOfLines={10} style={styles.jobDescriptionText}>
863
+ <Text style={styles.jobDescriptionText}>
856
864
  {job.description}
857
865
  </Text>
858
866
  )}
@@ -105,7 +105,11 @@ class MaintenanceRequest extends Component {
105
105
  loadSiteUsers = async () => {
106
106
  try {
107
107
  const response = await userActions.getSiteUsers(this.props.site);
108
- // PC-1255: Load all users (not just residents) to match web admin behavior
108
+
109
+ let items = response.data.Items || [];
110
+ if (this.props.optionOnlyForResidents) {
111
+ items = _.filter(items, (u) => u.category === "resident");
112
+ }
109
113
  const users = _.sortBy(response.data.Items || [], (u) =>
110
114
  (u.displayName || "").toLowerCase(),
111
115
  );
@@ -1805,6 +1809,10 @@ const mapStateToProps = (state) => {
1805
1809
  permissions,
1806
1810
  colourBrandingMain: Colours.getMainBrandingColourFromState(state),
1807
1811
  strings: state.strings?.config || {},
1812
+ optionOnlyForResidents: Helper.getSiteSettingFromState(
1813
+ state,
1814
+ values.optionOnlyForResidents,
1815
+ ),
1808
1816
  };
1809
1817
  };
1810
1818