Browse Source

增加DedeBIZ商业服务支持

tags/6.0.0
tianya 3 years ago
parent
commit
d911e48805
10 changed files with 293 additions and 60 deletions
  1. +20
    -5
      src/dede/index_body.php
  2. +57
    -5
      src/dede/templets/index_body.htm
  3. +3
    -0
      src/include/common.inc.php
  4. +139
    -0
      src/include/dedebiz.class.php
  5. +1
    -0
      src/member/content_list.php
  6. +1
    -0
      src/member/pm.php
  7. +1
    -0
      src/member/reg_new.php
  8. +30
    -24
      src/member/templets/content_list.htm
  9. +37
    -26
      src/member/templets/content_sg_list.htm
  10. +4
    -0
      src/static/css/member.css

+ 20
- 5
src/dede/index_body.php View File

@@ -35,7 +35,8 @@ if (empty($dopost)) {
/*-----------------------
增加新项
function _AddNew() { }
-------------------------*/ else if ($dopost == 'addnew') {
-------------------------*/
else if ($dopost == 'addnew') {
if (empty($link) || empty($title)) {
ShowMsg("链接网址或标题不能为空!", "-1");
exit();
@@ -61,7 +62,8 @@ function _AddNew() { }
/*---------------------------
保存修改的项
function _EditSave() { }
----------------------------*/ else if ($dopost == 'editsave') {
----------------------------*/
else if ($dopost == 'editsave') {
$quickmenu = stripslashes($quickmenu);
$myIcoFileTrue = DEDEDATA . '/admin/quickmenu-' . $cuserLogin->getUserID() . '.txt';
@@ -75,7 +77,8 @@ function _EditSave() { }
/*---------------------------
保存修改的项
function _EditSave() { }
----------------------------*/ else if ($dopost == 'movesave') {
----------------------------*/
else if ($dopost == 'movesave') {
$movedata = str_replace('\\', "", $sortorder);
$movedata = json_decode($movedata, TRUE);
$movedata = serialize($movedata);
@@ -87,7 +90,8 @@ function _EditSave() { }
/*-----------------------------
显示修改表单
function _EditShow() { }
-----------------------------*/ else if ($dopost == 'editshow') {
-----------------------------*/
else if ($dopost == 'editshow') {
$fp = fopen($myIcoFile, 'r');
$oldct = trim(fread($fp, filesize($myIcoFile)));
fclose($fp);
@@ -131,7 +135,8 @@ function _EditShow() { }
/*---------------------------------
载入右边内容
function _getRightSide() { }
---------------------------------*/ else if ($dopost == 'getRightSide') {
---------------------------------*/
else if ($dopost == 'getRightSide') {
$query = " SELECT COUNT(*) AS dd FROM `#@__member` ";
$row1 = $dsql->GetOne($query);
$query = " SELECT COUNT(*) AS dd FROM `#@__feedback` ";
@@ -225,5 +230,15 @@ function _getRightSide() { }
} elseif ($dopost == 'get_seo') {
// 直接采用DedeBIZ重写方法
exit;
} elseif ($dopost == "system_info") {
$client = new DedeBizClient('127.0.0.1', 8181);
$client->appid = "1008665";
$client->key = "I04NcaYUCmRukRDE";
$rs = $client->SystemInfo();
if ($rs->code === 200) {
echo $rs->data;
exit;
}
$client->Close();
}
?>

+ 57
- 5
src/dede/templets/index_body.htm View File

@@ -80,12 +80,11 @@
<div class="col-md-6 mt-3">
<div class="card">
<div class="card-header">
商业授权查询
Dede商业服务
</div>
<!--/.card-header-->
<div class="card-body">
<iframe name="showauth" src="index_body.php?dopost=showauth" width="100%" frameborder="0"
scrolling="no" marginwidth="10" marginheight="10" id="showauth"></iframe>
<div class="card-body" id="_systeminfo">
正在载入中...
</div>
<!--/.card-body-->
</div>
@@ -339,7 +338,7 @@
<br style='clear:both' />
<!-- //底部 -->
<div align="center" class="footer">
Copyright &copy; 2004-2020 <a href='http://www.dedecms.com' target='_blank'><u>DedeCMS</u></a>. 织梦科技 版权所有 <a
Copyright &copy; 2004-2020 <a href='http://www.dedecms.com' target='_blank'><u>DedeCMS</u></a>. 版权所有 <a
href="https://www.dedebiz.com" target="_blank" title="DedeBiz商业技术支持,提供更专业强大的站点应用开发技术">DedeBiz技术支持</a>
</div>
@@ -395,6 +394,59 @@
</form>
</div>
</div>
<?php
if (defined('DEDEBIZ')) {
?>
<script>
$(document).ready(function () {
setInterval(function(){
$.get("index_body.php?dopost=system_info", function (data) {
let rsp = JSON.parse(data);
if (rsp.code === 200) {
$("#_systeminfo").html(`
<table width="100%" class="table table-borderless">
<tbody><tr>
<td width="50%" class="nline" style="text-align:left"> 会员数: </td>
<td class="nline" style="text-align:left"> 5 </td>
</tr>
<tr>
<td class="nline" style="text-align:left"> 运行时间: </td>
<td class="nline" style="text-align:left"> ${rsp.result.server_run_time} </td>
</tr>
<tr>
<td class="nline" style="text-align:left"> 系统: </td>
<td class="nline" style="text-align:left"> ${rsp.result.server_goos} </td>
</tr>
<tr>
<td class="nline" style="text-align:left"> 环境: </td>
<td class="nline" style="text-align:left"> ${rsp.result.server_goarch} </td>
</tr>
<tr>
<td class="nline" style="text-align:left"> 版本号: </td>
<td class="nline" style="text-align:left"> v${rsp.result.server_version} </td>
</tr>
<tr>
<td class="nline" style="text-align:left"> 内存使用: </td>
<td class="nline" style="text-align:left">
<div class="progress-bar bg-success" role="progressbar" style="width: ${rsp.result.server_memory_usage}%;" aria-valuenow="${rsp.result.server_memory_usage}" aria-valuemin="0" aria-valuemax="100">${rsp.result.server_memory_usage}%</div>
</td>
</tr>
</tbody></table>
`);
} else {
$("#_systeminfo").html(`尚未启动Dede商业站点服务,<a class="btn btn-danger">去开启</a>`);
}
})
}, 5000)
});
</script>
<?php
}
?>
</body>
</html>

+ 3
- 0
src/include/common.inc.php View File

@@ -338,6 +338,9 @@ require_once(DEDEINC.'/common.func.php');
require_once(DEDEINC.'/control.class.php');
require_once(DEDEINC.'/model.class.php');

//全局常用函数
require_once(DEDEINC.'/dedebiz.class.php');

//载入小助手配置,并对其进行默认初始化
if(file_exists(DEDEDATA.'/helper.inc.php'))
{


+ 139
- 0
src/include/dedebiz.class.php View File

@@ -0,0 +1,139 @@
<?php if(!defined('DEDEINC')) exit('Request Error!');
// Copyright 2020 The DedeBiz Authors. All rights reserved.
// license that can be found in the LICENSE file.

// 本文件为DedeCMS商业组件(www.dedebiz.com)PHP SDK
// 目的是弥补织梦内容管理系统(DedeCMS)性能和安全方面的不足,提供更多功能

define("DEDEBIZ", true);

// 本文件用于和DedeBiz商业组件进行通信,以获取更多额外的扩展功能
class DedeBizClient
{
var $socket;
var $appid;
var $key;

function __construct($ipaddr, $port)
{
if (!function_exists("socket_create")) {
echo json_encode(array(
"code" => -1,
"data" => null,
"msg" => "请在php.ini开启extension=sockets",
));
exit;
}
$this->socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
$rs = @socket_connect($this->socket, $ipaddr, $port);
if (!$rs) {
echo json_encode(array(
"code" => -1,
"data" => null,
"msg" => "连接DedeBiz商业组件服务失败\r\n",
));
exit;
}
}

function request(&$req){
// 进行签名
$this->MakeSign($req);
$str = json_encode($req);
$length = strlen($str);
$s = socket_write($this->socket, $str, $length);

if (!$s) {
echo json_encode(array(
"code" => -1,
"data" => null,
"msg" => "连接DedeBiz商业组件服务失败\r\n",
));
exit;
}

$msg = "";
while(($str = socket_read($this->socket, 1024)) !== FALSE){
$msg .= $str;
if (strlen($str) < 1024) {
break;
}
}
return $this->CheckSign($msg);
}

// 用户获取当前服务器状态信息
function SystemInfo(){
$req = array(
"method" => "system_info",
);
return $this->request($req);
}

// 检测是否连接
function Ping($i)
{
$req = array(
"method" => "ping",
"parms" => array(
"name" => "www.dedebiz.com",
)
);
return $this->request($req);
}

// 获取一个管理员信息
function AdminGetOne()
{
$req = array(
"method" => "admin_get_one",
"parms" => array(
"name" => "admin",
)
);
return $this->request($req);
}

// 拼接规则就是method+
function MakeSign(&$req)
{
if (empty($req['timestamp'])) {
$req['timestamp'] = time();
}
if (isset($req['parms']) && count($req['parms']) > 0) {
ksort($req['parms']);
}
$pstr = "appid={$this->appid}method={$req['method']}key={$this->key}";
if (isset($req['parms']) && count($req['parms']) > 0) {
foreach ($req['parms'] as $key => $value) {
$pstr .= "$key=$value";
}
}

$pstr .= "timestamp={$req['timestamp']}";
$req['sign'] = hash("sha256", $pstr);
}

// 校验返回数据是否正确
function CheckSign(&$msg)
{
$rsp = json_decode($msg);
if (!is_object($rsp)) {
return null;
}
$str = sprintf("appid=%skey=%scode=%dmsg=%sdata=%stimestamp=%d", $this->appid, $this->key, $rsp->code, $rsp->msg, $rsp->data, $rsp->timestamp);
if (hash("sha256", $str) === $rsp->sign) {
return $rsp;
} else {
return null;
}
}

// 关闭通信接口
// !!!一次页面操作后一定记得要关闭连接,否则会占用系统资源
function Close()
{
socket_close($this->socket);
}
}

+ 1
- 0
src/member/content_list.php View File

@@ -6,6 +6,7 @@
* @version $Id: content_list.php 1 13:52 2010年7月9日Z tianya $
* @package DedeCMS.Member
* @copyright Copyright (c) 2007 - 2020, DesDev, Inc.
* @copyright Copyright (c) 2020, DedeBIZ.COM
* @license http://help.dedecms.com/usersguide/license.html
* @link http://www.dedecms.com
*/


+ 1
- 0
src/member/pm.php View File

@@ -5,6 +5,7 @@
* @version $Id: pm.php 1 8:38 2010年7月9日Z tianya $
* @package DedeCMS.Member
* @copyright Copyright (c) 2007 - 2020, DesDev, Inc.
* @copyright Copyright (c) 2020, DedeBIZ.COM
* @license http://help.dedecms.com/usersguide/license.html
* @link http://www.dedecms.com
*/


+ 1
- 0
src/member/reg_new.php View File

@@ -4,6 +4,7 @@
* @version $Id: reg_new.php 1 8:38 2010年7月9日Z tianya $
* @package DedeCMS.Member
* @copyright Copyright (c) 2007 - 2020, DesDev, Inc.
* @copyright Copyright (c) 2020, DedeBIZ.COM
* @license http://help.dedecms.com/usersguide/license.html
* @link http://www.dedecms.com
*/


+ 30
- 24
src/member/templets/content_list.htm View File

@@ -11,14 +11,14 @@
<link rel="stylesheet" href="<?php echo $cfg_cmsurl;?>/static/css/member.css">
<title>文档管理 - 会员中心 - <?php echo $cfg_webname; ?></title>
<script type="text/javascript">
function viewArc(aid){
window.open("{dede:global.cfg_phpurl /}/view.php?aid="+aid);
function viewArc(aid) {
window.open("{dede:global.cfg_phpurl /}/view.php?aid=" + aid);
}
function editArc(aid,channelid){
location = "archives_do.php?dopost=edit&channelid="+channelid+"&aid="+aid;
function editArc(aid, channelid) {
location = "archives_do.php?dopost=edit&channelid=" + channelid + "&aid=" + aid;
}
function delArc(aid){
if(window.confirm('你确定要删除这篇文档吗?')) location="archives_do.php?aid="+aid+"&dopost=delArc";
function delArc(aid) {
if (window.confirm('你确定要删除这篇文档吗?')) location = "archives_do.php?aid=" + aid + "&dopost=delArc";
}
</script>
</head>
@@ -38,24 +38,30 @@
<?php include(DEDEMEMBER."/templets/menu.htm"); ?>
<div class="pannel-main col-md-9 mt-3 mb-3">
<div class="pannel-main-container">
<ul class="nav mt-2">
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='')? ' active' : '';?>"
href="content_list.php?channelid=<?php echo $channelid;?>">全部</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='1')? ' active' : '';?>"
href="content_list.php?channelid=<?php echo $channelid;?>&arcrank=1">已审核</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='-1')? ' active' : '';?>"
href="content_list.php?channelid=<?php echo $channelid;?>&arcrank=-1">未审核</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='-2')? ' active' : '';?>"
href="content_list.php?channelid=<?php echo $channelid;?>&arcrank=-2">被退回</a>
</li>
</ul>
<nav class="navbar navbar-expand-lg">
<ul class="navbar-nav mr-auto mt-2">
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='')? ' active' : '';?>"
href="content_list.php?channelid=<?php echo $channelid;?>">全部</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='1')? ' active' : '';?>"
href="content_list.php?channelid=<?php echo $channelid;?>&arcrank=1">已审核</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='-1')? ' active' : '';?>"
href="content_list.php?channelid=<?php echo $channelid;?>&arcrank=-1">未审核</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='-2')? ' active' : '';?>"
href="content_list.php?channelid=<?php echo $channelid;?>&arcrank=-2">被退回</a>
</li>
</ul>
<span class="navbar-text">
<a href="archives_do.php?dopost=addArc&channelid=<?php echo $channelid;?>"
class="btn btn-success btn-sm">添加内容</a>
</span>
</nav>
<div class="table-responsive">
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="table">
<thead>


+ 37
- 26
src/member/templets/content_sg_list.htm View File

@@ -11,14 +11,14 @@
<link rel="stylesheet" href="<?php echo $cfg_cmsurl;?>/static/css/member.css">
<title>文档管理 - 会员中心 - <?php echo $cfg_webname; ?></title>
<script type="text/javascript">
function viewArc(aid){
window.open("{dede:global.cfg_phpurl /}/view.php?aid="+aid);
function viewArc(aid) {
window.open("{dede:global.cfg_phpurl /}/view.php?aid=" + aid);
}
function editArc(aid,channelid){
location = "archives_do.php?dopost=edit&channelid="+channelid+"&aid="+aid;
function editArc(aid, channelid) {
location = "archives_do.php?dopost=edit&channelid=" + channelid + "&aid=" + aid;
}
function delArc(aid){
if(window.confirm('你确定要删除这篇文档吗?')) location="archives_do.php?aid="+aid+"&dopost=delArc";
function delArc(aid) {
if (window.confirm('你确定要删除这篇文档吗?')) location = "archives_do.php?aid=" + aid + "&dopost=delArc";
}
</script>
</head>
@@ -38,24 +38,30 @@
<?php include(DEDEMEMBER."/templets/menu.htm"); ?>
<div class="pannel-main col-md-9 mt-3 mb-3">
<div class="pannel-main-container">
<ul class="nav mt-2">
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='')? ' active' : '';?>"
href="content_sg_list.php?channelid=<?php echo $channelid;?>">全部</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='1')? ' active' : '';?>"
href="content_sg_list.php?channelid=<?php echo $channelid;?>&arcrank=1">已审核</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='-1')? ' active' : '';?>"
href="content_sg_list.php?channelid=<?php echo $channelid;?>&arcrank=-1">未审核</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='-2')? ' active' : '';?>"
href="content_sg_list.php?channelid=<?php echo $channelid;?>&arcrank=-2">被退回</a>
</li>
</ul>
<nav class="navbar navbar-expand-lg">
<ul class="navbar-nav mr-auto mt-2">
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='')? ' active' : '';?>"
href="content_sg_list.php?channelid=<?php echo $channelid;?>">全部</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='1')? ' active' : '';?>"
href="content_sg_list.php?channelid=<?php echo $channelid;?>&arcrank=1">已审核</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='-1')? ' active' : '';?>"
href="content_sg_list.php?channelid=<?php echo $channelid;?>&arcrank=-1">未审核</a>
</li>
<li class="nav-item">
<a class="nav-link<?php echo ($arcrank=='-2')? ' active' : '';?>"
href="content_sg_list.php?channelid=<?php echo $channelid;?>&arcrank=-2">被退回</a>
</li>
</ul>
<span class="navbar-text">
<a href="archives_do.php?dopost=addArc&channelid=<?php echo $channelid;?>"
class="btn btn-success btn-sm">添加内容</a>
</span>
</nav>
<div class="table-responsive">
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="table">
<thead>
@@ -71,7 +77,9 @@
<tbody>
{dede:datalist}
<tr>
<td class="tabTitle"><a href='<?php echo $cfg_phpurl; ?>/view.php?aid=<?php echo $fields['aid']; ?>' target='_blank'><?php echo $fields['title']; ?></a> </td>
<td class="tabTitle"><a
href='<?php echo $cfg_phpurl; ?>/view.php?aid=<?php echo $fields['aid']; ?>'
target='_blank'><?php echo $fields['title']; ?></a> </td>
<td align="center"><?php echo $fields['typename']; ?></td>
<td align="center"><?php
if($fields['arcrank']>=0) echo "已审核";
@@ -81,7 +89,10 @@
<td align="center"><?php echo $fields['click']; ?></td>
<td align="center"><?php echo GetDateMk($fields['senddate']); ?></td>
<td align="center" class="doPost">
<a href="javascript:editArc(<?php echo $fields['aid']?>,<?php echo $fields['channel']?>);">修改</a> | <a href="javascript:delArc(<?php echo $fields['aid']?>);">删除</a> | <a href="javascript:viewArc(<?php echo $fields['aid']; ?>);">预览</a>
<a
href="javascript:editArc(<?php echo $fields['aid']?>,<?php echo $fields['channel']?>);">修改</a>
| <a href="javascript:delArc(<?php echo $fields['aid']?>);">删除</a> | <a
href="javascript:viewArc(<?php echo $fields['aid']; ?>);">预览</a>
</td>
</tr>
{/dede:datalist}


+ 4
- 0
src/static/css/member.css View File

@@ -88,6 +88,10 @@ main.member {
background-color: #F3F3F3;
}

.member a.btn-success {
color: white;
}

.member .pannel .dropdown {
display: inline-block;
margin-left: .255em;


Loading…
Cancel
Save