Commit be07cff2 authored by wangtao's avatar wangtao

接口修改

parent 22773a47
...@@ -117,6 +117,9 @@ class Cert extends AdminBase ...@@ -117,6 +117,9 @@ class Cert extends AdminBase
} }
$data = $this->cert->append(['starttimetxt','endtimetxt'])->where('id',$post['id'])->find(); $data = $this->cert->append(['starttimetxt','endtimetxt'])->where('id',$post['id'])->find();
$data->content = json_encode($data->content);
$catemodel = new CertCategory(); $catemodel = new CertCategory();
$categorydata = $catemodel->catetree(isset($data['cate_id']) ? $data['cate_id'] : 0); $categorydata = $catemodel->catetree(isset($data['cate_id']) ? $data['cate_id'] : 0);
$certtaglist = CertTag::where('is_del', 0)->select()->toArray(); $certtaglist = CertTag::where('is_del', 0)->select()->toArray();
......
...@@ -149,10 +149,56 @@ ...@@ -149,10 +149,56 @@
gid: 1, gid: 1,
data: str data: str
}); });
// PHP 内容输出
var phpContent = "<?= htmlspecialchars($data['content'], ENT_QUOTES, 'UTF-8') ?>";
phpContent = phpContent.replace('&quot;', '');
function removeLastDoubleQuote(str) {
const index = str.lastIndexOf('&quot;');
if (index !== -1) {
return str.slice(0, index) + str.slice(index + 6);
}
return str; // 没有双引号时返回原字符串
}
phpContent = removeLastDoubleQuote(phpContent);
console.log(phpContent);
// 高级解码函数
function decodePHPContent(encoded) {
try {
// 解码 JSON
let decoded = JSON.parse(encoded);
// 创建临时容器处理 PHP 标签
const tempDiv = document.createElement('div');
tempDiv.innerHTML = decoded;
// 查找所有代码块
const codeBlocks = tempDiv.querySelectorAll('pre[class*="brush:"]');
// 修复 PHP 标签
codeBlocks.forEach(pre => {
pre.innerHTML = pre.innerHTML
.replace(/&lt;\?php/g, '<?php')
.replace(/\?&gt;/g, '?>')
.replace(/&amp;/g, '&')
.replace(/&lt;/g, '<')
.replace(/&gt;/g, '>');
});
return tempDiv.innerHTML;
} catch (e) {
console.error('内容解码错误:', e);
return encoded; // 返回原始内容作为后备
}
}
var editorContent = decodePHPContent(phpContent);
var str = [{ var str = [{
"name": "content", "name": "content",
"title": "文章内容", "title": "文章内容",
"value": "{$data.content|default=''}", // "value": '{$data.content|default=""}',
"value": editorContent,
"type": "ueditor", "type": "ueditor",
"style": "height:500px", "style": "height:500px",
}]; }];
......
...@@ -19,7 +19,7 @@ class ShCourseClass extends BaseController ...@@ -19,7 +19,7 @@ class ShCourseClass extends BaseController
//添加课时 //添加课时
public function createCourseClass(Request $request) public function createCourseClass(Request $request)
{ {
$vo = (new ShCourseClassValidate())->goCheck(['cate_id', 'course_id', 'title', 'tv_file', 'tvtime']); $vo = (new ShCourseClassValidate())->goCheck(['cate_id', 'course_id', 'title', 'tv_file', 'content']);
if ($vo !== true) { if ($vo !== true) {
return $vo; return $vo;
} }
...@@ -34,13 +34,13 @@ class ShCourseClass extends BaseController ...@@ -34,13 +34,13 @@ class ShCourseClass extends BaseController
//编辑课时 //编辑课时
public function editCourseClass(Request $request) public function editCourseClass(Request $request)
{ {
$filed = ['cate_id', 'course_id', 'title', 'tv_file', 'tvtime', 'course_class_id','is_sk','sort']; $filed = ['cate_id', 'course_id', 'title', 'tv_file', 'content', 'course_class_id', 'is_sk', 'sort'];
$vo = (new ShCourseClassValidate())->goCheck($filed); $vo = (new ShCourseClassValidate())->goCheck($filed);
if ($vo !== true) { if ($vo !== true) {
return $vo; return $vo;
} }
$parm = $request->param(); $parm = $request->param();
$updatedata = $request->only($filed);; $updatedata = $request->only($filed);
unset($updatedata['course_class_id']); unset($updatedata['course_class_id']);
$result = ShCourseClassModel::where(['user_id' => $request->userId, 'id' => $parm['course_class_id']])->update($updatedata); $result = ShCourseClassModel::where(['user_id' => $request->userId, 'id' => $parm['course_class_id']])->update($updatedata);
ShCourse::where('id', $parm['course_id'])->update(['status' => 0]); //待提交 ShCourse::where('id', $parm['course_id'])->update(['status' => 0]); //待提交
...@@ -74,11 +74,11 @@ class ShCourseClass extends BaseController ...@@ -74,11 +74,11 @@ class ShCourseClass extends BaseController
if (isset($parm['is_sell']) && $parm['is_sell']) { if (isset($parm['is_sell']) && $parm['is_sell']) {
$map[] = ['is_sell', '=', $parm['is_sell']]; $map[] = ['is_sell', '=', $parm['is_sell']];
} }
if(isset($parm['cate_id']) && $parm['cate_id']){ if (isset($parm['cate_id']) && $parm['cate_id']) {
$map[] = ['cate_id', '=', $parm['cate_id']]; $map[] = ['cate_id', '=', $parm['cate_id']];
} }
if(isset($parm['course_id']) && $parm['course_id']){ if (isset($parm['course_id']) && $parm['course_id']) {
$map[] = ['course_id', '=', $parm['course_id']]; $map[] = ['course_id', '=', $parm['course_id']];
} }
$page = $request->param('page', 1); $page = $request->param('page', 1);
...@@ -87,7 +87,7 @@ class ShCourseClass extends BaseController ...@@ -87,7 +87,7 @@ class ShCourseClass extends BaseController
$list = ShCourseClassModel::where($where)->where($map) $list = ShCourseClassModel::where($where)->where($map)
->order('sort desc,createtime desc') ->order('sort desc,createtime desc')
->append(['course_class_cate','course_title']) ->append(['course_class_cate', 'course_title'])
->paginate([ ->paginate([
'page' => $page, 'page' => $page,
'list_rows' => $pageSize 'list_rows' => $pageSize
...@@ -121,7 +121,7 @@ class ShCourseClass extends BaseController ...@@ -121,7 +121,7 @@ class ShCourseClass extends BaseController
return $vo; return $vo;
} }
$parm = $request->param(); $parm = $request->param();
$info = ShCourseClassModel::find($parm['course_class_id'])->append(['tvfile', 'course_class_cate','course_title']); $info = ShCourseClassModel::find($parm['course_class_id'])->append(['tvfile', 'course_class_cate', 'course_title']);
return $this->returnMsg('操作成功', 1, $info); return $this->returnMsg('操作成功', 1, $info);
} }
......
...@@ -10,7 +10,8 @@ class ShCourseClassValidate extends BaseValidate ...@@ -10,7 +10,8 @@ class ShCourseClassValidate extends BaseValidate
'cate_id' => 'require', 'cate_id' => 'require',
'course_id' => 'require', 'course_id' => 'require',
'title' => 'require', 'title' => 'require',
'tv_file' => 'require', 'tv_file' => 'requireWithout:content',
'content' => 'requireWithout:tv_file',
'tvtime' => 'require', 'tvtime' => 'require',
'course_class_id' => 'require', 'course_class_id' => 'require',
'updateField' => 'require|in:sort,is_sell', 'updateField' => 'require|in:sort,is_sell',
...@@ -21,14 +22,13 @@ class ShCourseClassValidate extends BaseValidate ...@@ -21,14 +22,13 @@ class ShCourseClassValidate extends BaseValidate
'cate_id.require' => '请选择章节', 'cate_id.require' => '请选择章节',
'course_id.require' => '请选择课程', 'course_id.require' => '请选择课程',
'title.require' => '课时名称不能为空', 'title.require' => '课时名称不能为空',
'tv_file.require' => '请上传视频', 'tv_file.requireWithout' => '请上传视频或者图文',
'content.requireWithout' => '请上传视频或者图文',
'tvtime.require' => '视频长度不能为空', 'tvtime.require' => '视频长度不能为空',
'course_class_id.require' => '课时ID不能为空', 'course_class_id.require' => '课时ID不能为空',
'updateField.require' => '必填项不能为空', 'updateField.require' => '必填项不能为空',
'updateValue.require' => '必填项不能为空', 'updateValue.require' => '必填项不能为空',
'updateField.in' => '范围不合法', 'updateField.in' => '范围不合法',
]; ];
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment