Commit f50134db4c4732f8ca1a61126656dacd8cf1e1f0

Authored by 刘基城
1 parent 73dc7b24

调整页面

src/main/java/com/cnlive/mz/live/action/HttpPostArgumentTest2.java
@@ -117,7 +117,7 @@ public class HttpPostArgumentTest2 { @@ -117,7 +117,7 @@ public class HttpPostArgumentTest2 {
117 public static void main(String[] args) { 117 public static void main(String[] args) {
118 // new HttpPostArgumentTest2().delete(); 118 // new HttpPostArgumentTest2().delete();
119 //HttpPostArgumentTest2.all(); 119 //HttpPostArgumentTest2.all();
120 - HttpPostArgumentTest2.supload(); 120 + HttpPostArgumentTest2.redirect();
121 // HttpReq.postRequestWidthResult("http://120.132.76.51:9696/cnlive_encoding_job/task", 121 // HttpReq.postRequestWidthResult("http://120.132.76.51:9696/cnlive_encoding_job/task",
122 // "json", "jsonjsonjsonjson");r 122 // "json", "jsonjsonjsonjson");r
123 } 123 }
src/main/java/com/cnlive/mz/live/action/UserAction.java
@@ -24,19 +24,19 @@ public class UserAction { @@ -24,19 +24,19 @@ public class UserAction {
24 * @return 24 * @return
25 */ 25 */
26 @Request.Get("/user/list/{pageNumber}") 26 @Request.Get("/user/list/{pageNumber}")
27 - public View getUsers(int pageNumber) { 27 + public View list(int pageNumber) {
28 Pager<TUser> userPage = tUserService.getTUserPage(pageNumber); 28 Pager<TUser> userPage = tUserService.getTUserPage(pageNumber);
29 return new View("user/user_list.jsp").data("userPage", userPage); 29 return new View("user/user_list.jsp").data("userPage", userPage);
30 } 30 }
31 31
32 @Request.Get("/user/live/{userId}/{pageNumber}") 32 @Request.Get("/user/live/{userId}/{pageNumber}")
33 - public View getLiveList(int userId, int pageNumber) { 33 + public View livelist(int userId, int pageNumber) {
34 Pager<TLive> userPage = tUserService.getTLivePage(userId, pageNumber); 34 Pager<TLive> userPage = tUserService.getTLivePage(userId, pageNumber);
35 return new View("user/user_live_list.jsp").data("userPage", userPage); 35 return new View("user/user_live_list.jsp").data("userPage", userPage);
36 } 36 }
37 37
38 @Request.Get("/user/report/{userId}/{type}") 38 @Request.Get("/user/report/{userId}/{type}")
39 - public Result getUserByReport(int userId,int type) {  
40 - return new Result(tUserService.addReport(userId)); 39 + public Result report(int userId,String type) {
  40 + return new Result(tUserService.addReport(userId,type));
41 } 41 }
42 } 42 }
src/main/java/com/cnlive/mz/live/action/VideoAction.java
@@ -73,12 +73,12 @@ public class VideoAction { @@ -73,12 +73,12 @@ public class VideoAction {
73 title = title.substring(0, 50); 73 title = title.substring(0, 50);
74 } 74 }
75 String description = params.getString("description"); 75 String description = params.getString("description");
76 - WordFilterUtil wf =new WordFilterUtil();  
77 - FilteredResult resTitle =wf.filterHtml(title, '*');  
78 - title=resTitle.getFilteredContent().toString();  
79 - FilteredResult resDescr= wf.filterHtml(description, '*');  
80 - description=resDescr.getFilteredContent().toString();  
81 - 76 + WordFilterUtil wf = new WordFilterUtil();
  77 + FilteredResult resTitle = wf.filterHtml(title, '*');
  78 + title = resTitle.getFilteredContent().toString();
  79 + FilteredResult resDescr = wf.filterHtml(description, '*');
  80 + description = resDescr.getFilteredContent().toString();
  81 +
82 String direct = params.getString("direct"); 82 String direct = params.getString("direct");
83 String custom_args = params.getString("custom_args"); 83 String custom_args = params.getString("custom_args");
84 String md5 = params.getString("md5"); 84 String md5 = params.getString("md5");
@@ -240,9 +240,8 @@ public class VideoAction { @@ -240,9 +240,8 @@ public class VideoAction {
240 log.info(sb.toString()); 240 log.info(sb.toString());
241 } 241 }
242 242
243 - @Request.Post("/video/unline")  
244 - public Result underLine(Params params) {  
245 - int id = params.getInt("id"); 243 + @Request.Get("/video/unline/{id}")
  244 + public Result underLine(int id) {
246 boolean flag = tVideoService.underLine(id); 245 boolean flag = tVideoService.underLine(id);
247 return new Result(flag); 246 return new Result(flag);
248 } 247 }
src/main/java/com/cnlive/mz/live/action/VodIpsAction.java 0 → 100644
  1 +package com.cnlive.mz.live.action;
  2 +
  3 +import java.util.HashMap;
  4 +import java.util.Map;
  5 +
  6 +import org.apache.log4j.Logger;
  7 +import org.smart4j.framework.mvc.annotation.Action;
  8 +import org.smart4j.framework.mvc.annotation.Request;
  9 +import org.smart4j.framework.mvc.bean.Params;
  10 +import org.smart4j.framework.mvc.bean.Redirect;
  11 +import org.smart4j.framework.mvc.bean.ResultBean;
  12 +
  13 +/**
  14 + * 点播调度
  15 + * @author adm
  16 + *
  17 + */
  18 +@Action
  19 +public class VodIpsAction {
  20 +
  21 + private Logger log = Logger.getLogger("VodIpsAction");
  22 +
  23 + @Request.Get("/vodips/h5/{id}")
  24 + public Redirect h5(int id,Params params) {
  25 + Redirect r=new Redirect();
  26 + r.setRedirectUrl("http://wideo03.cnlive.com/video/data1/2016/0808/141118/1500/878e13fc40754c2caf1476f7cad5f7b9_141118_1500.m3u8");
  27 + return r;
  28 + }
  29 +
  30 + @Request.Get("/vodips/app/{id}")
  31 + public Redirect app(int id,Params params) {
  32 + Redirect r=new Redirect();
  33 + r.setRedirectUrl("http://wideo03.cnlive.com/video/data1/2016/0808/141118/1500/878e13fc40754c2caf1476f7cad5f7b9_141118_1500.m3u8");
  34 + return r;
  35 + }
  36 +
  37 + @Request.Get("/vodips/flash/{id}")
  38 + public ResultBean flash(int id,Params params) {
  39 + ResultBean rb =new ResultBean();
  40 + Map map =new HashMap();
  41 + map.put("\"location\"", "http://wideo01.cnlive.com/video/data1/2016/0524/124025/800/b7e34cfee140449f9e04c5e85b66aa56_124025_800.mp4");
  42 + rb.setData(map);
  43 + rb.setErrorCode("0");
  44 + rb.setErrorMessage("成功");
  45 + return rb;
  46 + }
  47 +}
src/main/webapp/pages/common/left.jsp
@@ -18,21 +18,22 @@ @@ -18,21 +18,22 @@
18 </div> 18 </div>
19 </div> 19 </div>
20 <ul class="sidebar-menu"> 20 <ul class="sidebar-menu">
21 - <c:if test="${sessionScope.roleId=='0'}">  
22 - <li class="header">导航栏</li> 21 + <c:if test="${sessionScope.roleId=='1'}">
  22 + <li class="header">导航栏</li>
23 <li> 23 <li>
24 <a href="${BASE}/switch"><i class="fa fa-circle-o text-blue"></i>全局切换</a> 24 <a href="${BASE}/switch"><i class="fa fa-circle-o text-blue"></i>全局切换</a>
25 </li> 25 </li>
26 <li> 26 <li>
27 - <a href="${BASE}/activity/preload"><i class="fa fa-circle-o"></i>新增活动</a> 27 + <a href="${BASE}/channel/monitor/1"><i class="fa fa-circle-o text-yellow"></i>直播监控</a>
28 </li> 28 </li>
29 <li> 29 <li>
30 - <a href="${BASE}/activity/list/1"><i class="fa fa-circle-o text-yellow"></i>活动管理</a> 30 + <a href="${BASE}/activity/preload"><i class="fa fa-circle-o"></i>新增活动</a>
31 </li> 31 </li>
32 - <li class="header">系统设置</li>  
33 <li> 32 <li>
34 - <a href="${BASE}/channel/monitor/1"><i class="fa fa-circle-o text-yellow"></i>直播监控</a> 33 + <a href="${BASE}/activity/list/1"><i class="fa fa-circle-o text-red"></i>活动管理</a>
35 </li> 34 </li>
  35 +
  36 + <li class="header">系统设置</li>
36 <li> 37 <li>
37 <a href="${BASE}/channel/list/1"><i class="fa fa-circle-o text-green"></i>频道管理</a> 38 <a href="${BASE}/channel/list/1"><i class="fa fa-circle-o text-green"></i>频道管理</a>
38 </li> 39 </li>
@@ -42,22 +43,8 @@ @@ -42,22 +43,8 @@
42 <li> 43 <li>
43 <a href="${BASE}/signal/list/1"><i class="fa fa-circle-o text-red"></i>信源管理</a> 44 <a href="${BASE}/signal/list/1"><i class="fa fa-circle-o text-red"></i>信源管理</a>
44 </li> 45 </li>
45 - <li class="header">导航栏</li>  
46 - <li>  
47 - <a href="${BASE}/activity/preload"><i class="fa fa-circle-o"></i>新增活动</a>  
48 - </li>  
49 - <li>  
50 - <a href="${BASE}/activity/list/1"><i class="fa fa-circle-o text-yellow"></i>活动管理</a>  
51 - </li>  
52 - <li class="header">系统设置</li>  
53 - <li>  
54 - <a href="${BASE}/channel/monitor/1"><i class="fa fa-circle-o text-yellow"></i>直播监控</a>  
55 - </li>  
56 - <li>  
57 - <a href="${BASE}/channel/list/1"><i class="fa fa-circle-o text-green"></i>频道管理</a>  
58 - </li>  
59 </c:if> 46 </c:if>
60 - <c:if test="true"> 47 + <c:if test="${sessionScope.roleId=='2'}">
61 <li class="header">UGC直播审查</li> 48 <li class="header">UGC直播审查</li>
62 <li> 49 <li>
63 <a href="${BASE}/user/list/1"><i class="fa fa-circle-o text-yellow"></i>主播管理</a> 50 <a href="${BASE}/user/list/1"><i class="fa fa-circle-o text-yellow"></i>主播管理</a>
src/main/webapp/pages/live/all_live_management.jsp
@@ -81,7 +81,13 @@ @@ -81,7 +81,13 @@
81 <span class="badge bg-yellow">直播中</span> 81 <span class="badge bg-yellow">直播中</span>
82 </c:if> <c:if test="${item.t_status_id==-2}"> 82 </c:if> <c:if test="${item.t_status_id==-2}">
83 <span class="badge bg-red">异常结束</span> 83 <span class="badge bg-red">异常结束</span>
84 - </c:if></td> 84 + </c:if>
  85 +
  86 + <c:if test="${item.t_status_id==-3}">
  87 + <span class="badge bg-yellow">已经下线</span>
  88 + </c:if>
  89 +
  90 + </td>
85 91
86 <td> 92 <td>
87 <%-- <button type="button" class="btn btn-xs btn-success" id="down" onclick="t_live_close('${item.id}','${item.uuid}');"> 93 <%-- <button type="button" class="btn btn-xs btn-success" id="down" onclick="t_live_close('${item.id}','${item.uuid}');">
src/main/webapp/pages/live/video_management.jsp
@@ -36,35 +36,28 @@ @@ -36,35 +36,28 @@
36 <div class="box-body"> 36 <div class="box-body">
37 <table class="table table-bordered"> 37 <table class="table table-bordered">
38 <tr> 38 <tr>
39 - <th width ="30%">名称</th>  
40 - <th width ="10%">状态</th>  
41 - <th width ="40%">描述</th>  
42 - <th width ="10%">操作</th> 39 + <th width="30%">名称</th>
  40 + <th width="30%">relation_id</th>
  41 + <th width="30%">审核状态</th>
  42 + <th width="10%">操作</th>
43 </tr> 43 </tr>
44 <c:forEach var="item" items="${videos.recordList}" 44 <c:forEach var="item" items="${videos.recordList}"
45 varStatus="stat"> 45 varStatus="stat">
46 <tr> 46 <tr>
47 - <td>${item.title}</td>  
48 - <td><c:if test="${item.state==205}">  
49 - <span class="badge bg-green">未开始</span>  
50 - </c:if> <c:if test="${item.state==207}">  
51 - <span class="badge bg-red">直播中</span>  
52 - </c:if> <c:if test="${item.state==302}">  
53 - <span class="badge">直播结束</span>  
54 - </c:if> <c:if test="${item.state==600}">  
55 - <span class="badge">回放同步中</span>  
56 - </c:if></td>  
57 - <td>${item.description}  
58 - </td> 47 + <td><a onclick="t_live_xq(${item.id});">${item.title}</a></td>
  48 + <td>${item.relation_id}</td>
  49 + <td><c:choose>
  50 + <c:when test="${item.check_state==1}">
  51 + <span class="badge bg-green">审核通过</span>
  52 + </c:when>
  53 + <c:otherwise>
  54 + <span class="badge bg-red">未审核</span>
  55 + </c:otherwise>
  56 + </c:choose></td>
59 <td> 57 <td>
60 - <button class="btn btn-minier btn-sm"  
61 - onclick="t_live_xq(${item.id});">详细  
62 - </button>  
63 <button class="btn btn-danger btn-sm" 58 <button class="btn btn-danger btn-sm"
64 - onclick="t_live_underLine(${item.id});">下线  
65 - </button> 59 + onclick="t_live_underLine(${item.id});">下线</button>
66 </td> 60 </td>
67 -  
68 </tr> 61 </tr>
69 </c:forEach> 62 </c:forEach>
70 </table> 63 </table>
src/main/webapp/pages/live/video_view.jsp
@@ -42,7 +42,7 @@ @@ -42,7 +42,7 @@
42 <table class="table table-bordered"> 42 <table class="table table-bordered">
43 <tr> 43 <tr>
44 <td colspan="3" align='center'><h2>${tVideo.title}</h2></td> 44 <td colspan="3" align='center'><h2>${tVideo.title}</h2></td>
45 - 45 +
46 </tr> 46 </tr>
47 <tr> 47 <tr>
48 <td><b>id:</b></td> 48 <td><b>id:</b></td>
@@ -57,7 +57,7 @@ @@ -57,7 +57,7 @@
57 <td><b>relation_id:</b></td> 57 <td><b>relation_id:</b></td>
58 <td colspan="1">${tVideo.relation_id}</td> 58 <td colspan="1">${tVideo.relation_id}</td>
59 </tr> 59 </tr>
60 - 60 +
61 <tr> 61 <tr>
62 <td><b>t_user_id:</b></td> 62 <td><b>t_user_id:</b></td>
63 <td colspan="1">${tVideo.t_user_id}</td> 63 <td colspan="1">${tVideo.t_user_id}</td>
@@ -98,6 +98,13 @@ @@ -98,6 +98,13 @@
98 <td><b>direct:</b></td> 98 <td><b>direct:</b></td>
99 <td colspan="2">${tVideo.direct}</td> 99 <td colspan="2">${tVideo.direct}</td>
100 </tr> 100 </tr>
  101 + <tr>
  102 + <td><button class="btn btn-success"
  103 + onclick="to_video_pass(${tVideo.id});">通过</button></td>
  104 + <td colspan="2"><button
  105 + class="btn btn-danger"
  106 + onclick="unline(${tVideo.id});">下线</button></td>
  107 + </tr>
101 </table> 108 </table>
102 </div> 109 </div>
103 </div> 110 </div>
@@ -113,70 +120,110 @@ @@ -113,70 +120,110 @@
113 </section> 120 </section>
114 </div> 121 </div>
115 </div> 122 </div>
116 - <script type="text/javascript" src="../../pages/check/js/ckplayer.js" charset="utf-8"></script> 123 + <script type="text/javascript" src="../../pages/check/js/ckplayer.js"
  124 + charset="utf-8"></script>
117 <!-- <script type="text/javascript" src="../../pages/check/js/offlights.js" charset="utf-8"></script> --> 125 <!-- <script type="text/javascript" src="../../pages/check/js/offlights.js" charset="utf-8"></script> -->
118 -<script type="text/javascript">  
119 -/* jwplayer("player").setup({  
120 - file: '${tVideo.play_url}',  
121 - height: 260,  
122 - image: "/assets/myVideo.jpg",  
123 - autostart:true,  
124 - rtmp: {  
125 - bufferlength: 0.1  
126 - },  
127 - width: 370  
128 -}); */ 126 + <script type="text/javascript">
  127 +
129 128
130 - var BASE_URL = "http://localhost:8080/cnlive_live_web/static/assets/ck/",  
131 - prefix = "http",  
132 - isHLS = true,  
133 - url = '${tVideo.play_url}';  
134 - var isMobile = function () {  
135 - var check = false;  
136 - (function (a) {  
137 - if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0, 4)))  
138 - check = true  
139 - })(navigator.userAgent || navigator.vendor || window.opera);  
140 - return check;  
141 - }  
142 - if (isMobile()){  
143 - new ksVideo({  
144 - container:"player",  
145 - url: url,  
146 - width:600,  
147 - height:200,  
148 - face:"mp4.png" 129 + function unline(id){
  130 + $.ajax({
  131 + url:'../../video/unline/'+id,
  132 + type:'get',
  133 + error : function() {
  134 + alert('获取错误!');
  135 + },
  136 + success : function(data) {
  137 + alert("下线成功");
  138 + window.location.href="../check/1";
  139 + }
149 }); 140 });
150 - } else {  
151 - var flashvars;  
152 - // 播放器参数说明地址:http://www.ckplayer.com/tool/help/29.htm  
153 - if (prefix == "http" && isHLS){  
154 - flashvars = {  
155 - f : BASE_URL + 'ckplayer/m3u8.swf',  
156 - a : url || 'http://kssws.ks-cdn.com/20121218/abc.mp4-640x480-b211ebb6.mp4',  
157 - c : 0,  
158 - p : 1,  
159 - e : 1,  
160 - s : 4,  
161 - lv: 0//注意,是否锁定进度栏 0:不锁定,1:锁定。如果是直播,需设置lv:1  
162 - }  
163 - } else if (prefix == "rtmp" || !isHLS){  
164 - flashvars = {  
165 - f : url || 'http://kssws.ks-cdn.com/20121218/abc.mp4-640x480-b211ebb6.mp4',  
166 - p : 1,  
167 - c : 0, //调用配置方式 =0:调用ckplayer.js  
168 - lv: 0  
169 - }  
170 - }  
171 - var params = {  
172 - bgcolor:'#FFF',  
173 - allowFullScreen:true,  
174 - allowScriptAccess:'always',  
175 - wmode:'transparent'  
176 - };  
177 - CKobject.embed('http://localhost:8080/cnlive_live_web/static/assets/ck/ckplayer/ckplayer.swf','player','ckplayer_a1','400', '350', false, flashvars)  
178 - }  
179 -</script> 141 + }
  142 +
  143 +
  144 + function to_video_pass(id) {
  145 + $.ajax({
  146 + url : BASE+'/video/pass/'+id,
  147 + type : 'get',
  148 + async : true,
  149 + error : function() {
  150 + alert('获取错误!');
  151 + },
  152 + success : function(data) {
  153 + alert("通过");
  154 + window.location.href="../check/1";
  155 + }
  156 + });
  157 + }
  158 +
  159 + /* jwplayer("player").setup({
  160 + file: '${tVideo.play_url}',
  161 + height: 260,
  162 + image: "/assets/myVideo.jpg",
  163 + autostart:true,
  164 + rtmp: {
  165 + bufferlength: 0.1
  166 + },
  167 + width: 370
  168 + }); */
  169 +
  170 + var BASE_URL = "http://bc.cnlive.com/static/assets/ck/", prefix = "http", isHLS = true, url = '${tVideo.play_url}';
  171 + var isMobile = function() {
  172 + var check = false;
  173 + (function(a) {
  174 + if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i
  175 + .test(a)
  176 + || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i
  177 + .test(a.substr(0, 4)))
  178 + check = true
  179 + })(navigator.userAgent || navigator.vendor || window.opera);
  180 + return check;
  181 + }
  182 + if (isMobile()) {
  183 + new ksVideo({
  184 + container : "player",
  185 + url : url,
  186 + width : 600,
  187 + height : 200,
  188 + face : "mp4.png"
  189 + });
  190 + } else {
  191 + var flashvars;
  192 + // 播放器参数说明地址:http://www.ckplayer.com/tool/help/29.htm
  193 + if (prefix == "http" && isHLS) {
  194 + flashvars = {
  195 + f : BASE_URL + 'ckplayer/m3u8.swf',
  196 + a : url
  197 + || 'http://kssws.ks-cdn.com/20121218/abc.mp4-640x480-b211ebb6.mp4',
  198 + c : 0,
  199 + p : 1,
  200 + e : 1,
  201 + s : 4,
  202 + lv : 0
  203 + //注意,是否锁定进度栏 0:不锁定,1:锁定。如果是直播,需设置lv:1
  204 + }
  205 + } else if (prefix == "rtmp" || !isHLS) {
  206 + flashvars = {
  207 + f : url
  208 + || 'http://kssws.ks-cdn.com/20121218/abc.mp4-640x480-b211ebb6.mp4',
  209 + p : 1,
  210 + c : 0, //调用配置方式 =0:调用ckplayer.js
  211 + lv : 0
  212 + }
  213 + }
  214 + var params = {
  215 + bgcolor : '#FFF',
  216 + allowFullScreen : true,
  217 + allowScriptAccess : 'always',
  218 + wmode : 'transparent'
  219 + };
  220 + CKobject
  221 + .embed(
  222 + 'http://bc.cnlive.com/static/assets/ck/ckplayer/ckplayer.swf',
  223 + 'player', 'ckplayer_a1', '400', '350', false,
  224 + flashvars)
  225 + }
  226 + </script>
