|
|
@ -239,7 +239,7 @@ class Challenges extends Component {
|
|
|
|
|
|
|
|
|
|
|
|
<p className="clearfix mb30">
|
|
|
|
<p className="clearfix mb30">
|
|
|
|
<span className="font-16 fl">简介</span>
|
|
|
|
<span className="font-16 fl">简介</span>
|
|
|
|
<a style={{ display: this.props.identity < 4 && this.props.status < 3 ? "block" : 'none' }}
|
|
|
|
<a style={{ display: this.props.identity < 4 && ChallengesDataList&&ChallengesDataList.shixun_status < 3 ? "block" : 'none' }}
|
|
|
|
href={"/shixuns/" + id + "/settings?edit=1"} className="ring-green fr"
|
|
|
|
href={"/shixuns/" + id + "/settings?edit=1"} className="ring-green fr"
|
|
|
|
data-tip-down="编辑">
|
|
|
|
data-tip-down="编辑">
|
|
|
|
<img src={getImageUrl("images/educoder/icon/edit.svg")} className="fl mt3 ml2" />
|
|
|
|
<img src={getImageUrl("images/educoder/icon/edit.svg")} className="fl mt3 ml2" />
|
|
|
@ -249,7 +249,7 @@ class Challenges extends Component {
|
|
|
|
<div className="justify break_full_word new_li markdown-body"
|
|
|
|
<div className="justify break_full_word new_li markdown-body"
|
|
|
|
id="challenge_editorMd_description">
|
|
|
|
id="challenge_editorMd_description">
|
|
|
|
<p id="ReactMarkdown" style={{overflow:'hidden'}}>
|
|
|
|
<p id="ReactMarkdown" style={{overflow:'hidden'}}>
|
|
|
|
{ChallengesDataList === undefined ? "" :ChallengesDataList.description===null?"":
|
|
|
|
{ChallengesDataList === undefined ? "" :ChallengesDataList&&ChallengesDataList.description===null?"":
|
|
|
|
<div dangerouslySetInnerHTML={{__html: markdownToHTML(ChallengesDataList.description).replace(/▁/g,"▁▁▁")}}></div>
|
|
|
|
<div dangerouslySetInnerHTML={{__html: markdownToHTML(ChallengesDataList.description).replace(/▁/g,"▁▁▁")}}></div>
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</p>
|
|
|
|
</p>
|
|
|
@ -262,7 +262,7 @@ class Challenges extends Component {
|
|
|
|
|
|
|
|
|
|
|
|
<p className="clearfix mb10">
|
|
|
|
<p className="clearfix mb10">
|
|
|
|
<span className="font-16 fl">全部任务</span>
|
|
|
|
<span className="font-16 fl">全部任务</span>
|
|
|
|
{this.props.identity < 4 && this.props.status === 0 ?
|
|
|
|
{this.props.identity < 4 && ChallengesDataList&&ChallengesDataList.shixun_status=== 0 ?
|
|
|
|
<Link to={"/shixuns/" + id + "/challenges/new"}
|
|
|
|
<Link to={"/shixuns/" + id + "/challenges/new"}
|
|
|
|
className="white-btn edu-greenline-btn fr"
|
|
|
|
className="white-btn edu-greenline-btn fr"
|
|
|
|
// data-tip-down="新增代码编辑类型任务"
|
|
|
|
// data-tip-down="新增代码编辑类型任务"
|
|
|
@ -275,7 +275,7 @@ class Challenges extends Component {
|
|
|
|
|
|
|
|
|
|
|
|
</Link> : ""
|
|
|
|
</Link> : ""
|
|
|
|
}
|
|
|
|
}
|
|
|
|
{this.props.identity < 4 && this.props.status === 0 ?
|
|
|
|
{this.props.identity < 4 && ChallengesDataList&&ChallengesDataList.shixun_status=== 0 ?
|
|
|
|
<Link to={"/shixuns/" + id + "/challenges/newquestion"}
|
|
|
|
<Link to={"/shixuns/" + id + "/challenges/newquestion"}
|
|
|
|
className="white-btn edu-greenline-btn fr mr20"
|
|
|
|
className="white-btn edu-greenline-btn fr mr20"
|
|
|
|
// data-tip-down="新增选择题类型任务"
|
|
|
|
// data-tip-down="新增选择题类型任务"
|
|
|
@ -359,7 +359,7 @@ class Challenges extends Component {
|
|
|
|
{item.delete_url != undefined &&
|
|
|
|
{item.delete_url != undefined &&
|
|
|
|
<Tooltip placement="bottom" title={"删除"}>
|
|
|
|
<Tooltip placement="bottom" title={"删除"}>
|
|
|
|
<a onClick={() => this.delOperations(item.challenge_id)}
|
|
|
|
<a onClick={() => this.delOperations(item.challenge_id)}
|
|
|
|
style={{ display:this.props.user.admin===true?"block":this.props.identity < 4 && this.props.status === 0 ? "block" : 'none' }}
|
|
|
|
style={{ display:this.props.user.admin===true?"block":this.props.identity < 4 && ChallengesDataList.shixun_status === 0 ? "block" : 'none' }}
|
|
|
|
className="fl ring-op-green mr25">
|
|
|
|
className="fl ring-op-green mr25">
|
|
|
|
<img src={getImageUrl("images/educoder/icon/close.svg")}
|
|
|
|
<img src={getImageUrl("images/educoder/icon/close.svg")}
|
|
|
|
className="fl mt5 ml5" />
|
|
|
|
className="fl mt5 ml5" />
|
|
|
@ -371,7 +371,7 @@ class Challenges extends Component {
|
|
|
|
{item.up_url != undefined &&
|
|
|
|
{item.up_url != undefined &&
|
|
|
|
<Tooltip placement="bottom" title={"向上移动"}>
|
|
|
|
<Tooltip placement="bottom" title={"向上移动"}>
|
|
|
|
<a onClick={operationstrue===true?"":() => this.operations(item.challenge_id, "up")}
|
|
|
|
<a onClick={operationstrue===true?"":() => this.operations(item.challenge_id, "up")}
|
|
|
|
style={{ display:this.props.user.admin===true?"block":this.props.identity < 4 && this.props.status === 0 ? "block" : 'none' }}
|
|
|
|
style={{ display:this.props.user.admin===true?"block":this.props.identity < 4 && ChallengesDataList.shixun_status === 0 ? "block" : 'none' }}
|
|
|
|
className="fl ring-op-green mr25">
|
|
|
|
className="fl ring-op-green mr25">
|
|
|
|
<img src={getImageUrl("images/educoder/icon/moveup.svg")}
|
|
|
|
<img src={getImageUrl("images/educoder/icon/moveup.svg")}
|
|
|
|
className="fl mt2 ml4" />
|
|
|
|
className="fl mt2 ml4" />
|
|
|
@ -381,7 +381,7 @@ class Challenges extends Component {
|
|
|
|
{item.down_url != undefined &&
|
|
|
|
{item.down_url != undefined &&
|
|
|
|
<Tooltip placement="bottom" title={"向下移动"}>
|
|
|
|
<Tooltip placement="bottom" title={"向下移动"}>
|
|
|
|
<a onClick={operationstrue===true?"":() => this.operations(item.challenge_id, "down")}
|
|
|
|
<a onClick={operationstrue===true?"":() => this.operations(item.challenge_id, "down")}
|
|
|
|
style={{ display: this.props.user.admin===true?"block":this.props.identity < 4 && this.props.status === 0 ? "block" : 'none' }}
|
|
|
|
style={{ display: this.props.user.admin===true?"block":this.props.identity < 4 && ChallengesDataList.shixun_status=== 0 ? "block" : 'none' }}
|
|
|
|
className="fl ring-op-green mr25">
|
|
|
|
className="fl ring-op-green mr25">
|
|
|
|
<img src={getImageUrl("images/educoder/icon/movedown.svg")} className="fl mt2 ml4" />
|
|
|
|
<img src={getImageUrl("images/educoder/icon/movedown.svg")} className="fl mt2 ml4" />
|
|
|
|
</a>
|
|
|
|
</a>
|
|
|
@ -393,7 +393,7 @@ class Challenges extends Component {
|
|
|
|
item.st === 1 ?
|
|
|
|
item.st === 1 ?
|
|
|
|
<Tooltip placement="bottom" title={"编辑"}>
|
|
|
|
<Tooltip placement="bottom" title={"编辑"}>
|
|
|
|
<a
|
|
|
|
<a
|
|
|
|
style={{ display:this.props.user.admin===true?"block":this.props.identity < 4 && this.props.status < 3 ? "block" : 'none' }}
|
|
|
|
style={{ display:this.props.user.admin===true?"block":this.props.identity < 4 && ChallengesDataList.shixun_status< 3 ? "block" : 'none' }}
|
|
|
|
href={"/shixuns/" + ChallengesDataList.shixun_identifier + "/challenges/" + item.challenge_id + "/editquestion"}
|
|
|
|
href={"/shixuns/" + ChallengesDataList.shixun_identifier + "/challenges/" + item.challenge_id + "/editquestion"}
|
|
|
|
className="fl ring-green">
|
|
|
|
className="fl ring-green">
|
|
|
|
<img src={getImageUrl("images/educoder/icon/edit.svg")}
|
|
|
|
<img src={getImageUrl("images/educoder/icon/edit.svg")}
|
|
|
@ -403,7 +403,7 @@ class Challenges extends Component {
|
|
|
|
:
|
|
|
|
:
|
|
|
|
<Tooltip placement="bottom" title={"编辑"}>
|
|
|
|
<Tooltip placement="bottom" title={"编辑"}>
|
|
|
|
<a
|
|
|
|
<a
|
|
|
|
style={{ display:this.props.user.admin===true?"block":this.props.identity < 4 && this.props.status < 3 ? "block" : 'none' }}
|
|
|
|
style={{ display:this.props.user.admin===true?"block":this.props.identity < 4 && ChallengesDataList.shixun_status < 3 ? "block" : 'none' }}
|
|
|
|
href={"/shixuns/" + ChallengesDataList.shixun_identifier + "/challenges/" + item.challenge_id + "/editcheckpoint"}
|
|
|
|
href={"/shixuns/" + ChallengesDataList.shixun_identifier + "/challenges/" + item.challenge_id + "/editcheckpoint"}
|
|
|
|
className="fl ring-green">
|
|
|
|
className="fl ring-green">
|
|
|
|
<img src={getImageUrl("images/educoder/icon/edit.svg")}
|
|
|
|
<img src={getImageUrl("images/educoder/icon/edit.svg")}
|
|
|
|