若依 2.1
This commit is contained in:
159
src/main/resources/templates/system/menu/add.html
Normal file
159
src/main/resources/templates/system/menu/add.html
Normal file
@ -0,0 +1,159 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
|
||||
<meta charset="utf-8">
|
||||
<head th:include="include :: header"></head>
|
||||
<link href="/ajax/libs/iCheck/custom.css" th:href="@{/ajax/libs/iCheck/custom.css}" rel="stylesheet"/>
|
||||
<body class="white-bg">
|
||||
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
|
||||
<form class="form-horizontal m" id="form-menu-add">
|
||||
<input id="treeId" name="parentId" type="hidden" th:value="${menu.menuId}" />
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label ">上级菜单:</label>
|
||||
<div class="col-sm-8">
|
||||
<input class="form-control" type="text" onclick="selectMenuTree()" id="treeName" readonly="true" th:value="${menu.menuName}"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">菜单类型:</label>
|
||||
<div class="col-sm-8">
|
||||
<label class="checkbox-inline i-checks"> <input type="radio" name="menuType" value="M" /> 目录 </label>
|
||||
<label class="checkbox-inline i-checks"> <input type="radio" name="menuType" value="C" /> 菜单 </label>
|
||||
<label class="checkbox-inline i-checks"> <input type="radio" name="menuType" value="F" /> 按钮 </label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">菜单名称:</label>
|
||||
<div class="col-sm-8">
|
||||
<input class="form-control" type="text" name="menuName" id="menuName">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">请求地址:</label>
|
||||
<div class="col-sm-8">
|
||||
<input id="url" name="url" class="form-control" type="text">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">权限标识:</label>
|
||||
<div class="col-sm-8">
|
||||
<input id="perms" name="perms" class="form-control" type="text">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">显示排序:</label>
|
||||
<div class="col-sm-8">
|
||||
<input class="form-control" type="text" name="orderNum">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">图标:</label>
|
||||
<div class="col-sm-8">
|
||||
<input id="icon" name="icon" class="form-control" type="text" placeholder="选择图标">
|
||||
<div class="ms-parent" style="width: 100%;">
|
||||
<div class="icon-drop animated flipInX" style="display: none;max-height:200px;overflow-y:auto">
|
||||
<div data-th-include="system/menu/icon"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">菜单状态:</label>
|
||||
<div class="col-sm-8" th:with="type=${@dictService.selectDictData('sys_show_hide')}">
|
||||
<div th:each="dict : ${type}" th:class="${dict['cssClass']}">
|
||||
<input type="radio" th:id="${dict['dictCode']}" name="visible" th:value="${dict['dictValue']}" th:checked="${dict['isDefault'] == 'Y' ? true : false}">
|
||||
<label th:for="${dict['dictCode']}" th:text="${dict['dictLabel']}"></label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="form-control-static col-sm-offset-9">
|
||||
<button type="submit" class="btn btn-primary">提交</button>
|
||||
<button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div th:include="include::footer"></div>
|
||||
<script th:src="@{/ajax/libs/iCheck/icheck.min.js}"></script>
|
||||
<script>
|
||||
var prefix = ctx + "system/menu"
|
||||
$("#form-menu-add").validate({
|
||||
rules:{
|
||||
menuName:{
|
||||
required:true,
|
||||
remote: {
|
||||
url: prefix + "/checkMenuNameUnique",
|
||||
type: "post",
|
||||
dataType: "json",
|
||||
data: {
|
||||
"menuName" : function() {
|
||||
return $.trim($("#menuName").val());
|
||||
}
|
||||
},
|
||||
dataFilter: function(data, type) {
|
||||
if (data == "0") return true;
|
||||
else return false;
|
||||
}
|
||||
}
|
||||
},
|
||||
orderNum:{
|
||||
required:true,
|
||||
digits:true
|
||||
},
|
||||
},
|
||||
messages: {
|
||||
"menuName": {
|
||||
remote: "菜单已经存在"
|
||||
}
|
||||
},
|
||||
submitHandler:function(form){
|
||||
$.operate.save(prefix + "/save", $('#form-menu-add').serialize());
|
||||
}
|
||||
});
|
||||
|
||||
$(function() {
|
||||
$("input[name='icon']").focus(function() {
|
||||
$(".icon-drop").show();
|
||||
});
|
||||
$("#form-menu-add").click(function(event) {
|
||||
var obj = event.srcElement || event.target;
|
||||
if (!$(obj).is("input[name='icon']")) {
|
||||
$(".icon-drop").hide();
|
||||
}
|
||||
});
|
||||
$(".icon-drop").find(".ico-list i").on("click", function() {
|
||||
$('#icon').val($(this).attr('class'));
|
||||
});
|
||||
$('input').on('ifChecked', function(event){
|
||||
var menuType = $(event.target).val();
|
||||
if (menuType == "M") {
|
||||
$("#url").parents(".form-group").hide();
|
||||
$("#perms").parents(".form-group").hide();
|
||||
$("#icon").parents(".form-group").show();
|
||||
} else if (menuType == "C") {
|
||||
$("#url").parents(".form-group").show();
|
||||
$("#perms").parents(".form-group").show();
|
||||
$("#icon").parents(".form-group").hide();
|
||||
} else if (menuType == "F") {
|
||||
$("#url").parents(".form-group").hide();
|
||||
$("#perms").parents(".form-group").show();
|
||||
$("#icon").parents(".form-group").hide();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
/*菜单管理-新增-选择菜单树*/
|
||||
function selectMenuTree() {
|
||||
var menuId = $("#treeId").val();
|
||||
if(menuId > 0) {
|
||||
var url = prefix + "/selectMenuTree/" + menuId;
|
||||
$.modal.open("选择菜单", url, '380', '380');
|
||||
}
|
||||
else {
|
||||
var url = prefix + "/selectMenuTree/1";
|
||||
$.modal.open("选择菜单", url, '380', '380');
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
174
src/main/resources/templates/system/menu/edit.html
Normal file
174
src/main/resources/templates/system/menu/edit.html
Normal file
@ -0,0 +1,174 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
|
||||
<meta charset="utf-8">
|
||||
<head th:include="include :: header"></head>
|
||||
<link href="/ajax/libs/iCheck/custom.css" th:href="@{/ajax/libs/iCheck/custom.css}" rel="stylesheet"/>
|
||||
<body class="white-bg">
|
||||
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
|
||||
<form class="form-horizontal m" id="form-menu-edit" th:object="${menu}">
|
||||
<input name="menuId" type="hidden" th:field="*{menuId}" />
|
||||
<input id="treeId" name="parentId" type="hidden" th:field="*{parentId}" />
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label ">上级菜单:</label>
|
||||
<div class="col-sm-8">
|
||||
<input class="form-control" type="text" onclick="selectMenuTree()" id="treeName" readonly="true" th:value="${menu.parentName == null ? '无' : menu.parentName}"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">菜单类型:</label>
|
||||
<div class="col-sm-8">
|
||||
<label class="checkbox-inline i-checks"> <input type="radio" th:field="*{menuType}" name="menuType" value="M" /> 目录 </label>
|
||||
<label class="checkbox-inline i-checks"> <input type="radio" th:field="*{menuType}" name="menuType" value="C" /> 菜单 </label>
|
||||
<label class="checkbox-inline i-checks"> <input type="radio" th:field="*{menuType}" name="menuType" value="F" /> 按钮 </label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">菜单名称:</label>
|
||||
<div class="col-sm-8">
|
||||
<input class="form-control" type="text" name="menuName" id="menuName" th:field="*{menuName}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">请求地址:</label>
|
||||
<div class="col-sm-8">
|
||||
<input id="url" name="url" class="form-control" type="text" th:field="*{url}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">权限标识:</label>
|
||||
<div class="col-sm-8">
|
||||
<input id="perms" name="perms" class="form-control" type="text" th:field="*{perms}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">显示排序:</label>
|
||||
<div class="col-sm-8">
|
||||
<input class="form-control" type="text" name="orderNum" th:field="*{orderNum}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">图标:</label>
|
||||
<div class="col-sm-8">
|
||||
<input id="icon" name="icon" class="form-control" type="text" placeholder="选择图标" th:field="*{icon}">
|
||||
<div class="ms-parent" style="width: 100%;">
|
||||
<div class="icon-drop animated flipInX" style="display: none;max-height:200px;overflow-y:auto">
|
||||
<div data-th-include="system/menu/icon"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">菜单状态:</label>
|
||||
<div class="col-sm-8" th:with="type=${@dictService.selectDictData('sys_show_hide')}">
|
||||
<div th:each="dict : ${type}" th:class="${dict['cssClass']}">
|
||||
<input type="radio" th:id="${dict['dictCode']}" name="visible" th:value="${dict['dictValue']}" th:field="*{visible}">
|
||||
<label th:for="${dict['dictCode']}" th:text="${dict['dictLabel']}"></label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="form-control-static col-sm-offset-9">
|
||||
<button type="submit" class="btn btn-primary">提交</button>
|
||||
<button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div th:include="include::footer"></div>
|
||||
<script th:src="@{/ajax/libs/iCheck/icheck.min.js}"></script>
|
||||
<script>
|
||||
var prefix = ctx + "system/menu"
|
||||
|
||||
$(document).ready(function() {
|
||||
var menuType = $('input[name="menuType"]:checked').val();
|
||||
menuVisible(menuType);
|
||||
});
|
||||
|
||||
$("#form-menu-edit").validate({
|
||||
rules:{
|
||||
menuName:{
|
||||
required:true,
|
||||
remote: {
|
||||
url: prefix + "/checkMenuNameUnique",
|
||||
type: "post",
|
||||
dataType: "json",
|
||||
data: {
|
||||
"menuId": function() {
|
||||
return $("input[name='menuId']").val();
|
||||
},
|
||||
"menuName": function() {
|
||||
return $("input[name='menuName']").val();
|
||||
}
|
||||
},
|
||||
dataFilter: function(data, type) {
|
||||
if (data == "0") return true;
|
||||
else return false;
|
||||
}
|
||||
}
|
||||
},
|
||||
orderNum:{
|
||||
required:true,
|
||||
digits:true
|
||||
},
|
||||
},
|
||||
messages: {
|
||||
"menuName": {
|
||||
remote: "菜单已经存在"
|
||||
}
|
||||
},
|
||||
submitHandler:function(form){
|
||||
$.operate.save(prefix + "/save", $('#form-menu-edit').serialize());
|
||||
}
|
||||
});
|
||||
|
||||
$(function() {
|
||||
$("input[name='icon']").focus(function() {
|
||||
$(".icon-drop").show();
|
||||
});
|
||||
$("#form-menu-edit").click(function(event) {
|
||||
var obj = event.srcElement || event.target;
|
||||
if (!$(obj).is("input[name='icon']")) {
|
||||
$(".icon-drop").hide();
|
||||
}
|
||||
});
|
||||
$(".icon-drop").find(".ico-list i").on("click",
|
||||
function() {
|
||||
$('#icon').val($(this).attr('class'));
|
||||
});
|
||||
$('input').on('ifChecked',
|
||||
function(event) {
|
||||
var menuType = $(event.target).val();
|
||||
menuVisible(menuType);
|
||||
});
|
||||
});
|
||||
|
||||
function menuVisible(menuType) {
|
||||
if (menuType == "M") {
|
||||
$("#url").parents(".form-group").hide();
|
||||
$("#perms").parents(".form-group").hide();
|
||||
$("#icon").parents(".form-group").show();
|
||||
} else if (menuType == "C") {
|
||||
$("#url").parents(".form-group").show();
|
||||
$("#perms").parents(".form-group").show();
|
||||
$("#icon").parents(".form-group").hide();
|
||||
} else if (menuType == "F") {
|
||||
$("#url").parents(".form-group").hide();
|
||||
$("#perms").parents(".form-group").show();
|
||||
$("#icon").parents(".form-group").hide();
|
||||
}
|
||||
}
|
||||
|
||||
/*菜单管理-修改-选择菜单树*/
|
||||
function selectMenuTree() {
|
||||
var menuId = $("#treeId").val();
|
||||
if(menuId > 0) {
|
||||
var url = prefix + "/selectMenuTree/" + menuId;
|
||||
$.modal.open("选择菜单", url, '380', '380');
|
||||
}
|
||||
else {
|
||||
$.modal.alertError("主菜单不能选择");
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
928
src/main/resources/templates/system/menu/icon.html
Normal file
928
src/main/resources/templates/system/menu/icon.html
Normal file
@ -0,0 +1,928 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Font Awesome Ico list</title>
|
||||
<link href="/css/font-awesome.min.css" th:href="@{/css/font-awesome.min.css}" rel="stylesheet"/>
|
||||
<script src="/js/jquery.min.js"></script>
|
||||
<style type="text/css">
|
||||
.ico-list .fa{
|
||||
margin: 5px;
|
||||
padding: 5px;
|
||||
cursor:pointer;
|
||||
font-size: 18px;
|
||||
width: 28px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.ico-list .fa:hover {
|
||||
background-color: #1d9d74;
|
||||
color: #ffffff;}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="ico-list">
|
||||
<i class="fa fa-address-book" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-address-book-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-address-card" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-address-card-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-adjust" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-american-sign-language-interpreting" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-anchor" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-archive" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-area-chart" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-arrows" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-arrows-h" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-arrows-v" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-asl-interpreting" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-assistive-listening-systems" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-asterisk" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-at" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-audio-description" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-automobile" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-balance-scale" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-ban" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bank" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bar-chart" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bar-chart-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-barcode" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bars" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bath" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bathtub" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-0" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-1" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-2" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-3" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-4" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-empty" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-full" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-half" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-quarter" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-battery-three-quarters" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bed" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-beer" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bell" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bell-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bell-slash" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bell-slash-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bicycle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-binoculars" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-birthday-cake" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-blind" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bluetooth" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bluetooth-b" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bolt" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bomb" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-book" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bookmark" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bookmark-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-braille" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-briefcase" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bug" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-building" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-building-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bullhorn" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bullseye" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-bus" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cab" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-calculator" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-calendar" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-calendar-check-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-calendar-minus-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-calendar-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-calendar-plus-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-calendar-times-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-camera" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-camera-retro" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-car" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-caret-square-o-down" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-caret-square-o-left" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-caret-square-o-right" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-caret-square-o-up" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cart-arrow-down" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cart-plus" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-certificate" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-check" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-check-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-check-circle-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-check-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-check-square-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-child" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-circle-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-circle-o-notch" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-circle-thin" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-clock-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-clone" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-close" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cloud" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cloud-download" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cloud-upload" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-code" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-code-fork" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-coffee" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cog" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cogs" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-comment" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-comment-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-commenting" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-commenting-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-comments" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-comments-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-compass" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-copyright" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-creative-commons" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-credit-card" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-credit-card-alt" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-crop" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-crosshairs" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cube" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cubes" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-cutlery" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-dashboard" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-database" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-deaf" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-deafness" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-desktop" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-diamond" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-dot-circle-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-download" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-drivers-license" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-drivers-license-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-edit" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-ellipsis-h" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-ellipsis-v" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-envelope" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-envelope-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-envelope-open" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-envelope-open-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-envelope-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-eraser" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-exchange" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-exclamation" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-exclamation-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-exclamation-triangle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-external-link" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-external-link-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-eye" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-eye-slash" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-eyedropper" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-fax" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-feed" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-female" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-fighter-jet" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-archive-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-audio-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-code-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-excel-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-image-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-movie-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-pdf-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-photo-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-picture-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-powerpoint-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-sound-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-video-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-word-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-file-zip-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-film" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-filter" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-fire" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-fire-extinguisher" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-flag" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-flag-checkered" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-flag-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-flash" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-flask" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-folder" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-folder-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-folder-open" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-folder-open-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-frown-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-futbol-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-gamepad" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-gavel" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-gear" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-gears" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-gift" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-glass" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-globe" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-graduation-cap" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-group" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-grab-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-lizard-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-paper-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-peace-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-pointer-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-rock-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-scissors-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-spock-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hand-stop-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-handshake-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hard-of-hearing" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hashtag" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hdd-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-headphones" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-heart" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-heart-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-heartbeat" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-history" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-home" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hotel" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hourglass" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hourglass-1" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hourglass-2" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hourglass-3" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hourglass-end" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hourglass-half" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hourglass-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-hourglass-start" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-i-cursor" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-id-badge" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-id-card" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-id-card-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-image" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-inbox" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-industry" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-info" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-info-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-institution" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-key" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-keyboard-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-language" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-laptop" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-leaf" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-legal" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-lemon-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-level-down" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-level-up" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-life-bouy" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-life-buoy" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-life-ring" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-life-saver" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-lightbulb-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-line-chart" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-location-arrow" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-lock" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-low-vision" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-magic" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-magnet" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-mail-forward" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-mail-reply" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-mail-reply-all" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-male" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-map" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-map-marker" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-map-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-map-pin" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-map-signs" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-meh-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-microchip" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-microphone" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-microphone-slash" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-minus" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-minus-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-minus-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-minus-square-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-mobile" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-mobile-phone" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-money" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-moon-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-mortar-board" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-motorcycle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-mouse-pointer" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-music" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-navicon" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-newspaper-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-object-group" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-object-ungroup" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-paint-brush" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-paper-plane" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-paper-plane-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-paw" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-pencil" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-pencil-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-pencil-square-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-percent" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-phone" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-phone-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-photo" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-picture-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-pie-chart" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-plane" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-plug" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-plus" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-plus-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-plus-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-plus-square-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-podcast" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-power-off" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-print" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-puzzle-piece" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-qrcode" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-question" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-question-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-question-circle-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-quote-left" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-quote-right" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-random" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-recycle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-refresh" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-registered" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-remove" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-reorder" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-reply" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-reply-all" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-retweet" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-road" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-rocket" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-rss" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-rss-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-s15" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-search" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-search-minus" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-search-plus" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-send" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-send-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-server" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-share" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-share-alt" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-share-alt-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-share-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-share-square-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-shield" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-ship" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-shopping-bag" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-shopping-basket" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-shopping-cart" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-shower" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sign-in" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sign-language" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sign-out" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-signal" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-signing" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sitemap" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sliders" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-smile-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-snowflake-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-soccer-ball-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-alpha-asc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-alpha-desc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-amount-asc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-amount-desc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-asc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-desc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-down" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-numeric-asc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-numeric-desc" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sort-up" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-space-shuttle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-spinner" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-spoon" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-square" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-square-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-star" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-star-half" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-star-half-empty" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-star-half-full" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-star-half-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-star-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sticky-note" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sticky-note-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-street-view" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-suitcase" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-sun-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-support" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tablet" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tachometer" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tag" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tags" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tasks" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-taxi" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-television" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-terminal" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-0" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-1" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-2" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-3" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-4" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-empty" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-full" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-half" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-quarter" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thermometer-three-quarters" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thumb-tack" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thumbs-down" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thumbs-o-down" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thumbs-o-up" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-thumbs-up" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-ticket" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-times" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-times-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-times-circle-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-times-rectangle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-times-rectangle-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tint" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-toggle-down" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-toggle-left" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-toggle-off" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-toggle-on" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-toggle-right" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-toggle-up" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-trademark" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-trash" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-trash-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tree" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-trophy" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-truck" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tty" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-tv" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-umbrella" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-universal-access" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-university" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-unlock" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-unlock-alt" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-unsorted" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-upload" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-user" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-user-circle" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-user-circle-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-user-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-user-plus" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-user-secret" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-user-times" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-users" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-vcard" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-vcard-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-video-camera" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-volume-control-phone" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-volume-down" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-volume-off" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-volume-up" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-warning" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-wheelchair" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-wheelchair-alt" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-wifi" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-window-close" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-window-close-o" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-window-maximize" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-window-minimize" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-window-restore" aria-hidden="true"></i>
|
||||
|
||||
<i class="fa fa-wrench" aria-hidden="true"></i>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
135
src/main/resources/templates/system/menu/menu.html
Normal file
135
src/main/resources/templates/system/menu/menu.html
Normal file
@ -0,0 +1,135 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
|
||||
<meta charset="utf-8">
|
||||
<head th:include="include :: header"></head>
|
||||
<style type="text/css">
|
||||
.fixed-table-container{position:relative;clear:both;border:1px solid #ddd;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px}
|
||||
</style>
|
||||
<body class="gray-bg">
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="btn-group hidden-xs" id="toolbar" role="group">
|
||||
<div class="form-group">
|
||||
<a type="button" class="btn btn-outline btn-default" onclick="$.operate.add(0)" shiro:hasPermission="system:menu:add">
|
||||
<i class="fa fa-plus"></i> 新增
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<table id="bootstrap-table" data-mobile-responsive="true"></table>
|
||||
</div>
|
||||
<div th:include="include :: footer"></div>
|
||||
<script th:inline="javascript">
|
||||
var addFlag = [[${@permissionService.hasPermi('system:menu:add')}]];
|
||||
var editFlag = [[${@permissionService.hasPermi('system:menu:edit')}]];
|
||||
var removeFlag = [[${@permissionService.hasPermi('system:menu:remove')}]];
|
||||
var prefix = ctx + "system/menu"
|
||||
|
||||
window.onload = function() {
|
||||
loading();
|
||||
};
|
||||
|
||||
function loading() {
|
||||
var options = {
|
||||
id: "menuId",
|
||||
parentId: "parentId",
|
||||
expandAll: false,
|
||||
url: prefix + "/list",
|
||||
createUrl: prefix + "/add/{id}",
|
||||
updateUrl: prefix + "/edit/{id}",
|
||||
removeUrl: prefix + "/remove/{id}",
|
||||
modalName: "菜单",
|
||||
columns: [{
|
||||
title: '菜单名称',
|
||||
field: 'menuName',
|
||||
width: '20%',
|
||||
formatter: function(row, index) {
|
||||
if (row.icon == null || row == "") {
|
||||
return row.menuName;
|
||||
} else {
|
||||
return '<i class="' + row.icon + '"></i> <span class="nav-label">' + row.menuName + '</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'orderNum',
|
||||
title: '排序',
|
||||
width: '10%',
|
||||
align: "center"
|
||||
},
|
||||
{
|
||||
field: 'url',
|
||||
title: '请求地址',
|
||||
width: '15%',
|
||||
align: "center"
|
||||
},
|
||||
{
|
||||
title: '类型',
|
||||
field: 'menuType',
|
||||
width: '10%',
|
||||
align: "center",
|
||||
formatter: function(item, index) {
|
||||
if (item.menuType == 'M') {
|
||||
return '<span class="label label-success">目录</span>';
|
||||
}
|
||||
else if (item.menuType == 'C') {
|
||||
return '<span class="label label-primary">菜单</span>';
|
||||
}
|
||||
else if (item.menuType == 'F') {
|
||||
return '<span class="label label-warning">按钮</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'visible',
|
||||
title: '可见',
|
||||
width: '10%',
|
||||
align: "center",
|
||||
formatter: function(row, index) {
|
||||
if (row.visible == 0) {
|
||||
return '<span class="badge badge-primary">显示</span>';
|
||||
} else if (row.visible == 1) {
|
||||
return '<span class="badge badge-danger">隐藏</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'perms',
|
||||
title: '权限标识',
|
||||
width: '15%',
|
||||
align: "center",
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
width: '20%',
|
||||
align: "center",
|
||||
formatter: function(row, index) {
|
||||
var actions = [];
|
||||
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.menuId + '\')"><i class="fa fa-edit"></i>编辑</a> ');
|
||||
actions.push('<a class="btn btn-info btn-xs ' + addFlag + '" href="#" onclick="$.operate.add(\'' + row.menuId + '\')"><i class="fa fa-plus"></i>新增</a> ');
|
||||
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="remove(\'' + row.menuId + '\')"><i class="fa fa-remove"></i>删除</a>');
|
||||
return actions.join('');
|
||||
}
|
||||
}]
|
||||
};
|
||||
$.treeTable.init(options);
|
||||
}
|
||||
|
||||
function remove(id) {
|
||||
$.modal.confirm("确定删除该条" + $.table._option.modalName + "信息吗?", function() {
|
||||
$.ajax({
|
||||
type : 'post',
|
||||
url: prefix + "/remove/" + id,
|
||||
success : function(result) {
|
||||
if (result.code == web_status.SUCCESS) {
|
||||
$.modal.alertSuccess(result.msg);
|
||||
loading();
|
||||
} else {
|
||||
$.modal.alertError(result.msg);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
171
src/main/resources/templates/system/menu/tree.html
Normal file
171
src/main/resources/templates/system/menu/tree.html
Normal file
@ -0,0 +1,171 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
|
||||
<meta charset="utf-8">
|
||||
<head th:include="include :: header"></head>
|
||||
<link th:href="@{/ajax/libs/jquery-ztree/3.5/css/metro/zTreeStyle.css}" rel="stylesheet"/>
|
||||
<style>
|
||||
body{height:auto;font-family: "Microsoft YaHei";}
|
||||
button{font-family: "SimSun","Helvetica Neue",Helvetica,Arial;}
|
||||
</style>
|
||||
<body class="hold-transition box box-main">
|
||||
<input id="treeId" name="treeId" type="hidden"/>
|
||||
<input id="treeName" name="treeName" type="hidden" th:value="${treeName}"/>
|
||||
<div class="wrapper"><div class="treeShowHideButton" onclick="search();">
|
||||
<label id="btnShow" title="显示搜索" style="display:none;">︾</label>
|
||||
<label id="btnHide" title="隐藏搜索">︽</label>
|
||||
</div>
|
||||
<div class="treeSearchInput" id="search">
|
||||
<label for="keyword">关键字:</label><input type="text" class="empty" id="keyword" maxlength="50">
|
||||
<button class="btn" id="btn" onclick="searchNode()"> 搜索 </button>
|
||||
</div>
|
||||
<div class="treeExpandCollapse">
|
||||
<a href="javascript:" id="btnExpand">展开</a> /
|
||||
<a href="javascript:" id="btnCollapse">折叠</a>
|
||||
</div>
|
||||
<div id="tree" class="ztree treeselect"></div>
|
||||
</div>
|
||||
<div class="layui-layer-btn">
|
||||
<a class="layui-layer-btn0" th:onclick="'javascript:loadObj()'"><i class="fa fa-check"></i> 确定</a>
|
||||
<a class="layui-layer-btn1" onclick="$.modal.close()"><i class="fa fa-close"></i> 关闭</a>
|
||||
</div>
|
||||
<div th:include="include::footer"></div>
|
||||
<script th:src="@{/ajax/libs/jquery-ztree/3.5/js/jquery.ztree.all-3.5.js}"></script>
|
||||
<script th:inline="javascript">
|
||||
// 树结构初始化加载
|
||||
var setting = {view:{selectedMulti:false},data:{key:{title:"title"},simpleData:{enable:true}},
|
||||
callback:{onClick:function(event, treeId, treeNode){
|
||||
var treeId = treeNode.id;
|
||||
var treeName = treeNode.name;
|
||||
$("#treeId").val(treeId);
|
||||
$("#treeName").val(treeName);
|
||||
}}
|
||||
}, tree, loadTree = function(){
|
||||
$.get(ctx + "system/menu/menuTreeData", function(data) {
|
||||
var treeName = $("#treeName").val();
|
||||
tree = $.fn.zTree.init($("#tree"), setting, data);
|
||||
// 展开第一级节点
|
||||
var nodes = tree.getNodesByParam("level", 0);
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
tree.expandNode(nodes[i], false, false, false);
|
||||
selectCheckNode(treeName,nodes[i]);
|
||||
}
|
||||
}, null, null, "正在加载,请稍后...");
|
||||
};
|
||||
|
||||
$(function() {
|
||||
loadTree();
|
||||
});
|
||||
|
||||
function selectCheckNode(treeName, node) {
|
||||
if(treeName == node.name){
|
||||
tree.selectNode(node, true);
|
||||
}
|
||||
}
|
||||
|
||||
$('#btnExpand').click(function() {
|
||||
tree.expandAll(true);
|
||||
});
|
||||
$('#btnCollapse').click(function() {
|
||||
tree.expandAll(false);
|
||||
});
|
||||
|
||||
function loadObj(){
|
||||
var treeId = $("#treeId").val();
|
||||
var treeName = $("#treeName").val();
|
||||
parent.$("#treeId").val(treeId);
|
||||
parent.$("#treeName").val(treeName);
|
||||
var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
|
||||
parent.layer.close(index);
|
||||
}
|
||||
|
||||
var lastValue = "", nodeList = [], key = $("#keyword");
|
||||
key.bind("focus", focusKey).bind("blur", blurKey).bind("change cut input propertychange", searchNode);
|
||||
key.bind("keydown", function (e){if(e.which == 13){searchNode();}});
|
||||
|
||||
function focusKey(e) {
|
||||
if (key.hasClass("empty")) {
|
||||
key.removeClass("empty");
|
||||
}
|
||||
}
|
||||
|
||||
function blurKey(e) {
|
||||
if (key.get(0).value === "") {
|
||||
key.addClass("empty");
|
||||
}
|
||||
searchNode(e);
|
||||
}
|
||||
|
||||
function searchNode() {
|
||||
var value = $.trim(key.get(0).value);
|
||||
var keyType = "name";
|
||||
if (lastValue === value) {
|
||||
return;
|
||||
}
|
||||
lastValue = value;
|
||||
var nodes = tree.getNodes();
|
||||
if (value == "") {
|
||||
showAllNode(nodes);
|
||||
return;
|
||||
}
|
||||
hideAllNode(nodes);
|
||||
nodeList = tree.getNodesByParamFuzzy(keyType, value);
|
||||
updateNodes(nodeList);
|
||||
}
|
||||
|
||||
function hideAllNode(nodes){
|
||||
var tree = $.fn.zTree.getZTreeObj("tree");
|
||||
nodes = tree.transformToArray(nodes);
|
||||
for(var i=nodes.length-1; i>=0; i--) {
|
||||
tree.hideNode(nodes[i]);
|
||||
}
|
||||
}
|
||||
|
||||
function showAllNode(nodes){
|
||||
nodes = tree.transformToArray(nodes);
|
||||
for(var i=nodes.length-1; i>=0; i--) {
|
||||
if(nodes[i].getParentNode()!=null){
|
||||
tree.expandNode(nodes[i],false,false,false,false);
|
||||
}else{
|
||||
tree.expandNode(nodes[i],true,true,false,false);
|
||||
}
|
||||
tree.showNode(nodes[i]);
|
||||
showAllNode(nodes[i].children);
|
||||
}
|
||||
}
|
||||
|
||||
function updateNodes(nodeList) {
|
||||
tree.showNodes(nodeList);
|
||||
for(var i=0, l=nodeList.length; i<l; i++) {
|
||||
var treeNode = nodeList[i];
|
||||
showChildren(treeNode);
|
||||
showParent(treeNode)
|
||||
}
|
||||
}
|
||||
|
||||
function showChildren(treeNode){
|
||||
if (treeNode.isParent){
|
||||
for(var idx in treeNode.children){
|
||||
var node = treeNode.children[idx];
|
||||
tree.showNode(node);
|
||||
showChildren(node);
|
||||
}
|
||||
}
|
||||
}
|
||||
function showParent(treeNode){
|
||||
var parentNode;
|
||||
while((parentNode = treeNode.getParentNode()) != null){
|
||||
tree.showNode(parentNode);
|
||||
tree.expandNode(parentNode, true, false, false);
|
||||
treeNode = parentNode;
|
||||
}
|
||||
}
|
||||
|
||||
function search($this) {
|
||||
$('#search').slideToggle(200);
|
||||
$('#btnShow').toggle();
|
||||
$('#btnHide').toggle();
|
||||
$('#keyword').focus();
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
Reference in New Issue
Block a user