Jelajahi Sumber

Merge branch 'master' of https://github.com/visuddhinanda/mint

Bhikkhu-Kosalla 5 tahun lalu
induk
melakukan
1a03fe5ed8

+ 50 - 96
app/course/course.php

@@ -19,6 +19,7 @@ include "../pcdl/html_head.php";
 require_once "../path.php";
 require_once "../public/_pdo.php";
 require_once '../media/function.php';
+require_once '../public/function.php';
 
 global $PDO;
 PDO_Connect("sqlite:"._FILE_DB_COURSE_);
@@ -31,128 +32,81 @@ if(count($Fetch)==0)
 }
 $course_info = $Fetch[0];
 
-$coverList[] = $course_info["cover"];
-$covers = media_get($coverList);
-foreach ($covers as $value) {
-    $cover["{$value["id"]}"] = $value["link"];
-}
-
-
-
-if(isset($_GET["lesson"])){
-    $query = "select * from lesson where id = '{$_GET["lesson"]}'   limit 0,1";
-    $fLesson = PDO_FetchAll($query);
-    if(count($fLesson)>0){
-        $lesson_info= $fLesson[0];
-    }
-}
-echo "<div id='course_head_bar' style='background-color:gray;padding:3em 10px 10px 10px;'>";
+echo "<div id='course_head_bar' style='background-color:var(--tool-bg-color1);padding:1em 10px 10px 10px;'>";
+echo "<div class='index_inner '>";
+echo "<div style='font-size:140%'>";
 echo $course_info["teacher"]." > ";
-echo '<a href="../course/course.php?id='.$course_info["id"].'">'.$course_info["title"].'</a>';
-if(isset($lesson_info)){
-    echo " > ".$lesson_info["title"];
-}
+echo $course_info["title"];
+echo "</div>";
 echo '<div class="summary"  style="padding-bottom:5px;">'.$course_info["subtitle"].'</div>';
+echo '<div class="summary"  style=""><button>关注</button><button>报名</button><button>分享</button></div>';
+echo "</div>";
 echo '</div>';
 
-echo '<div style="display:flex;">';
-echo '<div style="flex:7;">';
-
-    
-    $coverlink = $cover["{$course_info["cover"]}"];
-    echo '<div id="main_video_win" class="v-cover">';
-    if(isset($lesson_info)){
-        echo $lesson_info["link"];
-    }
-    else{
-        if(substr($coverlink,0,6)=="media:"){
-            echo '<img src="'._DIR_USER_IMG_LINK_.'/' .substr($coverlink,6).'" width="100%" height="auto">';
-        }
-        else{
-            echo '<img src="'.$coverlink.'" width="100%" height="auto">';
-        }
-     
-    }
-        echo '</div>';       
-echo '</div>';
-//右侧lesson列表
-echo '<div style="flex:3;">';
+echo "<div class='index_inner'>";
 
 //课程视频
 $query = "select * from lesson where course_id = '{$_GET["id"]}'   limit 0,100";
 $fAllLesson = PDO_FetchAll($query);
-
-$coverList = array();
-foreach($fAllLesson as $row){
-    $coverList[] = $row["cover"];
-}
-$covers = media_get($coverList);
-foreach ($covers as $value) {
-    $cover["{$value["id"]}"] = $value["link"];
-}
-
-$iLesson = 1;
-foreach($fAllLesson as $row){
-    echo '<div class="pd-10">';
-    echo 'Lesson:'.$iLesson;
-    echo '<div class="title" style="padding-bottom:5px;"><a href="../course/course.php?id='.$_GET["id"].'&lesson='.$row["id"].'">'.$row["title"].'</a></div>';
-    echo '<div class="author"  style="padding-bottom:5px;">主讲:'.$row["teacher"].'</div>';
-    echo '</div>';
-    $iLesson++;
-}
-
-echo '</div>';
-echo '</div>';
-
-echo '<div class="couse_item">';
+echo '<div class="card" style="margin:1em;">';
     echo '<div class="title">';
     echo '简介';
     echo '</div>';
     echo '<div class="detail">';
-        if(isset($lesson_info)){
-            echo $lesson_info["summary"];
-        }
-        else{
-            echo $course_info["summary"];
-        }
+    echo $course_info["summary"];
     echo '</div>';
-echo '</div>';
-
-echo '<div class="couse_item">';
     echo '<div class="title">';
-    echo '课程列表';
-    echo '</div>';
+    echo '参考资料';
+    echo '</div>';    
     echo '<div class="detail">';
+    echo $course_info["attachment"];
+    echo '</div>';   
+echo '</div>';
+
+
     foreach($fAllLesson as $row){
+        echo '<div class="card" style="display:flex;margin:1em;padding:10px;">';
 
-        echo '<div style="display:flex;">';
-        echo '<div style="flex:3;">';
-        $coverlink = $cover["{$row["cover"]}"];
-        echo '<div class="v-cover">';
-        if(substr($coverlink,0,6)=="media:"){
-            echo '<img src="'._DIR_USER_IMG_LINK_.'/'.substr($coverlink,6).'" width="100%" height="auto">';
-        }
-        else{
-            echo '<img src="'.$coverlink.'" width="50" height="50">';
-        }
-        echo '</div>';    
-        echo '</div>';
         echo '<div style="flex:7;">';
-    
         echo '<div class="pd-10">';
-        echo '<div class="title" style="padding-bottom:5px;"><a href="../course/course.php?id='.$row["id"].'">'.$row["title"].'</a></div>';
+        echo '<div class="title" style="padding-bottom:5px;font-size:100%;font-weight:600;">'.$row["title"].'</div>';
         echo '<div class="summary"  style="padding-bottom:5px;">'.$row["subtitle"].'</div>';
         echo '<div class="summary"  style="padding-bottom:5px;">'.$row["summary"].'</div>';
-        echo '<div class="author"  style="padding-bottom:5px;">主讲:'.$row["teacher"].'</div>';
-        echo '</div>';    
-    
+        echo '</div>'; 
         echo '</div>';
+
+        echo '<div style="flex:3;max-width:15em;">';
+        echo '<div >开始:'.date("Y/m/d h:ia",$row["date"]/1000) .'</div>';
+        $dt = $row["duration"];
+        $sdt = "";
+        if($dt>59){
+            $sdt .= floor($dt/60)."小时";
+        }
+        $m = ($dt %60);
+        if($m>0){
+            $sdt .=($dt %60)."分钟";
+        }
+        echo "<div >持续:{$sdt}</div>";
+        $now = mTime();
+        $lesson_time="";
+        if($now<$row["date"]){
+            $lesson_time = "尚未开始";
+        }
+        else if($now>$row["date"] && $now<($row["date"]+$dt*1000)){
+            $lesson_time = "已经结束";
+        }
+        else{
+            $lesson_time = "正在进行";
+        }
+        echo '<div ><span class="lesson_status">已经结束</span></div>';
+        echo '</div>';
+
         echo '</div>';
     }
-    echo '</div>';
-echo '</div>';
+
 
 ?>
+</div>
 <script>
     $("#main_video_win").height($("#main_video_win").width()*9/16);
 </script>

+ 15 - 0
app/course/course_list.php

@@ -0,0 +1,15 @@
+<?php
+//
+
+require_once "../path.php";
+require_once "../public/_pdo.php";
+require_once '../public/load_lang.php';
+require_once '../media/function.php';
+
+global $PDO;
+PDO_Connect("sqlite:"._FILE_DB_COURSE_);
+$query = "select * from course where 1  order by create_time DESC limit 0,100";
+$Fetch = PDO_FetchAll($query);
+echo json_encode($Fetch, JSON_UNESCAPED_UNICODE);
+
+?>

+ 88 - 0
app/course/index.php

@@ -6,7 +6,95 @@ include "../pcdl/html_head.php";
 <?php
     require_once("../pcdl/head_bar.php");
 ?>
+<style>
+	.content_block{
+		flex: 0 0 auto;
+		width: 25%;
+		padding: 10px;
+	}
 
+	.index_inner{
+		width: 960px;
+		margin-left: auto;
+		margin-right: auto;
+	}
+	.content_inner{
+		display:flex;
+	}
+	.h3{
+		font-size: 16px;
+	}
+	.index_list_categories{
+		margin-bottom: 2em;
+	}
+	
+	.index_list_categories a:hover{
+		color: var(--tool-link-hover-color);
+	}
+	.index_list_categories a,a:link{
+		color: var(--main-color);
+	}
+	.index_list_categories button{
+		border: none;
+	}
+	
+	.pd-10{
+		padding:10px;
+	}
+	</style>
+<div class="index_inner" >
+    
+	<div class="index_list_categories">
+		<div class="title_bar">
+			<span class="title h3">老师</span>	
+			<span class="title_more"><a href="../course">更多</a></span>
+		</div>
+		<div class="content">
+			<div id="course_list_new" class="content_inner">
+
+
+
+			</div>
+		</div>
+	</div>
+	<script>
+	$.get("../course/teacher_list.php",function(data,status){
+		let xDiv = document.getElementById("course_list_new");
+		if(xDiv){
+			xDiv.innerHTML=data;
+		}
+	});
+	</script>	
+    <div class="card" style="margin:1em;">
+    过滤
+    </div>
+    <div id="course_list">
+    </div >
+    <script>
+	$.get("../course/course_list.php",function(data,status){
+        let arrData = JSON.parse(data);
+        let html="";
+        for (const iterator of arrData) {
+            html += '<div class="card" style="display:flex;margin:1em;padding:10px;">';
+
+            html += '<div style="flex:7;">';
+            html +=  '<div class="title" style="padding-bottom:5px;font-size:110%;font-weight:600;"><a href="../course/course.php?id='+iterator.id+'">'+iterator.title+'</a></div>';
+            html += '<div class="summary"  style="padding-bottom:5px;">'+iterator.subtitle+'</div>';
+            html += '<div class="summary"  style="padding-bottom:5px;">'+iterator.summary+'</div>';
+
+            html += '</div>';
+
+            html += '<div style="flex:3;max-width:15em;">';
+
+            html += '</div>';
+
+            html += '</div>';
+            $("#course_list").html(html);
+        }
+	});
+	</script>	
+
+    </div>
 
 <?php
 include "../pcdl/html_foot.php";

+ 5 - 12
app/course/list_new.php

