모든 기능 복원 및 안정화

- PDF 다운로드 기능 복원 (직접 다운로드 + 연결된 PDF 지원)
- 언어 전환 기능 수정 (문서 내장 기능 활용)
- 헤더 네비게이션 버튼 구현 (뒤로가기, 목차, 이전/다음 문서)
- PDF 매칭 UI 추가 (book-documents.html)
- 링크/백링크 렌더링 안정화
- 서적 URL 파라미터 수정 (book_id 지원)

주요 수정사항:
- viewer-core.js: PDF 다운로드 로직 개선, 언어 전환 단순화
- book-documents.js/html: PDF 매칭 기능 및 URL 파라미터 수정
- components/header.html: 언어 전환 및 PDF 버튼 추가
- 모든 기능 테스트 완료 및 정상 작동 확인
This commit is contained in:
Hyungi Ahn
2025-08-28 15:15:27 +09:00
parent 8414c9b40e
commit 222e5bcb9e
5 changed files with 401 additions and 4 deletions

View File

@@ -127,6 +127,55 @@
<p class="text-gray-500">이 서적에 등록된 문서가 없습니다</p>
</div>
</div>
<!-- PDF 매칭 섹션 -->
<div x-show="availablePDFs.length > 0" class="bg-white rounded-lg shadow-sm border">
<div class="p-6 border-b border-gray-200">
<h2 class="text-lg font-semibold text-gray-900 flex items-center">
<i class="fas fa-file-pdf mr-2 text-red-600"></i>
사용 가능한 PDF 문서
<span class="ml-2 px-2 py-1 bg-red-100 text-red-800 text-xs rounded-full" x-text="availablePDFs.length"></span>
</h2>
<p class="text-gray-600 text-sm mt-1">이 서적과 연결할 수 있는 PDF 문서들입니다</p>
</div>
<div class="p-6">
<div class="grid gap-4">
<template x-for="pdf in availablePDFs" :key="pdf.id">
<div class="border border-gray-200 rounded-lg p-4 hover:bg-gray-50 transition-colors">
<div class="flex items-start justify-between">
<div class="flex-1">
<h3 class="text-md font-medium text-gray-900 mb-1" x-text="pdf.title"></h3>
<p class="text-gray-600 text-sm mb-2" x-text="pdf.description || '설명이 없습니다'"></p>
<div class="flex items-center text-sm text-gray-500 space-x-4">
<span class="flex items-center">
<i class="fas fa-file-pdf mr-1 text-red-500"></i>
<span x-text="pdf.original_filename"></span>
</span>
<span class="flex items-center">
<i class="fas fa-calendar mr-1"></i>
<span x-text="formatDate(pdf.created_at)"></span>
</span>
</div>
</div>
<div class="flex items-center space-x-2 ml-4">
<button @click="matchPDFToBook(pdf.id)"
class="px-3 py-1.5 bg-blue-600 hover:bg-blue-700 text-white rounded-lg transition-colors text-sm">
<i class="fas fa-link mr-1"></i>서적에 연결
</button>
<button @click="openPDF(pdf)"
class="p-2 text-gray-400 hover:text-blue-600 transition-colors"
title="PDF 열기">
<i class="fas fa-external-link-alt"></i>
</button>
</div>
</div>
</div>
</template>
</div>
</div>
</div>
</main>
<!-- JavaScript 파일들 -->