杨树林 6 years ago
commit 48c857c13c

@ -31,7 +31,7 @@ function save_avatar(){
const previewId = this.props.previewId const previewId = this.props.previewId
var img_lg = document.getElementById(previewId || 'img-preview'); var img_lg = document.getElementById(previewId || 'img-preview');
// 截图小的显示框内的内容 // 截图小的显示框内的内容
html2canvas(img_lg).then(function(canvas) { window.html2canvas(img_lg).then(function(canvas) {
// for test // for test
// document.getElementById('canvasWrap').appendChild(canvas); // document.getElementById('canvasWrap').appendChild(canvas);

@ -369,13 +369,13 @@ a.white-btn.use_scope-btn:hover{
} }
#memoMD .CodeMirror { #memoMD .CodeMirror {
width: 576px !important; /*width: 576px !important;*/
margin-top: 31px !important; margin-top: 31px !important;
height: 364px !important; height: 364px !important;
} }
#memoMD .editormd-preview { #memoMD .editormd-preview {
width: 567px !important; width: 578px !important;
top: 40px !important; top: 40px !important;
height: 364px !important; height: 364px !important;
} }

@ -468,7 +468,22 @@ class studentsList extends Component{
const { course_group_name, invite_code } = this.state; const { course_group_name, invite_code } = this.state;
const courseId = this.props.match.params.coursesId const courseId = this.props.match.params.coursesId
let exportUrl = "/api/courses/${courseId}/export_member_scores_excel.xlsx?"
const params = {}
if (course_group_id) {
params.group_id = course_group_id
}
if (searchValue) {
searchValue = searchValue.trim()
if (searchValue) {
params.search = searchValue
}
}
let paramsString = ''
for (let key in params) {
paramsString += `${key}=${params[key]}&`
}
exportUrl += paramsString;
return( return(
<React.Fragment > <React.Fragment >
<Titlesearchsection <Titlesearchsection
@ -506,7 +521,7 @@ class studentsList extends Component{
{ isAdmin && isParent && <WordsBtn style="blue" className="mr30" onClick={()=>this.addDir()}>添加分班</WordsBtn> } { isAdmin && isParent && <WordsBtn style="blue" className="mr30" onClick={()=>this.addDir()}>添加分班</WordsBtn> }
{ isAdmin && !isParent && course_group_id != 0 && <WordsBtn style="blue" className="mr30" onClick={()=>this.deleteDir()}>删除分班</WordsBtn> } { isAdmin && !isParent && course_group_id != 0 && <WordsBtn style="blue" className="mr30" onClick={()=>this.deleteDir()}>删除分班</WordsBtn> }
{ isAdmin && !isParent && course_group_id != 0 && <WordsBtn style="blue" className="mr30" onClick={()=>this.renameDir()}>分班重命名</WordsBtn> } { isAdmin && !isParent && course_group_id != 0 && <WordsBtn style="blue" className="mr30" onClick={()=>this.renameDir()}>分班重命名</WordsBtn> }
{ isAdmin && <WordsBtn style="blue" className="" href={`/api/courses/${courseId}/export_member_scores_excel.xlsx`}>导出成绩</WordsBtn> } { isAdmin && <WordsBtn style="blue" className="" href={`${exportUrl}`}>导出成绩</WordsBtn> }
{/* */} {/* */}
</React.Fragment> </React.Fragment>
} }

@ -106,7 +106,7 @@ class SiderBar extends Component {
<span className="inline"><i className="iconfont icon-erweima color-white font-22 fl"></i></span> <span className="inline"><i className="iconfont icon-erweima color-white font-22 fl"></i></span>
<p className="scan_ewm" style={{display: 'none', right:' 75px',opacity: '0'}}> <p className="scan_ewm" style={{display: 'none', right:' 75px',opacity: '0'}}>
<p className="pr padding10"> <p className="pr padding10">
<img src={getImageUrl("images/educoder/EWM.jpg")} width="158px" height="158px" /> <img src={getImageUrl("images/edu_user/EWM.jpg")} width="158px" height="158px" />
<p>微信扫一扫</p> <p>微信扫一扫</p>
<p>关注公众号</p> <p>关注公众号</p>
<span className="trangle_right"></span> <span className="trangle_right"></span>

@ -1553,7 +1553,7 @@ export default class TPMsettings extends Component {
<div className="flex1"> <div className="flex1">
<div className="fl " > <div className="fl" style={{border:'1px solid #ccc'}}>
{/*<textarea className={"shixunmemoMDdiv"} value={shixunmemoMDvalue} onInput={this.getshixunmemoMDvalue} name="content">*/} {/*<textarea className={"shixunmemoMDdiv"} value={shixunmemoMDvalue} onInput={this.getshixunmemoMDvalue} name="content">*/}
{/*</textarea>*/} {/*</textarea>*/}
<MonacoEditor <MonacoEditor
@ -1884,7 +1884,7 @@ export default class TPMsettings extends Component {
<p> <p>
{ {
// this.props.identity<4&&this.props.status==0? // this.props.identity<4&&this.props.status==0?
this.props.identity<4? this.props.identity<5?
<div className="clearfix mt30"> <div className="clearfix mt30">
<a className="defalutSubmitbtn fl mr20" <a className="defalutSubmitbtn fl mr20"
onClick={this.submit_edit_shixun}>保存</a> onClick={this.submit_edit_shixun}>保存</a>

@ -10,24 +10,22 @@
line-height: 30px; line-height: 30px;
} }
#shixundescription .CodeMirror{ #shixundescription .CodeMirror{
width: 570px !important;
margin-top: 31px !important; margin-top: 31px !important;
height: 364px !important; height: 364px !important;
} }
#shixundescription .editormd-preview{ #shixundescription .editormd-preview{
width: 567px !important; width:578px !important;
top: 40px !important; top: 40px !important;
height: 364px !important; height: 364px !important;
} }
#shixunmemoMD .CodeMirror{ #shixunmemoMD .CodeMirror{
width: 548px !important;
margin-top: 31px !important; margin-top: 31px !important;
height: 578px !important; height: 578px !important;
} }
#shixunmemoMD .editormd-preview{ #shixunmemoMD .editormd-preview{
width: 544px !important; width: 578px !important;
top: 40px !important; top: 40px !important;
height: 578px !important; height: 578px !important;
} }