180 </body> 227 </body>
181 228
182 </html> 229 </html>
src/main/webapp/pages/user/user_list.jsp
@@ -45,6 +45,7 @@ @@ -45,6 +45,7 @@
45 <th>用户权限</th> 45 <th>用户权限</th>
46 <th>创建日期</th> 46 <th>创建日期</th>
47 <th>举报次数</th> 47 <th>举报次数</th>
  48 + <th>举报原因</th>
48 <th>播放列表</th> 49 <th>播放列表</th>
49 </tr> 50 </tr>
50 <c:forEach var="item" items="${userPage.recordList}" 51 <c:forEach var="item" items="${userPage.recordList}"
@@ -52,11 +53,16 @@ @@ -52,11 +53,16 @@
52 <tr> 53 <tr>
53 <td>${item.name}</td> 54 <td>${item.name}</td>
54 <td>${item.is_admin}</td> 55 <td>${item.is_admin}</td>
55 - <td>${item.create_time}</td> 56 + <td>${item.create_time}</td>
56 <td> 57 <td>
57 <c:if test="${item.reported_count<=5}"><span class="badge">${item.reported_count}</span></c:if> 58 <c:if test="${item.reported_count<=5}"><span class="badge">${item.reported_count}</span></c:if>
58 <c:if test="${item.reported_count>5}"><span class="badge bg-red">${item.reported_count}</span></c:if> 59 <c:if test="${item.reported_count>5}"><span class="badge bg-red">${item.reported_count}</span></c:if>
59 </td> 60 </td>
  61 + <td>
  62 + <c:forEach items="${fn:split(item.reported_reason,',')}" var="tags">
  63 + ${tags}
  64 + </c:forEach>
  65 + </td>