@@ -22,22 +22,15 @@ foreach ($covers as $value) {
 foreach($Fetch as $row){
     echo '<div class="content_block">';
     echo '<div class="card">';
-    
-    $coverlink = $cover["{$row["cover"]}"];
-    echo '<div class="v-cover">';
-    if(substr($coverlink,0,6)=="media:"){
-        echo '<img src="'._DIR_USER_IMG_LINK_.'/'.substr($coverlink,6).'" width="100%" height="auto">';
-    }
-    else{
-        echo '<img src="'.$coverlink.'" width="50" height="50">';
-    }
-    echo '</div>';
 
     echo '<div class="pd-10">';
-    echo '<div class="title" style="padding-bottom:5px;"><a href="../course/course.php?id='.$row["id"].'">'.$row["title"].'</a></div>';
+    echo '<div class="title" style="padding-bottom:5px;font-size:110%;font-weight:600;"><a href="../course/course.php?id='.$row["id"].'">'.$row["title"].'</a></div>';
     echo '<div class="summary"  style="padding-bottom:5px;">'.$row["subtitle"].'</div>';
+    echo '<div class="author"  style="padding-bottom:5px;margin-bottom:0.4em;">主讲:'.$row["teacher"].'</div>';    
     echo '<div class="summary"  style="padding-bottom:5px;">'.$row["summary"].'</div>';
-    echo '<div class="author"  style="padding-bottom:5px;">主讲:'.$row["teacher"].'</div>';
+    echo '</div>';
+    echo '<div class="pd-10" style="display:flex;justify-content: space-between;">';
+    echo '<button>赞<span>3</span></button><button>订阅<span>23</span></button>';
     echo '</div>';
     
     echo '</div>';

+ 7 - 2
app/course/my_lesson_edit.php

@@ -87,16 +87,21 @@ echo '<div id="userfilelist">';
     echo '<div style="flex:2;">'.'副标题'.'</div>';
     echo '<div style="flex:8;"><input type="input" name = "subtitle" value="'.$lesson_info["subtitle"].'" /></div>';
     echo '</div>';
+    $strDate = date("Y-m-d",$lesson_info["date"]/1000);
+    echo 'Date: <input type="date" name="lesson_date" value="'.$strDate.'"/>';
+    echo 'Time: <input type="time" name="lesson_time" />';
+    echo 'Duration: <input type="time" name="lesson_duration" />';
 
     echo '<div style="display:flex;">';
-    echo '<div style="flex:2;">'.'链接'.'</div>';
+    echo '<div style="flex:2;">'.'直播链接'.'</div>';
     echo '<div style="flex:8;"><textarea name="link" style="height:6em;">'.$lesson_info["link"].'</textarea></div>';
     echo '</div>';
     echo '<div style="display:flex;">';
-    echo '<div style="flex:2;">'.'链接(中国大陆)'.'</div>';
+    echo '<div style="flex:2;">'.'录播链接'.'</div>';
     echo '<div style="flex:8;"><textarea name="link1" style="height:6em;">'.$lesson_info["link"].'</textarea></div>';
     echo '</div>';
 
+
     echo '<div style="display:flex;">';
     echo '<div style="flex:2;">'.'简介'.'</div>';
     echo '<div style="flex:8;"><textarea name="summary" style="height:6em;">'.$lesson_info["summary"].'</textarea></div>';

+ 29 - 0
app/course/teacher_list.php

@@ -0,0 +1,29 @@
+<?php
+//
+
+require_once "../path.php";
+require_once "../public/_pdo.php";
+require_once '../public/load_lang.php';
+require_once '../media/function.php';
+
+global $PDO;
+PDO_Connect("sqlite:"._FILE_DB_COURSE_);
+$query = "select teacher,count(*) as co from course where 1 group by teacher order by co DESC limit 0,4";
+$Fetch = PDO_FetchAll($query);
+
+foreach($Fetch as $value){
+    echo '<div class="content_block">';
+    echo '<div class="card pd-10">';
+    echo '<div class="title" style="padding-bottom:5px;font-size:110%;font-weight:600;"><a href="../course/course.php?id='.$row["id"].'">'.$value['teacher'].'</a></div>';
+    
+    $query = "select id, title  from course where teacher = '{$value['teacher']}'  order by create_time DESC limit 0,5";
+    $FetchTeacher = PDO_FetchAll($query);
+    foreach($FetchTeacher as $row){
+        echo '<div class="title" style="padding-bottom:5px;"><a href="../course/course.php?id='.$row["id"].'">'.$row["title"].'</a></div>';
+
+    }    
+    echo '</div>';
+    echo '</div>';
+}
+
+?>

+ 20 - 0
app/palicanon/book_tag.php

@@ -0,0 +1,20 @@
+<?php
+require_once '../path.php';
+
+$tag =  str_getcsv($_GET["tag"],",");//
+$arrBookTag=json_decode(file_get_contents("../public/book_tag/en.json"));
+$countTag = count($tag);
+$output = array();
+foreach ($arrBookTag as $bookkey => $bookvalue) {
+    $isfind = 0;
+    foreach ($tag as $tagkey => $tagvalue) {
+        if(strpos($bookvalue->tag,$tagvalue) !== FALSE){
+            $isfind++;
+        }
+    }
+    if($isfind==$countTag){
+        $output[] = array($bookvalue);
+    }
+}
+echo json_encode($output, JSON_UNESCAPED_UNICODE);
+?>

+ 170 - 1492
app/palicanon/index.php

@@ -1,1504 +1,182 @@
 <?PHP
 include "../pcdl/html_head.php";
 ?>
-	<body>
-		<style type="text/css">
+<body>
 
-            .highcharts-figure, .highcharts-data-table table {
-                min-width: 220px; 
-                max-width: 400px;
-                margin: 1em auto;
-            }
-
-            .highcharts-data-table table {
-                font-family: Verdana, sans-serif;
-                border-collapse: collapse;
-                border: 1px solid #EBEBEB;
-                margin: 10px auto;
-                text-align: center;
-                width: 100%;
-                max-width: 500px;
-            }
-            .highcharts-data-table caption {
-                padding: 1em 0;
-                font-size: 1.2em;
-                color: #555;
-            }
-            .highcharts-data-table th {
-                font-weight: 600;
-                padding: 0.5em;
-            }
-            .highcharts-data-table td, .highcharts-data-table th, .highcharts-data-table caption {
-                padding: 0.5em;
-            }
-            .highcharts-data-table thead tr, .highcharts-data-table tr:nth-child(even) {
-                background: #f8f8f8;
-            }
-            .highcharts-data-table tr:hover {
-                background: #f1f7ff;
-            }
-		</style>
-<script src="../public/js/highcharts/highcharts.js"></script>
-<script src="../public/js/highcharts/modules/sunburst.js"></script>
-<script src="../public/js/highcharts/modules/exporting.js"></script>
-<script src="../public/js/highcharts/modules/export-data.js"></script>
-<script src="../public/js/highcharts/modules/accessibility.js"></script>
 <?php
     require_once("../pcdl/head_bar.php");
 ?>
-<figure class="highcharts-figure">
-    <div id="container"></div>
-</figure>
-
-
-
-		<script type="text/javascript">
-var data = [{
-    id: '0.0',
-    parent: '',
-    name: '全部'
-}, {
-    id: '1.3',
-    parent: '0.0',
-    name: '经藏'
-}, {
-    id: '1.1',
-    parent: '0.0',
-    name: '律藏'
-}, {
-    id: '1.2',
-    parent: '0.0',
-    name: '论藏'
-}, {
-    id: '1.4',
-    parent: '0.0',
-    name: '其他'
-}, {
-    id: '1.5',
-    parent: '0.0',
-    name: 'Oceanic'
-},
-
-/* Africa */
-{
-    id: '2.1',
-    parent: '1.1',
-    name: '巴拉基卡'
-},
-
-{
-    id: '3.1',
-    parent: '2.1',
-    name: 'Ethiopia',
-    value: 104957438
-}, {
-    id: '3.2',
-    parent: '2.1',
-    name: 'Tanzania',
-    value: 57310019
-}, {
-    id: '3.3',
-    parent: '2.1',
-    name: 'Kenya',
-    value: 49699862
-}, {
-    id: '3.4',
-    parent: '2.1',
-    name: 'Uganda',
-    value: 42862958
-}, {
-    id: '3.5',
-    parent: '2.1',
-    name: 'Mozambique',
-    value: 29668834
-}, {
-    id: '3.6',
-    parent: '2.1',
-    name: 'Madagascar',
-    value: 25570895
-}, {
-    id: '3.7',
-    parent: '2.1',
-    name: 'Malawi',
-    value: 18622104
-}, {
-    id: '3.8',
-    parent: '2.1',
-    name: 'Zambia',
-    value: 17094130
-}, {
-    id: '3.9',
-    parent: '2.1',
-    name: 'Zimbabwe',
-    value: 16529904
-}, {
-    id: '3.10',
-    parent: '2.1',
-    name: 'Somalia',
-    value: 14742523
-}, {
-    id: '3.11',
-    parent: '2.1',
-    name: 'South Sudan',
-    value: 12575714
-}, {
-    id: '3.12',
-    parent: '2.1',
-    name: 'Rwanda',
-    value: 12208407
-}, {
-    id: '3.13',
-    parent: '2.1',
-    name: 'Burundi',
-    value: 10864245
-}, {
-    id: '3.14',
-    parent: '2.1',
-    name: 'Eritrea',
-    value: 5068831
-}, {
-    id: '3.15',
-    parent: '2.1',
-    name: 'Mauritius',
-    value: 1265138
-}, {
-    id: '3.16',
-    parent: '2.1',
-    name: 'Djibouti',
-    value: 956985
-}, {
-    id: '3.17',
-    parent: '2.1',
-    name: 'Réunion',
-    value: 876562
-}, {
-    id: '3.18',
-    parent: '2.1',
-    name: 'Comoros',
-    value: 813912
-}, {
-    id: '3.19',
-    parent: '2.1',
-    name: 'Mayotte',
-    value: 253045
-}, {
-    id: '3.20',
-    parent: '2.1',
-    name: 'Seychelles',
-    value: 94737
-},
-
-{
-    id: '2.5',
-    parent: '1.1',
-    name: '巴基帝亚'
-},
-
-{
-    id: '3.42',
-    parent: '2.5',
-    name: 'Nigeria',
-    value: 190886311
-}, {
-    id: '3.43',
-    parent: '2.5',
-    name: 'Ghana',
-    value: 28833629
-}, {
-    id: '3.44',
-    parent: '2.5',
-    name: 'Côte Ivoire',
-    value: 24294750
-}, {
-    id: '3.45',
-    parent: '2.5',
-    name: 'Niger',
-    value: 21477348
-}, {
-    id: '3.46',
-    parent: '2.5',
-    name: 'Burkina Faso',
-    value: 19193382
-}, {
-    id: '3.47',
-    parent: '2.5',
-    name: 'Mali',
-    value: 18541980
-}, {
-    id: '3.48',
-    parent: '2.5',
-    name: 'Senegal',
-    value: 15850567
-}, {
-    id: '3.49',
-    parent: '2.5',
-    name: 'Guinea',
-    value: 12717176
-}, {
-    id: '3.50',
-    parent: '2.5',
-    name: 'Benin',
-    value: 11175692
-}, {
-    id: '3.51',
-    parent: '2.5',
-    name: 'Togo',
-    value: 7797694
-}, {
-    id: '3.52',
-    parent: '2.5',
-    name: 'Sierra Leone',
-    value: 7557212
-}, {
-    id: '3.53',
-    parent: '2.5',
-    name: 'Liberia',
-    value: 4731906
-}, {
-    id: '3.54',
-    parent: '2.5',
-    name: 'Mauritania',
-    value: 4420184
-}, {
-    id: '3.55',
-    parent: '2.5',
-    name: 'The Gambia',
-    value: 2100568
-}, {
-    id: '3.56',
-    parent: '2.5',
-    name: 'Guinea-Bissau',
-    value: 1861283
-}, {
-    id: '3.57',
-    parent: '2.5',
-    name: 'Cabo Verde',
-    value: 546388
-}, {
-    id: '3.58',
-    parent: '2.5',
-    name: 'Saint Helena, Ascension and Tristan da Cunha',
-    value: 4049
-},
-
-{
-    id: '2.3',
-    parent: '1.1',
-    name: '大品'
-},
-
-{
-    id: '3.30',
-    parent: '2.3',
-    name: 'Egypt',
-    value: 97553151
-}, {
-    id: '3.31',
-    parent: '2.3',
-    name: 'Algeria',
-    value: 41318142
-}, {
-    id: '3.32',
-    parent: '2.3',
-    name: 'Sudan',
-    value: 40533330
-}, {
-    id: '3.33',
-    parent: '2.3',
-    name: 'Morocco',
-    value: 35739580
-}, {
-    id: '3.34',
-    parent: '2.3',
-    name: 'Tunisia',
-    value: 11532127
-}, {
-    id: '3.35',
-    parent: '2.3',
-    name: 'Libya',
-    value: 6374616
-}, {
-    id: '3.36',
-    parent: '2.3',
-    name: 'Western Sahara',
-    value: 552628
-},
-
-{
-    id: '2.2',
-    parent: '1.1',
-    name: '小品'
-},
-
-{
-    id: '3.21',
-    parent: '2.2',
-    name: 'Democratic Republic of the Congo',
-    value: 81339988
-}, {
-    id: '3.22',
-    parent: '2.2',
-    name: 'Angola',
-    value: 29784193
-}, {
-    id: '3.23',
-    parent: '2.2',
-    name: 'Cameroon',
-    value: 24053727
-}, {
-    id: '3.24',
-    parent: '2.2',
-    name: 'Chad',
-    value: 14899994
-}, {
-    id: '3.25',
-    parent: '2.2',
-    name: 'Congo',
-    value: 5260750
-}, {
-    id: '3.26',
-    parent: '2.2',
-    name: 'Central African Republic',
-    value: 4659080
-}, {
-    id: '3.27',
-    parent: '2.2',
-    name: 'Gabon',
-    value: 2025137
-}, {
-    id: '3.28',
-    parent: '2.2',
-    name: 'Equatorial Guinea',
-    value: 1267689
-}, {
-    id: '3.29',
-    parent: '2.2',
-    name: 'Sao Tome and Principe',
-    value: 204327
-},
-
-{
-    id: '2.4',
-    parent: '1.1',
-    name: '附录'
-},
-
-{
-    id: '3.37',
-    parent: '2.4',
-    name: 'South Africa',
-    value: 56717156
-}, {
-    id: '3.38',
-    parent: '2.4',
-    name: 'Namibia',
-    value: 2533794
-}, {
-    id: '3.39',
-    parent: '2.4',
-    name: 'Botswana',
-    value: 2291661
-}, {
-    id: '3.40',
-    parent: '2.4',
-    name: 'Lesotho',
-    value: 2233339
-}, {
-    id: '3.41',
-    parent: '2.4',
-    name: 'Swaziland',
-    value: 1367254
-},
-
-/***********/
-
-/* America */
-{
-    id: '2.9',
-    parent: '1.2',
-    name: 'South America'
-},
-
-{
-    id: '3.98',
-    parent: '2.9',
-    name: 'Brazil',
-    value: 209288278
-}, {
-    id: '3.99',
-    parent: '2.9',
-    name: 'Colombia',
-    value: 49065615
-}, {
-    id: '3.100',
-    parent: '2.9',
-    name: 'Argentina',
-    value: 44271041
-}, {
-    id: '3.101',
-    parent: '2.9',
-    name: 'Peru',
-    value: 32165485
-}, {
-    id: '3.102',
-    parent: '2.9',
-    name: 'Venezuela',
-    value: 31977065
-}, {
-    id: '3.103',
-    parent: '2.9',
-    name: 'Chile',
-    value: 18054726
-}, {
-    id: '3.104',
-    parent: '2.9',
-    name: 'Ecuador',
-    value: 16624858
-}, {
-    id: '3.105',
-    parent: '2.9',
-    name: 'Bolivia',
-    value: 11051600
-}, {
-    id: '3.106',
-    parent: '2.9',
-    name: 'Paraguay',
-    value: 6811297
-}, {
-    id: '3.107',
-    parent: '2.9',
-    name: 'Uruguay',
-    value: 3456750
-}, {
-    id: '3.108',
-    parent: '2.9',
-    name: 'Guyana',
-    value: 777859
-}, {
-    id: '3.109',
-    parent: '2.9',
-    name: 'Suriname',
-    value: 563402
-}, {
-    id: '3.110',
-    parent: '2.9',
-    name: 'French Guiana',
-    value: 282731
-}, {
-    id: '3.111',
-    parent: '2.9',
-    name: 'Falkland Islands',
-    value: 2910
-},
-
-{
-    id: '2.8',
-    parent: '1.2',
-    name: 'Northern America'
-},
-
-{
-    id: '3.93',
-    parent: '2.8',
-    name: 'United States',
-    value: 324459463
-}, {
-    id: '3.94',
-    parent: '2.8',
-    name: 'Canada',
-    value: 36624199
-}, {
-    id: '3.95',
-    parent: '2.8',
-    name: 'Bermuda',
-    value: 61349
-}, {
-    id: '3.96',
-    parent: '2.8',
-    name: 'Greenland',
-    value: 56480
-}, {
-    id: '3.97',
-    parent: '2.8',
-    name: 'Saint Pierre and Miquelon',
-    value: 6320
-},
-
-{
-    id: '2.7',
-    parent: '1.2',
-    name: 'Central America'
-},
-
-{
-    id: '3.85',
-    parent: '2.7',
-    name: 'Mexico',
-    value: 129163276
-}, {
-    id: '3.86',
-    parent: '2.7',
-    name: 'Guatemala',
-    value: 16913503
-}, {
-    id: '3.87',
-    parent: '2.7',
-    name: 'Honduras',
-    value: 9265067
-}, {
-    id: '3.88',
-    parent: '2.7',
-    name: 'El Salvador',
-    value: 6377853
-}, {
-    id: '3.89',
-    parent: '2.7',
-    name: 'Nicaragua',
-    value: 6217581
-}, {
-    id: '3.90',
-    parent: '2.7',
-    name: 'Costa Rica',
-    value: 4905769
-}, {
-    id: '3.91',
-    parent: '2.7',
-    name: 'Panama',
-    value: 4098587
-}, {
-    id: '3.92',
-    parent: '2.7',
-    name: 'Belize',
-    value: 374681
-},
-
-{
-    id: '2.6',
-    parent: '1.2',
-    name: 'Caribbean'
-},
-
-{
-    id: '3.59',
-    parent: '2.6',
-    name: 'Cuba',
-    value: 11484636
-}, {
-    id: '3.60',
-    parent: '2.6',
-    name: 'Haiti',
-    value: 10981229
-}, {
-    id: '3.61',
-    parent: '2.6',
-    name: 'Dominican Republic',
-    value: 10766998
-}, {
-    id: '3.62',
-    parent: '2.6',
-    name: 'Puerto Rico',
-    value: 3663131
-}, {
-    id: '3.63',
-    parent: '2.6',
-    name: 'Jamaica',
-    value: 2890299
-}, {
-    id: '3.64',
-    parent: '2.6',
-    name: 'Trinidad and Tobago',
-    value: 1369125
-}, {
-    id: '3.65',
-    parent: '2.6',
-    name: 'Guadeloupe',
-    value: 449568
-}, {
-    id: '3.66',
-    parent: '2.6',
-    name: 'Bahamas',
-    value: 395361
-}, {
-    id: '3.67',
-    parent: '2.6',
-    name: 'Martinique',
-    value: 384896
-}, {
-    id: '3.68',
-    parent: '2.6',
-    name: 'Barbados',
-    value: 285719
-}, {
-    id: '3.69',
-    parent: '2.6',
-    name: 'Saint Lucia',
-    value: 178844
-}, {
-    id: '3.70',
-    parent: '2.6',
-    name: 'Curaçao',
-    value: 160539
-}, {
-    id: '3.71',
-    parent: '2.6',
-    name: 'Saint Vincent and the Grenadines',
-    value: 109897
-}, {
-    id: '3.72',
-    parent: '2.6',
-    name: 'Grenada',
-    value: 107825
-}, {
-    id: '3.73',
-    parent: '2.6',
-    name: 'Aruba',
-    value: 105264
-}, {
-    id: '3.74',
-    parent: '2.6',
-    name: 'United States Virgin Islands',
-    value: 104901
-}, {
-    id: '3.75',
-    parent: '2.6',
-    name: 'Antigua and Barbuda',
-    value: 102012
-}, {
-    id: '3.76',
-    parent: '2.6',
-    name: 'Dominica',
-    value: 73925
-}, {
-    id: '3.77',
-    parent: '2.6',
-    name: 'Cayman Islands',
-    value: 61559
-}, {
-    id: '3.78',
-    parent: '2.6',
-    name: 'Saint Kitts and Nevis',
-    value: 55345
-}, {
-    id: '3.79',
-    parent: '2.6',
-    name: 'Sint Maarten',
-    value: 40120
-}, {
-    id: '3.80',
-    parent: '2.6',
-    name: 'Turks and Caicos Islands',
-    value: 35446
-}, {
-    id: '3.81',
-    parent: '2.6',
-    name: 'British Virgin Islands',
-    value: 31196
-}, {
-    id: '3.82',
-    parent: '2.6',
-    name: 'Caribbean Netherlands',
-    value: 25398
-}, {
-    id: '3.83',
-    parent: '2.6',
-    name: 'Anguilla',
-    value: 14909
-}, {
-    id: '3.84',
-    parent: '2.6',
-    name: 'Montserrat',
-    value: 5177
-},
-/***********/
-
-/* Asia */
-{
-    id: '2.13',
-    parent: '1.3',
-    name: '长部'
-},
-
-{
-    id: '3.136',
-    parent: '2.13',
-    name: 'India',
-    value: 1339180127
-}, {
-    id: '3.137',
-    parent: '2.13',
-    name: 'Pakistan',
-    value: 197015955
-}, {
-    id: '3.138',
-    parent: '2.13',
-    name: 'Bangladesh',
-    value: 164669751
-}, {
-    id: '3.139',
-    parent: '2.13',
-    name: 'Iran',
-    value: 81162788
-}, {
-    id: '3.140',
-    parent: '2.13',
-    name: 'Afghanistan',
-    value: 35530081
-}, {
-    id: '3.141',
-    parent: '2.13',
-    name: 'Nepal',
-    value: 29304998
-}, {
-    id: '3.142',
-    parent: '2.13',
-    name: 'Sri Lanka',
-    value: 20876917
-}, {
-    id: '3.143',
-    parent: '2.13',
-    name: 'Bhutan',
-    value: 807610
-}, {
-    id: '3.144',
-    parent: '2.13',
-    name: 'Maldives',
-    value: 436330
-},
-
-{
-    id: '2.11',
-    parent: '1.3',
-    name: '中部'
-},
-
-{
-    id: '3.117',
-    parent: '2.11',
-    name: 'China',
-    value: 1409517397
-}, {
-    id: '3.118',
-    parent: '2.11',
-    name: 'Japan',
-    value: 127484450
-}, {
-    id: '3.119',
-    parent: '2.11',
-    name: 'South Korea',
-    value: 50982212
-}, {
-    id: '3.120',
-    parent: '2.11',
-    name: 'North Korea',
-    value: 25490965
-}, {
-    id: '3.121',
-    parent: '2.11',
-    name: 'Taiwan',
-    value: 23626456
-}, {
-    id: '3.122',
-    parent: '2.11',
-    name: 'Hong Kong',
-    value: 7364883
-}, {
-    id: '3.123',
-    parent: '2.11',
-    name: 'Mongolia',
-    value: 3075647
-}, {
-    id: '3.124',
-    parent: '2.11',
-    name: 'Macau',
-    value: 622567
-},
-
-{
-    id: '2.12',
-    parent: '1.3',
-    name: '相应部'
-},
-
-{
-    id: '3.125',
-    parent: '2.12',
-    name: 'Indonesia',
-    value: 263991379
-}, {
-    id: '3.126',
-    parent: '2.12',
-    name: 'Philippines',
-    value: 104918090
-}, {
-    id: '3.127',
-    parent: '2.12',
-    name: 'Vietnam',
-    value: 95540800
-}, {
-    id: '3.128',
-    parent: '2.12',
-    name: 'Thailand',
-    value: 69037513
-}, {
-    id: '3.129',
-    parent: '2.12',
-    name: 'Myanmar',
-    value: 53370609
-}, {
-    id: '3.130',
-    parent: '2.12',
-    name: 'Malaysia',
-    value: 31624264
-}, {
-    id: '3.131',
-    parent: '2.12',
-    name: 'Cambodia',
-    value: 16005373
-}, {
-    id: '3.132',
-    parent: '2.12',
-    name: 'Laos',
-    value: 6858160
-}, {
-    id: '3.133',
-    parent: '2.12',
-    name: 'Singapore',
-    value: 5708844
-}, {
-    id: '3.134',
-    parent: '2.12',
-    name: 'Timor-Leste',
-    value: 1296311
-}, {
-    id: '3.135',
-    parent: '2.12',
-    name: 'Brunei',
-    value: 428697
-    // 'color': ''
-},
-
-{
-    id: '2.14',
-    parent: '1.3',
-    name: '增支部'
-},
-
-{
-    id: '3.145',
-    parent: '2.14',
-    name: 'Turkey',
-    value: 80745020
-}, {
-    id: '3.146',
-    parent: '2.14',
-    name: 'Iraq',
-    value: 38274618
-}, {
-    id: '3.147',
-    parent: '2.14',
-    name: 'Saudi Arabia',
-    value: 32938213
-}, {
-    id: '3.148',
-    parent: '2.14',
-    name: 'Yemen',
-    value: 28250420
-}, {
-    id: '3.149',
-    parent: '2.14',
-    name: 'Syria',
-    value: 18269868
-}, {
-    id: '3.150',
-    parent: '2.14',
-    name: 'Azerbaijan',
-    value: 9827589
-}, {
-    id: '3.151',
-    parent: '2.14',
-    name: 'Jordan',
-    value: 9702353
-}, {
-    id: '3.152',
-    parent: '2.14',
-    name: 'United Arab Emirates',
-    value: 9400145
-}, {
-    id: '3.153',
-    parent: '2.14',
-    name: 'Israel',
-    value: 8321570
-}, {
-    id: '3.154',
-    parent: '2.14',
-    name: 'Lebanon',
-    value: 6082357
-}, {
-    id: '3.155',
-    parent: '2.14',
-    name: 'Palestine',
-    value: 4920724
-}, {
-    id: '3.156',
-    parent: '2.14',
-    name: 'Oman',
-    value: 4636262
-}, {
-    id: '3.157',
-    parent: '2.14',
-    name: 'Kuwait',
-    value: 4136528
-}, {
-    id: '3.158',
-    parent: '2.14',
-    name: 'Georgia',
-    value: 3912061
-}, {
-    id: '3.159',
-    parent: '2.14',
-    name: 'Armenia',
-    value: 2930450
-}, {
-    id: '3.160',
-    parent: '2.14',
-    name: 'Qatar',
-    value: 2639211
-}, {
-    id: '3.161',
-    parent: '2.14',
-    name: 'Bahrain',
-    value: 1492584
-},
 
-{
-    id: '2.10',
-    parent: '1.3',
-    name: '小部'
-},
-
-{
-    id: '3.112',
-    parent: '2.10',
-    name: 'Uzbekistan',
-    value: 31910641
-}, {
-    id: '3.113',
-    parent: '2.10',
-    name: 'Kazakhstan',
-    value: 18204499
-}, {
-    id: '3.114',
-    parent: '2.10',
-    name: 'Tajikistan',
-    value: 8921343
-}, {
-    id: '3.115',
-    parent: '2.10',
-    name: 'Kyrgyzstan',
-    value: 6045117
-}, {
-    id: '3.116',
-    parent: '2.10',
-    name: 'Turkmenistan',
-    value: 5758075
-},
-/***********/
-
-/* Europe */
-{
-    id: '2.15',
-    parent: '1.4',
-    name: 'Eastern Europe'
-},
-
-{
-    id: '3.162',
-    parent: '2.15',
-    name: 'Russia',
-    value: 143989754
-}, {
-    id: '3.163',
-    parent: '2.15',
-    name: 'Ukraine',
-    value: 44222947
-}, {
-    id: '3.164',
-    parent: '2.15',
-    name: 'Poland',
-    value: 38170712
-}, {
-    id: '3.165',
-    parent: '2.15',
-    name: 'Romania',
-    value: 19679306
-}, {
-    id: '3.166',
-    parent: '2.15',
-    name: 'Czechia',
-    value: 10618303
-}, {
-    id: '3.167',
-    parent: '2.15',
-    name: 'Hungary',
-    value: 9721559
-}, {
-    id: '3.168',
-    parent: '2.15',
-    name: 'Belarus',
-    value: 9468338
-}, {
-    id: '3.169',
-    parent: '2.15',
-    name: 'Bulgaria',
-    value: 7084571
-}, {
-    id: '3.170',
-    parent: '2.15',
-    name: 'Slovakia',
-    value: 5447662
-}, {
-    id: '3.171',
-    parent: '2.15',
-    name: 'Moldova',
-    value: 4051212
-}, {
-    id: '3.172',
-    parent: '2.15',
-    name: 'Cyprus',
-    value: 1179551
-},
-
-{
-    id: '2.16',
-    parent: '1.4',
-    name: 'Northern Europe'
-},
-
-{
-    id: '3.173',
-    parent: '2.16',
-    name: 'United Kingdom',
-    value: 66181585
-}, {
-    id: '3.174',
-    parent: '2.16',
-    name: 'Sweden',
-    value: 9910701
-}, {
-    id: '3.175',
-    parent: '2.16',
-    name: 'Denmark',
-    value: 5733551
-}, {
-    id: '3.176',
-    parent: '2.16',
-    name: 'Finland',
-    value: 5523231
-}, {
-    id: '3.177',
-    parent: '2.16',
-    name: 'Norway',
-    value: 5305383
-}, {
-    id: '3.178',
-    parent: '2.16',
-    name: 'Ireland',
-    value: 4761657
-}, {
-    id: '3.179',
-    parent: '2.16',
-    name: 'Lithuania',
-    value: 2890297
-}, {
-    id: '3.180',
-    parent: '2.16',
-    name: 'Latvia',
-    value: 1949670
-}, {
-    id: '3.181',
-    parent: '2.16',
-    name: 'Estonia',
-    value: 1309632
-}, {
-    id: '3.182',
-    parent: '2.16',
-    name: 'Iceland',
-    value: 335025
-}, {
-    id: '3.183',
-    parent: '2.16',
-    name: 'Guernsey and  Jersey',
-    value: 165314
-}, {
-    id: '3.184',
-    parent: '2.16',
-    name: 'Isle of Man',
-    value: 84287
-}, {
-    id: '3.185',
-    parent: '2.16',
-    name: 'Faroe Islands',
-    value: 49290
-},
-
-{
-    id: '2.17',
-    parent: '1.4',
-    name: 'Southern Europe'
-},
-
-{
-    id: '3.186',
-    parent: '2.17',
-    name: 'Italy',
-    value: 59359900
-}, {
-    id: '3.187',
-    parent: '2.17',
-    name: 'Spain',
-    value: 46354321
-}, {
-    id: '3.188',
-    parent: '2.17',
-    name: 'Greece',
-    value: 11159773
-}, {
-    id: '3.189',
-    parent: '2.17',
-    name: 'Portugal',
-    value: 10329506
-}, {
-    id: '3.190',
-    parent: '2.17',
-    name: 'Serbia',
-    value: 8790574
-}, {
-    id: '3.191',
-    parent: '2.17',
-    name: 'Croatia',
-    value: 4189353
-}, {
-    id: '3.192',
-    parent: '2.17',
-    name: 'Bosnia and Herzegovina',
-    value: 3507017
-}, {
-    id: '3.193',
-    parent: '2.17',
-    name: 'Albania',
-    value: 2930187
-}, {
-    id: '3.194',
-    parent: '2.17',
-    name: 'Republic of Macedonia',
-    value: 2083160
-}, {
-    id: '3.195',
-    parent: '2.17',
-    name: 'Slovenia',
-    value: 2079976
-}, {
-    id: '3.196',
-    parent: '2.17',
-    name: 'Montenegro',
-    value: 628960
-}, {
-    id: '3.197',
-    parent: '2.17',
-    name: 'Malta',
-    value: 430835
-}, {
-    id: '3.198',
-    parent: '2.17',
-    name: 'Andorra',
-    value: 76965
-}, {
-    id: '3.199',
-    parent: '2.17',
-    name: 'Gibraltar',
-    value: 34571
-}, {
-    id: '3.200',
-    parent: '2.17',
-    name: 'San Marino',
-    value: 33400
-}, {
-    id: '3.201',
-    parent: '2.17',
-    name: 'Vatican City',
-    value: 792
-},
-
-{
-    id: '2.18',
-    parent: '1.4',
-    name: 'Western Europe'
-},
-
-{
-    id: '3.202',
-    parent: '2.18',
-    name: 'Germany',
-    value: 82114224
-}, {
-    id: '3.203',
-    parent: '2.18',
-    name: 'France',
-    value: 64979548
-}, {
-    id: '3.204',
-    parent: '2.18',
-    name: 'Netherlands',
-    value: 17035938
-}, {
-    id: '3.205',
-    parent: '2.18',
-    name: 'Belgium',
-    value: 11429336
-}, {
-    id: '3.206',
-    parent: '2.18',
-    name: 'Austria',
-    value: 8735453
-}, {
-    id: '3.207',
-    parent: '2.18',
-    name: 'Switzerland',
-    value: 8476005
-}, {
-    id: '3.208',
-    parent: '2.18',
-    name: 'Luxembourg',
-    value: 583455
-}, {
-    id: '3.209',
-    parent: '2.18',
-    name: 'Monaco',
-    value: 38695
-}, {
-    id: '3.210',
-    parent: '2.18',
-    name: 'Liechtenstein',
-    value: 37922
-},
-/***********/
-
-/* Oceania */
-{
-    id: '2.19',
-    parent: '1.5',
-    name: 'Australia and New Zealand'
-},
-
-{
-    id: '3.211',
-    parent: '2.19',
-    name: 'Australia',
-    value: 24450561
-}, {
-    id: '3.212',
-    parent: '2.19',
-    name: 'New Zealand',
-    value: 4705818
-},
-
-{
-    id: '2.20',
-    parent: '1.5',
-    name: 'Melanesia'
-},
-
-{
-    id: '3.213',
-    parent: '2.20',
-    name: 'Papua New Guinea'
-}, {
-    id: '3.214',
-    parent: '2.20',
-    name: 'Fiji',
-    value: 905502
-}, {
-    id: '3.215',
-    parent: '2.20',
-    name: 'Solomon Islands',
-    value: 611343
-}, {
-    id: '3.216',
-    parent: '2.20',
-    name: 'New Caledonia',
-    value: 276255
-}, {
-    id: '3.217',
-    parent: '2.20',
-    name: 'Vanuatu',
-    value: 276244
-},
-
-{
-    id: '2.21',
-    parent: '1.5',
-    name: 'Micronesia'
-},
-
-{
-    id: '3.218',
-    parent: '2.21',
-    name: 'Guam',
-    value: 164229
-}, {
-    id: '3.219',
-    parent: '2.21',
-    name: 'Kiribati',
-    value: 116398
-}, {
-    id: '3.220',
-    parent: '2.21',
-    name: 'Federated States of Micronesia',
-    value: 105544
-}, {
-    id: '3.221',
-    parent: '2.21',
-    name: 'Northern Mariana Islands',
-    value: 55144
-}, {
-    id: '3.222',
-    parent: '2.21',
-    name: 'Marshall Islands',
-    value: 53127
-}, {
-    id: '3.223',
-    parent: '2.21',
-    name: 'Palau',
-    value: 21729
-}, {
-    id: '3.224',
-    parent: '2.21',
-    name: 'Nauru',
-    value: 11359
-},
-
-{
-    id: '2.22',
-    parent: '1.5',
-    name: 'Polynesia'
-},
-
-{
-    id: '3.225',
-    parent: '2.22',
-    name: 'French Polynesia',
-    value: 283007
-}, {
-    id: '3.226',
-    parent: '2.22',
-    name: 'Samoa',
-    value: 196440
-}, {
-    id: '3.227',
-    parent: '2.22',
-    name: 'Tonga',
-    value: 108020
-}, {
-    id: '3.228',
-    parent: '2.22',
-    name: 'American Samoa',
-    value: 55641
-}, {
-    id: '3.229',
-    parent: '2.22',
-    name: 'Cook Islands',
-    value: 17380
-}, {
-    id: '3.230',
-    parent: '2.22',
-    name: 'Wallis and Futuna',
-    value: 11773
-}, {
-    id: '3.231',
-    parent: '2.22',
-    name: 'Tuvalu',
-    value: 11192
-}, {
-    id: '3.232',
-    parent: '2.22',
-    name: 'Niue',
-    value: 1618
-}, {
-    id: '3.233',
-    parent: '2.22',
-    name: 'Tokelau',
-    value: 1300
-}];
-
-// Splice in transparent for the center circle
-Highcharts.getOptions().colors.splice(0, 0, 'transparent');
-
-Highcharts.setOptions({
-		colors: ['#058DC7', '#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572', '#FF9655', '#FFF263', '#6AF9C4']
-	});
-Highcharts.chart('container', {
-
-    chart: {
-        height: '100%'
-    },
-
-    title: {
-        text: '圣典译文完成度'
-    },
-    subtitle: {
-        text: ''
-    },
-    series: [{
-        type: "sunburst",
-        data: data,
-        allowDrillToNode: true,
-        cursor: 'pointer',
-        dataLabels: {
-            format: '{point.name}',
-            filter: {
-                property: 'innerArcLength',
-                operator: '>',
-                value: 16
+<style>
+    #main_video_win iframe{
+        width:100%;
+        height:100%;
+    }
+    #main_tag span{
+        margin: 2px;
+    padding: 2px 12px;
+    font-weight: 500;
+    transition-duration: 0.2s;
+    cursor: pointer;
+    display: inline-flex;
+    align-items: center;
+    flex-wrap: nowrap;
+    justify-content: center;
+        font-size:110%;
+        border: unset;
+        border-radius: 0;
+        border-bottom: 2px solid var(--nocolor);
+    }
+    #main_tag span:hover{
+        background-color:unset;
+        color:unset;
+        border-color: var(--link-hover-color);
+    }
+    #main_tag .select{
+        border-bottom: 2px solid var(--link-color);
+    }
+    tag{
+        background-color: var(--btn-color);
+    margin: 0 0.5em;
+    padding: 3px 10px;
+    border-radius: 4px;
+    }
+</style>
+<?php
+//
+
+require_once "../path.php";
+require_once "../public/_pdo.php";
+require_once '../media/function.php';
+require_once '../public/function.php';
+
+
+
+echo "<div id='course_head_bar' style='background-color:var(--tool-bg-color1);padding:1em 10px 10px 10px;'>";
+echo "<div class='index_inner '>";
+echo "<div style='font-size:140%'>";
+echo "</div>";
+echo '<div id="main_tag"  style="">';
+echo '<span tag="sutta">Sutta</span><span tag="vinaya">Vinaya</span><span tag="abhidhamma">Abhidhamma</span>';
+echo '<span tag="mula">Mula</span><span tag="atthakatha">Aṭṭhakathā</span><span tag="tika">ṭīkā</span><span tag="anna">anna</span>';
+echo '</div>';
+echo '<div id="tag_selected" class="summary"  style="padding-bottom:5px;margin:0.5em 0;"></div>';
+echo '<div id="tag_others" class="summary"  style="padding-bottom:5px;"></div>';
+echo "</div>";
+echo '</div>';
+?>
+<div id ="book_list" class='index_inner' style='display: flex;flex-wrap: wrap;'>
+
+</div>
+
+<script>
+    var main_tag="";
+    var list_tag=new Array();
+    
+
+    $("span[tag]").click(function(){
+        $(this).siblings().removeClass("select");
+        $(this).addClass("select");
+        main_tag = $(this).attr("tag");
+        list_tag=new Array();
+        tag_changed();
+        render_tag_list();
+        /*
+        const tagSelected = document.getElementsByClassName("select");
+        if(tagSelected){
+            let tagList = new Array();
+            for (const iterator of tagSelected) {
+                tagList.push(iterator.getAttributeNode("tag").value);
+            }
+            main_tag = tagList[0];
+
+            tag_changed();
+        }
+        */
+  });
+
+  function tag_changed(){
+    let strTags = "";
+      if(list_tag.length>0){
+        strTags = main_tag + "," + list_tag.join();
+      }
+      else{
+        strTags = main_tag;
+      }
+    console.log(strTags);
+    $.get("book_tag.php",
+            {
+                tag:strTags
             },
-            rotationMode: 'circular'
-        },
-        levels: [{
-            level: 1,
-            levelIsConstant: false,
-            dataLabels: {
-                filter: {
-                    property: 'outerArcLength',
-                    operator: '>',
-                    value: 64
+            function(data,status){
+                let arrBookList = JSON.parse(data);
+                let html="";
+                let allTags = new Array();
+                for (const iterator of arrBookList) {
+                    html += "<div style='width:25%;padding:0.5em;'>";
+                    html += "<div class='card' style='padding:10px;'>";
+                    html += "<div style='font-weight:700'>"+iterator[0].title+"</div>";
+                    html += "</div>";
+                    html += "</div>";
+                    let tags = iterator[0].tag.split("::");
+                    let currTag = new Array();
+                    currTag[main_tag] = 1;
+                    for (const scondTag of list_tag) {
+                        currTag[scondTag]  = 1;
+                    }
+                    for (let tag of tags) {
+                        if(tag.slice(0,1)==":"){
+                            tag = tag.slice(1);
+                        }
+                        if(tag.slice(-1)==":"){
+                            tag = tag.slice(0,-1);
+                        }
+
+                        if(!currTag.hasOwnProperty(tag)){
+                            if(allTags.hasOwnProperty(tag) ){
+                                allTags[tag] += 1;
+                            }
+                            else{
+                                allTags[tag] = 1;
+                            } 
+                        }
+                    }
                 }
-            }
-        }, {
-            level: 2,
-            colorByPoint: true
-        },
-        {
-            level: 3,
-            colorVariation: {
-                key: 'brightness',
-                to: -0.5
-            }
-        }, {
-            level: 4,
-            colorVariation: {
-                key: 'brightness',
-                to: 0.5
-            }
-        }]
-
-    }],
-    tooltip: {
-        headerFormat: "",
-        pointFormat: '三藏译文 <b>{point.name}</b> 为 <b>{point.value}</b>'
-    }
-});
-		</script>
-
-
+                $("#book_list").html(html);
+                let strOthersTag = "";
+                for (const key in allTags) {
+                    if (allTags.hasOwnProperty(key)) {
+                        strOthersTag += "<button onclick =\"tag_click('"+key+"')\" >"+key+"</button>";
+                    }
+                }
+                $("#tag_others").html(strOthersTag);
+            });
+  }
+  function tag_click(tag){
+    list_tag.push(tag);
+    render_tag_list();
+    let strTag = main_tag + "," + list_tag.join();
+    tag_changed();
+  }
+
+  function render_tag_list(){
+    let strListTag = "已经选择:";
+      for (const iterator of list_tag) {
+        strListTag +="<tag>"+iterator+"<span onclick =\"tag_remove('"+iterator+"')\">X</span></tag>";
+      }
+      $("#tag_selected").html(strListTag);
+  }
+
+  function tag_remove(tag){
+      for(let i=0; i<list_tag.length;i++){
+          if(list_tag[i]==tag){
+              list_tag.splice(i,1);
+          }
+      }
+      render_tag_list();
+      tag_changed();
+  }
+</script>
 <?php
 include "../pcdl/html_foot.php";