@ -352,7 +352,7 @@ export default class TPManswer extends Component {
</div> </div>
<div className="clearfix mt20" style={{display:this.props.identity>3||this.props.identity===undefined||power===false?"none":"block"}}> <div className="clearfix mt20" style={{display:this.props.identity>4||this.props.identity===undefined||power===false?"none":"block"}}>
<a className="defalutSubmitbtn fl mr20" <a className="defalutSubmitbtn fl mr20"
onClick={this.challenge_answer_submit}>提交</a> onClick={this.challenge_answer_submit}>提交</a>
<a href={"/shixuns/" + shixunId + "/challenges"} className="defalutCancelbtn fl">取消</a> <a href={"/shixuns/" + shixunId + "/challenges"} className="defalutCancelbtn fl">取消</a>

@ -339,7 +339,7 @@ export default class TPManswer extends Component {
}) })
} }
<div className="clearfix mt20" style={{display:this.props.identity>3||this.props.identity===undefined||power===false?"none":"block"}}> <div className="clearfix mt20" style={{display:this.props.identity>4||this.props.identity===undefined||power===false?"none":"block"}}>
<a href={"javascript:void(0)"} className="defalutCancelbtn fl" onClick={this.addAnswer}>新增</a> <a href={"javascript:void(0)"} className="defalutCancelbtn fl" onClick={this.addAnswer}>新增</a>
</div> </div>
</div> </div>
@ -347,7 +347,7 @@ export default class TPManswer extends Component {
</div> </div>
<div className="clearfix mt20" style={{display:this.props.identity>3||this.props.identity===undefined||power===false?"none":"block"}}> <div className="clearfix mt20" style={{display:this.props.identity>4||this.props.identity===undefined||power===false?"none":"block"}}>
<a className="defalutSubmitbtn fl mr20" <a className="defalutSubmitbtn fl mr20"
onClick={this.challenge_answer_submit}>提交</a> onClick={this.challenge_answer_submit}>提交</a>
<a href={"/shixuns/" + shixunId + "/challenges"} className="defalutCancelbtn fl">取消</a> <a href={"/shixuns/" + shixunId + "/challenges"} className="defalutCancelbtn fl">取消</a>

@ -575,12 +575,12 @@ export default class TPMchallengesnew extends Component {
<a href={practice_url === undefined ? "" : practice_url} <a href={practice_url === undefined ? "" : practice_url}
className="fr color-blue mr15 mt4" className="fr color-blue mr15 mt4"
style={{display:this.props.identity>3||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}} style={{display:this.props.identity>4||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}}
data-tip-down="新增代码编辑类型的任务">+&nbsp;实践类型</a> data-tip-down="新增代码编辑类型的任务">+&nbsp;实践类型</a>
<a href={choice_url === undefined ? "" : choice_url} <a href={choice_url === undefined ? "" : choice_url}
className="fr color-blue mr15 mt4" className="fr color-blue mr15 mt4"
style={{display:this.props.identity>3||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}} style={{display:this.props.identity>4||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}}
data-tip-down="新增选择题类型的任务">+&nbsp;选择题类型</a> data-tip-down="新增选择题类型的任务">+&nbsp;选择题类型</a>
</div> </div>
@ -739,7 +739,7 @@ export default class TPMchallengesnew extends Component {
</div> </div>
<div className="clearfix mt30" <div className="clearfix mt30"
style={{display:this.props.identity>3||this.props.identity===undefined?"none":'block'}} style={{display:this.props.identity>4||this.props.identity===undefined?"none":'block'}}
> >
{checkpointId===undefined?<a className="defalutSubmitbtn fl mr20" onClick={CreatePracticesendtype===true?"":this.CreatePracticesend}>提交</a>: {checkpointId===undefined?<a className="defalutSubmitbtn fl mr20" onClick={CreatePracticesendtype===true?"":this.CreatePracticesend}>提交</a>:
<a className="defalutSubmitbtn fl mr20" onClick={editPracticesendtype===true?"":this.editPracticesend}>提交</a>} <a className="defalutSubmitbtn fl mr20" onClick={editPracticesendtype===true?"":this.editPracticesend}>提交</a>}

@ -777,11 +777,11 @@ export default class TPMevaluation extends Component {
<Link to={practice_url === undefined ? "" : practice_url} <Link to={practice_url === undefined ? "" : practice_url}
className="fr color-blue mr15 mt4" className="fr color-blue mr15 mt4"
style={{display:this.props.identity>3||this.props.identity===undefined||this.props.status===2||this.props.status===1? "none":'block'}} style={{display:this.props.identity>4||this.props.identity===undefined||this.props.status===2||this.props.status===1? "none":'block'}}
data-tip-down="新增代码编辑类型的任务">+&nbsp;实践类型</Link> data-tip-down="新增代码编辑类型的任务">+&nbsp;实践类型</Link>
<Link to={choice_url === undefined ? "" : choice_url} <Link to={choice_url === undefined ? "" : choice_url}
className="fr color-blue mr15 mt4" className="fr color-blue mr15 mt4"
style={{display:this.props.identity>3||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}} style={{display:this.props.identity>4||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}}
data-tip-down="新增选择题类型的任务">+&nbsp;选择题类型</Link> data-tip-down="新增选择题类型的任务">+&nbsp;选择题类型</Link>
</div> </div>
@ -951,7 +951,7 @@ export default class TPMevaluation extends Component {
</div> </div>
<div className="edu-back-white mb10 clearfix"> {pathoptionvalue===1?<div className="edu-back-white mb10 clearfix">
<div className="padding40-20"> <div className="padding40-20">
<p className="color-grey-6 font-16 mb20">待处理图片路径</p> <p className="color-grey-6 font-16 mb20">待处理图片路径</p>
<div className="df"> <div className="df">
@ -970,10 +970,10 @@ export default class TPMevaluation extends Component {
<div></div> <div></div>
</div> </div>
</div> </div>
</div> </div>:""}
<div className="edu-back-white mb10 clearfix"> {pathoptionvalue===1? <div className="edu-back-white mb10 clearfix">
<div className="padding40-20"> <div className="padding40-20">
<p className="color-grey-6 font-16 mb20">标准答案图片路径</p> <p className="color-grey-6 font-16 mb20">标准答案图片路径</p>
<div className="df"> <div className="df">
@ -992,10 +992,10 @@ export default class TPMevaluation extends Component {
<div></div> <div></div>
</div> </div>
</div> </div>
</div> </div>:""}
<div className="edu-back-white mb10 clearfix"> {pathoptionvalue===1||pathoptionvalue===-1?"":<div className="edu-back-white mb10 clearfix">
<div className="padding40-20"> <div className="padding40-20">
<p className="color-grey-6 font-16 mb20">学员答案文件路径</p> <p className="color-grey-6 font-16 mb20">学员答案文件路径</p>
<div className="df"> <div className="df">
@ -1013,7 +1013,7 @@ export default class TPMevaluation extends Component {
<div></div> <div></div>
</div> </div>
</div> </div>
</div> </div>}
<div className="edu-back-white mb10 clearfix"> <div className="edu-back-white mb10 clearfix">
@ -1119,7 +1119,7 @@ export default class TPMevaluation extends Component {
</div> </div>
<div className="clearfix mt30" style={{display:this.props.identity>3||this.props.identity===undefined||power===false?"none":"block"}}> <div className="clearfix mt30" style={{display:this.props.identity>4||this.props.identity===undefined||power===false?"none":"block"}}>
<a className="defalutSubmitbtn fl mr20" onClick={this.submitarbitrationevaluation}>提交</a> <a className="defalutSubmitbtn fl mr20" onClick={this.submitarbitrationevaluation}>提交</a>
<a href={"/shixuns/" + shixunId + "/challenges"} className="defalutCancelbtn fl">取消</a> <a href={"/shixuns/" + shixunId + "/challenges"} className="defalutCancelbtn fl">取消</a>
</div> </div>

@ -1251,10 +1251,10 @@ editanswersMD=(initValue, id)=> {
<a href={practice_url === undefined ? "" : practice_url} <a href={practice_url === undefined ? "" : practice_url}
className="fr color-blue mr15 mt4" className="fr color-blue mr15 mt4"
style={{display:this.props.identity>3||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}} style={{display:this.props.identity>4||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}}
data-tip-down="新增代码编辑类型的任务">+&nbsp;实践类型</a> data-tip-down="新增代码编辑类型的任务">+&nbsp;实践类型</a>
<a href={choice_url === undefined ? "" : choice_url} className="fr color-blue mr15 mt4" <a href={choice_url === undefined ? "" : choice_url} className="fr color-blue mr15 mt4"
style={{display:this.props.identity>3||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}} style={{display:this.props.identity>4||this.props.identity===undefined||this.props.status===2||this.props.status===1?"none":'block'}}
data-tip-down="新增选择题类型的任务">+&nbsp;选择题类型</a> data-tip-down="新增选择题类型的任务">+&nbsp;选择题类型</a>
</div> </div>
@ -1345,7 +1345,7 @@ editanswersMD=(initValue, id)=> {
</div> </div>
<div className="clearfix mt30" style={{display:this.props.identity>3||this.props.identity===undefined||power===false?"none":"block"}}> <div className="clearfix mt30" style={{display:this.props.identity>4||this.props.identity===undefined||power===false?"none":"block"}}>
<a className="defalutSubmitbtn fl mr20" onClick={sumittype===true?"":this.clickquestionsumit}>提交</a> <a className="defalutSubmitbtn fl mr20" onClick={sumittype===true?"":this.clickquestionsumit}>提交</a>
<a href={go_back_url} <a href={go_back_url}
className="defalutCancelbtn fl">取消</a> className="defalutCancelbtn fl">取消</a>
@ -1545,7 +1545,7 @@ editanswersMD=(initValue, id)=> {
</div> </div>
<div className="clearfix mt30" style={{display:this.props.identity>3||this.props.identity===undefined||power===false?"none":"block"}}> <div className="clearfix mt30" style={{display:this.props.identity>4||this.props.identity===undefined||power===false?"none":"block"}}>
<a className="defalutSubmitbtn fl mr20" <a className="defalutSubmitbtn fl mr20"
onClick={this.answer_subit}>提交</a> onClick={this.answer_subit}>提交</a>
<a href={go_back_url} <a href={go_back_url}
@ -1735,7 +1735,7 @@ editanswersMD=(initValue, id)=> {
</div> </div>
<div className="clearfix mt30" style={{display:this.props.identity>3||this.props.identity===undefined||power===false?"none":"block"}}> <div className="clearfix mt30" style={{display:this.props.identity>4||this.props.identity===undefined||power===false?"none":"block"}}>
<a className="defalutSubmitbtn fl mr20" <a className="defalutSubmitbtn fl mr20"
onClick={()=>this.answer_subit("edit",challenge_choose_id)}>提交</a> onClick={()=>this.answer_subit("edit",challenge_choose_id)}>提交</a>
<a href={go_back_url} <a href={go_back_url}

@ -1,263 +1,269 @@
.CodeMirror-scroll { .CodeMirror-scroll {
overflow: auto !important; overflow: auto !important;
margin-bottom: -30px; margin-bottom: -30px;
margin-right: -30px; margin-right: -30px;
padding-bottom: 30px; padding-bottom: 30px;
height: 100%; height: 100%;
outline: none; outline: none;
position: relative; position: relative;
} }
a.white-btn.orange-btn:hover { a.white-btn.orange-btn:hover {
border: 1px solid #F06200; border: 1px solid #F06200;
color: #FFF !important; color: #FFF !important;
} }
.flex1 a.white-btn.orange-btn:hover { .flex1 a.white-btn.orange-btn:hover {
border: 1px solid #F06200; border: 1px solid #F06200;
color: #FFF !important; color: #FFF !important;
} }
/*.challenge_nav li a{*/ /*.challenge_nav li a{*/
/*color:#000 !important;*/ /*color:#000 !important;*/
/*}*/ /*}*/
.questionli{ .questionli{
width: 95%; width: 95%;
margin-left: 37px; margin-left: 37px;
} }
#directory_file{ #directory_file{
height:200px; height:200px;
overflow-y:auto; overflow-y:auto;
background:#f5f5f5; background:#f5f5f5;
padding:10px; padding:10px;
} }
.directory_filepath{ .directory_filepath{
width:120px; width:120px;
text-align:left; text-align:left;
} }
a{ a{
text-decoration: none; text-decoration: none;
color: #05101a; color: #05101a;
} }
.repository_url_tippostion{ .repository_url_tippostion{
position: absolute; position: absolute;
left: 22%; left: 22%;
width: 500px; width: 500px;
top: 100%; top: 100%;
} }
.top-black-trangleft { .top-black-trangleft {
display: block; display: block;
border-width: 8px; border-width: 8px;
position: absolute; position: absolute;
top: -16px; top: -16px;
/* right: 4px; */ /* right: 4px; */
border-style: dashed solid dashed dashed; border-style: dashed solid dashed dashed;
border-color: transparent transparent rgba(5,16,26,0.6) transparent; border-color: transparent transparent rgba(5,16,26,0.6) transparent;
font-size: 0; font-size: 0;
line-height: 0; line-height: 0;
} }
#exercisememoMD .CodeMirror { #exercisememoMD .CodeMirror {
margin-top: 31px !important; margin-top: 31px !important;
height: 700px !important; height: 700px !important;
width: 579px !important; /*width: 579px !important;*/
} }
#exercisememoMD .editormd-preview { #exercisememoMD .editormd-preview {
top: 40px !important; top: 40px !important;
height: 700px !important; height: 700px !important;
} width: 578px !important;
#exercisememoMD{ }
height: 700px !important; #exercisememoMD{
} height: 700px !important;
#questioMD{ }
/*width: 95% !important;*/ #questioMD{
height: 586px !important; /*width: 95% !important;*/
margin-left: 0% !important; height: 586px !important;
} margin-left: 0% !important;
}
#questioMD .CodeMirror {
width: 550.5px !important; #questioMD .CodeMirror {
margin-top: 31px !important; /*width: 550.5px !important;*/
height: 550px !important; margin-top: 31px !important;
} height: 550px !important;
}
#questioMD .editormd-preview {
top: 40px !important; #questioMD .editormd-preview {
height: 550px !important; top: 40px !important;
} height: 550px !important;
width: 578px !important;
#newquestioMD .CodeMirror { }
width: 549px !important;
margin-top: 31px !important; #newquestioMD .CodeMirror {
height: 364px !important; /*width: 549px !important;*/
} margin-top: 31px !important;
height: 364px !important;
#newquestioMD .editormd-preview { }
top: 40px !important;
height: 364px !important; #newquestioMD .editormd-preview {
} top: 40px !important;
height: 364px !important;
#challenge_choose_answer .CodeMirror { width: 578px !important;
margin-top: 31px !important; }
height: 364px !important;
width: 578px !important; #challenge_choose_answer .CodeMirror {
} margin-top: 31px !important;
height: 364px !important;
/*width: 578px !important;*/
#challenge_choose_answer .editormd-preview { }
top: 40px !important;
height: 364px !important;
} #challenge_choose_answer .editormd-preview {
top: 40px !important;
#neweditanswer .CodeMirror { height: 364px !important;
margin-top: 31px !important; width: 578px !important;
height: 364px !important; }
width: 549.5px !important;
} #neweditanswer .CodeMirror {
margin-top: 31px !important;
#neweditanswer .editormd-preview { height: 364px !important;
top: 40px !important; /*width: 549.5px !important;*/
height: 364px !important; }
}
#neweditanswer .editormd-preview {
#repository_url_tip { top: 40px !important;
top: 30px !important; height: 364px !important;
left: 249px !important; width: 578px !important;
width: 292px !important; }
}
#repository_url_tip {
#editanswers .CodeMirror{ top: 30px !important;
width: 548px !important; left: 249px !important;
height: 358px !important; width: 292px !important;
margin-top: 30px !important; }
}
#editanswers .editormd-preview{ #editanswers .CodeMirror{
width: 569px !important; /*width: 548px !important;*/
height: 358px !important; height: 358px !important;
} margin-top: 30px !important;
#newquestioMDs .CodeMirror{ }
width: 510px !important; #editanswers .editormd-preview{
height: 358px !important; width: 578px !important;
margin-top: 30px !important; height: 358px !important;
}
}
#newquestioMDs .editormd-preview{ #newquestioMDs .CodeMirror{
width: 569px !important; /*width: 510px !important;*/
height: 358px !important; height: 358px !important;
} margin-top: 30px !important;
}
.choose_names{
width: 80px; #newquestioMDs .editormd-preview{
margin-left: 20px; width: 578px !important;
} height: 358px !important;
}
#answerMD .CodeMirror{
width: 569px !important; .choose_names{
height: 600px !important; width: 80px;
margin-top: 30px !important; margin-left: 20px;
} }
#answerMD .editormd-preview{ #answerMD .CodeMirror{
width: 569px !important; /*width: 569px !important;*/
height: 600px !important; height: 600px !important;
} margin-top: 30px !important;
}
#answerMD {
height: 600px !important; #answerMD .editormd-preview{
} width: 578px !important;
height: 600px !important;
.textareavalue{ }
width: 100%;
padding: 5px; #answerMD {
height: 600px !important;
box-sizing: border-box; }
}
.greyInput{ .textareavalue{
width: 107%; width: 100%;
} padding: 5px;
.greyInpus{
width: 100%; box-sizing: border-box;
} }
.greyInput{
.pdr20{ width: 107%;
padding-right:20px; }
} .greyInpus{
width: 100%;
.winput-240-40s { }
background-color: #F5F5F5;
} .pdr20{
padding-right:20px;
}
.winput-240-40s:focus{
background-color: #fff; .winput-240-40s {
} background-color: #F5F5F5;
.input-100-45{ }
background-color: #F5F5F5;
}
.input-100-45:focus{ .winput-240-40s:focus{
background-color: #fff; background-color: #fff;
} }
.input-100-45{
.wind100{ background-color: #F5F5F5;
width:100% !important; }
} .input-100-45:focus{
background-color: #fff;
.color-bule-tip { }
color: #5485f7 !important;
} .wind100{
.martopf4{ width:100% !important;
margin-top:-4px; }
}
.color-bule-tip {
.headdfgf{ color: #5485f7 !important;
display: block; }
width: 100px; .martopf4{
height: 30px; margin-top:-4px;
line-height: 30px; }
float: left;
} .headdfgf{
display: block;
.color979797{ width: 100px;
color: #979797 !important; height: 30px;
} line-height: 30px;
float: left;
.border-left{ }
width: 0;
height: 0; .color979797{
border-bottom: 6px solid transparent; color: #979797 !important;
border-right: 6px solid #cccbcb; }
border-top: 6px solid transparent;
position: absolute; .border-left{
left: 30px; width: 0;
top: 12px; height: 0;
} border-bottom: 6px solid transparent;
.border-left span{ border-right: 6px solid #cccbcb;
display: block; border-top: 6px solid transparent;
width: 0; position: absolute;
height: 0; left: 30px;
border-bottom: 6px solid transparent; top: 12px;
border-right: 6px solid #fff; }
border-top: 6px solid transparent; .border-left span{
position: absolute; display: block;
left: 1px; width: 0;
top: -6px; height: 0;
z-index: 10; border-bottom: 6px solid transparent;
} border-right: 6px solid #fff;
.fillTip{ border-top: 6px solid transparent;
position: absolute; position: absolute;
left: 36px; left: 1px;
top: 2px; top: -6px;
width: 125px; z-index: 10;
font-size: 12px; }
display: block; .fillTip{
padding: 5px; position: absolute;
border: 1px solid #eaeaea; left: 36px;
border-radius: 5px; top: 2px;
box-sizing: border-box; width: 125px;
height: 32px; font-size: 12px;
line-height: 20px; display: block;
font-family: "微软雅黑","宋体"; padding: 5px;
border: 1px solid #eaeaea;
border-radius: 5px;
box-sizing: border-box;
height: 32px;
line-height: 20px;
font-family: "微软雅黑","宋体";
} }

@ -29,7 +29,7 @@ class TPMNav extends Component {
} }
<Link to={`/shixuns/${shixunId}/repository`} <Link to={`/shixuns/${shixunId}/repository`}
style={{display: this.props.identity >3||this.props.identity===undefined ? "none" : 'block'}} style={{display: this.props.identity >4||this.props.identity===undefined ? "none" : 'block'}}
className={`${match.url.indexOf('repository') != -1 ? 'active' : ''} fl mr40`}>版本库</Link> className={`${match.url.indexOf('repository') != -1 ? 'active' : ''} fl mr40`}>版本库</Link>
<Link to={`/shixuns/${shixunId}/collaborators`} <Link to={`/shixuns/${shixunId}/collaborators`}
@ -43,7 +43,7 @@ class TPMNav extends Component {
{/* target="_blank"*/} {/* target="_blank"*/}
<a <a
href={`/shixuns/${shixunId}/settings`} className="fr" href={`/shixuns/${shixunId}/settings`} className="fr"
style={{display: this.props.identity >3||this.props.identity===undefined ? "none" : 'block'}} style={{display: this.props.identity >4||this.props.identity===undefined ? "none" : 'block'}}
>配置</a> >配置</a>
</div> </div>
); );

