493 lines
27 KiB
HTML
493 lines
27 KiB
HTML
<!DOCTYPE html>
|
|
<!--[if IE 9]> <html class="ie9 no-focus" lang="zh"> <![endif]-->
|
|
<!--[if gt IE 9]><!--> <html class="no-focus" lang="zh"> <!--<![endif]-->
|
|
<head>
|
|
<meta charset="utf-8">
|
|
|
|
{block name="page-title"}<title>{$page_title|default='后台'} | {:config('web_site_title')} - DolphinPHP</title>{/block}
|
|
|
|
<meta name="description" content="{:config('web_site_description')}">
|
|
<meta name="author" content="caiweiming">
|
|
<meta name="robots" content="noindex, nofollow">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
|
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0,user-scalable=0">
|
|
|
|
<!-- Icons -->
|
|
<!-- The following icons can be replaced with your own, they are used by desktop and mobile browsers -->
|
|
<link rel="shortcut icon" href="__ADMIN_IMG__/favicons/favicon.ico">
|
|
|
|
<link rel="icon" type="image/png" href="__ADMIN_IMG__/favicons/favicon-16x16.png" sizes="16x16">
|
|
<link rel="icon" type="image/png" href="__ADMIN_IMG__/favicons/favicon-32x32.png" sizes="32x32">
|
|
<link rel="icon" type="image/png" href="__ADMIN_IMG__/favicons/favicon-96x96.png" sizes="96x96">
|
|
<link rel="icon" type="image/png" href="__ADMIN_IMG__/favicons/favicon-160x160.png" sizes="160x160">
|
|
<link rel="icon" type="image/png" href="__ADMIN_IMG__/favicons/favicon-192x192.png" sizes="192x192">
|
|
|
|
<link rel="apple-touch-icon" sizes="57x57" href="__ADMIN_IMG__/favicons/apple-touch-icon-57x57.png">
|
|
<link rel="apple-touch-icon" sizes="60x60" href="__ADMIN_IMG__/favicons/apple-touch-icon-60x60.png">
|
|
<link rel="apple-touch-icon" sizes="72x72" href="__ADMIN_IMG__/favicons/apple-touch-icon-72x72.png">
|
|
<link rel="apple-touch-icon" sizes="76x76" href="__ADMIN_IMG__/favicons/apple-touch-icon-76x76.png">
|
|
<link rel="apple-touch-icon" sizes="114x114" href="__ADMIN_IMG__/favicons/apple-touch-icon-114x114.png">
|
|
<link rel="apple-touch-icon" sizes="120x120" href="__ADMIN_IMG__/favicons/apple-touch-icon-120x120.png">
|
|
<link rel="apple-touch-icon" sizes="144x144" href="__ADMIN_IMG__/favicons/apple-touch-icon-144x144.png">
|
|
<link rel="apple-touch-icon" sizes="152x152" href="__ADMIN_IMG__/favicons/apple-touch-icon-152x152.png">
|
|
<link rel="apple-touch-icon" sizes="180x180" href="__ADMIN_IMG__/favicons/apple-touch-icon-180x180.png">
|
|
<!-- END Icons -->
|
|
|
|
<!-- Stylesheets -->
|
|
<!-- Page JS Plugins CSS -->
|
|
{notempty name="_css_files"}
|
|
{eq name="Think.config.minify_status" value="1"}
|
|
<link rel="stylesheet" href="{:minify('group', $_css_files)}">
|
|
{else/}
|
|
{volist name="_css_files" id="css"}
|
|
{:load_assets($css)}
|
|
{/volist}
|
|
{/eq}
|
|
{/notempty}
|
|
|
|
{notempty name="_icons"}
|
|
{volist name="_icons" id="icon"}
|
|
<link rel="stylesheet" href="{$icon.url}">
|
|
{/volist}
|
|
{/notempty}
|
|
|
|
{block name="plugins-css"}{/block}
|
|
|
|
<!-- Bootstrap and OneUI CSS framework -->
|
|
{eq name="Think.config.minify_status" value="1"}
|
|
<link rel="stylesheet" id="css-main" href="{:minify('group', 'libs_css,core_css')}">
|
|
{else/}
|
|
<link rel="stylesheet" href="__LIBS__/sweetalert/sweetalert.min.css?v={:config('asset_version')}">
|
|
<link rel="stylesheet" href="__LIBS__/magnific-popup/magnific-popup.min.css?v={:config('asset_version')}">
|
|
<link rel="stylesheet" href="__ADMIN_CSS__/bootstrap.min.css?v={:config('asset_version')}">
|
|
<link rel="stylesheet" href="__ADMIN_CSS__/oneui.css?v={:config('asset_version')}">
|
|
<link rel="stylesheet" href="__ADMIN_CSS__/dolphin.css?v={:config('asset_version')}" id="css-main">
|
|
<link rel="stylesheet" href="__LIBS__/viewer/viewer.min.css?v={:config('asset_version')}">
|
|
{/eq}
|
|
<link rel="stylesheet" id="css-theme" href="__ADMIN_CSS__/themes/{:config('system_color')}.min.css?v={:config('asset_version')}">
|
|
|
|
<!--页面css-->
|
|
{block name="style"}{/block}
|
|
{notempty name="_pop"}
|
|
<style>
|
|
#page-container.sidebar-l.sidebar-o {
|
|
padding-left: 0;
|
|
}
|
|
.header-navbar-fixed #main-container {
|
|
padding-top: 0;
|
|
}
|
|
</style>
|
|
{/notempty}
|
|
<!-- END Stylesheets -->
|
|
|
|
<!--插件css钩子-->
|
|
{:hook('page_plugin_css')}
|
|
|
|
<!--自定义css-->
|
|
<link rel="stylesheet" href="__ADMIN_CSS__/custom.css?v={:config('asset_version')}">
|
|
<script>
|
|
// url
|
|
var dolphin = {
|
|
'top_menu_url': '{:url("admin/ajax/getSidebarMenu")}',
|
|
'theme_url': '{:url("admin/ajax/setTheme")}',
|
|
'jcrop_upload_url': '{$jcrop_upload_url ? $jcrop_upload_url : url("admin/attachment/upload", ["dir" => "images", "from" => "jcrop", "module" => request()->module()])}',
|
|
'editormd_upload_url': '{$editormd_upload_url ? $editormd_upload_url : url("admin/attachment/upload", ["dir" => "images", "from" => "editormd", "module" => request()->module()])}',
|
|
'editormd_mudule_path': '__LIBS__/editormd/lib/',
|
|
'ueditor_upload_url': '{$ueditor_upload_url ? $ueditor_upload_url : url("admin/attachment/upload", ["dir" => "images", "from" => "ueditor", "module" => request()->module()])}',
|
|
'wangeditor_upload_url': '{$wangeditor_upload_url ? $wangeditor_upload_url : url("admin/attachment/upload", ["dir" => "images", "from" => "wangeditor", "module" => request()->module()])}',
|
|
'wangeditor_emotions': "__LIBS__/wang-editor/emotions.data",
|
|
'ckeditor_img_upload_url': '{$ckeditor_img_upload_url ? $ckeditor_img_upload_url : url("admin/attachment/upload", ["dir" => "images", "from" => "ckeditor", "module" => request()->module()])}',
|
|
'WebUploader_swf': '__LIBS__/webuploader/Uploader.swf',
|
|
'file_upload_url': '{$file_upload_url ? $file_upload_url : url("admin/attachment/upload", ["dir" => "files", "module" => request()->module()])}',
|
|
'image_upload_url': '{$image_upload_url ? $image_upload_url : url("admin/attachment/upload", ["dir" => "images", "module" => request()->module()])}',
|
|
'upload_check_url': '{$upload_check_url ? $upload_check_url : url("admin/ajax/check")}',
|
|
'get_level_data': '{:url("admin/ajax/getLevelData")}',
|
|
'quick_edit_url': '{$quick_edit_url ? $quick_edit_url : url("quickEdit")}',
|
|
'aside_edit_url': '{$aside_edit_url ? $aside_edit_url : url("admin/system/quickEdit")}',
|
|
'triggers': {:json_encode(isset($field_triggers) ? $field_triggers : [])}, // 触发器集合
|
|
'field_hide': '{$field_hide|default=""}', // 需要隐藏的字段
|
|
'field_values': '{$field_values|default=""}',
|
|
'validate': '{$validate|default=""}', // 验证器
|
|
'validate_fields': '{$validate_fields|default=""}', // 验证字段
|
|
'search_field': '{:input("param.search_field", "")}', // 搜索字段
|
|
// 字段过滤
|
|
'_filter': '{$Request.param._filter ? $Request.param._filter : (isset($_filter) ? $_filter : "")}',
|
|
'_filter_content': '{$Request.param._filter_content == '' ? (isset($_filter_content) ? $_filter_content : "") : $Request.param._filter_content}',
|
|
'_field_display': '{$Request.param._field_display ? $Request.param._field_display : (isset($_field_display) ? $_field_display : "")}',
|
|
'_field_clear': {:json_encode(isset($field_clear) ? $field_clear : [])},
|
|
'get_filter_list': '{:url("admin/ajax/getFilterList")}',
|
|
'curr_url': '{:url("", $Request.route)}',
|
|
'curr_params': {:json_encode($Request.param)},
|
|
'layer': {:json_encode(config("zbuilder.pop"))}
|
|
};
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<!-- Page Container -->
|
|
<div id="page-container" class="sidebar-l sidebar-o side-scroll header-navbar-fixed {empty name="_pop"}{$_COOKIE['sidebarMini'] ?= 'sidebar-mini'}{/empty}">
|
|
<!-- Side Overlay-->
|
|
{empty name="_pop"}
|
|
{block name="aside"}
|
|
<aside id="side-overlay">
|
|
<!-- Side Overlay Scroll Container -->
|
|
<div id="side-overlay-scroll">
|
|
<!-- Side Header -->
|
|
<div class="side-header side-content">
|
|
<!-- Layout API, functionality initialized in App() -> uiLayoutApi() -->
|
|
<button class="btn btn-default pull-right" type="button" data-toggle="layout" data-action="side_overlay_close">
|
|
<i class="fa fa-times"></i>
|
|
</button>
|
|
<span>
|
|
<img class="img-avatar img-avatar32" src="{$Think.session.user_auth.uid|get_avatar}" alt="">
|
|
<span class="font-w600 push-10-l">{:session('user_auth.username')}</span>
|
|
</span>
|
|
</div>
|
|
<!-- END Side Header -->
|
|
<!--侧栏-->
|
|
{include file="../application/common/builder/aside/layout.html" /}
|
|
</div>
|
|
<!-- END Side Overlay Scroll Container -->
|
|
</aside>
|
|
{/block}
|
|
{/empty}
|
|
<!-- END Side Overlay -->
|
|
|
|
<!-- Sidebar -->
|
|
{empty name="_pop"}
|
|
{block name="sidebar"}
|
|
<nav id="sidebar">
|
|
<!-- Sidebar Scroll Container -->
|
|
<div id="sidebar-scroll">
|
|
<!-- Sidebar Content -->
|
|
<!-- Adding .sidebar-mini-hide to an element will hide it when the sidebar is in mini mode -->
|
|
<div class="sidebar-content">
|
|
<!-- Side Header -->
|
|
<div class="side-header side-content bg-white-op dolphin-header">
|
|
<!-- Layout API, functionality initialized in App() -> uiLayoutApi() -->
|
|
<button class="btn btn-link text-gray pull-right hidden-md hidden-lg" type="button" data-toggle="layout" data-action="sidebar_close">
|
|
<i class="fa fa-times"></i>
|
|
</button>
|
|
<!-- Themes functionality initialized in App() -> uiHandleTheme() -->
|
|
<div class="btn-group pull-right">
|
|
<button class="btn btn-link text-gray dropdown-toggle" data-toggle="dropdown" type="button">
|
|
<i class="si si-drop"></i>
|
|
</button>
|
|
<ul class="dropdown-menu dropdown-menu-right font-s13 sidebar-mini-hide">
|
|
<li {$system_color == 'modern' ?= 'class="active"'}>
|
|
<a data-toggle="theme" data-theme="modern" data-css="__ADMIN_CSS__/themes/modern.min.css" tabindex="-1" href="javascript:void(0)">
|
|
<i class="fa fa-circle text-modern pull-right"></i> <span class="font-w600">Modern</span>
|
|
</a>
|
|
</li>
|
|
<li {$system_color == 'amethyst' ?= 'class="active"'}>
|
|
<a data-toggle="theme" data-theme="amethyst" data-css="__ADMIN_CSS__/themes/amethyst.min.css" tabindex="-1" href="javascript:void(0)">
|
|
<i class="fa fa-circle text-amethyst pull-right"></i> <span class="font-w600">Amethyst</span>
|
|
</a>
|
|
</li>
|
|
<li {$system_color == 'city' ?= 'class="active"'}>
|
|
<a data-toggle="theme" data-theme="city" data-css="__ADMIN_CSS__/themes/city.min.css" tabindex="-1" href="javascript:void(0)">
|
|
<i class="fa fa-circle text-city pull-right"></i> <span class="font-w600">City</span>
|
|
</a>
|
|
</li>
|
|
<li {$system_color == 'flat' ?= 'class="active"'}>
|
|
<a data-toggle="theme" data-theme="flat" data-css="__ADMIN_CSS__/themes/flat.min.css" tabindex="-1" href="javascript:void(0)">
|
|
<i class="fa fa-circle text-flat pull-right"></i> <span class="font-w600">Flat</span>
|
|
</a>
|
|
</li>
|
|
<li {$system_color == 'smooth' ?= 'class="active"'}>
|
|
<a data-toggle="theme" data-theme="smooth" data-css="__ADMIN_CSS__/themes/smooth.min.css" tabindex="-1" href="javascript:void(0)">
|
|
<i class="fa fa-circle text-smooth pull-right"></i> <span class="font-w600">Smooth</span>
|
|
</a>
|
|
</li>
|
|
<li {$system_color == 'default' ?= 'class="active"'}>
|
|
<a data-toggle="theme" data-theme="default" tabindex="-1" href="javascript:void(0)">
|
|
<i class="fa fa-circle text-default pull-right"></i> <span class="font-w600">Default</span>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<a class="h5 text-white" href="{:url('admin/index/index')}">
|
|
{notempty name="Think.config.web_site_logo"}
|
|
<img src="{$Think.config.web_site_logo|get_file_path}" class="logo" alt="{$Think.config.web_site_title|default='Dolphin PHP'}">
|
|
{else/}
|
|
<img src="{$Think.config.public_static_path}admin/img/logo.png" class="logo" alt="Dolphin PHP">
|
|
{/notempty}
|
|
|
|
{notempty name="Think.config.web_site_logo_text"}
|
|
<img src="{$Think.config.web_site_logo_text|get_file_path}" class="logo-text sidebar-mini-hide" alt="{$Think.config.web_site_title|default='Dolphin PHP'}">
|
|
{else/}
|
|
<img src="{$Think.config.public_static_path}admin/img/logo-text.png" class="logo-text sidebar-mini-hide" alt="Dolphin PHP">
|
|
{/notempty}
|
|
</a>
|
|
</div>
|
|
<!-- END Side Header -->
|
|
|
|
<!-- Side Content -->
|
|
<div class="side-content" id="sidebar-menu">
|
|
{notempty name="_sidebar_menus"}
|
|
<ul class="nav-main" id="nav-{$_location[0]['id']}">
|
|
{volist name="_sidebar_menus" id="menu"}
|
|
<li {$menu['id'] == $_location[1]["id"]?='class="open"'}>
|
|
{notempty name="menu.url_value"}
|
|
<a {if($menu['id'] == $_location[1]["id"])}class="active"{/if} href="{$menu.url_value}" target="{$menu.url_target}"><i class="{$menu.icon}"></i><span class="sidebar-mini-hide">{$menu.title}</span></a>
|
|
{else/}
|
|
<a class="nav-submenu" data-toggle="nav-submenu" href="javascript:void(0);"><i class="{$menu.icon}"></i><span class="sidebar-mini-hide">{$menu.title}</span></a>
|
|
{notempty name="menu['child']"}
|
|
<ul>
|
|
{volist name="menu['child']" id="submenu"}
|
|
<li>
|
|
<a {if(isset($_location[2]) && $submenu['id'] == $_location[2]["id"])}class="active"{/if} href="{$submenu.url_value}" target="{$submenu.url_target}"><i class="{$submenu.icon}"></i>{$submenu.title}</a>
|
|
</li>
|
|
{/volist}
|
|
</ul>
|
|
{/notempty}
|
|
{/notempty}
|
|
</li>
|
|
{/volist}
|
|
</ul>
|
|
{/notempty}
|
|
</div>
|
|
<!-- END Side Content -->
|
|
</div>
|
|
<!-- Sidebar Content -->
|
|
</div>
|
|
<!-- END Sidebar Scroll Container -->
|
|
</nav>
|
|
{/block}
|
|
{/empty}
|
|
<!-- END Sidebar -->
|
|
|
|
<!-- Header -->
|
|
{empty name="_pop"}
|
|
{block name="header"}
|
|
<header id="header-navbar" class="content-mini content-mini-full">
|
|
<!-- Header Navigation Right -->
|
|
<ul class="nav-header pull-right">
|
|
<li>
|
|
<div class="btn-group">
|
|
<button class="btn btn-default btn-image dropdown-toggle" data-toggle="dropdown" type="button">
|
|
<img src="{$Think.session.user_auth.uid|get_avatar}" alt="{:session('user_auth.username')}">
|
|
<span class="caret"></span>
|
|
{notempty name="_message"}
|
|
{gt name="_message" value="0"}
|
|
<i class="fa fa-circle text-danger notice-circle"></i>
|
|
{/gt}
|
|
{/notempty}
|
|
</button>
|
|
<ul class="dropdown-menu dropdown-menu-right">
|
|
<li class="dropdown-header">{:session('user_auth.username')} ({:session('user_auth.role_name')})</li>
|
|
<li>
|
|
<a tabindex="-1" href="{:url('admin/index/profile')}">
|
|
<i class="si si-settings pull-right"></i>个人设置
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a tabindex="-1" href="{:url('admin/message/index')}">
|
|
<i class="si si-envelope-open pull-right"></i><span class="badge badge-primary pull-right">{$_message|default=0}</span>消息中心
|
|
</a>
|
|
</li>
|
|
<li class="divider"></li>
|
|
<li>
|
|
<a tabindex="-1" href="{:url('user/publics/signout')}">
|
|
<i class="si si-logout pull-right"></i>退出帐号
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</li>
|
|
<li>
|
|
<a class="btn btn-default ajax-get" href="{:url('admin/index/wipeCache')}" data-toggle="tooltip" data-placement="bottom" data-original-title="清空缓存">
|
|
<i class="fa fa-trash"></i>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a class="btn btn-default" href="{:rtrim(home_url('/'), '/')}" target="_blank" data-toggle="tooltip" data-placement="bottom" data-original-title="打开前台">
|
|
<i class="fa fa-external-link-square"></i>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<!-- Layout API, functionality initialized in App() -> uiLayoutApi() -->
|
|
<button class="btn btn-default" data-toggle="layout" data-action="side_overlay_toggle" title="侧边栏" type="button">
|
|
<i class="fa fa-tasks"></i>
|
|
</button>
|
|
</li>
|
|
</ul>
|
|
<!-- END Header Navigation Right -->
|
|
|
|
<!-- Header Navigation Left -->
|
|
<ul class="nav nav-pills pull-left">
|
|
<li class="hidden-md hidden-lg">
|
|
<!-- Layout API, functionality initialized in App() -> uiLayoutApi() -->
|
|
<a href="javascript:void(0)" data-toggle="layout" data-action="sidebar_toggle"><i class="fa fa-navicon"></i></a>
|
|
</li>
|
|
<li class="hidden-xs hidden-sm">
|
|
<!-- Layout API, functionality initialized in App() -> uiLayoutApi() -->
|
|
<a href="javascript:void(0)" title="打开/关闭左侧导航" data-toggle="layout" data-action="sidebar_mini_toggle"><i class="fa fa-bars"></i></a>
|
|
</li>
|
|
{notempty name="_top_menus"}
|
|
{volist name="_top_menus" id="menu"}
|
|
<li class="hidden-xs hidden-sm {$menu['id'] == $_location[0]['id'] ?= 'active'}">
|
|
{in name="menu.url_type" value="module_admin,module_home"}
|
|
<a href="javascript:void(0);" data-module-id="{$menu['id']}" data-module="{$menu['module']}" data-controller="{$menu['controller']}" target="{$menu['url_target']}" class="top-menu"><i class="{$menu.icon}"></i> {$menu.title}</a>
|
|
{else/}
|
|
<a href="{$menu['url_value']}" target="{$menu['url_target']}"><i class="{$menu.icon}"></i> {$menu.title}</a>
|
|
{/in}
|
|
</li>
|
|
{/volist}
|
|
{/notempty}
|
|
<li>
|
|
<!-- Opens the Apps modal found at the bottom of the page, before including JS code -->
|
|
<a href="#" data-toggle="modal" data-target="#apps-modal"><i class="si si-grid"></i></a>
|
|
</li>
|
|
</ul>
|
|
<!-- END Header Navigation Left -->
|
|
</header>
|
|
{/block}
|
|
{/empty}
|
|
<!-- END Header -->
|
|
|
|
<!-- Main Container -->
|
|
<main id="main-container">
|
|
<!-- Page Header -->
|
|
{block name="page-header"}
|
|
{empty name="_pop"}
|
|
<div class="bg-gray-lighter">
|
|
<ol class="breadcrumb">
|
|
<li><i class="fa fa-map-marker"></i></li>
|
|
{notempty name="_location"}
|
|
{volist name="_location" id="v"}
|
|
<li><a class="link-effect" href="{notempty name='$v["url_value"]'}{:url($v.url_value, $v.params)}{else/}javascript:void(0);{/notempty}">{$v.title}</a></li>
|
|
{/volist}
|
|
{/notempty}
|
|
</ol>
|
|
</div>
|
|
{/empty}
|
|
{/block}
|
|
<!-- END Page Header -->
|
|
|
|
<!-- Page Content -->
|
|
<div class="content">
|
|
{// 页面提示钩子}
|
|
{:hook('page_tips')}
|
|
{// 主体内容}
|
|
{block name="content"}{/block}
|
|
</div>
|
|
<!-- END Page Content -->
|
|
</main>
|
|
<!-- END Main Container -->
|
|
|
|
<!-- Footer -->
|
|
{empty name="_pop"}
|
|
<footer id="page-footer" class="content-mini content-mini-full font-s12 bg-gray-lighter clearfix">
|
|
<div class="pull-right">
|
|
Crafted with <i class="fa fa-heart text-city"></i> by <a class="font-w600" href="{:config('dolphin.company_website')}" target="_blank">{:config('dolphin.company_name')}</a>
|
|
</div>
|
|
<div class="pull-left">
|
|
<a class="font-w600" href="{:config('dolphin.product_website')}" target="_blank">{:config('dolphin.product_name')} {:config('dolphin.product_version')}</a> © <span class="js-year-copy"></span>
|
|
</div>
|
|
</footer>
|
|
{/empty}
|
|
<!-- END Footer -->
|
|
</div>
|
|
<!-- END Page Container -->
|
|
|
|
<!-- Apps Modal -->
|
|
<!-- Opens from the button in the header -->
|
|
<div class="modal fade" id="apps-modal" tabindex="-1" role="dialog" aria-hidden="true">
|
|
<div class="modal-dialog modal-dialog-top">
|
|
<div class="modal-content">
|
|
<!-- Apps Block -->
|
|
<div class="block block-themed block-transparent">
|
|
<div class="block-header bg-primary-dark">
|
|
<ul class="block-options">
|
|
<li>
|
|
<button data-dismiss="modal" type="button"><i class="si si-close"></i></button>
|
|
</li>
|
|
</ul>
|
|
<h3 class="block-title">所有模块</h3>
|
|
</div>
|
|
<div class="block-content">
|
|
<div class="row text-center">
|
|
{notempty name="_top_menus_all"}
|
|
{volist name="_top_menus_all" id="menu"}
|
|
<div class="col-xs-6 col-sm-3">
|
|
{in name="menu.url_type" value="module_admin,module_home"}
|
|
<a class="block block-rounded top-menu" href="javascript:void(0);" data-module-id="{$menu['id']}" data-module="{$menu['module']}" data-controller="{$menu['controller']}" target="{$menu['url_target']}">
|
|
<div class="block-content text-white {$menu['id'] == $_location[0]['id'] ? 'bg-primary' : 'bg-primary-dark'}">
|
|
<i class="{$menu.icon} fa-2x"></i>
|
|
<div class="font-w600 push-15-t push-15">{$menu.title}</div>
|
|
</div>
|
|
</a>
|
|
{else/}
|
|
<a class="block block-rounded" href="{$menu['url_value']}" target="{$menu['url_target']}">
|
|
<div class="block-content text-white {$menu['id'] == $_location[0]['id'] ? 'bg-primary' : 'bg-primary-dark'}">
|
|
<i class="{$menu.icon} fa-2x"></i>
|
|
<div class="font-w600 push-15-t push-15">{$menu.title}</div>
|
|
</div>
|
|
</a>
|
|
{/in}
|
|
</div>
|
|
{/volist}
|
|
{/notempty}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- END Apps Block -->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- END Apps Modal -->
|
|
<!-- OneUI Core JS: jQuery, Bootstrap, slimScroll, scrollLock, Appear, CountTo, Placeholder, Cookie and App.js -->
|
|
{eq name="Think.config.minify_status" value="1"}
|
|
<script src="{:minify('group', 'core_js,libs_js')}"></script>
|
|
{else/}
|
|
<script src="__ADMIN_JS__/core/jquery.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/core/bootstrap.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/core/jquery.slimscroll.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/core/jquery.scrollLock.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/core/jquery.appear.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/core/jquery.countTo.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/core/jquery.placeholder.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/core/js.cookie.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__LIBS__/magnific-popup/magnific-popup.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/app.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/dolphin.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/builder/form.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/builder/aside.js?v={:config('asset_version')}"></script>
|
|
<script src="__ADMIN_JS__/builder/table.js?v={:config('asset_version')}"></script>
|
|
<script src="__LIBS__/bootstrap-notify/bootstrap-notify.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__LIBS__/sweetalert/sweetalert.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__LIBS__/js-xss/xss.min.js?v={:config('asset_version')}"></script>
|
|
<script src="__LIBS__/viewer/viewer.min.js?v={:config('asset_version')}"></script>
|
|
{/eq}
|
|
|
|
<!-- Page JS Plugins -->
|
|
<script src="__LIBS__/layer/layer.js?v={:config('asset_version')}"></script>
|
|
{notempty name="_js_files"}
|
|
{eq name="Think.config.minify_status" value="1"}
|
|
<script src="{:minify('group', $_js_files)}"></script>
|
|
{else/}
|
|
{volist name="_js_files" id="js"}
|
|
{:load_assets($js, 'js')}
|
|
{/volist}
|
|
{/eq}
|
|
{/notempty}
|
|
|
|
<script>
|
|
jQuery(function () {
|
|
App.initHelpers(['appear', 'slimscroll', 'magnific-popup', 'table-tools']);
|
|
{notempty name="_js_init"}
|
|
App.initHelpers({$_js_init|raw});
|
|
{/notempty}
|
|
});
|
|
</script>
|
|
|
|
<!--页面js-->
|
|
{block name="script"}{/block}
|
|
|
|
<!--插件js钩子-->
|
|
{:hook('page_plugin_js')}
|
|
|
|
{// 额外HTML代码 }
|
|
{$extra_html|raw|default=''}
|
|
</body>
|
|
</html> |