info.html 61 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093
  1. {include file="../../../application/admin/view/public/head" /}
  2. <script type="text/javascript" src="__STATIC__/js/jquery.jscolor.js"></script>
  3. {include file="../../../application/admin/view/public/editor" flag="vod_editor"/}
  4. <div class="page-container p10">
  5. <div class="showpic" style="display:none;"><img class="showpic_img" width="120" height="160" referrerPolicy="no-referrer"></div>
  6. <form class="layui-form layui-form-pane" method="post" action="">
  7. <input type="hidden" name="vod_id" value="{$info.vod_id}">
  8. <div class="layui-tab">
  9. <ul class="layui-tab-title ">
  10. <li class="layui-this">{:lang('base_info')}</a></li>
  11. <li>{:lang('other_info')}</li>
  12. </ul>
  13. <div class="layui-tab-content">
  14. <div class="layui-tab-item layui-show">
  15. <div class="layui-form-item">
  16. <label class="layui-form-label">{:lang('param')}:</label>
  17. <div class="layui-input-inline w150">
  18. <select name="type_id" lay-filter="type_id">
  19. <option value="">{:lang('select_type')}</option>
  20. {volist name="type_tree" id="vo"}
  21. {if condition="$vo.type_mid eq 1"}
  22. <option value="{$vo.type_id}" {if condition="$info.type_id eq $vo.type_id"}selected{/if}>{$vo.type_name}</option>
  23. {volist name="$vo.child" id="ch"}
  24. <option value="{$ch.type_id}" {if condition="$info.type_id eq $ch.type_id"}selected{/if}>&nbsp;|&nbsp;&nbsp;&nbsp;|—{$ch.type_name}</option>
  25. {/volist}
  26. {/if}
  27. {/volist}
  28. </select>
  29. </div>
  30. <div class="layui-input-inline w150">
  31. <select name="vod_level">
  32. <option value="0">{:lang('select_level')}</option>
  33. <option value="9" {if condition="$info.vod_level eq 9"}selected{/if}>{:lang('level')}9-{:lang('slide')}</option>
  34. <option value="1" {if condition="$info.vod_level eq 1"}selected{/if}>{:lang('level')}1</option>
  35. <option value="2" {if condition="$info.vod_level eq 2"}selected{/if}>{:lang('level')}2</option>
  36. <option value="3" {if condition="$info.vod_level eq 3"}selected{/if}>{:lang('level')}3</option>
  37. <option value="4" {if condition="$info.vod_level eq 4"}selected{/if}>{:lang('level')}4</option>
  38. <option value="5" {if condition="$info.vod_level eq 5"}selected{/if}>{:lang('level')}5</option>
  39. <option value="6" {if condition="$info.vod_level eq 6"}selected{/if}>{:lang('level')}6</option>
  40. <option value="7" {if condition="$info.vod_level eq 7"}selected{/if}>{:lang('level')}7</option>
  41. <option value="8" {if condition="$info.vod_level eq 8"}selected{/if}>{:lang('level')}8</option>
  42. </select>
  43. </div>
  44. <div class="layui-input-inline w120">
  45. <select name="vod_status">
  46. <option value="1" >{:lang('reviewed')}</option>
  47. <option value="0" {if condition="$info.vod_status eq '0'"}selected{/if}>{:lang('reviewed_not')}</option>
  48. </select>
  49. </div>
  50. <div class="layui-input-inline w120">
  51. <select name="vod_lock">
  52. <option value="0">{:lang('unlock')}</option>
  53. <option value="1" {if condition="$info.vod_lock eq 1"}selected{/if}>{:lang('lock')}</option>
  54. </select>
  55. </div>
  56. <div class="layui-input-inline w120">
  57. <select name="vod_isend">
  58. <option value="1" {if condition="$info.vod_isend eq 1"}selected{/if}>{:lang('admin/vod/is_end')}</option>
  59. <option value="0" {if condition="$info.vod_isend eq 0"}selected{/if}>{:lang('admin/vod/no_end')}</option>
  60. </select>
  61. </div>
  62. <div class="layui-input-inline w120">
  63. <select name="vod_copyright">
  64. <option value="0" {if condition="$info.vod_copyright eq '0'"}selected{/if}>{:lang('admin/vod/copyright_close')}</option>
  65. <option value="1" {if condition="$info.vod_copyright eq '1'"}selected{/if}>{:lang('admin/vod/copyright_open')}</option>
  66. </select>
  67. </div>
  68. <div class="layui-input-inline w110">
  69. <input type="checkbox" name="uptime" title="{:lang('update_time')}" value="1" checked class="layui-checkbox checkbox-ids" lay-skin="primary">
  70. </div>
  71. </div>
  72. <div class="layui-form-item ">
  73. <label class="layui-form-label">{:lang('name')}:</label>
  74. <div class="layui-input-inline w500">
  75. <input type="text" class="layui-input" value="{$info.vod_name}" placeholder="" name="vod_name" id="vod_name">
  76. </div>
  77. <label class="layui-form-label">{:lang('sub')}:</label>
  78. <div class="layui-input-inline ">
  79. <input type="text" class="layui-input" value="{$info.vod_sub}" placeholder="" name="vod_sub" id="vod_sub">
  80. </div>
  81. </div>
  82. <div class="layui-form-item">
  83. <label class="layui-form-label">{:lang('en')}:</label>
  84. <div class="layui-input-inline w500">
  85. <input type="text" class="layui-input" value="{$info.vod_en}" placeholder="" name="vod_en">
  86. </div>
  87. <label class="layui-form-label">{:lang('letter')}:</label>
  88. <div class="layui-input-inline w70">
  89. <input type="text" class="layui-input" value="{$info.vod_letter}" placeholder="" name="vod_letter">
  90. </div>
  91. <label class="layui-form-label">{:lang('color')}:</label>
  92. <div class="layui-input-inline w70">
  93. <input type="text" class="layui-input color" value="{$info.vod_color}" placeholder="" name="vod_color">
  94. </div>
  95. </div>
  96. <div class="layui-form-item">
  97. <label class="layui-form-label">TAG:</label>
  98. <div class="layui-input-inline w500 ">
  99. <input type="text" class="layui-input" value="{$info.vod_tag}" placeholder="" name="vod_tag" id="vod_tag">
  100. </div>
  101. <div class="layui-input-inline w120">
  102. <input type="checkbox" name="uptag" title="{:lang('auto_make')}" value="1" class="layui-checkbox checkbox-ids" lay-skin="primary">
  103. </div>
  104. </div>
  105. <div class="layui-form-item">
  106. <label class="layui-form-label">{:lang('remarks')}:</label>
  107. <div class="layui-input-inline w500">
  108. <input type="text" class="layui-input" value="{$info.vod_remarks}" placeholder="" name="vod_remarks" id="vod_remarks">
  109. </div>
  110. <label class="layui-form-label">{:lang('admin/vod/move_behind')}:</label>
  111. <div class="layui-input-inline ">
  112. <input type="text" class="layui-input" value="{$info.vod_behind}" placeholder="" name="vod_behind" id="vod_behind">
  113. </div>
  114. </div>
  115. <div class="layui-form-item">
  116. <label class="layui-form-label">{:lang('admin/vod/total')}:</label>
  117. <div class="layui-input-inline">
  118. <input type="text" class="layui-input" value="{$info.vod_total}" placeholder="" name="vod_total" id="vod_total">
  119. </div>
  120. <label class="layui-form-label">{:lang('admin/vod/serial')}:</label>
  121. <div class="layui-input-inline">
  122. <input type="text" class="layui-input" value="{$info.vod_serial}" placeholder="" name="vod_serial" id="vod_serial">
  123. </div>
  124. <label class="layui-form-label">{:lang('admin/vod/pubdate')}:</label>
  125. <div class="layui-input-inline">
  126. <input type="text" class="layui-input" value="{$info.vod_pubdate}" placeholder="" name="vod_pubdate" id="vod_pubdate">
  127. </div>
  128. </div>
  129. <div class="layui-form-item">
  130. <label class="layui-form-label">{:lang('actor')}:</label>
  131. <div class="layui-input-inline">
  132. <input type="text" class="layui-input" value="{$info.vod_actor}" placeholder="" name="vod_actor" id="vod_actor">
  133. </div>
  134. <label class="layui-form-label">{:lang('admin/vod/director')}:</label>
  135. <div class="layui-input-inline">
  136. <input type="text" class="layui-input" value="{$info.vod_director}" placeholder="" name="vod_director" id="vod_director">
  137. </div>
  138. <label class="layui-form-label">{:lang('admin/vod/writer')}:</label>
  139. <div class="layui-input-inline">
  140. <input type="text" class="layui-input" value="{$info.vod_writer}" placeholder="" name="vod_writer" id="vod_writer">
  141. </div>
  142. </div>
  143. <div class="layui-form-item">
  144. <label class="layui-form-label">{:lang('admin/vod/tv')}:</label>
  145. <div class="layui-input-inline">
  146. <input type="text" class="layui-input" value="{$info.vod_tv}" placeholder="" name="vod_tv">
  147. </div>
  148. <label class="layui-form-label">{:lang('admin/vod/weekday')}:</label>
  149. <div class="layui-input-inline">
  150. <input type="text" class="layui-input" value="{$info.vod_weekday}" placeholder="" name="vod_weekday">
  151. </div>
  152. <label class="layui-form-label">{:lang('admin/vod/duration')}:</label>
  153. <div class="layui-input-inline">
  154. <input type="text" class="layui-input" value="{$info.vod_duration}" placeholder="" name="vod_duration" id="vod_duration">
  155. </div>
  156. </div>
  157. <div class="layui-form-item">
  158. <label class="layui-form-label">{:lang('admin/vod/douban_score')}:</label>
  159. <div class="layui-input-inline">
  160. <input type="text" class="layui-input" value="{$info.vod_douban_score}" placeholder="" name="vod_douban_score" id="vod_douban_score">
  161. </div>
  162. <label class="layui-form-label">{:lang('admin/vod/douban_id')}:</label>
  163. <div class="layui-input-inline">
  164. <input type="text" class="layui-input" value="{$info.vod_douban_id}" placeholder="" name="vod_douban_id" id="vod_douban_id">
  165. </div>
  166. <div class="layui-input-inline ">
  167. <button type="button" class="layui-btn" id="btn_douban">{:lang('search_data')}</button>
  168. </div>
  169. </div>
  170. <div class="layui-form-item">
  171. <label class="layui-form-label">{:lang('rel_vod')}:</label>
  172. <div class="layui-input-inline w500">
  173. <input type="text" class="layui-input" value="{$info.vod_rel_vod}" placeholder="{:lang('admin/vod/rel_vod_tip')}" name="vod_rel_vod">
  174. </div>
  175. <div class="layui-input-inline ">
  176. <a class="layui-btn j-iframe" data-href="{:url('vod/data')}?select=1&input=vod_rel_vod" href="javascript:;" title="{:lang('search_data')}">{:lang('search_data')}</a>
  177. </div>
  178. </div>
  179. <div class="layui-form-item">
  180. <label class="layui-form-label">{:lang('rel_art')}:</label>
  181. <div class="layui-input-inline w500">
  182. <input type="text" class="layui-input" value="{$info.vod_rel_art}" placeholder="{:lang('admin/vod/rel_art_tip')}" name="vod_rel_art">
  183. </div>
  184. <div class="layui-input-inline ">
  185. <a class="layui-btn j-iframe" data-href="{:url('art/data')}?select=1&input=vod_rel_art" href="javascript:;" title="{:lang('search_data')}">{:lang('search_data')}</a>
  186. </div>
  187. </div>
  188. <div class="layui-form-item">
  189. <label class="layui-form-label">{:lang('class')}:</label>
  190. <div class="layui-input-inline w500">
  191. <input type="text" class="layui-input" value="{$info.vod_class}" placeholder="" id="vod_class" name="vod_class">
  192. </div>
  193. <div class="layui-input-inline w500 vod_class_label">
  194. </div>
  195. </div>
  196. <div class="layui-form-item">
  197. <label class="layui-form-label">{:lang('years')}:</label>
  198. <div class="layui-input-inline w500">
  199. <input type="text" class="layui-input" value="{$info.vod_year}" placeholder="" id="vod_year" name="vod_year">
  200. </div>
  201. <div class="layui-input-inline w500 vod_year_label">
  202. </div>
  203. </div>
  204. <div class="layui-form-item">
  205. <label class="layui-form-label">{:lang('area')}:</label>
  206. <div class="layui-input-inline w500">
  207. <input type="text" class="layui-input" value="{$info.vod_area}" placeholder="" id="vod_area" name="vod_area">
  208. </div>
  209. <div class="layui-input-inline w500 vod_area_label">
  210. </div>
  211. </div>
  212. <div class="layui-form-item">
  213. <label class="layui-form-label">{:lang('lang')}:</label>
  214. <div class="layui-input-inline w500">
  215. <input type="text" class="layui-input" value="{$info.vod_lang}" placeholder="" id="vod_lang" name="vod_lang">
  216. </div>
  217. <div class="layui-input-inline w500 vod_lang_label">
  218. </div>
  219. </div>
  220. <div class="layui-form-item">
  221. <label class="layui-form-label">{:lang('admin/vod/version')}:</label>
  222. <div class="layui-input-inline w500">
  223. <input type="text" class="layui-input" value="{$info.vod_version}" placeholder="" id="vod_version" name="vod_version">
  224. </div>
  225. <div class="layui-input-inline w500 vod_version_label">
  226. </div>
  227. </div>
  228. <div class="layui-form-item">
  229. <label class="layui-form-label">{:lang('admin/vod/state')}:</label>
  230. <div class="layui-input-inline w500">
  231. <input type="text" class="layui-input" value="{$info.vod_state}" placeholder="" id="vod_state" name="vod_state">
  232. </div>
  233. <div class="layui-input-inline w500 vod_state_label">
  234. </div>
  235. </div>
  236. <div class="layui-form-item">
  237. <label class="layui-form-label">{:lang('pic')}:</label>
  238. <div class="layui-input-inline w500 upload">
  239. <input type="text" class="layui-input upload-input" style="max-width:100%;" value="{$info.vod_pic}" placeholder="" id="vod_pic" name="vod_pic">
  240. </div>
  241. <div class="layui-input-inline ">
  242. <button type="button" class="layui-btn layui-upload" lay-data="{data:{thumb:1,thumb_class:'upload-thumb'}}" id="upload1">{:lang('upload_pic')}</button>
  243. </div>
  244. </div>
  245. <div class="layui-form-item">
  246. <label class="layui-form-label">{:lang('pic_thumb')}:</label>
  247. <div class="layui-input-inline w500 upload">
  248. <input type="text" class="layui-input upload-input upload-thumb" style="max-width:100%;" value="{$info.vod_pic_thumb}" placeholder="" id="vod_pic_thumb" name="vod_pic_thumb">
  249. </div>
  250. <div class="layui-input-inline ">
  251. <button type="button" class="layui-btn layui-upload" lay-data="{data:{thumb:0,thumb_class:'upload-thumb'}}" id="upload2">{:lang('upload_pic')}</button>
  252. </div>
  253. </div>
  254. <div class="layui-form-item">
  255. <label class="layui-form-label">{:lang('pic_slide')}:</label>
  256. <div class="layui-input-inline w500 upload">
  257. <input type="text" class="layui-input upload-input" style="max-width:100%;" value="{$info.vod_pic_slide}" placeholder="" id="vod_pic_slide" name="vod_pic_slide">
  258. </div>
  259. <div class="layui-input-inline ">
  260. <button type="button" class="layui-btn layui-upload" lay-data="{data:{thumb:0,thumb_class:'upload-thumb'}}" id="upload3">{:lang('upload_pic')}</button>
  261. </div>
  262. </div>
  263. <div class="layui-form-item">
  264. <label class="layui-form-label ">{:lang('pic_screenshot')}:</label>
  265. <div class="layui-input-inline w400 ">
  266. <div class="layui-btn-group">
  267. <button type="button" class="layui-btn screenshot"><i class="layui-icon layui-icon-upload"></i> {:lang('upload_pic')}</button>
  268. </div>
  269. </div>
  270. </div>
  271. <div class="layui-form-item">
  272. <div class="layui-input-block">
  273. <textarea id="vod_pic_screenshot" name="vod_pic_screenshot" placeholder="{:lang('screenshot_tip')}" type="text/plain" style="width:100%;height:150px;">{$info.vod_pic_screenshot|mac_str_correct=###,'#',chr(13)}</textarea>
  274. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  275. <legend>{:lang('screenshot_preview')}</legend>
  276. </fieldset>
  277. <div class="screenshot_list">
  278. {volist name="$info.vod_pic_screenshot_list" id="vo"}
  279. <div data-src="{$vo['url']}"><a href="javascript:;" class="del_screenshot">{:lang('del')}</a>
  280. <img src="{$vo['url']|mac_url_img}" alt="" class="layui-upload-img screenshot-img">
  281. </div>
  282. {/volist}
  283. </div>
  284. </div>
  285. </div>
  286. <div class="layui-form-item">
  287. <label class="layui-form-label">{:lang('blurb')}:</label>
  288. <div class="layui-input-block">
  289. <textarea name="vod_blurb" cols="" rows="3" class="layui-textarea" placeholder="{:lang('blurb_auto_tip')}" style="height:40px;">{$info.vod_blurb}</textarea>
  290. </div>
  291. </div>
  292. <script>
  293. var players_arr_len = {$vod_play_list|count};
  294. var downers_arr_len = {$vod_down_list|count};
  295. var plot_arr_len = {$vod_plot_list|count};
  296. </script>
  297. <div id="player_list" class="contents">
  298. {volist name="$vod_play_list" id="vo"}
  299. <div class="layui-form-item" data-i="{$key}">
  300. <label class="layui-form-label">{:lang('play')}{$key}:</label>
  301. <div class="layui-input-inline w150"><select name="vod_play_from[]"><option value="no">{:lang('admin/vod/select_player')}.</option>{volist name="player_list" id="vo1"}{if condition="$vo1.status eq '1'"}<option value="{$vo1.from}" {if condition="$vo1.from eq $vo.from"} selected {/if}>{$vo1.show}</option>{/if}{/volist}</select></div>
  302. <div class="layui-input-inline w150"><select name="vod_play_server[]"><option value="no">{:lang('admin/vod/select_server')}.</option>{volist name="server_list" id="vo2"}{if condition="$vo2.status eq '1'"}<option value="{$vo2.from}" {if condition="$vo2.from eq $vo.server"} selected {/if}>{$vo2.show}</option>{/if}{/volist}</select></div>
  303. <div class="layui-input-inline w150"><input type="text" name="vod_play_note[]" class="layui-input" value="{$vo.note}" placeholder="{:lang('remarks')}"></div>
  304. <div class="layui-input-inline w400 p10"><a href="javascript:void(0)" class="j-editor-clear">{:lang('clear')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-remove">{:lang('del')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-up">{:lang('admin/vod/move_up')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-down">{:lang('admin/vod/move_down')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-xz">{:lang('admin/vod/correct')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-order">{:lang('admin/vod/reverse_order')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-dn">{:lang('admin/vod/del_prefix')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-upload">{:lang('upload')}</a><br></div>
  305. <div class="p10 m20"> </div>
  306. <div class="layui-input-block "><textarea id="vod_play_url{$key}" name="vod_play_url[]" type="text/plain" style="width:100%;height:150px">{$vo.url|mac_str_correct=###,'#',chr(13)}</textarea></div>
  307. </div>
  308. {/volist}
  309. </div>
  310. <div class="layui-form-item">
  311. <label class=""><button class="layui-btn radius j-player-add" type="button">{:lang('admin/vod/add_group_play')}</button></label>
  312. <div class="layui-input-block">
  313. </div>
  314. </div>
  315. <hr class="layui-bg-gray">
  316. <div id="downer_list" class="contents">
  317. {volist name="$vod_down_list" id="vo"}
  318. <div class="layui-form-item" data-i="{$key}">
  319. <label class="layui-form-label">{:lang('down')}{$key}:</label>
  320. <div class="layui-input-inline w150"><select name="vod_down_from[]"><option value="no">{:lang('admin/vod/select_downer')}.</option>{volist name="downer_list" id="vo1"}{if condition="$vo1.status eq '1'"}<option value="{$vo1.from}" {if condition="$vo1.from eq $vo.from"} selected {/if}>{$vo1.show}</option>{/if}{/volist}</select></div>
  321. <div class="layui-input-inline w150"><select name="vod_down_server[]"><option value="no">{:lang('admin/vod/select_server')}.</option>{volist name="server_list" id="vo2"}{if condition="$vo2.status eq '1'"}<option value="{$vo2.from}" {if condition="$vo2.from eq $vo.server"} selected {/if}>{$vo2.show}</option>{/if}{/volist}</select></div>
  322. <div class="layui-input-inline w150"><input type="text" name="vod_down_note[]" class="layui-input" value="{$vo.note}" placeholder="{:lang('remarks')}"></div>
  323. <div class="layui-input-inline w400 p10"><a href="javascript:void(0)" class="j-editor-clear">{:lang('clear')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-remove">{:lang('del')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-up">{:lang('admin/vod/move_up')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-down">{:lang('admin/vod/move_down')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-xz">{:lang('admin/vod/correct')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-order">{:lang('admin/vod/reverse_order')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-dn">{:lang('admin/vod/del_prefix')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-upload">{:lang('upload')}</a><br></div>
  324. <div class="p10"> </div>
  325. <div class="layui-input-block"><textarea id="vod_down_url{$key}" name="vod_down_url[]" type="text/plain" style="width:100%;height:150px">{$vo.url|mac_str_correct=###,'#',chr(13)}</textarea></div>
  326. </div>
  327. {/volist}
  328. </div>
  329. <div class="layui-form-item">
  330. <label class=""><button class="layui-btn radius j-downer-add" type="button">{:lang('admin/vod/add_group_down')}</button></label>
  331. <div class="layui-input-block">
  332. </div>
  333. </div>
  334. <div class="layui-form-item">
  335. <label class="layui-form-label">{:lang('content')}:</label>
  336. <div class="layui-input-block">
  337. <textarea id="vod_content" name="vod_content" type="text/plain" style="width:99%;height:250px">{$info.vod_content|mac_url_content_img}</textarea>
  338. </div>
  339. </div>
  340. </div>
  341. <div class="layui-tab-item">
  342. <div class="layui-form-item">
  343. <label class="layui-form-label">{:lang('up')}:</label>
  344. <div class="layui-input-inline ">
  345. <input type="text" class="layui-input" value="{$info.vod_up}" placeholder="" id="vod_up" name="vod_up">
  346. </div>
  347. <label class="layui-form-label">{:lang('hate')}:</label>
  348. <div class="layui-input-inline ">
  349. <input type="text" class="layui-input" value="{$info.vod_down}" placeholder="" id="vod_down" name="vod_down">
  350. </div>
  351. <button class="layui-btn" type="button" id="btn_rnd">{:lang('rnd_make')}</button>
  352. <button class="layui-btn" type="button" id="btn_zero">{:lang('reset_zero')}</button>
  353. </div>
  354. <div class="layui-form-item">
  355. <label class="layui-form-label">{:lang('hits')}:</label>
  356. <div class="layui-input-inline ">
  357. <input type="text" class="layui-input" value="{$info.vod_hits}" placeholder="" id="vod_hits" name="vod_hits">
  358. </div>
  359. <label class="layui-form-label">{:lang('hits_month')}:</label>
  360. <div class="layui-input-inline ">
  361. <input type="text" class="layui-input" value="{$info.vod_hits_month}" placeholder="" id="vod_hits_month" name="vod_hits_month" >
  362. </div>
  363. <label class="layui-form-label">{:lang('author')}:</label>
  364. <div class="layui-input-inline ">
  365. <input type="text" class="layui-input" value="{$info.vod_author}" placeholder="" name="vod_author" id="vod_author">
  366. </div>
  367. </div>
  368. <div class="layui-form-item">
  369. <label class="layui-form-label">{:lang('hits_week')}:</label>
  370. <div class="layui-input-inline ">
  371. <input type="text" class="layui-input" value="{$info.vod_hits_week}" placeholder="" id="vod_hits_week" name="vod_hits_week">
  372. </div>
  373. <label class="layui-form-label">{:lang('hits_day')}:</label>
  374. <div class="layui-input-inline ">
  375. <input type="text" class="layui-input " value="{$info.vod_hits_day}" placeholder="" id="vod_hits_day" name="vod_hits_day">
  376. </div>
  377. <label class="layui-form-label">{:lang('jumpurl')}:</label>
  378. <div class="layui-input-inline ">
  379. <input type="text" class="layui-input" value="{$info.vod_jumpurl}" placeholder="" name="vod_jumpurl" id="vod_jumpurl">
  380. </div>
  381. </div>
  382. <div class="layui-form-item">
  383. <label class="layui-form-label">{:lang('score')}:</label>
  384. <div class="layui-input-inline ">
  385. <input type="text" class="layui-input" value="{$info.vod_score}" placeholder="" id="vod_score" name="vod_score">
  386. </div>
  387. <label class="layui-form-label">{:lang('score_all')}:</label>
  388. <div class="layui-input-inline ">
  389. <input type="text" class="layui-input" value="{$info.vod_score_all}" placeholder="" id="vod_score_all" name="vod_score_all">
  390. </div>
  391. <label class="layui-form-label">{:lang('score_num')}:</label>
  392. <div class="layui-input-inline ">
  393. <input type="text" class="layui-input" value="{$info.vod_score_num}" placeholder="" id="vod_score_num" name="vod_score_num">
  394. </div>
  395. </div>
  396. <div class="layui-form-item">
  397. <label class="layui-form-label">{:lang('points_all')}:</label>
  398. <div class="layui-input-inline ">
  399. <input type="text" class="layui-input" value="{$info.vod_points}" placeholder="" name="vod_points">
  400. </div>
  401. <label class="layui-form-label">{:lang('points_play')}:</label>
  402. <div class="layui-input-inline ">
  403. <input type="text" class="layui-input" value="{$info.vod_points_play}" placeholder="" name="vod_points_play">
  404. </div>
  405. <label class="layui-form-label">{:lang('points_down')}:</label>
  406. <div class="layui-input-inline ">
  407. <input type="text" class="layui-input" value="{$info.vod_points_down}" placeholder="" name="vod_points_down">
  408. </div>
  409. </div>
  410. <div class="layui-form-item">
  411. <label class="layui-form-label">{:lang('admin/vod/tpl')}:</label>
  412. <div class="layui-input-inline ">
  413. <input type="text" class="layui-input" value="{$info.vod_tpl}" placeholder="" name="vod_tpl">
  414. </div>
  415. <label class="layui-form-label">{:lang('admin/vod/tpl_play')}:</label>
  416. <div class="layui-input-inline ">
  417. <input type="text" class="layui-input" value="{$info.vod_tpl_play}" placeholder="" name="vod_tpl_play">
  418. </div>
  419. <label class="layui-form-label">{:lang('admin/vod/tpl_down')}:</label>
  420. <div class="layui-input-inline ">
  421. <input type="text" class="layui-input" value="{$info.vod_tpl_down}" placeholder="" name="vod_tpl_down">
  422. </div>
  423. </div>
  424. <div class="layui-form-item">
  425. <label class="layui-form-label">{:lang('pwd_detail')}:</label>
  426. <div class="layui-input-inline ">
  427. <input type="text" class="layui-input" value="{$info.vod_pwd}" placeholder="{:lang('not_static_is_ok')}" name="vod_pwd">
  428. </div>
  429. <label class="layui-form-label">{:lang('pwd_url')}:</label>
  430. <div class="layui-input-inline ">
  431. <input type="text" class="layui-input" value="{$info.vod_pwd_url}" placeholder="" name="vod_pwd_url">
  432. </div>
  433. </div>
  434. <div class="layui-form-item">
  435. <label class="layui-form-label">{:lang('pwd_play')}:</label>
  436. <div class="layui-input-inline ">
  437. <input type="text" class="layui-input" value="{$info.vod_pwd_play}" placeholder="" name="vod_pwd_play">
  438. </div>
  439. <label class="layui-form-label">{:lang('pwd_url')}:</label>
  440. <div class="layui-input-inline ">
  441. <input type="text" class="layui-input" value="{$info.vod_pwd_play_url}" placeholder="" name="vod_pwd_play_url">
  442. </div>
  443. </div>
  444. <div class="layui-form-item">
  445. <label class="layui-form-label">{:lang('pwd_down')}:</label>
  446. <div class="layui-input-inline ">
  447. <input type="text" class="layui-input" value="{$info.vod_pwd_down}" placeholder="" name="vod_pwd_down">
  448. </div>
  449. <label class="layui-form-label">{:lang('pwd_url')}:</label>
  450. <div class="layui-input-inline ">
  451. <input type="text" class="layui-input" value="{$info.vod_pwd_down_url}" placeholder="" name="vod_pwd_down_url">
  452. </div>
  453. </div>
  454. </div>
  455. </div>
  456. </div>
  457. <div class="layui-form-item center">
  458. <div class="layui-input-block">
  459. <button type="submit" class="layui-btn" lay-submit="" lay-filter="formSubmit" data-child="">{:lang('btn_save')}</button>
  460. <button type="button" class="layui-btn layui-btn-normal" id="btn_ai_seo_generate">{:lang('admin/ai_seo/btn_generate')}</button>
  461. <span id="seo_ai_status_badge" class="layui-badge layui-bg-gray">{:lang('admin/ai_seo/badge_none')}</span>
  462. <button class="layui-btn layui-btn-warm" type="reset">{:lang('btn_reset')}</button>
  463. </div>
  464. </div>
  465. </form>
  466. </div>
  467. {include file="../../../application/admin/view/public/foot" /}
  468. <script type="text/javascript" src="__STATIC__/js/ai_seo.js"></script>
  469. <script type="text/javascript">
  470. ue = editor_getEditor('vod_content');
  471. var player_select='{volist name="player_list" id="vo"}{if condition="$vo.status eq '1'"}<option value="{$vo.from}">{$vo.show}</option>{/if}{/volist}';
  472. var downer_select='{volist name="downer_list" id="vo"}{if condition="$vo.status eq '1'"}<option value="{$vo.from}">{$vo.show}</option>{/if}{/volist}';
  473. var server_select='{volist name="server_list" id="vo"}{if condition="$vo.status eq '1'"}<option value="{$vo.from}">{$vo.show}</option>{/if}{/volist}';
  474. var UPLOAD_IMG_KEY="{$GLOBALS['config']['upload']['img_key']}";UPLOAD_IMG_API="{$GLOBALS['config']['upload']['img_api']}";
  475. layui.use(['form','upload', 'layer'], function () {
  476. // 操作对象
  477. var form = layui.form
  478. , layer = layui.layer
  479. , $ = layui.jquery
  480. , upload = layui.upload;;
  481. // 验证
  482. form.verify({
  483. vod_name: function (value) {
  484. if (value == "") {
  485. return "{:lang('name_empty')}";
  486. }
  487. }
  488. });
  489. var AI_SEO_LANG = {
  490. badge_none: "{:lang('admin/ai_seo/badge_none')}",
  491. badge_optimized: "{:lang('admin/ai_seo/badge_optimized')}",
  492. badge_fallback: "{:lang('admin/ai_seo/badge_fallback')}",
  493. msg_generating: "{:lang('admin/ai_seo/msg_generating')}",
  494. msg_save_first: "{:lang('admin/ai_seo/msg_save_first')}",
  495. msg_no_fillable: "{:lang('admin/ai_seo/msg_no_fillable')}",
  496. msg_done: "{:lang('admin/ai_seo/msg_done')}",
  497. msg_generate_fail: "{:lang('admin/ai_seo/msg_generate_fail')}",
  498. msg_request_fail: "{:lang('admin/ai_seo/msg_request_fail')}",
  499. btn_generate: "{:lang('admin/ai_seo/btn_generate')}"
  500. };
  501. function bootAiSeo(){
  502. initAiSeoButton({
  503. url: "{:url('vod/aiSeoGenerate')}",
  504. mid: "vod",
  505. idFieldName: "vod_id",
  506. initialStatus: {$seo_ai_status|default=0},
  507. lang: AI_SEO_LANG,
  508. fallbackFields: { nameField: "vod_name", tagField: "vod_tag", blurbField: "vod_blurb" }
  509. });
  510. }
  511. if (typeof window.initAiSeoButton === 'function') {
  512. bootAiSeo();
  513. } else {
  514. var s = document.createElement('script');
  515. s.src = "__STATIC__/js/ai_seo.js?{$MAC_VERSION}";
  516. s.onload = bootAiSeo;
  517. document.head.appendChild(s);
  518. }
  519. $(document).on("click", ".extend", function(){
  520. $id = $(this).attr('data-id');
  521. if($id == 'vod_class' || $id == 'vod_keywords'){
  522. $val = $("input[id='"+$id+"']").val();
  523. if($val!=''){
  524. $val = $val+',';
  525. }
  526. if($val.indexOf($(this).text())>-1){
  527. return;
  528. }
  529. $("input[id='"+$id+"']").val($val+$(this).text());
  530. }else{
  531. $("input[id='"+$id+"']").val($(this).text());
  532. }
  533. });
  534. form.on('select(type_id)', function(data){
  535. getExtend(data.value);
  536. });
  537. //多图片上传
  538. upload.render({
  539. elem: '.screenshot'
  540. ,url: "{:url('upload/upload')}?flag=vod_screenshot"
  541. ,multiple: true
  542. ,before: function(obj){
  543. obj.preview(function(index, file, result){
  544. });
  545. }
  546. ,done: function(res){
  547. var val = res.data.file;
  548. var input = $("#vod_pic_screenshot")
  549. var content = input.val();
  550. if(content!=''){
  551. content += '\r\n';
  552. }
  553. content += val;
  554. input.val(content);
  555. $('.screenshot_list').append('<div data-src="'+val+'"><a href="javascript:;" class="del_screenshot">{:lang(\'del\')}</a><img src="'+mac_url_img(val)+'" alt="" class="layui-upload-img screenshot-img"></div>');
  556. }
  557. });
  558. //监听文本框
  559. $('#vod_pic_screenshot').keyup(function(e){
  560. let html = ``;
  561. var textArr = $(this).val().split(/[(\r\n)\r\n]+/);
  562. textArr.forEach((item,index)=>{
  563. if(!item){
  564. textArr.splice(index,1);
  565. }else{
  566. if(item.indexOf('$')>-1){
  567. item = item.substring(item.indexOf('$')+1);
  568. }
  569. html += `<div data-src="${item}"><a href="javascript:;" class="del_screenshot">{:lang('del')}</a><img src="${mac_url_img(item)}"" alt="" class="layui-upload-img screenshot-img"></div>`;
  570. }
  571. });
  572. $('.screenshot_list').html(html);
  573. });
  574. upload.render({
  575. elem: '.layui-upload'
  576. ,url: "{:url('upload/upload')}?flag=vod"
  577. ,method: 'post'
  578. ,before: function(input) {
  579. layer.msg("{:lang('upload_ing')}", {time:3000000});
  580. },done: function(res, index, upload) {
  581. var obj = this.item;
  582. if (res.code == 0) {
  583. layer.msg(res.msg);
  584. return false;
  585. }
  586. layer.closeAll();
  587. var input = $(obj).parent().parent().find('.upload-input');
  588. if ($(obj).attr('lay-type') == 'image') {
  589. input.siblings('img').attr('src', res.data.file).show();
  590. }
  591. input.val(res.data.file);
  592. if(res.data.thumb_class !=''){
  593. $('.'+ res.data.thumb_class).val(res.data.thumb[0].file);
  594. }
  595. }
  596. });
  597. upload.render({
  598. elem: '.j-editor-upload'
  599. , url: "{:url('upload/upload')}?flag=vod_file"
  600. , method: 'post'
  601. , exts: 'mp4|mp3|mkv|torrent|zip|txt|rar'
  602. , before: function (input) {
  603. layer.msg("{:lang('upload_ing')}", {time: 3000000});
  604. }, done: function (res, index, upload) {
  605. var obj = this.item;
  606. if (res.code == 0) {
  607. layer.msg(res.msg);
  608. return false;
  609. }
  610. layer.closeAll();
  611. var txt = $(obj).parent().parent().find('textarea').val();
  612. if (txt != '') {
  613. txt += "\r\n";
  614. }
  615. $(obj).parent().parent().find('textarea').val(txt + ROOT_PATH + "/" + res.data.file);
  616. }
  617. });
  618. function initUpload(flag) {
  619. layui.each($('#'+ flag +'er_list').find('.j-editor-upload').last(), function(index, elem){
  620. upload.render({
  621. elem: elem
  622. , url: "{:url('upload/upload')}?flag=vod_file"
  623. , method: 'post'
  624. , exts: 'mp4|mp3|mkv|torrent|zip|txt|rar'
  625. , before: function (input) {
  626. layer.msg("{:lang('upload_ing')}", {time: 3000000});
  627. }, done: function (res, index, upload) {
  628. var obj = this.item;
  629. if (res.code == 0) {
  630. layer.msg(res.msg);
  631. return false;
  632. }
  633. layer.closeAll();
  634. var txt = $(obj).parent().parent().find('textarea').val();
  635. if (txt != '') {
  636. txt += "\r\n";
  637. }
  638. $(obj).parent().parent().find('textarea').val(txt + ROOT_PATH + "/" +res.data.file);
  639. }
  640. });
  641. });
  642. }
  643. $('.upload-input').hover(function (e){
  644. var e = window.event || e;
  645. var imgsrc = $(this).val();
  646. if(imgsrc.trim()==""){ return; }
  647. var left = e.clientX+document.body.scrollLeft+20;
  648. var top = e.clientY+document.body.scrollTop+20;
  649. $(".showpic").css({left:left,top:top,display:""});
  650. if(imgsrc.indexOf('://')<0){ imgsrc = ROOT_PATH + '/' + imgsrc; } else{ imgsrc = imgsrc.replace('mac:','http:'); }
  651. $(".showpic_img").attr("src", imgsrc);
  652. },function (e){
  653. $(".showpic").css("display","none");
  654. });
  655. $("#btn_rnd").click(function(){
  656. $("#vod_hits").val( rndNum(5000,9999) );
  657. $("#vod_hits_month").val( rndNum(1000,4999) );
  658. $("#vod_hits_week").val( rndNum(300,999) );
  659. $("#vod_hits_day").val( rndNum(1,299) );
  660. $("#vod_up").val( rndNum(1,999) );
  661. $("#vod_down").val( rndNum(1,999) );
  662. $("#vod_score").val( rndNum(10) );
  663. $("#vod_score_all").val( rndNum(1000) );
  664. $("#vod_score_num").val( rndNum(100) );
  665. });
  666. //归零添加
  667. $("#btn_zero").click(function(){
  668. $("#vod_hits").val( '0' );
  669. $("#vod_hits_month").val( '0' );
  670. $("#vod_hits_week").val( '0' );
  671. $("#vod_hits_day").val( '0' );
  672. $("#vod_up").val( '0' );
  673. $("#vod_down").val( '0' );
  674. $("#vod_score").val( '0' );
  675. $("#vod_score_all").val( '0' );
  676. $("#vod_score_num").val( '0' );
  677. });
  678. //归零结束
  679. var is_load=0;
  680. $('#btn_douban').click(function(){
  681. var id = $('#vod_douban_id').val();
  682. var that=$(this);
  683. if(id == '' || id < 10000){
  684. alert("{:lang('admin/vod/douban_id_empty')}");
  685. return;
  686. }
  687. if(is_load==1){
  688. return;
  689. }
  690. is_load=1;
  691. that.text("{:lang('wait_submit')}");
  692. $.ajax({
  693. type: 'post',
  694. dataType: "jsonp",
  695. jsonp: "callback",
  696. timeout: 5000,
  697. url: '//' + 'api' + '.' + 'mac'+ 'cms' + '.'+ 'la' + '/douban/index/id/' + id,
  698. error: function(){
  699. alert("{:lang('request_err')}");
  700. },
  701. complete:function(){
  702. is_load=0;
  703. that.text("{:lang('search_data')}");
  704. },
  705. success:function(r){
  706. if(r.code>1){
  707. alert(r.msg);
  708. }
  709. else{
  710. if(r.data.vod_total){
  711. $('#vod_total').val(r.data.vod_total);
  712. }
  713. if(r.data.vod_serial){
  714. $('#vod_continu').val(r.data.vod_serial);
  715. }
  716. if(r.data.vod_isend){
  717. $('#vod_isend').val(r.data.vod_isend);
  718. }
  719. if(r.data.vod_name){
  720. $('#vod_name').val(r.data.vod_name);
  721. }
  722. if(r.data.vod_sub){
  723. $('#vod_sub').val(r.data.vod_sub);
  724. }
  725. if(r.data.vod_pic){
  726. $('#vod_pic').val(r.data.vod_pic);
  727. }
  728. if(r.data.vod_year){
  729. $('#vod_year').val(r.data.vod_year);
  730. }
  731. if(r.data.vod_lang){
  732. $('#vod_lang').val(r.data.vod_lang);
  733. }
  734. if(r.data.vod_area){
  735. $('#vod_area').val(r.data.vod_area);
  736. }
  737. if(r.data.vod_state){
  738. $('#vod_state').val(r.data.vod_state);
  739. }
  740. if(r.data.vod_class){
  741. $('#vod_type').val(r.data.vod_class);
  742. }
  743. if(r.data.vod_tag){
  744. $('#vod_tag').val(r.data.vod_tag);
  745. }
  746. if(r.data.vod_actor){
  747. $('#vod_actor').val(r.data.vod_actor);
  748. }
  749. if(r.data.vod_director){
  750. $('#vod_director').val(r.data.vod_director);
  751. }
  752. if(r.data.vod_pubdate){
  753. $('#vod_pubdate').val(r.data.vod_pubdate);
  754. }
  755. if(r.data.vod_writer){
  756. $('#vod_writer').val(r.data.vod_writer);
  757. }
  758. if(r.data.vod_score){
  759. $('#vod_score').val(r.data.vod_score);
  760. }
  761. if(r.data.vod_score_num){
  762. $('#vod_score_num').val(r.data.vod_score_num);
  763. }
  764. if(r.data.vod_score_all){
  765. $('#vod_score_all').val(r.data.vod_score_all);
  766. }
  767. if(r.data.vod_douban_score){
  768. $('#vod_douban_score').val(r.data.vod_douban_score);
  769. }
  770. if(r.data.vod_duration){
  771. $('#vod_duration').val(r.data.vod_duration);
  772. }
  773. if(r.data.vod_content){
  774. ue.setContent(r.data.vod_content);
  775. }
  776. if(r.data.vod_class){
  777. $('#vod_class').val(r.data.vod_class);
  778. }
  779. if(r.data.vod_reurl) {
  780. $('#vod_reurl').val(r.data.vod_reurl);
  781. }
  782. if(r.data.vod_author) {
  783. $('#vod_author').val(r.data.vod_author);
  784. }
  785. }
  786. }
  787. });
  788. });
  789. $('.contents').on('click','.j-editor-clear',function(){
  790. $(this).parent().parent().find('textarea').val('');
  791. });
  792. $('.contents').on('click','.j-editor-remove',function(){
  793. var datai = $(this).parent().parent().attr('data-i');
  794. $(this).parent().parent().remove();
  795. });
  796. $('.contents').on('click','.j-editor-up',function(){
  797. var current = $(this).parent().parent();
  798. var current_index = current.index();
  799. var current_i = current.attr('data-i');
  800. var prev = current.prev();
  801. var prev_i = prev.attr('data-i');
  802. if(current_index>0){
  803. current.insertBefore(prev);
  804. }
  805. });
  806. $('.contents').on('click','.j-editor-down',function(){
  807. var current = $(this).parent().parent();
  808. var current_index = current.index();
  809. var current_i = current.attr('data-i');
  810. var next = current.next();
  811. var next_i = next.attr('data-i');
  812. if(next.length>0){
  813. current.insertAfter(next);
  814. }
  815. });
  816. $('.contents').on('click','.j-editor-xz',function(){
  817. var arr1,s1,s2,urlarr,urlarrcount;
  818. s1 = $(this).parent().parent().find('textarea').val(); s2="";
  819. if (s1.length==0){return false;}
  820. s1 = s1.replaceAll("\r","");
  821. arr1 = s1.split("\n");
  822. arr1len = arr1.length;
  823. for(j=0;j<arr1len;j++){
  824. if(arr1[j].length>0){
  825. urlarr = arr1[j].split('$'); urlarrcount = urlarr.length-1;
  826. if(urlarrcount==0){
  827. arr1[j]= getPatName(j,arr1len,arr1[j]) + '$' + arr1[j];
  828. }
  829. s2+=arr1[j]+"\r\n";
  830. }
  831. }
  832. $(this).parent().parent().find('textarea').val(s2.trim()) ;
  833. });
  834. $('.contents').on('click','.j-editor-order',function(){
  835. var arr1,s1,s2,urlarr,urlarrcount;
  836. s1 = $(this).parent().parent().find('textarea').val(); s2="";
  837. if (s1.length==0){return false;}
  838. s1 = s1.replaceAll("\r","");
  839. arr1=s1.split("\n");
  840. for(j=arr1.length-1;j>=0;j--){
  841. if(arr1[j].length>0){
  842. s2+=arr1[j]+"\r\n";
  843. }
  844. }
  845. $(this).parent().parent().find('textarea').val(s2.trim()) ;
  846. });
  847. $('.contents').on('click','.j-editor-dn',function(){
  848. var arr1,s1,s2,urlarr,urlarrcount;
  849. s1 = $(this).parent().parent().find('textarea').val(); s2="";
  850. if (s1.length==0){return false;}
  851. s1 = s1.replaceAll("\r","");
  852. arr1=s1.split("\n");
  853. for(j=0;j<arr1.length;j++){
  854. if(arr1[j].length>0){
  855. urlarr = arr1[j].split('$'); urlarrcount = urlarr.length-1;
  856. if(urlarrcount==0){
  857. arr1[j] = arr1[j];
  858. }
  859. else{
  860. arr1[j] = urlarr[1];
  861. }
  862. s2+=arr1[j]+"\r\n";
  863. }
  864. }
  865. $(this).parent().parent().find('textarea').val(s2.trim()) ;
  866. });
  867. $('.j-player-add').on('click',function(){
  868. players_arr_len++;
  869. var tpl='<div class="layui-form-item" data-i="'+players_arr_len+'"><label class="layui-form-label">{:lang('play')}'+(players_arr_len)+':</label><div class="layui-input-inline w150"><select name="vod_play_from[]"><option value="no">{:lang('admin/vod/select_player')}.</option>'+player_select+'</select></div><div class="layui-input-inline w150"><select name="vod_play_server[]" ><option value="no">{:lang('admin/vod/select_server')}.</option>'+server_select+'</select></div><div class="layui-input-inline w150"><input type="text" name="vod_play_note[]" class="layui-input" placeholder="{:lang('remarks')}" ></div><div class="layui-input-inline w400 p10"><a href="javascript:void(0)" class="j-editor-clear">{:lang('clear')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-remove">{:lang('del')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-up">{:lang('admin/vod/move_up')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-down">{:lang('admin/vod/move_down')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-xz">{:lang('admin/vod/correct')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-order">{:lang('admin/vod/reverse_order')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-dn">{:lang('admin/vod/del_prefix')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-upload">{:lang('upload')}</a></div><div class="p10 m20"></div><div class="layui-input-block"><textarea id="vod_content'+(players_arr_len)+'" name="vod_play_url[]" class="layui-textarea " style="width:99%;height:250px"></textarea></div></div>';
  870. $("#player_list").append(tpl);
  871. form.render('select');
  872. initUpload('play');
  873. });
  874. $('.j-downer-add').on('click',function(){
  875. downers_arr_len++;
  876. var tpl='<div class="layui-form-item" data-i="'+downers_arr_len+'"><label class="layui-form-label">{:lang('down')}'+(downers_arr_len)+':</label><div class="layui-input-inline w150"><select name="vod_down_from[]"><option value="no">{:lang('admin/vod/select_downer')}.</option>'+downer_select+'</select></div><div class="layui-input-inline w150"><select name="vod_down_server[]" ><option value="no">{:lang('admin/vod/select_server')}.</option>'+server_select+'</select></div><div class="layui-input-inline w150"><input type="text" name="vod_down_note[]" class="layui-input" placeholder="{:lang('remarks')}"></div><div class="layui-input-inline w400 p10"><a href="javascript:void(0)" class="j-editor-clear">{:lang('clear')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-remove">{:lang('del')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-up">{:lang('admin/vod/move_up')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-down">{:lang('admin/vod/move_down')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-xz">{:lang('admin/vod/correct')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-order">{:lang('admin/vod/reverse_order')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-dn">{:lang('admin/vod/del_prefix')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-upload">{:lang('upload')}</a></div><div class="p10 m20"></div><div class="layui-input-block"><textarea id="vod_content'+(downers_arr_len)+'" name="vod_down_url[]" class="layui-textarea" style="width:99%;height:250px"></textarea></div></div>';
  877. $("#downer_list").append(tpl);
  878. form.render('select');
  879. initUpload('down');
  880. });
  881. $('.j-plot-add').on('click',function(){
  882. plot_arr_len++;
  883. var tpl='<div class="layui-form-item" data-i="'+plot_arr_len+'"><label class="layui-form-label">{:lang('admin/vod/plot')}'+(plot_arr_len)+':</label><div class="layui-input-inline w500"><input type="text" name="vod_plot_name[]" class="layui-input" placeholder="{:lang('admin/vod/plot_name')}"></div><div class="layui-input-inline w400 p10"><a href="javascript:void(0)" class="j-editor-clear">{:lang('clear')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-remove">{:lang('del')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-up">{:lang('admin/vod/move_up')}</a>&nbsp;<a href="javascript:void(0)" class="j-editor-down">{:lang('admin/vod/move_down')}</a>&nbsp;</div><div class="p10 m20"></div><div class="layui-input-block"><textarea id="vod_content'+(plot_arr_len)+'" name="vod_plot_detail[]" class="layui-textarea" style="width:99%;height:250px"></textarea></div></div>';
  884. $("#plot_list").append(tpl);
  885. });
  886. $(document).on('click', '.del_screenshot', function() {
  887. var src = $(this).parent().attr('data-src');
  888. var input = $("#vod_pic_screenshot")
  889. var content = input.val();
  890. console.log(content);
  891. var snsArr = content.split(/[(\r\n)\r\n]+/);
  892. snsArr.forEach((item,index)=>{
  893. if(!item || item == src){
  894. snsArr.splice(index,1);//删除
  895. }
  896. });
  897. $(this).parent().remove();
  898. input.val(snsArr.join('\r\n'));//重新赋值
  899. $.get("{:url('annex/del')}", {ids:src}, function(res){});
  900. });
  901. if(players_arr_len==0 && downers_arr_len==0) {
  902. $('.j-player-add').click();
  903. }
  904. });
  905. function getExtend(id){
  906. $.post("{:url('type/extend')}", {id:id}, function(res) {
  907. if (res.code == 1) {
  908. $.each(res.data, function(key, value){
  909. $('.vod_'+key+"_label").html('');
  910. if(value != ''){
  911. $.each(value, function(key2, value2){
  912. $(".vod_"+key+"_label").append('<a class="layui-btn layui-btn-xs extend" href="javascript:;" data-id="vod_'+key+'">'+value2+'</a>');
  913. });
  914. }
  915. });
  916. }
  917. });
  918. }
  919. function FindNote(s){
  920. var res="";
  921. if (s.indexOf("DVD")>0){
  922. res="DVD";
  923. }
  924. else if (s.indexOf("TS")>0 || s.indexOf("TC")>0 || s.indexOf("抢先版")>0) {
  925. res="抢先版";
  926. }
  927. else if (s.indexOf("HD")>0){
  928. res="HD";
  929. }
  930. else if (s.indexOf("BD")>0){
  931. res="BD";
  932. }
  933. else if (s.indexOf("蓝光高清")>0){
  934. res="蓝光高清";
  935. }
  936. else if (s.indexOf("高清")>0){
  937. res="高清";
  938. }
  939. else if (s.indexOf("VCD")>0){
  940. res="VCD";
  941. }
  942. if (s.indexOf("国粤语")>0){
  943. res +="国粤语";
  944. }
  945. else if (s.indexOf("国语")>0){
  946. res +="国语";
  947. }
  948. else if (s.indexOf("粤语")>0){
  949. res +="粤语";
  950. }
  951. else if (s.indexOf("台语")>0){
  952. res +="台语";
  953. }
  954. else if (s.indexOf("英语")>0){
  955. res +="英语";
  956. }
  957. else if (s.indexOf("中文字幕")>0){
  958. res +="中文字幕";
  959. }
  960. return res;
  961. }
  962. function getPatName(n,l,s){
  963. var res="";
  964. var rc=false;
  965. if(s.indexOf("qvod:")>-1 || s.indexOf("bdhd:")>-1 || s.indexOf("cool:")>-1){
  966. var arr = s.split('|');
  967. if(arr.length>=2){
  968. res = arr[2].replace(/[^0-9]/ig,"");
  969. rc=true;
  970. if(res!=""){
  971. if(res.length>3){
  972. res += "{:lang('issue')}";
  973. }
  974. else if(l==1){
  975. res = "{:lang('admin/vod/complete_works')}";
  976. }
  977. else{
  978. res = "{:lang('the')}" + res + "{:lang('episode')}";
  979. }
  980. }
  981. else{
  982. res = FindNote(s);
  983. if (s==""){
  984. if (l==1){
  985. res="{:lang('admin/vod/complete_works')}";
  986. }
  987. else{
  988. rc=false;
  989. }
  990. }
  991. }
  992. }
  993. }
  994. if(!rc){
  995. res = "{:lang('the')}" + (n<9 ? '0' : '') + (n+1) + "{:lang('episode')}";
  996. }
  997. return res;
  998. }
  999. {if condition="$info.vod_id gt 0"}
  1000. setTimeout(function () {
  1001. getExtend('{$info.type_id}')
  1002. },1000);
  1003. {/if}
  1004. </script>
  1005. </body>
  1006. </html>