@@ -11,7 +11,10 @@ import ProjectListTimeSortColHeader from './ProjectListTimeSortColHeader'
1111import ProjectListFilterColHeader from './ProjectListFilterColHeader'
1212import GridView from '../../../../components/Grid/GridView'
1313import UserTooltip from '../../../../components/User/UserTooltip'
14- import { PROJECTS_LIST_PER_PAGE , SORT_OPTIONS , PROJECT_STATUS_COMPLETED , DATE_TO_USER_FIELD_MAP } from '../../../../config/constants'
14+ import {
15+ PROJECTS_LIST_PER_PAGE , SORT_OPTIONS , PROJECT_STATUS_COMPLETED , DATE_TO_USER_FIELD_MAP , PHASE_STATUS_REVIEWED ,
16+ PHASE_STATUS_ACTIVE
17+ } from '../../../../config/constants'
1518import { getProjectTemplateByKey } from '../../../../helpers/templates'
1619import TextTruncate from 'react-text-truncate'
1720import ProjectStatus from '../../../../components/ProjectStatus/ProjectStatus'
@@ -196,6 +199,10 @@ const ProjectsGridView = props => {
196199 classes : 'item-status' ,
197200 renderText : item => {
198201 const canEdit = item . status !== PROJECT_STATUS_COMPLETED
202+ const hasReviewedOrActivePhases = ! ! _ . find ( item . phases , ( phase ) => _ . includes ( [ PHASE_STATUS_REVIEWED , PHASE_STATUS_ACTIVE ] , phase . status ) )
203+ const isProjectActive = item . status === PROJECT_STATUS_ACTIVE
204+ const isV3Project = item . version === 'v3'
205+ const projectCanBeActive = ( isV3Project && ! isProjectActive && hasReviewedOrActivePhases ) || isProjectActive
199206 return (
200207 < div className = "spacing" >
201208 < EnhancedProjectStatus
@@ -206,6 +213,7 @@ const ProjectsGridView = props => {
206213 unifiedHeader = { false }
207214 onChangeStatus = { onChangeStatus }
208215 projectId = { item . id }
216+ projectCanBeActive = { projectCanBeActive }
209217 />
210218 </ div >
211219 )
0 commit comments