add.html 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>添加访客端入口</title>
  7. <link rel="shortcut icon" href="favicon.ico">
  8. <link href="__CSS__/bootstrap.min.css?v=3.3.6" rel="stylesheet">
  9. <link href="__CSS__/font-awesome.min.css?v=4.4.0" rel="stylesheet">
  10. <link href="__CSS__/animate.min.css" rel="stylesheet">
  11. <link href="__JS__/layui/css/layui.css" rel="stylesheet">
  12. <link href="__CSS__/style.min.css?v=4.1.0" rel="stylesheet">
  13. </head>
  14. <body class="gray-bg">
  15. <div class="layui-layer-shade" id="all_blank" style="display: none"></div>
  16. <div class="layui-layer layui-layer-dialog" id="check_img" style="display: none">
  17. <div class="layui-layer-title" style="cursor: move;">请选择图片</div>
  18. <div id="imgs" padding="0" class="layui-layer-content layui-layer-padding" style="height: 70vh;">
  19. {volist name="material" id="vo"}
  20. <div style="width: 21.5%;height:100px;float: left;text-align: center;background-color: #DCDCDC;margin: 1%;position: relative;">
  21. <div style="height:23px;line-height: 23px;width:80%;margin: 0 auto;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-size: 11px;">{$vo.name}</div>
  22. <img onclick="onCheckImg(`{$vo.url}`)" src="{$vo.url}" style="margin-top: 0px;height: 70px;">
  23. </div>
  24. {/volist}
  25. </div>
  26. <span class="layui-layer-setwin"></span>
  27. <div class="layui-layer-btn layui-layer-btn-">
  28. <a class="layui-layer-btn0" onclick="closeCheckImg()">取消</a>
  29. </div>
  30. <span class="layui-layer-resize"></span>
  31. </div>
  32. <div class="wrapper wrapper-content animated fadeInRight">
  33. <div class="row">
  34. <div class="col-sm-8">
  35. <div class="ibox float-e-margins">
  36. <div class="ibox-title">
  37. <h5>添加访客端入口</h5>
  38. </div>
  39. <div class="ibox-content">
  40. <form class="form-horizontal m-t layui-form" id="commentForm" method="post" action="{:url('settings/add')}">
  41. <div class="form-group">
  42. <label class="col-sm-3 control-label">名称:</label>
  43. <div class="input-group col-sm-4">
  44. <input id="name" type="text" class="form-control" name="name" required="" aria-required="true" placeholder="最多输入四个中文汉字">
  45. </div>
  46. </div>
  47. <div class="form-group">
  48. <label class="col-sm-3 control-label">排列顺序:</label>
  49. <div class="input-group col-sm-4">
  50. <input id="sort" type="text" class="form-control" name="sort" required="" aria-required="true" placeholder="请输入整数">
  51. </div>
  52. </div>
  53. <div class="form-group">
  54. <label class="col-sm-3 control-label">选择分组:</label>
  55. <input type="hidden" id="group_id" name="group_id" value="all"/>
  56. <div class="input-group col-sm-4 layui-form">
  57. <select lay-verify="required" lay-filter="group">
  58. <option value="all">所有客服组</option>
  59. {if !empty($groups)}
  60. {foreach name="groups" item="vo"}
  61. <option value="{$vo['id']}">{$vo['name']}</option>
  62. {/foreach}
  63. {/if}
  64. </select>
  65. </div>
  66. </div>
  67. <div class="form-group layui-form-item form-inline" style="height: 60px;">
  68. <input type="hidden" name="image" id="image"/>
  69. <label class="col-sm-3 control-label">图片:</label>
  70. <div class="input-group col-sm-1">
  71. <button type="button" class="layui-btn layui-btn-small" id="up-image">
  72. <i class="layui-icon"></i>上传图片</button>
  73. </div>
  74. <span>建议上传42px*42px</span>
  75. <button type="button" class="layui-btn layui-btn-small" id="" onclick="checkImg()">选择图片</button>
  76. <div class="input-group col-sm-3" id="images">
  77. <img src="" id="onChoiceImg" height="40px">
  78. </div>
  79. </div>
  80. <div class="form-group">
  81. <div class="col-sm-4 col-sm-offset-6">
  82. <button class="btn btn-primary btn-sm" type="submit">提交</button>
  83. </div>
  84. </div>
  85. </form>
  86. </div>
  87. </div>
  88. </div>
  89. </div>
  90. </div>
  91. <script src="__JS__/jquery.min.js?v=2.1.4"></script>
  92. <script src="__JS__/bootstrap.min.js?v=3.3.6"></script>
  93. <script src="__JS__/content.min.js?v=1.0.0"></script>
  94. <script src="__JS__/plugins/validate/jquery.validate.min.js"></script>
  95. <script src="__JS__/plugins/validate/messages_zh.min.js"></script>
  96. <script src="__JS__/plugins/layer/layer.min.js"></script>
  97. <script src="__JS__/layui/layui.js"></script>
  98. <script src="__JS__/jquery.form.js"></script>
  99. <script>
  100. function checkImg() {
  101. $("#all_blank").css({"z-index": "19991015", "background-color": "rgb(0, 0, 0)", "opacity": "0.3", "display": "block"});
  102. $("#check_img").css({"z-index": "19991016", "top": "40px", "left": "170px", "width": "70vw", "display": "block"});
  103. }
  104. function closeCheckImg() {
  105. $("#all_blank").css({"display": "none"});
  106. $("#check_img").css({"display": "none"});
  107. }
  108. function onCheckImg(path) {
  109. $("#all_blank").css({"display": "none"});
  110. $("#check_img").css({"display": "none"});
  111. $("#onChoiceImg").attr('src',path);
  112. $("#image").val(path);
  113. }
  114. </script>
  115. <script type="text/javascript">
  116. layui.use(['form', 'upload'], function(){
  117. var form = layui.form;
  118. var upload = layui.upload;
  119. //执行实例
  120. var uploadInst = upload.render({
  121. elem: '#up-image' //绑定元素
  122. ,url: "{:url('settings/upAvatar')}" //上传接口
  123. ,exts: 'png|jpg|jpeg|gif'
  124. ,done: function(res){
  125. //上传完毕回调
  126. if(0 == res.code){
  127. $("#images").html('<img src="' + res.data.src + '" id="onChoiceImg" height="40px">');
  128. $("#image").val(res.data.src);
  129. }else{
  130. layer.msg(res.msg);
  131. }
  132. }
  133. ,error: function(){
  134. //请求异常回调
  135. }
  136. });
  137. form.on('select(group)', function(value){
  138. $("#group_id").val(value.value);
  139. });
  140. });
  141. var index = '';
  142. function showStart(){
  143. index = layer.load(0, {shade: false});
  144. return true;
  145. }
  146. function showSuccess(res){
  147. layer.ready(function(){
  148. layer.close(index);
  149. if(1 == res.code){
  150. layer.alert(res.msg, {title: '友情提示', icon: 1, closeBtn: 0}, function(){
  151. window.location.href = '/admin/settings/index.html';
  152. });
  153. }else if(111 == res.code){
  154. window.location.reload();
  155. }else{
  156. layer.msg(res.msg, {anim: 6});
  157. }
  158. });
  159. }
  160. $(document).ready(function(){
  161. // 添加管理员
  162. var options = {
  163. beforeSubmit:showStart,
  164. success:showSuccess
  165. };
  166. $('#commentForm').submit(function(){
  167. $(this).ajaxSubmit(options);
  168. return false;
  169. });
  170. });
  171. // 表单验证
  172. $.validator.setDefaults({
  173. highlight: function(e) {
  174. $(e).closest(".form-group").removeClass("has-success").addClass("has-error")
  175. },
  176. success: function(e) {
  177. e.closest(".form-group").removeClass("has-error").addClass("has-success")
  178. },
  179. errorElement: "span",
  180. errorPlacement: function(e, r) {
  181. e.appendTo(r.is(":radio") || r.is(":checkbox") ? r.parent().parent().parent() : r.parent())
  182. },
  183. errorClass: "help-block m-b-none",
  184. validClass: "help-block m-b-none"
  185. });
  186. </script>
  187. </body>
  188. </html>