show.blade.php 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. @extends('library.layouts.app')
  2. @section('title', $book['title'] . ' - 巴利书库')
  3. @section('content')
  4. <div class="page-body">
  5. <style>
  6. .line2 {
  7. display: -webkit-box;
  8. -webkit-line-clamp: 2;
  9. /* 限制显示两行 */
  10. -webkit-box-orient: vertical;
  11. overflow: hidden;
  12. text-overflow: ellipsis;
  13. /* 超出部分显示省略号 */
  14. }
  15. </style>
  16. <div class="container-xl">
  17. <div class="page-header d-print-none">
  18. <div class="row align-items-center">
  19. <div class="col">
  20. <nav aria-label="breadcrumb">
  21. <ol class="breadcrumb">
  22. <li class="breadcrumb-item"><a href="{{ route('library.home') }}">{{ __('labels.home') }}</a></li>
  23. <li class="breadcrumb-item active">{{ $book['title'] }}</li>
  24. </ol>
  25. </nav>
  26. </div>
  27. </div>
  28. </div>
  29. <div class="row">
  30. <div class="col-md-4">
  31. <div class="card">
  32. <img src="{{ $book['cover'] }}" class="card-img-top" alt="{{ $book['title'] }}" style="max-height: 400px; width: fit-content;">
  33. <div class="card-body text-center">
  34. <a href="{{ route('library.book.read', $book['id']) }}" class="btn btn-primary btn-lg w-100 mb-2">
  35. <svg class="icon me-2" width="24" height="24">
  36. <use xlink:href="#tabler-book-2"></use>
  37. </svg>
  38. {{ __('buttons.online-read') }}
  39. </a>
  40. <button class="btn btn-outline-secondary w-100">
  41. <svg class="icon me-2" width="24" height="24">
  42. <use xlink:href="#tabler-download"></use>
  43. </svg>
  44. 下载
  45. </button>
  46. </div>
  47. </div>
  48. </div>
  49. <div class="col-md-8">
  50. <div class="card">
  51. <div class="card-header">
  52. <h3 class="card-title">{{ $book['title'] }}</h3>
  53. </div>
  54. <div class="card-body">
  55. <div class="row mb-3">
  56. <div class="col-sm-3"><strong>作者:</strong></div>
  57. <div class="col-sm-9">{{ $book['author'] }}</div>
  58. </div>
  59. <div class="row mb-3">
  60. <div class="col-sm-3"><strong>出版:</strong></div>
  61. <div class="col-sm-9">
  62. <a href="{{ route('blog.index', ['user' => $book['publisher']->username]) }}">
  63. {{ $book['publisher']->nickname }}
  64. </a>
  65. </div>
  66. </div>
  67. <div class="row mb-3">
  68. <div class="col-sm-3"><strong>语言:</strong></div>
  69. <div class="col-sm-9">{{ $book['language'] ?? '巴利语' }}</div>
  70. </div>
  71. <div class="row mb-3">
  72. <div class="col-sm-3"><strong>简介:</strong></div>
  73. <div class="col-sm-9">{{ $book['description'] }}</div>
  74. </div>
  75. </div>
  76. </div>
  77. @if(isset($book['contents']) && count($book['contents']) > 0)
  78. <div class="card mt-3">
  79. <div class="card-header">
  80. <h3 class="card-title">目录</h3>
  81. </div>
  82. <div class="card-body">
  83. <div class="list-group">
  84. @foreach($book['contents'] as $chapter)
  85. <a href="{{ route('library.book.read', $chapter['id']) }}?chapter={{ $loop->iteration }}"
  86. class="list-group-item list-group-item-action">
  87. <div class="d-flex w-100 justify-content-between">
  88. <h4 class="mb-1">{{ $chapter['title'] }}</h4>
  89. <div class="d-flex" style="width:150px;">
  90. @if($chapter['progress']>0)
  91. <div class="progress">
  92. <div class="progress-bar" style="width: {{ $chapter['progress'] }}%"></div>
  93. </div>
  94. @else
  95. <small>无数据</small>
  96. @endif
  97. </div>
  98. </div>
  99. @if(isset($chapter['summary']))
  100. <p class="mb-1 text-muted line2">{{ $chapter['summary'] }}</p>
  101. @endif
  102. </a>
  103. @endforeach
  104. </div>
  105. </div>
  106. </div>
  107. @endif
  108. @if(count($otherVersions) > 0)
  109. <div class="card mt-3">
  110. <div class="card-header">
  111. <h3 class="card-title">其他版本</h3>
  112. </div>
  113. <div class="card-body">
  114. <div class="row">
  115. @foreach($otherVersions as $version)
  116. <div class="col-md-6 mb-3">
  117. <div class="d-flex">
  118. <img src="{{ $version['cover'] }}" class="me-3" style="width: 60px; height: 80px; object-fit: cover;" alt="{{ $version['title'] }}">
  119. <div>
  120. <h6><a href="{{ route('library.book.show', $version['id']) }}">{{ $version['title'] }}</a></h6>
  121. <div class="text-muted small">{{ $version['author'] }}</div>
  122. <div class="text-muted small">{{ $version['language'] ?? '巴利语' }}</div>
  123. </div>
  124. </div>
  125. </div>
  126. @endforeach
  127. </div>
  128. </div>
  129. </div>
  130. @endif
  131. </div>
  132. </div>
  133. </div>
  134. </div>
  135. @endsection