|  |  | 
 |  |  | <style> | 
 |  |  |     #user-add { | 
 |  |  |     #video-add { | 
 |  |  |         padding: 20px 25px 25px 0; | 
 |  |  |     } | 
 |  |  |     #user-add .layui-treeSelect .ztree li a, .ztree li span { | 
 |  |  |     #video-add .layui-treeSelect .ztree li a, .ztree li span { | 
 |  |  |         margin: 0 0 2px 3px !important; | 
 |  |  |     } | 
 |  |  |     #user-add #data-permission-tree-block { | 
 |  |  |     #video-add #data-permission-tree-block { | 
 |  |  |         border: 1px solid #eee; | 
 |  |  |         border-radius: 2px; | 
 |  |  |         padding: 3px 0; | 
 |  |  |     } | 
 |  |  |     #user-add .layui-treeSelect .ztree li span.button.switch { | 
 |  |  |     #video-add .layui-treeSelect .ztree li span.button.switch { | 
 |  |  |         top: 1px; | 
 |  |  |         left: 3px; | 
 |  |  |     } | 
 |  |  |     #video-add .upload { | 
 |  |  |         cursor: pointer; | 
 |  |  |     } | 
 |  |  | </style> | 
 |  |  | <div class="layui-fluid" id="user-add"> | 
 |  |  |     <form class="layui-form" action="" lay-filter="user-add-form"> | 
 |  |  | <div class="layui-fluid" id="video-add"> | 
 |  |  |     <form class="layui-form" action="" lay-filter="video-add-form"> | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label febs-form-item-require">用户名:</label> | 
 |  |  |             <div class="layui-col-md6"> | 
 |  |  |                 <label class="layui-form-label febs-form-item-require">视频标题:</label> | 
 |  |  |                 <div class="layui-input-block"> | 
 |  |  |                     <input type="text" name="title" minlength="2" maxlength="10" lay-verify="range" | 
 |  |  |                            autocomplete="off" class="layui-input"> | 
 |  |  |                 </div> | 
 |  |  |             </div> | 
 |  |  |             <div class="layui-col-md6"> | 
 |  |  |                 <label class="layui-form-label febs-form-item-require">视频分类:</label> | 
 |  |  |                 <div class="layui-input-block" id="video-cate"> | 
 |  |  |                 </div> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label">简介:</label> | 
 |  |  |             <div class="layui-input-block"> | 
 |  |  |                 <input type="text" name="username" minlength="2" maxlength="10" lay-verify="range|username" | 
 |  |  |                        autocomplete="off" class="layui-input"> | 
 |  |  |                 <textarea name="intro" autocomplete="off" placeholder="请输入简介" class="layui-textarea"></textarea> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label">手机:</label> | 
 |  |  |             <label class="layui-form-label">缩略图:</label> | 
 |  |  |             <div class="layui-input-block"> | 
 |  |  |                 <input type="tel" name="mobile" lay-verify="phone" autocomplete="off" class="layui-input"> | 
 |  |  |                 <div class="layui-upload"> | 
 |  |  |                     <button type="button" class="layui-btn" id="thumbUpload">上传图片</button> | 
 |  |  |                     <div class="layui-upload-list"> | 
 |  |  |                         <img class="layui-upload-img" id="thumb" style="width: 150px;"/> | 
 |  |  |                         <input class="layui-input febs-hide" name="thumb" autocomplete="off" /> | 
 |  |  |                     </div> | 
 |  |  |                 </div> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |  | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label">邮箱:</label> | 
 |  |  |             <label class="layui-form-label febs-form-item-require">章节:</label> | 
 |  |  |             <div class="layui-input-block"> | 
 |  |  |                 <input type="text" name="email" lay-verify="email" maxlength="50" autocomplete="off" | 
 |  |  |                        class="layui-input"> | 
 |  |  |                 <button class="layui-btn" type="button" id="addItem">新增章节</button> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label febs-form-item-require">角色:</label> | 
 |  |  |             <label class="layui-form-label"></label> | 
 |  |  |             <div class="layui-input-block"> | 
 |  |  |                 <select name="roleId" | 
 |  |  |                         lay-verify="required" | 
 |  |  |                         xm-select-direction="down" | 
 |  |  |                         xm-select="user-add-role" | 
 |  |  |                         xm-select-skin="default"> | 
 |  |  |                 </select> | 
 |  |  |                 <table class="layui-table"> | 
 |  |  |                     <thead> | 
 |  |  |                         <tr> | 
 |  |  |                             <th>章节标题</th> | 
 |  |  |                             <th>缩略图</th> | 
 |  |  |                             <th>资源名称</th> | 
 |  |  |                             <th>操作</th> | 
 |  |  |                         </tr> | 
 |  |  |                     </thead> | 
 |  |  |                     <tbody id="itemList"> | 
 |  |  |                     </tbody> | 
 |  |  |                 </table> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |  | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label">部门:</label> | 
 |  |  |             <label class="layui-form-label febs-form-item-require">是否免费:</label> | 
 |  |  |             <div class="layui-input-block"> | 
 |  |  |                 <input type="text" name="deptId" id="user-add-dept" class="layui-input"> | 
 |  |  |                 <input type="radio" name="isFree" value="1" title="免费" checked> | 
 |  |  |                 <input type="radio" name="isFree" value="2" title="会员"> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label febs-form-item-require">状态:</label> | 
 |  |  |             <div class="layui-input-block"> | 
 |  |  |                 <input type="radio" name="status" value="1" title="有效" checked=""> | 
 |  |  |                 <input type="radio" name="status" value="0" title="禁用"> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label febs-form-item-require">性别:</label> | 
 |  |  |             <div class="layui-input-block"> | 
 |  |  |                 <input type="radio" name="sex" value="0" title="男性"> | 
 |  |  |                 <input type="radio" name="sex" value="1" title="女性"> | 
 |  |  |                 <input type="radio" name="sex" value="2" title="保密" checked=""> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |         <div class="layui-form-item"> | 
 |  |  |             <label class="layui-form-label">数据权限:</label> | 
 |  |  |             <div class="layui-input-block" id="data-permission-tree-block"> | 
 |  |  |                 <div class="data-permission-tree" lay-filter="dataPermissionTree" style="margin-left: 1rem"></div> | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |  | 
 |  |  |         <div class="layui-form-item layui-form-text"> | 
 |  |  |             <label class="layui-form-label">备注:</label> | 
 |  |  |             <div class="layui-input-block"> | 
 |  |  | 
 |  |  |             </div> | 
 |  |  |         </div> | 
 |  |  |         <div class="layui-form-item febs-hide"> | 
 |  |  |             <button class="layui-btn" lay-submit="" lay-filter="user-add-form-submit" id="submit"></button> | 
 |  |  |             <button class="layui-btn" lay-submit="" lay-filter="video-add-form-submit" id="submit"></button> | 
 |  |  |             <button type="reset" class="layui-btn" id="reset"></button> | 
 |  |  |         </div> | 
 |  |  |     </form> | 
 |  |  | </div> | 
 |  |  |  | 
 |  |  | <script> | 
 |  |  |     layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree'], function () { | 
 |  |  | <script type="text/html" id="tableRowTemplate"> | 
 |  |  |     {{#  layui.each(d, function(index, item){ }} | 
 |  |  |     <tr> | 
 |  |  |         <th> | 
 |  |  |             <input type="text" class="febs-hide" name="sourceId" value="{{item.id}}"/> | 
 |  |  |             <input type="text" class="layui-input" name="name" placeholder="" value=""/> | 
 |  |  |         </th> | 
 |  |  |         <th> | 
 |  |  |             <div class="upload{{item.id}}"> | 
 |  |  |                 {{#  if(!item.thumb || item.thumb == ''){ }} | 
 |  |  |                 <img class="layui-upload-img item-img  febs-hide" src="" style="width: 150px;"/> | 
 |  |  |                 <button class="layui-btn layui-btn-xs" type="button">点击上传</button> | 
 |  |  |                 <input type="text" class="febs-hide" autocomplete="off" name="itemThumb" /> | 
 |  |  |                 {{# } else { }} | 
 |  |  |                 <img class="layui-upload-img item-img" src="{{item.thumb}}" style="width: 150px;"/> | 
 |  |  |                 <button class="layui-btn layui-btn-xs febs-hide" type="button">点击上传</button> | 
 |  |  |                 <input type="text" class="febs-hide" autocomplete="off" name="itemThumb" /> | 
 |  |  |                 {{# } }} | 
 |  |  |             </div> | 
 |  |  |         </th> | 
 |  |  |         <th>{{item.name}}</th> | 
 |  |  |         <th> | 
 |  |  |             <button class="layui-btn layui-btn-xs layui-btn-danger item-delete" type="button">删除</button> | 
 |  |  |         </th> | 
 |  |  |     </tr> | 
 |  |  |     {{#  }); }} | 
 |  |  | </script> | 
 |  |  |  | 
 |  |  | <script data-th-inline="javascript"> | 
 |  |  |     layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree', 'upload', 'xmSelect', 'laytpl', 'table'], function () { | 
 |  |  |         var $ = layui.$, | 
 |  |  |             febs = layui.febs, | 
 |  |  |             layer = layui.layer, | 
 |  |  |             formSelects = layui.formSelects, | 
 |  |  |             treeSelect = layui.treeSelect, | 
 |  |  |             form = layui.form, | 
 |  |  |             eleTree = layui.eleTree, | 
 |  |  |             $view = $('#user-add'), | 
 |  |  |             table = layui.table, | 
 |  |  |             $view = $('#video-add'), | 
 |  |  |             upload = layui.upload, | 
 |  |  |             validate = layui.validate, | 
 |  |  |             _deptTree; | 
 |  |  |             laytpl = layui.laytpl, | 
 |  |  |             tableUpload, | 
 |  |  |             templateHtml = tableRowTemplate.innerHTML, | 
 |  |  |             $itemList = $("#itemList"); | 
 |  |  |  | 
 |  |  |         form.verify(validate); | 
 |  |  |         form.render(); | 
 |  |  |  | 
 |  |  |         formSelects.render(); | 
 |  |  |         renderDeptTree(); | 
 |  |  |         // 已添加的item数据 | 
 |  |  |         var itemData = []; | 
 |  |  |         var videoCate = xmSelect.render({ | 
 |  |  |             el: '#video-cate', | 
 |  |  |             language: 'zn', | 
 |  |  |             prop : { | 
 |  |  |                 value : 'id' | 
 |  |  |             }, | 
 |  |  |             data: [] | 
 |  |  |         }) | 
 |  |  |  | 
 |  |  |         treeSelect.render({ | 
 |  |  |             elem: $view.find('#user-add-dept'), | 
 |  |  |             type: 'get', | 
 |  |  |             data: ctx + 'dept/select/tree', | 
 |  |  |             placeholder: '请选择', | 
 |  |  |             search: false | 
 |  |  |         }); | 
 |  |  |         febs.get(ctx + 'video/categoryTree', null, function(res) { | 
 |  |  |             videoCate.update({ | 
 |  |  |                 data : res.data, | 
 |  |  |                 autoRow: true, | 
 |  |  |             }); | 
 |  |  |         }) | 
 |  |  |  | 
 |  |  |         function renderDeptTree() { | 
 |  |  |             _deptTree = eleTree.render({ | 
 |  |  |                 elem: $view.find('.data-permission-tree'), | 
 |  |  |                 url: ctx + 'dept/tree', | 
 |  |  |                 accordion: true, | 
 |  |  |                 highlightCurrent: true, | 
 |  |  |                 showCheckbox: true, | 
 |  |  |                 checkStrictly: true, | 
 |  |  |                 renderAfterExpand: false, | 
 |  |  |                 request: { | 
 |  |  |                     name: 'name', | 
 |  |  |                     key: "id", | 
 |  |  |                     checked: "checked", | 
 |  |  |                     data: 'data' | 
 |  |  |         $("#addItem").on('click', function() { | 
 |  |  |             febs.modal.open('选择视频资源', 'video/source/select/list', { | 
 |  |  |                 area: $(window).width() <= 750 ? '90%' : '50%', | 
 |  |  |                 offset: '30px', | 
 |  |  |                 btn: ['提交', '取消'], | 
 |  |  |                 yes: function (index, layero) { | 
 |  |  |                     var selectData = table.checkStatus('videoSourceSelectTable').data; | 
 |  |  |  | 
 |  |  |                     // 去重 | 
 |  |  |                     var noRepeatData = []; | 
 |  |  |                     if (itemData.length != 0) { | 
 |  |  |                         for (var i = 0; i < selectData.length; i++) { | 
 |  |  |                             var flag = true; | 
 |  |  |                             for(var j = 0; j < itemData.length; j++) { | 
 |  |  |                                 if (selectData[i].id == itemData[j].id) { | 
 |  |  |                                     flag = false; | 
 |  |  |                                     break; | 
 |  |  |                                 } | 
 |  |  |                             } | 
 |  |  |  | 
 |  |  |                             if (flag) { | 
 |  |  |                                 noRepeatData.push(selectData[i]); | 
 |  |  |                             } | 
 |  |  |                         } | 
 |  |  |  | 
 |  |  |                     } else { | 
 |  |  |                         noRepeatData = selectData; | 
 |  |  |                     } | 
 |  |  |  | 
 |  |  |                     if (noRepeatData.length > 0) { | 
 |  |  |                         itemData = itemData.concat(noRepeatData); | 
 |  |  |                         laytpl(templateHtml).render(noRepeatData, function(html) { | 
 |  |  |                             $itemList.append(html); | 
 |  |  |                         }) | 
 |  |  |  | 
 |  |  |                         for (var i = 0; i < noRepeatData.length; i++) { | 
 |  |  |                             bindUpload(noRepeatData[i].id); | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  | `` | 
 |  |  |                     deleteUnBind(); | 
 |  |  |                     deleteBind(); | 
 |  |  |                     layer.close(layer.index); | 
 |  |  |                 }, | 
 |  |  |                 response: { | 
 |  |  |                     statusName: "code", | 
 |  |  |                     statusCode: 200, | 
 |  |  |                     dataName: "data" | 
 |  |  |                 btn2: function () { | 
 |  |  |                     layer.close(layer.index); | 
 |  |  |                 } | 
 |  |  |             }); | 
 |  |  |             return _deptTree; | 
 |  |  |         } | 
 |  |  |         }); | 
 |  |  |  | 
 |  |  |         formSelects.config('user-add-role', { | 
 |  |  |             searchUrl: ctx + 'role', | 
 |  |  |             response: { | 
 |  |  |                 statusCode: 200 | 
 |  |  |             }, | 
 |  |  |             beforeSuccess: function (id, url, searchVal, result) { | 
 |  |  |                 var data = result.data; | 
 |  |  |                 var tranData = []; | 
 |  |  |                 for (var i = 0; i < data.length; i++) { | 
 |  |  |                     tranData.push({ | 
 |  |  |                         name: data[i].roleName, | 
 |  |  |                         value: data[i].roleId | 
 |  |  |                     }) | 
 |  |  |         upload.render({ | 
 |  |  |             elem: '#thumbUpload' | 
 |  |  |             ,url: 'common/upload' | 
 |  |  |             ,before: function(obj){ | 
 |  |  |                 //预读本地文件示例,不支持ie8 | 
 |  |  |                 obj.preview(function(index, file, result){ | 
 |  |  |                     $('#thumb').attr('src', result); | 
 |  |  |                 }); | 
 |  |  |                 layer.msg('上传中', {icon: 16, time: 0}); | 
 |  |  |             } | 
 |  |  |             ,done: function(res){ | 
 |  |  |                 //如果上传失败 | 
 |  |  |                 if(res.code != 200){ | 
 |  |  |                     return layer.msg('上传失败'); | 
 |  |  |                 } | 
 |  |  |                 result.data = tranData; | 
 |  |  |                 return result; | 
 |  |  |             }, | 
 |  |  |             error: function (id, url, searchVal, err) { | 
 |  |  |                 console.error(err); | 
 |  |  |                 febs.alert.error('获取角色列表失败'); | 
 |  |  |  | 
 |  |  |                 $('#thumb').next().val(res.data[0]) | 
 |  |  |                 layer.msg('上传成功', {icon: 1}); | 
 |  |  |             } | 
 |  |  |             ,error: function(){ | 
 |  |  |                 layer.msg('上传失败'); | 
 |  |  |             } | 
 |  |  |         }); | 
 |  |  |  | 
 |  |  |         form.on('submit(user-add-form-submit)', function (data) { | 
 |  |  |             var checked = _deptTree.getChecked(false, true); | 
 |  |  |             var deptIds = []; | 
 |  |  |             layui.each(checked, function (key, item) { | 
 |  |  |                 deptIds.push(item.id) | 
 |  |  |         // 表格中的图片上传 | 
 |  |  |         function bindUpload(id) { | 
 |  |  |             upload.render({ | 
 |  |  |                 elem: '.upload' + id | 
 |  |  |                 ,url: ctx + 'common/upload' //改成您自己的上传接口 | 
 |  |  |                 // ,accept: 'file' | 
 |  |  |                 ,before: function(obj){ | 
 |  |  |                     var item = this.item; | 
 |  |  |                     var $button = $(item).find("button"); | 
 |  |  |                     var $img = $(item).find('img'); | 
 |  |  |  | 
 |  |  |                     // 如果img标签内没有src,说明没有上传图片,故此时显示的是button,所以需要操作一遍显示隐藏 | 
 |  |  |                     if (!$img.attr("src")) { | 
 |  |  |                         $button.addClass("febs-hide"); | 
 |  |  |                         $img.removeClass("febs-hide"); | 
 |  |  |                     } | 
 |  |  |  | 
 |  |  |                     obj.preview(function(index, file, result){ | 
 |  |  |                         $img.attr('src', result); | 
 |  |  |                     }); | 
 |  |  |  | 
 |  |  |                     layer.msg('上传中', {icon: 16, time: 0}); | 
 |  |  |                 } | 
 |  |  |                 ,done: function(res){ | 
 |  |  |                     var item = this.item; | 
 |  |  |                     var $itemThumb = $(item).find('input[name="itemThumb"]'); | 
 |  |  |                     var $button = $(item).find("button"); | 
 |  |  |                     var $img = $(item).find('img'); | 
 |  |  |  | 
 |  |  |                     //如果上传失败 | 
 |  |  |                     if(res.code !== 200){ | 
 |  |  |                         layer.msg('上传失败'); | 
 |  |  |                         // 上传失败则重置 | 
 |  |  |                         $button.removeClass("febs-hide"); | 
 |  |  |                         $img.addClass("febs-hide"); | 
 |  |  |                         $img.attr('src', ''); | 
 |  |  |                         return | 
 |  |  |                     } | 
 |  |  |                     $itemThumb.val(res.data[0]); | 
 |  |  |                     layer.msg('上传完毕', {icon: 1}); | 
 |  |  |                 } | 
 |  |  |                 ,error: function(){ | 
 |  |  |                     return layer.msg('上传失败'); | 
 |  |  |                 } | 
 |  |  |             }); | 
 |  |  |             data.deptIds = deptIds.join(","); | 
 |  |  |             febs.post(ctx + 'user', data.field, function () { | 
 |  |  |                 layer.closeAll(); | 
 |  |  |                 febs.alert.success('新增用户成功,初始密码为 1234qwer'); | 
 |  |  |                 $('#febs-user').find('#query').click(); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         form.on('submit(video-add-form-submit)', function (data) { | 
 |  |  |             var $tr = $("#itemList").find("tr"); | 
 |  |  |             var itemLength = $tr.length; | 
 |  |  |             if (itemLength == 0) { | 
 |  |  |                 layer.msg('请添加章节!'); | 
 |  |  |                 return; | 
 |  |  |             } | 
 |  |  |  | 
 |  |  |             var cateIds = videoCate.getValue('value'); | 
 |  |  |             if (cateIds.length <= 0) { | 
 |  |  |                 febs.alert.warn('至少选择一个目录'); | 
 |  |  |                 return false; | 
 |  |  |             } | 
 |  |  |  | 
 |  |  |             var itemData = []; | 
 |  |  |             $tr.each(function() { | 
 |  |  |                 var data = {}; | 
 |  |  |                 var sourceId = $(this).find("input[name = 'sourceId']").val(); | 
 |  |  |                 var videoItemName = $(this).find("input[name = 'name']").val(); | 
 |  |  |                 var itemThumb = $(this).find("input[name = 'itemThumb']").val(); | 
 |  |  |  | 
 |  |  |                 data.sourceId = sourceId; | 
 |  |  |                 data.name = videoItemName; | 
 |  |  |                 data.thumb = itemThumb; | 
 |  |  |                 itemData.push(data); | 
 |  |  |             }); | 
 |  |  |  | 
 |  |  |             if (!data.field.thumb) { | 
 |  |  |                 febs.alert.warn('未上传缩略图'); | 
 |  |  |                 return; | 
 |  |  |             } | 
 |  |  |  | 
 |  |  |             var field = {}; | 
 |  |  |             field.items = itemData; | 
 |  |  |             field.title = data.field.title; | 
 |  |  |             field.cateIds = cateIds.join(","); | 
 |  |  |             field.thumb = data.field.thumb; | 
 |  |  |             field.isFree = data.field.isFree; | 
 |  |  |             field.intro = data.field.intro; | 
 |  |  |             console.log(field); | 
 |  |  |  | 
 |  |  |             $.ajax({ | 
 |  |  |                 url : ctx + 'video/video/add', | 
 |  |  |                 type : "post", | 
 |  |  |                 dataType : "json", | 
 |  |  |                 contentType : "application/json", | 
 |  |  |                 data : JSON.stringify(field), | 
 |  |  |                 success : function(res) { | 
 |  |  |                     console.log(res) | 
 |  |  |                     if (res.code != 200) { | 
 |  |  |                         febs.alert.warn(res.message); | 
 |  |  |                         return; | 
 |  |  |                     } | 
 |  |  |                     febs.alert.success('新增成功'); | 
 |  |  |                     $('#febs-video').find('#query').click(); | 
 |  |  |                     layer.closeAll(); | 
 |  |  |                 }, | 
 |  |  |                 error : function(err) { | 
 |  |  |                     layer.msg("请求错误"); | 
 |  |  |                 } | 
 |  |  |             }) | 
 |  |  |             return false; | 
 |  |  |         }); | 
 |  |  |  | 
 |  |  |         function deleteBind() { | 
 |  |  |             $(".item-delete").each(function(index, element) { | 
 |  |  |                 $(this).on("click", function() { | 
 |  |  |                     var $tr = $(this).parents("tr"); | 
 |  |  |                     var id = $tr.find("input[name='sourceId']").val(); | 
 |  |  |                     for (var i = 0; i < itemData.length; i++) { | 
 |  |  |                         if (itemData[i].id == id) { | 
 |  |  |                             itemData.splice(i, 1); | 
 |  |  |                             break; | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  |  | 
 |  |  |                     $tr.remove(); | 
 |  |  |                 }); | 
 |  |  |             }) | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         function deleteUnBind() { | 
 |  |  |             $(".item-delete").each(function(index, element) { | 
 |  |  |                 $(this).unbind('click'); | 
 |  |  |             }) | 
 |  |  |         } | 
 |  |  |     }); | 
 |  |  | </script> |