60 <td><a href="${BASE}/user/live/${item.id}/1">查看</a></td> 66 <td><a href="${BASE}/user/live/${item.id}/1">查看</a></td>
61 </tr> 67 </tr>
62 </c:forEach> 68 </c:forEach>
src/main/webapp/static/assets/cnlive/js/video.js
@@ -5,13 +5,4 @@ function t_live_xq(id){ @@ -5,13 +5,4 @@ function t_live_xq(id){
5 datatype : 'json', 5 datatype : 'json',
6 data:{"id":id}, 6 data:{"id":id},
7 }); 7 });
8 -}  
9 -function t_live_underLine(id){  
10 - alert(id);  
11 - $.ajax({  
12 - url:'../../video/unline',  
13 - type:'post',  
14 - datatype : 'json',  
15 - data:{"id":id},  
16 - });  
17 } 8 }
18 \ No newline at end of file 9 \ No newline at end of file
target/m2e-wtp/web-resources/META-INF/maven/com.cnlive.mz.live.web/cnlive_live_web/pom.properties
1 #Generated by Maven Integration for Eclipse 1 #Generated by Maven Integration for Eclipse
2 -#Fri Jul 08 14:51:31 CST 2016 2 +#Tue Aug 09 08:49:54 CST 2016
3 version=0.0.1-SNAPSHOT 3 version=0.0.1-SNAPSHOT
4 groupId=com.cnlive.mz.live.web 4 groupId=com.cnlive.mz.live.web
5 m2e.projectName=cnlive_live_web 5 m2e.projectName=cnlive_live_web