edit.html 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274
  1. <form id="edit-form" class="form-horizontal form-ajax" role="form" data-toggle="validator" method="POST" action="">
  2. <div class="form-group">
  3. <label for="module" class="control-label col-xs-12 col-sm-2">{:__('Resource title')}:</label>
  4. <div class="col-xs-12 col-sm-8">
  5. <input type="text" class="form-control" id="title" name="row[title]" value="{$row.title}" data-rule="required" />
  6. </div>
  7. </div>
  8. <!--<div class="form-group">-->
  9. <!--<label for="controller" class="control-label col-xs-12 col-sm-2">{:__('Event key')}:</label>-->
  10. <!--<div class="col-xs-12 col-sm-8">-->
  11. <input type='hidden' class="form-control" id="eventkey" name="row[eventkey]" value="{$row.eventkey}" data-rule="required" readonly />
  12. <!--</div>-->
  13. <!--</div>-->
  14. <!--<div class="form-group">-->
  15. <!--<label for="remark" class="control-label col-xs-12 col-sm-2">{:__('Memo')}:</label>-->
  16. <!--<div class="col-xs-12 col-sm-8">-->
  17. <!--<textarea class="form-control" id="remark" name="row[remark]">{$row.remark}</textarea>-->
  18. <!--</div>-->
  19. <!--</div>-->
  20. <div class="form-group">
  21. <label for="content" class="control-label col-xs-12 col-sm-2">{:__('Type')}:</label>
  22. <div class="col-xs-12 col-sm-8">
  23. <input type="radio" name="row[type]" value="text" id="type-text" {$row['type']=='text'?'checked':''} />
  24. <label for="type-text">文本</label>
  25. <input type="radio" name="row[type]" value="image" id="type-image" {$row['type']=='image'?'checked':''} />
  26. <label for="type-image">图片</label>
  27. <input type="radio" name="row[type]" value="news" id="type-news" {$row['type']=='news'?'checked':''} />
  28. <label for="type-news">图文</label>
  29. </div>
  30. </div>
  31. <div class="form-group">
  32. <label class="control-label col-xs-12 col-sm-2">{:__('Is_subscribe')}:</label>
  33. <div class="col-xs-12 col-sm-8">
  34. <input type="radio" name="row[is_subscribe]" value="0" {$row['is_subscribe'] == 0 ? "checked" : ""} id="type-empty"/>
  35. <label for="type-empty">否</label>
  36. <input type="radio" name="row[is_subscribe]" value="1" {$row['is_subscribe'] == 1 ? "checked" : ""} id="type-subscribe"/>
  37. <label for="type-subscribe">是</label>
  38. </div>
  39. </div>
  40. <!--分类型处理 start-->
  41. <!-- 文本 -->
  42. <div class="form-group group-type-text group-type {$row.type == 'text'?'':'hide'}">
  43. <label for="c-text-content" class="control-label col-xs-12 col-sm-2">文本内容:</label>
  44. <div class="col-xs-12 col-sm-8">
  45. <textarea id="c-text-content" class="form-control" style="height: 200px;" name="row[content]" data-rule="required" {$row.type == 'text'?'':'disabled'}>{if $row.type=='text'}{$row.content}{/if}</textarea>
  46. <a href="javascript:;" class="btn-insertlink">插入链接</a>&nbsp;&nbsp;&nbsp;&nbsp;
  47. <a href="javascript:;" class="btn_automatic_reply">插入关注自动回复模板</a>
  48. </div>
  49. </div>
  50. <!-- 图片 -->
  51. <div class="form-group group-type-image group-type {$row.type == 'image'?'':'hide'}">
  52. <label class="control-label col-xs-12 col-sm-2">图片上传:</label>
  53. <div class="col-xs-12 col-sm-8">
  54. <div class="input-group">
  55. <input id="c-image-content" data-rule="required" class="form-control" size="50" name="row[content]" type="text" value="{if $row.type=='image'}{$row.content.url}{/if}" {$row.type=='image'?'':'disabled'} >
  56. <div class="input-group-addon no-border no-padding">
  57. <span>
  58. <button type="button" id="plupload-content" class="btn btn-danger plupload" data-input-id="c-image-content" data-mimetype="image/gif,image/jpeg,image/png,image/jpg" data-maxsize="2mb" data-multiple="false" data-preview-id="p-image">
  59. <i class="fa fa-upload"></i> {:__('Upload')}
  60. </button>
  61. </span>
  62. </div>
  63. <span class="msg-box n-right" for="c-image-content"></span>
  64. </div>
  65. <ul class="row list-inline plupload-preview" id="p-image"></ul>
  66. </div>
  67. </div>
  68. <!-- 图文 -->
  69. <div class="form-group group-type-news group-type {$row.type == 'news'?'':'hide'}">
  70. <input type="hidden" name="row[content]" class="img_txt_hidde_input" value="{if $row.type=='news'}{$row.content|htmlspecialchars}{/if}" {$row.type=='news'?'':'disabled'}/>
  71. <label class="control-label col-xs-12 col-sm-2">图文编辑:</label>
  72. <div class="col-xs-12 col-sm-8 new-template-wrap">
  73. <div class="img_txt_box">
  74. <div class="img_txt_list">
  75. </div>
  76. <div class="form-group group-type-subscribe {$row.is_subscribe == 1 ? '': 'hide'}">
  77. <a href="javascript:;" class="img_txt_add_but"><i class="fa fa-plus-square-o"></i> 添加列表</a>
  78. </div>
  79. </div>
  80. </div>
  81. </div>
  82. <!--分类型处理 end-->
  83. <div class="form-group">
  84. <div class="col-xs-2"></div>
  85. <div class="col-xs-12 col-sm-8">
  86. {:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('Hidden')], $row['status'])}
  87. </div>
  88. </div>
  89. <div class="form-group hidden layer-footer">
  90. <div class="col-xs-2"></div>
  91. <div class="col-xs-12 col-sm-8">
  92. <button type="submit" class="btn btn-success btn-embossed disabled">{:__('OK')}</button>
  93. <!-- <button type="reset" class="btn btn-default btn-embossed">{:__('Reset')}</button>-->
  94. </div>
  95. </div>
  96. </form>
  97. <style type="text/css">
  98. .img_txt_box{
  99. padding: 20px;
  100. width: auto;
  101. background-color: #f1f1f1;
  102. box-sizing: border-box;
  103. }
  104. .img_txt_list{
  105. padding: 10px 0;
  106. background-color: #fff;
  107. }
  108. .img_txt_list > div:last-child{
  109. border-bottom: 0;
  110. }
  111. .img_txt_one{
  112. padding: 0 20px 10px;
  113. border-bottom: 1px solid #e9e9e9;
  114. }
  115. .img_txt_one_tit{
  116. overflow: hidden;
  117. margin-bottom: 10px;
  118. border-bottom: 1px solid #e9e9e9;
  119. cursor: pointer;
  120. }
  121. .img_txt_one_tit i,
  122. .img_txt_li_txt i{
  123. float: right;
  124. height: 22px;
  125. width: 22px;
  126. background-color: #18bc9c;
  127. text-align: center;
  128. color: #fff;
  129. cursor: pointer;
  130. line-height: 22px;
  131. }
  132. .img_txt_one_h3,
  133. .img_txt_li_h3,
  134. .img_txt_one_url,
  135. .img_txt_li_url{
  136. overflow: hidden;
  137. margin: 0 26px 0 0;
  138. padding: 0 0 4px 0;
  139. font-size: 14px;
  140. color: rgba(0,0,0,0.6);
  141. line-height: 22px;
  142. }
  143. .img_txt_one_url,
  144. .img_txt_li_url{
  145. margin: 0 60px 0 0;
  146. }
  147. .img_txt_edit_url{
  148. margin-left: 6px;
  149. }
  150. .img_txt_li_h3{
  151. margin-bottom: 8px;
  152. height: 44px;
  153. }
  154. .img_txt_one_h3 input,
  155. .img_txt_li_h3 input,
  156. .img_txt_one_url input,
  157. .img_txt_li_url input{
  158. display: block;
  159. margin: 0;
  160. padding: 0;
  161. border: 0;
  162. width: 100%;
  163. height: 22px;
  164. font-size: 14px;
  165. color: rgba(0,0,0,0.6);
  166. outline: none;
  167. }
  168. .img_txt_one_url input,
  169. .img_txt_li_url input{
  170. color: #1581ff;
  171. }
  172. .img_txt_one_img{
  173. overflow: hidden;
  174. cursor: pointer;
  175. }
  176. .img_txt_one_img img{
  177. display: block;
  178. margin: 0;
  179. padding: 0;
  180. border: 0;
  181. width:100%;
  182. }
  183. .img_txt_li{
  184. position: relative;
  185. left: 0;
  186. top: 0;
  187. overflow: hidden;
  188. padding: 10px 20px;
  189. border-bottom: 1px solid #e9e9e9;
  190. }
  191. .img_txt_li_img{
  192. overflow: hidden;
  193. float: right;
  194. height: 78px;
  195. width: 78px;
  196. }
  197. .img_txt_li_img img{
  198. display: block;
  199. width: 78px;
  200. height: 78px;
  201. }
  202. .img_txt_li_txt{
  203. position: relative;
  204. left: 0;
  205. top: 0;
  206. margin: 0 88px 0 0;
  207. overflow: hidden;
  208. }
  209. .img_txt_li_txt a,
  210. .img_txt_one_tit a{
  211. display: block;
  212. overflow: hidden;
  213. padding: 3px 0;
  214. height: 26px;
  215. font-size: 14px;
  216. color: #1581ff;
  217. line-height: 20px;
  218. white-space: normal;
  219. word-break: break-all;
  220. word-wrap: break-word;
  221. box-sizing: border-box;
  222. }
  223. .img_txt_add_but{
  224. display: block;
  225. margin-top: 20px;
  226. height: 40px;
  227. font-size: 16px;
  228. color: #1581ff;
  229. text-align: center;
  230. line-height: 40px;
  231. }
  232. .img_txt_add_but i{
  233. font-size: 16px;
  234. vertical-align: middle;
  235. }
  236. .img_txt_remvoe{
  237. display: none;
  238. position: absolute;
  239. right: 0;
  240. bottom: 0;
  241. height: 36px;
  242. width: 36px;
  243. cursor: pointer;
  244. }
  245. .img_txt_li:hover .img_txt_remvoe{
  246. display: block;
  247. }
  248. .img_txt_remvoe:before {
  249. content: "";
  250. width: 0;
  251. height: 0;
  252. overflow: hidden;
  253. border: 18px solid transparent;
  254. border-bottom-color: #d0021b;
  255. border-right-color: #d0021b;
  256. _border-bottom-style: solid;
  257. _border-right-style: solid;
  258. position: absolute;
  259. left: 0;
  260. top: 0;
  261. }
  262. .img_txt_remvoe:after {
  263. content: "\f1f8";
  264. position: absolute;
  265. right: 2px;
  266. bottom: 2px;
  267. color: #fff;
  268. font-size: 16px;
  269. }
  270. </style>