setting.html 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. {extend name="index_layout"/}
  2. {block name="main"}
  3. <div class="layui-card">
  4. <div class="layui-tabs layui-tabs-panel">
  5. <ul class="layui-tabs-header">
  6. {volist name="groupArray" id="vo"}
  7. <li class="{if $key==$group}layui-this{/if}"><a href="{:url('setting',['group'=>$key])}">{$vo}</a></li>
  8. {/volist}
  9. </ul>
  10. <div class="layui-tabs-body">
  11. <form class="layui-form" method="post">
  12. {:token_field()}
  13. {volist name="fieldList" id="vo"}
  14. <div data-favisible="{$vo.visible|default=''}" class="{if $vo.visible??''}layui-hide{/if}">
  15. <div class="layui-form-item">
  16. <label class="layui-form-label {if condition="isset($vo.ifrequire) AND $vo.ifrequire"}layui-form-item-required{/if}">{$vo.title}</label>
  17. {switch name="vo.type"}
  18. {case value="text"}
  19. <div class="layui-input-block">
  20. <input {$vo.extend_html} type="text" name="{$vo.fieldArr}[{$vo.name}]" placeholder="请输入{$vo.title}" autocomplete="off" class="layui-input" value="{$vo.value}">
  21. </div>
  22. {/case}
  23. {case value="password"}
  24. <div class="layui-input-block">
  25. <input {$vo.extend_html} type="password" name="{$vo.fieldArr}[{$vo.name}]" placeholder="请输入{$vo.title}" autocomplete="off" class="layui-input" value="{$vo.value}" lay-affix="eye">
  26. </div>
  27. {/case}
  28. {case value="tags"}
  29. <div class="layui-input-block">
  30. <input {$vo.extend_html} type="text" name="{$vo.fieldArr}[{$vo.name}]" class="layui-input form-tags tags-{$vo.name}" value="{$vo.value}" data-remark="{$vo.remark|default='输入回车键确认'}">
  31. </div>
  32. {/case}
  33. {case value="number"}
  34. <div class="layui-input-block">
  35. <input {$vo.extend_html} type="number" name="{$vo.fieldArr}[{$vo.name}]" placeholder="请输入{$vo.title}" autocomplete="off" lay-affix="number" class="layui-input" value="{$vo.value}">
  36. </div>
  37. {/case}
  38. {case value="switch"}
  39. <div class="layui-input-block">
  40. <input type="checkbox" name="{$vo.fieldArr}[{$vo.name}]" lay-skin="switch" lay-text="ON|OFF" value="{$vo['value']}" {if 1==$vo[ 'value' ]}checked='' {/if}>
  41. </div>
  42. {/case}
  43. {case value="array"}
  44. <dl {$vo.extend_html} class="layui-input-block fieldlist" data-name="{$vo.fieldArr}[{$vo.name}]" data-id="{$vo.name}">
  45. <dd>
  46. <ins>键名</ins>
  47. <ins>键值</ins>
  48. </dd>
  49. <dd><button type="button" class="layui-btn btn-append">追加</button></dd>
  50. <textarea name="{$vo.fieldArr}[{$vo.name}]" class="layui-textarea layui-hide">{$vo.value}</textarea>
  51. </dl>
  52. {/case}
  53. {case value="checkbox"}
  54. <div class="layui-input-block">
  55. {volist name="vo.options" id="v"}
  56. <input type="checkbox" name="{$vo.fieldArr}[{$vo.name}][]" lay-skin="primary" title="{$v}" value="{$key}" {if in_array($key,$vo[ 'value' ])}checked{/if}>
  57. {/volist}
  58. </div>
  59. {/case}
  60. {case value="radio"}
  61. <div class="layui-input-block">
  62. {volist name="vo.options" id="v"}
  63. <input type="radio" name="{$vo.fieldArr}[{$vo.name}]" value="{$key}" title="{$v}" {if $key==$vo [ 'value' ]}checked='' {/if}> {/volist}
  64. </div>
  65. {/case}
  66. {case value="select"}
  67. <div class="layui-input-block">
  68. <select name="{$vo.fieldArr}[{$vo.name}]">
  69. <option value=""></option>
  70. {volist name="vo.options" id="v"}
  71. <option value="{$key}" {if $key==$vo[ 'value' ]}selected="" {/if}>{$v}</option>
  72. {/volist}
  73. </select>
  74. </div>
  75. {/case}
  76. {case value="selects"}
  77. <div class="layui-input-block">
  78. <div {$vo.extend_html} class="form-selects" data-name="{$vo.fieldArr}[{$vo.name}]" data-id="{$vo.name}" data-value="{$vo.value}" data-list="{$vo.options|json_encode}"></div>
  79. </div>
  80. {/case}
  81. {case value="selectpage"}
  82. <div class="layui-input-block">
  83. <input {$vo.extend_html} class="form-control layui-input selectpage" type="text" name="{$vo.fieldArr}[{$vo.name}]" data-source="{$vo.options.url|url}" data-multiple="{$vo.options.multiple|default='false'}" data-field="{$vo.options.field|default='name'}" data-primary-key="{$vo.options.key|default='id'}" data-max-select-limit="{$vo.options.max|default='20'}" data-pagination="{$vo.options.pagination|default='true'}" data-page-size="{$vo.options.limit|default='10'}" data-order-by="{$vo.options.order|default='id'}" value="{$vo.value}">
  84. </div>
  85. {/case}
  86. {case value="color"}
  87. <div class="layui-input-block">
  88. <div class="layui-input-inline" style="width: 120px;">
  89. <input {$vo.extend_html} type="text" name="{$vo.fieldArr}[{$vo.name}]" value="{$vo.value}" placeholder="请选择颜色" class="layui-input test-form-input" id="c-{$vo.name}">
  90. </div>
  91. <div class="layui-inline" style="left: -11px;">
  92. <div class="colorpicker" data-input-id="c-{$vo.name}"></div>
  93. </div>
  94. </div>
  95. {/case}
  96. {case value="datetime"}
  97. <div class="layui-input-block">
  98. <input {$vo.extend_html} type="text" class="layui-input datetime" name="{$vo.fieldArr}[{$vo.name}]" placeholder="请输入{$vo.title}" value="{$vo.value}">
  99. </div>
  100. {/case}
  101. {case value="datetimerange"}
  102. <div class="layui-input-block">
  103. <input {$vo.extend_html} type="text" class="layui-input datetime" name="{$vo.fieldArr}[{$vo.name}]" placeholder="请输入{$vo.title}" value="{$vo.value}" data-date-range="-">
  104. </div>
  105. {/case}
  106. {case value="textarea"}
  107. <div class="layui-input-block">
  108. <textarea {$vo.extend_html} placeholder="请输入{$vo.title}" class="layui-textarea" name="{$vo.fieldArr}[{$vo.name}]">{$vo.value}</textarea>
  109. </div>
  110. {/case}
  111. {case value="image" break="0"}{/case}
  112. {case value="images"}
  113. <div class="layui-input-block">
  114. <div class="layui-col-xs6">
  115. <input type="text" name="{$vo.fieldArr}[{$vo.name}]" id="c-{$vo.name}" value="{$vo.value|default=''}" class="layui-input">
  116. </div>
  117. <button type="button" class="layui-btn faupload" id="faupload-{$vo.name}" data-multiple="{$vo.type=='image'?'false':'true'}" data-input-id="c-{$vo.name}" data-preview-id="p-{$vo.name}" data-mimetype="image/gif,image/jpeg,image/png,image/jpg,image/bmp,image/webp"><i class="iconfont icon-upload-line"></i> 上传</button><button type="button" class="layui-btn fachoose" data-multiple="{$vo.type=='image'?'false':'true'}" data-mimetype="image/*" data-input-id="c-{$vo.name}" id="fachoose-c-{$vo.name}"><i class="iconfont icon-list-unordered"></i> 选择</button>
  118. <ul class="layui-row list-inline plupload-preview" id="p-{$vo.name}"></ul>
  119. </div>
  120. {/case}
  121. {case value="file" break="0"}{/case}
  122. {case value="files"}
  123. <div class="layui-input-block">
  124. <div class="layui-col-xs6">
  125. <input type="text" name="{$vo.fieldArr}[{$vo.name}]" id="c-{$vo.name}" value="{$vo.value|default=''}" class="layui-input">
  126. </div>
  127. <button type="button" class="layui-btn faupload" id="faupload-{$vo.name}" data-multiple="{$vo.type=='file'?'false':'true'}" data-input-id="c-{$vo.name}" data-preview-id="p-{$vo.name}" data-type="file"><i class="iconfont icon-upload-line"></i> 上传</button><button type="button" class="layui-btn fachoose" data-multiple="{$vo.type=='file'?'false':'true'}" data-input-id="c-{$vo.name}" id="fachoose-c-{$vo.name}"><i class="iconfont icon-list-unordered"></i> 选择</button>
  128. </div>
  129. {/case}
  130. {case value="editor"}
  131. <div class="layui-input-block">
  132. <textarea {$vo.extend_html} name="{$vo.fieldArr}[{$vo.name}]" id="editor-{$vo.name}" class="layui-textarea editor" rows="5">{$vo.value}</textarea>
  133. </div>
  134. {/case}
  135. {case value="markdown"}
  136. <div class="layui-input-block">
  137. <textarea {$vo.extend_html} name="{$vo.fieldArr}[{$vo.name}]" id="markdown-{$vo.name}" class="layui-textarea markdown" rows="5">{$vo.value}</textarea>
  138. </div>
  139. {/case}
  140. {case value="city"}
  141. <div class="layui-input-block">
  142. <input {$vo.extend_html} type="text" autocomplete="on" class="layui-input" name="{$vo.fieldArr}[{$vo.name}]" id="{$vo.name}" value="{$vo.value}" data-toggle="city-picker" placeholder="请选择"/>
  143. </div>
  144. {/case}
  145. {case value="custom"}
  146. {$vo.options|raw}
  147. {/case}
  148. {/switch}
  149. {if $vo.remark}<div class="layui-form-mid no-float layui-word-aux">{$vo.remark}</div>{/if}
  150. </div>
  151. </div>
  152. {/volist}
  153. {if count($fieldList)}
  154. <div class="layui-form-item layer-footer">
  155. <div class="layui-input-block">
  156. <button class="layui-btn disabled" lay-submit data-refresh="false">立即提交</button>
  157. </div>
  158. </div>
  159. {/if}
  160. </form>
  161. </div>
  162. </div>
  163. </div>
  164. {/block}