1<!DOCTYPE html> 2<html lang="zh-Hant-TW"> 3<head> 4 <meta charset="UTF-8"> 5 <meta http-equiv="cache-control" content="no-cache"> 6 <meta http-equiv="pragma" content="no-cache"> 7 <meta http-equiv="expires" content="0"> 8 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 9 <meta name="description" content="" /> 10 <meta http-equiv="content-language" content="zh-Hant-TW" /> 11 <title>æ æ¿å¤§å¸-æ ¡åæ¥èª æ¦®è½æ¦</title> 12 <link rel="stylesheet" href="src/bootstrap-4.5.0/css/bootstrap.min.css"> 13 <link rel="stylesheet" href="src/css/styles.css"> 14 <link rel="stylesheet" href="src/fontawesome/css/all.min.css"> 15
15<script src="src/js/jquery-3.7.1.min.js"></script>
15 16
16<script src="src/bootstrap-4.5.0/js/popper.min.js"></script>
16 17
17<script src="src/bootstrap-4.5.0/js/bootstrap.min.js"></script>
17 18</head> 19<body><nav class="navbar sticky-top navbar-expand-lg navbar-dark bg-blue py-3"> 20 <span class="navbar-brand" ><h4 style="font-weight:bold;">æ æ¿å¤§å¸</h4></span> 21 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> 22 <span class="navbar-toggler-icon"></span> 23 </button> 24 25 <div class="collapse navbar-collapse" id="navbarSupportedContent"> 26 <ul class="navbar-nav mr-auto"> 27 <li class="nav-item" id="school"> 28 <a class="nav-link" href="index.php?op=school">æ ¡åæ¥èª</a> 29 </li> 30 <li class="nav-item" id="honor"> 31 <a class="nav-link" href="index.php?op=honor">æ¦®è½æ¦</a> 32 </li> 33 <li class="nav-item" id="student"> 34 <a class="nav-link" href="index.php?op=student">åªç§æ ¡å</a> 35 </li> 36 <li class="nav-item" id="news"> 37 <a class="nav-link" href="index.php?op=news">å¤§ææ°è</a> 38 </li> 39 <li class="nav-item" id="overseas"> 40 <a class="nav-link" href="index.php?op=overseas">æµ·å¤äº¤æµ</a> 41 </li> 42 </ul> 43 <form class="form-inline"> 44 <!-- <button class="btn btn-success d-none d-lg-inline" type="button" onclick="$('#DescriptionModal').modal('show');"><i class="fas fa-bookmark"></i></button> --> 45 <div class="d-none d-lg-block"> 46 <div class="bg-white rounded d-inline" style="height:38px;"> 47 <input class="form-control search-input" type="text" name="search_string" placeholder="ééµå" onkeypress="return EnterSearch(event)"> 48 <button class="btn btn-light bg-white search-btn" style="margin-left:-4px" type="button" onclick="Search()"><i class="fas fa-search"></i></button> 49 </div> 50 <br> 51 <small class="text-white">å¯ç¨å¤åééµåæå°ï¼éç¨ç©ºç½å°ééµååéã</small> 52 </div> 53 </form> 54 </div> 55</nav> 56<div class="fixed-bottom p-1 bg-blue d-none rwd-search" id="rwd-search"> 57 <div class="container"> 58 <form class="bg-white rounded row m-2"> 59 <div class="col p-0"><input class="form-control search-input" type="text" name="rwd_search_string" placeholder="ééµå" onkeypress="return EnterSearch(event)"></div> 60 <div class="col-auto p-0"><button class="btn btn-light bg-white search-btn btn-block" type="button" onclick="RwdSearch()"><i class="fas fa-search"></i></button></div> 61 </form> 62 </div> 63</div> 64<nav class="navbar fixed-bottom navbar-light bg-light d-lg-none d-block border-top"> 65 <div class="row"> 66 <div class="col-4 text-center"><button class="btn btn-light w-100" onclick="ShowDate()"><i class="fas fa-table"></i><span class="d-md-block d-none">å¸å¹´åº¦</span></button></div> 67 <div class="col-4 text-center"><button class="btn btn-light w-100" onclick="$('#DescriptionModal').modal('show');"><i class="fas fa-bookmark"></i><span class="d-md-block d-none">說æ</span></button></div> 68 <div class="col-4 text-center"><button class="btn btn-light w-100" onclick="$('#rwd-search').removeClass('d-none');"><i class="fas fa-search"></i><span class="d-md-block d-none">æå°</span></button></div> 69 </div> 70</nav> 71<div class="modal fade" id="DescriptionModal" tabindex="-1" aria-labelledby="DescriptionModalLabel" aria-hidden="true"> 72 <div class="modal-dialog"> 73 <div class="modal-content"> 74 <div class="modal-header"> 75 <h5 class="modal-title">ééµåæå°è¦å</h5> 76 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 77 <span aria-hidden="true">×</span> 78 </button> 79 </div> 80 <div class="modal-body"> 81 <p>å¯ç¨å¤åééµåæå°ï¼éç¨ç©ºç½å°ééµååéã</p> 82 <p>ä¾å¦ï¼ã大使 å¸çãã</p> 83 </div> 84 </div> 85 </div> 86</div> 87<div class="container"> 88 <div class="mt-5" style="font-size:1.25rem;" id="Keywords"><span class="text-danger"></span>æ¦®è½æ¦</div> 89 <div class="row my-5" id="have-article"> 90 <div class="col-lg-8"> 91 <div id="exmple-article-card" class="d-none"> 92 <div class="card card-article"> 93 <div class="card-body px-0"> 94 <div class="row"> 95 <div class="col-md-9"> 96 <a class="fw-bold article-link" href=""><h5 class="article-title">æç« å稱</h5></a> 97 <div class="card-data">
98 <span class="article-author"></span> 99 </div> 100 <div class="text-secondary card-data"> 101 <span class="art-date">æ¥æ</span> 102 <span class="ml-3"><i class="fas fa-eye mr-2"></i><span class="viewNumber">é»é±ç</span></span> 103 </div> 104 <div class="mt-3 article-content"> 105 å §å®¹ç°¡è¿°... 106 </div> 107 </div> 108 <div class="col-md-3"> 109 <div class="img-fluid img-thumbnail art-img" loading="lazy"></div> 110 </div> 111 </div> 112 </div> 113 </div> 114 </div> 115 <div id="article-cards"> 116 </div> 117 <div class="my-4"> 118 <div class="row d-none" id="Pick-Page"> 119 <div class="col-6"> 120 <a href="" id="Page-Prev" class="btn btn-outline-primary disabled">« ä¸ä¸é </a> 121 </div> 122 <div class="col-6 text-right"> 123 <a href="" id="Page-Next" class="btn btn-outline-primary">ä¸ä¸é »</a> 124 </div> 125 </div> 126 </div> 127 </div> 128 <div class="col-lg-1"></div> 129 <div class="col-lg-3 d-none d-lg-inline"> 130 <div class="list-group" id="year-group"> 131 </div> 132 </div> 133 </div> 134 <div class="card mt-5 d-none" id="no-article"> 135 <div class="card-body text-center"> 136 <h2 class="my-5"><i class="fas fa-question"></i></h2> 137 <h4 class="my-5" style="font-weight:bold;">ç¡ç¬¦åæ¢ä»¶çæ¥èªã</h4> 138 </div> 139 </div> 140</div> 141<div class="modal fade" id="DateModal" tabindex="-1" aria-labelledby="DateModalLabel" aria-hidden="true"> 142 <div class="modal-dialog"> 143 <div class="modal-content"> 144 <div class="modal-body p-0" id="media"> 145 <div class="list-group" id="modal-year-group"> 146 </div> 147 </div> 148 </div> 149 </div> 150</div>
151<script> 152 153 var selfUrl=decodeURI(location.href); 154 var selfUrlParams={}; 155 if(selfUrl.indexOf('?')!=-1){ 156 var paramsStr=selfUrl.split('?')[1]; 157 var paramsArr=paramsStr.split('&'); 158 for(i=0;i<paramsArr.length;i++){ 159 var param=paramsArr[i].split('='); 160 selfUrlParams[param[0]]=param[1]; 161 } 162 } 163 164 if(selfUrlParams.q=='' || selfUrlParams.q==undefined){ 165 $('#Keywords').find('span').text(''); 166 }else{ 167 $('#Keywords').find('span').text('"'+selfUrlParams.q+'"'); 168 } 169 170 function GetArticles(){ 171 var year; 172 var Op=(selfUrlParams.op==undefined)?'':selfUrlParams.op; 173 if(Op!=''){ 174 $('#'+Op).addClass('active'); 175 }else{ 176 $('#school').addClass('active'); 177 } 178 if(selfUrlParams.q!=undefined){ 179 $('input[name=search_string]').val(selfUrlParams.q.replace('+',' ')); 180 $('input[name=rwd_search_string]').val(selfUrlParams.q.replace('+',' ')); 181 var SearchString=selfUrlParams.q.replace('+',' '); 182 }else{ 183 var SearchString=$('input[name=search_string]').val(); 184 } 185 if(selfUrlParams.page!=undefined){ 186 var nowPage=selfUrlParams.page; 187 }else{ 188 var nowPage=1; 189 } 190 $.ajax({
191 url:'https://tcublog.tcu.edu.tw/controller/LogController.php', 192 data:{ 193 OpType:'GetYears', 194 SearchString:SearchString, 195 Op:Op, 196 }, 197 dataType:'json', 198 type:'GET', 199 async:false 200 }) 201 .done(function(resp){ 202 if(resp.data.length>0){ 203 if(selfUrlParams.year!=undefined && selfUrlParams.year!=null && selfUrlParams.year!=''){ 204 year=selfUrlParams.year; 205 }else{ 206 year=resp.data[0].year; 207 } 208 years=resp.data; 209 var yearClone=$('<div>').append($('<a>').addClass('list-group-item list-group-item-action d-flex justify-content-between align-items-center').append($('<span>').addClass('year-text'),$('<span>').addClass('badge bg-primary rounded-pill text-white art-number bg-success'))); 210 var modalYearClone=$('<div>').append($('<a>').addClass('list-group-item list-group-item-action d-flex justify-content-between align-items-center').append($('<span>').addClass('year-text'),$('<span>').addClass('badge bg-primary rounded-pill text-white art-number bg-success'))); 211 $('#year-group').html(''); 212 $('#modal-year-group').html(''); 213 for(i=0;i<years.length;i++){ 214 var params=''; 215 if(selfUrlParams.op!=undefined && selfUrlParams.op!=null && selfUrlParams.op!=''){ 216 params+="op="+selfUrlParams.op+"&"; 217 } 218 if(year==years[i].year){ 219 yearClone.find('a').addClass('active'); 220 modalYearClone.find('a').addClass('active'); 221 }else{ 222 yearClone.find('a').removeClass('active'); 223 modalYearClone.find('a').removeClass('active'); 224 } 225 params+="year="+years[i].year+"&"; 226 if(SearchString!=''){ 227 params+="q="+SearchString.replace(' ','+')+"&"; 228 } 229 if(params!=''){ 230 var href="index.php?"+params.substring(0,params.length-1); 231 } 232 yearClone.find('a').attr('href',href); 233 yearClone.find('.year-text').text(years[i].year); 234 yearClone.find('.art-number').text(years[i].cnt); 235 modalYearClone.find('a').attr('href',href); 236 modalYearClone.find('.year-text').text(years[i].year); 237 modalYearClone.find('.art-number').text(years[i].cnt); 238 $('#year-group').append(yearClone.html()); 239 $('#modal-year-group').append(modalYearClone.html()); 240 } 241 }else{ 242 year=''; 243 } 244 }) 245 246 $.ajax({
247 url:'https://tcublog.tcu.edu.tw/controller/LogController.php', 248 data:{ 249 OpType:'GetLogs', 250 SearchString:SearchString, 251 page:nowPage, 252 Op:Op, 253 Year:year, 254 }, 255 dataType:'json', 256 type:'GET' 257 }) 258 .done(function(resp){ 259 var nDate=Date.now(); 260 var articles=resp.data; 261 var cardclone=$('#exmple-article-card').clone(); 262 $('#article-cards').html(''); 263 if(articles.length>0){ 264 for(i=0;i<articles.length;i++){ 265 if(i<=9){ 266 cardclone.find('.article-title').text(articles[i].title); 267 cardclone.find('.article-author').text(articles[i].author); 268 cardclone.find('.art-date').text(articles[i].date); 269 cardclone.find('.viewNumber').text(articles[i].cnt); 270 cardclone.find('.article-content').text(articles[i].content); 271 cardclone.find('.article-link').attr('href','index.php?view=article&id='+articles[i].id) 272 if(articles[i].previewpath==null){ 273 cardclone.find('.art-img').parent().hide(); 274 cardclone.find('.col-md-9').addClass('col-12').removeClass('col-md-9'); 275 }else{ 276 cardclone.find('.art-img').parent().show(); 277 cardclone.find('.col-12').addClass('col-md-9').removeClass('col-12'); 278 cardclone.find('.art-img').css({'background-image':'url(https://tcublog.tcu.edu.tw/uploads/'+articles[i].previewpath+'?t='+nDate+'),url(https://blog.tcust.edu.tw/uploads/'+articles[i].previewpath+'?t='+nDate+')'}) 279 } 280 $('#article-cards').append(cardclone.html()); 281 } 282 } 283 if(articles.length>=10 || (selfUrlParams.page!=undefined && selfUrlParams.page!=1)){ 284 $('#Pick-Page').removeClass('d-none'); 285 var endIndex=selfUrl.indexOf('?page=',0); 286 if (Object.keys(selfUrlParams).length === 0 || endIndex>0) { 287 if(endIndex>0){ 288 if(selfUrlParams.page!=undefined && selfUrlParams.page!='' && selfUrlParams.page!='1'){ 289 $('#Page-Prev').removeClass('disabled').attr('href',selfUrl.substring(0,endIndex)+'?page='+(Number(selfUrlParams.page)-1)); 290 if(articles.length>10){ 291 $('#Page-Next').attr('href',selfUrl.substring(0,endIndex)+'?page='+(Number(selfUrlParams.page)+1)); 292 }else{ 293 $('#Page-Next').addClass('disabled'); 294 } 295 }else{ 296 $('#Page-Next').attr('href',selfUrl.substring(0,endIndex)+'?page='+2); 297 } 298 }else{ 299 if(selfUrlParams.page!=undefined && selfUrlParams.page!='' && selfUrlParams.page!='1'){ 300 $('#Page-Prev').removeClass('disabled').attr('href',selfUrl+'?page='+(Number(selfUrlParams.page)-1)); 301 if(articles.length>10){ 302 $('#Page-Next').attr('href',selfUrl+'?page='+(Number(selfUrlParams.page)+1)); 303 }else{ 304 $('#Page-Next').addClass('disabled'); 305 } 306 }else{ 307 $('#Page-Next').attr('href',selfUrl+'?page='+2); 308 } 309 } 310 }else{ 311 var endIndex=selfUrl.indexOf('&page=',0); 312 if(endIndex>0){ 313 if(selfUrlParams.page!=undefined && selfUrlParams.page!='' && selfUrlParams.page!='1'){ 314 $('#Page-Prev').removeClass('disabled').attr('href',selfUrl.substring(0,endIndex)+'&page='+(Number(selfUrlParams.page)-1)); 315 if(articles.length>10){ 316 $('#Page-Next').attr('href',selfUrl.substring(0,endIndex)+'&page='+(Number(selfUrlParams.page)+1)); 317 }else{ 318 $('#Page-Next').addClass('disabled'); 319 } 320 }else{ 321 $('#Page-Next').attr('href',selfUrl.substring(0,endIndex)+'&page='+2); 322 } 323 }else{ 324 if(selfUrlParams.page!=undefined && selfUrlParams.page!='' && selfUrlParams.page!='1'){ 325 $('#Page-Prev').removeClass('disabled').attr('href',selfUrl+'&page='+(Number(selfUrlParams.page)-1)); 326 if(articles.length>10){ 327 $('#Page-Next').attr('href',selfUrl+'&page='+(Number(selfUrlParams.page)+1)); 328 }else{ 329 $('#Page-Next').addClass('disabled'); 330 } 331 }else{ 332 $('#Page-Next').attr('href',selfUrl+'&page='+2); 333 } 334 } 335 } 336 } 337 }else{ 338 $('#have-article').hide(); 339 $('#no-article').removeClass('d-none'); 340 } 341 }) 342 } 343 344 function ShowDate(){ 345 $('#DateModal').modal('show'); 346 } 347 348 GetArticles(); 349 350 function Search(){ 351 var SearchString=$('input[name=search_string]').val(); 352 $('input[name=rwd_search_string]').val(SearchString); 353 var selfUrl=decodeURI(location.href); 354 var selfUrlParams={};
355 if(selfUrl.indexOf('?')!=-1){ 356 var paramsStr=selfUrl.split('?')[1]; 357 var paramsArr=paramsStr.split('&'); 358 for(i=0;i<paramsArr.length;i++){ 359 var param=paramsArr[i].split('='); 360 selfUrlParams[param[0]]=param[1]; 361 } 362 } 363 if(SearchString==''){ 364 var endIndex=selfUrl.indexOf('&q=',0); 365 var endIndex1=selfUrl.indexOf('?q=',0); 366 if(endIndex>0){ 367 location.href=selfUrl.substring(0,endIndex); 368 }else if(endIndex1>0){ 369 location.href=selfUrl.substring(0,endIndex1); 370 }else{ 371 location.href=selfUrl; 372 } 373 return false; 374 }else{ 375 SearchString.replace(' ','+'); 376 var endIndex=selfUrl.indexOf('&q=',0); 377 var endIndex1=selfUrl.indexOf('?q=',0); 378 if(endIndex>0){ 379 location.href=selfUrl.substring(0,endIndex)+'&q='+SearchString; 380 }else if(endIndex1>0){ 381 location.href=selfUrl.substring(0,endIndex1)+'?q='+SearchString; 382 }else{ 383 if (Object.keys(selfUrlParams).length === 0) { 384 location.href=selfUrl+'?q='+SearchString; 385 }else{ 386 var pageIndex=selfUrl.indexOf('&page=',0); 387 var pageIndex1=selfUrl.indexOf('?page=',0); 388 if(pageIndex>0){ 389 selfUrl=selfUrl.replace('&page='+selfUrlParams['page'],''); 390 location.href=selfUrl+'&q='+SearchString; 391 }else if(pageIndex1>0){ 392 selfUrl=selfUrl.replace('?page='+selfUrlParams['page'],''); 393 location.href=selfUrl+'?q='+SearchString; 394 }else{ 395 location.href=selfUrl+'&q='+SearchString; 396 } 397 } 398 } 399 } 400 } 401 402 function RwdSearch(){ 403 $('input[name=search_string]').val($('input[name=rwd_search_string]').val()); 404 Search(); 405 } 406 407 function EnterSearch(e){ 408 if(e.which == 13 || e.keyCode == 13){ 409 $('.form-inline')[0].submit(function(){ 410 return false; 411 }) 412 Search(); 413 return false; 414 } 415 } 416</script>
416<script src="./src/assets/js/G-WR9D1FPPK7.js"></script>
416<script src="./src/assets/js/UA-32566647-6.js"></script>
416</body> 417</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.