Просмотр исходного кода

Merge branch 'laravel' of https://github.com/iapt-platform/mint into laravel

bhikkhu-kosalla-china 3 лет назад
Родитель
Сommit
cb95971ff6

+ 10 - 5
README.md

@@ -24,7 +24,7 @@
 目录遵从Laravel目录设置。有以下几点差别
 
 - public/ 包含旧版php程序的全部文件
-- public/tmp 旧版资源文件夹 对于旧版到新版的迁移。**应该将旧版 /tmp 拷贝到 /public**
+- public/tmp 旧版资源文件夹,含有sqlite数据文件 对于旧版到新版的迁移。**应该将旧版 /tmp 拷贝到 /public**
 - v1 旧版数据迁移任务脚本
 - deploy 运维代码 
 
@@ -55,15 +55,20 @@ create database iapt
 `\q` 退出psql
 
 #### PHP 8
+编辑 php.ini 文件,打开pgsql和sqlite的PDO扩展,以及fileinfo
+```
+extension=pdo_pgsql
+extension=pdo_sqlite
+extension=fileinfo
+```
 
 #### Redis
+最新版的Redis不支持Windows平台,可以安装第三方修改的[Windows版Redis5.0](https://github.com/tporadowski/redis)
 
 #### composer
 
 #### npm
 
-#### yarn
-
 
 ### Fork
 
@@ -229,7 +234,7 @@ sudo cp ./public/app/fts/pali.syn /usr/share/postgresql/14/tsearch_data/
 - ./public/app/fts/pali.stop
 - ./public/app/fts/pali.syn
 
-到你的 shardir
+到你的 shardir/tsearch_data 目录下
 
 
 ### application encryption key
@@ -281,7 +286,7 @@ cd ./v1/scripts
 
 运行时间较长。本地开发环境大约4小时。
 
-
+如果不想等待,可以导入其他人已经部署好的postgresql数据库
 
 ### 运行dev server
 

+ 16 - 6
public/app/channal/channal.js

@@ -1,13 +1,23 @@
-var _my_channal = null;
+var _my_channal = new Array();
 var gChannelId;
 var get_channel_list_callback = null;
 var enumChannelType = [
-    {id:'translation',title:gLocal.gui.translation,icon:''},    
-    {id:'original',title:gLocal.gui.master_copy,icon:''},
-    {id:'nissaya',title:gLocal.gui.nissaya,icon:''},
-    {id:'commentary',title:gLocal.gui.commentary,icon:''},
+    {id:'translation',title:'translation',icon:''},    
+    {id:'original',title:'original',icon:''},
+    {id:'nissaya',title:'nissaya',icon:''},
+    {id:'commentary',title:'commentary',icon:''},
 ]
-channal_list();
+
+$(document).ready(function() {
+	enumChannelType =
+		[
+			{id:'translation',title:gLocal.gui.translation,icon:''},    
+			{id:'original',title:gLocal.gui.master_copy,icon:''},
+			{id:'nissaya',title:gLocal.gui.nissaya,icon:''},
+			{id:'commentary',title:gLocal.gui.commentary,icon:''},
+		];
+    channal_list();
+});
 var share_win;
 function channal_list_init() {
 	my_channal_list();

+ 4 - 1
public/app/course/index.php

@@ -242,8 +242,11 @@ include "../pcdl/html_head.php";
 		</div>
 
 		<script>
-			var speaker = "<?php echo $_local->gui->speaker . ':' . $row['teacher'] ?>";
+			 $(document).ready(function() {
+				$("#nav_course").addClass('active');
+			 });
 
+			
 			$.get("../course/course_list.php", function(data, status) {
 				let arrData = JSON.parse(data);
 				let html_complete = "";

+ 4 - 1
public/app/dict/index.php

@@ -147,7 +147,10 @@ guide.grammar_tag:hover {
 			<div id="right_bar"></div>
 		</div>
 	</div>
-	<script>
+	<script>	
+		$(document).ready(function() {
+			$("#nav_dict").addClass('active');
+		});
 <?php
 if (isset($_GET["key"]) && !empty($_GET["key"])) {
     echo "var _key='{$_GET["key"]}';\n";

+ 107 - 62
public/app/palicanon/category/defualt.json

@@ -208,16 +208,57 @@
                         "tag":["vinaya","bhikkhunīvibhaṅga"]
                     },
                     {
-                        "name":"mahāvagga",
+                        "name":"Mahāvagga",
                         "tag":["vinaya","mahāvagga"]
                     },
                     {
-                        "name":"cūḷavagga",
+                        "name":"Cūḷavagga",
                         "tag":["vinaya","cūḷavagga"]
                     },
                     {
-                        "name":"parivāra",
+                        "name":"Parivāra",
                         "tag":["vinaya","parivāra"]
+                    },
+                    {
+                        "name":"Ṭīkā",
+                        "tag":["vinaya","ṭīkā"],
+						"children":[
+							{
+								"name":"Sāratthadīpanī",
+								"tag":["vinaya","ṭīkā","sāratthadīpanī"]
+							},
+							{
+								"name":"Pātimokkha",
+								"tag":["vinaya","ṭīkā","pātimokkha"]
+							},
+							{
+								"name":"Vajirabuddhi",
+								"tag":["vinaya","ṭīkā","vajirabuddhi"]
+							},
+							{
+								"name":"Vimativinodanī",
+								"tag":["vinaya","ṭīkā","vimativinodanī"]
+							},{
+								"name":"Vinayavinicchayo",
+								"tag":["vinaya","ṭīkā","vinayavinicchaya"]
+							},
+							{
+								"name":"Uttaravinicchaya",
+								"tag":["vinaya","ṭīkā","uttaravinicchaya"]
+							},
+							{
+								"name":"Pācityādiyojanā",
+								"tag":["vinaya","ṭīkā","pācityādiyojanā"]
+							},
+							{
+								"name":"Khuddasikkhā",
+								"tag":["vinaya","ṭīkā","khuddasikkhā"]
+							},
+							{
+								"name":"Mūlasikkhā",
+								"tag":["vinaya","ṭīkā","mūlasikkhā"]
+							}
+						]
                     }
                 ]
             },
@@ -287,35 +328,35 @@
             },
             {
                 "name":"Saṃgāyanassa-Pucchā Vissajjanā",
-                "tag":["añña","saṃgāyanassa pucchā vissajjanā"],
+                "tag":["añña","saṅgayana-puccha vissajjanā"],
                 "children":[
                     {
                         "name":"Dīghanikāya(Pu-Vi)",
-                        "tag":["añña","saṃgāyanassa pucchā vissajjanā","dīghanikāya"]
+                        "tag":["añña","saṅgayana-puccha vissajjanā","dīghanikāya"]
                     },
                     {
                         "name":"Majjhimanikāya(Pu-Vi)",
-                        "tag":["añña","saṃgāyanassa pucchā vissajjanā","majjhimanikāya"]
+                        "tag":["añña","saṅgayana-puccha vissajjanā","majjhimanikāya"]
                     },
                     {
                         "name":"Saṃyuttanikāya(Pu-Vi)",
-                        "tag":["añña","saṃgāyanassa pucchā vissajjanā","saṃyuttanikāya"]
+                        "tag":["añña","saṅgayana-puccha vissajjanā","saṃyuttanikāya"]
                     },
                     {
                         "name":"Aṅguttaranikāya(Pu-Vi)",
-                        "tag":["añña","saṃgāyanassa pucchā vissajjanā","aṅguttaranikāya"]
+                        "tag":["añña","saṅgayana-puccha vissajjanā","aṅguttaranikāya"]
                     },
                     {
                         "name":"Vinayapiṭaka(Pu-Vi)",
-                        "tag":["añña","saṃgāyanassa pucchā vissajjanā","vinayapiṭaka"]
+                        "tag":["añña","saṅgayana-puccha vissajjanā","vinayapiṭaka"]
                     },
                     {
                         "name":"Abhidhammapiṭaka(Pu-Vi)",
-                        "tag":["añña","saṃgāyanassa pucchā vissajjanā","abhidhammapiṭaka"]
+                        "tag":["añña","saṅgayana-puccha vissajjanā","abhidhammapiṭaka"]
                     },
                     {
                         "name":"Aṭṭhakathā(Pu-Vi)",
-                        "tag":["añña","saṃgāyanassa pucchā vissajjanā","aṭṭhakathā"]
+                        "tag":["añña","saṅgayana-puccha vissajjanā","aṭṭhakathā"]
                     }
                 ]
             },
@@ -342,58 +383,58 @@
                 ]
             },
             {
-                "name":"Buddha-Vandana Gantha-Saṅgaho",
-                "tag":["añña","buddha-vandana"],
+                "name":"Buddha-Vandanā Gantha-Saṅgaho",
+                "tag":["añña","buddha-vandanā ganthasaṅgaha"],
                 "children":[
                     {
                         "name":"Namakkāratīkā",
-                        "tag":["añña","buddha-vandana","namakkāra"]
+                        "tag":["añña","buddha-vandanā ganthasaṅgaha","namakkāra"]
                     },
                     {
                         "name":"Mahāpaṇāmapāṭha",
-                        "tag":["añña","buddha-vandana","mahāpaṇāmapāṭha"]
+                        "tag":["añña","buddha-vandanā ganthasaṅgaha","mahāpaṇāmapāṭha"]
                     },
                     {
                         "name":"Lakkhaṇāto Buddhathomanāgāthā",
-                        "tag":["añña","buddha-vandana","lakkhaṇāto"]
+                        "tag":["añña","buddha-vandanā ganthasaṅgaha","lakkhaṇāto"]
                     },
                     {
                         "name":"Suttavandanā",
-                        "tag":["añña","buddha-vandana","suttavandanā"]
+                        "tag":["añña","buddha-vandanā ganthasaṅgaha","suttavandanā"]
                     },
                     {
                         "name":"Jinālaṅkāra",
-                        "tag":["añña","buddha-vandana","jinālaṅkāra"]
+                        "tag":["añña","buddha-vandanā ganthasaṅgaha","jinālaṅkāra"]
                     },
                     {
                         "name":"Kamalāñjali",
-                        "tag":["añña","buddha-vandana","kamalāñjali"]
+                        "tag":["añña","buddha-vandanā ganthasaṅgaha","kamalāñjali"]
                     },
                     {
                         "name":"Pajjamadhu",
-                        "tag":["añña","buddha-vandana","pajjamadhu"]
+                        "tag":["añña","buddha-vandanā ganthasaṅgaha","pajjamadhu"]
                     },
                     {
                         "name":"Buddhaguṇagāthāvalī",
-                        "tag":["añña","buddha-vandana","buddhaguṇagāthāvalī"]
+                        "tag":["añña","buddha-vandanā ganthasaṅgaha","buddhaguṇagāthāvalī"]
                     }
                 ]
             },
             {
                 "name":"Vaṃsa Gantha-Saṅgaho",
-                "tag":["añña","vaṃsa"],
+                "tag":["añña","vaṃsa ganthasaṅgaha"],
                 "children":[
                     {
                         "name":"Cūḷaganthavaṃsa",
-                        "tag":["añña","vaṃsa","Cūḷaganthavaṃsapāḷi"]
+                        "tag":["añña","vaṃsa ganthasaṅgaha","cūḷaganthavaṃsapāḷi"]
                     },
                     {
                         "name":"sāsanavaṃsa",
-                        "tag":["añña","vaṃsa","sāsanavaṃsappadīpikā"]
+                        "tag":["añña","vaṃsa ganthasaṅgaha","sāsanavaṃsappadīpikā"]
                     },
                     {
                         "name":"Mahāvaṃsa",
-                        "tag":["añña","vaṃsa","mahāvaṃsapāḷi"]
+                        "tag":["añña","vaṃsa ganthasaṅgaha","mahāvaṃsapāḷi"]
                     }
                 ]
             },
