diff --git a/app/services/subjects/copy_subject_service.rb b/app/services/subjects/copy_subject_service.rb index 4715a8bad..d0a1f34b8 100644 --- a/app/services/subjects/copy_subject_service.rb +++ b/app/services/subjects/copy_subject_service.rb @@ -60,7 +60,7 @@ class Subjects::CopySubjectService < ApplicationService shixun = stage_shixun.shixun to_shixun = Shixun.new to_shixun.attributes = shixun.attributes.dup.except('id', 'user_id', 'identifier', 'homepage_show', - 'use_scope', 'averge_star', 'myshixuns_count', 'challenges_count', "public") + 'use_scope', 'averge_star', 'myshixuns_count', 'challenges_count') to_shixun.identifier = Util::UUID.generate_identifier(Shixun, 8) to_shixun.user_id = user.id if laboratory diff --git a/app/views/layouts/cooperative.html.erb b/app/views/layouts/cooperative.html.erb index baa0c7565..b186c6245 100644 --- a/app/views/layouts/cooperative.html.erb +++ b/app/views/layouts/cooperative.html.erb @@ -1,7 +1,7 @@ - <%= current_laboratory.school&.name || 'EduCoder' %>-后台管理 + <%= current_laboratory.laboratory_setting&.name || 'EduCoder' %>-后台管理 diff --git a/public/react/src/AppConfig.js b/public/react/src/AppConfig.js index ec709135c..22a618141 100644 --- a/public/react/src/AppConfig.js +++ b/public/react/src/AppConfig.js @@ -12,6 +12,7 @@ const opens ="79e33abd4b6588941ab7622aed1e67e8"; let timestamp; let checkSubmitFlg = false; let message501=false; + broadcastChannelOnmessage('refreshPage', () => { window.location.reload() }) @@ -25,21 +26,11 @@ function locationurl(list){ } -function setCookier(){ - const _params = window.location.search; - if (_params) { - let _search = _params.split('?')[1]; - _search.split('&').forEach(item => { - console.log(item); - const _arr = item.split('='); - cookie.save('_educoder_session',_arr[0]); - cookie.save('autologin_trustie',_arr[1]); - }); - } -} + + // TODO 开发期多个身份切换 -let debugType ="" + let debugType ="" if (isDev) { const _search = window.location.search; let parsed = {}; @@ -56,69 +47,71 @@ if (isDev) { //debugType="teacher"; // 学生 //debugType="student"; + + + + + +function clearAllCookie() { + cookie.remove('_educoder_session', {path: '/'}); + cookie.remove('autologin_trustie', {path: '/'}); + setpostcookie() +} +clearAllCookie(); function setpostcookie() { - try { - const str =window.location.pathname; - let newdomain=".educoder.net" - if(window.location.origin==="https://www.educoder.net"){ - newdomain=".educoder.net"; - }else{ + const str =window.location.pathname; + console.log(str.indexOf("/wxcode")) + let newdomain=".educoder.net" + if(str.indexOf("/wxcode") !== -1){ + console.log("123") + cookie.remove('_educoder_session', {path: '/'}); + cookie.remove('autologin_trustie', {path: '/'}); + // console.log("开始重写cookis"); + const _params = window.location.search; + // console.log("1111"); + if (_params) { + // console.log("22222"); + let _search = _params.split('?')[1]; + let _educoder_sessions= _search.split('&')[0].split('='); + cookie.save('_educoder_session',_educoder_sessions[1], { domain:'.educoder.net', path: '/'}); + let autologin_trusties=_search.split('&')[1].split('='); + cookie.save('autologin_trustie',autologin_trusties[1], { domain:'.educoder.net', path: '/'}); - newdomain="test-newweb.educoder.net"; } - if(str.indexOf("/wxcode") !== -1){ - // console.log("开始重写cookis"); - const _params = window.location.search; - // console.log("1111"); - if (_params) { - // console.log("22222"); - let _search = _params.split('?')[1]; - _search.split('&').forEach(item => { - const _arr = item.split('='); - if(_arr[0]==='_educoder_session'){ - console.log(newdomain) - cookie.save('_educoder_session',_arr[1],{ path: '/' }); - cookie.save('_educoder_session',_arr[1], { domain: newdomain, path: '/'}); - - }else{ - console.log(newdomain) - cookie.save('autologin_trustie',_arr[1],{ path: '/' }); - cookie.save('autologin_trustie',_arr[1], { domain: newdomain, path: '/'}); - } - }); - } - } - }catch (e) { - } } +setpostcookie(); function railsgettimes(proxy) { - if(timestamp&&checkSubmitFlg===false){ - $.ajax({url:proxy,async:false,success:function(data){ - if(data.status===0){ - timestamp=data.message; - setpostcookie(); - } - }}) - checkSubmitFlg=true - window.setTimeout(function () { - checkSubmitFlg=false; - }, 2000); - }else if(checkSubmitFlg===false){ - $.ajax({url:proxy,async:false,success:function(data){ - if(data.status===0){ - timestamp=data.message; - setpostcookie(); - } - }}) - checkSubmitFlg=true - window.setTimeout(function () { - checkSubmitFlg=false; - }, 2000); - } + + clearAllCookie() + + if(timestamp&&checkSubmitFlg===false){ + $.ajax({url:proxy,async:false,success:function(data){ + if(data.status===0){ + timestamp=data.message; + setpostcookie(); + } + }}) + checkSubmitFlg=true + window.setTimeout(()=>{ + checkSubmitFlg=false; + }, 2000); + }else if(checkSubmitFlg===false){ + $.ajax({url:proxy,async:false,success:function(data){ + if(data.status===0){ + timestamp=data.message; + setpostcookie(); + } + }}) + checkSubmitFlg=true + window.setTimeout( ()=>{ + checkSubmitFlg=false; + }, 2000); + } + } @@ -157,6 +150,8 @@ export function initAxiosInterceptors(props) { //响应前的设置 axios.interceptors.request.use( config => { + setpostcookie() + clearAllCookie() // config.headers['Content-Type']= 'no-cache' // if (token) { // 每次发送请求之前判断是否存在token,如果存在,则统一在http请求的header都加上token,不用每次请求都手动添加了 // config.headers.Authorization = token; @@ -259,6 +254,7 @@ export function initAxiosInterceptors(props) { config.url = `${config.url}&randomcode=${timestamp}&client_key=${newopens}`; } } + setpostcookie(); } // // console.log(config); @@ -285,6 +281,7 @@ export function initAxiosInterceptors(props) { }); axios.interceptors.response.use(function (response) { + // console.log(".............") if(response===undefined){ return @@ -386,7 +383,7 @@ export function initAxiosInterceptors(props) { // } requestMap[response.config.url] = false; - + setpostcookie(); return response; }, function (error) { return Promise.reject(error); diff --git a/public/react/src/modules/paths/statics/index.js b/public/react/src/modules/paths/statics/index.js index 37cc44df3..46689311d 100644 --- a/public/react/src/modules/paths/statics/index.js +++ b/public/react/src/modules/paths/statics/index.js @@ -1,7 +1,7 @@ /* * @Description: 实践课程统计页面 * @Author: tangjiang - * @Github: + * @Github: * @Date: 2020-01-10 09:33:45 * @LastEditors : tangjiang * @LastEditTime : 2020-01-14 17:01:32 @@ -25,7 +25,7 @@ const App = (props) => { changeParams, initTotal } = props; - // const [datas, setDatas] = useState([]); + // const [datas, setDatas] = useState([]); // const [sortedInfo, setSortedInfo] = useState({}); // console.log(props); const {pathId} = props.match.params; @@ -212,15 +212,15 @@ const App = (props) => { pathId && staticList(pathId); } - const { - study_count, - course_study_count, - initiative_study, - passed_count, - course_used_count, - school_used_count - } = subject_info; - + // const { + // study_count, + // course_study_count, + // initiative_study, + // passed_count, + // course_used_count, + // school_used_count + // } = subject_info; + const maps = { 1: 'subject_info', // 实践课程使用情况 2: 'shixun_info', // 实训使用情况 @@ -251,32 +251,32 @@ const App = (props) => {
- - - - - @@ -285,32 +285,32 @@ const App = (props) => {
- - - - -
+ +
@@ -321,7 +321,7 @@ const mapStateToProps = (state) => { const { staticReducer: {subject_info, other_info, total} } = state; return { subject_info, - other_info, + other_info, total } }; diff --git a/public/react/src/modules/tpm/TPMBanner.js b/public/react/src/modules/tpm/TPMBanner.js index 137a68a66..9ba752827 100644 --- a/public/react/src/modules/tpm/TPMBanner.js +++ b/public/react/src/modules/tpm/TPMBanner.js @@ -863,7 +863,7 @@ class TPMBanner extends Component { }; // // console.log(this.props.shixunsDetails&&this.props.shixunsDetails.is_jupyter) - + // console.log(this.state) return ( @@ -1256,7 +1256,7 @@ class TPMBanner extends Component { {this.state.Senttothevcaluetype === true ?
请选择你要发送的课堂
: ""}
12 ? "block" : "none"}}>
diff --git a/public/react/src/services/wxcodeService.js b/public/react/src/services/wxcodeService.js index 3b281bee0..84bd6cfa3 100644 --- a/public/react/src/services/wxcodeService.js +++ b/public/react/src/services/wxcodeService.js @@ -12,19 +12,19 @@ import cookie from 'react-cookies' const setCookier = () => { - const _params = window.location.search; - if (_params) { - let _search = _params.split('?')[1]; - _search.split('&').forEach(item => { - // console.log(item); - const _arr = item.split('='); - cookie.remove(_arr[0], { - path: '/', - domain: '.educoder.net' - }); - cookie.save(_arr[0], _arr[1], { domain: '.educoder.net', path: '/'}); - }); - } + // const _params = window.location.search; + // if (_params) { + // let _search = _params.split('?')[1]; + // _search.split('&').forEach(item => { + // // console.log(item); + // const _arr = item.split('='); + // cookie.remove(_arr[0], { + // path: '/', + // domain: '.educoder.net' + // }); + // cookie.save(_arr[0], _arr[1], { domain: '.educoder.net', path: '/'}); + // }); + // } } // 获取代码块