140 lines
8.4 KiB
PHP
140 lines
8.4 KiB
PHP
@section('title', '菜单编辑')
|
||
@section('content')
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">上级:</label>
|
||
<div class="layui-input-block">
|
||
<select name="category" lay-verify="required">
|
||
<option value=""></option>
|
||
<option value="0" {{empty($menu)||(isset($menu['parent_id'])&&$menu['parent_id']==0)?'selected':''}}>一级菜单</option>
|
||
@if(is_array($menus)&&$menus)
|
||
@foreach($menus as $menus_child)
|
||
<option value="{{$menus_child['id']}}" {{(isset($menu['parent_id'])&&$menu['parent_id'] == $menus_child['id']) ? 'selected' : ''}}>{{$menus_child==0?'':' ├─'}}{{$menus_child['title']}}</option>
|
||
@endforeach
|
||
@endif
|
||
</select>
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">名称:</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" value="{{$menu['title'] or ''}}" name="name" required lay-verify="name" placeholder="请输入名称" autocomplete="off" class="layui-input">
|
||
</div>
|
||
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">排序:</label>
|
||
<div class="layui-input-block">
|
||
<input type="number" value="{{$menu['order'] or ''}}" name="order" required lay-verify="order" placeholder="请输入数字" autocomplete="off" class="layui-input">
|
||
</div>
|
||
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">图标:</label>
|
||
<div class="layui-input-block">
|
||
<input type="hidden" name="icon" value="{{$menu['icon'] or ''}}" required lay-verify="required" placeholder="请选择图标" autocomplete="off" class="layui-input" readonly>
|
||
<div id="icon" style="margin-top: 4px;"></div>
|
||
<div id="icon_page"></div>
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">URL:</label>
|
||
<div class="layui-input-block">
|
||
<input type="text" value="{{$menu['uri'] or ''}}" name="uri" required lay-verify="uri" placeholder="请输入URL,样式如:/fzs" autocomplete="off" class="layui-input">
|
||
</div>
|
||
</div>
|
||
<div class="layui-form-item">
|
||
<label class="layui-form-label">角色:</label>
|
||
<div class="layui-input-block">
|
||
@foreach($roles as $role)
|
||
<input type="checkbox" value="{{$role['id']}}" required {{isset($menu['roleIds'])&&in_array($role['id'],$menu['roleIds'])?'checked':''}} lay-filter="roles_check" name="roles[]" title="{{$role['display_name']}}">
|
||
@endforeach
|
||
</div>
|
||
</div>
|
||
@endsection
|
||
@section('id',$id)
|
||
@section('js')
|
||
<script>
|
||
function chose_icon(obj){
|
||
$("input[name='icon']").val(''+$(obj).attr('data-icon'));
|
||
if($(obj).hasClass('layui-btn-warm'))$(obj).removeClass('layui-btn-warm');
|
||
else {
|
||
var icons = $('.fzs-icon');
|
||
icons.each(function(index, item) {
|
||
$(item).removeClass('layui-btn-warm');
|
||
});
|
||
$(obj).addClass('layui-btn-warm');
|
||
}
|
||
}
|
||
layui.use(['form','laypage', 'layer'], function() {
|
||
var form = layui.form();
|
||
form.render();
|
||
var laypage = layui.laypage
|
||
,layer = layui.layer;
|
||
var data = [
|
||
['播放',''],['播放暂停',''],['音乐',''],['视频',''],['语音',''],['喇叭',''],['对话',''],['设置',''],['隐身',''],['搜索',''],['分享',''],['刷新','ဂ'],['loading',''],['loading',''],['设置',''],['引擎',''],['阅卷错号','ဆ'],['错','ဇ'],['报表',''],['star',''],['圆点',''],['客服',''],['发布',''],['列表',''],['图表',''],['正确','စ'],['换肤',''],['在线',''],['右右',''],['左左',''],['表格',''],['树状',''],['上传',''],['添加',''],['下载',''],['选择模版',''],['工具',''],['添加',''],['编辑',''],['删除',''],['向下',''],['文件',''],['布局',''],['添加',''],['直播-翻页',''],['404',''],['轮播组图',''],['帮助',''],['代码',''],['进水',''],['关于',''],['向上',''],['日期',''],['文件',''],['top',''],['对',''],['窗口',''],['表情',''],['正确',''],['文件下载',''],['图片',''],['链接',''],['记录',''],['文件夹',''],['删除线',''],['unlink',''],['编辑_文字',''],['三角',''],['单选框-候选',''],['单选框-选中',''],['居中对齐',''],['右对齐',''],['左对齐',''],['勾选框(未打勾)',''],['勾选框(已打勾)',''],['加粗',''],['聊天',''],['文件夹_反',''],['手机',''],['表情',''],['html',''],['表单',''],['tab',''],['代码',''],['字体-下划线',''],['三角',''],['图片',''],['斜体',''],['好友请求','']];
|
||
var nums = 50;
|
||
var render = function(data,curr){
|
||
var arr = []
|
||
,thisData = data.concat().splice(curr*nums-nums, nums);
|
||
console.log($("input[name='icon']").val().slice(4));
|
||
layui.each(thisData, function(index, item){
|
||
var iconclass = '';
|
||
if($("input[name='icon']").val()==item[1])iconclass = 'layui-btn-warm';
|
||
arr.push('<div class="layui-btn layui-btn-primary layui-btn-small fzs-icon '+iconclass+'" data-icon="'+item[1].slice(4)+'" style="margin-bottom: 8px;margin-left:0px;margin-right:10px;" onclick="chose_icon(this)" title="'+item[0]+'"><i class="layui-icon">'+ item[1] +'</i></div>');
|
||
});
|
||
return arr.join("");
|
||
|
||
};
|
||
laypage({
|
||
cont: 'icon_page'
|
||
,pages: Math.ceil(data.length/nums)
|
||
,groups:4
|
||
,jump: function(obj){
|
||
document.getElementById('icon').innerHTML = render(data, obj.curr);
|
||
}
|
||
});
|
||
form.verify({
|
||
name: [/^.{2,12}$/, '菜单名长度2到12位之间'],
|
||
uri: [/^\/(.*)$/, 'URL格式错误'],
|
||
});
|
||
form.on('submit(formDemo)', function(data) {
|
||
var chk_value =[];
|
||
var is_have_admin = 1;
|
||
$('input[name="roles[]"]:checked').each(function(){
|
||
chk_value.push($(this).val());
|
||
if($(this).val()==1)is_have_admin--;
|
||
});
|
||
if(chk_value.length==0){
|
||
layer.msg('至少选择一个所属角色',{shift: 6,icon:5});
|
||
return false;
|
||
}
|
||
if(is_have_admin){
|
||
layer.msg('必选选择超级管理员角色',{shift: 6,icon:5});
|
||
return false;
|
||
}
|
||
$.ajax({
|
||
url:"{{url('/menus')}}",
|
||
data:$('form').serialize(),
|
||
type:'post',
|
||
dataType:'json',
|
||
success:function(res){
|
||
if(res.status == 1){
|
||
layer.msg(res.msg,{icon:6});
|
||
var index = parent.layer.getFrameIndex(window.name);
|
||
setTimeout('parent.layer.close('+index+')',2000);
|
||
//parent.layer.close(index);
|
||
}else{
|
||
layer.msg(res.msg,{shift: 6,icon:5});
|
||
}
|
||
},
|
||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||
layer.msg('网络失败', {time: 1000});
|
||
}
|
||
});
|
||
return false;
|
||
});
|
||
});
|
||
</script>
|
||
@endsection
|
||
@extends('common.edit')
|