@ -1,379 +1,379 @@
/* BASICS */ /* BASICS */
.CodeMirror { .CodeMirror {
/* Set height, width, borders, and global font properties here */ /* Set height, width, borders, and global font properties here */
font-family: monospace; font-family: monospace;
height: 300px; height: 300px;
color: black; color: black;
direction: ltr; direction: ltr;
} }
/* PADDING */ /* PADDING */
.CodeMirror-lines { .CodeMirror-lines {
padding: 4px 0; /* Vertical padding around content */ padding: 4px 0; /* Vertical padding around content */
} }
.CodeMirror pre { .CodeMirror pre {
padding: 0 4px; /* Horizontal padding of content */ padding: 0 4px; /* Horizontal padding of content */
} }
.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
background-color: white; /* The little square between H and V scrollbars */ background-color: white; /* The little square between H and V scrollbars */
} }
/* GUTTER */ /* GUTTER */
.CodeMirror-gutters { .CodeMirror-gutters {
border-right: 1px solid #ddd; border-right: 1px solid #ddd;
background-color: #f7f7f7; background-color: #f7f7f7;
white-space: nowrap; white-space: nowrap;
} }
.CodeMirror-linenumbers {} .CodeMirror-linenumbers {}
.CodeMirror-linenumber { .CodeMirror-linenumber {
padding: 0 3px 0 5px; padding: 0 3px 0 5px;
min-width: 20px; min-width: 20px;
text-align: right; text-align: right;
color: #999; color: #999;
white-space: nowrap; white-space: nowrap;
} }
.CodeMirror-guttermarker { color: black; } .CodeMirror-guttermarker { color: black; }
.CodeMirror-guttermarker-subtle { color: #999; } .CodeMirror-guttermarker-subtle { color: #999; }
/* CURSOR */ /* CURSOR */
.CodeMirror-cursor { .CodeMirror-cursor {
border-left: 1px solid black; border-left: 1px solid black;
border-right: none; border-right: none;
width: 0; width: 0;
} }
/* Shown when moving in bi-directional text */ /* Shown when moving in bi-directional text */
.CodeMirror div.CodeMirror-secondarycursor { .CodeMirror div.CodeMirror-secondarycursor {
border-left: 1px solid silver; border-left: 1px solid silver;
} }
.cm-fat-cursor .CodeMirror-cursor { .cm-fat-cursor .CodeMirror-cursor {
width: auto; width: auto;
border: 0 !important; border: 0 !important;
background: #7e7; background: #7e7;
} }
.cm-fat-cursor div.CodeMirror-cursors { .cm-fat-cursor div.CodeMirror-cursors {
z-index: 1; z-index: 1;
} }
.cm-fat-cursor-mark { .cm-fat-cursor-mark {
background-color: rgba(20, 255, 20, 0.5); background-color: rgba(20, 255, 20, 0.5);
-webkit-animation: blink 1.06s steps(1) infinite; -webkit-animation: blink 1.06s steps(1) infinite;
animation: blink 1.06s steps(1) infinite; animation: blink 1.06s steps(1) infinite;
} }
.cm-animate-fat-cursor { .cm-animate-fat-cursor {
width: auto; width: auto;
border: 0; border: 0;
-webkit-animation: blink 1.06s steps(1) infinite; -webkit-animation: blink 1.06s steps(1) infinite;
animation: blink 1.06s steps(1) infinite; animation: blink 1.06s steps(1) infinite;
background-color: #7e7; background-color: #7e7;
} }
@-webkit-keyframes blink { @-webkit-keyframes blink {
0% {} 0% {}
50% { background-color: transparent; } 50% { background-color: transparent; }
100% {} 100% {}
} }
@keyframes blink { @keyframes blink {
0% {} 0% {}
50% { background-color: transparent; } 50% { background-color: transparent; }
100% {} 100% {}
} }
/* Can style cursor different in overwrite (non-insert) mode */ /* Can style cursor different in overwrite (non-insert) mode */
.CodeMirror-overwrite .CodeMirror-cursor {} .CodeMirror-overwrite .CodeMirror-cursor {}
.cm-tab { display: inline-block; text-decoration: inherit; } .cm-tab { display: inline-block; text-decoration: inherit; }
.CodeMirror-rulers { .CodeMirror-rulers {
position: absolute; position: absolute;
left: 0; right: 0; top: -50px; bottom: -20px; left: 0; right: 0; top: -50px; bottom: -20px;
overflow: hidden; overflow: hidden;
} }
.CodeMirror-ruler { .CodeMirror-ruler {
border-left: 1px solid #ccc; border-left: 1px solid #ccc;
top: 0; bottom: 0; top: 0; bottom: 0;
position: absolute; position: absolute;
} }
/* DEFAULT THEME */ /* DEFAULT THEME */
.cm-s-default .cm-header {color: blue;} .cm-s-default .cm-header {color: blue;}
.cm-s-default .cm-quote {color: #090;} .cm-s-default .cm-quote {color: #090;}
.cm-negative {color: #d44;} .cm-negative {color: #d44;}
.cm-positive {color: #292;} .cm-positive {color: #292;}
.cm-header, .cm-strong {font-weight: bold;} .cm-header, .cm-strong {font-weight: bold;}
.cm-em {font-style: italic;} .cm-em {font-style: italic;}
.cm-link {text-decoration: underline;} .cm-link {text-decoration: underline;}
.cm-strikethrough {text-decoration: line-through;} .cm-strikethrough {text-decoration: line-through;}
.cm-s-default .cm-keyword {color: #708;} .cm-s-default .cm-keyword {color: #708;}
.cm-s-default .cm-atom {color: #219;} .cm-s-default .cm-atom {color: #219;}
.cm-s-default .cm-number {color: #164;} .cm-s-default .cm-number {color: #164;}
.cm-s-default .cm-def {color: #00f;} .cm-s-default .cm-def {color: #00f;}
.cm-s-default .cm-variable, .cm-s-default .cm-variable,
.cm-s-default .cm-punctuation, .cm-s-default .cm-punctuation,
.cm-s-default .cm-property, .cm-s-default .cm-property,
.cm-s-default .cm-operator {} .cm-s-default .cm-operator {}
.cm-s-default .cm-variable-2 {color: #05a;} .cm-s-default .cm-variable-2 {color: #05a;}
.cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;} .cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;}
.cm-s-default .cm-comment {color: #a50;} .cm-s-default .cm-comment {color: #a50;}
.cm-s-default .cm-string {color: #a11;} .cm-s-default .cm-string {color: #a11;}
.cm-s-default .cm-string-2 {color: #f50;} .cm-s-default .cm-string-2 {color: #f50;}
.cm-s-default .cm-meta {color: #555;} .cm-s-default .cm-meta {color: #555;}
.cm-s-default .cm-qualifier {color: #555;} .cm-s-default .cm-qualifier {color: #555;}
.cm-s-default .cm-builtin {color: #30a;} .cm-s-default .cm-builtin {color: #30a;}
.cm-s-default .cm-bracket {color: #997;} .cm-s-default .cm-bracket {color: #997;}
.cm-s-default .cm-tag {color: #170;} .cm-s-default .cm-tag {color: #170;}
.cm-s-default .cm-attribute {color: #00c;} .cm-s-default .cm-attribute {color: #00c;}
.cm-s-default .cm-hr {color: #999;} .cm-s-default .cm-hr {color: #999;}
.cm-s-default .cm-link {color: #00c;} .cm-s-default .cm-link {color: #00c;}
.cm-s-default .cm-error {color: #f00;} .cm-s-default .cm-error {color: #f00;}
.cm-invalidchar {color: #f00;} .cm-invalidchar {color: #f00;}
.CodeMirror-composing { border-bottom: 2px solid; } .CodeMirror-composing { border-bottom: 2px solid; }
/* Default styles for common addons */ /* Default styles for common addons */
div.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;} div.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;}
div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;} div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); } .CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }
.CodeMirror-activeline-background {background: #e8f2ff;} .CodeMirror-activeline-background {background: #e8f2ff;}
/* STOP */ /* STOP */
/* The rest of this file contains styles related to the mechanics of /* The rest of this file contains styles related to the mechanics of
the editor. You probably shouldn't touch them. */ the editor. You probably shouldn't touch them. */
.CodeMirror { .CodeMirror {
position: relative; position: relative;
overflow: hidden; overflow: hidden;
background: white; background: white;
} }
.CodeMirror-scroll { .CodeMirror-scroll {
overflow: scroll !important; /* Things will break if this is overridden */ overflow: scroll !important; /* Things will break if this is overridden */
/* 30px is the magic margin used to hide the element's real scrollbars */ /* 30px is the magic margin used to hide the element's real scrollbars */
/* See overflow: hidden in .CodeMirror */ /* See overflow: hidden in .CodeMirror */
margin-bottom: -30px; margin-right: -30px; margin-bottom: -30px; margin-right: -30px;
padding-bottom: 30px; padding-bottom: 30px;
height: 100%; height: 100%;
outline: none; /* Prevent dragging from highlighting the element */ outline: none; /* Prevent dragging from highlighting the element */
position: relative; position: relative;
} }
.CodeMirror-sizer { .CodeMirror-sizer {
position: relative; position: relative;
border-right: 30px solid transparent; border-right: 30px solid transparent;
} }
/* The fake, visible scrollbars. Used to force redraw during scrolling /* The fake, visible scrollbars. Used to force redraw during scrolling
before actual scrolling happens, thus preventing shaking and before actual scrolling happens, thus preventing shaking and
flickering artifacts. */ flickering artifacts. */
.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { .CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
position: absolute; position: absolute;
z-index: 6; z-index: 6;
display: none; display: none;
} }
.CodeMirror-vscrollbar { .CodeMirror-vscrollbar {
right: 0; top: 0; right: 0; top: 0;
overflow-x: hidden; overflow-x: hidden;
overflow-y: scroll; overflow-y: scroll;
} }
.CodeMirror-hscrollbar { .CodeMirror-hscrollbar {
bottom: 0; left: 0; bottom: 0; left: 0;
overflow-y: hidden; overflow-y: hidden;
overflow-x: scroll; overflow-x: scroll;
} }
.CodeMirror-scrollbar-filler { .CodeMirror-scrollbar-filler {
right: 0; bottom: 0; right: 0; bottom: 0;
} }
.CodeMirror-gutter-filler { .CodeMirror-gutter-filler {
left: 0; bottom: 0; left: 0; bottom: 0;
} }
.CodeMirror-gutters { .CodeMirror-gutters {
position: absolute; left: 0; top: 0; position: absolute; left: 0; top: 0;
min-height: 100%; min-height: 100%;
z-index: 3; z-index: 3;
} }
.CodeMirror-gutter { .CodeMirror-gutter {
white-space: normal; white-space: normal;
height: 100%; height: 100%;
display: inline-block; display: inline-block;
vertical-align: top; vertical-align: top;
margin-bottom: -30px; margin-bottom: -30px;
} }
.CodeMirror-gutter-wrapper { .CodeMirror-gutter-wrapper {
position: absolute; position: absolute;
z-index: 4; z-index: 4;
background: none !important; background: none !important;
border: none !important; border: none !important;
} }
.CodeMirror-gutter-background { .CodeMirror-gutter-background {
position: absolute; position: absolute;
top: 0; bottom: 0; top: 0; bottom: 0;
z-index: 4; z-index: 4;
} }
.CodeMirror-gutter-elt { .CodeMirror-gutter-elt {
position: absolute; position: absolute;
cursor: default; cursor: default;
z-index: 4; z-index: 4;
} }
.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent } .CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent }
.CodeMirror-gutter-wrapper ::selection { background-color: transparent } .CodeMirror-gutter-wrapper ::selection { background-color: transparent }
.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent } .CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent }
.CodeMirror-lines { .CodeMirror-lines {
cursor: text; cursor: text;
min-height: 1px; /* prevents collapsing before first draw */ min-height: 1px; /* prevents collapsing before first draw */
} }
.CodeMirror pre { .CodeMirror pre {
/* Reset some styles that the rest of the page might have set */ border-radius: 0; /* Reset some styles that the rest of the page might have set */ border-radius: 0;
border-width: 0; border-width: 0;
background: transparent; background: transparent;
font-family: inherit; font-family: inherit;
font-size: inherit; font-size: inherit;
margin: 0; margin: 0;
white-space: pre; white-space: pre;
word-wrap: normal; word-wrap: normal;
line-height: inherit; line-height: inherit;
color: inherit; color: inherit;
z-index: 2; z-index: 2;
position: relative; position: relative;
overflow: visible; overflow: visible;
-webkit-tap-highlight-color: transparent; -webkit-tap-highlight-color: transparent;
-webkit-font-variant-ligatures: contextual; -webkit-font-variant-ligatures: contextual;
font-variant-ligatures: contextual; font-variant-ligatures: contextual;
} }
.CodeMirror-wrap pre { .CodeMirror-wrap pre {
word-wrap: break-word; word-wrap: break-word;
white-space: pre-wrap; white-space: pre-wrap;
word-break: normal; word-break: normal;
} }
.CodeMirror-linebackground { .CodeMirror-linebackground {
position: absolute; position: absolute;
left: 0; right: 0; top: 0; bottom: 0; left: 0; right: 0; top: 0; bottom: 0;
z-index: 0; z-index: 0;
} }
.CodeMirror-linewidget { .CodeMirror-linewidget {
position: relative; position: relative;
z-index: 2; z-index: 2;
padding: 0.1px; /* Force widget margins to stay inside of the container */ padding: 0.1px; /* Force widget margins to stay inside of the container */
} }
.CodeMirror-widget {} .CodeMirror-widget {}
.CodeMirror-rtl pre { direction: rtl; } .CodeMirror-rtl pre { direction: rtl; }
.CodeMirror-code { .CodeMirror-code {
outline: none; outline: none;
} }
/* Force content-box sizing for the elements where we expect it */ /* Force content-box sizing for the elements where we expect it */
.CodeMirror-scroll, .CodeMirror-scroll,
.CodeMirror-sizer, .CodeMirror-sizer,
.CodeMirror-gutter, .CodeMirror-gutter,
.CodeMirror-gutters, .CodeMirror-gutters,
.CodeMirror-linenumber { .CodeMirror-linenumber {
-webkit-box-sizing: content-box; -webkit-box-sizing: content-box;
box-sizing: content-box; box-sizing: content-box;
} }
.CodeMirror-measure { .CodeMirror-measure {
position: absolute; position: absolute;
width: 100%; width: 100%;
height: 0; height: 0;
overflow: hidden; overflow: hidden;
visibility: hidden; visibility: hidden;
} }
.CodeMirror-cursor { .CodeMirror-cursor {
position: absolute; position: absolute;
pointer-events: none; pointer-events: none;
} }
.CodeMirror-measure pre { position: static; } .CodeMirror-measure pre { position: static; }
div.CodeMirror-cursors { div.CodeMirror-cursors {
visibility: hidden; visibility: hidden;
position: relative; position: relative;
z-index: 3; z-index: 3;
} }
div.CodeMirror-dragcursors { div.CodeMirror-dragcursors {
visibility: visible; visibility: visible;
} }
.CodeMirror-focused div.CodeMirror-cursors { .CodeMirror-focused div.CodeMirror-cursors {
visibility: visible; visibility: visible;
} }
.CodeMirror-selected { background: #d9d9d9; } .CodeMirror-selected { background: #d9d9d9; }
.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; } .CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
.CodeMirror-crosshair { cursor: crosshair; } .CodeMirror-crosshair { cursor: crosshair; }
.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; } .CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }
.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; } .CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }
.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; } .CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }
.cm-searching { .cm-searching {
background-color: #ffa; background-color: #ffa;
background-color: rgba(255, 255, 0, .4); background-color: rgba(255, 255, 0, .4);
} }
/* Used to force a border model for a node */ /* Used to force a border model for a node */
.cm-force-border { padding-right: .1px; } .cm-force-border { padding-right: .1px; }
@media print { @media print {
/* Hide the cursor when printing */ /* Hide the cursor when printing */
.CodeMirror div.CodeMirror-cursors { .CodeMirror div.CodeMirror-cursors {
visibility: hidden; visibility: hidden;
} }
} }
/* See issue #2901 */ /* See issue #2901 */
.cm-tab-wrap-hack:after { content: ''; } .cm-tab-wrap-hack:after { content: ''; }
/* Help users use markselection to safely style text background */ /* Help users use markselection to safely style text background */
span.CodeMirror-selectedtext { background: none; } span.CodeMirror-selectedtext { background: none; }
.radioStyle{ .radioStyle{
display: block; display: block;
height: 30px; height: 30px;
} }
a.white-btn.use_scope-btn:hover{ a.white-btn.use_scope-btn:hover{
} }
.shixunScopeInput{ .shixunScopeInput{
width:218px; width:218px;
height:33px; height:33px;
display:block; display:block;
margin-bottom:15px; margin-bottom:15px;
} }
#memoMD .CodeMirror { #memoMD .CodeMirror {
width: 576px !important; /*width: 576px !important;*/
margin-top: 31px !important; margin-top: 31px !important;
height: 364px !important; height: 364px !important;
} }
#memoMD .editormd-preview { #memoMD .editormd-preview {
width: 567px !important; width: 578px !important;
top: 40px !important; top: 40px !important;
height: 364px !important; height: 364px !important;
} }
.ml36{ .ml36{
margin-left: 26px; margin-left: 26px;
} }
#person-unit a.white-btn.use_scope-btn:hover { #person-unit a.white-btn.use_scope-btn:hover {
border: 1px solid #F06200; border: 1px solid #F06200;
color:#FFF !important; color:#FFF !important;
} }

Loading…
Cancel
Save