Merge branches 'dev_OnlineYsm' and 'dev_Ysm' of https://bdgit.educoder.net/Hjqreturn/educoder into dev_Ysm

dev_hs
杨树明 6 years ago
commit 51f585cf51

@ -193,10 +193,10 @@ function generateNewIndexJsp() {
} }
const newVersion = '1.1.1' const newVersion = '1.1.1'
let cdnHost = 'https://shixun.educoder.net' let cdnHost = 'https://shixun.educoder.net'
cdnHost = 'http://cdn.educoder.net' cdnHost = 'https://ali-cdn.educoder.net'
cdnHost = '' // cdnHost = ''
var result = data.replace('/js/js_min_all.js', `${cdnHost}/react/build/js/js_min_all.js?v=${newVersion}`) var result = data.replace('/js/js_min_all.js', `${cdnHost}/react/build/js/js_min_all.js?v=${newVersion}`)
.replace('/js/js_min_all_2.js', `${cdnHost}/react/build/js/js_min_all_2.js?v=${newVersion}`) // .replace('/js/js_min_all_2.js', `${cdnHost}/react/build/js/js_min_all_2.js?v=${newVersion}`)
.replace('/css/css_min_all.css', `${cdnHost}/react/build/css/css_min_all.css?v=${newVersion}`) .replace('/css/css_min_all.css', `${cdnHost}/react/build/css/css_min_all.css?v=${newVersion}`)
.replace('/css/iconfont.css', `${cdnHost}/react/build/css/iconfont.css?v=${newVersion}`) .replace('/css/iconfont.css', `${cdnHost}/react/build/css/iconfont.css?v=${newVersion}`)

