Commit be78d0728972b79145f4c7ace4ddad0eabd5cb9b
1 parent
07792922
添加关键词过滤
Showing
7 changed files
with
212 additions
and
25 deletions
.settings/org.eclipse.wst.common.component
| ... | ... | @@ -8,6 +8,15 @@ |
| 8 | 8 | <dependent-module archiveName="cnlive_live_model-0.0.1-SNAPSHOT.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/cnlive_live_model/cnlive_live_model"> |
| 9 | 9 | <dependency-type>uses</dependency-type> |
| 10 | 10 | </dependent-module> |
| 11 | + <dependent-module archiveName="cnlive_ks3-1.0-SNAPSHOT.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/cnlive_ks3/cnlive_ks3"> | |
| 12 | + <dependency-type>uses</dependency-type> | |
| 13 | + </dependent-module> | |
| 14 | + <dependent-module archiveName="smart-framework-4.0.1.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/smart-framework/smart-framework"> | |
| 15 | + <dependency-type>uses</dependency-type> | |
| 16 | + </dependent-module> | |
| 17 | + <dependent-module archiveName="smart-plugin-job-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/smart-plugin-job/smart-plugin-job"> | |
| 18 | + <dependency-type>uses</dependency-type> | |
| 19 | + </dependent-module> | |
| 11 | 20 | <dependent-module archiveName="smart-plugin-dbcp-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/smart-plugin-dbcp/smart-plugin-dbcp"> |
| 12 | 21 | <dependency-type>uses</dependency-type> |
| 13 | 22 | </dependent-module> | ... | ... |
src/main/java/com/cnlive/mz/live/action/VideoAction.java
| ... | ... | @@ -18,6 +18,8 @@ import org.smart4j.framework.mvc.bean.View; |
| 18 | 18 | import org.smart4j.framework.util.CastUtil; |
| 19 | 19 | |
| 20 | 20 | import com.cnlive.mz.commons.CnliveUtil; |
| 21 | +import com.cnlive.mz.commons.sensitive.FilteredResult; | |
| 22 | +import com.cnlive.mz.commons.sensitive.WordFilterUtil; | |
| 21 | 23 | import com.cnlive.mz.live.common.Constants; |
| 22 | 24 | import com.cnlive.mz.live.common.LiveUtils; |
| 23 | 25 | import com.cnlive.mz.live.entity.TLive; |
| ... | ... | @@ -70,13 +72,18 @@ public class VideoAction { |
| 70 | 72 | if (title.length() > 50) { |
| 71 | 73 | title = title.substring(0, 50); |
| 72 | 74 | } |
| 73 | - String direct = params.getString("direct"); | |
| 74 | 75 | String description = params.getString("description"); |
| 76 | + FilteredResult resTitle = WordFilterUtil.filterHtml(title, '*'); | |
| 77 | + title=resTitle.getFilteredContent().toString(); | |
| 78 | + FilteredResult resDescr= WordFilterUtil.filterHtml(description, '*'); | |
| 79 | + description=resDescr.getFilteredContent().toString(); | |
| 80 | + | |
| 81 | + String direct = params.getString("direct"); | |
| 75 | 82 | String custom_args = params.getString("custom_args"); |
| 76 | 83 | String md5 = params.getString("md5"); |
| 77 | 84 | String relation_id = params.getString("relation_id"); |
| 78 | 85 | String uuid = ""; |
| 79 | - boolean success=true; | |
| 86 | + boolean success = true; | |
| 80 | 87 | if (video_type.equals("2")) { |
| 81 | 88 | // 2:sdk上传录播文件 |
| 82 | 89 | TVideo tVideo = new TVideo(); |
| ... | ... | @@ -108,14 +115,14 @@ public class VideoAction { |
| 108 | 115 | tLive.setDirect(Integer.parseInt(direct)); |
| 109 | 116 | } |
| 110 | 117 | tLive.setLive_url(Constants.KS_HOST_RTMP + tLive.getT_user_id() + "_" + uuid); |
| 111 | - success=tLiveService.startLive(tLive); | |
| 118 | + success = tLiveService.startLive(tLive); | |
| 112 | 119 | } |
| 113 | 120 | data.put("video_uuid", uuid); |
| 114 | 121 | ApiBean apiBean = new ApiBean(); |
| 115 | 122 | if (success) { |
| 116 | 123 | apiBean.setCode(100); |
| 117 | 124 | apiBean.setMessage("请求成功"); |
| 118 | - }else{ | |
| 125 | + } else { | |
| 119 | 126 | apiBean.setCode(201); |
| 120 | 127 | apiBean.setMessage("发起直播失败"); |
| 121 | 128 | } |
| ... | ... | @@ -161,10 +168,10 @@ public class VideoAction { |
| 161 | 168 | @Request.Get("/video/view/{id}") |
| 162 | 169 | public View view(int id) { |
| 163 | 170 | TVideo tVideo = tVideoService.getVideoById(id); |
| 164 | - System.out.println("------"+tVideo); | |
| 171 | + System.out.println("------" + tVideo); | |
| 165 | 172 | return new View("live/video_view.jsp").data("tVideo", tVideo); |
| 166 | 173 | } |
| 167 | - | |
| 174 | + | |
| 168 | 175 | @Request.Post("/api/video/one") |
| 169 | 176 | public ApiBean one(Params params) { |
| 170 | 177 | String app_access_key = params.getString("app_access_key"); |
| ... | ... | @@ -190,7 +197,7 @@ public class VideoAction { |
| 190 | 197 | tVideoService.notify(video_uuid); |
| 191 | 198 | } else if (video_type.equals("3")) { |
| 192 | 199 | // 直播通知 |
| 193 | - //tLiveService.notify(video_uuid); | |
| 200 | + // tLiveService.notify(video_uuid); | |
| 194 | 201 | // 直播正常结束 |
| 195 | 202 | tLiveService.notify(video_uuid, 2); |
| 196 | 203 | } |
| ... | ... | @@ -231,8 +238,9 @@ public class VideoAction { |
| 231 | 238 | } |
| 232 | 239 | log.info(sb.toString()); |
| 233 | 240 | } |
| 241 | + | |
| 234 | 242 | @Request.Post("/video/unline") |
| 235 | - public Result underLine(Params params){ | |
| 243 | + public Result underLine(Params params) { | |
| 236 | 244 | int id = params.getInt("id"); |
| 237 | 245 | tVideoService.underLine(id); |
| 238 | 246 | return null; | ... | ... |
src/main/java/com/cnlive/mz/live/action/WordAction.java
0 → 100644
| 1 | +package com.cnlive.mz.live.action; | |
| 2 | + | |
| 3 | +import java.util.List; | |
| 4 | +import java.util.Map; | |
| 5 | +import java.util.Map.Entry; | |
| 6 | + | |
| 7 | +import org.smart4j.framework.ioc.annotation.Inject; | |
| 8 | +import org.smart4j.framework.mvc.annotation.Action; | |
| 9 | +import org.smart4j.framework.mvc.annotation.Request; | |
| 10 | +import org.smart4j.framework.mvc.bean.Params; | |
| 11 | +import org.smart4j.framework.mvc.bean.Result; | |
| 12 | +import org.smart4j.framework.mvc.bean.View; | |
| 13 | + | |
| 14 | +import com.cnlive.mz.live.entity.TRoom; | |
| 15 | +import com.cnlive.mz.live.service.SensitiveWordService; | |
| 16 | + | |
| 17 | +@Action | |
| 18 | +public class WordAction { | |
| 19 | + | |
| 20 | + @Inject | |
| 21 | + private SensitiveWordService sensitiveWord; | |
| 22 | + | |
| 23 | + @Request.Post("/word/add") | |
| 24 | + public Result add(Params params){ | |
| 25 | + Map map = params.getFieldMap(); | |
| 26 | + String str = (String) map.get("words"); | |
| 27 | + str=str.replace(",", ",3."); | |
| 28 | + str=str+",3."; | |
| 29 | + return new Result(sensitiveWord.add(str)); | |
| 30 | + } | |
| 31 | + | |
| 32 | + @Request.Get("/word/list") | |
| 33 | + public View list(){ | |
| 34 | + View view = new View("word/word_management.jsp"); | |
| 35 | + List<String> str = sensitiveWord.list(); | |
| 36 | + view.data("str", str); | |
| 37 | + return view; | |
| 38 | + } | |
| 39 | +} | ... | ... |
src/main/webapp/pages/common/left.jsp
src/main/webapp/pages/word/word_add.jsp
0 → 100644
| 1 | +<%@ page language="java" pageEncoding="UTF-8"%> | |
| 2 | +<%@ include file="/pages/common/taglib.jsp"%> | |
| 3 | +<!DOCTYPE html> | |
| 4 | +<html> | |
| 5 | +<head> | |
| 6 | +<meta charset="UTF-8"> | |
| 7 | +<title>添加敏感词 | <f:message key="common.title" /></title> | |
| 8 | +<meta | |
| 9 | + content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' | |
| 10 | + name='viewport'> | |
| 11 | +<%@ include file="/pages/common/css.jsp"%> | |
| 12 | +<link href="${BASE}/static/assets/plugins/uploadfile/css/fileinput.css" | |
| 13 | + media="all" rel="stylesheet" type="text/css" /> | |
| 14 | +<!--[if IE]> | |
| 15 | + <script src="http://libs.useso.com/js/html5shiv/3.7/html5shiv.min.js"></script> | |
| 16 | + <![endif]--> | |
| 17 | +</head> | |
| 18 | +<body class="skin-blue sidebar-mini"> | |
| 19 | + <div class="wrapper"> | |
| 20 | + <%@ include file="/pages/common/top.jsp"%> | |
| 21 | + <%@ include file="/pages/common/left.jsp"%> | |
| 22 | + <div class="content-wrapper"> | |
| 23 | + <!-- Content Header (Page header) --> | |
| 24 | + <section class="content-header"> | |
| 25 | + <h1> | |
| 26 | + <small>添加敏感词</small> <small | |
| 27 | + class="label label-warning" style="display: none" | |
| 28 | + id="info_tab_span"><i class="fa fa-bell-o"></i>保存成功</small> | |
| 29 | + </h1> | |
| 30 | + <ol class="breadcrumb"> | |
| 31 | + <li><a><i class="fa fa-dashboard"></i> 首页</a></li> | |
| 32 | + <li class="active">添加敏感词</li> | |
| 33 | + </ol> | |
| 34 | + </section> | |
| 35 | + <!-- Main content --> | |
| 36 | + <section class="content"> | |
| 37 | + <div class="row"> | |
| 38 | + <div class="col-md-12"> | |
| 39 | + <form id="create_form" method="post"> | |
| 40 | + <div class="box box-success"> | |
| 41 | + <div class="box-body"> | |
| 42 | + <div class="form-group"> | |
| 43 | + <label>请输入关键词 </label> | |
| 44 | + <div class="input-group"> | |
| 45 | + <span class="input-group-addon"><i class="fa fa-font"></i> | |
| 46 | + </span> <textarea id="words" name="words" class="form-control" rows="3" placeholder="北京,上海,天津"></textarea> | |
| 47 | + </div> | |
| 48 | + </div> | |
| 49 | + </div> | |
| 50 | + <button type="submit" id="t_channel_save_btn" | |
| 51 | + class="btn btn-primary"> | |
| 52 | + <i class="fa fa-save "></i> 保存 | |
| 53 | + </button> | |
| 54 | + </form> | |
| 55 | + </div> | |
| 56 | + </div> | |
| 57 | + </section> | |
| 58 | + </div> | |
| 59 | + <%@ include file="/pages/common/bottom.jsp"%> | |
| 60 | + </div> | |
| 61 | + <%@ include file="/pages/common/js.jsp"%> | |
| 62 | + <script type="text/javascript"> | |
| 63 | + $(function() { | |
| 64 | + $('#create_form').ajaxForm({ | |
| 65 | + type : 'post', | |
| 66 | + url : '../../word/add', | |
| 67 | + beforeSubmit : function() { | |
| 68 | + return true; | |
| 69 | + }, | |
| 70 | + error : function(XMLHttpRequest, textStatus, errorThrown) { | |
| 71 | + alert("错误"); | |
| 72 | + }, | |
| 73 | + success : function(result) { | |
| 74 | + alert("添加成功"); | |
| 75 | + location.href = '../../word/list'; | |
| 76 | + } | |
| 77 | + }); | |
| 78 | + }); | |
| 79 | + | |
| 80 | + </script> | |
| 81 | +</body> | |
| 82 | +</html> | ... | ... |
src/main/webapp/pages/word/word_management.jsp
0 → 100644
| 1 | +<%@ page language="java" pageEncoding="UTF-8"%> | |
| 2 | +<%@ include file="/pages/common/taglib.jsp"%> | |
| 3 | +<!DOCTYPE html> | |
| 4 | +<html> | |
| 5 | +<head> | |
| 6 | +<meta charset="UTF-8"> | |
| 7 | +<title>所有关键词 | <f:message key="common.title" /></title> | |
| 8 | +<meta | |
| 9 | + content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' | |
| 10 | + name='viewport'> | |
| 11 | +<%@ include file="/pages/common/css.jsp"%> | |
| 12 | +<link href="${BASE}/static/assets/plugins/uploadfile/css/fileinput.css" | |
| 13 | + media="all" rel="stylesheet" type="text/css" /> | |
| 14 | +<!--[if IE]> | |
| 15 | + <script src="http://libs.useso.com/js/html5shiv/3.7/html5shiv.min.js"></script> | |
| 16 | + <![endif]--> | |
| 17 | +</head> | |
| 18 | +<body class="skin-blue sidebar-mini"> | |
| 19 | + <div class="wrapper"> | |
| 20 | + <%@ include file="/pages/common/top.jsp"%> | |
| 21 | + <%@ include file="/pages/common/left.jsp"%> | |
| 22 | + <div class="content-wrapper"> | |
| 23 | + <!-- Content Header (Page header) --> | |
| 24 | + <section class="content-header"> | |
| 25 | + <h1> | |
| 26 | + 所有关键词 <small><a href="../pages/word/word_add.jsp"><i | |
| 27 | + class="fa fa-plus"></i>新增</a> </small><small class="label label-warning" style="display: none" | |
| 28 | + id="info_tab_span"><i class="fa fa-bell-o"></i>保存成功</small> | |
| 29 | + </h1> | |
| 30 | + <ol class="breadcrumb"> | |
| 31 | + <li><a><i class="fa fa-dashboard"></i> 首页</a></li> | |
| 32 | + <li class="active">所有关键词</li> | |
| 33 | + </ol> | |
| 34 | + </section> | |
| 35 | + <!-- Main content --> | |
| 36 | + <section class="content"> | |
| 37 | + <div class="row"> | |
| 38 | + <div class="col-md-12"> | |
| 39 | + <div class="box box-success"> | |
| 40 | + <div class="box-body"> | |
| 41 | + <div class="form-group"> | |
| 42 | + <table class="table table-bordered"> | |
| 43 | + <tr> | |
| 44 | + <!-- <th>过滤</th>--> | |
| 45 | + </tr> | |
| 46 | + <c:forEach var="str" items="${str}" | |
| 47 | + varStatus="stat"> | |
| 48 | + <tr> | |
| 49 | + <td>${str}</td> | |
| 50 | + </tr> | |
| 51 | + </c:forEach> | |
| 52 | + </table> | |
| 53 | + </div> | |
| 54 | + </div> | |
| 55 | + </div> | |
| 56 | + </div> | |
| 57 | + </section> | |
| 58 | + </div> | |
| 59 | + <%@ include file="/pages/common/bottom.jsp"%> | |
| 60 | + </div> | |
| 61 | +</body> | |
| 62 | +</html> | ... | ... |
target/m2e-wtp/web-resources/META-INF/maven/com.cnlive.mz.live.web/cnlive_live_web/pom.properties
| 1 | 1 | #Generated by Maven Integration for Eclipse |
| 2 | -#Thu Jun 23 09:20:00 CST 2016 | |
| 2 | +#Mon Jun 27 14:02:38 CST 2016 | |
| 3 | 3 | version=0.0.1-SNAPSHOT |
| 4 | 4 | groupId=com.cnlive.mz.live.web |
| 5 | 5 | m2e.projectName=cnlive_live_web |
| 6 | 6 | m2e.projectLocation=D\:\\1_CNLIVE_JAVA_CODE\\cnlive_live_web |
| 7 | 7 | artifactId=cnlive_live_web |
| 8 | -#Generated by Maven Integration for Eclipse | |
| 9 | -#Tue Jun 21 13:17:57 CST 2016 | |
| 10 | -version=0.0.1-SNAPSHOT | |
| 11 | -groupId=com.cnlive.mz.live.web | |
| 12 | -m2e.projectName=cnlive_live_web | |
| 13 | -m2e.projectLocation=D\:\\1_CNLIVE_JAVA_CODE\\cnlive_live_web | |
| 14 | -artifactId=cnlive_live_web | |
| 15 | -#Generated by Maven Integration for Eclipse | |
| 16 | -#Mon Jun 20 09:31:18 CST 2016 | |
| 17 | -#Mon Jun 20 10:10:00 CST 2016 | |
| 18 | -#Fri Jun 17 09:20:43 CST 2016 | |
| 19 | -version=0.0.1-SNAPSHOT | |
| 20 | -groupId=com.cnlive.mz.live.web | |
| 21 | -m2e.projectName=cnlive_live_web | |
| 22 | -m2e.projectLocation=C\:\\Users\\Administrator\\git\\cnlive_live_web | |
| 23 | -artifactId=cnlive_live_web | |
| 24 | 8 | \ No newline at end of file | ... | ... |