Merge branch 'dev_aliyun' of https://bdgit.educoder.net/Hjqreturn/educoder into dev_aliyun

dev_hs
jingquan huang 6 years ago
commit 3bfed55960

@ -108,6 +108,7 @@ class ApplicationController < ActionController::Base
def find_course def find_course
return normal_status(2, '缺少course_id参数') if params[:course_id].blank? return normal_status(2, '缺少course_id参数') if params[:course_id].blank?
@course = Course.find(params[:course_id]) @course = Course.find(params[:course_id])
tip_exception(404, "") if @course.is_delete == 1 && !current_user.admin?
rescue Exception => e rescue Exception => e
tip_exception(e.message) tip_exception(e.message)
end end

@ -549,7 +549,7 @@ class CoursesController < ApplicationController
course_member = CourseMember.find_by!(id: params[:course_member_id].to_i, course_id: @course.id) course_member = CourseMember.find_by!(id: params[:course_member_id].to_i, course_id: @course.id)
tip_exception("删除失败") if course_member.CREATOR? or course_member.STUDENT? tip_exception("删除失败") if course_member.CREATOR? or course_member.STUDENT?
course_student = CourseMember.find_by(id: course_member.user_id, course_id: @course.id, role: %i[STUDENT]) course_student = CourseMember.find_by(user_id: course_member.user_id, course_id: @course.id, role: %i[STUDENT])
course_member.destroy! course_member.destroy!
course_student.update_attributes(is_active: 1) if course_student.present? && !course_student.is_active course_student.update_attributes(is_active: 1) if course_student.present? && !course_student.is_active
normal_status(0, "删除成功") normal_status(0, "删除成功")
@ -772,8 +772,10 @@ class CoursesController < ApplicationController
students.each do |student| students.each do |student|
course_member = CourseMember.find_by(id: student[:course_member_id].to_i, course_id: @course.id) course_member = CourseMember.find_by(id: student[:course_member_id].to_i, course_id: @course.id)
if course_member.present? if course_member.present?
member_teacher = CourseMember.find_by(user_id: course_member.user_id, course_id: @course.id, role: %i[CREATOR PROFESSOR ASSISTANT_PROFESSOR])
student_ids << course_member.user_id student_ids << course_member.user_id
course_member.destroy! course_member.destroy!
member_teacher.update_attributes(is_active: 1) if member_teacher.present?
end end
end end
CourseDeleteStudentDeleteWorksJob.perform_later(@course.id, student_ids) if student_ids.present? CourseDeleteStudentDeleteWorksJob.perform_later(@course.id, student_ids) if student_ids.present?
@ -1178,6 +1180,7 @@ class CoursesController < ApplicationController
# Use callbacks to share common setup or constraints between actions. # Use callbacks to share common setup or constraints between actions.
def set_course def set_course
@course = Course.find_by!(id: params[:id]) @course = Course.find_by!(id: params[:id])
tip_exception(404, "") if @course.is_delete == 1 && !current_user.admin?
end end
# Never trust parameters from the scary internet, only allow the white list through. # Never trust parameters from the scary internet, only allow the white list through.

@ -82,6 +82,7 @@ class Course < ApplicationRecord
scope :by_keywords, lambda { |keywords| scope :by_keywords, lambda { |keywords|
where("name LIKE ?", "%#{keywords.split(" ").join('|')}%") unless keywords.blank? where("name LIKE ?", "%#{keywords.split(" ").join('|')}%") unless keywords.blank?
} }
scope :started, -> { where("start_date is null or start_date <= '#{Date.today}'") }
acts_as_taggable acts_as_taggable

@ -23,11 +23,11 @@ class Users::CourseService
def category_scope_courses def category_scope_courses
case params[:category] case params[:category]
when 'study' then when 'study' then
user.as_student_courses user.as_student_courses.started
when 'manage' then when 'manage' then
user.manage_courses user.manage_courses
else else
ids = user.as_student_courses.pluck(:id) + user.manage_courses.pluck(:id) ids = user.as_student_courses.started.pluck(:id) + user.manage_courses.pluck(:id)
Course.where(id: ids) Course.where(id: ids)
end end
end end