-?>
+?>

+ 8 - 1
app/pcdl/html_head.php

@@ -52,11 +52,18 @@ else{
 		line-height: 1.3;
 	}
 	.card>.title>a , .card>.title>a:link{
-		color: var(--tool-link-hover-color);
+		color: var(--main-color);
+
 	}
 	.card a:hover{
 		color: var(--tool-link-hover-color);
 	}
 
+	.index_inner {
+    width: 960px;
+    margin-left: auto;
+    margin-right: auto;
+}
+
 	</style>
 </head>

+ 10 - 2
app/pcdl/index.php

@@ -24,9 +24,17 @@ require_once '../pcdl/html_head.php';
 	.index_list_categories{
 		margin-bottom: 2em;
 	}
-	.index_list_categories a,a:link{
+	
+	.index_list_categories a:hover{
 		color: var(--tool-link-hover-color);
 	}
+	.index_list_categories a,a:link{
+		color: var(--main-color);
+	}
+	.index_list_categories button{
+		border: none;
+	}
+	
 	.pd-10{
 		padding:10px;
 	}
@@ -44,7 +52,7 @@ require_once '../pcdl/html_head.php';
 <div class="index_list_categories">
 		<div class="title_bar">
 			<span class="title h3">圣典</span>	
-			<span class="title_more"><a href="../course">更多</a></span>
+			<span class="title_more"><a href="../palicanon">更多</a></span>
 		</div>
 		<div class="content">
 			<div class="content_inner">

+ 1 - 0
app/pcdl/reader.php

@@ -579,6 +579,7 @@ else{
 			echo "Error:no paragraph info";
 			echo $query;
 		}
+		$currLevel = $FetchParInfo[0]["level"];
 		$par_begin=$paragraph+1-1;
 		if($_view=="para"){
 			$par_end = $par_begin;

+ 1471 - 0
app/public/book_tag/en.json

@@ -0,0 +1,1471 @@
+[
+  { "book": "1", "para": "2", "title": "Namakkārapāḷi", "tag": ":anna:" },
+  { "book": "1", "para": "159", "title": "Namakkāraṭīkā", "tag": ":anna:" },
+  { "book": "2", "para": "2", "title": "Mahāpaṇāmapāṭha", "tag": ":anna:" },
+  {
+    "book": "2",
+    "para": "428",
+    "title": "Tigumbacetiya thomanā",
+    "tag": ":anna:"
+  },
+  { "book": "2", "para": "479", "title": "Vāsamālinīkya", "tag": ":anna:" },
+  { "book": "3", "para": "2", "title": "Lakkhaṇāto", "tag": ":anna:" },
+  { "book": "4", "para": "2", "title": "Suttavandanā", "tag": ":anna:" },
+  { "book": "5", "para": "2", "title": "Jinālaṅkāra", "tag": ":anna:" },
+  { "book": "6", "para": "2", "title": "Kamalāñjali", "tag": ":anna:" },
+  { "book": "7", "para": "2", "title": "Pajjamadhu", "tag": ":anna:" },
+  { "book": "8", "para": "2", "title": "Buddhaguṇagāthāvalī", "tag": ":anna:" },
+  {
+    "book": "9",
+    "para": "2",
+    "title": "Abhidhānappadīpikāṭīkā",
+    "tag": ":anna:"
+  },
+  { "book": "10", "para": "2", "title": "Subodhālaṅkāro", "tag": ":anna:" },
+  { "book": "11", "para": "2", "title": "Subodhālaṅkāraṭīkā", "tag": ":anna:" },
+  { "book": "12", "para": "2", "title": "Bālāvatāra", "tag": ":anna:" },
+  {
+    "book": "13",
+    "para": "2",
+    "title": "Moggallānasuttapāṭho",
+    "tag": ":anna:"
+  },
+  {
+    "book": "13",
+    "para": "1105",
+    "title": "Moggallānabyākaraṇaṃ",
+    "tag": ":anna:"
+  },
+  {
+    "book": "14",
+    "para": "2",
+    "title": "Kaccāyanabyākaraṇaṃ",
+    "tag": ":anna:"
+  },
+  {
+    "book": "14",
+    "para": "715",
+    "title": "Mahākaccāyanasaddāpāṭha",
+    "tag": ":anna:"
+  },
+  {
+    "book": "15",
+    "para": "2",
+    "title": "Saddanītippakaraṇaṃ (padamālā)",
+    "tag": ":anna:"
+  },
+  {
+    "book": "16",
+    "para": "2",
+    "title": "Saddanītippakaraṇaṃ (dhātumālā)",
+    "tag": ":anna:"
+  },
+  { "book": "17", "para": "2", "title": "Padarūpasiddhi", "tag": ":anna:" },
+  {
+    "book": "18",
+    "para": "2",
+    "title": "Moggallāna pañcikā ṭīkā",
+    "tag": ":anna:"
+  },
+  { "book": "19", "para": "2", "title": "Payogasiddhipāḷi", "tag": ":anna:" },
+  { "book": "20", "para": "2", "title": "Vuttodayaṃ", "tag": ":anna:" },
+  { "book": "21", "para": "2", "title": "Abhidhānappadīpikā", "tag": ":anna:" },
+  { "book": "22", "para": "2", "title": "Niruttidīpanīpāṭha", "tag": ":anna:" },
+  { "book": "23", "para": "2", "title": "Paramatthadīpanī", "tag": ":anna:" },
+  { "book": "24", "para": "2", "title": "Anudīpanīpāṭha", "tag": ":anna:" },
+  {
+    "book": "25",
+    "para": "2",
+    "title": "Paṭṭhānuddesa dīpanīpāṭha",
+    "tag": ":anna:"
+  },
+  { "book": "26", "para": "2", "title": "Caturārakkhadīpanī", "tag": ":anna:" },
+  { "book": "27", "para": "2", "title": "Kavidappaṇanīti", "tag": ":anna:" },
+  { "book": "28", "para": "2", "title": "Nītimañjarī", "tag": ":anna:" },
+  { "book": "29", "para": "2", "title": "Dhammanīti", "tag": ":anna:" },
+  { "book": "30", "para": "2", "title": "Mahārahanīti", "tag": ":anna:" },
+  { "book": "31", "para": "2", "title": "Lokanīti", "tag": ":anna:" },
+  { "book": "32", "para": "2", "title": "Suttantanīti", "tag": ":anna:" },
+  { "book": "32", "para": "134", "title": "Vasalasutta", "tag": ":anna:" },
+  { "book": "33", "para": "2", "title": "Sūrassatīnīti", "tag": ":anna:" },
+  { "book": "34", "para": "2", "title": "Cāṇakyanītipāḷi", "tag": ":anna:" },
+  { "book": "35", "para": "2", "title": "Naradakkhadīpanī", "tag": ":anna:" },
+  { "book": "36", "para": "2", "title": "Rasavāhinī", "tag": ":anna:" },
+  { "book": "37", "para": "2", "title": "Sīmavisodhanī", "tag": ":anna:" },
+  { "book": "38", "para": "2", "title": "Vessantarāgīti", "tag": ":anna:" },
+  {
+    "book": "39",
+    "para": "3",
+    "title": "(saṅgayana-puccha vissajjanā) Dīghanikāye",
+    "tag": ":anna:"
+  },
+  {
+    "book": "40",
+    "para": "3",
+    "title": "(saṅgayana-puccha vissajjanā) Majjhimanikāya",
+    "tag": ":anna:"
+  },
+  {
+    "book": "41",
+    "para": "3",
+    "title": "(saṅgayana-puccha vissajjanā) Saṃyuttanikāye",
+    "tag": ":anna:"
+  },
+  {
+    "book": "42",
+    "para": "3",
+    "title": "(saṅgayana-puccha vissajjanā) Aṅguttaranikāye",
+    "tag": ":anna:"
+  },
+  {
+    "book": "43",
+    "para": "2",
+    "title": "(saṅgayana-puccha vissajjanā) Vinayapiṭaka",
+    "tag": ":anna:"
+  },
+  {
+    "book": "44",
+    "para": "2",
+    "title": "(saṅgayana-puccha vissajjanā) Abhidhammapiṭaka",
+    "tag": ":anna:"
+  },
+  {
+    "book": "45",
+    "para": "2",
+    "title": "(saṅgayana-puccha vissajjanā) Aṭṭhakathā",
+    "tag": ":anna:"
+  },
+  { "book": "46", "para": "1", "title": "Milidaṭīkā", "tag": ":anna:" },
+  { "book": "47", "para": "1", "title": "Padamañjarī ", "tag": ":anna:" },
+  { "book": "48", "para": "1", "title": "Padasādhanaṃ ", "tag": ":anna:" },
+  {
+    "book": "49",
+    "para": "1",
+    "title": "Saddabindu pakaraṇaṃ",
+    "tag": ":anna:"
+  },
+  {
+    "book": "50",
+    "para": "1",
+    "title": "Kaccāyana  dhātu mañjūsā",
+    "tag": ":anna:"
+  },
+  {
+    "book": "51",
+    "para": "1",
+    "title": "Samantakūṭavaṇṇanā ",
+    "tag": ":anna:"
+  },
+  {
+    "book": "52",
+    "para": "1",
+    "title": "Moggallāna vuttivivaraṇapañcikā. ",
+    "tag": ":anna:"
+  },
+  { "book": "53", "para": "1", "title": "Thupavaṃso ", "tag": ":anna:" },
+  { "book": "54", "para": "1", "title": "Dāṭhāvaṃso ", "tag": ":anna:" },
+  {
+    "book": "55",
+    "para": "1",
+    "title": "Dhātupāṭha  vilāsiniyā",
+    "tag": ":anna:"
+  },
+  { "book": "56", "para": "1", "title": "Dhātuvaṃso ", "tag": ":anna:" },
+  {
+    "book": "57",
+    "para": "1",
+    "title": "Hatthavanagallavihāra  vaṃso",
+    "tag": ":anna:"
+  },
+  {
+    "book": "58",
+    "para": "1",
+    "title": "Jinacaritaya ",
+    "tag": ":anna::atthakatha:"
+  },
+  {
+    "book": "59",
+    "para": "1",
+    "title": "Jinavaṃsadīpaṃ ",
+    "tag": ":anna::atthakatha:"
+  },
+  {
+    "book": "60",
+    "para": "1",
+    "title": "Telakaṭāhagāthā ",
+    "tag": ":anna::tika:"
+  },
+  {
+    "book": "61",
+    "para": "2",
+    "title": "Cūḷaganthavaṃsapāḷi",
+    "tag": ":anna::tika:"
+  },
+  {
+    "book": "62",
+    "para": "2",
+    "title": "Sāsanavaṃsappadīpikā",
+    "tag": ":anna::tika:"
+  },
+  {
+    "book": "63",
+    "para": "2",
+    "title": "Mahāvaṃsapāḷi",
+    "tag": ":anna::mula:"
+  },
+  {
+    "book": "64",
+    "para": "2",
+    "title": "Visuddhimaggo(Paṭhamo bhāgo)",
+    "tag": ":anna::mula:"
+  },
+  {
+    "book": "65",
+    "para": "2",
+    "title": "Visuddhimaggo(Dutiyo bhāgo)",
+    "tag": ":anna::mula:"
+  },
+  {
+    "book": "66",
+    "para": "2",
+    "title": "Visuddhimagga-mahāṭīkā(Paṭhamo bhāgo)",
+    "tag": ":anna::mula:"
+  },
+  {
+    "book": "67",
+    "para": "2",
+    "title": "Visuddhimagga-mahāṭīkā(Dutiyo bhāgo)",
+    "tag": ":anna::mula:"
+  },
+  {
+    "book": "68",
+    "para": "2",
+    "title": "Visuddhimagga nidānakathā",
+    "tag": ":anna::mula:"
+  },
+  {
+    "book": "69",
+    "para": "3",
+    "title": "Paṭṭhānapāḷi(Dutiyo bhāgo)",
+    "tag": ":abhidhamma::mula::Paṭṭhāna:"
+  },
+  {
+    "book": "70",
+    "para": "3",
+    "title": "Paṭṭhānapāḷi(Tatiyo bhāgo)",
+    "tag": ":abhidhamma::mula::Paṭṭhāna:"
+  },
+  {
+    "book": "71",
+    "para": "3",
+    "title": "Paṭṭhānapāḷi(Catuttho bhāgo)",
+    "tag": ":abhidhamma::mula::Paṭṭhāna:"
+  },
+  {
+    "book": "72",
+    "para": "3",
+    "title": "Paṭṭhānapāḷi(Pañcamo bhāgo)",
+    "tag": ":abhidhamma::mula::Paṭṭhāna:"
+  },
+  {
+    "book": "73",
+    "para": "3",
+    "title": "Dhammasaṅgaṇīpāḷi",
+    "tag": ":abhidhamma::mula:"
+  },
+  {
+    "book": "74",
+    "para": "3",
+    "title": "Vibhaṅgapāḷi",
+    "tag": ":abhidhamma::mula:"
+  },
+  {
+    "book": "75",
+    "para": "3",
+    "title": "Dhātukathāpāḷi",
+    "tag": ":abhidhamma::mula:"
+  },
+  {
+    "book": "76",
+    "para": "3",
+    "title": "Puggalapaññattipāḷi",
+    "tag": ":abhidhamma::mula:"
+  },
+  {
+    "book": "77",
+    "para": "3",
+    "title": "Kathāvatthupāḷi",
+    "tag": ":abhidhamma::mula:"
+  },
+  {
+    "book": "78",
+    "para": "3",
+    "title": "Yamakapāḷi (paṭhamo bhāgo)",
+    "tag": ":abhidhamma::mula:"
+  },
+  {
+    "book": "79",
+    "para": "3",
+    "title": "Yamakapāḷi (dutiyo bhāgo)",
+    "tag": ":abhidhamma::mula:"
+  },
+  {
+    "book": "80",
+    "para": "3",
+    "title": "Yamakapāḷi (tatiyo bhāgo)",
+    "tag": ":abhidhamma::mula:"
+  },
+  {
+    "book": "81",
+    "para": "3",
+    "title": "Paṭṭhānapāḷi(Paṭhamo bhāgo)",
+    "tag": ":abhidhamma::mula::Paṭṭhāna:"
+  },
+  {
+    "book": "82",
+    "para": "3",
+    "title": "Dasakanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "83",
+    "para": "3",
+    "title": "Ekādasakanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "84",
+    "para": "3",
+    "title": "Ekakanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "85",
+    "para": "3",
+    "title": "Dukanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "86",
+    "para": "3",
+    "title": "Tikanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "87",
+    "para": "3",
+    "title": "Catukkanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "88",
+    "para": "3",
+    "title": "Pañcakanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "89",
+    "para": "3",
+    "title": "Chakkanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "90",
+    "para": "3",
+    "title": "Sattakanipātapāḷi",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "91",
+    "para": "3",
+    "title": "Aṭṭhakanipātapāḷi",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "92",
+    "para": "3",
+    "title": "Navakanipātapāḷi",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "93",
+    "para": "3",
+    "title": "(DN) Sīlakkhandhavaggapāḷi",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "94",
+    "para": "3",
+    "title": "(DN) Mahāvaggapāḷi",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "95",
+    "para": "3",
+    "title": "(DN) Pāthikavaggapāḷi",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "96",
+    "para": "4",
+    "title": "Dhammasaṅgaṇī-aṭṭhakathā",
+    "tag": ":abhidhamma::atthakatha:"
+  },
+  {
+    "book": "97",
+    "para": "4",
+    "title": "Vibhaṅga-aṭṭhakathā",
+    "tag": ":abhidhamma::atthakatha:"
+  },
+  {
+    "book": "98",
+    "para": "4",
+    "title": "Dhātukathā-aṭṭhakathā",
+    "tag": ":abhidhamma::atthakatha:"
+  },
+  {
+    "book": "98",
+    "para": "173",
+    "title": "Puggalapaññatti-aṭṭhakathā",
+    "tag": ":abhidhamma::atthakatha:"
+  },
+  {
+    "book": "98",
+    "para": "474",
+    "title": "Kathāvatthu-aṭṭhakathā",
+    "tag": ":abhidhamma::atthakatha:"
+  },
+  {
+    "book": "98",
+    "para": "1623",
+    "title": "Yamakappakaraṇa-aṭṭhakathā",
+    "tag": ":abhidhamma::atthakatha:"
+  },
+  {
+    "book": "98",
+    "para": "1880",
+    "title": "Paṭṭhānappakaraṇa-aṭṭhakathā",
+    "tag": ":abhidhamma::atthakatha::Paṭṭhāna:"
+  },
+  {
+    "book": "99",
+    "para": "3",
+    "title": "Ekakanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "100",
+    "para": "3",
+    "title": "Dukanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "100",
+    "para": "325",
+    "title": "Tikanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "100",
+    "para": "997",
+    "title": "Catukkanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "101",
+    "para": "3",
+    "title": "Pañcakanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "101",
+    "para": "503",
+    "title": "Chakkanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "101",
+    "para": "792",
+    "title": "Sattakanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "102",
+    "para": "3",
+    "title": "Aṭṭhakanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "102",
+    "para": "275",
+    "title": "Navakanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "102",
+    "para": "409",
+    "title": "Dasakanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "102",
+    "para": "706",
+    "title": "Ekādasakanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "103",
+    "para": "3",
+    "title": "(DN) Sīlakkhandhavaggaṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "104",
+    "para": "3",
+    "title": "(DN) Mahāvaggaṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "105",
+    "para": "3",
+    "title": "(DN) Pāthikavaggaṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "106",
+    "para": "3",
+    "title": "Therīgāthā-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "107",
+    "para": "3",
+    "title": "Apadāna-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "108",
+    "para": "3",
+    "title": "Buddhavaṃsa-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "109",
+    "para": "3",
+    "title": "Cariyāpiṭaka-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "110",
+    "para": "4",
+    "title": "Jātaka-aṭṭhakathā(Paṭhamo bhāgo)",
+    "tag": ":sutta::atthakatha::jataka:"
+  },
+  {
+    "book": "111",
+    "para": "3",
+    "title": "Jātaka-aṭṭhakathā(Dutiyo bhāgo)",
+    "tag": ":sutta::atthakatha::jataka:"
+  },
+  {
+    "book": "112",
+    "para": "4",
+    "title": "Jātaka-aṭṭhakathā(Tatiyo bhāgo)",
+    "tag": ":sutta::atthakatha::jataka:"
+  },
+  {
+    "book": "113",
+    "para": "4",
+    "title": "Jātaka-aṭṭhakathā(Catuttho bhāgo)",
+    "tag": ":sutta::atthakatha::jataka:"
+  },
+  {
+    "book": "113",
+    "para": "5312",
+    "title": "Jātaka-aṭṭhakathā(Pañcamo bhāgo 16)",
+    "tag": ":sutta::atthakatha::jataka:"
+  },
+  {
+    "book": "114",
+    "para": "1",
+    "title": "Jātaka-aṭṭhakathā(Pañcamo bhāgo 17-21)",
+    "tag": ":sutta::atthakatha::jataka:"
+  },
+  {
+    "book": "115",
+    "para": "3",
+    "title": "Jātaka-aṭṭhakathā(Chaṭṭho bhāgo)",
+    "tag": ":sutta::atthakatha::jataka:"
+  },
+  {
+    "book": "116",
+    "para": "3",
+    "title": "Khuddakapāṭha-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "117",
+    "para": "3",
+    "title": "Jātaka-aṭṭhakathā(Sattamo bhāgo)",
+    "tag": ":sutta::atthakatha::jataka:"
+  },
+  {
+    "book": "118",
+    "para": "3",
+    "title": "Mahāniddesa-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "119",
+    "para": "3",
+    "title": "Cūḷaniddesa-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "120",
+    "para": "3",
+    "title": "Paṭisambhidāmagga-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "121",
+    "para": "3",
+    "title": "Nettippakaraṇa-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "122",
+    "para": "3",
+    "title": "Dhammapada-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "123",
+    "para": "3",
+    "title": "Udāna-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "124",
+    "para": "3",
+    "title": "Itivuttaka-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "125",
+    "para": "3",
+    "title": "Suttanipāta-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "126",
+    "para": "3",
+    "title": "Vimānavatthu-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "127",
+    "para": "3",
+    "title": "Petavatthu-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "128",
+    "para": "3",
+    "title": "Theragāthā-aṭṭhakathā(Paṭhamo bhāgo)",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "129",
+    "para": "3",
+    "title": "Theragāthā-aṭṭhakathā(Dutiyo bhāgo)",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "130",
+    "para": "3",
+    "title": "(MN) Mūlapaṇṇāsa-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "131",
+    "para": "3",
+    "title": "(MN) Majjhimapaṇṇāsa-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "132",
+    "para": "3",
+    "title": "(MN) Uparipaṇṇāsa-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "133",
+    "para": "3",
+    "title": "(SN) Sagāthāvagga-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "134",
+    "para": "3",
+    "title": "(SN) Nidānavagga-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "135",
+    "para": "3",
+    "title": "(SN) Khandhavagga-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "136",
+    "para": "3",
+    "title": "(SN) Saḷāyatanavagga-aṭṭhakathā",
+    "tag": ":sutta::atthakatha:"
+  },
+  {
+    "book": "137",
+    "para": "3",
+    "title": "(SN) Mahāvagga-aṭṭhakathā",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "138",
+    "para": "3",
+    "title": "Pārājikakaṇḍa-aṭṭhakathā",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "139",
+    "para": "3",
+    "title": "(SP) Pācittiya-aṭṭhakathā",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "140",
+    "para": "3",
+    "title": "(SP) Mahāvagga-aṭṭhakathā",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "141",
+    "para": "3",
+    "title": "(SP) Cūḷavagga-aṭṭhakathā",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "142",
+    "para": "3",
+    "title": "(SP) Parivāra-aṭṭhakathā",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "143",
+    "para": "3",
+    "title": "Therāpadānapāḷi(Paṭhamo bhāgo)",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "144",
+    "para": "3",
+    "title": "Therāpadānapāḷi(Dutiyo bhāgo)",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "144",
+    "para": "6534",
+    "title": "Therīapadānapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "145",
+    "para": "3",
+    "title": "Buddhavaṃsapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "146",
+    "para": "3",
+    "title": "Cariyāpiṭakapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "147",
+    "para": "3",
+    "title": "Jātakapāḷi(Dutiyo bhāgo)",
+    "tag": ":sutta::mula::jataka:"
+  },
+  {
+    "book": "148",
+    "para": "3",
+    "title": "Jātakapāḷi(Paṭhamo bhāgo)",
+    "tag": ":sutta::mula::jataka:"
+  },
+  {
+    "book": "149",
+    "para": "3",
+    "title": "Mahāniddesapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "150",
+    "para": "3",
+    "title": "Cūḷaniddesapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "151",
+    "para": "3",
+    "title": "Paṭisambhidāmaggapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "152",
+    "para": "3",
+    "title": "Milindapañhapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "153",
+    "para": "3",
+    "title": "Nettippakaraṇapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "154",
+    "para": "3",
+    "title": "Khuddakapāṭhapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "155",
+    "para": "3",
+    "title": "Peṭakopadesapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "156",
+    "para": "3",
+    "title": "Dhammapadapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  { "book": "157", "para": "3", "title": "Udānapāḷi", "tag": ":sutta::mula:" },
+  {
+    "book": "158",
+    "para": "3",
+    "title": "Itivuttakapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "159",
+    "para": "3",
+    "title": "Suttanipātapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "160",
+    "para": "3",
+    "title": "Vimānavatthupāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "161",
+    "para": "3",
+    "title": "Petavatthupāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "162",
+    "para": "3",
+    "title": "Theragāthāpāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "163",
+    "para": "3",
+    "title": "Therīgāthāpāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "164",
+    "para": "3",
+    "title": "(MN)Mūlapaṇṇāsapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "165",
+    "para": "3",
+    "title": "(MN)Majjhimapaṇṇāsapāḷi",
+    "tag": ":sutta::mula:"
+  },
+  {
+    "book": "166",
+    "para": "3",
+    "title": "(MN)Uparipaṇṇāsapāḷi",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "167",
+    "para": "3",
+    "title": "(SN)Sagāthāvaggo",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "168",
+    "para": "3",
+    "title": "(SN)Nidānavaggo",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "169",
+    "para": "3",
+    "title": "(SN)Khandhavaggo",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "170",
+    "para": "3",
+    "title": "(SN)Saḷāyatanavaggo",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "171",
+    "para": "3",
+    "title": "(SN)Mahāvaggo",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "172",
+    "para": "3",
+    "title": "Dhammasaṅgaṇī-mūlaṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "173",
+    "para": "3",
+    "title": "Vibhaṅga-mūlaṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "173",
+    "para": "1155",
+    "title": "Vibhaṅga-anuṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "174",
+    "para": "4",
+    "title": "Dhātukathāpakaraṇa-mūlaṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "174",
+    "para": "100",
+    "title": "Puggalapaññattipakaraṇa-mūlaṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "174",
+    "para": "201",
+    "title": "Kathāvatthupakaraṇa-mūlaṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "174",
+    "para": "865",
+    "title": "Yamakapakaraṇa-mūlaṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "174",
+    "para": "1059",
+    "title": "Paṭṭhānapakaraṇa-mūlaṭīkā",
+    "tag": ":abhidhamma::tika::Paṭṭhāna:"
+  },
+  {
+    "book": "175",
+    "para": "3",
+    "title": "Dhammasaṅgaṇī-anuṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "176",
+    "para": "4",
+    "title": "Dhātukathāpakaraṇa-anuṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "176",
+    "para": "117",
+    "title": "Puggalapaññattipakaraṇa-anuṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "176",
+    "para": "213",
+    "title": "Kathāvatthupakaraṇa-anuṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "176",
+    "para": "917",
+    "title": "Yamakapakaraṇa-anuṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "176",
+    "para": "1139",
+    "title": "Paṭṭhānapakaraṇa-anuṭīkā",
+    "tag": ":abhidhamma::tika::Paṭṭhāna:"
+  },
+  {
+    "book": "177",
+    "para": "2",
+    "title": "Abhidhammāvatāro",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "177",
+    "para": "4805",
+    "title": "Nāmarūpaparicchedo",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "177",
+    "para": "10627",
+    "title": "Paramatthavinicchayo",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "177",
+    "para": "14272",
+    "title": "Saccasaṅkhepo",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "178",
+    "para": "2",
+    "title": "Abhidhammatthasaṅgaho",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "178",
+    "para": "875",
+    "title": "Abhidhammatthavibhāvinīṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "179",
+    "para": "2",
+    "title": "Abhidhammāvatāra-purāṇaṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "179",
+    "para": "872",
+    "title": "Abhidhammāvatāra-abhinavaṭīkā",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "180",
+    "para": "2",
+    "title": "Abhidhammamātikāpāḷi",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "180",
+    "para": "1221",
+    "title": "Mohavicchedanī",
+    "tag": ":abhidhamma::tika:"
+  },
+  {
+    "book": "181",
+    "para": "3",
+    "title": "Ekakanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "182",
+    "para": "3",
+    "title": "Dukanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "182",
+    "para": "324",
+    "title": "Tikanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "182",
+    "para": "1023",
+    "title": "Catukkanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "183",
+    "para": "3",
+    "title": "Pañcakanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "183",
+    "para": "470",
+    "title": "Chakkanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "183",
+    "para": "793",
+    "title": "Sattakanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "184",
+    "para": "3",
+    "title": "Aṭṭhakanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "184",
+    "para": "278",
+    "title": "Navakanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "184",
+    "para": "466",
+    "title": "Dasakanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "184",
+    "para": "776",
+    "title": "Ekādasakanipāta-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "185",
+    "para": "3",
+    "title": "(DN)Sīlakkhandhavaggaṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "186",
+    "para": "3",
+    "title": "(DN)Mahāvaggaṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "187",
+    "para": "3",
+    "title": "(DN)Pāthikavaggaṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "188",
+    "para": "3",
+    "title": "(DN)Sīlakkhandhavaggaabhinavaṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "189",
+    "para": "3",
+    "title": "(DN)Sīlakkhandhavaggaabhinavaṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "190",
+    "para": "3",
+    "title": "Nettippakaraṇa-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "191",
+    "para": "3",
+    "title": "Nettivibhāvinī",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "192",
+    "para": "3",
+    "title": "(MN)Mūlapaṇṇāsa-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "193",
+    "para": "3",
+    "title": "(MN)Majjhimapaṇṇāsa-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "194",
+    "para": "3",
+    "title": "(MN)Uparipaṇṇāsa-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "195",
+    "para": "3",
+    "title": "(SN)Sagāthāvagga-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "196",
+    "para": "3",
+    "title": "(SN)Nidānavagga-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "197",
+    "para": "3",
+    "title": "(SN)Khandhavagga-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "198",
+    "para": "3",
+    "title": "(SN)Saḷāyatanavagga-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "199",
+    "para": "3",
+    "title": "(SN)Mahāvagga-ṭīkā",
+    "tag": ":sutta::tika:"
+  },
+  {
+    "book": "200",
+    "para": "2",
+    "title": "Vinayavinicchayo",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "200",
+    "para": "10176",
+    "title": "Uttaravinicchayo",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "201",
+    "para": "2",
+    "title": "Vinayavinicchaya-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "201",
+    "para": "4270",
+    "title": "Uttaravinicchaya-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "202",
+    "para": "3",
+    "title": "Pācityādiyojanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "203",
+    "para": "3",
+    "title": "Khuddasikkhā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "203",
+    "para": "1620",
+    "title": "Khuddasikkhā-purāṇaṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "203",
+    "para": "2361",
+    "title": "Khuddasikkhā-abhinavaṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "203",
+    "para": "3100",
+    "title": "Mūlasikkhā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "203",
+    "para": "3481",
+    "title": "Mūlasikkhā-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "204",
+    "para": "3",
+    "title": "Sāratthadīpanī-ṭīkā (paṭhamo bhāgo)",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "205",
+    "para": "3",
+    "title": "(SAD) Pārājika-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "206",
+    "para": "3",
+    "title": "(SAD) Pācittiya-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "206",
+    "para": "717",
+    "title": "(SAD) Mahāvagga-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "206",
+    "para": "1753",
+    "title": "(SAD) Cūḷavagga-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "206",
+    "para": "2154",
+    "title": "(SAD) Parivāra-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "207",
+    "para": "3",
+    "title": "Bhikkhupātimokkhapāḷi",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "207",
+    "para": "524",
+    "title": "Bhikkhunīpātimokkhapāḷi",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "207",
+    "para": "1215",
+    "title": "Kaṅkhāvitaraṇī-aṭṭhakathā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "208",
+    "para": "3",
+    "title": "Vinayasaṅgaha-aṭṭhakathā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "209",
+    "para": "3",
+    "title": "Vajirabuddhi-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "209",
+    "para": "166",
+    "title": "Pārājikavaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "209",
+    "para": "992",
+    "title": "Pācittiyavaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "209",
+    "para": "1708",
+    "title": "Mahāvaggavaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "209",
+    "para": "2217",
+    "title": "Cūḷavaggavaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "209",
+    "para": "2428",
+    "title": "Parivāravaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "210",
+    "para": "3",
+    "title": "Bhikkhuvibhaṅgavaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "210",
+    "para": "1658",
+    "title": "Bhikkhunīvibhaṅgavaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "210",
+    "para": "1779",
+    "title": "Mahāvaggavaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "210",
+    "para": "2431",
+    "title": "Cūḷavaggavaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "210",
+    "para": "2792",
+    "title": "Parivāravaṇṇanā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "211",
+    "para": "3",
+    "title": "Vinayālaṅkāra-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "212",
+    "para": "2",
+    "title": "Kaṅkhāvitaraṇīpurāṇa-ṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "212",
+    "para": "671",
+    "title": "Kaṅkhāvitaraṇī-abhinavaṭīkā",
+    "tag": ":vinaya::tika:"
+  },
+  {
+    "book": "213",
+    "para": "3",
+    "title": "(VN)Pārājikapāḷi",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "214",
+    "para": "3",
+    "title": "(VN)Pācittiyapāḷi",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "215",
+    "para": "3",
+    "title": "(VN)Mahāvaggapāḷi",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "216",
+    "para": "3",
+    "title": "(VN)Cūḷavaggapāḷi",
+    "tag": ":vinaya::mula:"
+  },
+  {
+    "book": "217",
+    "para": "3",
+    "title": "(VN)Parivārapāḷi",
+    "tag": ":vinaya::mula:"
+  }
+]

+ 1 - 0
app/studio/editor.php

@@ -972,6 +972,7 @@ var suttaDom = document.getElementById('sutta_text');
 		return;
 	 }
 	 var top = getElementViewTop(suttaDom);
+	 //console.log(Date() +"-"+top);
 	 //top < 0 ? fixedDom.classList.add("fixed") : fixedDom.classList.remove("fixed");
 	 if(top>-500){
 		scrollEventLock=true;