diff --git a/src/forge/Main/IndexItem.js b/src/forge/Main/IndexItem.js index fa783767..884e0c16 100644 --- a/src/forge/Main/IndexItem.js +++ b/src/forge/Main/IndexItem.js @@ -24,16 +24,21 @@ class IndexItem extends Component { }) } - projectHref=(link , user_apply_signatures,project_id,is_secret)=>{ - let signa = user_apply_signatures && user_apply_signatures[0]; - if(is_secret && (signa && signa.status !== "passed")){ - this.setState({ - visible:true, - user_apply_signatures:user_apply_signatures.length>0 ? user_apply_signatures[0] : undefined, - project_id - }) + projectHref=(link , user_apply_signatures,project_id,is_secret , id)=>{ + const { user , showLoginDialog } = this.props; + if(user && user.login){ + let signa = user_apply_signatures && user_apply_signatures[0]; + if((is_secret && (!signa || (signa && signa.status !== "passed"))) && user.login !== id ){ + this.setState({ + visible:true, + user_apply_signatures:user_apply_signatures.length>0 ? user_apply_signatures[0] : undefined, + project_id + }) + }else{ + this.props.history.push(link); + } }else{ - this.props.history.push(link); + showLoginDialog && showLoginDialog(); } } hideModal=()=>{ @@ -67,7 +72,7 @@ class IndexItem extends Component { }