File diff suppressed because one or more lines are too long

@ -49,7 +49,8 @@ class CoursesBanner extends Component {
is_guide:false, is_guide:false,
excellent:false,//是否是精品课堂 excellent:false,//是否是精品课堂
yslJointhe:false, yslJointhe:false,
mydisplay:false mydisplay:false,
yslJointhes:false,
} }
} }
@ -57,6 +58,19 @@ class CoursesBanner extends Component {
this.onloadupdatabanner() this.onloadupdatabanner()
on('updatabanner', this.updatabanner) on('updatabanner', this.updatabanner)
axios.interceptors.response.use((response) => {
if (response != undefined)
if (response && response.data.status === 410) {
this.setState({
yslJointhe:true,
yslJointhes:true
})
}
return response;
}, (error) => {
});
} }
componentWillUnmount() { componentWillUnmount() {
off('updatabanner', this.updatabanner) off('updatabanner', this.updatabanner)
@ -393,6 +407,9 @@ class CoursesBanner extends Component {
this.setState({ this.setState({
yslJointhe:false yslJointhe:false
}) })
if(this.state.yslJointhes===true){
window.location.href = "/";
}
}; };
ysljoinmodalCanceltwo=()=>{ ysljoinmodalCanceltwo=()=>{
this.setState({ this.setState({
@ -486,7 +503,12 @@ class CoursesBanner extends Component {
} }
</style> </style>
{excellent===true? {excellent===true?
<span className="tag-orangces fl"><span className="tag-names mt10 ml15">开放课程</span></span>
<span>
<CoursesListType
typelist={["开放课程"]}
typesylename={"mt10"}/>
</span>
:""} :""}
<span className={"TabsWarp"}> <span className={"TabsWarp"}>
<CoursesListType <CoursesListType
@ -582,7 +604,7 @@ class CoursesBanner extends Component {
onClick={() => this.tojoinclass(1)}>加入课堂</a> onClick={() => this.tojoinclass(1)}>加入课堂</a>
: :
<a className="fr user_default_btn task-btn-orange font-18 mr20" id="shixun_operation" <a className="fr user_default_btn task-btn-orange font-18 mr20" id="shixun_operation"
onClick={() => this.myyslgradin(1)}>加入课堂</a> onClick={() => this.myyslgradin(1)}>立即加入</a>
) )
: ""} : ""}
@ -592,11 +614,16 @@ class CoursesBanner extends Component {
onClick={() => this.tojoinclass(1)}>加入课堂</a> onClick={() => this.tojoinclass(1)}>加入课堂</a>
: :
<a className="fr user_default_btn task-btn-orange font-18 mr20" id="shixun_operation" <a className="fr user_default_btn task-btn-orange font-18 mr20" id="shixun_operation"
onClick={() => this.myyslgradin(1)}>加入课堂</a> onClick={() => this.myyslgradin(1)}>立即加入</a>
: ""} : ""}
{coursedata.course_identity === 6&&coursedata.educoder_teacher===true? {coursedata.course_identity === 6&&coursedata.educoder_teacher===true?
<a className="fr user_default_btn user_blue_btn mr20 font-18" onClick={() => this.ActionPoll(5)}> 复制课堂 </a>: ""} (
excellent===false?
<a className="fr user_default_btn user_blue_btn mr20 font-18" onClick={() => this.ActionPoll(5)}> 复制课堂 </a>
:""
)
: ""}
{this.props.isStudent()?<a className="fr user_default_btn user_blue_btn mr20 font-18" {this.props.isStudent()?<a className="fr user_default_btn user_blue_btn mr20 font-18"
onClick={() => this.exitclass()} onClick={() => this.exitclass()}

@ -884,7 +884,7 @@ class Coursesleftnav extends Component{
<a onClick={(e)=>this.showsandians(e,key,item.category_url,1)} className={ item.second_category===undefined?"fl ml20 pd0":item.second_category.length===0?"fl ml20 pd0":this.state.sandiantypes===key?"fl ml20 pd0 ebebeb":"fl ml20 pd0"}> <a onClick={(e)=>this.showsandians(e,key,item.category_url,1)} className={ item.second_category===undefined?"fl ml20 pd0":item.second_category.length===0?"fl ml20 pd0":this.state.sandiantypes===key?"fl ml20 pd0 ebebeb":"fl ml20 pd0"}>
{ {
item.type==="announcement"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-xiaoxi1 mr10 fl":"iconfont icon-xiaoxi1 mr10 fl"}></i>: item.type==="announcement"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-xiaoxi1 mr10 fl":"iconfont icon-xiaoxi1 mr10 fl"}></i>:
item.type==="online_learning"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-xuexizhongxin mr10 fl":"iconfont icon-xuexizhongxin mr10 fl"}></i>: item.type==="online_learning"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-kecheng mr10 fl font-16":"iconfont icon-kecheng mr10 fl font-16"}></i>:
item.type==="shixun_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-daima mr10 fl":"iconfont icon-daima mr10 fl"}></i>: item.type==="shixun_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-daima mr10 fl":"iconfont icon-daima mr10 fl"}></i>:
item.type==="common_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-putongzuoye mr10 fl":"iconfont icon-putongzuoye mr10 fl"}></i>: item.type==="common_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-putongzuoye mr10 fl":"iconfont icon-putongzuoye mr10 fl"}></i>:
item.type==="group_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-fenzuzuoye mr10 fl":"iconfont icon-fenzuzuoye mr10 fl"}></i>: item.type==="group_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-fenzuzuoye mr10 fl":"iconfont icon-fenzuzuoye mr10 fl"}></i>:
@ -1001,7 +1001,7 @@ class Coursesleftnav extends Component{
<a className={ item.second_category===undefined?"fl ml20 pd0":item.second_category.length===0?"fl ml20 pd0":this.state.sandiantypes===key?"fl ml20 pd0 ebebeb":"fl ml20 pd0"}> <a className={ item.second_category===undefined?"fl ml20 pd0":item.second_category.length===0?"fl ml20 pd0":this.state.sandiantypes===key?"fl ml20 pd0 ebebeb":"fl ml20 pd0"}>
{ {
item.type==="announcement"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-xiaoxi1 mr10 fl":"iconfont icon-xiaoxi1 mr10 fl"}></i>: item.type==="announcement"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-xiaoxi1 mr10 fl":"iconfont icon-xiaoxi1 mr10 fl"}></i>:
item.type==="online_learning"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-xuexizhongxin mr10 fl":"iconfont icon-xuexizhongxin mr10 fl"}></i>: item.type==="online_learning"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-kecheng mr10 fl font-16":"iconfont icon-kecheng mr10 fl font-16"}></i>:
item.type==="shixun_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-daima mr10 fl":"iconfont icon-daima mr10 fl"}></i>: item.type==="shixun_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-daima mr10 fl":"iconfont icon-daima mr10 fl"}></i>:
item.type==="common_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-putongzuoye mr10 fl":"iconfont icon-putongzuoye mr10 fl"}></i>: item.type==="common_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-putongzuoye mr10 fl":"iconfont icon-putongzuoye mr10 fl"}></i>:
item.type==="group_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-fenzuzuoye mr10 fl":"iconfont icon-fenzuzuoye mr10 fl"}></i>: item.type==="group_homework"?<i className={this.props.location.pathname===item.category_url?"color-blue iconfont icon-fenzuzuoye mr10 fl":"iconfont icon-fenzuzuoye mr10 fl"}></i>:

@ -34,7 +34,7 @@ class CoursesListType extends Component {
return( return(
<Tooltip placement="bottom" title={tipval} getPopupContainer={()=>document.querySelector('.TabsWarp')} key={key}> <Tooltip placement="bottom" title={tipval} getPopupContainer={()=>document.querySelector('.TabsWarp')} key={key}>
<span key={key}> <span key={key}>
{item==="公开"?<span className={"edu-filter-btn edu-filter-btn-028d01 ml15 fl typestyle " + typesylename} >公开</span>:""} {item==="公开"?<span className={"edu-filter-btn edu-filter-btn-4CACFF ml15 fl typestyle " + typesylename} >公开</span>:""}
{item==="已开启补交"?<span className={"edu-filter-btn edu-filter-btn-028d01 ml15 fl typestyle "+ typesylename} >已开启补交</span>:""} {item==="已开启补交"?<span className={"edu-filter-btn edu-filter-btn-028d01 ml15 fl typestyle "+ typesylename} >已开启补交</span>:""}
{item==="未开启补交"?<span className={"edu-filter-btn edu-filter-btn-CC317C ml15 fl typestyle "+ typesylename} >未开启补交</span>:""} {item==="未开启补交"?<span className={"edu-filter-btn edu-filter-btn-CC317C ml15 fl typestyle "+ typesylename} >未开启补交</span>:""}
{item==="匿名作品"?<span className={"edu-filter-btn edu-filter-btn-006B75 ml15 fl typestyle "+ typesylename} >匿名作品</span>:""} {item==="匿名作品"?<span className={"edu-filter-btn edu-filter-btn-006B75 ml15 fl typestyle "+ typesylename} >匿名作品</span>:""}
@ -55,6 +55,8 @@ class CoursesListType extends Component {
{item==="未提交"?<span className={"edu-filter-btn edu-filter-btn-84B6EB ml15 fl typestyle "+ typesylename} >未提交</span>:""} {item==="未提交"?<span className={"edu-filter-btn edu-filter-btn-84B6EB ml15 fl typestyle "+ typesylename} >未提交</span>:""}
{item==="已确认"?<span className={"edu-filter-btn edu-filter-btn-FC2B6A ml15 fl typestyle "+ typesylename} >已确认</span>:""} {item==="已确认"?<span className={"edu-filter-btn edu-filter-btn-FC2B6A ml15 fl typestyle "+ typesylename} >已确认</span>:""}
{item==="已截止"?<span className={"edu-filter-btn edu-filter-btn-FC2B6A ml15 fl typestyle "+ typesylename} >已截止</span>:""} {item==="已截止"?<span className={"edu-filter-btn edu-filter-btn-FC2B6A ml15 fl typestyle "+ typesylename} >已截止</span>:""}
{item==="开放课程"?<span className={"edu-filter-btn edu-filter-btn-FF6800 ml15 fl typestyle "+ typesylename} >开放课程</span>:""}
</span> </span>
</Tooltip> </Tooltip>
) )

@ -907,6 +907,10 @@ a.white-btn.use_scope-btn:hover{
.edu-filter-btn-FC2B6A{ .edu-filter-btn-FC2B6A{
background:#FC2B6A !important; background:#FC2B6A !important;
} }
.edu-filter-btn-FF6800{
background:#FF6800 !important;
}
.color666666{ .color666666{
color:#666666 !important; color:#666666 !important;
} }

@ -124,7 +124,7 @@ class Elearning extends Component{
axios.get(url).then((response) => { axios.get(url).then((response) => {
console.log("精品课堂开发学习"); console.log("精品课堂开发学习");
console.log(response); console.log(response);
console.log(JSON.stringify(response)); // console.log(JSON.stringify(response));
debugger debugger
if (response.data.status === -2) { if (response.data.status === -2) {
this.setState({ this.setState({

@ -327,7 +327,7 @@ class Goldsubject extends Component {
try { try {
console.log("327"); console.log("327");
console.log(datasysl); console.log(datasysl);
console.log(JSON.stringify(datasysl)); // console.log(JSON.stringify(datasysl));
console.log("88887777"); console.log("88887777");
console.log(moment(values.starttime).format("YYYY-MM-DD")); console.log(moment(values.starttime).format("YYYY-MM-DD"));
console.log(moment(values.endtime).format("YYYY-MM-DD")); console.log(moment(values.endtime).format("YYYY-MM-DD"));
@ -410,7 +410,7 @@ class Goldsubject extends Component {
try { try {
console.log("提交的ysldatas数据"); console.log("提交的ysldatas数据");
console.log(ysldatas); console.log(ysldatas);
console.log(JSON.stringify(ysldatas)); // console.log(JSON.stringify(ysldatas));
console.log(moment(values.starttime).format("YYYY-MM-DD")); console.log(moment(values.starttime).format("YYYY-MM-DD"));
console.log(moment(values.endtime).format("YYYY-MM-DD")); console.log(moment(values.endtime).format("YYYY-MM-DD"));
}catch (e) { }catch (e) {

@ -18,20 +18,7 @@ class Certifiedprofessional extends Component {
componentDidMount() { componentDidMount() {
// console.log("加入金品课堂"); // console.log("加入金品课堂");
// console.log(this.props); // console.log(this.props);
axios.interceptors.response.use((response) => {
if (response != undefined)
if (response && response.data.status === 410) {
try {
this.props.ModalshowCancelsy();
}catch (e) {
}
}
return response;
}, (error) => {
});
} }

@ -357,7 +357,9 @@ class MainContentContainer extends Component {
this.fetchRepositoryCode(props, null, null, true) this.fetchRepositoryCode(props, null, null, true)
} else{ } else{
this.setState({ isEditablePath, currentPath: path }); this.setState({ isEditablePath, currentPath: path });
this.oldRepositoryCode = fetchRepositoryCodeResponse.data.content || ''; this.oldRepositoryCode = ((fetchRepositoryCodeResponse.data.content === true || !fetchRepositoryCodeResponse.data.content)
? '' : fetchRepositoryCodeResponse.data.content);
this.updateRepositoryCode(this.oldRepositoryCode, updateCodeMirror) this.updateRepositoryCode(this.oldRepositoryCode, updateCodeMirror)
} }

@ -290,61 +290,65 @@ class DetailTop extends Component{
detailInfoList && detailInfoList &&
<div className={this.props.courses===undefined||this.props.courses.length===0?"subhead_content":"subhead_content pt100"}> <div className={this.props.courses===undefined||this.props.courses.length===0?"subhead_content":"subhead_content pt100"}>
<div className="font-28 color-white clearfix"> <div className="font-28 color-white clearfix">
<Tooltip placement="bottom" title={detailInfoList.name.length>27?detailInfoList.name:""}> {/*<Tooltip placement="bottom" title={detailInfoList.name.length>27?detailInfoList.name:""}>*/}
<span className="fl lineh-40 bannername780">
{detailInfoList.name} {/*</Tooltip>*/}
</span>
</Tooltip>
<style> <style>
{ {
` `
.pathoranges .tag-name{ .pathoranges{
display: block; display: inline-block;
width: auto; width: 64px;
background-color: #FF6800; background-color: #FF6800;
background-size: 100% 100%; background-size: 100% 100%;
padding: 0px 4px; padding: 0px 4px;
color: #fff; color: #fff;
float: left;
height: 28px; height: 28px;
line-height: 28px;
font-size: 14px; font-size: 14px;
border-radius: 4px; border-radius: 4px;
position: relative;
top: 5px;
left: 15px;
}
.pathoranges div{
position: absolute;
top: -6px;
}
.xxtjbtn{
width: 103px;
height: 38px;
background: rgba(255,255,255,1);
border-radius: 4px;
border: 1px solid rgba(255,255,255,1);
color: #970084 !important;
font-size: 15px !important;
line-height: 36px !important;
}
.kkbths{
width:103px;
height:38px;
border-radius:4px;
line-height: 36px !important;
border:1px solid rgba(255,255,255,1);
}
.maxwinth600{
width:600px;
} }
` `
} }
</style> </style>
{detailInfoList===undefined?"":detailInfoList.excellent === false ? "" :
<span className="pathoranges">
<span className="tag-name mt6 ml10">开放课程</span>
</span>}
{detailInfoList===undefined?"":detailInfoList.allow_statistics===true?
<Tooltip placement="bottom" title={"编辑"}>
<Link to={"/paths/"+this.props.match.params.pathId+"/edit"} className="ml10 ring-green fl mt10" >
<img src={getImageUrl("images/educoder/icon/edit.svg")} className="fl mt3 ml2" />
</Link>
</Tooltip>
:""
}
{detailInfoList===undefined?"":detailInfoList.allow_statistics===true?this.props.courses===undefined? <span className="fl lineh-40">
<Link to={"/paths/"+this.props.match.params.pathId+"/statistics"} className="user_default_btn edu-greenback-btn fr font-18" {detailInfoList.name}
> {detailInfoList===undefined?"":detailInfoList.excellent === false ? "" :
学习统计 <span className="pathoranges">
</Link>:"":"" <div>开放课程</div>
} </span>
}
</span>
{ detailInfoList.allow_send === true?this.props.courses===undefined?
<SendPanel {...this.props} {...this.state}></SendPanel>:"":""
}
<div className="fr pr">
{this.props.courses===undefined?"":detailInfoList.is_creator===true?<a className={"fl font-18 color-white mt5 kaike mr20"} onClick={()=>this.OpenCoursefun()}>开课</a>:""}
{detailInfoList===undefined?"":detailInfoList.allow_statistics===true?this.props.courses===undefined?"":<Link to={"/paths/"+this.props.match.params.pathId+"/statistics"} className="fl font-18 color-white mt5 kaike">
学习统计
</Link>:""
}
</div>
</div> </div>
<div className="clearfix mt20"> <div className="clearfix mt20">
{ {
@ -358,28 +362,47 @@ class DetailTop extends Component{
{ detailInfoList.member_count!=0 ? <li><span>学习人数</span><span>{detailInfoList.member_count}</span></li> : ""} { detailInfoList.member_count!=0 ? <li><span>学习人数</span><span>{detailInfoList.member_count}</span></li> : ""}
</ul> </ul>
} }
<div className="fr pr"> <div className="fr pr maxwinth600">
{detailInfoList===undefined?"":detailInfoList.allow_delete===true?<a
className={detailInfoList.publish_status===-1?"fl font-18 color-white mt5 mr20":"fl font-18 color-white mt5"}
style={{opacity: '0.6'}} onClick={this.allow_deletepath}
>删除课程</a>:""}
{ {detailInfoList===undefined?"":detailInfoList.allow_statistics===true?
detailInfoList.publish_status===0&&detailInfoList.allow_add_member===true? <Link to={"/paths/"+this.props.match.params.pathId+"/statistics"} className="user_default_btn fr font-18 xxtjbtn">
<a className="user_default_btn user_bluebg_btn font-18 fl ml40 userbluebgfont" onClick={this.applyissuePath}>申请发布</a>:"" 学习统计
} </Link>:""
}
{ detailInfoList.allow_send === true?this.props.courses===undefined?
<SendPanel {...this.props} {...this.state}></SendPanel>:"":""
}
{ {this.props.courses===undefined?"":detailInfoList.is_creator===true?<a className={"fr font-18 color-white kaike mr20 kkbths"} onClick={()=>this.OpenCoursefun()}>开课</a>:""}
detailInfoList.publish_status===1 && detailInfoList.allow_statistics===true?
<a className="user_default_btn user_grey_btn font-18 fl pointer ml40" onClick={this.cancelissuePath}>撤销申请</a>:""
}
{ {
detailInfoList.publish_status===2 && detailInfoList.allow_statistics===true? detailInfoList.publish_status===2 && detailInfoList.allow_statistics===true?
<a className="user_default_btn user_grey_btn font-18 fl pointer ml40" onClick={this.reovkissuePath}>撤销发布</a>:"" <a className="fr font-18 color-white kaike mr20 kkbths" onClick={this.reovkissuePath}>撤销发布</a>:""
} }
</div>
{
detailInfoList.publish_status===1 && detailInfoList.allow_statistics===true?
<a className="fr font-18 color-white kaike mr20 kkbths" onClick={this.cancelissuePath}>撤销申请</a>:""
}
{
detailInfoList.publish_status===0&&detailInfoList.allow_add_member===true?
<a className="fr font-18 color-white kaike mr20 kkbths" onClick={this.applyissuePath}>申请发布</a>:""
}
{detailInfoList===undefined?"":detailInfoList.allow_delete===true?<a
className={"fr font-18 color-white kaike mr20 kkbths"}
onClick={this.allow_deletepath}
>删除</a>:""}
{detailInfoList===undefined?"":detailInfoList.allow_statistics===true?
<Link to={"/paths/"+this.props.match.params.pathId+"/edit"} className="fr font-18 color-white kaike mr20 kkbths" >
编辑
</Link>
:""
}
</div>
</div> </div>
@ -518,6 +541,9 @@ class DetailTop extends Component{
.pathdefault{ .pathdefault{
cursor: default !important; cursor: default !important;
} }
.courseslistsa{
color:#fff !important;
}
` `
} }
</style> </style>
@ -530,20 +556,20 @@ class DetailTop extends Component{
{item.course_status.status===2&&item.course_identity<6?<div className="mr51 shixun_detail pointer fl user-colorgrey-9b pathdefault">已结束</div>:""} {item.course_status.status===2&&item.course_identity<6?<div className="mr51 shixun_detail pointer fl user-colorgrey-9b pathdefault">已结束</div>:""}
{item.course_status.status===0? {item.course_status.status===0?
item.course_identity<5?<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens" href={item.first_category_url} target="_blank"> item.course_identity<5?<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens courseslistsa" href={item.first_category_url} target="_blank">
进入课堂 进入课堂
</a>:item.course_identity<6?<div className="fr user_default_btn background191 font-18 mt28 pathbtens pathdefault"></div> </a>:item.course_identity<6?<div className="fr user_default_btn background191 font-18 mt28 pathbtens pathdefault"></div>
:<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens" onClick={()=>this.JoinnowCourse(item.course_id)}>立即报名</a>:""} :<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens" onClick={()=>this.JoinnowCourse(item.course_id)}>立即报名</a>:""}
{item.course_status.status===1? {item.course_status.status===1?
item.course_identity<5?<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens" href={item.first_category_url} target="_blank"> item.course_identity<5?<a className="courseslistsa fr user_default_btn task-btn-orange font-18 mt28 pathbtens" href={item.first_category_url} target="_blank">
进入课堂 进入课堂
</a>:item.course_identity<6?<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens" href={item.first_category_url} target="_blank"> </a>:item.course_identity<6?<a className="courseslistsa fr user_default_btn task-btn-orange font-18 mt28 pathbtens" href={item.first_category_url} target="_blank">
立即学习 立即学习
</a>:<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens" onClick={()=>this.JoinnowCourse(item.course_id,item.course_status.status)}></a>:""} </a>:<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens" onClick={()=>this.JoinnowCourse(item.course_id,item.course_status.status)}></a>:""}
{item.course_status.status===2? {item.course_status.status===2?
item.course_identity<6?<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens" href={item.first_category_url} target="_blank"> item.course_identity<6?<a className="fr user_default_btn task-btn-orange font-18 mt28 pathbtens courseslistsa" href={item.first_category_url} target="_blank">
进入课堂 进入课堂
</a>:<div className="fr user_default_btn background191 font-18 mt28 pathbtens pathdefault"></div>:""} </a>:<div className="fr user_default_btn background191 font-18 mt28 pathbtens pathdefault"></div>:""}

@ -381,14 +381,14 @@ class PathDetailIndex extends Component{
<div className="produce-content mb10"> <div className="produce-content mb10">
<p className="clearfix mb20"> <p className="clearfix mb20">
<span className="fl font-18 font-bd">简介</span> <span className="fl font-18 font-bd">简介</span>
{detailInfoList===undefined?"":detailInfoList.allow_statistics===true? {/*{detailInfoList===undefined?"":detailInfoList.allow_statistics===true?*/}
<Tooltip placement="bottom" title={"编辑"}> {/*<Tooltip placement="bottom" title={"编辑"}>*/}
<Link className="fr" to={"/paths/"+this.props.match.params.pathId+"/edit"}> {/*<Link className="fr" to={"/paths/"+this.props.match.params.pathId+"/edit"}>*/}
<i className="iconfont icon-bianjidaibeijing font-20 color-green"></i> {/*<i className="iconfont icon-bianjidaibeijing font-20 color-green"></i>*/}
</Link> {/*</Link>*/}
</Tooltip> {/*</Tooltip>*/}
:"" {/*:""*/}
} {/*}*/}
</p> </p>
<div className="color-grey-6 clearfix"> <div className="color-grey-6 clearfix">
<div id="shixuns_propaedeutics" className="new_li fl" style={{"padding":" 0px","textAlign": "justify;"}}> <div id="shixuns_propaedeutics" className="new_li fl" style={{"padding":" 0px","textAlign": "justify;"}}>
@ -409,14 +409,14 @@ class PathDetailIndex extends Component{
<div className="edu-back-white mustlearn mb10"> <div className="edu-back-white mustlearn mb10">
<p className="clearfix mb30"> <p className="clearfix mb30">
<span className="font-16">课程须知</span> <span className="font-16">课程须知</span>
{detailInfoList===undefined?"":detailInfoList.allow_statistics===true? {/*{detailInfoList===undefined?"":detailInfoList.allow_statistics===true?*/}
<Tooltip placement="bottom" title={"编辑"}> {/*<Tooltip placement="bottom" title={"编辑"}>*/}
<Link to={"/paths/"+this.props.match.params.pathId+"/edit#learning_notes"} className="fr mtf5"> {/*<Link to={"/paths/"+this.props.match.params.pathId+"/edit#learning_notes"} className="fr mtf5">*/}
<i className="iconfont icon-bianjidaibeijing font-20 color-green"></i> {/*<i className="iconfont icon-bianjidaibeijing font-20 color-green"></i>*/}
</Link> {/*</Link>*/}
</Tooltip> {/*</Tooltip>*/}
:"" {/*:""*/}
} {/*}*/}
</p> </p>
<div id="subject_learning_notes" className="color-grey-6 new_li markdown-body editormd-html-preview justify"> <div id="subject_learning_notes" className="color-grey-6 new_li markdown-body editormd-html-preview justify">
{detailInfoList === undefined ? "" :detailInfoList.learning_notes===null?"": {detailInfoList === undefined ? "" :detailInfoList.learning_notes===null?"":

@ -180,7 +180,7 @@ class sendPanel extends Component{
{ {
this.props.detailInfoList===undefined?"":this.props.detailInfoList.allow_send===true? this.props.detailInfoList===undefined?"":this.props.detailInfoList.allow_send===true?
<Tooltip placement="bottom" title="以实训作业的形式发送到我的课堂"> <Tooltip placement="bottom" title="以实训作业的形式发送到我的课堂">
<a onClick = {this.SentToLesson} className="user_default_btn edu-greenline-btn fr font-18 mr20"> <a onClick = {this.SentToLesson} className="fr font-18 color-white kaike mr20 kkbths">
发送至 发送至
</a> </a>
</Tooltip>:'' </Tooltip>:''

@ -35,14 +35,14 @@ if (!window['indexHOCLoaded']) {
// $('head').append($('<link rel="stylesheet" type="text/css" />') // $('head').append($('<link rel="stylesheet" type="text/css" />')
// .attr('href', `${_url_origin}/stylesheets/educoder/antd.min.css?1525440977`)); // .attr('href', `${_url_origin}/stylesheets/educoder/antd.min.css?1525440977`));
$('head').append($('<link rel="stylesheet" type="text/css" />') $('head').append($('<link rel="stylesheet" type="text/css" />')
.attr('href', `${_url_origin}/stylesheets/css/edu-common.css?1`)); .attr('href', `${_url_origin}/stylesheets/css/edu-common.css?6`));
$('head').append($('<link rel="stylesheet" type="text/css" />') $('head').append($('<link rel="stylesheet" type="text/css" />')
.attr('href', `${_url_origin}/stylesheets/educoder/edu-main.css?1`)); .attr('href', `${_url_origin}/stylesheets/educoder/edu-main.css?6`));
// index.html有加载 // index.html有加载
$('head').append($('<link rel="stylesheet" type="text/css" />') $('head').append($('<link rel="stylesheet" type="text/css" />')
.attr('href', `${_url_origin}/stylesheets/educoder/edu-all.css?1`)); .attr('href', `${_url_origin}/stylesheets/educoder/edu-all.css?6`));
// $('head').append($('<link rel="stylesheet" type="text/css" />') // $('head').append($('<link rel="stylesheet" type="text/css" />')

Loading…
Cancel
Save