@@ -401,9 +442,13 @@
                 "name":"Byākaraṇa Gantha-Saṅgaho",
                 "tag":["añña","byākaraṇa ganthasaṅgaha"],
                 "children":[
+					{
+                        "name":"Moggallānasuttapāṭha",
+                        "tag":["añña","byākaraṇa ganthasaṅgaha","moggallānasuttapāṭha"]
+                    },
                     {
                         "name":"Moggallānabyākaraṇa",
-                        "tag":["añña","byākaraṇa ganthasaṅgaha","moggallānasuttapāṭha"]
+                        "tag":["añña","byākaraṇa ganthasaṅgaha","moggallānabyākaraṇa"]
                     },
                     {
                         "name":"Kaccāyanabyākaraṇaṃ",
@@ -411,26 +456,26 @@
                     },
                     {
                         "name":"Saddanītippakaraṇaṃ (padamālā)",
-                        "tag":["añña","byākaraṇa ganthasaṅgaha","padamālā"]
+                        "tag":["añña","byākaraṇa ganthasaṅgaha","saddanītippakaraṇa","padamālā"]
                     },
                     {
                         "name":"Saddanītippakaraṇaṃ (Dhātumālā)",
-                        "tag":["añña","byākaraṇa ganthasaṅgaha","dhātumālā"]
+                        "tag":["añña","byākaraṇa ganthasaṅgaha","saddanītippakaraṇa","dhātumālā"]
                     },
                     {
                         "name":"Padarūpasiddhi",
                         "tag":["añña","byākaraṇa ganthasaṅgaha","padarūpasiddhi"]
                     },
                     {
-                        "name":"Moggallānapañcikā",
-                        "tag":["añña","byākaraṇa ganthasaṅgaha","moggallānapañcikā"]
+                        "name":"Moggallāna pañcikā ṭīkā",
+                        "tag":["añña","byākaraṇa ganthasaṅgaha","moggallāna pañcikā ṭīkā"]
                     },
                     {
                         "name":"Payogasiddhipāṭha",
                         "tag":["añña","byākaraṇa ganthasaṅgaha","payogasiddhipāḷi"]
                     },
                     {
-                        "name":"Vuttodayapāṭha",
+                        "name":"Vuttodaya",
                         "tag":["añña","byākaraṇa ganthasaṅgaha","vuttodaya"]
                     },
                     {
@@ -457,131 +502,131 @@
             },
             {
                 "name":"Nīti-Gantha-Saṅgaho",
-                "tag":["añña","nīti"],
+                "tag":["añña","nīti-ganthasaṅgaha"],
                 "children":[
                     {
                         "name":"Kavidappaṇanīti",
-                        "tag":["añña","nīti","kavidappaṇanīti"]
+                        "tag":["añña","nīti-ganthasaṅgaha","kavidappaṇanīti"]
                     },
                     {
                         "name":"Nītimañjarī",
-                        "tag":["añña","nīti","nītimañjarī"]
+                        "tag":["añña","nīti-ganthasaṅgaha","nītimañjarī"]
                     },
                     {
                         "name":"Dhammanīti",
-                        "tag":["añña","nīti","dhammanīti"]
+                        "tag":["añña","nīti-ganthasaṅgaha","dhammanīti"]
                     },
                     {
                         "name":"Mahārahanīti",
-                        "tag":["añña","nīti","mahārahanīti"]
+                        "tag":["añña","nīti-ganthasaṅgaha","mahārahanīti"]
                     },
                     {
                         "name":"Lokanīti",
-                        "tag":["añña","nīti","lokanīti"]
+                        "tag":["añña","nīti-ganthasaṅgaha","lokanīti"]
                     },
                     {
                         "name":"Suttantanīti",
-                        "tag":["añña","nīti","suttantanīti"]
+                        "tag":["añña","nīti-ganthasaṅgaha","suttantanīti"]
                     },
                     {
                         "name":"Sūrassatīnīti",
-                        "tag":["añña","nīti","sūrassatīnīti"]
+                        "tag":["añña","nīti-ganthasaṅgaha","sūrassatīnīti"]
                     },
                     {
                         "name":"Cāṇakyanītipāḷi",
-                        "tag":["añña","nīti","cāṇakyanītipāḷi"]
+                        "tag":["añña","nīti-ganthasaṅgaha","cāṇakyanītipāḷi"]
                     },
                     {
                         "name":"Naradakkhadīpanī",
-                        "tag":["añña","nīti","naradakkhadīpanī"]
+                        "tag":["añña","nīti-ganthasaṅgaha","naradakkhadīpanī"]
                     },
                     {
                         "name":"Caturārakkhadīpanī",
-                        "tag":["añña","nīti","caturārakkhadīpanī"]
+                        "tag":["añña","nīti-ganthasaṅgaha","caturārakkhadīpanī"]
                     }
                 ]
             },
             {
                 "name":"Pakiṇṇaka-Gantha-Saṅgaho",
-                "tag":["añña","pakiṇṇaka"],
+                "tag":["añña","pakiṇṇaka-ganthasaṅgaha"],
                 "children":[
                     {
                         "name":"Rasavāhinī",
-                        "tag":["añña","pakiṇṇaka","rasavāhinī"]
+                        "tag":["añña","pakiṇṇaka-ganthasaṅgaha","rasavāhinī"]
                     },
                     {
                         "name":"Sīmavisodhanī",
-                        "tag":["añña","pakiṇṇaka","sīmavisodhanī"]
+                        "tag":["añña","pakiṇṇaka-ganthasaṅgaha","sīmavisodhanī"]
                     },
                     {
                         "name":"Vessantarāgīti",
-                        "tag":["añña","pakiṇṇaka","vessantarāgīti"]
+                        "tag":["añña","pakiṇṇaka-ganthasaṅgaha","vessantarāgīti"]
                     }
                 ]
             },
             {
                 "name":"Sihaḷa-Gantha-Saṅgaho",
-                "tag":["añña","sihaḷa"],
+                "tag":["añña","sihaḷa-ganthasaṅgaha"],
                 "children":[
                     {
                         "name":"Moggallāna vuttivivaraṇapañcikā",
-                        "tag":["añña","sihaḷa","moggallāna vuttivivaraṇapañcikā"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","moggallāna vuttivivaraṇapañcikā"]
                     },
                     {
                         "name":"Thupavaṃsa",
-                        "tag":["añña","sihaḷa","thupavaṃsa"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","thupavaṃsa"]
                     },
                     {
                         "name":"Dāṭhāvaṃsa",
-                        "tag":["añña","sihaḷa","Dāṭhāvaṃsa"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","Dāṭhāvaṃsa"]
                     },
                     {
                         "name":"Dhātupāṭha vilāsiniyā",
-                        "tag":["añña","sihaḷa","dhātupāṭha vilāsiniyā"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","dhātupāṭha vilāsiniyā"]
                     },
                     {
                         "name":"Dhātuvaṃsa",
-                        "tag":["añña","sihaḷa","dhātuvaṃsa"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","dhātuvaṃsa"]
                     },
                     {
                         "name":"Hatthavanagallavihāravaṃsa",
-                        "tag":["añña","sihaḷa","hatthavanagallavihāravaṃsa"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","hatthavanagallavihāravaṃsa"]
                     },
                     {
                         "name":"Jinacaritaya",
-                        "tag":["añña","sihaḷa","jinacaritaya"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","jinacaritaya"]
                     },
                     {
                         "name":"Jinavaṃsadīpaṃ",
-                        "tag":["añña","sihaḷa","jinavaṃsadīpa"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","jinavaṃsadīpa"]
                     },
                     {
                         "name":"Telakaṭāhagāthā",
-                        "tag":["añña","nīti","telakaṭāhagāthā"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","telakaṭāhagāthā"]
                     },
                     {
                         "name":"Milidaṭīkā",
-                        "tag":["añña","nīti","milidaṭīkā"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","milidaṭīkā"]
                     },
                     {
                         "name":"Padamañjarī",
-                        "tag":["añña","nīti","padamañjarī"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","padamañjarī"]
                     },
                     {
                         "name":"Padasādhana",
-                        "tag":["añña","nīti","padasādhana"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","padasādhana"]
                     },
                     {
                         "name":"saddabindupakaraṇa",
-                        "tag":["añña","nīti","saddabindupakaraṇa"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","saddabindupakaraṇa"]
                     },
                     {
                         "name":"Kaccāyanadhātumañjūsā",
-                        "tag":["añña","nīti","kaccāyanadhātumañjūsā"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","kaccāyanadhātumañjūsā"]
                     },
                     {
                         "name":"Samantakūṭavaṇṇanā",
-                        "tag":["añña","nīti","samantakūṭavaṇṇanā"]
+                        "tag":["añña","sihaḷa-ganthasaṅgaha","samantakūṭavaṇṇanā"]
                     }
                 ]
             }

+ 1 - 0
public/app/palicanon/index.php

@@ -268,6 +268,7 @@ require_once '../public/function.php';
 
     <script>
         $(document).ready(function() {
+			$("#nav_palicanon").addClass('active');
             
             let indexFilename = localStorage.getItem('palicanon_tag_category');
             if(!indexFilename){

+ 4 - 1
public/app/palicanon/palicanon.js

@@ -159,6 +159,8 @@ function tag_changed() {
 				$("#palicanon-category").show();
 				$("#chapter_shell").hide();
 			}else{
+				$("#palicanon-category").hide();
+				$("#chapter_shell").show();
 				palicanonGetChapter(_tags,lang);
 			}
             break;
@@ -1216,8 +1218,9 @@ function RenderBreadCrumbs(){
 }
 function select_channel(id,obj=null){
     _channel = id;
+	_nextPageStart = 0;
     updataHistory();
-    communityGetChapter(0);
+    communityGetChapter(_nextPageStart);
     refresh_selected_channel();
     console.log("change channel",_channel);
     //$(obj).siblings.removeClass('active');

+ 12 - 6
public/app/pcdl/head_bar.php

@@ -27,6 +27,7 @@
 	nav a:link,
 	nav a:visited {
 		color: unset;
+		
 	}
 
 	header ul,
@@ -127,6 +128,7 @@
 
 	nav li {
 		margin: 1rem;
+		line-height: 50px;
 	}
 
 	.icon_btn {
@@ -205,7 +207,6 @@
 		font-size: 14px;
 		opacity: 0;
 		transition: opacity 150ms ease-in-out;
-
 	}
 
 	.nav_link a:hover {
@@ -375,6 +376,11 @@
 		nav .nav_link {
 			opacity: 1;
 			color: var(--new-tool-btn);
+			margin: 0;
+			padding: 0 1em;
+		}
+		nav .active{
+			background-color: var(--tool-bt-bg-hover-color);
 		}
 
 		.header-dropdown-content li {
@@ -481,11 +487,11 @@ switch($_COOKIE['language']){
 	<input type="checkbox" id="nav-toggle" class="nav-toggle">
 	<nav>
 		<ul>
-			<li class="nav_link"><a href="../palicanon/"><?php echo $_local->gui->pali_canon; ?></a></li>
-			<li class="nav_link"><a href="../course/"><?php echo $_local->gui->lesson; ?></a></li>
-			<li class="nav_link"><a href="../wiki/"><?php echo $_local->gui->encyclopedia; ?></a></li>
-			<li class="nav_link"><a href="../dict/"><?php echo $_local->gui->dictionary; ?></a></li>
-			<li class="nav_link"><a href="../collect/"><?php echo $_local->gui->composition; ?></a></li>
+			<li class="nav_link" id="nav_palicanon"><a href="../palicanon/"><?php echo $_local->gui->pali_canon; ?></a></li>
+			<li class="nav_link" id="nav_course"><a href="../course/"><?php echo $_local->gui->lesson; ?></a></li>
+			<li class="nav_link" id="nav_wiki"><a href="../wiki/"><?php echo $_local->gui->encyclopedia; ?></a></li>
+			<li class="nav_link" id="nav_dict"><a href="../dict/"><?php echo $_local->gui->dictionary; ?></a></li>
+			<li class="nav_link" id="nav_collection"><a href="../collect/"><?php echo $_local->gui->composition; ?></a></li>
 			<li class="nav_link"><a href="<?php echo URL_HELP.'/'.$help_lang ?>"  target="_blank"><?php echo $_local->gui->help; ?></a></li>
 			<li class="nav_link more_btn">
 				<div id="more" class="dropdown" onmouseover="switchMenu(this,'nav-more')" onmouseout="hideMenu()">

+ 27 - 19
public/app/term/related_para.js

@@ -34,29 +34,37 @@ function related_para_dlg_open(book, para) {
 
 function related_para_dlg_render(para) {
 	let output = "";
-	for (const iterator of para.book_list) {
-		output += "<div>";
-		if (para.curr_book_id == iterator.id) {
-			output += "<b>" + iterator.title + "</b>";
-		} else {
-			//找到与这个书匹配的段落
-			let paraList = new Array();
-			for (const ipara of para.data) {
-				if (ipara.bookid == iterator.id) {
-					paraList.push(ipara);
+	if(Array.isArray(para.book_list)){
+		for (const iterator of para.book_list) {
+			output += "<div>";
+			if (para.curr_book_id == iterator.id) {
+				output += "<b>" + iterator.title + "</b>";
+			} else {
+				//找到与这个书匹配的段落
+				let paraList = new Array();
+				for (const ipara of para.data) {
+					if (ipara.bookid == iterator.id) {
+						paraList.push(ipara);
+					}
+				}
+				if(paraList.length>0){
+					output +=
+						"<a href='../reader/?view=chapter&book=" +
+						paraList[0].book +
+						"&par=" +
+						paraList[0].para +
+						"' target='_blank'>" +
+						iterator.title +
+						"</a>";				
 				}
 			}
-			output +=
-				"<a href='../reader/?view=chapter&book=" +
-				paraList[0].book +
-				"&par=" +
-				paraList[0].para +
-				"' target='_blank'>" +
-				iterator.title +
-				"</a>";
-		}
+			output += "</div>";
+		}		
+	}else{
+		output += "no related paragraph";
 		output += "</div>";
 	}
 
+
 	return output;
 }

+ 28 - 3
public/app/term/related_para.php

@@ -1,7 +1,32 @@
 <?php
 /*
-查询相关联的书
-mula->attakhata->tika
+ *查询相关联的书
+ *mula->attakhata->tika
+ *算法:
+ *在原始的html 文件里 如 s0404m1.mul.htm 有 <a name="para2_an8"></a>
+ * 在 so404a.att.htm 里也有 </a><a name="para2_an8"></a>
+ * 这说明这两个段落是关联段落,para2是段落编号 an8是书名只要书名一样,段落编号一样。
+ * 两个就是关联段落
+ * 
+ * 表名:cs6_para
+ * 所以数据库结构是
+ * book 书号 1-217
+ * para 段落号
+ * bookid
+ * cspara 上述段落号
+ * book_name 上述书名
+ * 
+ * 输入 book para
+ * 查询书名和段落号
+ * 输入这个书名和段落号
+ * 查询有多少段落有一样的书名和段落号
+ * 有些book 里面有两本书。所以又加了一个bookid 
+ * 每个bookid代表一本真正的书。所以bookid 要比 book 多
+ * bookid 是为了输出书名用的。不是为了查询相关段落
+ * 
+ * 数据要求:
+ * 制作时包含全部段落。做好后把没有相关段落的段落删掉??
+ * 
  */
 require_once "../public/_pdo.php";
 require_once "../config.php";
@@ -25,7 +50,7 @@ if (isset($_GET["para"])) {
 }
 
 PDO_Connect(_FILE_DB_PAGE_INDEX_);
-$query = "SELECT bookid,cspara ,book_name FROM cs6_para where book = ? and para= ? ";
+$query = "SELECT bookid,cspara ,book_name FROM cs6_para where book = ? and para= ? and cspara > 0";
 $fetch = PDO_FetchAll($query, array($book, $para));
 if (count($fetch) > 0) {
     $aBookid = array();