From 020de0321c90e72f5b8492436cc235b763576795 Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Mon, 6 Jan 2020 16:39:13 +0800 Subject: [PATCH 01/19] 1 --- Gemfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Gemfile b/Gemfile index 55478816f..3bfe246a4 100644 --- a/Gemfile +++ b/Gemfile @@ -106,3 +106,6 @@ gem 'omniauth-oauth2', '~> 1.6.0' # global var gem 'request_store' + +# 敏感词汇 +gem 'harmonious_dictionary', '~> 0.0.1' From e4df8221de24e7aded83b48d0388333cd867698f Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Mon, 6 Jan 2020 16:56:25 +0800 Subject: [PATCH 02/19] 1 --- app/models/user.rb | 1 + .../chinese_dictionary.txt | 1511 +++++++++++++++++ .../english_dictionary.txt | 66 + config/harmonious_dictionary/harmonious.hash | Bin 0 -> 48913 bytes .../harmonious_english.yml | 67 + 5 files changed, 1645 insertions(+) create mode 100644 config/harmonious_dictionary/chinese_dictionary.txt create mode 100644 config/harmonious_dictionary/english_dictionary.txt create mode 100644 config/harmonious_dictionary/harmonious.hash create mode 100644 config/harmonious_dictionary/harmonious_english.yml diff --git a/app/models/user.rb b/app/models/user.rb index a9b2f0b3a..54881cd2a 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -174,6 +174,7 @@ class User < ApplicationRecord validates_uniqueness_of :phone, :if => Proc.new { |user| user.phone_changed? && user.phone.present? }, case_sensitive: false validates_length_of :login, maximum: LOGIN_LENGTH_LIMIT validates_length_of :mail, maximum: MAIL_LENGTH_LMIT + validate_harmonious_of [:lastname, :nickname] # validates_format_of :mail, with: VALID_EMAIL_REGEX, multiline: true # validates_format_of :phone, with: VALID_PHONE_REGEX, multiline: true validate :validate_password_length diff --git a/config/harmonious_dictionary/chinese_dictionary.txt b/config/harmonious_dictionary/chinese_dictionary.txt new file mode 100644 index 000000000..3040d9d0e --- /dev/null +++ b/config/harmonious_dictionary/chinese_dictionary.txt @@ -0,0 +1,1511 @@ +习近平 +习仲勋 +贺国强 +贺子珍 +周永康 +李德生 +王岐山 +姚依林 +回良玉 +李源潮 +李干成 +戴秉国 +黄镇 +刘延东 +刘瑞龙 +俞正声 +黄敬 +薄熙来 +薄一波 +周小川 +周建南 +温云松 +徐明 +江绵康 +李小鹏 +李小琳 +朱云来 +让国人愤怒的第二代身份证 +第二代身份证 +文化大革命 +胡海峰 +六四 +陈良宇 +老丁 +莱仕德事件 +fuck +地下的先烈们纷纷打来电话询问 +大纪元 +新唐人 +淫靡 +六四事件 +迷昏药 +迷魂药 +窃听器 +六合彩 +买卖枪支 +三唑仑 +麻醉药 +麻醉乙醚 +短信群发器 +帝国之梦 +毛一鲜 +黎阳平 +对日强硬 +出售枪支 +摇头丸 +西藏天葬 +军长发威 +PK黑社会 +枪决女犯 +投毒杀人 +强硬发言 +出售假币 +监听王 +昏药 +侦探设备 +麻醉钢枪 +反华 +官商勾结 +升达毕业证 +手机复制 +戴海静 +自杀指南 +自杀手册 +张小平 +佳静安定片 +蒙汗药粉 +古方迷香 +强效失意药 +迷奸药 +透视眼镜 +远程偷拍 +自制手枪 +激情小电影 +黄色小电影 +天鹅之旅 +盘古乐队 +高校暴乱 +高校群体事件 +大学骚乱 +高校骚乱 +催情药 +拍肩神药 +春药 +身份证生成器 +枪决现场 +出售手枪 +麻醉枪 +办理证件 +办理文凭 +高干子弟 +高干子女 +枪支弹药 +血腥图片 +反政府 +禁书 +特码 +成人 +国民党 +贪污 +骚妇 +法论功 +江湖淫娘 +骆冰淫传 +夫妇乐园 +阿里布达年代记 +爱神之传奇 +不良少女日记 +沧澜曲 +创世之子猎艳之旅 +东北风情熟女之惑 +风骚侍女 +海盗的悠闲生活 +黑天使 +黑星女侠 +混蛋神风流史 +狡猾的风水相师 +俪影蝎心 +秦青的幸福生活 +四海龙女 +逃亡艳旅 +性启蒙 +现代艳帝传奇 +星光伴我淫 +倚天屠龙别记 +淫术炼金士 +十景缎 +往事追忆录 +舌战法庭 +少妇白洁 +风月大陆 +风尘劫 +美少妇的哀羞 +阿兵哥言语录 +遥想当年春衫薄 +王子淫传 +神雕外传之郭襄 +睡着的武神 +少年阿宾 +毛主席复活 +蒙汗药 +粗口歌 +激情电影 +AV +十八禁 +性虐待 +激情 +耽美 +金瓶梅 +藏春阁 +玉蒲团 +隐形喷剂 +反雷达测速 +假币 +代开发票 +假钞 +窃听 +电话拦截系统 +探测狗 +手机卡复制器 +手机跟踪定位器 +监听器 +针孔摄像 +监听宝 +迷幻药 +手拍肩 +迷魂香 +麻古 +政治风波 +政府软弱 +政府无能 +九评 +十七大代表 +办证 +暴力拆迁 +轮暴致死 +人民报 +暴力镇压 +高干子弟名单 +性免费电影 +全裸 +偷 拍 +中共十七大 +徐和柴学友 +修炼之歌 +警察殴打 +新诗年鉴 +李沛瑶遇害 +美国凯德 +肥东交警 +中央军委 +针对台湾 +梁保华 +MC军团 +旧民运 +伪民运 +采花堂 +中国劳工通讯 +评中国共产党 +建立生活性补贴 +中共走狗 +中共小丑 +共奴 +中共恶霸 +共产无赖 +右派 +流氓政府 +原子弹制作简明教程 +绝食抗议 +北戴河会议 +邓二世 +内斗退党 +退团 +江理论 +香港六合彩 +A集中营 +退党 +法新闻社 +欧洲圆明网 +亚太正悟网 +大法新闻社 +白宫事件 +日本大使馆0R409游行 +反日万人游行 +六四屠杀 +六四屠城 +六四政变 +六四之役 +27军长砸洗浴中心 +中共邪教 +调查真相委员会 +追查国际 +中共暴行 +大法洪传 +弘法体 +大法之声 +江独裁 +李屠夫 +江恶人 +中共特务 +乙醚 +党内分裂 +新生网 +圆明网 +和平修炼 +放下生死 +大法大福 +大硞弟子 +支联会 +共产专制 +共产极权 +专政机器 +共产王朝 +毛派 +法网恢恢 +邓派 +五套功法 +宇宙最高法理 +谁是新中国 +法正人间 +法正乾坤 +正法时期 +海外护法 +洪发交流 +报禁 +党禁 +鹰派 +赣江学院暴动 +全国退党 +绝食抗暴 +维权抗暴 +活体器官 +中共暴政 +器官移植 +中共当局 +胡温政府 +江罗集团 +师傅法身 +正派民运 +中华联邦政府 +亲共行动 +联邦政府 +流氓民运 +特务民运 +中共警察 +中共监狱 +中共政权 +中共迫害 +自由联邦 +中共独枭 +流氓无产者 +中共专制 +明慧周刊 +九评共产党 +江泽民其人 +秘密文件 +机密文件 +红头文件 +政府文件 +破网软件 +无界浏览 +亲共来源 +黄色小说 +台湾18DY电影 +H动漫 +tmd +nnd +包娃衣 +禁播 +H漫画 +丁度巴拉斯 +大禁 +买春堂 +苏东解体 +反右题材 +隐私图片 +卫星接收器 +卫星电视 +信号拦截器 +新闻通气会 +山西洪洞 +巨额骗储 +五奶小青 +红楼绮梦 +阿里布达年代 +不良少少日记 +狂风暴雨 +梦中的女孩 +首先使用核武器 +汽车爆炸案 +香港GHB水 +色空寺 +周容重 +朱蒙 +汕頭頻傳擄童割器官 +法輪功 +六决不 +清华网管 +道县公安 +济南建设路 +老虎机 +轮盘机 +百家乐 +连线机 +模拟机 +彩票机 +礼品机 +卢跃刚 +玫瑰园 +天浴 +一卡多号 +最淫官员 +偷电 +盗电 +中国人都在上的四大当 +总统的讲话 +痛批政法委 +山西黑砖窑 +黑窑奴役 +杨元元 +敢坐飞机吗 +韩国身份证 +台湾身份证 +广电总局 +学生暴动 +镇压学生 +广安第二人民医院 +山不过来 +胡新宇 +趙紫陽 +自由亚州 +明慧 +践踏中国女性 +拉凳 +南京大学法学院 +挥发型迷药 +喷雾型迷药 +金伯帆 +崔英杰 +松花江污染 +火药制作 +江氏 +第十六次代表 +仁寿警方 +愈快乐愈堕落 +上海交警 +最牛钉子户 +淫间道 +唐人电视台 +嫩穴 +金鳞岂是池中物 +江山美人志 +六合采 +民警当副院长 +股市民谣 +禁断少女 +卫星遭黑客攻击 +萬人暴 +官逼民反 +中原油田 +张大权 +油田总部 +枪淫少妇 +博白县 +動乱 +军火价格 +女死囚 +劉奇葆 +法lun功 +女友坊 +香港马会 +白小姐 +曾道人 +一码中特 +自由门 +艳照门 +奴役童工 +性奴 +计生风暴 +厦门大游行 +想不到的黑幕 +死亡笔记 +二奶 +2奶 +纪股票市场五卅惨案 +这年头就这样 +代开普通发票 +代开商品发票 +代开国税发票 +代开地税发票 +代开广告发票 +代开运输发票 +代开租赁发票 +代开维修发票 +代开建筑发票 +代开安装发票 +代开餐饮发票 +代开服务发票 +毛爷爷复活 +智能H3 +智能H3 +赣江学院 +江西田园置业集团 +海乐神 +酣乐欣 +高莺莺 +完全自杀手册 +无界 +广东王 +口头检查 +三句硬话 +红海湾 +升达 +沈阳公安 +拦截器 +阻无通畅 +民为法执 +尾行 +电车之狼 +绕过封锁 +本拉登 +汕尾事件 +公务员工资 +公务员调资 +鸡吧 +公务员的工资 +反中游行 +支持台湾 +双鞋的故事 +中国军用运输机 +科技精英遇难 +湘阴杨林 +杨林寨 +湘阴县杨林 +死刑枪毙 +马加爵 +死刑过程 +学生与警察 +鬼村 +周容 +重题工 +先烈的电电 +身份证生成 +短信猫 +车牌反光 +次下跪 +求救遭拒 +邪恶的党 +出售迷药 +针孔摄像机 +日本小泉 +小泉恶搞 +温家堡 +蒋彦永 +灭绝罪 +大揭露 +突破封锁 +多党执政 +生成身份证 +华国锋 +叶剑英 +陈云 +李先念 +汪东兴 +韦国清 +乌兰夫 +方毅 +刘伯承 +许世友 +纪登奎 +苏振华 +吴德 +余秋里 +张廷发 +陈永贵 +陈锡联 +耿飚 +聂荣臻 +倪志福 +徐向前 +彭冲 +王震 +邓颖超 +杨尚昆 +杨得志 +宋任穷 +胡乔木 +胡耀邦 +彭真 +廖承志 +秦基伟 +陈慕华 +田纪云 +李铁映 +李锡铭 +杨汝岱 +吴学谦 +胡启立 +芮杏文 +杨白冰 +邹家华 +谢非 +谭绍文 +王汉斌 +任建新 +于永波 +傅全有 +吴仪 +王克 +王乐泉 +王兆国 +刘淇 +刘云山 +张立昌 +张德江 +王刚 +隐形耳机 +隐形摄像头 +裸聊 +代考 +英语枪手 +仿真枪 +考试作弊器 +开锁器 +淫秽 +定位器 +上分器 +干扰器 +退币王 +k粉 +诈骗信息 +销售枪支 +爆炸物品 +性器官 +风骚小阿姨 +非常诱惑 +风月宝鉴之冥府春色 +风流一夜情 +飞凤春宵 +风情万种野玫瑰 +夫妻作爱 +夫妻做爱 +三级片 +应召女郎 +性生活 +香醇的诱惑 +处男 +性爱 +奸杀 +血溅红灯区 +雪肌夜叉 +血恋 +现代靓妹仔 +新七擒七纵七色狼 +骚b +三级图片 +淫乱 +a级情片 +淫乱秘史 +艳丽片 +香港伦理片 +淫色漫画 +淫片 +叫春 +中国性搜网 +性息 +淫虫 +艳舞女郎 +禁宮秘史 +少女换衣 +偷欢 +18dy +保钓 +鲍戈 +鲍彤 +暴乱 +暴政 +北韩 +藏独 +曹长青 +曹刚川 +柴玲 +常劲 +陈炳基 +陈军 +陈蒙 +陈破空 +陈希同 +陈小同 +陈宣良 +陈一谘 +陈总统 +程铁军 +程真 +迟浩田 +持不同政见 +赤匪 +赤化 +达赖 +大参考 +大法 +大纪园 +大家论坛 +大史记 +大史纪 +戴相龙 +弹劾 +登辉 +邓笑贫 +迪里夏提 +地下教会 +地下刊物 +电视流氓 +钓鱼岛 +丁关根 +丁元 +丁子霖 +东北独立 +东社 +东土耳其斯坦 +东西南北论坛 +动乱 +独裁 +独裁政治 +独夫 +独立台湾会 +屙民 +发轮 +发正念 +法愣 +法抡 +法仑 +法伦 +法轮 +法论 +反封锁技术 +反腐败论坛 +反共 +李洪志 +法轮功 +江泽民 +毛泽东 +邓小平 +胡锦涛 +推翻 +打倒 +台独 +轮功 +李红痔 +李宏志 +真善忍 +炼功 +李总统 +李登辉 +李鹏 +李瑞环 +吐血 +18禁 +少儿不宜 +女优 +脱光 +咪咪 +兽欲 +奶子 +酥胸 +处女 +迷药 +强迫 +色情 +三級 +三级 +A片 +喷精 +偷窥 +被虐 +黄色 +被迫 +被逼 +强暴 +口技 +破处 +精液 +幼交 +狂干 +兽交 +群交 +阴部 +幼幼 +女優 +强歼 +乱交 +色友 +婊子 +蒲团 +喷尿 +凌辱 +暴干 +阴唇 +插插 +坐交 +学生妹 +无毛 +猛插 +慰安妇 +露点 +露毛 +行房 +自慰 +吹萧 +色狼 +胸罩 +内裤 +底裤 +私处 +爽死 +变态 +妹疼 +妹痛 +弟疼 +弟痛 +姐疼 +姐痛 +哥疼 +哥痛 +同房 +打炮 +造爱 +作爱 +做爱 +鸡巴 +阴茎 +阳具 +开苞 +肛门 +阴道 +阴蒂 +肉棍 +肉棒 +肉洞 +荡妇 +阴囊 +睾丸 +捅你 +捅我 +插我 +插你 +插她 +插他 +干你 +干她 +干他 +射精 +口交 +屁眼 +阴户 +阴门 +下体 +龟头 +阴毛 +波霸 +偷情 +叫床 +上床 +亚热 +援交 +走光 +情色 +肉欲 +美腿 +自摸 +捆绑 +丝袜 +潮吹 +肛交 +群射 +内射 +臭作 +薄格 +調教 +乱伦 +偷拍 +更衣 +無修正 +虐待 +尿尿 +喷水 +小泽玛莉亚 +武腾兰 +武藤兰 +饭岛爱 +小泽圆 +長瀨愛 +川島和津實 +粉嫩的小沟 +小澤園 +飯島愛 +星崎未來 +及川奈央 +朝河蘭 +夕樹舞子 +大澤惠 +金澤文子 +三浦愛佳 +伊東 +武藤蘭 +叶子楣 +舒淇 +麻衣 +櫻井 +風花 +星野桃 +宝来 +桜田 +藤井彩 +小森美王 +平井 +桃井望 +榊彩弥 +桜井 +中条美華 +大久保玲 +青木友梨 +深田涼子 +愛内萌 +姫島瑠璃香 +長瀬愛 +中野千夏 +春菜 +望月 +岡崎美女 +宮下杏奈 +加藤 +日野美沙 +北島優 +一本道 +夜勤病栋 +三个代表 +一党 +多党 +民主 +专政 +避孕套 +你妈逼 +大鸡巴 +政治 +洪志 +红志 +洪智 +红智 +民运 +王丹 +卖春 +买春 +天安门 +朱容基 +朱镕基 +温家宝 +李长春 +魏京生 +台湾独立 +西藏独立 +疆独 +新疆独立 +大盖帽 +黑社会 +夜总会 +妈个 +公款 +坐台 +腐败 +城管 +暴动 +李远哲 +司法警官 +高干 +尉健行 +李岚清 +黄丽满 +于幼军 +文字狱 +宋祖英 +自焚 +猫肉 +吸储 +张五常 +张丕林 +空难 +吴邦国 +曾庆红 +黄菊 +罗干 +吴官正 +贾庆林 +专制 +三個代表 +一黨 +多黨 +專政 +大紀元 +紅志 +紅智 +李鵬 +天安門 +江澤民 +朱鎔基 +李長春 +李瑞環 +胡錦濤 +貓肉 +吸儲 +張五常 +張丕林 +溫家寶 +吳邦國 +曾慶紅 +黃菊 +賈慶林 +專制 +反人类 +反社会 +方励之 +方舟子 +斐得勒 +费良勇 +分家在 +分裂 +粉饰太平 +风雨神州 +风雨神州论坛 +封从德 +冯东海 +冯素英 +佛展千手法 +付申奇 +傅申奇 +傅志寰 +高官 +高文谦 +高薪养廉 +高瞻 +高自联 +戈扬 +鸽派 +个人崇拜 +工自联 +共产 +共党 +共匪 +共狗 +共军 +关卓中 +贯通两极法 +广闻 +郭伯雄 +郭罗基 +郭平 +郭岩华 +国家安全 +国家机密 +国军 +国贼 +韩东方 +韩联潮 +何德普 +河殇 +红灯区 +红色恐怖 +宏法 +洪传 +洪吟 +洪哲胜 +胡紧掏 +胡锦滔 +胡锦淘 +胡景涛 +胡平 +胡总书记 +护法 +花花公子 +华建敏 +华通时事论坛 +华夏文摘 +华语世界论坛 +华岳时事论坛 +黄慈萍 +黄祸 +回民暴动 +悔过书 +鸡毛信文汇 +姬胜德 +积克馆 +基督 +贾廷安 +贾育台 +建国党 +江core +江八点 +江流氓 +江罗 +江绵恒 +江青 +江戏子 +江则民 +江泽慧 +江贼 +江贼民 +江折民 +江猪 +江主席 +姜春云 +将则民 +僵贼 +僵贼民 +教养院 +揭批书 +金尧如 +锦涛 +禁看 +经文 +开放杂志 +抗议 +邝锦文 +劳动教养所 +劳改 +劳教 +老江 +老毛 +黎安友 +李洪宽 +李继耐 +李兰菊 +李录 +李禄 +李少民 +李淑娴 +李旺阳 +李文斌 +李月月鸟 +李志绥 +连胜德 +廉政大论坛 +梁光烈 +梁擎墩 +两岸关系 +两岸三地论坛 +两个中国 +廖锡龙 +林保华 +林长盛 +林樵清 +林慎立 +凌锋 +刘宾深 +刘宾雁 +刘刚 +刘国凯 +刘华清 +刘俊国 +刘凯中 +刘千石 +刘青 +刘山青 +刘士贤 +刘文胜 +刘晓波 +刘晓竹 +刘永川 +龙虎豹 +陆委会 +吕京花 +吕秀莲 +抡功 +轮大 +罗礼诗 +马大维 +马良骏 +马三家 +马时敏 +卖国 +毛厕洞 +毛贼东 +美国参考 +美国之音 +蒙独 +蒙古独立 +密穴 +绵恒 +民国 +民进党 +民联 +民意 +民意论坛 +民阵 +民猪 +民主墙 +民族矛盾 +莫伟强 +木犀地 +木子论坛 +南大自由论坛 +闹事 +倪育贤 +潘国平 +泡沫经济 +迫害 +祁建 +齐墨 +钱达 +钱国梁 +钱其琛 +抢粮记 +乔石 +亲美 +钦本立 +情妇 +庆红 +热比娅 +热站政论网 +人民内情真相 +人民真实 +人民之声论坛 +人权 +善恶有报 +上海帮 +邵家健 +神通加持法 +沈彤 +升天 +盛华仁 +盛雪 +石戈 +时代论坛 +时事论坛 +世界经济导报 +事实独立 +双十节 +水扁 +税力 +司马晋 +司马璐 +司徒华 +斯诺 +四川独立 +宋平 +宋书元 +苏绍智 +苏晓康 +台盟 +台湾狗 +台湾建国运动组织 +台湾青年独立联盟 +台湾政论区 +台湾自由联盟 +太子党 +汤光中 +唐柏桥 +唐捷 +滕文生 +天怒 +天葬 +童屹 +统独 +统独论坛 +统战 +屠杀 +外交与方略 +万润南 +万晓东 +汪岷 +王宝森 +王炳章 +王策 +王超华 +王辅臣 +王涵万 +王沪宁 +王军涛 +王力雄 +王瑞林 +王润生 +王若望 +王希哲 +王秀丽 +王冶坪 +网特 +魏新生 +温元凯 +文革 +无界浏览器 +吴百益 +吴方城 +吴弘达 +吴宏达 +吴仁华 +吴学灿 +吴学璨 +吾尔开希 +五不 +伍凡 +洗脑 +项怀诚 +项小吉 +肖强 +邪恶 +谢长廷 +谢选骏 +谢中之 +辛灏年 +新观察论坛 +新华内情 +新闻封锁 +新语丝 +信用危机 +邢铮 +熊炎 +熊焱 +徐邦秦 +徐才厚 +徐匡迪 +徐水良 +许家屯 +薛伟 +学潮 +学联 +学运 +学自联 +雪山狮子 +严家其 +严家祺 +阎明复 +颜射 +央视内部晚会 +杨怀安 +杨建利 +杨巍 +杨月清 +杨周 +姚月谦 +一中一台 +义解 +亦凡 +异见人士 +异议人士 +易丹轩 +易志熹 +尹庆民 +由喜贵 +游行 +幼齿 +于大海 +于浩成 +余英时 +舆论反制 +宇明网 +远志明 +岳武 +则民 +择民 +泽民 +贼民 +曾培炎 +张伯笠 +张钢 +张宏堡 +张健 +张林 +张万年 +张伟国 +张昭富 +张志清 +赵海青 +赵南 +赵品潞 +赵晓微 +赵紫阳 +哲民 +镇压 +争鸣论坛 +正见网 +郑义 +正义党论坛 +换妻 +真木加美 +超爽 +毛片 +打手枪 +欲望 +脚交 +伦理 +艳星 +三陪 +绝色 +床上功夫 +強暴 +陈冠希 +艳照 +喷射 +铃木麻奈美 +星崎未来 +东京热 +菅野亚梨沙 +吉岡美穗 +红音 +原千寻 +熟女 +轮奸 +朱琳 +朱毛 +朱溶剂 +猪聋畸 +猪毛 +猪毛1 +天安门录影带 +天安门事件 +天安门屠杀 +天安门一代 +自民党 +自由民主论坛 +走私 +淫穴 +幼女 +舆论 +fa轮 +亲日 +汉奸 +政权 +政治反对派 +政治犯 +支那 +指点江山论坛 +中俄边界 +中功 +中共 +中国威胁论 +中国问题论坛 +中国之春 +中国猪 +中华讲清 +中华民国 +钟山风雨论坛 +江ze民 +周锋锁 +周天法 +陈水扁 +周旋 +朱嘉明 +阿扁 +二逼 +小鸡鸡 +卖逼 +二B +强奸 +卖比 +日死你 +狗卵子 +我操你 +狗b +法功 +群奸 +狗操 +猪操 +干死你 +发骚 +贱人 +骚货 +狗娘 +反封锁 +烂逼 +包皮 +烂比 +狗屎 +妓女 +回民暴 +招妓 +牛逼 +鸡八 +牛比 +操你 +十八摸 +傻B +我操 +阴水 +傻逼 +氵去车仑工力 +操蛋 +喷你 +操逼 +淫水 +他妈 +操比 +杂种 +他母亲 +哈批 +靠你妈 +你妈 +大逼 +操你妈 +你娘 +大比 +妈批 +蒙古独 +你爸 +大b +四川独 +逼样 +台湾独 +性交 +精子 +龟公 +乳房 +贱逼 +性欲 +西藏独 +贱比 +你妈的 +新疆独 +干你娘 +他妈的 +我日 +去你妈的 +B样 +日你 +阝月 +奸淫 +上访 +淫荡 +操他 +瞒报 +大花逼 +烂货 +失密 +共产党 +破鞋 +贱货 +被盗 +舔奶 +成人书库 +淫图 +交媾 +护士 +自拍 +大片 +夫妻 +流血 +小穴 +少妇 +北京当局 +北京之春 +北美自由论坛 +博讯 +蔡崇国 +程凯 +大纪元新闻网 +大众真人真事 +东南西北论谈 +封杀 +何勇 +江猪媳 +酱猪媳 +枪支 +毒品 diff --git a/config/harmonious_dictionary/english_dictionary.txt b/config/harmonious_dictionary/english_dictionary.txt new file mode 100644 index 000000000..95ff180b2 --- /dev/null +++ b/config/harmonious_dictionary/english_dictionary.txt @@ -0,0 +1,66 @@ +6-4tianwang +89-64cdjp +ADMIN +Administrator +asshole +BLOWJOB +chinaliberal +chinamz +chinesenewsnet +Clockgemstone +creaders +Crestbone +dajiyuan +dfdz +DICK +falun +falundafa +Feelmistone +freechina +freenet +fuck +gcd +Gruepin +Guichuideng +HACKING +hongzhi +hrichina +HUANET +hypermart.net +incest +jiangdongriji +jiaochuang +jiaochun +KEFU +KISSMYASS +lihongzhi +minghui +minghuinews +nacb +Neckromancer +NMIS +PAPER64 +penis +qiangjian +renminbao +renmingbao +SHIT +SUCKPENIS +taip +tibetalk +triangle +triangleboy +Tringel +UltraSurf +ustibet +voachinese +wangce +WEBZEN +wstaiji +xinsheng +YUMING +zangdu +ZHENGJIAN +ZHENGJIANWANG +ZHENSHANREN +zhuanfalun \ No newline at end of file diff --git a/config/harmonious_dictionary/harmonious.hash b/config/harmonious_dictionary/harmonious.hash new file mode 100644 index 0000000000000000000000000000000000000000..9ce3b2f93690dda331a3df2e4e06990a362ffef1 GIT binary patch literal 48913 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 d-aD^u0tP<1x41-TR Date: Tue, 7 Jan 2020 09:43:42 +0800 Subject: [PATCH 03/19] =?UTF-8?q?=E6=95=8F=E6=84=9F=E8=AF=8D=E6=B1=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/course.rb | 2 ++ app/models/course_list.rb | 2 ++ app/models/discuss.rb | 2 ++ app/models/memo.rb | 1 + 4 files changed, 7 insertions(+) diff --git a/app/models/course.rb b/app/models/course.rb index 2f561bba7..682f73958 100644 --- a/app/models/course.rb +++ b/app/models/course.rb @@ -81,6 +81,8 @@ class Course < ApplicationRecord # 老版的members弃用 现用course_members has_many :members + validate_harmonious_of [:name, :subject] + scope :hidden, ->(is_hidden = true) { where(is_hidden: is_hidden) } scope :ended, ->(is_end = true) { where(is_end: is_end) } scope :processing, -> { where(is_end: false) } diff --git a/app/models/course_list.rb b/app/models/course_list.rb index cd622f20a..84f18f0ef 100644 --- a/app/models/course_list.rb +++ b/app/models/course_list.rb @@ -6,4 +6,6 @@ class CourseList < ApplicationRecord has_many :gtask_banks has_many :gtopic_banks belongs_to :user + + validate_harmonious_of :name end diff --git a/app/models/discuss.rb b/app/models/discuss.rb index 4e6cd617c..b7238dcd1 100644 --- a/app/models/discuss.rb +++ b/app/models/discuss.rb @@ -11,6 +11,8 @@ class Discuss < ApplicationRecord belongs_to :dis, polymorphic: true belongs_to :challenge, optional: true + validate_harmonious_of :content + after_create :send_tiding scope :children, -> (discuss_id){ where(parent_id: discuss_id).includes(:user).reorder(created_at: :asc) } diff --git a/app/models/memo.rb b/app/models/memo.rb index d09251358..1b2be5476 100644 --- a/app/models/memo.rb +++ b/app/models/memo.rb @@ -16,6 +16,7 @@ class Memo < ApplicationRecord has_many :children, foreign_key: :parent_id, class_name: 'Memo' has_many :attachments, as: :container, dependent: :destroy has_many :tidings, as: :container, dependent: :destroy + validate_harmonious_of [:content, :subject] scope :field_for_list, lambda{ select([:id, :subject, :author_id, :sticky, :updated_at, :language, :reward, :all_replies_count, :viewed_count, :forum_id]) From 775432cb3b142e8620c47f1bd792fec2b687409f Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 10:06:58 +0800 Subject: [PATCH 04/19] =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/memo.rb | 8 +++++++- app/models/user.rb | 13 ++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/app/models/memo.rb b/app/models/memo.rb index 1b2be5476..6b7da3548 100644 --- a/app/models/memo.rb +++ b/app/models/memo.rb @@ -16,7 +16,8 @@ class Memo < ApplicationRecord has_many :children, foreign_key: :parent_id, class_name: 'Memo' has_many :attachments, as: :container, dependent: :destroy has_many :tidings, as: :container, dependent: :destroy - validate_harmonious_of [:content, :subject] + validate_harmonious_of [:subject, :content] + validate :validate_sensitive_string scope :field_for_list, lambda{ select([:id, :subject, :author_id, :sticky, :updated_at, :language, :reward, :all_replies_count, :viewed_count, :forum_id]) @@ -55,4 +56,9 @@ class Memo < ApplicationRecord self.tidings << Tiding.new(tiding_attr) end + + def validate_sensitive_string + raise("标题包含敏感词汇,请重新输入") unless HarmoniousDictionary.clean?(subject) + raise("内容包含敏感词汇,请重新输入") unless HarmoniousDictionary.clean?(content) + end end diff --git a/app/models/user.rb b/app/models/user.rb index 7c1463b7f..54aa8d85e 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -178,14 +178,8 @@ class User < ApplicationRecord validates_uniqueness_of :phone, :if => Proc.new { |user| user.phone_changed? && user.phone.present? }, case_sensitive: false validates_length_of :login, maximum: LOGIN_LENGTH_LIMIT validates_length_of :mail, maximum: MAIL_LENGTH_LMIT - validate_harmonious_of [:lastname, :nickname] - # validates_format_of :mail, with: VALID_EMAIL_REGEX, multiline: true - # validates_format_of :phone, with: VALID_PHONE_REGEX, multiline: true + validate :validate_sensitive_string validate :validate_password_length - #validate :validate_ID_number - #validates_format_of :ID_number, with: VALID_NUMBER_REGEX, multiline: true, message: "身份证号格式不对" - # validates :nickname, presence: true, length: { maximum: 10 } - # validates :lastname, presence: true # 删除自动登录的token,一旦退出下次会提示需要登录 def delete_autologin_token(value) @@ -728,6 +722,11 @@ class User < ApplicationRecord end end + def validate_sensitive_string + raise("真实姓名包含敏感词汇,请重新输入") unless HarmoniousDictionary.clean?(lastname) + raise("昵称包含敏感词汇,请重新输入") unless HarmoniousDictionary.clean?(nickname) + end + def set_laboratory return unless new_record? From 3c353e50288cb667ff71d3c74a0f5a8c1e6410ba Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 10:11:57 +0800 Subject: [PATCH 05/19] =?UTF-8?q?=E6=A0=87=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/course.rb | 6 +++++- app/models/course_list.rb | 6 +++++- app/models/memo.rb | 1 - 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/app/models/course.rb b/app/models/course.rb index 682f73958..9100f8470 100644 --- a/app/models/course.rb +++ b/app/models/course.rb @@ -81,7 +81,7 @@ class Course < ApplicationRecord # 老版的members弃用 现用course_members has_many :members - validate_harmonious_of [:name, :subject] + validate :validate_sensitive_string scope :hidden, ->(is_hidden = true) { where(is_hidden: is_hidden) } scope :ended, ->(is_end = true) { where(is_end: is_end) } @@ -437,4 +437,8 @@ class Course < ApplicationRecord self.laboratory = Laboratory.current if laboratory_id.blank? end + + def validate_sensitive_string + raise("课堂名称包含敏感词汇,请重新输入") unless HarmoniousDictionary.clean?(name) + end end diff --git a/app/models/course_list.rb b/app/models/course_list.rb index 84f18f0ef..ab7404a9e 100644 --- a/app/models/course_list.rb +++ b/app/models/course_list.rb @@ -7,5 +7,9 @@ class CourseList < ApplicationRecord has_many :gtopic_banks belongs_to :user - validate_harmonious_of :name + validate :validate_sensitive_string + + def validate_sensitive_string + raise("课程名称包含敏感词汇,请重新输入") unless HarmoniousDictionary.clean?(name) + end end diff --git a/app/models/memo.rb b/app/models/memo.rb index 6b7da3548..d79081350 100644 --- a/app/models/memo.rb +++ b/app/models/memo.rb @@ -16,7 +16,6 @@ class Memo < ApplicationRecord has_many :children, foreign_key: :parent_id, class_name: 'Memo' has_many :attachments, as: :container, dependent: :destroy has_many :tidings, as: :container, dependent: :destroy - validate_harmonious_of [:subject, :content] validate :validate_sensitive_string scope :field_for_list, lambda{ From 7299e59f8aca8580664a111c5dabcd57f53bb27f Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 10:52:52 +0800 Subject: [PATCH 06/19] =?UTF-8?q?=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/discuss.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/models/discuss.rb b/app/models/discuss.rb index b7238dcd1..a236a2bbc 100644 --- a/app/models/discuss.rb +++ b/app/models/discuss.rb @@ -11,7 +11,7 @@ class Discuss < ApplicationRecord belongs_to :dis, polymorphic: true belongs_to :challenge, optional: true - validate_harmonious_of :content + validate :validate_sensitive_string after_create :send_tiding @@ -71,4 +71,8 @@ class Discuss < ApplicationRecord } tidings.create!(base_attrs.merge(user_id: send_user_id)) end + + def validate_sensitive_string + raise("内容包含敏感词汇,请重新输入") unless HarmoniousDictionary.clean?(content) + end end From 33589979d3fb6ea703b05c5d8c749296e70ea489 Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 10:55:02 +0800 Subject: [PATCH 07/19] =?UTF-8?q?=E6=95=8F=E6=84=9F=E8=AF=8D=E6=B1=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/discusses_controller.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controllers/discusses_controller.rb b/app/controllers/discusses_controller.rb index c2cc8f933..bcbba1a3a 100644 --- a/app/controllers/discusses_controller.rb +++ b/app/controllers/discusses_controller.rb @@ -85,7 +85,7 @@ class DiscussesController < ApplicationController :hidden => !current_user.admin?) # 管理员回复的能够显示 rescue Exception => e uid_logger_error("create discuss failed : #{e.message}") - raise Educoder::TipException.new("评论异常") + raise Educoder::TipException.new("评论异常,原因:#{e.message}") end end @@ -97,7 +97,7 @@ class DiscussesController < ApplicationController :dis_type => @discuss.dis_type, :position => @discuss.position) rescue Exception => e uid_logger_error("reply discuss failed : #{e.message}") - raise Educoder::TipException.new("回复评论异常") + raise Educoder::TipException.new("回复评论异常,原因: #{e.message}") end end From 6294b29af7ac25ee584aa893f4dd9a61e2a887e9 Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 11:20:30 +0800 Subject: [PATCH 08/19] =?UTF-8?q?git=E7=89=88=E6=9C=AC=E5=BA=93=E6=8A=A5?= =?UTF-8?q?=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/shixuns_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index de69bf033..01898b980 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -16,7 +16,7 @@ class ShixunsController < ApplicationController :propaedeutics, :departments, :apply_shixun_mirror, :jupyter_exec, :get_mirror_script, :download_file, :shixun_list, :batch_send_to_course] before_action :find_repo_name, only: [:repository, :commits, :file_content, :update_file, :shixun_exec, :copy, - :add_file, :jupyter_exec] + :add_file, :jupyter_exec, :upload_git_file, :delete_git_file, :upload_git_file] before_action :allowed, only: [:update, :close, :update_propaedeutics, :settings, :publish, :apply_public, :upload_git_folder, :shixun_members_added, :change_manager, :collaborators_delete, :upload_git_file, From 462d2afd64ba6e03ab50d193240ea20c9138549a Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 11:33:34 +0800 Subject: [PATCH 09/19] 1 --- app/controllers/shixuns_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index 01898b980..a2645e77c 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -1097,7 +1097,7 @@ private else @shixun.try(:repo_path) end - logger.info("######{@repo_path}") + logger.info("#####repo_path: #{@repo_path}") @path = params[:path] end From 88263ec87b77c63312fa3ee4291da7c2700e6ec6 Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 11:40:00 +0800 Subject: [PATCH 10/19] =?UTF-8?q?=E6=89=93=E5=8D=B0=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/shixuns_controller.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index a2645e77c..f98567e3f 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -16,7 +16,7 @@ class ShixunsController < ApplicationController :propaedeutics, :departments, :apply_shixun_mirror, :jupyter_exec, :get_mirror_script, :download_file, :shixun_list, :batch_send_to_course] before_action :find_repo_name, only: [:repository, :commits, :file_content, :update_file, :shixun_exec, :copy, - :add_file, :jupyter_exec, :upload_git_file, :delete_git_file, :upload_git_file] + :add_file, :jupyter_exec, :upload_git_file, :delete_git_file, :upload_git_folder] before_action :allowed, only: [:update, :close, :update_propaedeutics, :settings, :publish, :apply_public, :upload_git_folder, :shixun_members_added, :change_manager, :collaborators_delete, :upload_git_file, @@ -1097,8 +1097,10 @@ private else @shixun.try(:repo_path) end - logger.info("#####repo_path: #{@repo_path}") @path = params[:path] + Rails.logger.info("#####repo_path: #{@repo_path}") + Rails.logger.info("#####repo_path: #{@path}") + end def allowed From 9e405d02152ac5a8969ac8fe09cb20ebf6d7ad33 Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 11:43:32 +0800 Subject: [PATCH 11/19] =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=BA=93=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/concerns/git_helper.rb | 10 ++++++---- app/controllers/shixuns_controller.rb | 4 ++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/app/controllers/concerns/git_helper.rb b/app/controllers/concerns/git_helper.rb index d8479d458..e72f1f5da 100644 --- a/app/controllers/concerns/git_helper.rb +++ b/app/controllers/concerns/git_helper.rb @@ -53,13 +53,15 @@ module GitHelper end # 添加目录 - def git_add_folder(folder_path, author_name, author_email, message) - GitService.add_tree(file_path: folder_path, message: message, author_name: author_name, author_email: author_email) + def git_add_folder(repo_path, folder_path, author_name, author_email, message) + GitService.add_tree(repo_path: repo_path, file_path: folder_path, message: message, author_name: author_name, + author_email: author_email) end # 删除文件 - def git_delete_file(file_path, author_name, author_email, message) - GitService.delete_file(file_path: file_path, message: message, author_name: author_name, author_email: author_email) + def git_delete_file(repo_path, file_path, author_name, author_email, message) + GitService.delete_file(repo_path, repo_path, file_path: file_path, message: message, author_name: author_name, + author_email: author_email) end # 版本库Fork功能 diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index f98567e3f..f2104bb1f 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -905,7 +905,7 @@ class ShixunsController < ApplicationController author_name = current_user.real_name author_email = current_user.git_mail message = params[:message] || "upload folder by browser" - git_add_folder(@path, author_name, author_email, message) + git_add_folder(@repo_path, @path, author_name, author_email, message) render_ok end @@ -913,7 +913,7 @@ class ShixunsController < ApplicationController author_name = current_user.real_name author_email = current_user.git_mail message = params[:message] || "delete file by browser" - git_delete_file(@path, author_name, author_email, message) + git_delete_file(@repo_path, @path, author_name, author_email, message) render_ok end From da6b53075002a8bb291b3af5f57ee74452cbbd22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Tue, 7 Jan 2020 11:46:55 +0800 Subject: [PATCH 12/19] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/courses/gradinforms/myysleduinforms.css | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/public/react/src/modules/courses/gradinforms/myysleduinforms.css b/public/react/src/modules/courses/gradinforms/myysleduinforms.css index a05dc9a63..b9adac4be 100644 --- a/public/react/src/modules/courses/gradinforms/myysleduinforms.css +++ b/public/react/src/modules/courses/gradinforms/myysleduinforms.css @@ -56,12 +56,17 @@ .ysltitbt{ float: left; - padding-top: 31px; + padding-top: 28px; padding-left: 25px; font-size: 21px; - color: #05101A; + color: #05101a; text-align: left; - font-weight:bold; + font-weight: bold; + max-width: 805px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + display: inline-block; } .markdownysltext{ font-size: 14px; From 210f7a210f219be52764da5177d8a48c81e13ebb Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 11:47:24 +0800 Subject: [PATCH 13/19] 1 --- app/controllers/shixuns_controller.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index f2104bb1f..9f63f311d 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -1095,11 +1095,12 @@ private @repo_path = if params[:secret_repository] @shixun.shixun_secret_repository&.repo_path else - @shixun.try(:repo_path) + @shixun.repo_path end @path = params[:path] + Rails.logger.info("#####shixun: #{@shixun.repo_path}") Rails.logger.info("#####repo_path: #{@repo_path}") - Rails.logger.info("#####repo_path: #{@path}") + Rails.logger.info("#####path: #{@path}") end From 5202469215f2d01fb89d9a5307f35d554734f207 Mon Sep 17 00:00:00 2001 From: daiao <358551898@qq.com> Date: Tue, 7 Jan 2020 11:51:06 +0800 Subject: [PATCH 14/19] =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=BA=93=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/shixuns_controller.rb | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index 9f63f311d..cf30b15a1 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -1098,10 +1098,6 @@ private @shixun.repo_path end @path = params[:path] - Rails.logger.info("#####shixun: #{@shixun.repo_path}") - Rails.logger.info("#####repo_path: #{@repo_path}") - Rails.logger.info("#####path: #{@path}") - end def allowed From 8daee8c2c94480ea4ef5c7ea94ada425e27d814c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Tue, 7 Jan 2020 13:50:35 +0800 Subject: [PATCH 15/19] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shixunchild/shixunchildCss/Challenges.css | 19 +++++++++++++++---- .../src/modules/tpm/shixuns/ShixunsIndex.js | 5 ++++- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css b/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css index b59bd86fd..652f77201 100644 --- a/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css +++ b/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css @@ -138,15 +138,26 @@ } .shixunstartbutton33BD8C{ - background: #33BD8C !important; - border: #33BD8C !important; + /* border: #33BD8C !important; */ cursor: inherit !important; + border: 1px solid #33BD8C !important; + background: transparent !important; + color: #33BD8C !important; + box-shadow: none; + text-shadow: none; } .shixunstartbuttonFF6601{ - background: #FF6601 !important; - border: #FF6601 !important; + /*background: #FF6601 !important;*/ + /*border: #FF6601 !important;*/ + /*cursor: inherit !important;*/ + /* border: #33BD8C !important; */ cursor: inherit !important; + border: 1px solid #FF6601 !important; + background: transparent !important; + color: #FF6601 !important; + box-shadow: none; + text-shadow: none; } .shixunstartbutton666666{ diff --git a/public/react/src/modules/tpm/shixuns/ShixunsIndex.js b/public/react/src/modules/tpm/shixuns/ShixunsIndex.js index 7b6e54bc8..f14afb0ac 100644 --- a/public/react/src/modules/tpm/shixuns/ShixunsIndex.js +++ b/public/react/src/modules/tpm/shixuns/ShixunsIndex.js @@ -107,7 +107,10 @@ class ShixunsIndex extends Component { this.setState({ parsedid:parsed.id, newtag_level:nawparsed, - newpalce:newpalce + tag_level:nawparsed, + newpalce:newpalce, + tag_id:parsed.id, + keyword: _keyword || keyword, }) this.shixunresultend(params); } From 8983c76260835cfe4790edc0578f57fd5603eec7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Tue, 7 Jan 2020 13:58:04 +0800 Subject: [PATCH 16/19] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/react/src/modules/tpm/TPMRepositoryComponent.js | 2 +- .../src/modules/tpm/TPMRepositoryComponentdetails.js | 2 +- .../tpm/shixunchild/Repository/RepositoryAddFile.js | 2 +- .../Repository/RepositoryAddFileupload_file.js | 8 ++++---- .../tpm/shixunchild/Repository/RepositoryCodeEditor.js | 2 +- .../modules/tpm/shixunchild/Repository/Repositoryfile.js | 8 ++++---- .../tpm/shixunchild/Repository/TPMRepositoryCommits.js | 2 +- 7 files changed, 13 insertions(+), 13 deletions(-) diff --git a/public/react/src/modules/tpm/TPMRepositoryComponent.js b/public/react/src/modules/tpm/TPMRepositoryComponent.js index ed485bdb4..793d035ed 100644 --- a/public/react/src/modules/tpm/TPMRepositoryComponent.js +++ b/public/react/src/modules/tpm/TPMRepositoryComponent.js @@ -80,7 +80,7 @@ class TPMRepositoryComponent extends Component { let url = `/shixuns/${id}/file_content.json`; axios.post(url, { path: path, - secret_repository: this.props.secret_repository_tab + secret_repository: this.props.secret_repository_tab===false?undefined:this.props.secret_repository_tab }).then((response) => { trace_collapse('repository res: ', response) diff --git a/public/react/src/modules/tpm/TPMRepositoryComponentdetails.js b/public/react/src/modules/tpm/TPMRepositoryComponentdetails.js index 20dcce107..54efac581 100644 --- a/public/react/src/modules/tpm/TPMRepositoryComponentdetails.js +++ b/public/react/src/modules/tpm/TPMRepositoryComponentdetails.js @@ -72,7 +72,7 @@ class TPMRepositoryComponentdetails extends Component { let url = `/shixuns/${id}/file_content.json`; axios.post(url, { path: path, - secret_repository: this.props.secret_repository_tab + secret_repository: this.props.secret_repository_tab===false?undefined:this.props.secret_repository_tab }).then((response) => { trace_collapse('repository res: ', response) diff --git a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFile.js b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFile.js index cdf616275..5ac18c2b4 100644 --- a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFile.js +++ b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFile.js @@ -118,7 +118,7 @@ class RepositoryAddFile extends Component { path:values.path, message:values.message, content:this.extend_editor.getValue(), - secret_repository:Repositoryflag + secret_repository:Repositoryflag===false?undefined:Repositoryflag }).then((result)=>{ if(result){ this.props.history.push(Repositoryflag===true?`/shixuns/${shixunId}/secret_repository`:`/shixuns/${shixunId}/repository`) diff --git a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js index d9866d1aa..7dc3a5b64 100644 --- a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js +++ b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js @@ -66,10 +66,10 @@ class RepositoryAddFileupload_files extends Component { let matchpath =this.props.match.path; - let Repositoryflag =false; + let Repositoryflag =undefined; if( matchpath.indexOf("repository")>-1){ - Repositoryflag =false; + Repositoryflag =undefined; } if(matchpath.indexOf("secret_repository")>-1){ Repositoryflag =true; @@ -135,12 +135,12 @@ class RepositoryAddFileupload_files extends Component { // }; let matchpath =this.props.match.path; - let Repositoryflagtype =false; + let Repositoryflagtype =undefined; let Repositoryflag =""; if( matchpath.indexOf("repository")>-1){ Repositoryflag ="repository"; - Repositoryflagtype =false; + Repositoryflagtype =undefined; } if(matchpath.indexOf("secret_repository")>-1){ Repositoryflag ="secret_repository"; diff --git a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryCodeEditor.js b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryCodeEditor.js index e6ac314e2..12f51bf93 100644 --- a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryCodeEditor.js +++ b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryCodeEditor.js @@ -122,7 +122,7 @@ class RepositoryCodeEditor extends Component { const path = pathArray.join('/') this.setState({ codeSaving: true }) axios.post(url, { - secret_repository: this.props.secret_repository_tab, + secret_repository: this.props.secret_repository_tab===false?undefined:this.props.secret_repository_tab, content: this.extend_editor.getValue(), // type: forTest === true ? 1 : 0, path: path, diff --git a/public/react/src/modules/tpm/shixunchild/Repository/Repositoryfile.js b/public/react/src/modules/tpm/shixunchild/Repository/Repositoryfile.js index f3f65ac15..195cfea8a 100644 --- a/public/react/src/modules/tpm/shixunchild/Repository/Repositoryfile.js +++ b/public/react/src/modules/tpm/shixunchild/Repository/Repositoryfile.js @@ -120,16 +120,16 @@ class Repositoryfile extends Component{ handleSubmit = (e) => { let {path}=this.state; let matchpath =this.props.match.path; - let flag =false; + let flag =undefined; if( matchpath.indexOf("repository")>-1){ - flag =false; + flag =undefined; } if(matchpath.indexOf("secret_repository")>-1){ flag =true; } if(this.props.selectupfils===true){ - console.log(path) + this.props.selectupfilspath(path); this.props.showNotification("选择文件目录成功") this.props.hideNewFolder(); @@ -141,7 +141,7 @@ class Repositoryfile extends Component{ let paths=path+values.name; axios.post(url,{ path: paths, - secret_repository:flag, + secret_repository:flag===false?undefined:flag, }).then((result)=>{ if(result){ if(result.data.status===0){ diff --git a/public/react/src/modules/tpm/shixunchild/Repository/TPMRepositoryCommits.js b/public/react/src/modules/tpm/shixunchild/Repository/TPMRepositoryCommits.js index 37a4217a6..6d3ee3476 100644 --- a/public/react/src/modules/tpm/shixunchild/Repository/TPMRepositoryCommits.js +++ b/public/react/src/modules/tpm/shixunchild/Repository/TPMRepositoryCommits.js @@ -35,7 +35,7 @@ class TPMRepositoryCommits extends Component { let collaborators=`/shixuns/`+id+`/commits.json`; axios.post(collaborators, { - secret_repository: this.props.secret_repository_tab + secret_repository: this.props.secret_repository_tab===false?undefined:this.props.secret_repository_tab }).then((response)=> { if(response.status===200){ From c332c71bbd164d04503a851b79678844e1724d3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Tue, 7 Jan 2020 14:02:02 +0800 Subject: [PATCH 17/19] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../RepositoryAddFileupload_file.js | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js index 7dc3a5b64..bca0217cf 100644 --- a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js +++ b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js @@ -135,25 +135,30 @@ class RepositoryAddFileupload_files extends Component { // }; let matchpath =this.props.match.path; - let Repositoryflagtype =undefined; let Repositoryflag =""; + let newdata; if( matchpath.indexOf("repository")>-1){ Repositoryflag ="repository"; - Repositoryflagtype =undefined; + newdata={ + path:this.state.filspath, + message:this.state.message, + } } + if(matchpath.indexOf("secret_repository")>-1){ Repositoryflag ="secret_repository"; - Repositoryflagtype =true; + newdata={ + path:this.state.filspath, + message:this.state.message, + secret_repository:true + } } + const props = { height:300, multiple: true, - data:{ - path:this.state.filspath, - message:this.state.message, - secret_repository:Repositoryflagtype - }, + data:newdata, fileList:this.state.fileList, // showUploadList:false, action: `${getupload_git_file(shixunId)}`, From 1fe08190d7d55cc1cbb510102710264b832415ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Tue, 7 Jan 2020 14:02:35 +0800 Subject: [PATCH 18/19] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shixunchild/Repository/RepositoryAddFileupload_file.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js index bca0217cf..72bc9bf8c 100644 --- a/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js +++ b/public/react/src/modules/tpm/shixunchild/Repository/RepositoryAddFileupload_file.js @@ -134,7 +134,7 @@ class RepositoryAddFileupload_files extends Component { // // }, // }; let matchpath =this.props.match.path; - + let Repositoryflag =""; let newdata; @@ -154,7 +154,7 @@ class RepositoryAddFileupload_files extends Component { secret_repository:true } } - + const props = { height:300, multiple: true, From e49ad4f2d62a7c63a01b6f66575c8e47cf19c6c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com> Date: Tue, 7 Jan 2020 14:05:16 +0800 Subject: [PATCH 19/19] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/react/src/modules/tpm/NewHeader.js | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/public/react/src/modules/tpm/NewHeader.js b/public/react/src/modules/tpm/NewHeader.js index 6e27f9591..0e4ea3073 100644 --- a/public/react/src/modules/tpm/NewHeader.js +++ b/public/react/src/modules/tpm/NewHeader.js @@ -1039,17 +1039,17 @@ submittojoinclass=(value)=>{ ` } - {/*
  • */} - {/* */} - {/*
    */} - {/*
    */} - {/* 题库*/} - {/*
    */} - {/*
    */} - {/*
    */} - {/*
  • */} +
  • + +
    +
    + 题库 +
    +
    +
    +