2 lines
23 KiB
PHP
Executable File
2 lines
23 KiB
PHP
Executable File
<?php /*a:2:{s:68:"/www/wwwroot/app.cxhxy.dev.1nww.com/app/admin/view/wechat/menus.html";i:1700552721;s:69:"/www/wwwroot/app.cxhxy.dev.1nww.com/app/admin/view/layout/layout.html";i:1700552721;}*/ ?>
|
||
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||
<title>管理后台 - <?php echo htmlentities($web['name']); ?></title>
|
||
<meta name="author" content="<?php echo htmlentities($web['name']); ?>">
|
||
<meta name="keywords" content="<?php echo htmlentities($web['keywords']); ?>">
|
||
<meta name="description" content="<?php echo htmlentities($web['description']); ?>">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||
<meta name="referrer" content="no-referrer-when-downgrade">
|
||
<meta http-equiv="Cache-Control" content="no-siteapp" />
|
||
<link rel="icon" type="image/png" href="/favicon.png" />
|
||
<link rel="stylesheet" href="/assets/plugins/amazeui/amazeui.css?v=<?php echo htmlentities($version); ?>" />
|
||
<link rel="stylesheet" href="/assets/css/hema.app.css?v=<?php echo htmlentities($version); ?>" />
|
||
<link rel="stylesheet" href="/addons/upload/css/file.library.css?v=<?php echo htmlentities($version); ?>" />
|
||
<link rel="stylesheet" href="/assets/plugins/iconfont/iconfont.css?v=<?php echo htmlentities($version); ?>">
|
||
<script src="/assets/plugins/jquery/jquery.min.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script src="/assets/plugins/iconfont/iconfont.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script>
|
||
BASE_URL = '<?php echo isset($base_url) ? $base_url : ''; ?>';
|
||
STORE_URL = '<?php echo isset($store_url) ? $store_url : ''; ?>';
|
||
APPLET_ID = '<?php echo isset($applet_id) ? $applet_id : 0; ?>';
|
||
</script>
|
||
</head>
|
||
<body data-type="">
|
||
<div class="am-g tpl-g">
|
||
<!-- 头部 -->
|
||
<header class="tpl-header">
|
||
<!-- 右侧内容 -->
|
||
<div class="tpl-header-fluid">
|
||
<!-- 侧边切换 -->
|
||
<div class="am-fl tpl-header-button switch-button"> <i class="iconfont iconzhedie"></i> </div>
|
||
<!-- 刷新页面 -->
|
||
<div class="am-fl tpl-header-button refresh-button"> <i class="iconfont iconshuaxin"></i> </div>
|
||
<!-- 其它功能-->
|
||
<div class="am-fr tpl-header-navbar">
|
||
<ul>
|
||
<!-- 当前版本 -->
|
||
<li class="am-text-sm">
|
||
<a href="javascript:void(0);" class="hemaphp-upgrade">
|
||
<small style="color:#ccc;">版本:V<?php echo htmlentities($version); ?></small>
|
||
<?php if($is_new): ?>
|
||
<div class="news"></div>
|
||
<?php endif; ?>
|
||
</a>
|
||
</li>
|
||
<!-- 欢迎语 -->
|
||
<li class="am-text-sm">
|
||
<div class="am-dropdown" data-am-dropdown="{boundary: '.am-topbar'}">
|
||
<div class="am-topbar-btn am-dropdown-toggle" data-am-dropdown-toggle>
|
||
<img src="/assets/img/avatar.png" />
|
||
<?php echo htmlentities((isset($user['user']['user_name']) && ($user['user']['user_name'] !== '')?$user['user']['user_name']:'')); ?>
|
||
<span class="am-icon-caret-down"></span>
|
||
</div>
|
||
<ul class="am-dropdown-content">
|
||
<li><a href="<?php echo url('passport/renew'); ?>">修改密码</a></li>
|
||
<li><a href="<?php echo url('passport/logout'); ?>">安全退出</a></li>
|
||
</ul>
|
||
</div>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</header> <!-- 侧边导航栏 -->
|
||
<div class="left-sidebar dis-flex">
|
||
<?php $menus = $menus ?: []; $group = $group ?: 0; $second = isset($menus[$group]['submenu']) ? $menus[$group]['submenu'] : []?>
|
||
<!-- 一级菜单 -->
|
||
<ul class="sidebar-nav">
|
||
<li class="sidebar-nav-heading">管理后台</li> <?php foreach($menus as $key=>$item): ?> <li
|
||
class="sidebar-nav-link"> <a
|
||
href="<?php echo isset($item['index']) ? url($item['index']) : 'javascript:void(0);'; ?>"
|
||
class="<?php echo !empty($item['active']) ? 'active' : ''; ?>"> <?php if((isset($item['is_svg']) && ($item['is_svg'] == true))): ?>
|
||
<svg class="icon sidebar-nav-link-logo" aria-hidden="true">
|
||
<use xlink:href="#<?php echo htmlentities($item['icon']); ?>"></use>
|
||
</svg> <?php else: ?> <i class="iconfont sidebar-nav-link-logo <?php echo htmlentities($item['icon']); ?>"
|
||
style="{isset($item.color) ? 'color:'.$item.color.';' : '' }"></i> <?php endif; ?> <?php echo htmlentities($item['name']); ?>
|
||
</a> </li> <?php endforeach; ?>
|
||
</ul> <!-- 子级菜单--> <?php if((sizeof($second) > 0)): ?> <ul class="left-sidebar-second">
|
||
<li class="sidebar-second-title"><?php echo htmlentities($menus[$group]['name']); ?></li>
|
||
<li class="sidebar-second-item"> <?php foreach($second as $key=>$item): if((!isset($item['submenu']))): ?>
|
||
<!-- 二级菜单--> <a href="<?php echo url($item['index']); ?>" class="<?php echo !empty($item['active']) ? 'active' : ''; ?>">
|
||
<?php echo htmlentities($item['name']); ?> </a> <?php else: ?>
|
||
<!-- 三级菜单-->
|
||
<div class="sidebar-third-item"> <a href="javascript:void(0);"
|
||
class="sidebar-nav-sub-title <?php echo !empty($item['active']) ? 'active' : ''; ?>"> <i
|
||
class="iconfont icongengduo"></i> <?php echo htmlentities($item['name']); ?> </a>
|
||
<ul class="sidebar-third-nav-sub"> <?php foreach($item['submenu'] as $third): ?> <li> <a
|
||
class="<?php echo !empty($third['active']) ? 'active' : ''; ?>" href="<?php echo url($third['index']); ?>">
|
||
<?php echo htmlentities($third['name']); ?> </a> </li> <?php endforeach; ?> </ul>
|
||
</div> <?php endif; ?> <?php endforeach; ?>
|
||
</li>
|
||
</ul> <?php endif; ?>
|
||
</div> <!-- 内容区域 start -->
|
||
<div class="tpl-content-wrapper <?php echo sizeof($second) == 0 ? 'no-sidebar-second' : ''; ?>"> <link rel="stylesheet" href="/assets/css/hema.diy.css?v=<?php echo htmlentities($version); ?>">
|
||
|
||
<div id="app" class="row-content am-cf">
|
||
|
||
<div class="row">
|
||
<div class="am-u-sm-12 am-u-md-12 am-u-lg-12">
|
||
<div class="widget am-cf">
|
||
<div class="widget-head am-cf">
|
||
|
||
<div class="widget-title am-fl">微信公众号菜单设置</div>
|
||
|
||
</div>
|
||
<?php if($wechat AND $wechat['status']['value'] == 1): ?>
|
||
<div class="widget-body">
|
||
<fieldset>
|
||
<!-- diy 工作区 -->
|
||
|
||
<div class="work-diy dis-flex flex-x-between">
|
||
|
||
<!-- 视图区 -->
|
||
|
||
<div class="wechat am-u-sm-2 am-u-md-2 am-u-lg-2">
|
||
|
||
<div class="mobile-header">公众号</div>
|
||
|
||
<section class="view-body">
|
||
|
||
<div class="time-wrapper"><span class="time">9:36</span></div>
|
||
|
||
</section>
|
||
|
||
<div class="menu-footer">
|
||
|
||
<ul class="flex">
|
||
|
||
<li v-for="(menu, index) in menus" :class="{active:menu === checkedMenu}">
|
||
|
||
<span @click="activeMenu(menu,index,null)"><i class="icon-sub"></i>{{ menu.name || '一级菜单' }}</span>
|
||
|
||
<div class="sub-menu">
|
||
|
||
<ul v-if="menu.sub_button">
|
||
|
||
<li v-for="(child, cindex) in menu.sub_button" :class="{active:child === checkedMenu}">
|
||
|
||
<span @click="activeMenu(child,cindex,index)">{{ child.name || '二级菜单' }}</span>
|
||
|
||
</li>
|
||
|
||
<li v-if="menu.sub_button.length < 5" @click="addChild(menu,index)"><i class="iconfont icontianjia"></i></li>
|
||
|
||
</ul>
|
||
|
||
<ul v-else>
|
||
|
||
<li @click="addChild(menu,index)"><i class="iconfont icontianjia"></i></li>
|
||
|
||
</ul>
|
||
|
||
</div>
|
||
|
||
</li>
|
||
|
||
<li v-if="menus.length < 3" @click="addMenu()"><i class="iconfont icontianjia"></i></li>
|
||
|
||
</ul>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<!-- 编辑区 -->
|
||
|
||
<div class="form-horizontal am-form tpl-form-line-form" v-show="checkedMenuId !== null">
|
||
|
||
<div class="wechat-editor">
|
||
|
||
<div class="editor-title">
|
||
|
||
<span>菜单设置</span>
|
||
|
||
<a class="fr" href="javascript:void(0);" @click="delMenu">删除</a>
|
||
|
||
</div>
|
||
|
||
<div class="am-form-group">
|
||
|
||
<label class="am-u-sm-3 am-form-label am-text-xs form-require">菜单名称 </label>
|
||
|
||
<div class="am-u-sm-8 am-u-end">
|
||
|
||
<input class="tpl-form-input" type="text" placeholder="请输入菜单名称" v-model="checkedMenu.name">
|
||
|
||
<div class="help-block am-margin-top-xs">
|
||
|
||
<small>字数不超过13个汉字或40个字母</small>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<div class="am-form-group">
|
||
|
||
<label class="am-u-sm-3 am-form-label am-text-xs form-require">规则状态 </label>
|
||
|
||
<div class="am-u-sm-8 am-u-end">
|
||
|
||
<select name="" id="" v-model="checkedMenu.type">
|
||
|
||
<option value="click">关键字</option>
|
||
|
||
<option value="view">跳转网页</option>
|
||
|
||
<option value="miniprogram">小程序</option>
|
||
|
||
<option v-if="parentMenuId == null" value="">无动作</option>
|
||
|
||
<!--
|
||
|
||
<option value="feat">事件功能</option>
|
||
|
||
<option value="text">文字消息</option>
|
||
|
||
-->
|
||
|
||
</select>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<!-- 关键字 -->
|
||
|
||
<div class="keywords item am-form-group" :class="{show:checkedMenu.type=='click'}">
|
||
|
||
<label class="am-u-sm-3 am-form-label am-text-xs form-require">关键字 </label>
|
||
|
||
<div class="am-u-sm-8 am-u-end">
|
||
|
||
<input type="text" placeholder="请输入关键字" class="tpl-form-input" v-model="checkedMenu.key">
|
||
|
||
<div class="help-block am-margin-top-xs">
|
||
|
||
<small>根据关键字可返回事先设置的回复内容</small>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<!-- 跳转地址 -->
|
||
|
||
<div class="url item am-form-group" :class="{show:checkedMenu.type=='view'}">
|
||
|
||
<label class="am-u-sm-3 am-form-label am-text-xs form-require">跳转链接 </label>
|
||
|
||
<div class="am-u-sm-8 am-u-end">
|
||
|
||
<input type="text" class="tpl-form-input" v-model="checkedMenu.url" placeholder="请输入跳转链接">
|
||
|
||
<div class="help-block am-margin-top-xs">
|
||
|
||
<small>链接格式:http://baidu.com/xxx/abc.html</small>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<!-- 小程序 -->
|
||
|
||
<div class="wrchat-app item am-form-group" :class="{show:checkedMenu.type=='miniprogram'}">
|
||
|
||
<label class="am-u-sm-3 am-form-label am-text-xs form-require">APPID </label>
|
||
|
||
<div class="am-u-sm-8 am-u-end">
|
||
|
||
<input type="text" placeholder="请输入小程序APPID" class="tpl-form-input" v-model="checkedMenu.appid">
|
||
|
||
<div class="help-block am-margin-top-xs">
|
||
|
||
<small>必须是公众号所绑定的小程序</small>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<label class="am-u-sm-3 am-form-label am-text-xs form-require">备用网页URL </label>
|
||
|
||
<div class="am-u-sm-8 am-u-end">
|
||
|
||
<input type="text" placeholder="请输入备用网页URL" class="tpl-form-input" v-model="checkedMenu.url">
|
||
|
||
<div class="help-block am-margin-top-xs">
|
||
|
||
<small>小程序不能正常打开时,可转向此链接。</small>
|
||
|
||
</div>
|
||
|
||
<div class="help-block am-margin-top-xs">
|
||
|
||
<small>链接格式:http://baidu.com/xxx/abc.html</small>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<label class="am-u-sm-3 am-form-label am-text-xs form-require">小程序路径 </label>
|
||
|
||
<div class="am-u-sm-8 am-u-end">
|
||
|
||
<input type="text" placeholder="请输入小程序路径" class="tpl-form-input" v-model="checkedMenu.pagepath">
|
||
|
||
<div class="help-block am-margin-top-xs">
|
||
|
||
<small>例如:pages/index/index </small>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<!-- 多客服 -->
|
||
|
||
<div class="service item am-form-group">
|
||
|
||
<label class="am-u-sm-3 am-form-label am-text-xs">回复内容 </label>
|
||
|
||
<div class="am-u-sm-8 am-u-end">
|
||
|
||
<textarea cols="60" rows="10"></textarea>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<!-- 文字消息 -->
|
||
|
||
<?php /* <div class="text-box item" :class="{show:checkedMenu.type=='text'}">
|
||
|
||
<p>回复内容</p>
|
||
|
||
<textarea v-model="checkedMenu.content" cols="60" rows="10" placeholder="请输入回复内容"></textarea>
|
||
|
||
</div> */ ?>
|
||
|
||
<!-- 事件功能 -->
|
||
|
||
<?php /* <div class="feat-select item" :class="{show:type=='feat'}">
|
||
|
||
<div class="radio i-checks" style="display:block">
|
||
|
||
<label class="" style="padding-left: 0;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;">
|
||
|
||
<input checked="checked" type="radio" value="2" name="feat" style="position: absolute; opacity: 0;"></div>
|
||
|
||
</div>
|
||
|
||
<i></i>扫码推事件
|
||
|
||
</label>
|
||
|
||
</div>
|
||
|
||
<div class="radio i-checks" style="display:block">
|
||
|
||
<label class="" style="padding-left: 0;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;"><input type="radio" value="2" name="feat" style="position: absolute; opacity: 0;"></div>
|
||
|
||
</div>
|
||
|
||
<i></i>扫码推事件且弹出“消息接收中”提示框
|
||
|
||
</label>
|
||
|
||
</div>
|
||
|
||
<div class="radio i-checks" style="display:block">
|
||
|
||
<label class="" style="padding-left: 0;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;"><input type="radio" value="2" name="feat" style="position: absolute; opacity: 0;"></div>
|
||
|
||
</div>
|
||
|
||
<i></i>弹出系统拍照发图
|
||
|
||
</label>
|
||
|
||
</div>
|
||
|
||
<div class="radio i-checks" style="display:block">
|
||
|
||
<label class="" style="padding-left: 0;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;"><input type="radio" value="2" name="feat" style="position: absolute; opacity: 0;"></div>
|
||
|
||
</div>
|
||
|
||
<i></i>弹出拍照或者相册发图
|
||
|
||
</label>
|
||
|
||
</div>
|
||
|
||
<div class="radio i-checks" style="display:block">
|
||
|
||
<label class="" style="padding-left: 0;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;"><input type="radio" value="2" name="feat" style="position: absolute; opacity: 0;"></div>
|
||
|
||
</div>
|
||
|
||
<i></i>弹出微信相册发图器
|
||
|
||
</label>
|
||
|
||
</div>
|
||
|
||
<div class="radio i-checks" style="display:block">
|
||
|
||
<label class="" style="padding-left: 0;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;">
|
||
|
||
<div class="iradio_square-green" style="position: relative;"><input type="radio" value="2" name="feat" style="position: absolute; opacity: 0;"></div>
|
||
|
||
</div>
|
||
|
||
<i></i>弹出地理位置选择器
|
||
|
||
</label>
|
||
|
||
</div>
|
||
|
||
</div> */ ?>
|
||
|
||
<div class="am-modal am-modal-loading am-modal-no-btn" tabindex="-1" id="my-modal-loading"></div>
|
||
|
||
<!-- 表单提交按钮 -->
|
||
|
||
<div class="am-form-group">
|
||
|
||
<div class="am-u-sm-5 am-u-sm-push-5 am-margin-top-lg">
|
||
|
||
<button class="am-btn am-btn-secondary" @click.stop="onSubmit" type="button">保存</button>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
</fieldset>
|
||
|
||
</div>
|
||
<?php else: ?>
|
||
|
||
<div class="tips am-margin-bottom-sm am-u-sm-12">
|
||
|
||
<div class="pre-error">未绑定授权公众号</div>
|
||
|
||
</div>
|
||
|
||
<?php endif; ?>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<script src="/assets/js/hema.menu.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
|
||
<script>
|
||
|
||
|
||
|
||
$(function () {
|
||
|
||
// 渲染diy页面
|
||
|
||
new diyPhone(<?= $model?>);
|
||
|
||
});
|
||
|
||
</script>
|
||
|
||
|
||
|
||
</div>
|
||
<!-- 内容区域 end -->
|
||
<div class="am-modal am-modal-loading am-modal-no-btn" tabindex="-1" id="addons-loading"></div>
|
||
</div>
|
||
<script src="/assets/plugins/vue/vue.min.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script src="/assets/plugins/layer/layer.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script src="/assets/plugins/jquery/jquery.form.min.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script src="/assets/plugins/amazeui/amazeui.min.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script src="/assets/js/hema.app.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script src="/assets/js/webuploader.html5only.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script src="/assets/js/art-template.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script src="/addons/upload/js/file.library.js?v=<?php echo htmlentities($version); ?>"></script>
|
||
<script>
|
||
$(function() {
|
||
// 状态操作
|
||
$('.hemaphp-upgrade').click(function () {
|
||
var is_new = '<?php echo htmlentities($is_new); ?>';
|
||
if(is_new){
|
||
layer.confirm('您确定要进行升级?', {
|
||
title: '友情提示',
|
||
icon: 0,
|
||
btn:['取消','确定'],
|
||
skin: 'layui-layer-hema',
|
||
cancel : function(){
|
||
// 你点击右上角 X 回调
|
||
},
|
||
btn1:function(index,layero){
|
||
layer.close(index);
|
||
},
|
||
btn2:function(index){
|
||
$("#addons-loading").html('<div class="am-modal-dialog"><div class="am-modal-hd">系统升级中,请等待...</div><div class="am-modal-bd"><span class="am-icon-spinner am-icon-spin"></span></div></div>');
|
||
$("#addons-loading").modal('open');
|
||
$.post('/admin/addon/hemaphpUpgrade', {}, function (result) {
|
||
$("#addons-loading").modal('close');
|
||
if(typeof(result) == 'string'){
|
||
result = JSON.parse(result);
|
||
}
|
||
result.code === 1 ? $.show_success(result.msg, result.url) : $.show_error(result.msg);
|
||
});
|
||
layer.close(index);
|
||
},
|
||
end:function() {
|
||
//所有操作都会执行
|
||
}
|
||
});
|
||
return true;
|
||
}
|
||
$.show_error('已是最新版本');
|
||
});
|
||
});
|
||
</script>
|
||
</body>
|
||
</html>
|