@ -70,7 +70,7 @@ class ModulationModal extends Component{
destroyOnClose={true} destroyOnClose={true}
> >
<div className="task-popup-content"> <div className="task-popup-content">
<p className="task-popup-text-center font-16"> <p className="task-popup-text-center font-16 mb20">
<span className={"color-dark-21"}>该学生的最终成绩将不会按照评分规则进行计算</span> <span className={"color-dark-21"}>该学生的最终成绩将不会按照评分规则进行计算</span>

@ -632,89 +632,89 @@ class Selectsetting extends Component{
{this.state.newfileListtypes===true?<p className={"color-red"}>请先上传资源</p>:""} {this.state.newfileListtypes===true?<p className={"color-red"}>请先上传资源</p>:""}
<p className={"winth540"}> {/*<p className={"winth540"}>*/}
<style>{` {/*<style>{`*/}
.ant-checkbox-wrapper{ {/*.ant-checkbox-wrapper{*/}
margin-left:0px !important; {/*margin-left:0px !important;*/}
margin-top:10px; {/*margin-top:10px;*/}
} {/*}*/}
`}</style> {/*`}</style>*/}
<div className={this.state.fileListtype===true?"mt30":""}> {/*<div className={this.state.fileListtype===true?"mt30":""}>*/}
<Checkbox {/*<Checkbox*/}
checked={is_public} {/*checked={is_public}*/}
onChange={this.onChangepublics}> {/*onChange={this.onChangepublics}>*/}
<span className={"font-14"}>勾选后所有用户可见否则仅课堂成员可见</span> {/*<span className={"font-14"}>勾选后所有用户可见,否则仅课堂成员可见</span>*/}
</Checkbox> {/*</Checkbox>*/}
</div> {/*</div>*/}
{/*{this.props.has_course_groups&&this.props.has_course_groups===true?:""}*/} {/*/!*{this.props.has_course_groups&&this.props.has_course_groups===true?:""}*!/*/}
{/*{this.state.course_groupss&&this.state.course_groupss.length>0?<Checkbox*/} {/*/!*{this.state.course_groupss&&this.state.course_groupss.length>0?<Checkbox*!/*/}
{/*checked={unified_setting}*/} {/*/!*checked={unified_setting}*!/*/}
{/*onChange={this.onChangesettings}>*/} {/*/!*onChange={this.onChangesettings}>*!/*/}
{/*<span>统一设置</span><span className={"font-14 color-grey-9"}>(选中则所有分班使用相同的发布设置,否则各个单独设置)</span>*/} {/*/!*<span>统一设置</span><span className={"font-14 color-grey-9"}>(选中则所有分班使用相同的发布设置,否则各个单独设置)</span>*!/*/}
{/*</Checkbox>:""}*/} {/*/!*</Checkbox>:""}*!/*/}
<style> {/*<style>*/}
{` {/*{`*/}
.Selectleft20{ {/*.Selectleft20{*/}
margin-left: 20px !important; {/*margin-left: 20px !important;*/}
width: 176px; {/*width: 176px;*/}
height: 40px; {/*height: 40px; */}
} {/*}*/}
.resourcebox{ {/*.resourcebox{*/}
max-height:150px; {/*max-height:150px;*/}
overflow: auto; {/*overflow: auto;*/}
} {/*}*/}
`} {/*`}*/}
</style> {/*</style>*/}
{/*this.props.has_course_groups&&this.props.has_course_groups===true?:""*/} {/*/!*this.props.has_course_groups&&this.props.has_course_groups===true?:""*!/*/}
<div className={"resourcebox"}> {/*<div className={"resourcebox"}>*/}
{unified_setting===false? {/*{unified_setting===false?*/}
this.state.course_groups&&this.state.course_groups.map((item,key)=>{ {/*this.state.course_groups&&this.state.course_groups.map((item,key)=>{*/}
return( {/*return(*/}
<div className={"mt10 "} key={key}> {/*<div className={"mt10 "} key={key}>*/}
<Select placeholder="请选择分班名称" {/*<Select placeholder="请选择分班名称"*/}
value={item.course_group_id} {/*value={item.course_group_id}*/}
style={{ width: 200 }} {/*style={{ width: 200 }}*/}
onChange={(e,index)=>this.selectassigngroups(e,index,key)} {/*onChange={(e,index)=>this.selectassigngroups(e,index,key)}*/}
> {/*>*/}
{ this.state.course_groupss&&this.state.course_groupss.map((item,key)=>{ {/*{ this.state.course_groupss&&this.state.course_groupss.map((item,key)=>{*/}
return( {/*return(*/}
<Option value={item.id} key={key}>{item.name}</Option> {/*<Option value={item.id} key={key}>{item.name}</Option>*/}
) {/*)*/}
})} {/*})}*/}
</Select> {/*</Select>*/}
<DatePicker {/*<DatePicker*/}
showToday={false} {/*showToday={false}*/}
dropdownClassName="hideDisable" {/*dropdownClassName="hideDisable"*/}
showTime={{ format: 'HH:mm' }} {/*showTime={{ format: 'HH:mm' }}*/}
format="YYYY-MM-DD HH:mm" {/*format="YYYY-MM-DD HH:mm"*/}
locale={locale} {/*locale={locale}*/}
placeholder="请选择发布时间" {/*placeholder="请选择发布时间"*/}
id={"startimes"} {/*id={"startimes"}*/}
className={"Selectleft20"} {/*className={"Selectleft20"}*/}
width={"200px"} {/*width={"200px"}*/}
value={item.publish_time===undefined||item.publish_time===""?"":item.publish_time===null?"":moment(item.publish_time, dateFormat)} {/*value={item.publish_time===undefined||item.publish_time===""?"":item.publish_time===null?"":moment(item.publish_time, dateFormat)}*/}
onChange={(e,index)=>this.onChangeTimepublishs(e,index,key)} {/*onChange={(e,index)=>this.onChangeTimepublishs(e,index,key)}*/}
// onChange={ this.onChangeTimepublish } {/*// onChange={ this.onChangeTimepublish }*/}
disabledTime={disabledDateTime} {/*disabledTime={disabledDateTime}*/}
disabledDate={disabledDate} {/*disabledDate={disabledDate}*/}
/> {/*/>*/}
{key!=0?<i className="iconfont icon-shanchu color-grey-c font-14 font-n ml20" onClick={()=>this.deletegrouppublish(key)}></i>:""} {/*{key!=0?<i className="iconfont icon-shanchu color-grey-c font-14 font-n ml20" onClick={()=>this.deletegrouppublish(key)}></i>:""}*/}
{key===course_groups.length-1?<i className="iconfont icon-tianjiafangda color-green ml15" onClick={this.addgrouppublish}></i>:""} {/*{key===course_groups.length-1?<i className="iconfont icon-tianjiafangda color-green ml15" onClick={this.addgrouppublish}></i>:""}*/}
</div> {/*</div>*/}
) {/*)*/}
}):""} {/*}):""}*/}
</div> {/*</div>*/}
</p> {/*</p>*/}
<style> <style>
{` {`
#startime .ant-calendar-picker-icon{ #startime .ant-calendar-picker-icon{
@ -723,7 +723,7 @@ class Selectsetting extends Component{
`} `}
</style> </style>
{unified_setting===true? {unified_setting===true?
<p className={"mt10"}> <p className={this.state.fileListtype===true?"mt30":""}>
<span> <span>
<DatePicker <DatePicker
showToday={false} showToday={false}

@ -469,81 +469,81 @@ class Sendresource extends Component{
{newfileListtype===true&&this.state.fileListtype===false?<p className={"color-red"}>请先上传资源</p>:""} {newfileListtype===true&&this.state.fileListtype===false?<p className={"color-red"}>请先上传资源</p>:""}
<p className={"winth540"}> {/*<p className={"winth540"}>*/}
<style>{` {/*<style>{`*/}
.ant-checkbox-wrapper{ {/*.ant-checkbox-wrapper{*/}
margin-left:0px !important; {/*margin-left:0px !important;*/}
margin-top:10px; {/*margin-top:10px;*/}
} {/*}*/}
`}</style> {/*`}</style>*/}
<div className={this.state.fileListtype===true?"mt30":""}></div><Checkbox checked={is_public} onChange={this.onChangepublic}> {/*<div className={this.state.fileListtype===true?"mt30":""}></div><Checkbox checked={is_public} onChange={this.onChangepublic}>*/}
<span className={"font-14"}>勾选后所有用户可见否则仅课堂成员可见</span> {/*<span className={"font-14"}>勾选后所有用户可见,否则仅课堂成员可见</span>*/}
</Checkbox> {/*</Checkbox>*/}
{/*{this.state.course_groups_count&&this.state.course_groups_count>0?<Checkbox checked={is_unified_setting} onChange={this.onChangesetting}>*/} {/*/!*{this.state.course_groups_count&&this.state.course_groups_count>0?<Checkbox checked={is_unified_setting} onChange={this.onChangesetting}>*!/*/}
{/*<span>统一设置</span><span className={"font-14 color-grey-9"}>(选中则所有分班使用相同的发布设置,否则各个单独设置)</span>*/} {/*/!*<span>统一设置</span><span className={"font-14 color-grey-9"}>(选中则所有分班使用相同的发布设置,否则各个单独设置)</span>*!/*/}
{/*</Checkbox>:""}*/} {/*/!*</Checkbox>:""}*!/*/}
<style>{` {/*<style>{`*/}
.Selectleft20{ {/*.Selectleft20{*/}
margin-left: 20px !important; {/*margin-left: 20px !important;*/}
width: 176px; {/*width: 176px;*/}
height: 40px; {/*height: 40px; */}
} {/*}*/}
#startimes .ant-calendar-picker-icon{ {/*#startimes .ant-calendar-picker-icon{*/}
margin-top:-11px; {/*margin-top:-11px;*/}
} {/*}*/}
.resourcebox{ {/*.resourcebox{*/}
max-height:150px; {/*max-height:150px;*/}
overflow: auto; {/*overflow: auto;*/}
} {/*}*/}
`}</style> {/*`}</style>*/}
<div className={"resourcebox"}> {/*<div className={"resourcebox"}>*/}
{is_unified_setting===false? {/*{is_unified_setting===false?*/}
course_group_publish_times.map((item,key)=>{ {/*course_group_publish_times.map((item,key)=>{*/}
return( {/*return(*/}
<div className={"mt10"} key={key}> {/*<div className={"mt10"} key={key}>*/}
<Select placeholder="请选择分班名称" {/*<Select placeholder="请选择分班名称"*/}
value={item.course_group_id} {/*value={item.course_group_id}*/}
style={{ width: 200 }} {/*style={{ width: 200 }}*/}
onChange={(e,index)=>this.selectassigngroups(e,index,key)} {/*onChange={(e,index)=>this.selectassigngroups(e,index,key)}*/}
> {/*>*/}
{course_groups&&course_groups.map((item,key)=>{ {/*{course_groups&&course_groups.map((item,key)=>{*/}
return( {/*return(*/}
<Option value={item.id} key={key}>{item.name}</Option> {/*<Option value={item.id} key={key}>{item.name}</Option>*/}
) {/*)*/}
})} {/*})}*/}
</Select> {/*</Select>*/}
<DatePicker {/*<DatePicker*/}
dropdownClassName="hideDisable" {/*dropdownClassName="hideDisable"*/}
showTime={{ format: 'HH:mm' }} {/*showTime={{ format: 'HH:mm' }}*/}
locale={locale} {/*locale={locale}*/}
showToday={false} {/*showToday={false}*/}
format={dateFormat} {/*format={dateFormat}*/}
placeholder="请选择发布时间" {/*placeholder="请选择发布时间"*/}
id={"startimes"} {/*id={"startimes"}*/}
className={"Selectleft20 "} {/*className={"Selectleft20 "}*/}
width={"200px"} {/*width={"200px"}*/}
value={item.publish_time===undefined||item.publish_time===""?undefined:moment(item.publish_time, dateFormat)} {/*value={item.publish_time===undefined||item.publish_time===""?undefined:moment(item.publish_time, dateFormat)}*/}
onChange={(e,index)=>this.onChangeTimepublish(e,index,key,2)} {/*onChange={(e,index)=>this.onChangeTimepublish(e,index,key,2)}*/}
// onChange={ this.onChangeTimepublish } {/*// onChange={ this.onChangeTimepublish }*/}
disabledTime={disabledDateTime} {/*disabledTime={disabledDateTime}*/}
disabledDate={disabledDate} {/*disabledDate={disabledDate}*/}
/> {/*/>*/}
{key!=0?<i className="iconfont icon-shanchu color-grey-c font-14 font-n ml20" onClick={()=>this.deletegrouppublish(key)}></i>:""} {/*{key!=0?<i className="iconfont icon-shanchu color-grey-c font-14 font-n ml20" onClick={()=>this.deletegrouppublish(key)}></i>:""}*/}
{key===course_group_publish_times.length-1&&key<this.state.course_groups_count-1?<i className="iconfont icon-tianjiafangda color-green ml15" onClick={this.addgrouppublish}></i>:""} {/*{key===course_group_publish_times.length-1&&key<this.state.course_groups_count-1?<i className="iconfont icon-tianjiafangda color-green ml15" onClick={this.addgrouppublish}></i>:""}*/}
</div> {/*</div>*/}
) {/*)*/}
}) {/*})*/}
:""} {/*:""}*/}
</div> {/*</div>*/}
</p> {/*</p>*/}
{is_unified_setting===true?<p className={"mt10"}> {is_unified_setting===true?<p className={this.state.fileListtype===true?"mt30":"mt10"}>
<span> <span>
<DatePicker <DatePicker
dropdownClassName="hideDisable" dropdownClassName="hideDisable"

@ -2,7 +2,7 @@ import React,{Component} from "React";
import { Form, Select, Input, Button,Checkbox,Upload,Icon,message,Modal} from "antd"; import { Form, Select, Input, Button,Checkbox,Upload,Icon,message,Modal} from "antd";
import {Link} from 'react-router-dom'; import {Link} from 'react-router-dom';
import TPMMDEditor from '../../../tpm/challengesnew/TPMMDEditor'; import TPMMDEditor from '../../../tpm/challengesnew/TPMMDEditor';
import { WordsBtn,getUrl ,bytesToSize,appendFileSizeToUploadFileAll} from 'educoder'; import { WordsBtn,getUrl ,bytesToSize,appendFileSizeToUploadFileAll,AttachmentList} from 'educoder';
import axios from 'axios'; import axios from 'axios';
import Modals from '../../../modals/Modals'; import Modals from '../../../modals/Modals';
import '../../css/Courses.css'; import '../../css/Courses.css';
@ -419,35 +419,35 @@ class GraduationTasksedit extends Component{
)} )}
</Form.Item> </Form.Item>
<input type="hidden" id='descriptiontypes' /> <input type="hidden" id='descriptiontypes' />
<AttachmentList {...this.props} {...this.state} attachments={attachments&&attachments}></AttachmentList>
{/*{attachments&&attachments.map((item,key)=>{*/}
{attachments&&attachments.map((item,key)=>{ {/*return(*/}
{/*<div className="color-grey mt5"*/}
return( {/*key={key}*/}
<div className="color-grey mt5" {/*>*/}
key={key} {/*<a className="color-grey ml3">*/}
> {/*<i className="font-14 color-green iconfont icon-fujian mr8" aria-hidden="true"></i>*/}
<a className="color-grey ml3"> {/*</a>*/}
<i className="font-14 color-green iconfont icon-fujian mr8" aria-hidden="true"></i> {/*<a*/}
</a> {/*href={item.url}*/}
<a {/*className="mr12 color9B9B" length="58">*/}
href={item.url} {/*{item.title}*/}
className="mr12 color9B9B" length="58">
{item.title} {/*</a>*/}
{/*<span className="color656565 mt2 color-grey-6 font-12 mr8">*/}
</a> {/*{item.filesize}*/}
<span className="color656565 mt2 color-grey-6 font-12 mr8">
{item.filesize} {/*</span>*/}
{/*{item.delete===true?*/}
</span> {/*<i className="font-14 iconfont icon-guanbi "*/}
{item.delete===true? {/*id={item.id}*/}
<i className="font-14 iconfont icon-guanbi " {/*onClick={()=>this.onAttachmentRemove(item.id)}*/}
id={item.id} {/*aria-hidden="true">*/}
onClick={()=>this.onAttachmentRemove(item.id)} {/*</i>:""}*/}
aria-hidden="true"> {/*</div>*/}
</i>:""} {/*)*/}
</div> {/*})}*/}
)
})}
<Upload {...uploadProps} fileList={this.state.fileList} className="upload_1 ml5"> <Upload {...uploadProps} fileList={this.state.fileList} className="upload_1 ml5">
<Button className="uploadBtn"> <Button className="uploadBtn">
<Icon type="upload" /> 上传附件 <Icon type="upload" /> 上传附件

