From 206342d8916bbbf7156aa6cb92c6c6209e69fd48 Mon Sep 17 00:00:00 2001 From: tangjiang <465264938@qq.com> Date: Thu, 9 Jan 2020 18:28:41 +0800 Subject: [PATCH 1/9] update quill --- public/react/src/common/quillForEditor/FillBlot.js | 9 +++++---- public/react/src/common/quillForEditor/index.js | 9 ++++++--- .../developer/newOrEditTask/leftpane/editorTab/index.js | 2 +- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/public/react/src/common/quillForEditor/FillBlot.js b/public/react/src/common/quillForEditor/FillBlot.js index 144b499ee..2f9414253 100644 --- a/public/react/src/common/quillForEditor/FillBlot.js +++ b/public/react/src/common/quillForEditor/FillBlot.js @@ -4,16 +4,17 @@ * @Github: * @Date: 2020-01-06 09:02:29 * @LastEditors : tangjiang - * @LastEditTime : 2020-01-09 11:58:52 + * @LastEditTime : 2020-01-09 15:00:13 */ import Quill from 'quill'; // let Inline = Quill.import('blots/inline'); -const BlockEmbed = Quill.import('blots/block/embed'); +const BlockEmbed = Quill.import('blots/embed'); class FillBlot extends BlockEmbed { static create (value) { - const node = super.cerate(); + const node = super.cerate(value); // node.classList.add('icon icon-bianji2'); // node.setAttribute('data-fill', 'fill'); + console.log('编辑器值===》》》》》', value); node.setAttribute('data_index', value.data_index); node.nodeValue = value.text; return node; @@ -28,7 +29,7 @@ class FillBlot extends BlockEmbed { } -FillBlot.blotName = "fill"; +FillBlot.blotName = "fill-blot"; FillBlot.tagName = "span"; export default FillBlot; diff --git a/public/react/src/common/quillForEditor/index.js b/public/react/src/common/quillForEditor/index.js index f892e9b8d..599bffa1f 100644 --- a/public/react/src/common/quillForEditor/index.js +++ b/public/react/src/common/quillForEditor/index.js @@ -4,7 +4,7 @@ * @Github: * @Date: 2019-12-18 08:49:30 * @LastEditors : tangjiang - * @LastEditTime : 2020-01-09 11:56:10 + * @LastEditTime : 2020-01-09 14:52:58 */ import './index.scss'; import 'quill/dist/quill.core.css'; // 核心样式 @@ -31,7 +31,9 @@ Quill.register(ImageBlot); Quill.register(Size); Quill.register(Font, true); // Quill.register({'modules/toolbar': Toolbar}); -Quill.register(FillBlot); +Quill.register({ + 'formats/fill': FillBlot +}); // Quill.register(Color); @@ -194,10 +196,11 @@ function QuillForEditor ({ }); _quill.getModule('toolbar').addHandler('fill', (e) => { + console.log('点击了填空=====>>>>>>', e); setFillCount(fillCount + 1); const range = _quill.getSelection(true); // _quill.insertText(range.index, '▁', { 'data_index': fillCount }); - _quill.insertEmbed(range.index, 'span', { + _quill.insertEmbed(range.index, 'fill', { text: '▁', 'data_index': fillCount }); diff --git a/public/react/src/modules/developer/newOrEditTask/leftpane/editorTab/index.js b/public/react/src/modules/developer/newOrEditTask/leftpane/editorTab/index.js index 349404dfd..b388156c8 100644 --- a/public/react/src/modules/developer/newOrEditTask/leftpane/editorTab/index.js +++ b/public/react/src/modules/developer/newOrEditTask/leftpane/editorTab/index.js @@ -4,7 +4,7 @@ * @Github: * @Date: 2019-11-20 10:35:40 * @LastEditors : tangjiang - * @LastEditTime : 2020-01-09 14:18:37 + * @LastEditTime : 2020-01-09 16:54:45 */ import './index.scss'; // import 'katex/dist/katex.css'; From 64092e52483e17b8567c8f3cbe85ecc0204fd247 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Fri, 10 Jan 2020 15:00:35 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/tpm/component/TPMRightSection.js | 4 +-- .../Challenges/Challengesjupyter.js | 29 +++++++++++++------ .../src/modules/tpm/shixuns/ShixunCard.js | 4 +-- 3 files changed, 24 insertions(+), 13 deletions(-) diff --git a/public/react/src/modules/tpm/component/TPMRightSection.js b/public/react/src/modules/tpm/component/TPMRightSection.js index e6dc1da98..2cfe0047a 100644 --- a/public/react/src/modules/tpm/component/TPMRightSection.js +++ b/public/react/src/modules/tpm/component/TPMRightSection.js @@ -64,7 +64,7 @@ class TPMRightSection extends Component { Progresssum=(parseInt(TPMRightSectionData&&TPMRightSectionData.complete_count) / parseInt(TPMRightSectionData&&TPMRightSectionData.challenge_count))*100; } - + // console.log(this.props&&this.props.is_jupyter===true) return (
- {this.state.isopentitletype==="Less"?"":this.state.opentitletype===true?this.opentitle()} className={"pointer Breadcrumbfont color-grey-9 "}> + + {this.props&&this.props.is_jupyter===true&&this.props&&this.props.user.user_identity==="学生"?"":this.state.isopentitletype==="Less"?"":this.state.opentitletype===true?this.opentitle()} className={"pointer Breadcrumbfont color-grey-9 "}> 阅读全文 :this.opentitle()} className={"pointer Breadcrumbfont color-grey-9 "}> 收起全文 diff --git a/public/react/src/modules/tpm/shixuns/ShixunCard.js b/public/react/src/modules/tpm/shixuns/ShixunCard.js index 5086dd14d..a292f4d87 100644 --- a/public/react/src/modules/tpm/shixuns/ShixunCard.js +++ b/public/react/src/modules/tpm/shixuns/ShixunCard.js @@ -193,11 +193,11 @@ class ShixunCard extends Component {

- + {item.is_jupyter===false? {item.challenges_count} - + :""} {/**/} {/**/} From 6f5ea589f48f8fc889ca2132568ec2fdc49b9511 Mon Sep 17 00:00:00 2001 From: tangjiang <465264938@qq.com> Date: Fri, 10 Jan 2020 15:06:43 +0800 Subject: [PATCH 3/9] update quill autofocus --- .../react/src/common/quillForEditor/index.js | 24 +++++++++---------- .../newOrEditTask/leftpane/editorTab/index.js | 3 ++- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/public/react/src/common/quillForEditor/index.js b/public/react/src/common/quillForEditor/index.js index 599bffa1f..525feba09 100644 --- a/public/react/src/common/quillForEditor/index.js +++ b/public/react/src/common/quillForEditor/index.js @@ -4,7 +4,7 @@ * @Github: * @Date: 2019-12-18 08:49:30 * @LastEditors : tangjiang - * @LastEditTime : 2020-01-09 14:52:58 + * @LastEditTime : 2020-01-10 15:05:27 */ import './index.scss'; import 'quill/dist/quill.core.css'; // 核心样式 @@ -40,7 +40,7 @@ Quill.register({ function QuillForEditor ({ placeholder, readOnly, - autoFocus, + autoFocus = false, options, value, imgAttrs = {}, // 指定图片的宽高 @@ -196,7 +196,7 @@ function QuillForEditor ({ }); _quill.getModule('toolbar').addHandler('fill', (e) => { - console.log('点击了填空=====>>>>>>', e); + // console.log('点击了填空=====>>>>>>', e); setFillCount(fillCount + 1); const range = _quill.getSelection(true); // _quill.insertText(range.index, '▁', { 'data_index': fillCount }); @@ -232,16 +232,21 @@ function QuillForEditor ({ } const current = value - // console.log('+++++', current); if (!deepEqual(previous, current)) { setSelection(quill.getSelection()) if (typeof value === 'string') { - quill.clipboard.dangerouslyPasteHTML(value, 'api') + quill.clipboard.dangerouslyPasteHTML(value, 'api'); + if (autoFocus) { + quill.focus(); + } else { + quill.blur(); + } } else { quill.setContents(value) + if (autoFocus) quill.focus(); } } - }, [quill, value, setQuill]); + }, [quill, value, setQuill, autoFocus]); // 清除选择区域 useEffect(() => { @@ -275,13 +280,6 @@ function QuillForEditor ({ } }, [quill, handleOnChange]); - useEffect(() => { - if (!quill) return; - if (autoFocus) { - quill.focus(); - } - }, [quill, autoFocus]); - // 返回结果 return (

diff --git a/public/react/src/modules/developer/newOrEditTask/leftpane/editorTab/index.js b/public/react/src/modules/developer/newOrEditTask/leftpane/editorTab/index.js index b388156c8..6fc264663 100644 --- a/public/react/src/modules/developer/newOrEditTask/leftpane/editorTab/index.js +++ b/public/react/src/modules/developer/newOrEditTask/leftpane/editorTab/index.js @@ -4,7 +4,7 @@ * @Github: * @Date: 2019-11-20 10:35:40 * @LastEditors : tangjiang - * @LastEditTime : 2020-01-09 16:54:45 + * @LastEditTime : 2020-01-10 15:06:23 */ import './index.scss'; // import 'katex/dist/katex.css'; @@ -453,6 +453,7 @@ class EditTab extends React.Component { colon={ false } > Date: Fri, 10 Jan 2020 15:34:22 +0800 Subject: [PATCH 4/9] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/images/educoder/xcx/SMIDCard.png | Bin 0 -> 7361 bytes public/images/educoder/xcx/ZYIDCard.png | Bin 0 -> 5539 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 public/images/educoder/xcx/SMIDCard.png create mode 100644 public/images/educoder/xcx/ZYIDCard.png diff --git a/public/images/educoder/xcx/SMIDCard.png b/public/images/educoder/xcx/SMIDCard.png new file mode 100644 index 0000000000000000000000000000000000000000..cea96596d10130744accaa84dcfab8b0ed87a1dc GIT binary patch literal 7361 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 literal 0 HcmV?d00001 diff --git a/public/images/educoder/xcx/ZYIDCard.png b/public/images/educoder/xcx/ZYIDCard.png new file mode 100644 index 0000000000000000000000000000000000000000..7f2085fce564fdcc67cd6392fd7e8063321db867 GIT binary patch literal 5539 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 Date: Fri, 10 Jan 2020 16:29:01 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/modules/courses/boards/TopicDetail.js | 1 + .../courses/common/comments/CommonReply.js | 1 + .../tasks/GraduationTaskssettingReply.js | 46 +++++++++---------- .../graduation/topics/GraduateTopicReply.js | 2 +- public/react/src/modules/forums/MemoDetail.js | 4 +- 5 files changed, 28 insertions(+), 26 deletions(-) diff --git a/public/react/src/modules/courses/boards/TopicDetail.js b/public/react/src/modules/courses/boards/TopicDetail.js index e8767fb87..f4df177c7 100644 --- a/public/react/src/modules/courses/boards/TopicDetail.js +++ b/public/react/src/modules/courses/boards/TopicDetail.js @@ -682,6 +682,7 @@ class TopicDetail extends Component {
{!isCourseEnd && } {/* onClick={ this.createNewComment } diff --git a/public/react/src/modules/courses/common/comments/CommonReply.js b/public/react/src/modules/courses/common/comments/CommonReply.js index 42ec3d65a..50f2b60cb 100644 --- a/public/react/src/modules/courses/common/comments/CommonReply.js +++ b/public/react/src/modules/courses/common/comments/CommonReply.js @@ -252,6 +252,7 @@ class CommonReply extends Component{ {/* bor-bottom-greyE */} diff --git a/public/react/src/modules/courses/graduation/tasks/GraduationTaskssettingReply.js b/public/react/src/modules/courses/graduation/tasks/GraduationTaskssettingReply.js index 4281d0ec6..ce0554488 100644 --- a/public/react/src/modules/courses/graduation/tasks/GraduationTaskssettingReply.js +++ b/public/react/src/modules/courses/graduation/tasks/GraduationTaskssettingReply.js @@ -18,7 +18,7 @@ import { generateComments, generateChildComments, _findById, handleContentBefore const REPLY_PAGE_COUNT = 10 const $ = window.$; -/* +/* 相比较GraduateTopicReply 改动的地方 列表接口名 /graduation_tasks/${graduation_topic_id}/show_comment.json?parent_id=${parent.id}&limit=500 回复类型名 jour_type: 'GraduationTask', @@ -34,7 +34,7 @@ class GraduationTaskssettingReply extends Component{ componentDidMount(){ this.fetchReplies() - + } _getUser() { const { current_user } = this.props; @@ -58,7 +58,7 @@ class GraduationTaskssettingReply extends Component{ // m_parent_id reply_id: memo.user_id } - } + } ).then((response) => { if (response.data.status === -1) { console.error('服务端异常') @@ -66,18 +66,18 @@ class GraduationTaskssettingReply extends Component{ } // this.props.showNotification('帖子发表成功') - if (response.data && response.data.id) { + if (response.data && response.data.id) { const _id = response.data.id; // md editor.setValue && editor.setValue('') - + const user = this._getUser(); this.setState({ comments: addNewComment(this.state.comments, _id, content, user, this.props.isSuperAdmin(), this), total_count: this.state.total_count + 1 }) this.refs.editor.showEditor(); - + } }).catch((error) => { console.log(error) @@ -95,13 +95,13 @@ class GraduationTaskssettingReply extends Component{ return; } const url = `/users/reply_message.json`; - + const { comments } = this.state; const user = this._getUser(); const graduation_topic_id = this.props.memo.id const commentIndex = this._findById(id, comments); let comment = comments[commentIndex]; - + commentContent = handleContentBeforeCreateSecondLevelComment(commentContent) axios.post(url, { journals_for_message: { @@ -113,9 +113,9 @@ class GraduationTaskssettingReply extends Component{ } }, { - } + } ).then((response) => { - if (response.data.id) { + if (response.data.id) { let newId = response.data.id; this.setState({ @@ -128,7 +128,7 @@ class GraduationTaskssettingReply extends Component{ memo: newMemo2 }) } - + }).catch((error) => { console.log(error) }) @@ -142,7 +142,7 @@ class GraduationTaskssettingReply extends Component{ }) .then((response) => { const { comments } = response.data - + // const memo = Object.assign({}, this.state.memo) // memo.sum_replies_count = sum_replies_count; @@ -160,7 +160,7 @@ class GraduationTaskssettingReply extends Component{ this.fetchReplies() }) } - + fetchReplies = () => { const graduation_topic_id = this.props.memo.id const course_id = this.props.course_id @@ -170,7 +170,7 @@ class GraduationTaskssettingReply extends Component{ }) .then((response) => { const { comments, messages_count } = response.data - + this.setState({ comments: generateComments(comments, this.transformReply), // : this.state.comments.concat(comments), @@ -180,7 +180,7 @@ class GraduationTaskssettingReply extends Component{ console.log(error) }) } - + transformReply = (reply, children = []) => { const isAdmin = this.props.isAdmin() const isSuperAdmin = this.props.isSuperAdmin() @@ -189,7 +189,7 @@ class GraduationTaskssettingReply extends Component{ isSuperAdmin: isSuperAdmin, permission: true, // children: children, - hidden: reply.hidden, + hidden: reply.hidden, id: reply.id, image_url: reply.author.image_url, reward: null, // @@ -235,7 +235,7 @@ class GraduationTaskssettingReply extends Component{ -
- - - {/* { true ? : + + + {/* { true ? :
写评论
} */}
- - { total_count > REPLY_PAGE_COUNT && + + { total_count > REPLY_PAGE_COUNT &&
写评论
diff --git a/public/react/src/modules/courses/graduation/topics/GraduateTopicReply.js b/public/react/src/modules/courses/graduation/topics/GraduateTopicReply.js index df6152c04..f08938b4e 100644 --- a/public/react/src/modules/courses/graduation/topics/GraduateTopicReply.js +++ b/public/react/src/modules/courses/graduation/topics/GraduateTopicReply.js @@ -226,7 +226,7 @@ class GraduateTopicReply extends Component{ return( -
{ window.__useKindEditor === true ? - + : - + } {/* onClick={ this.createNewComment } */} From 9417970f62fca11e382a1aef4ff1ebea65eb8465 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com> Date: Fri, 10 Jan 2020 16:32:14 +0800 Subject: [PATCH 6/9] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/react/src/common/educoder.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/react/src/common/educoder.js b/public/react/src/common/educoder.js index 9a19c6ee2..b0ef6d692 100644 --- a/public/react/src/common/educoder.js +++ b/public/react/src/common/educoder.js @@ -4,7 +4,7 @@ export { getImageUrl as getImageUrl, getRandomNumber as getRandomNumber,getUrl as getUrl, publicSearchs as publicSearchs,getRandomcode as getRandomcode,getUrlmys as getUrlmys, getUrl2 as getUrl2, setImagesUrl as setImagesUrl , getUploadActionUrl as getUploadActionUrl,getUploadActionUrltwo as getUploadActionUrltwo ,getUploadActionUrlthree as getUploadActionUrlthree, getUploadActionUrlOfAuth as getUploadActionUrlOfAuth - , getTaskUrlById as getTaskUrlById, TEST_HOST ,htmlEncode as htmlEncode } from './UrlTool'; + , getTaskUrlById as getTaskUrlById, TEST_HOST ,htmlEncode as htmlEncode ,getupload_git_file as getupload_git_file} from './UrlTool'; export {setmiyah as setmiyah} from './Component'; export { default as queryString } from './UrlTool2'; From 4d9c4e42927f0b5ee1ba938eff4695d90ae14256 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Fri, 10 Jan 2020 16:54:29 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/react/src/modules/forums/MemoDetailMDEditor.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/public/react/src/modules/forums/MemoDetailMDEditor.js b/public/react/src/modules/forums/MemoDetailMDEditor.js index 8076c5e6a..b8bcc47fb 100644 --- a/public/react/src/modules/forums/MemoDetailMDEditor.js +++ b/public/react/src/modules/forums/MemoDetailMDEditor.js @@ -75,7 +75,10 @@ class MemoDetailMDEditor extends Component { } onCommit = () => { - + if(this.props.checkIfLogin()===false){ + this.props.showLoginDialog() + return + } if(this.props.checkIfProfileCompleted()===false){ this.props.showhideAccountPhoneemailDialog() return From 59ed6bd1f669fbf45bbca158a8c22208e98db451 Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Fri, 10 Jan 2020 17:03:17 +0800 Subject: [PATCH 8/9] =?UTF-8?q?HTML=E5=AE=9E=E8=AE=AD=E8=B7=B3=E8=BF=87?= =?UTF-8?q?=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/myshixuns_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/myshixuns_controller.rb b/app/controllers/myshixuns_controller.rb index 7847d58ed..350ee581f 100644 --- a/app/controllers/myshixuns_controller.rb +++ b/app/controllers/myshixuns_controller.rb @@ -3,7 +3,7 @@ class MyshixunsController < ApplicationController before_action :find_myshixun, :except => [:training_task_status, :code_runinng_message] before_action :find_repo_name, :except => [:training_task_status, :code_runinng_message] skip_before_action :verify_authenticity_token, :only => [:html_content] - skip_before_action :check_sign, only: [:training_task_status, :code_runinng_message] + skip_before_action :check_sign, only: [:training_task_status, :code_runinng_message, :html_content] ## TPI关卡列表 def challenges From 9c4bd37ea2da0c67e8fb94495e32d25dc815fe09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Fri, 10 Jan 2020 17:38:02 +0800 Subject: [PATCH 9/9] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/react/src/modules/tpm/shixuns/ShixunCardList.js | 9 +++++---- public/react/src/modules/tpm/shixuns/ShixunsIndex.js | 8 +++++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/public/react/src/modules/tpm/shixuns/ShixunCardList.js b/public/react/src/modules/tpm/shixuns/ShixunCardList.js index 948bbed48..46abc5bf0 100644 --- a/public/react/src/modules/tpm/shixuns/ShixunCardList.js +++ b/public/react/src/modules/tpm/shixuns/ShixunCardList.js @@ -75,17 +75,18 @@ class ShixunCardList extends Component { type="new"; } + if(typekeyid===key){ if(upcircle===true){ this.setState({ upcircle:false, }) - this.props.Shixunsupcircles("desc") + // this.props.Shixunsupcircles("desc") }else if(upcircle===false){ this.setState({ upcircle:true, }) - this.props.Shixunsupcircles("asc") + // this.props.Shixunsupcircles("desc") } }else{ this.setState({ @@ -93,8 +94,8 @@ class ShixunCardList extends Component { }) } - //allevent - this.props.ShixunsState(false,type); + + this.props.ShixunsState(false,type,"desc"); } diff --git a/public/react/src/modules/tpm/shixuns/ShixunsIndex.js b/public/react/src/modules/tpm/shixuns/ShixunsIndex.js index f14afb0ac..82fa6a3f9 100644 --- a/public/react/src/modules/tpm/shixuns/ShixunsIndex.js +++ b/public/react/src/modules/tpm/shixuns/ShixunsIndex.js @@ -296,21 +296,23 @@ class ShixunsIndex extends Component { console.log(error) }); } - ShixunsState=(val,type)=>{ + ShixunsState=(val,type,sorts)=>{ // sort, let {tag_level, tag_id, page, limit, keyword, status, diff,sort} = this.state; - let newsort=sort; + let newsort=sorts?sorts:sort; this.setState({ order_by:type, typepvisible:true, pages:1, - // sort:sort + sort:sorts?sorts:sort }) let params // let vals=false if(newsort===undefined){ newsort="desc" + }else{ + newsort=sorts?sorts:sort } params= { order_by:type,