| @@ -1,6 +1,6 @@ | |||
| ## DedeV6 | |||
| 国内流行的内容管理系统(CMS)多端全媒体解决方案,DedeV6系统基于PHP7.X开发,同时兼容PHP8,具有很强的可扩展性,并且完全开放源代码DedeBIZ商业支持采用现流行的Go语言设计开发,让系统拥有简单易用、灵活扩展特性之外更安全、高效,模板设计制作简单一直是系统的一大特点,全新的版本延续了之前标签引擎,同时采用响应式模板引擎Bootstrap作为系统模板渲染引擎,让搭建跨终端(移动、PC)全媒体站点更简单。 | |||
| DedeBIZ系统基于PHP7版本开发,具有很强的可扩展性,并且完全开放源代码。DedeBIZ支持采用现流行的Go语言设计开发,拥有简单易用、灵活扩展特性之外更安全、高效。模板设计制作简单,一直是系统一大特点,延续之前标签,同时采用响应式模板引擎Bootstrap作为系统模板渲染引擎,让搭建跨终端和移动端全媒体站点更简单。 | |||
| ## 版本说明 | |||
| @@ -13,7 +13,7 @@ | |||
| * | |||
| * @access public | |||
| * @param string $selid 选择id | |||
| * @param string $userCatalog 用户类目 | |||
| * @param string $userCatalog 用户栏目 | |||
| * @param string $channeltype 栏目类型 | |||
| * @return string | |||
| */ | |||
| @@ -167,15 +167,8 @@ else if ($action == 'exarea') { | |||
| } | |||
| /*-------------------- | |||
| function __addenum_save() { } | |||
| 关于二级枚举的说明,为了节省查询速度,二级枚举是通过特殊算法生成的,原理为 | |||
| 凡是能被 500 整除的都是一级枚举,(500 * n) + 1 < em < 500 * (n+1) 为下级枚举 | |||
| 如:1000 的下级枚举对应的值为 1001,1002,10031499 | |||
| 对于 issign=1 的,表示这个类别只有一级枚举,则不受上面的算法限制 | |||
| ------------------------------------------------------------------------ | |||
| 更新算法: | |||
| 新增二级枚举下添加"-N"自己类别选择,例如: | |||
| 1001二级枚举下面的3级类目,则为1001-1,1001-2 | |||
| 这时候需要issign=2 | |||
| 关于二级枚举:为了节省查询速度,二级枚举是通过特殊算法生成的,原理为凡是能被500整除的都是一级枚举(500 * n) + 1 < em < 500 * (n+1)为下级枚举,如:1000的下级枚举对应的值为 1001,1002,10031499对于issign=1的,表示这个类别只有一级枚举,则不受上面的算法限制 | |||
| 更新算法:新增二级枚举下添加"-N"自己类别选择,例如:1001二级枚举下面的3级栏目,则为1001-1,1001-2这时候需要issign=2 | |||
| ---------------------*/ | |||
| else if ($action == 'addenum_save') { | |||
| if (empty($ename) || empty($egroup)) { | |||
| @@ -65,7 +65,7 @@ | |||
| <td width="6%">id</td> | |||
| <td width="30%">文档属性</td> | |||
| <td width="10%">时间</td> | |||
| <td width="14%">类目</td> | |||
| <td width="14%">栏目</td> | |||
| <td width="6%">点击</td> | |||
| <td width="6%">网页</td> | |||
| <td width="6%">权限</td> | |||
| @@ -72,7 +72,7 @@ | |||
| <td width="6%">id</td> | |||
| <td width="30%">文档标题</td> | |||
| <td width="10%">更新时间</td> | |||
| <td width="14%">类目</td> | |||
| <td width="14%">栏目</td> | |||
| <td width="6%">点击</td> | |||
| <td width="6%">网页</td> | |||
| <td width="6%">权限</td> | |||
| @@ -45,7 +45,7 @@ | |||
| <td width="6%">id</td> | |||
| <td width="30%">文档标题</td> | |||
| <td width="10%">更新时间</td> | |||
| <td width="14%">类目</td> | |||
| <td width="14%">栏目</td> | |||
| <td width="6%">点击</td> | |||
| <td width="6%">网页</td> | |||
| <td width="6%">权限</td> | |||
| @@ -73,7 +73,7 @@ | |||
| <td width="6%">id</td> | |||
| <td width="30%">文档标题</td> | |||
| <td width="10%">更新时间</td> | |||
| <td width="14%">类目</td> | |||
| <td width="14%">栏目</td> | |||
| <td width="6%">点击</td> | |||
| <td width="6%">网页</td> | |||
| <td width="6%">权限</td> | |||
| @@ -55,7 +55,7 @@ | |||
| <td width="6%">id</td> | |||
| <td width="30%">文档标题</td> | |||
| <td width="10%">更新时间</td> | |||
| <td width="14%">类目</td> | |||
| <td width="14%">栏目</td> | |||
| <td width="6%">点击</td> | |||
| <td width="6%">权限</td> | |||
| <td width="6%">发布人</td> | |||
| @@ -123,38 +123,49 @@ | |||
| <form name="feedback"> | |||
| <table cellpadding="0" cellspacing="0" align="center" class="table maintable mb-3"> | |||
| <tr> | |||
| <td colspan="6" bgcolor="#f5f5f5">评论管理</td> | |||
| <td colspan="8" bgcolor="#f5f5f5">评论管理</td> | |||
| </tr> | |||
| {dede:datalist empty='<tr><td colspan="6" align="center">暂无文档</td></tr>'} | |||
| <tr> | |||
| <td width="6%">选择 <input type="checkbox" name="fid" id="fid" value="{dede:field.id/}"></td> | |||
| <td width="10%">用户:{dede:field.username/} {dede:field.ischeck function="IsCheck(@me)"/}</td> | |||
| <td width="30%"> | |||
| <span>文档:<a href='feedback_main.php?aid={dede:field.aid/}'>{dede:field.arctitle function="RemoveXSS(@me)"/}</a></span> | |||
| <span>评论:{dede:field.msg function='cn_substr(Text2Html(@me),280)'/}</span> | |||
| <a href="archives_do.php?aid={dede:field.aid/}&dopost=viewArchives" target="_blank" class="btn btn-outline-success btn-sm">浏览</a> | |||
| <tr bgcolor="#e9ecef" align="center"> | |||
| <td width="6%">选择</td> | |||
| <td width="10%">名称</td> | |||
| <td width="20%">文档</td> | |||
| <td width="20%">评论</td> | |||
| <td width="10%">地址</td> | |||
| <td width="10%">时间</td> | |||
| <td width="10%">状态</td> | |||
| <td>操作</td> | |||
| </tr> | |||
| {dede:datalist empty='<tr><td colspan="8" align="center">暂无文档</td></tr>'} | |||
| <tr align="center"> | |||
| <td><input type="checkbox" name="fid" id="fid" value="{dede:field.id/}"></td> | |||
| <td align="left">{dede:field.username/}</td> | |||
| <td align="left"><a href="feedback_main.php?aid={dede:field.aid/}">{dede:field.arctitle function="RemoveXSS(@me)"/}</a></td> | |||
| <td align="left"> | |||
| {dede:field.msg function='cn_substr(Text2Html(@me),280)'/} | |||
| <?php if ($fields['replycount'] > 0) {?><a href='feedback_main.php?fid={dede:field.id/}'>{dede:field.replycount/}条回复</a><?php }?> | |||
| </td> | |||
| <td width="12%" align="center">地址:<a href='feedback_main.php?ip={dede:field.ip/}'>{dede:field.ip/}</a></td> | |||
| <td width="12%">时间:{dede:field.dtime function="GetDateTimeMK(@me)"/}</td> | |||
| <td align="center"> | |||
| <a class="btn btn-success btn-sm" href='feedback_edit.php?id={dede:field.id/}'>修改评论</a> | |||
| <a class="btn btn-success btn-sm" href='feedback_edit.php?id={dede:field.id/}&dopost=makehtml'>更新评论</a> | |||
| <td><a href='feedback_main.php?ip={dede:field.ip/}'>{dede:field.ip/}</a></td> | |||
| <td>{dede:field.dtime function="GetDateTimeMK(@me)"/}</td> | |||
| <td>{dede:field.ischeck function="IsCheck(@me)"/}</td> | |||
| <td align="left"> | |||
| <a href="feedback_edit.php?id={dede:field.id/}" class="btn btn-success btn-sm">修改</a> | |||
| <a href="feedback_edit.php?id={dede:field.id/}&dopost=makehtml" class="btn btn-success btn-sm">更新</a> | |||
| <a href="archives_do.php?aid={dede:field.aid/}&dopost=viewArchives" target="_blank" class="btn btn-success btn-sm">浏览</a> | |||
| </td> | |||
| </tr> | |||
| {/dede:datalist} | |||
| <tr> | |||
| <td colspan="6"> | |||
| <td colspan="8"> | |||
| <button type="button" name="kk1" onClick="selAll()" class="btn btn-success btn-sm">全选</button> | |||
| <button type="button" name="kk2" onClick="selNone()" class="btn btn-success btn-sm">取消</button> | |||
| <button type="button" name="kk3" onClick="selNor()" class="btn btn-success btn-sm">反选</button> | |||
| <button type="button" name="db" onClick="delFeedbackIP()" class="btn btn-danger btn-sm">删除所有相同地址评论</button> | |||
| <button type="button" name="db" onClick="delFeedback()" class="btn btn-danger btn-sm">删除评论</button> | |||
| <button type="button" name="db2" onClick="checkFeedback()" class="btn btn-success btn-sm">审核评论</button> | |||
| <button type="button" name="db" onClick="delFeedback()" class="btn btn-danger btn-sm">删除评论</button> | |||
| <button type="button" name="db" onClick="delFeedbackIP()" class="btn btn-danger btn-sm">删除所有相同地址评论</button> | |||
| </td> | |||
| </tr> | |||
| <tr> | |||
| <td colspan="6" bgcolor="#f5f5f5" align="center">{dede:pagelist listsize='6'/}</td> | |||
| <td colspan="8" bgcolor="#f5f5f5" align="center">{dede:pagelist listsize='6'/}</td> | |||
| </tr> | |||
| </table> | |||
| </form> | |||
| @@ -77,7 +77,7 @@ | |||
| <td width="6%">选择</td> | |||
| <td width="28%">文档标题</td> | |||
| <td width="10%">更新时间</td> | |||
| <td width="10%">类目</td> | |||
| <td width="10%">栏目</td> | |||
| <td width="6%">点击</td> | |||
| <td>操作</td> | |||
| </tr> | |||
| @@ -35,7 +35,7 @@ | |||
| <td width="30%" align="center">名称</td> | |||
| <td width="8%" align="center">等级</td> | |||
| <td width="14%" align="center">地址时间</td> | |||
| <td width="14%" align="center">类目</td> | |||
| <td width="14%" align="center">栏目</td> | |||
| <td align="center">操作</td> | |||
| </tr> | |||
| {dede:datalist empty='<tr><td colspan="6" align="center">暂无文档</td></tr>'} | |||
| @@ -261,7 +261,7 @@ class ListView | |||
| } | |||
| //创建封面模板文件 | |||
| if ($this->TypeLink->TypeInfos['isdefault'] == -1) { | |||
| echo '这个类目是动态类目'; | |||
| echo '这个栏目是动态栏目'; | |||
| return '../apps/list.php?tid='.$this->TypeLink->TypeInfos['id']; | |||
| } | |||
| //单独页面 | |||
| @@ -220,7 +220,7 @@ class SgListView | |||
| } | |||
| //创建封面模板文件 | |||
| if ($this->TypeLink->TypeInfos['isdefault'] == -1) { | |||
| echo '这个类目是动态类目'; | |||
| echo '这个栏目是动态栏目'; | |||
| return ''; | |||
| } | |||
| //单独页面 | |||
| @@ -141,7 +141,7 @@ function GetEnumsJs($egroup) | |||
| $jsCode = ""; | |||
| $jsCode .= "em_{$egroup}s=new Array();\r\n"; | |||
| foreach (${'em_'.$egroup.'s'} as $k => $v) { | |||
| //js中3级类目存放到第二个key中去 | |||
| //js中3级栏目存放到第二个key中去 | |||
| if (preg_match("#([0-9]{1,})\.([0-9]{1,})#", $k, $matchs)) { | |||
| $valKey = $matchs[1] + $matchs[2] / 1000; | |||
| $jsCode .= "em_{$egroup}s[{$valKey}]='$v';\r\n"; | |||
| @@ -184,7 +184,7 @@ if (!function_exists('GetFileName')) { | |||
| } | |||
| } | |||
| /** | |||
| * 获得指定类目的URL链接 | |||
| * 获得指定栏目的URL链接 | |||
| * 对于使用封面文件和单独页面的情况,强制使用默认页名称 | |||
| * | |||
| * @param int $typeid 栏目id | |||
| @@ -259,7 +259,7 @@ if (!function_exists('MagicVar')) { | |||
| } | |||
| } | |||
| /** | |||
| * 获取某个类目的所有上级栏目id | |||
| * 获取某个栏目的所有上级栏目id | |||
| * | |||
| * @param int $tid 栏目id | |||
| * @return string | |||
| @@ -309,7 +309,7 @@ if (!function_exists('IsParent')) { | |||
| } | |||
| } | |||
| /** | |||
| * 获取一个类目的顶级栏目id | |||
| * 获取一个栏目的顶级栏目id | |||
| * | |||
| * @param string $tid 栏目id | |||
| * @return string | |||
| @@ -16,10 +16,9 @@ if (!defined('DEDEINC')) exit('dedebiz'); | |||
| * @param string $uploadname 上传名称 | |||
| * @param string $ftype 文件类型 | |||
| * @param string $rnddd 后缀数字 | |||
| * @param bool $watermark 是否水印 | |||
| * @param string $filetype image、media、addon | |||
| * $file_type='' 对于swfupload上传的文件,因为没有filetype,所以需指定,并且有些特殊之处不同 | |||
| * @return int -1 没选定上传文件,0 文件类型不允许, -2 保存失败,其它:返回上传后的文件名 | |||
| * @param bool $watermark 是否水印 | |||
| * @param string $filetype image、media、addon $file_type='' 对于swfupload上传的文件,因为没有filetype,所以需指定,并且有些特殊之处不同 | |||
| * @return int -1没选定上传文件,0文件类型不允许, -2保存失败 | |||
| */ | |||
| if (!function_exists('AdminUpload')) { | |||
| function AdminUpload($uploadname, $ftype = 'image', $rnddd = 0, $watermark = TRUE, $filetype = '') | |||
| @@ -45,7 +45,7 @@ class TypeLink | |||
| $this->valuePositionName = ''; | |||
| $this->typeDir = ''; | |||
| $this->OptionArrayList = ''; | |||
| //载入类目信息 | |||
| //载入栏目信息 | |||
| $query = "SELECT tp.*,ch.typename as ctypename,ch.addtable,ch.issystem FROM `#@__arctype` tp LEFT JOIN `#@__channeltype` ch on ch.id=tp.channeltype WHERE tp.id='$typeid' "; | |||
| if ($typeid > 0) { | |||
| $this->TypeInfos = $this->dsql->GetOne($query); | |||
| @@ -74,12 +74,12 @@ class TypeLink | |||
| $this->valuePositionName = ""; | |||
| $this->typeDir = ""; | |||
| $this->OptionArrayList = ""; | |||
| //载入类目信息 | |||
| //载入栏目信息 | |||
| $query = "SELECT `#@__arctype`.*,`#@__channeltype`.typename as ctypename FROM `#@__arctype` LEFT JOIN `#@__channeltype` on `#@__channeltype`.id=`#@__arctype`.channeltype WHERE `#@__arctype`.id='$typeid'"; | |||
| $this->dsql->SetQuery($query); | |||
| $this->TypeInfos = $this->dsql->GetOne(); | |||
| } | |||
| //获得这个类目的路径 | |||
| //获得这个栏目的路径 | |||
| function GetTypeDir() | |||
| { | |||
| if (empty($this->TypeInfos['typedir'])) { | |||
| @@ -88,7 +88,7 @@ class TypeLink | |||
| return $this->TypeInfos['typedir']; | |||
| } | |||
| } | |||
| //获得某类目的链接列表 如:类目一>>类目二>> 这样的形式 | |||
| //获得某栏目的链接列表 如:栏目一>>栏目二>> 这样的形式 | |||
| //islink 表示返回的列表是否带连接 | |||
| function GetPositionLink($islink = true) | |||
| { | |||
| @@ -127,7 +127,7 @@ class TypeLink | |||
| { | |||
| return $this->GetPositionLink(false); | |||
| } | |||
| //获得某类目的链接列表,递归逻辑部分 | |||
| //获得某栏目的链接列表,递归逻辑部分 | |||
| function LogicGetPosition($id, $islink) | |||
| { | |||
| $this->dsql->SetQuery("SELECT id,reid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `#@__arctype` WHERE id='".$id."'"); | |||
| @@ -143,7 +143,7 @@ class TypeLink | |||
| return 0; | |||
| } | |||
| } | |||
| //获得某个类目的超链接信息 | |||
| //获得某个栏目的超链接信息 | |||
| function GetOneTypeLink($typeinfos) | |||
| { | |||
| $typepage = $this->GetOneTypeUrl($typeinfos); | |||
| @@ -166,9 +166,9 @@ class TypeLink | |||
| ); | |||
| } | |||
| //获得类别列表 | |||
| //hid是指默认选中类目,0表示“请选择类目”或“不限类目” | |||
| //oper是用户允许管理的类目,0表示所有类目 | |||
| //channeltype是指类目的文档类型,0表示不限栏目 | |||
| //hid是指默认选中栏目,0表示“请选择栏目”或“不限栏目” | |||
| //oper是用户允许管理的栏目,0表示所有栏目 | |||
| //channeltype是指栏目的文档类型,0表示不限栏目 | |||
| function GetOptionArray($hid = 0, $oper = 0, $channeltype = 0, $usersg = 0) | |||
| { | |||
| return $this->GetOptionList($hid, $oper, $channeltype, $usersg); | |||
| @@ -254,7 +254,7 @@ class TypeLink | |||
| } | |||
| } | |||
| /** | |||
| * 获得与该类相关的类目,本函数应用于模板标记{dede:channel}{/dede:channel}中 | |||
| * 获得与该类相关的栏目,本函数应用于模板标记{dede:channel}{/dede:channel}中 | |||
| * $typetype 的值为:sun下级分类 self同级分类 top顶级分类 | |||
| * | |||
| * @access public | |||
| @@ -72,7 +72,7 @@ class TypeUnit | |||
| } | |||
| } | |||
| /** | |||
| * 读出所有分类,在类目管理页(list_type)中使用 | |||
| * 读出所有分类,在栏目管理页list_type中使用 | |||
| * | |||
| * @access public | |||
| * @param int $channel 栏目id | |||
| @@ -162,7 +162,7 @@ class TypeUnit | |||
| } | |||
| } | |||
| /** | |||
| * 获得子类目的递归调用 | |||
| * 获得子栏目的递归调用 | |||
| * | |||
| * @access public | |||
| * @param int $id 栏目id | |||
| @@ -243,7 +243,7 @@ class TypeUnit | |||
| } | |||
| } | |||
| /** | |||
| * 返回与某个目相关的下级目录的栏目id列表删除类目或文档时调用 | |||
| * 返回与某个目相关的下级目录的栏目id列表删除栏目或文档时调用 | |||
| * | |||
| * @access public | |||
| * @param int $id 栏目id | |||
| @@ -270,7 +270,7 @@ class TypeUnit | |||
| return $this->idArray; | |||
| } | |||
| /** | |||
| * 删除类目 | |||
| * 删除栏目 | |||
| * | |||
| * @access public | |||
| * @param int $id 栏目id | |||
| @@ -54,7 +54,7 @@ class TypeUnit | |||
| { | |||
| } | |||
| /** | |||
| * 读出所有分类,在类目管理页(list_type)中使用 | |||
| * 读出所有分类,在栏目管理页list_type中使用 | |||
| * | |||
| * @access public | |||
| * @param int $channel 栏目id | |||
| @@ -116,7 +116,7 @@ class TypeUnit | |||
| } | |||
| } | |||
| /** | |||
| * 获得子类目的递归调用 | |||
| * 获得子栏目的递归调用 | |||
| * | |||
| * @access public | |||
| * @param int $id 栏目id | |||
| @@ -90,7 +90,7 @@ class TypeUnitSelector | |||
| } | |||
| } | |||
| /** | |||
| * 获得子类目的递归调用 | |||
| * 获得子栏目的递归调用 | |||
| * | |||
| * @access public | |||
| * @param int $id 栏目id | |||
| @@ -1,8 +1,9 @@ | |||
| {dede:comment text='文档评论模块'/} | |||
| <style>.feedbacks .face{width:40px;height:40px;border-radius:50%;border:solid 1px #ccc}.feedbacks .media{border-bottom:solid 1px #ccc;padding-top:10px}.feedbacks .feedback_replies .media{border-top:solid 1px #ccc;border-bottom:0}.feedbacks .media-body{padding:0 1rem 1rem 1rem}.feedbacks .media-body small{color:#999}.feedbacks .feedback-action{float:right}.feedbacks ._feedback_reply .alert{margin-bottom:0}@media only screen and (max-width:576px){.feedbacks .feedback-action{float:none}}</style> | |||
| <div class="comment py-3"> | |||
| <h4>发表评论</h4> | |||
| <div id="feedback-alert"></div> | |||
| <div class="content mb-3"><textarea cols="60" id="iptMsg" name="msg" rows="5" class="form-control" placeholder="说点什吗吧"></textarea></div> | |||
| <div class="content mb-3"><textarea cols="60" id="iptMsg" name="msg" rows="5" class="form-control" placeholder="请输入..."></textarea></div> | |||
| <div class="post mb-3"> | |||
| <div class="dcmp-userinfo" id="_ajax_feedback"> | |||
| <div class="form-group form-row"> | |||
| @@ -25,9 +26,7 @@ | |||
| </div> | |||
| </div> | |||
| </div> | |||
| <div class="dcmp-submit"> | |||
| <button class="btn btn-success" type="button" onClick='SendFeedback()'>发表评论</button> | |||
| </div> | |||
| <div class="dcmp-submit"><button class="btn btn-success" type="button" onClick='SendFeedback()'>发表评论</button></div> | |||
| </div> | |||
| <div class="feedbacks"> | |||
| {dede:feedback} | |||
| @@ -39,18 +38,18 @@ | |||
| <span class="feedback-basic"> | |||
| [field:username function="(@me=='guest' ? '游客' : @me)"/] | |||
| <small>[field:dtime function="MyDate('Y-m-d',@me)"/]</small> | |||
| <a href="javascript:ReplyFeedback([field:id/])">[回复]</a> <a href="javascript:LoadReplyFeedbacks([field:id/])">[field:replycount/]条回复</a> | |||
| <a href="javascript:LoadReplyFeedbacks([field:id/])">[field:replycount/]条回复</a> | |||
| <a href="javascript:ReplyFeedback([field:id/])" class="btn btn-success btn-sm">回复</a> | |||
| </span> | |||
| <div class="feedback-action"><a href="javascript:GoodFeedback([field:id/], [field:good/])"><span id="feedbackGood[field:id/]">[field:good/]</span><i class="fa fa-thumbs-up ml-1"></i></a></div> | |||
| </div> | |||
| <div class="_feedback_reply mt-2" for="[field:id/]"></div> | |||
| <div class="_feedback_reply my-2" for="[field:id/]"></div> | |||
| <div class="feedback_replies" for="[field:id/]"></div> | |||
| </div> | |||
| </div> | |||
| {/dede:feedback} | |||
| </div> | |||
| </div> | |||
| <style>.feedbacks .face{width:36px;height:36px;border-radius:50%;border:solid 1px #DDD}.feedbacks .media{border-bottom:solid 1px #DDD;padding-top:10px}.feedbacks .feedback_replies .media{border-top:solid 1px #DDD;border-bottom:0}.feedbacks .media-body{padding:0 1rem 1rem 1rem}.feedbacks .media-body small{color:#999}.feedbacks .feedback-action{float:right}.feedbacks .feedback-basic a,.feedbacks .feedback-action a{color:#F1813F;font-size:14px}.feedbacks ._feedback_reply .alert{margin-bottom:0}@media only screen and (max-width:576px){.feedbacks .feedback-action{float:none}}</style> | |||
| <script async> | |||
| //发表评论 | |||
| function SendFeedback() { | |||
| @@ -99,10 +98,10 @@ | |||
| } | |||
| //回复某个评论 | |||
| function ReplyFeedback(fid) { | |||
| let replyPannel = `<div class="form-group mt-2"> | |||
| let replyPannel = `<div class="form-group my-2"> | |||
| <div class="input-group"> | |||
| <input type="text" class="form-control iptReplyContent"> | |||
| <button class="btn btn-success btnSend" type="button" onClick='SendReplyFeedback(${fid})'>回复</button> | |||
| <button type="button" class="btn btn-success btnSend ml-2" onClick='SendReplyFeedback(${fid})'>评论</button> | |||
| </div> | |||
| </div>`; | |||
| $.get("{dede:global.cfg_cmsurl/}/user/api.php?format=json", function(data) { | |||
| @@ -110,7 +109,7 @@ | |||
| if (result.code !== 200) { | |||
| $(`._feedback_reply`).html(""); | |||
| ShowAlert(`._feedback_reply[for="${fid}"]`, | |||
| '回复需要登录会员中心,您可以<a href="{dede:global.cfg_cmsurl/}/user/login.php">[点击登录]</a>后再来回复', 'warning', 5000); | |||
| '回复需要登录会员中心,您可以<a href="{dede:global.cfg_cmsurl/}/user/login.php">点击登录</a>后再来回复', 'warning', 5000); | |||
| } else { | |||
| $(`._feedback_reply`).html(""); | |||
| $(`._feedback_reply[for="${fid}"]`).html(replyPannel); | |||
| @@ -1,21 +0,0 @@ | |||
| <?php | |||
| /** | |||
| * @version $id:ajax_feedback.php 8:38 2010年7月9日 tianya $ | |||
| * @package DedeBIZ.User | |||
| * @copyright Copyright (c) 2022 DedeBIZ.COM | |||
| * @license https://www.dedebiz.com/license | |||
| * @link https://www.dedebiz.com | |||
| */ | |||
| require_once(dirname(__FILE__).'/config.php'); | |||
| AjaxHead(); | |||
| if ($myurl == '') exit(''); | |||
| else { | |||
| $uid = $cfg_ml->M_LoginID; | |||
| $face = $cfg_ml->fields['face'] == '' ? $GLOBALS['cfg_memberurl'].'/images/nopic.gif' : $cfg_ml->fields['face']; | |||
| echo "用户名:{$cfg_ml->M_UserName} <input name='notuser' type='checkbox' id='notuser' value='1'> 匿名评论\r\n"; | |||
| if ($cfg_feedback_ck == 'Y') { | |||
| echo "验证码:<input name='validate' type='text' id='validate' size='10' class='form-control text-uppercase'>"; | |||
| echo "<img src='{$cfg_cmsurl}/apps/vdimgck.php' id='validateimg' onclick='this.src=this.src+'?'' alt='验证码' title='验证码' />\r\n"; | |||
| } | |||
| } | |||
| ?> | |||
| @@ -11,7 +11,6 @@ $cfg_NotPrintHead = 'Y'; | |||
| require_once(dirname(__FILE__)."/config.php"); | |||
| AjaxHead(); | |||
| $action = isset($action)? $action : ''; | |||
| if ($action === 'is_need_check_code') { | |||
| $isNeed = $cfg_ml->isNeedCheckCode($userid); | |||
| echo json_encode(array( | |||
| @@ -28,7 +27,7 @@ if ($action === 'is_need_check_code') { | |||
| if ($format === 'json') { | |||
| echo json_encode(array( | |||
| "code" => -1, | |||
| "msg" => "尚未登录", | |||
| "msg" => "未登录", | |||
| "data" => null, | |||
| )); | |||
| } else { | |||
| @@ -52,18 +51,5 @@ if ($action === 'is_need_check_code') { | |||
| )); | |||
| exit; | |||
| } | |||
| ?> | |||
| <div class="userinfo"> | |||
| <div class="welcome">您好:<?php echo $cfg_ml->M_UserName;?>,欢迎登录 </div> | |||
| <div class="userface"> | |||
| <a href="<?php echo $cfg_memberurl;?>/index.php"><img src="<?php echo $facepic;?>" width="52" height="52" /></a> | |||
| </div> | |||
| <div class="uclink"> | |||
| <a href="<?php echo $cfg_memberurl;?>/index.php">会员中心</a> | | |||
| <a href="<?php echo $cfg_memberurl;?>/edit_baseinfo.php">资料</a> | | |||
| <a href="<?php echo $cfg_memberurl;?>/index_do.php?fmdo=login&dopost=exit">退出登录</a> | |||
| </div> | |||
| </div> | |||
| <?php | |||
| } | |||
| ?> | |||