magicblack 1 місяць тому
батько
коміт
c26cba3715

+ 112 - 96
application/admin/common/auth.php

@@ -2,21 +2,21 @@
 return array (
   1 => 
   array (
-    'name' => '首页',
+    'name' => lang('menu/index'),
     'icon' => 'xe625',
     'sub' => 
     array (
       11 => 
       array (
         'show' => 1,
-        'name' => '欢迎页面',
+        'name' => lang('menu/welcome'),
         'controller' => 'index',
         'action' => 'welcome',
       ),
       12 => 
       array (
         'show' => 1,
-        'name' => '自定义菜单配置',
+        'name' => lang('menu/quickmenu'),
         'controller' => 'index',
         'action' => 'quickmenu',
       ),
@@ -59,119 +59,119 @@ return array (
   ),
   2 => 
   array (
-    'name' => '系统',
+    'name' => lang('menu/system'),
     'icon' => 'xe62e',
     'sub' => 
     array (
       21 => 
       array (
         'show' => 1,
-        'name' => '网站参数配置',
+        'name' => lang('menu/config'),
         'controller' => 'system',
         'action' => 'config',
       ),
       210 => 
       array (
         'show' => 1,
-        'name' => 'SEO参数配置',
+        'name' => lang('menu/configseo'),
         'controller' => 'system',
         'action' => 'configseo',
       ),
       211 => 
       array (
         'show' => 1,
-        'name' => '会员参数配置',
+        'name' => lang('menu/configuser'),
         'controller' => 'system',
         'action' => 'configuser',
       ),
       212 => 
       array (
         'show' => 1,
-        'name' => '评论留言配置',
+        'name' => lang('menu/configcomment'),
         'controller' => 'system',
         'action' => 'configcomment',
       ),
       213 => 
       array (
         'show' => 1,
-        'name' => '附件参数配置',
+        'name' => lang('menu/configupload'),
         'controller' => 'system',
         'action' => 'configupload',
       ),
       22 => 
       array (
         'show' => 1,
-        'name' => 'URL地址配置',
+        'name' => lang('menu/configurl'),
         'controller' => 'system',
         'action' => 'configurl',
       ),
       23 => 
       array (
         'show' => 1,
-        'name' => '播放器参数配置',
+        'name' => lang('menu/configplay'),
         'controller' => 'system',
         'action' => 'configplay',
       ),
       24 => 
       array (
         'show' => 1,
-        'name' => '采集参数配置',
+        'name' => lang('menu/configcollect'),
         'controller' => 'system',
         'action' => 'configcollect',
       ),
       25 => 
       array (
         'show' => 1,
-        'name' => '站外入库配置',
+        'name' => lang('menu/configinterface'),
         'controller' => 'system',
         'action' => 'configinterface',
       ),
       26 => 
       array (
         'show' => 1,
-        'name' => '开放API配置',
+        'name' => lang('menu/configapi'),
         'controller' => 'system',
         'action' => 'configapi',
       ),
       27 => 
       array (
         'show' => 1,
-        'name' => '整合登录配置',
+        'name' => lang('menu/configconnect'),
         'controller' => 'system',
         'action' => 'configconnect',
       ),
       28 => 
       array (
         'show' => 1,
-        'name' => '在线支付配置',
+        'name' => lang('menu/configpay'),
         'controller' => 'system',
         'action' => 'configpay',
       ),
       29 => 
       array (
         'show' => 1,
-        'name' => '微信对接配置',
+        'name' => lang('menu/configweixin'),
         'controller' => 'system',
         'action' => 'configweixin',
       ),
       291 => 
       array (
         'show' => 1,
-        'name' => '邮件发送配置',
+        'name' => lang('menu/configemail'),
         'controller' => 'system',
         'action' => 'configemail',
       ),
       292 => 
       array (
         'show' => 1,
-        'name' => '短信发送配置',
+        'name' => lang('menu/configsms'),
         'controller' => 'system',
         'action' => 'configsms',
       ),
       2910 => 
       array (
         'show' => 1,
-        'name' => '定时任务配置',
+        'name' => lang('menu/timming'),
         'controller' => 'timming',
         'action' => 'index',
       ),
@@ -199,7 +199,7 @@ return array (
       2920 => 
       array (
         'show' => 1,
-        'name' => '站群管理配置',
+        'name' => lang('menu/domain'),
         'controller' => 'domain',
         'action' => 'index',
       ),
@@ -228,14 +228,14 @@ return array (
   ),
   3 => 
   array (
-    'name' => '基础',
+    'name' => lang('menu/base'),
     'icon' => 'xe64b',
     'sub' => 
     array (
       31 => 
       array (
         'show' => 1,
-        'name' => '分类管理',
+        'name' => lang('menu/type'),
         'controller' => 'type',
         'action' => 'index',
       ),
@@ -277,7 +277,7 @@ return array (
       32 => 
       array (
         'show' => 1,
-        'name' => '专题管理',
+        'name' => lang('menu/topic'),
         'controller' => 'topic',
         'action' => 'data',
       ),
@@ -312,7 +312,7 @@ return array (
       33 => 
       array (
         'show' => 1,
-        'name' => '友链管理',
+        'name' => lang('menu/link'),
         'controller' => 'link',
         'action' => 'index',
       ),
@@ -347,7 +347,7 @@ return array (
       34 => 
       array (
         'show' => 1,
-        'name' => '留言管理',
+        'name' => lang('menu/gbook'),
         'controller' => 'gbook',
         'action' => 'data',
       ),
@@ -375,7 +375,7 @@ return array (
       35 => 
       array (
         'show' => 1,
-        'name' => '评论管理',
+        'name' => lang('menu/comment'),
         'controller' => 'comment',
         'action' => 'data',
       ),
@@ -403,7 +403,7 @@ return array (
       36 => 
       array (
         'show' => 1,
-        'name' => '附件管理',
+        'name' => lang('menu/images'),
         'controller' => 'annex',
         'action' => 'data',
       ),
@@ -453,14 +453,14 @@ return array (
   ),
   5 => 
   array (
-    'name' => '文章',
+    'name' => lang('menu/art'),
     'icon' => 'xe616',
     'sub' => 
     array (
       51 => 
       array (
         'show' => 1,
-        'name' => '文章数据',
+        'name' => lang('menu/art_data'),
         'controller' => 'art',
         'action' => 'data',
       ),
@@ -488,14 +488,14 @@ return array (
       52 => 
       array (
         'show' => 1,
-        'name' => '添加文章',
+        'name' => lang('menu/art_add'),
         'controller' => 'art',
         'action' => 'info',
       ),
       53 => 
       array (
         'show' => 1,
-        'name' => '已锁定文章',
+        'name' => lang('menu/art_data_lock'),
         'controller' => 'art',
         'action' => 'data',
         'param' => 'lock=1',
@@ -503,7 +503,7 @@ return array (
       54 => 
       array (
         'show' => 1,
-        'name' => '未审核文章',
+        'name' => lang('menu/art_data_audit'),
         'controller' => 'art',
         'action' => 'data',
         'param' => 'status=0',
@@ -511,14 +511,14 @@ return array (
       59 => 
       array (
         'show' => 1,
-        'name' => '批量操作文章',
+        'name' => lang('menu/art_batch'),
         'controller' => 'art',
         'action' => 'batch',
       ),
       591 => 
       array (
         'show' => 1,
-        'name' => '重名文章数据',
+        'name' => lang('menu/art_repeat'),
         'controller' => 'art',
         'action' => 'data',
         'param' => 'repeat=1',
@@ -527,14 +527,14 @@ return array (
   ),
   13 => 
   array (
-    'name' => '漫画',
+    'name' => lang('manga'),
     'icon' => 'xe616',
     'sub' => 
     array (
       131 => 
       array (
         'show' => 1,
-        'name' => '漫画数据',
+        'name' => lang('admin/manga/title'),
         'controller' => 'manga',
         'action' => 'data',
       ),
@@ -562,14 +562,14 @@ return array (
       132 => 
       array (
         'show' => 1,
-        'name' => '添加漫画',
+        'name' => lang('add'),
         'controller' => 'manga',
         'action' => 'info',
       ),
       133 => 
       array (
         'show' => 1,
-        'name' => '已锁定漫画',
+        'name' => lang('lock'),
         'controller' => 'manga',
         'action' => 'data',
         'param' => 'lock=1',
@@ -577,7 +577,7 @@ return array (
       134 => 
       array (
         'show' => 1,
-        'name' => '未审核漫画',
+        'name' => lang('reviewed_not'),
         'controller' => 'manga',
         'action' => 'data',
         'param' => 'status=0',
@@ -585,30 +585,46 @@ return array (
       139 => 
       array (
         'show' => 1,
-        'name' => '批量操作漫画',
+        'name' => lang('multi_set'),
         'controller' => 'manga',
         'action' => 'batch',
       ),
       1391 => 
       array (
         'show' => 1,
-        'name' => '重名漫画数据',
+        'name' => lang('duplicate_data'),
         'controller' => 'manga',
         'action' => 'data',
         'param' => 'repeat=1',
       ),
+      1392 => 
+      array (
+        'show' => 1,
+        'name' => lang('menu/manga_data_url_empty'),
+        'controller' => 'manga',
+        'action' => 'data',
+        'param' => 'url=1',
+      ),
+      1393 => 
+      array (
+        'show' => 1,
+        'name' => lang('menu/manga_data_points'),
+        'controller' => 'manga',
+        'action' => 'data',
+        'param' => 'points=1',
+      ),
     ),
   ),
   4 => 
   array (
-    'name' => '视频',
+    'name' => lang('menu/vod'),
     'icon' => 'xe639',
     'sub' => 
     array (
       41 => 
       array (
         'show' => 1,
-        'name' => '服务器组',
+        'name' => lang('menu/server'),
         'controller' => 'vodserver',
         'action' => 'index',
       ),
@@ -636,7 +652,7 @@ return array (
       42 => 
       array (
         'show' => 1,
-        'name' => '播放器',
+        'name' => lang('menu/player'),
         'controller' => 'vodplayer',
         'action' => 'index',
       ),
@@ -664,7 +680,7 @@ return array (
       43 => 
       array (
         'show' => 1,
-        'name' => '下载器',
+        'name' => lang('menu/downer'),
         'controller' => 'voddowner',
         'action' => 'index',
       ),
@@ -692,7 +708,7 @@ return array (
       44 => 
       array (
         'show' => 1,
-        'name' => '视频数据',
+        'name' => lang('menu/vod_data'),
         'controller' => 'vod',
         'action' => 'data',
       ),
@@ -720,14 +736,14 @@ return array (
       45 => 
       array (
         'show' => 1,
-        'name' => '添加视频',
+        'name' => lang('menu/vod_add'),
         'controller' => 'vod',
         'action' => 'info',
       ),
       46 => 
       array (
         'show' => 1,
-        'name' => '无地址视频',
+        'name' => lang('menu/vod_data_url_empty'),
         'controller' => 'vod',
         'action' => 'data',
         'param' => 'url=1',
@@ -735,7 +751,7 @@ return array (
       47 => 
       array (
         'show' => 1,
-        'name' => '已锁定视频',
+        'name' => lang('menu/vod_data_lock'),
         'controller' => 'vod',
         'action' => 'data',
         'param' => 'lock=1',
@@ -743,7 +759,7 @@ return array (
       48 => 
       array (
         'show' => 1,
-        'name' => '未审核视频',
+        'name' => lang('menu/vod_data_audit'),
         'controller' => 'vod',
         'action' => 'data',
         'param' => 'status=0',
@@ -751,7 +767,7 @@ return array (
       481 => 
       array (
         'show' => 1,
-        'name' => '需积分视频',
+        'name' => lang('menu/vod_data_points'),
         'controller' => 'vod',
         'action' => 'data',
         'param' => 'points=1',
@@ -759,7 +775,7 @@ return array (
       482 => 
       array (
         'show' => 1,
-        'name' => '有分集剧情',
+        'name' => lang('menu/vod_data_plot'),
         'controller' => 'vod',
         'action' => 'data',
         'param' => 'plot=1',
@@ -767,14 +783,14 @@ return array (
       49 => 
       array (
         'show' => 1,
-        'name' => '批量操作视频',
+        'name' => lang('menu/vod_batch'),
         'controller' => 'vod',
         'action' => 'batch',
       ),
       491 => 
       array (
         'show' => 1,
-        'name' => '重名视频数据',
+        'name' => lang('menu/vod_repeat'),
         'controller' => 'vod',
         'action' => 'data',
         'param' => 'repeat=1',
@@ -782,7 +798,7 @@ return array (
       495 => 
       array (
         'show' => 1,
-        'name' => '演员库',
+        'name' => lang('menu/actor'),
         'controller' => 'actor',
         'action' => 'data',
         'param' => '',
@@ -818,7 +834,7 @@ return array (
       496 => 
       array (
         'show' => 1,
-        'name' => '角色库',
+        'name' => lang('menu/role'),
         'controller' => 'role',
         'action' => 'data',
         'param' => '',
@@ -855,14 +871,14 @@ return array (
   ),
   12 => 
   array (
-    'name' => '网址',
+    'name' => lang('menu/website'),
     'icon' => 'xe616',
     'sub' => 
     array (
       121 => 
       array (
         'show' => 1,
-        'name' => '网址数据',
+        'name' => lang('menu/website_data'),
         'controller' => 'website',
         'action' => 'data',
       ),
@@ -890,14 +906,14 @@ return array (
       122 => 
       array (
         'show' => 1,
-        'name' => '添加网址',
+        'name' => lang('menu/website_add'),
         'controller' => 'website',
         'action' => 'info',
       ),
       123 => 
       array (
         'show' => 1,
-        'name' => '已锁定网址',
+        'name' => lang('menu/website_data_lock'),
         'controller' => 'website',
         'action' => 'data',
         'param' => 'lock=1',
@@ -905,7 +921,7 @@ return array (
       124 => 
       array (
         'show' => 1,
-        'name' => '未审核网址',
+        'name' => lang('menu/website_data_audit'),
         'controller' => 'website',
         'action' => 'data',
         'param' => 'status=0',
@@ -913,14 +929,14 @@ return array (
       129 => 
       array (
         'show' => 1,
-        'name' => '批量操作网址',
+        'name' => lang('menu/website_batch'),
         'controller' => 'website',
         'action' => 'batch',
       ),
       1291 => 
       array (
         'show' => 1,
-        'name' => '重名网址数据',
+        'name' => lang('menu/website_repeat'),
         'controller' => 'website',
         'action' => 'data',
         'param' => 'repeat=1',
@@ -929,14 +945,14 @@ return array (
   ),
   6 => 
   array (
-    'name' => '用户',
+    'name' => lang('menu/users'),
     'icon' => 'xe62c',
     'sub' => 
     array (
       61 => 
       array (
         'show' => 1,
-        'name' => '管理员',
+        'name' => lang('menu/admin'),
         'controller' => 'admin',
         'action' => 'index',
       ),
@@ -964,7 +980,7 @@ return array (
       62 => 
       array (
         'show' => 1,
-        'name' => '会员组',
+        'name' => lang('menu/group'),
         'controller' => 'group',
         'action' => 'index',
       ),
@@ -992,7 +1008,7 @@ return array (
       63 => 
       array (
         'show' => 1,
-        'name' => '会员',
+        'name' => lang('menu/user'),
         'controller' => 'user',
         'action' => 'data',
       ),
@@ -1020,7 +1036,7 @@ return array (
       64 => 
       array (
         'show' => 1,
-        'name' => '充值卡',
+        'name' => lang('menu/card'),
         'controller' => 'card',
         'action' => 'index',
       ),
@@ -1041,7 +1057,7 @@ return array (
       65 => 
       array (
         'show' => 1,
-        'name' => '会员订单',
+        'name' => lang('menu/order'),
         'controller' => 'order',
         'action' => 'index',
       ),
@@ -1055,7 +1071,7 @@ return array (
       66 => 
       array (
         'show' => 1,
-        'name' => '访问日志',
+        'name' => lang('menu/ulog'),
         'controller' => 'ulog',
         'action' => 'index',
       ),
@@ -1069,7 +1085,7 @@ return array (
       67 => 
       array (
         'show' => 1,
-        'name' => '积分日志',
+        'name' => lang('menu/plog'),
         'controller' => 'plog',
         'action' => 'index',
       ),
@@ -1083,7 +1099,7 @@ return array (
       68 => 
       array (
         'show' => 1,
-        'name' => '提现记录',
+        'name' => lang('menu/cash'),
         'controller' => 'cash',
         'action' => 'index',
       ),
@@ -1105,14 +1121,14 @@ return array (
   ),
   7 => 
   array (
-    'name' => '模版',
+    'name' => lang('menu/templates'),
     'icon' => 'xe72d',
     'sub' => 
     array (
       71 => 
       array (
         'show' => 1,
-        'name' => '模板管理',
+        'name' => lang('menu/template'),
         'controller' => 'template',
         'action' => 'index',
       ),
@@ -1133,7 +1149,7 @@ return array (
       72 => 
       array (
         'show' => 1,
-        'name' => '广告位管理',
+        'name' => lang('menu/ads'),
         'controller' => 'template',
         'action' => 'ads',
         'param' => '',
@@ -1141,7 +1157,7 @@ return array (
       73 => 
       array (
         'show' => 1,
-        'name' => '标签向导',
+        'name' => lang('menu/wizard'),
         'controller' => 'template',
         'action' => 'wizard',
       ),
@@ -1149,35 +1165,35 @@ return array (
   ),
   8 => 
   array (
-    'name' => '生成',
+    'name' => lang('menu/make'),
     'icon' => 'xe63e',
     'sub' => 
     array (
       81 => 
       array (
         'show' => 1,
-        'name' => '生成选项',
+        'name' => lang('menu/make_opt'),
         'controller' => 'make',
         'action' => 'opt',
       ),
       82 => 
       array (
         'show' => 1,
-        'name' => '生成首页',
+        'name' => lang('menu/make_index'),
         'controller' => 'make',
         'action' => 'index',
       ),
       821 => 
       array (
         'show' => 1,
-        'name' => '生成WAP首页',
+        'name' => lang('menu/make_index_wap'),
         'controller' => 'make',
         'action' => 'index?ac2=wap',
       ),
       83 => 
       array (
         'show' => 1,
-        'name' => '生成地图',
+        'name' => lang('menu/make_map'),
         'controller' => 'make',
         'action' => 'map',
       ),
@@ -1234,14 +1250,14 @@ return array (
   ),
   9 => 
   array (
-    'name' => '采集',
+    'name' => lang('menu/cjs'),
     'icon' => 'xe727',
     'sub' => 
     array (
       91 => 
       array (
         'show' => 0,
-        'name' => '推荐资源',
+        'name' => lang('menu/union'),
         'controller' => 'collect',
         'action' => 'union',
       ),
@@ -1283,14 +1299,14 @@ return array (
       92 => 
       array (
         'show' => 0,
-        'name' => '定时挂机',
+        'name' => lang('menu/collect_timming'),
         'controller' => 'collect',
         'action' => 'timing',
       ),
       93 => 
       array (
         'show' => 1,
-        'name' => '自定义接口',
+        'name' => lang('menu/collect'),
         'controller' => 'collect',
         'action' => 'index',
       ),
@@ -1311,7 +1327,7 @@ return array (
       94 => 
       array (
         'show' => 1,
-        'name' => '自定义规则',
+        'name' => lang('menu/cj'),
         'controller' => 'cj',
         'action' => 'index',
       ),
@@ -1375,14 +1391,14 @@ return array (
   ),
   10 => 
   array (
-    'name' => '数据库',
+    'name' => lang('menu/db'),
     'icon' => 'xe621',
     'sub' => 
     array (
       101 => 
       array (
         'show' => 1,
-        'name' => '数据库管理',
+        'name' => lang('menu/database'),
         'controller' => 'database',
         'action' => 'index',
       ),
@@ -1431,14 +1447,14 @@ return array (
       102 => 
       array (
         'show' => 1,
-        'name' => '执行SQL语句',
+        'name' => lang('menu/database_sql'),
         'controller' => 'database',
         'action' => 'sql',
       ),
       103 => 
       array (
         'show' => 1,
-        'name' => '数据批量替换',
+        'name' => lang('menu/database_rep'),
         'controller' => 'database',
         'action' => 'rep',
       ),
@@ -1446,14 +1462,14 @@ return array (
   ),
   11 => 
   array (
-    'name' => '应用',
+    'name' => lang('menu/apps'),
     'icon' => 'xe621',
     'sub' => 
     array (
       111 => 
       array (
         'show' => 1,
-        'name' => '应用市场',
+        'name' => lang('menu/addon'),
         'controller' => 'addon',
         'action' => 'index',
         'param' => '',
@@ -1461,7 +1477,7 @@ return array (
       112 => 
       array (
         'show' => 1,
-        'name' => 'URL推送',
+        'name' => lang('menu/urlsend'),
         'controller' => 'urlsend',
         'action' => 'index',
         'param' => '',
@@ -1469,7 +1485,7 @@ return array (
       113 => 
       array (
         'show' => 1,
-        'name' => '文件安全检测',
+        'name' => lang('menu/safety_file'),
         'controller' => 'safety',
         'action' => 'file',
         'param' => '',
@@ -1477,7 +1493,7 @@ return array (
       114 => 
       array (
         'show' => 1,
-        'name' => '数据挂马检测',
+        'name' => lang('menu/safety_data'),
         'controller' => 'safety',
         'action' => 'data',
         'param' => '',

+ 21 - 0
application/admin/controller/Collect.php

@@ -13,6 +13,27 @@ class Collect extends Base
 
     public function index()
     {
+        $config = config('maccms');
+        if (empty($config['collect']['manga'])) {
+            $config['collect']['manga'] = [
+                'status' => '0',
+                'hits_start' => '',
+                'hits_end' => '',
+                'updown_start' => '',
+                'updown_end' => '',
+                'score' => '0',
+                'pic' => '0',
+                'psernd' => '0',
+                'psesyn' => '0',
+                'filter' => '',
+                'thesaurus' => '',
+                'words' => '',
+                'inrule' => ',a',
+                'uprule' => ',a',
+            ];
+            mac_arr2file(APP_PATH . 'extra/maccms.php', $config);
+        }
+
         $param = input();
         $param['page'] = intval($param['page']) < 1 ? 1 : $param['page'];
         $param['limit'] = intval($param['limit']) < 1 ? 100 : $param['limit'];

+ 11 - 0
application/admin/controller/Manga.php

@@ -46,6 +46,17 @@ class Manga extends Base
             $where['manga_name'] = ['like','%'.$param['wd'].'%'];
         }
 
+        if(!empty($param['url'])){
+            if($param['url'] == '1'){
+                $where['manga_chapter_url'] = ['eq',''];
+            }
+        }
+        if(!empty($param['points'])){
+            if($param['points'] == '1'){
+                $where['manga_points'] = ['gt',0];
+            }
+        }
+
         if(!empty($param['repeat'])){
             if($param['page'] ==1){
                 Db::execute('DROP TABLE IF EXISTS '.config('database.prefix').'tmpmanga');

+ 8 - 0
application/admin/controller/System.php

@@ -635,6 +635,12 @@ class System extends Base
             if (empty($config_new['collect']['comment']['uprule'])) {
                 $config_new['collect']['comment']['uprule'] = [];
             }
+            if (empty($config_new['collect']['manga']['inrule'])) {
+                $config_new['collect']['manga']['inrule'] = ['a'];
+            }
+            if (empty($config_new['collect']['manga']['uprule'])) {
+                $config_new['collect']['manga']['uprule'] = [];
+            }
 
             $config_new['collect']['vod']['inrule'] = ',' . join(',', $config_new['collect']['vod']['inrule']);
             $config_new['collect']['vod']['uprule'] = ',' . join(',', $config_new['collect']['vod']['uprule']);
@@ -648,6 +654,8 @@ class System extends Base
             $config_new['collect']['website']['uprule'] = ',' . join(',', $config_new['collect']['website']['uprule']);
             $config_new['collect']['comment']['inrule'] = ',' . join(',', $config_new['collect']['comment']['inrule']);
             $config_new['collect']['comment']['uprule'] = ',' . join(',', $config_new['collect']['comment']['uprule']);
+            $config_new['collect']['manga']['inrule'] = ',' . join(',', $config_new['collect']['manga']['inrule']);
+            $config_new['collect']['manga']['uprule'] = ',' . join(',', $config_new['collect']['manga']['uprule']);
 
             $config_new['collect']['vod']['namewords'] = mac_replace_text($config_new['collect']['vod']['namewords'], 2);
             $config_new['collect']['vod']['thesaurus'] = mac_replace_text($config_new['collect']['vod']['thesaurus'], 2);

+ 20 - 1
application/admin/controller/Urlsend.php

@@ -3,7 +3,8 @@ namespace app\admin\controller;
 
 class Urlsend extends Base
 {
-    var $_lastid='';
+    public $_lastid='';
+    public $_param;
 
     public function __construct()
     {
@@ -167,6 +168,24 @@ class Urlsend extends Base
                 $fun = 'mac_url_website_detail';
                 $res = model('Website')->listData($where,$order,$this->_param['page'],$this->_param['limit']);
                 break;
+            case 12:
+                $where['manga_status'] = ['eq',1];
+
+                if($ac2=='today'){
+                    $where['manga_'.$col_time] = ['gt',$today];
+
+                }
+                if(!empty($ids)){
+                    $where['manga_id'] = ['in',$ids];
+                }
+                elseif(!empty($data)){
+                    $where['manga_id'] = ['gt', $data];
+                }
+                $col = 'manga';
+                $order = 'manga_id asc';
+                $fun = 'mac_url_manga_detail';
+                $res = model('Manga')->listData($where,$order,$this->_param['page'],$this->_param['limit']);
+                break;
         }
 
         if(empty($res['list'])){

+ 9 - 0
application/admin/view/manga/batch.html

@@ -0,0 +1,9 @@
+{include file="../../../application/admin/view/public/head" /}
+<div class="page-container">
+    <blockquote class="layui-elem-quote layui-quote-nm mt10">
+        <p class="f-20 text-success">{:lang('admin/manga/new_version_notice')}</p>
+    </blockquote>
+</div>
+{include file="../../../application/admin/view/public/foot" /}
+</body>
+</html>

+ 9 - 0
application/admin/view/manga/index.html

@@ -0,0 +1,9 @@
+{include file="../../../application/admin/view/public/head" /}
+<div class="page-container">
+    <blockquote class="layui-elem-quote layui-quote-nm mt10">
+        <p class="f-20 text-success">{:lang('admin/manga/new_version_notice')}</p>
+    </blockquote>
+</div>
+{include file="../../../application/admin/view/public/foot" /}
+</body>
+</html>

+ 9 - 0
application/admin/view/manga/info.html

@@ -0,0 +1,9 @@
+{include file="../../../application/admin/view/public/head" /}
+<div class="page-container">
+    <blockquote class="layui-elem-quote layui-quote-nm mt10">
+        <p class="f-20 text-success">{:lang('admin/manga/new_version_notice')}</p>
+    </blockquote>
+</div>
+{include file="../../../application/admin/view/public/foot" /}
+</body>
+</html>

+ 3 - 0
application/admin/view_new/collect/index.html

@@ -24,6 +24,9 @@
                 {if condition="$collect_break_website neq ''"}
                 <a href="{:url('load')}?flag=website" class="layui-btn layui-btn-danger ">【进入网址断点采集】</a>
                 {/if}
+                {if condition="$collect_break_manga neq ''"}
+                <a href="{:url('load')}?flag=manga" class="layui-btn layui-btn-danger ">【进入漫画断点采集】</a>
+                {/if}
 
         </div>
 

+ 4 - 1
application/admin/view_new/collect/union.html

@@ -17,7 +17,10 @@
             <a href="{:url('load')}?flag=role" class="layui-btn layui-btn-danger ">【进入角色断点采集】</a>
             {/if}
             {if condition="$collect_break_website neq ''"}
-            <a href="{:url('load')}?flag=website" class="layui-btn layui-btn-danger ">【进入网址断点采集】</a>
+            <a href="{:url('load')}?flag=website" class="lay-btn layui-btn-danger ">【进入网址断点采集】</a>
+            {/if}
+            {if condition="$collect_break_manga neq ''"}
+            <a href="{:url('load')}?flag=manga" class="layui-btn layui-btn-danger ">【进入漫画断点采集】</a>
             {/if}
         </div>
     </div>

+ 37 - 0
application/admin/view_new/system/configcollect.html

@@ -19,6 +19,7 @@
                 <li lay-id="configcollect_4">{:lang('admin/system/configcollect/role')}</li>
                 <li lay-id="configcollect_5">{:lang('admin/system/configcollect/website')}</li>
                 <li lay-id="configcollect_6">{:lang('admin/system/configcollect/comment')}</li>
+                <li lay-id="configcollect_manga">{:lang('admin/system/configcollect/manga')}</li>
                 <li lay-id="configcollect_7">{:lang('admin/system/configcollect/words')}</li>
             </ul>
 
@@ -856,6 +857,42 @@
 
                 </div>
 
+                <div class="layui-tab-item">
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configcollect/status')}:</label>
+                        <div class="layui-input-block">
+                            <input type="radio" name="collect[manga][status]" value="0" title="{:lang('reviewed_not')}" {if condition="$config['collect']['manga']['status'] neq 1" }checked {/if}>
+                            <input type="radio" name="collect[manga][status]" value="1" title="{:lang('reviewed')}" {if condition="$config['collect']['manga']['status'] eq 1" }checked {/if}>
+                        </div>
+                    </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configcollect/sync_pic')}:</label>
+                        <div class="layui-input-inline">
+                            <input type="radio" name="collect[manga][pic]" value="0" title="{:lang('close')}" {if condition="$config['collect']['manga']['pic'] neq 1" }checked {/if}>
+                            <input type="radio" name="collect[manga][pic]" value="1" title="{:lang('open')}" {if condition="$config['collect']['manga']['pic'] eq 1" }checked {/if}>
+                        </div>
+                    </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configcollect/inrule')}:</label>
+                        <div class="layui-input-block">
+                            <input type="checkbox" lay-skin="primary" name="collect[manga][inrule][]" value="a" title="{:lang('name')}" {if condition="strpos($config['collect']['manga']['inrule'],'a') !==false" }checked {/if}>
+                            <input type="checkbox" lay-skin="primary" name="collect[manga][inrule][]" value="b" title="{:lang('type')}" {if condition="strpos($config['collect']['manga']['inrule'],'b') !==false" }checked {/if}>
+                        </div>
+                    </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configcollect/uprule')}:</label>
+                        <div class="layui-input-block">
+                            <input type="checkbox" lay-skin="primary" name="collect[manga][uprule][]" value="a" title="{:lang('playurl')}" {if condition="strpos($config['collect']['manga']['uprule'],'a') !==false" }checked {/if}>
+                        </div>
+                    </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configcollect/filter')}:</label>
+                        <div class="layui-input-block">
+                            <textarea name="collect[manga][filter]" class="layui-textarea" placeholder="{:lang('multi_separate_tip')}">{$config['collect']['manga']['filter']}</textarea>
+                        </div>
+                    </div>
+                </div>
+
                 <div class="layui-tab-item" id="movementTable">
                     <blockquote class="layui-elem-quote layui-quote-nm">
                         {:lang('admin/system/configcollect/words_tip')}

+ 141 - 0
application/admin/view_new/system/configurl.html

@@ -127,6 +127,44 @@
                             </select>
                         </div>
                     </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_type')}:</label>
+                        <div class="layui-input-inline w200">
+                            <select name="view[manga_type]">
+                                <option value="0" {if condition="$config['view']['manga_type'] eq 0" }selected{/if}>{:lang('admin/system/configurl/dynamic')}</option>
+                                <option value="2" {if condition="$config['view']['manga_type'] eq 2" }selected{/if}>{:lang('admin/system/configurl/static')}</option>
+                            </select>
+                        </div>
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_show')}:</label>
+                        <div class="layui-input-inline w200">
+                            <select name="view[manga_show]">
+                                <option value="0" {if condition="$config['view']['manga_show'] eq 0" }selected{/if}>{:lang('admin/system/configurl/dynamic')}</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_detail')}:</label>
+                        <div class="layui-input-inline w200">
+                            <select name="view[manga_detail]">
+                                <option value="0" {if condition="$config['view']['manga_detail'] eq 0" }selected{/if}>{:lang('admin/system/configurl/dynamic')}</option>
+                                <option value="2" {if condition="$config['view']['manga_detail'] eq 2" }selected{/if}>{:lang('admin/system/configurl/static')}</option>
+                            </select>
+                        </div>
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_read')}:</label>
+                        <div class="layui-input-inline w200">
+                            <select name="view[manga_read]">
+                                <option value="0" {if condition="$config['view']['manga_read'] eq 0" }selected{/if}>{:lang('admin/system/configurl/dynamic')}</option>
+                                <option value="3" {if condition="$config['view']['manga_read'] eq 3" }selected{/if}>{:lang('admin/system/configurl/static_one')}</option>
+                            </select>
+                        </div>
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_down')}:</label>
+                        <div class="layui-input-inline w200">
+                            <select name="view[manga_down]">
+                                <option value="0" {if condition="$config['view']['manga_down'] eq 0" }selected{/if}>{:lang('admin/system/configurl/dynamic')}</option>
+                                <option value="3" {if condition="$config['view']['manga_down'] eq 3" }selected{/if}>{:lang('admin/system/configurl/static_one')}</option>
+                            </select>
+                        </div>
+                    </div>
                 </div>
 
                 <div class="layui-tab-item" id="movementTable">
@@ -311,6 +349,101 @@
                         </div>
                     </div>
 
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_type')}:</label>
+                        <div class="layui-input-inline w400">
+                            <input type="text" name="path[manga_type]" placeholder=""
+                                value="{$config['path']['manga_type']}" class="layui-input ">
+                        </div>
+                        <div class="layui-input-inline">
+                            <select lay-filter="select_path" onChange="sethtmldir('path[manga_type]',this.value);">
+                                <option>{:lang('admin/system/configurl/structure')}</option>
+                                <option value="mangatypehtml/{id}/index">1.mangatypehtml/id/</option>
+                                <option value="mangatypehtml/{md5}/index">2.mangatypehtml/md5值/</option>
+                                </option>
+                                <option value="mangatypehtml/{en}/index">3.mangatypehtml/en/</option>
+                                <option value="mangatypehtml/{id}">4.mangatypehtml/id.html</option>
+                                <option value="mangatypehtml/{md5}">5.mangatypehtml/md5.html</option>
+                                <option value="mangatypehtml/{en}">6.mangatypehtml/en.html</option>
+                            </select>
+                        </div>
+                        <div class="layui-input-inline w500">
+                            {:lang('admin/system/configurl/variable')}:{id} {en} {type_pid} {type_pen} {md5}
+                        </div>
+                    </div>
+
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_detail')}:</label>
+                        <div class="layui-input-inline w400">
+                            <input type="text" name="path[manga_detail]" placeholder=""
+                                value="{$config['path']['manga_detail']}" class="layui-input ">
+                        </div>
+                        <div class="layui-input-inline">
+                            <select lay-filter="select_path" onChange="sethtmldir('path[manga_detail]',this.value);">
+                                <option>{:lang('admin/system/configurl/structure')}</option>
+                                <option value="mangahtml/{id}/index">1.mangahtml/id/</option>
+                                <option value="mangahtml/{md5}/index">2.mangahtml/md5值/</option>
+                                </option>
+                                <option value="mangahtml/{en}/index">3.mangahtml/en/</option>
+                                <option value="mangahtml/{id}">4.mangahtml/id.html</option>
+                                <option value="mangahtml/{md5}">5.mangahtml/md5.html</option>
+                                <option value="mangahtml/{en}">6.mangahtml/en.html</option>
+                            </select>
+                        </div>
+                        <div class="layui-input-inline w600">
+                            {:lang('admin/system/configurl/variable')}:{id} {en} {type_id} {type_en} {type_pid}
+                            {type_pen} {year} {month} {day} {md5}
+                        </div>
+                    </div>
+
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_read')}:</label>
+                        <div class="layui-input-inline w400">
+                            <input type="text" name="path[manga_read]" placeholder=""
+                                value="{$config['path']['manga_read']}" class="layui-input ">
+                        </div>
+                        <div class="layui-input-inline">
+                            <select lay-filter="select_path" onChange="sethtmldir('path[manga_read]',this.value);">
+                                <option>{:lang('admin/system/configurl/structure')}</option>
+                                <option value="mangareadhtml/{id}/index">1.mangareadhtml/id/</option>
+                                <option value="mangareadhtml/{md5}/index">2.mangareadhtml/md5值/</option>
+                                </option>
+                                <option value="mangareadhtml/{en}/index">3.mangareadhtml/en/</option>
+                                <option value="mangareadhtml/{id}">4.mangareadhtml/id.html</option>
+                                <option value="mangareadhtml/{md5}">5.mangareadhtml/md5.html</option>
+                                <option value="mangareadhtml/{en}">6.mangareadhtml/en.html</option>
+                            </select>
+                        </div>
+                        <div class="layui-input-inline w600">
+                            {:lang('admin/system/configurl/variable')}:{id} {en} {type_id} {type_en} {type_pid}
+                            {type_pen} {year} {month} {day} {md5}
+                        </div>
+                    </div>
+
+                    <div class="layui-form-item">
+                        <label class="layui-form-label">{:lang('admin/system/configurl/manga_down')}:</label>
+                        <div class="layui-input-inline w400">
+                            <input type="text" name="path[manga_down]" placeholder=""
+                                value="{$config['path']['manga_down']}" class="layui-input ">
+                        </div>
+                        <div class="layui-input-inline">
+                            <select lay-filter="select_path" onChange="sethtmldir('path[manga_down]',this.value);">
+                                <option>{:lang('admin/system/configurl/structure')}</option>
+                                <option value="mangadownhtml/{id}/index">1.mangadownhtml/id/</option>
+                                <option value="mangadownhtml/{md5}/index">2.mangadownhtml/md5值/</option>
+                                </option>
+                                <option value="mangadownhtml/{en}/index">3.mangadownhtml/en/</option>
+                                <option value="mangadownhtml/{id}">4.mangadownhtml/id.html</option>
+                                <option value="mangadownhtml/{md5}">5.mangadownhtml/md5.html</option>
+                                <option value="mangadownhtml/{en}">6.mangadownhtml/en.html</option>
+                            </select>
+                        </div>
+                        <div class="layui-input-inline w600">
+                            {:lang('admin/system/configurl/variable')}:{id} {en} {type_id} {type_en} {type_pid}
+                            {type_pen} {year} {month} {day} {md5}
+                        </div>
+                    </div>
+
                     <div class="layui-form-item">
                         <label class="layui-form-label">{:lang('admin/system/configurl/multipage_connector')}:</label>
                         <div class="layui-input-inline w400">
@@ -456,6 +589,14 @@
                                 <option value="2" {if condition="$config['rewrite']['website_id'] eq 2" }selected{/if}>{:lang('encode_id')}</option>
                             </select>
                         </div>
+                        <label class="layui-form-label">{:lang('manga_id')}:</label>
+                        <div class="layui-input-inline w100">
+                            <select name="rewrite[manga_id]">
+                                <option value="0" {if condition="$config['rewrite']['manga_id'] eq 0" }selected{/if}>{:lang('num_id')}</option>
+                                <option value="1" {if condition="$config['rewrite']['manga_id'] eq 1" }selected{/if}>{:lang('en')}</option>
+                                <option value="2" {if condition="$config['rewrite']['manga_id'] eq 2" }selected{/if}>{:lang('encode_id')}</option>
+                            </select>
+                        </div>
 
                     </div>
 

+ 5 - 0
application/admin/view_new/urlsend/index.html

@@ -98,6 +98,11 @@
                 <input type="button" value="{:lang('all')}{:lang('website')}" class="layui-btn layui-btn-primary"
                     onclick="post('ac2=all&mid=11');">
                 <hr class="layui-bg-gray">
+                <input type="button" value="{:lang('that_day')}{:lang('manga')}" class="layui-btn layui-btn-primary"
+                    onclick="post('ac2=today&mid=12');">
+                <input type="button" value="{:lang('all')}{:lang('manga')}" class="layui-btn layui-btn-primary"
+                    onclick="post('ac2=all&mid=12');">
+                <hr class="layui-bg-gray">
                 {if condition="$urlsend_break_baidu_push neq ''"}
                 <a href="{$urlsend_break_baidu_push}"
                     class="layui-btn layui-btn-danger ">【{:lang('admin/urlsend/in_break_point_exec')}】</a>

+ 14 - 0
application/api/controller/Manga.php

@@ -16,6 +16,13 @@ class Manga extends Base
     public function get_list(Request $request)
     {
         $param = $request->param();
+        $validate = validate($request->controller());
+        if (!$validate->scene($request->action())->check($param)) {
+            return json([
+                'code' => 1001,
+                'msg'  => '参数错误: ' . $validate->getError(),
+            ]);
+        }
         $param['page'] = intval($param['page']) < 1 ? 1 : intval($param['page']);
         $param['limit'] = intval($param['limit']) < 1 ? 20 : intval($param['limit']);
 
@@ -45,6 +52,13 @@ class Manga extends Base
     public function get_detail(Request $request)
     {
         $param = $request->param();
+        $validate = validate($request->controller());
+        if (!$validate->scene($request->action())->check($param)) {
+            return json([
+                'code' => 1001,
+                'msg'  => '参数错误: ' . $validate->getError(),
+            ]);
+        }
         $where = [];
         $where['manga_status'] = ['eq', 1];
 

+ 27 - 0
application/api/validate/Manga.php

@@ -0,0 +1,27 @@
+<?php
+namespace app\api\validate;
+
+use think\Validate;
+
+class Manga extends Validate
+{
+    protected $rule = [
+        'id'    => 'require|number',
+        't'     => 'number',
+        'page'  => 'number',
+        'limit' => 'number',
+        'ids'   => 'max:255',
+        'wd'    => 'max:100',
+        'order' => 'in:manga_time desc,manga_time asc,manga_hits desc,manga_hits asc',
+    ];
+
+    protected $message = [
+        'id.require' => 'id is required',
+        'id.number' => 'id must be a number',
+    ];
+
+    protected $scene = [
+        'get_list' => ['t', 'page', 'limit', 'ids', 'wd', 'order'],
+        'get_detail' => ['id'],
+    ];
+}

+ 47 - 1
application/common/model/Collect.php

@@ -2872,7 +2872,53 @@ class Collect extends Base {
                     $des= lang('model/collect/add_ok');
                 }
                 else{
-                    $des = lang('model/collect/not_need_update');
+                    if(empty($config['uprule'])){
+                        $des = lang('model/collect/uprule_empty');
+                    }
+                    elseif ($info['manga_lock'] == 1) {
+                        $des = lang('model/collect/data_lock');
+                    }
+                    else {
+                        $update = [];
+                        $ec=false;
+
+                        if (strpos(',' . $config['uprule'], 'a')!==false && !empty($v['manga_play_from'])) {
+                            $old_play_from = $info['manga_chapter_from'];
+                            $old_play_url = $info['manga_chapter_url'];
+                            
+                            $cj_play_from_arr = explode('$$$',$v['manga_play_from'] );
+                            $cj_play_url_arr = explode('$$$',$v['manga_play_url']);
+
+                            foreach ($cj_play_from_arr as $k2 => $v2) {
+                                $cj_play_from = $v2;
+                                $cj_play_url = $cj_play_url_arr[$k2];
+                                if (strpos('$$$'.$info['manga_chapter_from'].'$$$', '$$$'.$cj_play_from.'$$$') === false) {
+                                    if(!empty($old_play_from)){
+                                        $old_play_url .="$$$";
+                                        $old_play_from .= "$$$" ;
+                                    }
+                                    $old_play_url .= "" . $cj_play_url;
+                                    $old_play_from .= "" . $cj_play_from;
+                                    $ec=true;
+                                }
+                            }
+                            if($ec) {
+                                $update['manga_chapter_from'] = $old_play_from;
+                                $update['manga_chapter_url'] = $old_play_url;
+                            }
+                        }
+
+                        if(count($update)>0){
+                            $update['manga_time'] = time();
+                            $where = [];
+                            $where['manga_id'] = $info['manga_id'];
+                            $res = model('Manga')->where($where)->update($update);
+                            $color = 'green';
+                        }
+                        else{
+                            $des = lang('model/collect/not_need_update');
+                        }
+                    }
                 }
             }
             if($show==1) {

+ 37 - 0
application/common/taglib/Maccms.php

@@ -21,6 +21,7 @@ class Maccms extends Taglib {
         'actor'=>['attr' =>'order,by,start,num,paging,pageurl,id,ids,not,area,sex,name,level,letter,type,typenot,starsign,blood,half,timeadd,timehits,time,cachetime'],
         'topic' => ['attr' =>'order,by,start,num,id,ids,not,paging,pageurl,class,tag,half,timeadd,timehits,time,cachetime'],
         'art' => ['attr' =>'order,by,start,num,id,ids,not,paging,pageurl,type,typenot,class,tag,level,letter,half,rel,timeadd,timehits,time,hitsmonth,hitsweek,hitsday,hits,cachetime'],
+        'manga' => ['attr' =>'order,by,start,num,id,ids,not,paging,pageurl,type,typenot,class,tag,area,lang,year,level,letter,half,rel,version,state,tv,weekday,timeadd,timehits,time,hitsmonth,hitsweek,hitsday,hits,isend,cachetime'],
         'vod' => ['attr' =>'order,by,start,num,id,ids,not,paging,pageurl,type,typenot,class,tag,area,lang,year,level,letter,half,rel,version,state,tv,weekday,timeadd,timehits,time,hitsmonth,hitsweek,hitsday,hits,isend,cachetime'],
         'website'=>['attr' =>'order,by,start,num,paging,pageurl,id,ids,not,area,lang,name,level,letter,type,typenot,half,timeadd,timehits,time,cachetime'],
         'foreach' => ['attr'=>'name,id,key'],
@@ -597,6 +598,42 @@ class Maccms extends Taglib {
         return $parse;
     }
 
+    public function tagManga($tag,$content)
+    {
+        if(empty($tag['id'])){
+            $tag['id'] = 'vo';
+        }
+        if(empty($tag['key'])){
+            $tag['key'] = 'key';
+        }
+
+        $parse = '<?php ';
+        $parse .= '$__TAG__ = \'' . json_encode($tag) . '\';';
+        $parse .= '$__LIST__ = model("Manga")->listCacheData($__TAG__);';
+        if($tag['paging']=='yes'){
+            $parse .= '$__PAGING__ = mac_page_param($__LIST__[\'total\'],$__LIST__[\'limit\'],$__LIST__[\'page\'],$__LIST__[\'pageurl\'],$__LIST__[\'half\']);';
+        }
+        $parse .= ' ?>';
+        $parse .= '{volist name="__LIST__[\'list\']" id="'.$tag['id'].'" key="'.$tag['key'].'"';
+        if(!empty($tag['offset'])){
+            $parse .= ' offset="'.$tag['offset'].'"';
+        }
+        if(!empty($tag['length'])){
+            $parse .= ' length="'.$tag['length'].'"';
+        }
+        if(!empty($tag['mod'])){
+            $parse .= ' mod="'.$tag['mod'].'"';
+        }
+        if(!empty($tag['empty'])){
+            $parse .= ' empty="'.$tag['empty'].'"';
+        }
+        $parse .= '}';
+        $parse .= $content;
+        $parse .= '{/volist}';
+
+        return $parse;
+    }
+
     public function tagVod($tag,$content)
     {
         if(empty($tag['id'])){

+ 1 - 1
application/index/controller/User.php

@@ -831,7 +831,7 @@ class User extends Base
 
         $this->assign('param',$param);
         $this->assign('list', $res['list']);
-        $pages = mac_page_param($res['total'], $param['limit'], $param['page'], url('user/plog', ['page' => 'PAGELINK']));
+        $pages = mac_page_param($res['total'], $param['limit'], $param['page'], url('user/reward', ['level'=>$param['level'], 'page' => 'PAGELINK']));
         $this->assign('__PAGING__', $pages);
         return $this->fetch('user/reward');
     }

+ 12 - 0
application/lang/de-de.php

@@ -353,6 +353,7 @@ return array (
   'encode_id' => 'Verschlüsselte ID',
   'vod_id' => 'Video-ID',
   'art_id' => 'Artikel-ID',
+  'manga_id' => 'Manga-ID',
   'topic_id' => 'Themen-ID',
   'actor_id' => 'actor ID',
   'role_id' => 'Rollen-ID',
@@ -519,6 +520,9 @@ https://www.baidu.com/123.jpg',
   'menu/website_data_audit' => 'Ungeprüfte URL',
   'menu/website_batch' => 'Batch-Vorgangs-URL',
   'menu/website_repeat' => 'URL-Daten duplizieren',
+  'menu/manga_data_url_empty' => 'Manga ohne URL',
+  'menu/manga_data_points' => 'Manga mit Punkteanforderung',
+  'menu/manga_data_points' => 'Punkte für Comics erforderlich',
   'menu/users' => 'Benutzer',
   'menu/admin' => 'Administrator',
   'menu/group' => 'Mitgliedergruppe',
@@ -967,6 +971,7 @@ https://www.baidu.com/123.jpg',
   'admin/system/configcollect/actor' => 'Actor-Sammlungseinstellungen',
   'admin/system/configcollect/role' => 'Rollensammlungseinstellungen',
   'admin/system/configcollect/website' => 'Website-Sammlungseinstellungen',
+  'admin/system/configcollect/manga' => 'Manga-Sammlungseinstellungen',
   'admin/system/configcollect/comment' => 'Einstellungen für die Kommentarsammlung',
   'admin/system/configcollect/status' => 'Datenstatus',
   'admin/system/configcollect/words' => 'Sammlungsvokabulareinstellungen',
@@ -1911,7 +1916,14 @@ Nota: Se tanto a lista negra quanto a lista branca forem preenchidas, a polític
   'validate/require_ip' => 'IP é obrigatório',
   'validate/require_time' => 'Tempo é obrigatório',
   'manga' => 'Comics',
+  'admin/manga/title' => 'Manga-Verwaltung',
+  'admin/manga/new_version_notice' => 'Eine neue Version des Manga-Moduls ist verfügbar. Bitte wechseln Sie zur neuen Version des Backends, um die volle Funktionalität zu erleben.',
   'admin/system/configapi/manga'=>'Manga-API-Einstellungen',
   'admin/system/configapi/manga_tip'=>'Tipps:<br>1,Manga-Listen-URL /api.php/provide/manga/?ac=list<br>2,Manga-Detail-URL /api.php/provide/manga/?ac=detail',
   'admin/system/configapi/datafilter_tip_manga'=>'SQL-Abfragebedingung z.B. manga_status=1',
+  'admin/system/configurl/manga_type' => 'Manga-Kategorien',
+  'admin/system/configurl/manga_show' => 'Manga-Kategoriefilter',
+  'admin/system/configurl/manga_detail' => 'Manga-Details',
+  'admin/system/configurl/manga_read' => 'Manga lesen',
+  'admin/system/configurl/manga_down' => 'Manga-Download',
 );

+ 11 - 0
application/lang/en-us.php

@@ -353,6 +353,7 @@ return array (
   'encode_id' => 'Encrypted ID',
   'vod_id' => 'Video ID',
   'art_id' => 'Article ID',
+  'manga_id' => 'Manga ID',
   'topic_id' => 'Topic ID',
   'actor_id' => 'Actor ID',
   'role_id' => 'Role ID',
@@ -519,6 +520,8 @@ https://www.baidu.com/123.jpg',
   'menu/website_data_audit' => 'Unaudited Websites',
   'menu/website_batch' => 'Batch Operation Websites',
   'menu/website_repeat' => 'Duplicate Website Data',
+  'menu/manga_data_url_empty' => 'Manga without URL',
+  'menu/manga_data_points' => 'Manga requiring points',
   'menu/users' => 'Users',
   'menu/admin' => 'Administrators',
   'menu/group' => 'Member Groups',
@@ -967,6 +970,7 @@ https://www.baidu.com/123.jpg',
   'admin/system/configcollect/actor' => 'Actor Collection Settings',
   'admin/system/configcollect/role' => 'Role Collection Settings',
   'admin/system/configcollect/website' => 'Website Collection Settings',
+  'admin/system/configcollect/manga' => 'Manga Collection Settings',
   'admin/system/configcollect/comment' => 'Comment Collection Settings',
   'admin/system/configcollect/status' => 'Data Status',
   'admin/system/configcollect/words' => 'Collection Thesaurus Settings',
@@ -1207,6 +1211,11 @@ Note: If both black and white lists are filled, both policies will take effect.'
   'admin/system/configurl/vod_play' => 'Video Playback',
   'admin/system/configurl/vod_down' => 'Video Download',
   'admin/system/configurl/art_detail' => 'Article Details',
+  'admin/system/configurl/manga_type' => 'Manga Categories',
+  'admin/system/configurl/manga_show' => 'Manga Category Filtering',
+  'admin/system/configurl/manga_detail' => 'Manga Details',
+  'admin/system/configurl/manga_read' => 'Manga Read',
+  'admin/system/configurl/manga_down' => 'Manga Download',
   'admin/system/configurl/variable' => 'Variables',
   'admin/system/configurl/structure' => 'Common Structures',
   'admin/system/configurl/multipage_connector' => 'Multi-page Connector',
@@ -1919,6 +1928,8 @@ Note: If both black and white lists are filled, both policies will take effect.'
   'validate/require_ip' => 'IP address is required',
   'validate/require_time' => 'Time is required',
   'manga' => 'Manga',
+  'admin/manga/title' => 'Manga management',
+  'admin/manga/new_version_notice' => 'A new version of the manga module is available, please switch to the new version of the background to experience the full function.',
   'admin/system/configapi/manga'=>'Manga API Settings',
   'admin/system/configapi/manga_tip'=>'Tips:<br>1,Manga list url /api.php/provide/manga/?ac=list<br>2,Manga detail url /api.php/provide/manga/?ac=detail',
   'admin/system/configapi/datafilter_tip_manga'=>'SQL query condition e.g. manga_status=1',

+ 11 - 0
application/lang/es-es.php

@@ -353,6 +353,7 @@ return array (
   'encode_id' => 'ID codificado',
   'vod_id' => 'ID de video',
   'art_id' => 'ID de artículo',
+  'manga_id' => 'ID de Manga',
   'topic_id' => 'ID de tema',
   'actor_id' => 'ID de actor',
   'role_id' => 'ID de rol',
@@ -520,6 +521,8 @@ https://www.baidu.com/123.jpg
   'menu/website_data_audit' => 'Sitios Web No Auditados',
   'menu/website_batch' => 'Operaciones Masivas de Sitios Web',
   'menu/website_repeat' => 'Sitios Web Duplicados',
+  'menu/manga_data_url_empty' => 'Manga sin URL',
+  'menu/manga_data_points' => 'Manga que requiere puntos',
   'menu/users' => 'Usuarios',
   'menu/admin' => 'Administradores',
   'menu/group' => 'Grupos de Usuarios',
@@ -968,6 +971,7 @@ https://www.baidu.com/123.jpg
   'admin/system/configcollect/actor' => 'Configuración de Recolección de Actores',
   'admin/system/configcollect/role' => 'Configuración de Recolección de Roles',
   'admin/system/configcollect/website' => 'Configuración de Recolección de Sitios Web',
+  'admin/system/configcollect/manga' => 'Configuración de Recolección de Manga',
   'admin/system/configcollect/comment' => 'Configuración de Recolección de Comentarios',
   'admin/system/configcollect/status' => 'Estado de los Datos',
   'admin/system/configcollect/words' => 'Configuración del Diccionario de Recolección',
@@ -1208,6 +1212,11 @@ Nota: Si se especifican listas negras y blancas, ambas se aplicarán simultánea
   'admin/system/configurl/vod_play' => 'Reproducción de Video',
   'admin/system/configurl/vod_down' => 'Descarga de Video',
   'admin/system/configurl/art_detail' => 'Detalle de Artículo',
+  'admin/system/configurl/manga_type' => 'Categorías de Manga',
+  'admin/system/configurl/manga_show' => 'Filtro de Categorías de Manga',
+  'admin/system/configurl/manga_detail' => 'Detalles de Manga',
+  'admin/system/configurl/manga_read' => 'Leer Manga',
+  'admin/system/configurl/manga_down' => 'Descargar Manga',
   'admin/system/configurl/variable' => 'Variable',
   'admin/system/configurl/structure' => 'Estructura Común',
   'admin/system/configurl/multipage_connector' => 'Conector de Páginas Múltiples',
@@ -1919,6 +1928,8 @@ Nota: Si se especifican listas negras y blancas, ambas se aplicarán simultánea
   'validate/require_ip' => 'Se requiere la dirección IP',
   'validate/require_time' => 'Se requiere la hora',
   'manga' => 'historietas',
+  'admin/manga/title' => 'Gestión de manga',
+  'admin/manga/new_version_notice' => 'Hay una nueva versión del módulo de manga disponible, cambie a la nueva versión del backend para experimentar la funcionalidad completa.',
   'admin/system/configapi/manga'=>'Configuración de la API de Manga',
   'admin/system/configapi/manga_tip'=>'Consejos:<br>1,URL de la lista de manga /api.php/provide/manga/?ac=list<br>2,URL de detalles del manga /api.php/provide/manga/?ac=detail',
   'admin/system/configapi/datafilter_tip_manga'=>'Condición de consulta SQL, por ejemplo, manga_status=1',

+ 11 - 0
application/lang/fr-fr.php

@@ -353,6 +353,7 @@ return array (
   'encode_id' => 'ID encodé',
   'vod_id' => 'ID vidéo',
   'art_id' => 'ID article',
+  'manga_id' => 'ID de Manga',
   'topic_id' => 'ID de sujet',
   'actor_id' => 'ID d\'acteur',
   'role_id' => 'ID de rôle',
@@ -519,6 +520,8 @@ https://www.baidu.com/123.jpg',
   'menu/website_data_audit' => 'Sites web non vérifiés',
   'menu/website_batch' => 'Opérations groupées sur les sites web',
   'menu/website_repeat' => 'Données de sites web en double',
+  'menu/manga_data_url_empty' => 'Manga sans URL',
+  'menu/manga_data_points' => 'Manga nécessitant des points',
   'menu/users' => 'Utilisateurs',
   'menu/admin' => 'Administrateurs',
   'menu/group' => 'Groupes de membres',
@@ -967,6 +970,7 @@ https://www.baidu.com/123.jpg',
   'admin/system/configcollect/actor' => 'Paramètres de collecte d\'acteurs',
   'admin/system/configcollect/role' => 'Paramètres de collecte de rôles',
   'admin/system/configcollect/website' => 'Paramètres de collecte de sites web',
+  'admin/system/configcollect/manga' => 'Paramètres de collecte de mangas',
   'admin/system/configcollect/comment' => 'Paramètres de collecte de commentaires',
   'admin/system/configcollect/status' => 'Statut des données',
   'admin/system/configcollect/words' => 'Paramètres du dictionnaire de collecte',
@@ -1207,6 +1211,11 @@ Note: Si les listes noires et blanches sont remplies, les stratégies s\'appliqu
   'admin/system/configurl/vod_play' => 'Lecture de la vidéo',
   'admin/system/configurl/vod_down' => 'Téléchargement de la vidéo',
   'admin/system/configurl/art_detail' => 'Détail de l\'article',
+  'admin/system/configurl/manga_type' => 'Catégories de Manga',
+  'admin/system/configurl/manga_show' => 'Filtre de Catégories de Manga',
+  'admin/system/configurl/manga_detail' => 'Détails de Manga',
+  'admin/system/configurl/manga_read' => 'Lire un Manga',
+  'admin/system/configurl/manga_down' => 'Télécharger un Manga',
   'admin/system/configurl/variable' => 'Variable',
   'admin/system/configurl/structure' => 'Structure courante',
   'admin/system/configurl/multipage_connector' => 'Connecteur de pagination',
@@ -1919,6 +1928,8 @@ Note: Si les listes noires et blanches sont remplies, les stratégies s\'appliqu
   'validate/require_ip' => 'Adresse IP requise',
   'validate/require_time' => 'Temps requis',
   'manga' => 'bandes dessinées',
+  'admin/manga/title' => 'Gestion des mangas',
+  'admin/manga/new_version_notice' => 'Une nouvelle version du module manga est disponible, veuillez passer à la nouvelle version du backend pour profiter de toutes les fonctionnalités.',
   'admin/system/configapi/manga'=>'Paramètres de l\'API Manga',
   'admin/system/configapi/manga_tip'=>'Conseils:<br>1,URL de la liste des mangas /api.php/provide/manga/?ac=list<br>2,URL des détails du manga /api.php/provide/manga/?ac=detail',
   'admin/system/configapi/datafilter_tip_manga'=>'Condition de requête SQL, par exemple manga_status=1',

+ 11 - 0
application/lang/ja-jp.php

@@ -353,6 +353,7 @@ return array (
   'encode_id' => '暗号化ID',
   'vod_id' => 'ビデオID',
   'art_id' => '記事ID',
+  'manga_id' => '漫画ID',
   'topic_id' => '特集ID',
   'actor_id' => '俳優ID',
   'role_id' => '役割ID',
@@ -520,6 +521,8 @@ https://www.baidu.com/123.jpg
   'menu/website_data_audit' => 'レビューされていないWebサイト',
   'menu/website_batch' => 'Webサイトの一括操作',
   'menu/website_repeat' => '重複するWebサイトデータ',
+  'menu/manga_data_url_empty' => 'URLなしの漫画',
+  'menu/manga_data_points' => 'ポイントが必要な漫画',
   'menu/users' => 'ユーザー',
   'menu/admin' => '管理者',
   'menu/group' => '会員グループ',
@@ -968,6 +971,7 @@ https://www.baidu.com/123.jpg
   'admin/system/configcollect/actor' => '俳優収集設定',
   'admin/system/configcollect/role' => '役割収集設定',
   'admin/system/configcollect/website' => 'Webサイト収集設定',
+  'admin/system/configcollect/manga' => '漫画収集設定',
   'admin/system/configcollect/comment' => 'コメント収集設定',
   'admin/system/configcollect/status' => 'データ状態',
   'admin/system/configcollect/words' => '収集シソーラス設定',
@@ -1208,6 +1212,11 @@ https://www.baidu.com/123.jpg
   'admin/system/configurl/vod_play' => 'ビデオの再生',
   'admin/system/configurl/vod_down' => 'ビデオのダウンロード',
   'admin/system/configurl/art_detail' => '記事の詳細',
+  'admin/system/configurl/manga_type' => '漫画カテゴリ',
+  'admin/system/configurl/manga_show' => '漫画カテゴリのフィルタリング',
+  'admin/system/configurl/manga_detail' => '漫画の詳細',
+  'admin/system/configurl/manga_read' => '漫画を読む',
+  'admin/system/configurl/manga_down' => '漫画をダウンロード',
   'admin/system/configurl/variable' => '変数',
   'admin/system/configurl/structure' => '一般的な構造',
   'admin/system/configurl/multipage_connector' => '複数ページのコネクタ',
@@ -1923,6 +1932,8 @@ https://www.baidu.com/123.jpg
   'validate/require_ip' => 'ipは必須',
   'validate/require_time' => '時間は必須',
   'manga' => '漫画',
+  'admin/manga/title' => '漫画管理',
+  'admin/manga/new_version_notice' => '漫画モジュールの新しいバージョンが利用可能です。完全な機能を利用するには、新しいバージョンのバックエンドに切り替えてください。',
   'admin/system/configapi/manga'=>'漫画API設定',
   'admin/system/configapi/manga_tip'=>'ヒント情報:<br>1,漫画リストアドレス/api.php/provide/manga/?ac=list<br>2,漫画詳細アドレス/api.php/provide/manga/?ac=detail',
   'admin/system/configapi/datafilter_tip_manga'=>'SQLクエリ条件 例:manga_status=1',

+ 14 - 3
application/lang/ko-kr.php

@@ -353,6 +353,7 @@ return array (
   'encode_id' => '암호화 ID',
   'vod_id' => '동영상 ID',
   'art_id' => '기사 ID',
+  'manga_id' => '만화 ID',
   'topic_id' => '특집 ID',
   'actor_id' => '배우 ID',
   'role_id' => '역할 ID',
@@ -520,6 +521,8 @@ https://www.baidu.com/123.jpg
   'menu/website_data_audit' => '심사되지 않은 웹사이트',
   'menu/website_batch' => '웹사이트 일괄 작업',
   'menu/website_repeat' => '중복된 웹사이트 데이터',
+  'menu/manga_data_url_empty' => '주소 없는 만화',
+  'menu/manga_data_points' => '포인트가 필요한 만화',
   'menu/users' => '사용자',
   'menu/admin' => '관리자',
   'menu/group' => '회원 그룹',
@@ -968,6 +971,7 @@ https://www.baidu.com/123.jpg
   'admin/system/configcollect/actor' => '배우 수집 설정',
   'admin/system/configcollect/role' => '역할 수집 설정',
   'admin/system/configcollect/website' => '웹사이트 수집 설정',
+  'admin/system/configcollect/manga' => '만화 수집 설정',
   'admin/system/configcollect/comment' => '댓글 수집 설정',
   'admin/system/configcollect/status' => '데이터 상태',
   'admin/system/configcollect/words' => '수집 어휘 설정',
@@ -1206,6 +1210,11 @@ https://www.baidu.com/123.jpg
   'admin/system/configurl/vod_play' => '동영상 재생',
   'admin/system/configurl/vod_down' => '동영상 다운로드',
   'admin/system/configurl/art_detail' => '기사 자세히 보기',
+  'admin/system/configurl/manga_type' => '만화 카테고리',
+  'admin/system/configurl/manga_show' => '만화 카테고리 필터링',
+  'admin/system/configurl/manga_detail' => '만화 자세히 보기',
+  'admin/system/configurl/manga_read' => '만화 읽기',
+  'admin/system/configurl/manga_down' => '만화 다운로드',
   'admin/system/configurl/variable' => '변수',
   'admin/system/configurl/structure' => '일반적인 구조',
   'admin/system/configurl/multipage_connector' => '다중 페이지 연결 기호',
@@ -1817,9 +1826,9 @@ https://www.baidu.com/123.jpg
                 어떠한 경우에도 저자는 이 소프트웨어의 사용 또는 사용 불가로 인해 발생하는 손해에 대해 책임을 지지 않습니다. 저자는 이 소프트웨어에 포함된 자료, 텍스트, 그래픽, 링크 또는 기타 사항의 정확성이나 완전성을 보증하지 않습니다. 저자는 언제든지 이 소프트웨어를 변경할 수 있으며 별도의 통지 없이 변경할 수 있습니다. <br />
                 사용자가 직접 제작, 다운로드, 사용하는 타사 정보 데이터 및 플러그인으로 인해 발생하는 모든 저작권 문제 또는 분쟁에 대해 이 소프트웨어는 책임을 지지 않습니다.<br /><br />
                 3. 계약에 따른 제약 및 제한: <br />
-                (Apple CMS) 소스 코드에서 저작권 정보를 제거하는 것은 금지되어 있으며 상업용 라이선스 버전에서는 백엔드 인터페이스 및 프런트엔드 인터페이스의 관련 저작권 정보를 제거할 수 있습니다.</br>
-                (Apple CMS) 전체 또는 일부를 기반으로 파생 버전, 수정 버전 또는 타사 버전을 개발하여 재배포하는 것은 금지되어 있습니다.</br></br>
-                <strong>저작권 (c) 2020, Apple CMS, 모든 권리 보유</strong>.',
+                (Apple CMS) 소스 코드에서 저작권 정보를 제거하는 것은 금지되어 있으며 상업용 라이선스 버전에서는 백엔드 인터페이스 및 프런트엔드 인터페이스의 관련 저작권 정보를 제거할 수 있습니다</br>
+                (Apple CMS) 전체 또는 일부를 기반으로 파생 버전, 수정 버전 또는 타사 버전을 개발하여 재배포하는 것은 금지되어 있습니다</br></br>
+                <strong>저작권 (c) 2020, Apple CMS, 모든 권리 보유</strong>',
   'install/user_agreement_agree' => '계약에 동의하고 시스템 설치',
   'install/environment_title' => '운영 환경 검사',
   'install/environment_name' => '환경 이름',
@@ -1922,6 +1931,8 @@ https://www.baidu.com/123.jpg
   'validate/require_ip' => 'IP는 필수입니다.',
   'validate/require_time' => '시간은 필수입니다.',
   'manga' => '만화',
+  'admin/manga/title' => '만화 관리',
+  'admin/manga/new_version_notice' => '만화 모듈의 새 버전을 사용할 수 있습니다. 전체 기능을 경험하려면 새 버전의 백엔드로 전환하십시오.',
   'admin/system/configapi/manga'=>'만화 API 설정',
   'admin/system/configapi/manga_tip'=>'팁 정보:<br>1,만화 목록 주소 /api.php/provide/manga/?ac=list<br>2,만화 상세 주소 /api.php/provide/manga/?ac=detail',
   'admin/system/configapi/datafilter_tip_manga'=>'SQL 쿼리 조건 예: manga_status=1',

+ 11 - 0
application/lang/pt-pt.php

@@ -353,6 +353,7 @@ return array (
   'encode_id' => 'ID criptografado',
   'vod_id' => 'ID do vídeo',
   'art_id' => 'ID do artigo',
+  'manga_id' => 'ID do Manga',
   'topic_id' => 'ID do tópico',
   'actor_id' => 'ID do ator',
   'role_id' => 'ID do papel',
@@ -520,6 +521,8 @@ https://www.baidu.com/123.jpg
   'menu/website_data_audit' => 'Site não auditado',
   'menu/website_batch' => 'Operação em lote de sites',
   'menu/website_repeat' => 'Dados de sites com nomes duplicados',
+  'menu/manga_data_url_empty' => 'Manga sem URL',
+  'menu/manga_data_points' => 'Manga que requer pontos',
   'menu/users' => 'Usuários',
   'menu/admin' => 'Administrador',
   'menu/group' => 'Grupo de membros',
@@ -968,6 +971,7 @@ https://www.baidu.com/123.jpg
   'admin/system/configcollect/actor' => 'Configurações de coleta de ator',
   'admin/system/configcollect/role' => 'Configurações de coleta de papel',
   'admin/system/configcollect/website' => 'Configurações de coleta de site',
+  'admin/system/configcollect/manga' => 'Configurações de Coleta de Mangá',
   'admin/system/configcollect/comment' => 'Configurações de coleta de comentário',
   'admin/system/configcollect/status' => 'Status dos dados',
   'admin/system/configcollect/words' => 'Configurações do tesauro de coleta',
@@ -1206,6 +1210,11 @@ https://www.baidu.com/123.jpg
   'admin/system/configurl/vod_play' => 'Reprodução de vídeo',
   'admin/system/configurl/vod_down' => 'Download de vídeo',
   'admin/system/configurl/art_detail' => 'Detalhes do artigo',
+  'admin/system/configurl/manga_type' => 'Categorias de Manga',
+  'admin/system/configurl/manga_show' => 'Filtro de Categorias de Manga',
+  'admin/system/configurl/manga_detail' => 'Detalhes do Manga',
+  'admin/system/configurl/manga_read' => 'Ler Manga',
+  'admin/system/configurl/manga_down' => 'Baixar Manga',
   'admin/system/configurl/variable' => 'Variável',
   'admin/system/configurl/structure' => 'Estrutura comum',
   'admin/system/configurl/multipage_connector' => 'Conector de várias páginas',
@@ -1923,6 +1932,8 @@ https://www.baidu.com/123.jpg
   'validate/require_ip' => 'O IP é obrigatório',
   'validate/require_time' => 'O tempo é obrigatório',
   'manga' => 'quadrinhos',
+  'admin/manga/title' => 'Gerenciamento de mangá',
+  'admin/manga/new_version_notice' => 'Uma nova versão do módulo de mangá está disponível, por favor, mude para a nova versão do backend para experimentar a funcionalidade completa.',
   'admin/system/configapi/manga'=>'Configurações da API de Manga',
   'admin/system/configapi/manga_tip'=>'Dicas:<br>1,URL da lista de manga /api.php/provide/manga/?ac=list<br>2,URL dos detalhes do manga /api.php/provide/manga/?ac=detail',
   'admin/system/configapi/datafilter_tip_manga'=>'Condição de consulta SQL, por exemplo, manga_status=1',

+ 11 - 0
application/lang/zh-cn.php

@@ -383,6 +383,7 @@ return [
     'encode_id'=>'加密ID',
     'vod_id'=>'视频ID',
     'art_id'=>'文章ID',
+    'manga_id'=>'漫画ID',
     'type_id'=>'分类ID',
     'topic_id'=>'专题ID',
     'actor_id'=>'演员ID',
@@ -557,6 +558,8 @@ https://www.baidu.com/123.jpg
     'menu/website_data_audit'=>'未审核网址',
     'menu/website_batch'=>'批量操作网址',
     'menu/website_repeat'=>'重名网址数据',
+    'menu/manga_data_url_empty' => '无地址漫画',
+    'menu/manga_data_points' => '需积分漫画',
     'menu/users'=>'用户',
     'menu/admin'=>'管理员',
     'menu/group'=>'会员组',
@@ -1043,6 +1046,7 @@ https://www.baidu.com/123.jpg
     'admin/system/configcollect/actor'=>'演员采集设置',
     'admin/system/configcollect/role'=>'角色采集设置',
     'admin/system/configcollect/website'=>'网址采集设置',
+    'admin/system/configcollect/manga' => '漫画采集设置',
     'admin/system/configcollect/comment'=>'评论采集设置',
     'admin/system/configcollect/status'=>'数据状态',
     'admin/system/configcollect/words'=>'采集词库设置',
@@ -1303,6 +1307,11 @@ https://www.baidu.com/123.jpg
     'admin/system/configurl/vod_play'=>'视频播放',
     'admin/system/configurl/vod_down'=>'视频下载',
     'admin/system/configurl/art_detail'=>'文章详情',
+    'admin/system/configurl/manga_type'=>'漫画分类',
+    'admin/system/configurl/manga_show'=>'漫画分类筛选',
+    'admin/system/configurl/manga_detail'=>'漫画详情',
+    'admin/system/configurl/manga_read'=>'漫画阅读',
+    'admin/system/configurl/manga_down'=>'漫画下载',
     'admin/system/configurl/variable'=>'变量',
     'admin/system/configurl/structure'=>'常用结构',
     'admin/system/configurl/multipage_connector'=>'多页连接符',
@@ -2113,6 +2122,8 @@ https://www.baidu.com/123.jpg
     'validate/require_ip'=>'ip必须',
     'validate/require_time'=>'时间必须',
     'manga' => '漫画',
+    'admin/manga/title' => '漫画管理',
+    'admin/manga/new_version_notice' => '漫画模块已有新版本可用,请切换到新版后台体验完整功能。',
     'admin/system/configapi/manga'=>'漫画API设置',
     'admin/system/configapi/manga_tip'=>'提示信息:<br>1,漫画列表地址/api.php/provide/manga/?ac=list<br>2,漫画详情地址/api.php/provide/manga/?ac=detail',
     'admin/system/configapi/datafilter_tip_manga'=>'SQL查询条件例如 manga_status=1',

+ 13 - 2
application/lang/zh-tw.php

@@ -353,6 +353,7 @@ return array (
   'encode_id' => '加密ID',
   'vod_id' => '視頻ID',
   'art_id' => '文章ID',
+  'manga_id' => '漫畫ID',
   'topic_id' => '專題ID',
   'actor_id' => '演員ID',
   'role_id' => '角色ID',
@@ -520,6 +521,8 @@ https://www.baidu.com/123.jpg
   'menu/website_data_audit' => '未審核網址',
   'menu/website_batch' => '批量操作網址',
   'menu/website_repeat' => '重名網址數據',
+  'menu/manga_data_url_empty' => '無地址漫畫',
+  'menu/manga_data_points' => '需積分漫畫',
   'menu/users' => '用戶',
   'menu/admin' => '管理員',
   'menu/group' => '會員組',
@@ -968,6 +971,7 @@ https://www.baidu.com/123.jpg
   'admin/system/configcollect/actor' => '演員采集設置',
   'admin/system/configcollect/role' => '角色采集設置',
   'admin/system/configcollect/website' => '網址采集設置',
+  'admin/system/configcollect/manga' => '漫畫采集設置',
   'admin/system/configcollect/comment' => '評論采集設置',
   'admin/system/configcollect/status' => '數據狀態',
   'admin/system/configcollect/words' => '采集詞庫設置',
@@ -1208,6 +1212,11 @@ https://www.baidu.com/123.jpg
   'admin/system/configurl/vod_play' => '視頻播放',
   'admin/system/configurl/vod_down' => '視頻下載',
   'admin/system/configurl/art_detail' => '文章詳情',
+  'admin/system/configurl/manga_type' => '漫畫分類',
+  'admin/system/configurl/manga_show' => '漫畫分類篩選',
+  'admin/system/configurl/manga_detail' => '漫畫詳情',
+  'admin/system/configurl/manga_read' => '漫畫閱讀',
+  'admin/system/configurl/manga_down' => '漫畫下載',
   'admin/system/configurl/variable' => '變量',
   'admin/system/configurl/structure' => '常用結構',
   'admin/system/configurl/multipage_connector' => '多頁連接符',
@@ -1923,8 +1932,10 @@ https://www.baidu.com/123.jpg
   'validate/require_tpl' => '模板必須',
   'validate/require_ip' => 'ip必須',
   'validate/require_time' => '時間必須',
-  'manga' => '漫畫',
-  'admin/system/configapi/manga'=>'漫畫API設置',
+    'manga' => '漫畫',
+    'admin/manga/title' => '漫畫管理',
+    'admin/manga/new_version_notice' => '漫畫模塊已有新版本可用,請切換到新版後台體驗完整功能。',
+    'admin/system/configapi/manga'=>'漫畫API設置',
   'admin/system/configapi/manga_tip'=>'提示信息:<br>1,漫畫列表地址/api.php/provide/manga/?ac=list<br>2,漫畫詳情地址/api.php/provide/manga/?ac=detail',
   'admin/system/configapi/datafilter_tip_manga'=>'SQL查詢條件例如 manga_status=1',
 );

+ 14 - 1
说明文档/伪静态规则/默认路由规则.txt

@@ -59,4 +59,17 @@ artrss-<id>-<page>   => art/rss
 artshow/<id>-<by?>-<class?>-<level?>-<letter?>-<order?>-<page?>-<tag?>   => art/show
 artsearch/<wd?>-<by?>-<class?>-<level?>-<letter?>-<order?>-<page?>-<tag?>   => art/search
 
-label-<file> => label/index
+manga-<page?> => manga/index
+manga$ => manga/index
+mangashow/<id>-<area?>-<by?>-<class?>-<lang?>-<letter?>-<level?>-<order?>-<page?>-<state?>-<tag?>-<year?> => manga/show
+mangasearch/<wd?>-<actor?>-<area?>-<by?>-<class?>-<director?>-<lang?>-<letter?>-<level?>-<order?>-<page?>-<state?>-<tag?>-<year?> => manga/search
+mangatype/<id>-<page?> => manga/type
+mangatype/<id> => manga/type
+mangadetail-<id> => manga/detail
+mangarss-<id>   => manga/rss
+mangaplay/<id>-<sid>-<nid> => manga/play
+mangadown/<id>-<sid>-<nid> => manga/down
+mangaplot/<id>-<page?>   => manga/plot
+mangaplot/<id>   => manga/plot
+
+label-<file> => label/index