@ -1,7 +1,7 @@
import React,{Component} from "React"; import React,{Component} from "React";
import { Form, Select, Input, Button,Checkbox,Upload,Icon,message,Modal, Table, Divider, Tag} from "antd"; import { Form, Select, Input, Button,Checkbox,Upload,Icon,message,Modal, Table, Divider, Tag} from "antd";
import {Link} from 'react-router-dom'; import {Link} from 'react-router-dom';
import { WordsBtn,markdownToHTML} from 'educoder'; import { WordsBtn,markdownToHTML,AttachmentList} from 'educoder';
import axios from 'axios'; import axios from 'axios';
import Modals from '../../../modals/Modals'; import Modals from '../../../modals/Modals';
import DownloadMessageysl from "../../../modals/DownloadMessageysl"; import DownloadMessageysl from "../../../modals/DownloadMessageysl";
@ -396,23 +396,23 @@ class GraduationTasksquestions extends Component{
} }
<div> <div>
{questionslist&&questionslist.attachments.map((item,key)=>{ {/*{questionslist&&questionslist.attachments.map((item,key)=>{*/}
return( {/*return(*/}
<div className="color-grey mt5"> {/*<div className="color-grey mt5">*/}
<a className="color-grey"> {/*<a className="color-grey">*/}
<i className="font-14 color-green iconfont icon-fujian mr8" aria-hidden="true"></i> {/*<i className="font-14 color-green iconfont icon-fujian mr8" aria-hidden="true"></i>*/}
</a> {/*</a>*/}
<a href={item.url} {/*<a href={item.url}*/}
className="mr12" length="58"> {/*className="mr12" length="58">*/}
{item.title} {/*{item.title}*/}
</a> {/*</a>*/}
<span className="color-grey mt2 color-grey-6 font-12">{item.filesize}</span> {/*<span className="color-grey mt2 color-grey-6 font-12">{item.filesize}</span>*/}
</div> {/*</div>*/}
) {/*)*/}
})} {/*})}*/}
<AttachmentList {...this.props} {...this.state} attachments={questionslist&&questionslist.attachments}></AttachmentList>
</div> </div>
{questionslist&&questionslist.group_info?<div> {questionslist&&questionslist.group_info?<div>

Loading…
Cancel
Save