diff --git a/app/Services/DummyDataService.php b/app/Services/DummyDataService.php index a326a07..0e65daa 100644 --- a/app/Services/DummyDataService.php +++ b/app/Services/DummyDataService.php @@ -483,150 +483,158 @@ public static function getStatistikBulanan(): array * @return \Illuminate\Support\Collection */ public static function getAllBooks() - { - return collect([ - [ - 'id' => 1, - 'judul' => 'Modul Ajar IPAS', - 'penulis' => 'Tim Kemdikbud Ristek', - 'cover' => 'images/covers/ipas.jpg', - 'kategori' => 'Sains', - 'tahun' => 2022, - 'status' => 'Tersedia', - 'is_new' => true, - 'tipe_akses' => ['online', 'offline'], - 'file_pdf' => 'ipas.pdf', - 'progress' => 75, - 'sisa_hari' => 14, - 'user_id' => 1, - ], - [ - 'id' => 2, - 'judul' => 'Modul Ajar Pendidikan Pancasila', - 'penulis' => 'Tim Guru Pancasila', - 'cover' => 'images/covers/pancasila.jpg', - 'kategori' => 'Pendidikan', - 'tahun' => 2023, - 'status' => 'Tersedia', - 'is_new' => false, - 'tipe_akses' => 'offline', - 'sisa_hari' => 3, - 'progress' => 100, - 'user_id' => [3, 1], - ], - [ - 'id' => 3, - 'judul' => 'Modul Belajar Sosiologi', - 'penulis' => 'Tim Cendekia', - 'cover' => 'images/covers/sosiologi.jpg', - 'kategori' => 'Sosial', - 'tahun' => 2021, - 'status' => 'Dipinjam', - 'is_new' => false, - 'tipe_akses' => 'offline', - 'sisa_hari' => 8, - 'user_id' => 3, - ], - [ - 'id' => 4, - 'judul' => 'Modul Pembelajaran Seni Budaya', - 'penulis' => 'Cahya Wulan, S.Pd.', - 'cover' => 'images/covers/senbud.jpg', - 'kategori' => 'Seni', - 'tahun' => 2022, - 'status' => 'Dipinjam', - 'is_new' => false, - 'tipe_akses' => 'offline', - 'sisa_hari' => 14, - 'user_id' => [1, 3], - ], - [ - 'id' => 5, - 'judul' => 'Si Anak Pintar', - 'penulis' => 'Tere Liye', - 'cover' => 'images/covers/sianakpintar.jpg', - 'kategori' => 'Fiksi', - 'tahun' => 2018, - 'status' => 'Dipinjam', - 'is_new' => true, - 'tipe_akses' => 'offline', - 'sisa_hari' => 5, - 'user_id' => 1, - ], - [ - 'id' => 6, - 'judul' => 'Matematika Dasar', - 'penulis' => 'Prof. Dr. Matematikus', - 'cover' => 'images/covers/mtk.jpg', - 'kategori' => 'Pendidikan', - 'tahun' => 2023, - 'status' => 'Tersedia', - 'is_new' => true, - 'tipe_akses' => ['online', 'offline'], - 'file_pdf' => 'mtk.pdf', - 'sisa_hari' => 7, - 'progress' => 40, - 'user_id' => [1, 4, 5], - ], - [ - 'id' => 7, - 'judul' => 'The Last Spell Breather', - 'penulis' => 'Julie Pike', - 'cover' => 'images/covers/thelastspellbreather.jpg', - 'kategori' => 'Fantasi', - 'tahun' => 2024, - 'status' => 'Tersedia', - 'is_new' => true, - 'tipe_akses' => 'offline', - 'sisa_hari' => 4, - 'progress' => 0, - 'user_id' => [3, 1] - ], - [ - 'id' => 8, - 'judul' => 'Ayah', - 'penulis' => 'Andrea Hirata', - 'cover' => 'images/covers/ayah.png', - 'kategori' => 'Novel', - 'tahun' => 2015, - 'status' => 'Tersedia', - 'is_new' => true, - 'tipe_akses' => 'online', - 'file_pdf' => 'ayah.pdf', - 'progress' => 0, - 'user_id' => [1, 2, 3], - ], - [ - 'id' => 9, - 'judul' => 'Senja, Hujan, & Cerita yang Telah Usai', - 'penulis' => 'Boy Candra', - 'cover' => 'images/covers/senja.png', - 'kategori' => 'Novel', - 'tahun' => 2015, - 'status' => 'Tersedia', - 'is_new' => true, - 'tipe_akses' => ['online', 'offline'], - 'file_pdf' => 'senja.pdf', - 'progress' => 0, - 'sisa_hari' => 14, - 'user_id' => [1, 3], - ], - [ - 'id' => 10, - 'judul' => 'Hijrah itu Cinta', - 'penulis' => 'Abay Adhitya', - 'cover' => 'images/covers/hijrah.png', - 'kategori' => 'Religi', - 'tahun' => 2018, - 'status' => 'Tersedia', - 'is_new' => true, - 'tipe_akses' => 'online', - 'file_pdf' => 'hijrah.pdf', - 'progress' => 0, - 'user_id' => [2, 3], - ] - ]); - } +{ + return collect([ + [ + 'id' => 1, + 'judul' => 'Modul Ajar IPAS', + 'penulis' => 'Tim Kemdikbud Ristek', + 'cover' => 'images/covers/ipas.jpg', + 'kode_buku' => '510', // 500 (Sains) + 'kategori' => 'Sains', + 'tahun' => 2022, + 'status' => 'Tersedia', + 'is_new' => true, + 'tipe_akses' => ['online', 'offline'], + 'file_pdf' => 'ipas.pdf', + 'progress' => 75, + 'sisa_hari' => 14, + 'user_id' => 1, + ], + [ + 'id' => 2, + 'judul' => 'Modul Ajar Pendidikan Pancasila', + 'penulis' => 'Tim Guru Pancasila', + 'cover' => 'images/covers/pancasila.jpg', + 'kode_buku'=> '370', // 370 (Pendidikan, bagian dari 300-Sosial) + 'kategori' => 'Pendidikan', + 'tahun' => 2023, + 'status' => 'Tersedia', + 'is_new' => false, + 'tipe_akses' => 'offline', + 'sisa_hari' => 3, + 'progress' => 100, + 'user_id' => [3, 1], + ], + [ + 'id' => 3, + 'judul' => 'Modul Belajar Sosiologi', + 'penulis' => 'Tim Cendekia', + 'cover' => 'images/covers/sosiologi.jpg', + 'kode_buku' => '340', // 300 (Ilmu Sosial) + 'kategori' => 'Sosial', + 'tahun' => 2021, + 'status' => 'Dipinjam', + 'is_new' => false, + 'tipe_akses' => 'offline', + 'sisa_hari' => 8, + 'user_id' => 3, + ], + [ + 'id' => 4, + 'judul' => 'Modul Pembelajaran Seni Budaya', + 'penulis' => 'Cahya Wulan, S.Pd.', + 'cover' => 'images/covers/senbud.jpg', + 'kode_buku' => '752', // 700 (Seni) + 'kategori' => 'Seni', + 'tahun' => 2022, + 'status' => 'Dipinjam', + 'is_new' => false, + 'tipe_akses' => 'offline', + 'sisa_hari' => 14, + 'user_id' => [1, 3], + ], + [ + 'id' => 5, + 'judul' => 'Si Anak Pintar', + 'penulis' => 'Tere Liye', + 'cover' => 'images/covers/sianakpintar.jpg', + 'kode_buku' => '843', // 800 (Fiksi/Sastra) + 'kategori' => 'Fiksi', + 'tahun' => 2018, + 'status' => 'Dipinjam', + 'is_new' => true, + 'tipe_akses' => 'offline', + 'sisa_hari' => 5, + 'user_id' => 1, + ], + [ + 'id' => 6, + 'judul' => 'Matematika Dasar', + 'penulis' => 'Prof. Dr. Matematikus', + 'cover' => 'images/covers/mtk.jpg', + 'kode_buku' => '374', // 370 (Pendidikan) + 'kategori' => 'Pendidikan', + 'tahun' => 2023, + 'status' => 'Tersedia', + 'is_new' => true, + 'tipe_akses' => ['online', 'offline'], + 'file_pdf' => 'mtk.pdf', + 'sisa_hari' => 7, + 'progress' => 40, + 'user_id' => [1, 4, 5], + ], + [ + 'id' => 7, + 'judul' => 'The Last Spell Breather', + 'penulis' => 'Julie Pike', + 'cover' => 'images/covers/thelastspellbreather.jpg', + 'kode_buku' => '834', // 800 (Fantasi/Sastra) + 'kategori' => 'Fantasi', + 'tahun' => 2024, + 'status' => 'Tersedia', + 'is_new' => true, + 'tipe_akses' => 'offline', + 'sisa_hari' => 4, + 'progress' => 0, + 'user_id' => [3, 1] + ], + [ + 'id' => 8, + 'judul' => 'Ayah', + 'penulis' => 'Andrea Hirata', + 'cover' => 'images/covers/ayah.png', + 'kategori' => 'Novel', + 'tahun' => 2015, + 'status' => 'Tersedia', + 'is_new' => true, + 'tipe_akses' => 'online', + 'file_pdf' => 'ayah.pdf', + 'progress' => 0, + 'user_id' => [1, 2, 3], + ], + [ + 'id' => 9, + 'judul' => 'Senja, Hujan, & Cerita yang Telah Usai', + 'penulis' => 'Boy Candra', + 'cover' => 'images/covers/senja.png', + 'kode_buku' => '845', // 800 (Novel/Sastra) + 'kategori' => 'Novel', + 'tahun' => 2015, + 'status' => 'Tersedia', + 'is_new' => true, + 'tipe_akses' => ['online', 'offline'], + 'file_pdf' => 'senja.pdf', + 'progress' => 0, + 'sisa_hari' => 14, + 'user_id' => [1, 3], + ], + [ + 'id' => 10, + 'judul' => 'Hijrah itu Cinta', + 'penulis' => 'Abay Adhitya', + 'cover' => 'images/covers/hijrah.png', + 'kategori' => 'Religi', + 'tahun' => 2018, + 'status' => 'Tersedia', + 'is_new' => true, + 'tipe_akses' => 'online', + 'file_pdf' => 'hijrah.pdf', + 'progress' => 0, + 'user_id' => [2, 3], + ] + ]); +} /** * Data untuk buku pinjam offline @@ -736,14 +744,16 @@ public static function getRiwayatOffline(): array [ 'id' => 1, 'id_peminjaman' => 'PIN-20240520-001', - 'judul_utama' => 'Yuk, Mari Sekolah', + 'kode_buku' => '510', + 'judul_utama' => 'Modul Ajar IPAS', 'tanggal_pinjam' => '20/05/2024', 'tanggal_kembali' => '27/05/2024', 'status' => 'Dikembalikan', 'books' => [ [ 'id' => 1, - 'judul' => 'Yuk, Mari Sekolah', + 'judul' => 'Modul Ajar IPAS', + 'kode_buku' => '510', 'cover' => 'images/covers/ipas.jpg', 'deskripsi' => 'Buku ini berisi ajakan kepada anak-anak untuk semangat pergi ke sekolah dan menuntut ilmu.', 'kategori' => 'Pendidikan', @@ -755,7 +765,8 @@ public static function getRiwayatOffline(): array [ 'id' => 2, 'id_peminjaman' => 'PIN-20240527-002', - 'judul_utama' => 'Perahu Kertas & 1 lainnya', + 'kode_buku' => '844', + 'judul_utama' => 'Perahu Kertas', 'tanggal_pinjam' => '27/05/2024', 'tanggal_kembali' => '04/06/2024', 'status' => 'Dipinjam', @@ -763,21 +774,13 @@ public static function getRiwayatOffline(): array [ 'id' => 8, 'judul' => 'Perahu Kertas', + 'kode_buku' => '844', 'cover' => 'images/covers/ayah.png', 'deskripsi' => 'Cerita penggambaran pasang surut hubungan dua anak manusia, yaitu Kugy dan Keenan.', 'kategori' => 'Fiksi', 'tahun' => 2022, 'keterangan' => null, ], - [ - 'id' => 7, - 'judul' => 'The Last Spell Breather', - 'cover' => 'images/covers/thelastspellbreather.jpg', - 'deskripsi' => 'Sebuah petualangan fantasi di dunia sihir yang menakjubkan.', - 'kategori' => 'Fantasi', - 'tahun' => 2024, - 'keterangan' => null, - ] ] ], ]; diff --git a/public/images/assets/hero-image.svg b/public/images/assets/hero-image.svg new file mode 100644 index 0000000..c121c44 --- /dev/null +++ b/public/images/assets/hero-image.svg @@ -0,0 +1,455 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/images/assets/logo-smp.png b/public/images/assets/logo-smp.png new file mode 100644 index 0000000..af26c5d Binary files /dev/null and b/public/images/assets/logo-smp.png differ diff --git a/resources/scss/_custom.scss b/resources/scss/_custom.scss index 9a069a4..2b46a15 100644 --- a/resources/scss/_custom.scss +++ b/resources/scss/_custom.scss @@ -4,14 +4,17 @@ // UTILITIES (GENERATED FROM MAPS) // =================================== // Generator otomatis untuk variant warna (background light, soft, alert) -@each $color, $value in $theme-colors { +@each $color, +$value in $theme-colors { .bg-#{$color}-light { background-color: rgba($value, 0.25) !important; } + .bg-#{$color}-soft { background-color: rgba($value, 0.25); color: $value; } + .alert-#{$color} { background-color: rgba($value, 0.2); color: color.adjust($value, $lightness: -25%); @@ -35,43 +38,49 @@ html { .navbar-brand { font-size: 1.25rem; - + i { font-size: 1.5rem; } - + @media (max-width: 575.98px) { font-size: 1.1rem; - + i { font-size: 1.25rem; } } } - + .navbar-toggler { padding: 0.25rem 0.5rem; - + &:focus { box-shadow: none; } } - + .navbar-nav { - .nav-link { + .nav-link-landing { padding: 0.5rem 1rem; - color: #49769F; - - &:hover, &.active { - color: #0C5495; + color: #49769F; + text-decoration: none; + display: block; + transition: color 0.3s ease; + + &:hover, + &.active { + color: #0C5495; + font-weight: 500; + transition: all 0.3s ease-in; } - + @media (max-width: 991.98px) { padding: 0.5rem 0; } } } - + @media (max-width: 991.98px) { .navbar-collapse { margin-top: 1rem; @@ -79,19 +88,19 @@ html { border-top: 1px solid rgba(0, 0, 0, 0.1); .navbar-nav { - text-align: left !important; - width: 100%; + text-align: left !important; + width: 100%; } .nav-item { margin: 0 !important; - text-align: left !important; + text-align: left !important; } - + .nav-link { - width: 100%; + width: 100%; justify-content: start; - padding-left: 0.75rem; + padding-left: 0.75rem; padding-right: 0.75rem; } } @@ -100,13 +109,11 @@ html { // Hero Section .landing-hero-section { - background: linear-gradient( - 135deg, - #0C5495 0%, - color.adjust(#0C5495, $lightness: 10%) 100% - ); + background: linear-gradient(135deg, + #0C5495 0%, + color.adjust(#0C5495, $lightness: 10%) 100%); padding: 60px 0; - + @media (min-width: 992px) { padding: 100px 0; } @@ -114,10 +121,12 @@ html { .btn-hero-solid { background-color: #fff !important; border-color: #fff !important; - color: $primary !important; /* Menggunakan warna primary Anda #0C5495 */ - + color: $primary !important; + /* Menggunakan warna primary Anda #0C5495 */ + &:hover { - background-color: lighten($primary, 70%) !important; /* Sedikit keabu-abuan saat hover */ + background-color: lighten($primary, 70%) !important; + /* Sedikit keabu-abuan saat hover */ border-color: lighten($primary, 70%) !important; color: $primary !important; } @@ -125,26 +134,16 @@ html { } .landing-hero-illustration { - width: 180px; - height: 180px; background: rgba(255, 255, 255, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center; - + i { font-size: 5rem; } - - @media (min-width: 1200px) { - width: 220px; - height: 220px; - - i { - font-size: 6rem; - } - } + } .card-img-top { @@ -160,7 +159,7 @@ html { line-height: 1.4; min-height: 2.8rem; font-size: 0.9rem; - + @media (max-width: 575.98px) { font-size: 0.85rem; min-height: 2.4rem; @@ -170,15 +169,15 @@ html { // Stat Card .landing-stat-card { transition: all 0.3s ease; - + &:hover { transform: translateY(-3px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.12) !important; } - + h2 { font-size: 2rem; - + @media (min-width: 768px) { font-size: 2.5rem; } @@ -187,13 +186,11 @@ html { // CTA Section .landing-cta-section { - background: linear-gradient( - 135deg, - #0C5495 0%, - color.adjust(#0C5495, $lightness: 10%) 100% - ); + background: linear-gradient(135deg, + #0C5495 0%, + color.adjust(#0C5495, $lightness: 10%) 100%); border-radius: 1rem; - + @media (min-width: 768px) { border-radius: 1.5rem; } @@ -207,6 +204,7 @@ html { .card { box-shadow: $card-box-shadow; + .card-header { background-color: #fff; border-bottom: 1px solid rgba(map-get($grays, "dark"), 0.1); @@ -216,6 +214,7 @@ html { .alert { border-radius: $border-radius; box-shadow: $shadow-sm; + .alert-icon { width: 24px; display: flex; @@ -229,11 +228,13 @@ html { border: none; border-radius: $border-radius-lg; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15); + .modal-header, .modal-footer { border-color: rgba(map-get($grays, "dark"), 0.1); padding: 1.5rem; } + .modal-title { color: map-get($grays, "dark"); font-weight: 700; @@ -375,10 +376,13 @@ body { .sidebar.bg-primary { .nav-link { color: rgba(255, 255, 255, 0.85); - i { color: rgba(255, 255, 255, 0.85); } + + i { + color: rgba(255, 255, 255, 0.85); + } &.py-1 { - color: rgba(255, 255, 255, 0.7); + color: rgba(255, 255, 255, 0.7); } } @@ -386,14 +390,20 @@ body { .nav-link.py-1:hover { background: rgba(255, 255, 255, 0.05); color: #fff; - i { color: #fff; } + + i { + color: #fff; + } } .nav-link.active { - background: rgba(255, 255, 255, 0.1); + background: rgba(255, 255, 255, 0.1); color: #fff; font-weight: 600; - i { color: #fff; } + + i { + color: #fff; + } } } @@ -607,6 +617,7 @@ nav { width: 40px; height: 40px; border-radius: 10px; + i { font-size: 1.2rem; } @@ -621,12 +632,11 @@ nav { .book-cover { transition: $transition; border-radius: $border-radius-sm; + &-container { - background: linear-gradient( - 135deg, - rgba(map-get($grays, "light"), 0.5) 0%, - rgba(map-get($grays, "light"), 0.8) 100% - ); + background: linear-gradient(135deg, + rgba(map-get($grays, "light"), 0.5) 0%, + rgba(map-get($grays, "light"), 0.8) 100%); border-radius: $border-radius-sm 0 0 $border-radius-sm; } } @@ -635,6 +645,7 @@ nav { .section-header { padding-bottom: 15px; border-bottom: 2px solid map-get($grays, "light"); + h5 { color: map-get($grays, "dark"); font-weight: 700; @@ -645,12 +656,14 @@ nav { .empty-state { text-align: center; padding: 3rem 1rem; + i { font-size: 4rem; color: map-get($grays, "dark"); margin-bottom: 1rem; opacity: 0.25; } + p { color: map-get($grays, "dark"); opacity: 0.7; @@ -666,13 +679,17 @@ nav { --bs-btn-border-color: #{map-get($theme-colors, "primary")}; --bs-btn-hover-color: #{map-get($grays, "dark")}; --bs-btn-hover-bg: #{color.adjust( - map-get($theme-colors, "primary"), - $lightness: -5% - )}; - --bs-btn-hover-border-color: #{color.adjust( - map-get($theme-colors, "primary"), - $lightness: -7.5% - )}; + map-get($theme-colors, "primary"), + $lightness: -5%) +} + +; +--bs-btn-hover-border-color: #{color.adjust( + map-get($theme-colors, "primary"), +$lightness: -7.5%) +} + +; } // Text clamp untuk truncate multi line @@ -683,9 +700,11 @@ nav { overflow: hidden; line-height: 1.4; } + .line-clamp-2 { -webkit-line-clamp: 2; } + .line-clamp-3 { -webkit-line-clamp: 3; } @@ -694,13 +713,16 @@ nav { ::-webkit-scrollbar { width: 6px; } + ::-webkit-scrollbar-track { background: map-get($grays, "light"); border-radius: 3px; } + ::-webkit-scrollbar-thumb { background: rgba(map-get($grays, "dark"), 0.25); border-radius: 3px; + &:hover { background: rgba(map-get($grays, "dark"), 0.4); } @@ -774,6 +796,7 @@ nav { transform: translateY(-2px); border-color: map-get($theme-colors, "primary"); box-shadow: $shadow-md; + .book-cover { transform: scale(1.03); } @@ -806,11 +829,9 @@ nav { // Background gradient hero section .hero-gradient { - background: linear-gradient( - 135deg, - map-get($theme-colors, "primary") 0%, - color.adjust(map-get($theme-colors, "primary"), $lightness: 10%) 100% - ); + background: linear-gradient(135deg, + map-get($theme-colors, "primary") 0%, + color.adjust(map-get($theme-colors, "primary"), $lightness: 10%) 100%); } // Card untuk pilih role (admin/user) @@ -830,11 +851,9 @@ nav { // Panel info di halaman auth .info-panel { - background: linear-gradient( - 135deg, - map-get($theme-colors, "primary") 0%, - color.adjust(map-get($theme-colors, "primary"), $lightness: 10%) 100% - ); + background: linear-gradient(135deg, + map-get($theme-colors, "primary") 0%, + color.adjust(map-get($theme-colors, "primary"), $lightness: 10%) 100%); } // Panel kiri auth (logo dan branding) @@ -891,9 +910,11 @@ nav { position: absolute !important; min-height: 40vh; } + .d-lg-none { - top: 5vh !important ; + top: 5vh !important; } + .auth-branding { .auth-logo { .icon-circle { @@ -901,6 +922,7 @@ nav { height: 80px !important; border-radius: 20px !important; } + h1 { font-size: 2.5rem; } @@ -914,6 +936,7 @@ nav { // Override styling DataTables .dataTables_wrapper { + .dataTables_length, .dataTables_filter, .dataTables_info, @@ -930,8 +953,7 @@ nav { &:focus { outline: none; border-color: map-get($theme-colors, "primary"); - box-shadow: 0 0 0 0.2rem - rgba(map-get($theme-colors, "primary"), 0.25); + box-shadow: 0 0 0 0.2rem rgba(map-get($theme-colors, "primary"), 0.25); } } @@ -946,6 +968,7 @@ nav { // Responsive DataTables untuk mobile @media screen and (max-width: 576px) { .dataTables_wrapper { + .dataTables_length, .dataTables_filter { text-align: center; @@ -958,6 +981,7 @@ nav { margin-top: 1rem; } } + table.dataTable td { white-space: normal !important; } @@ -1016,4 +1040,4 @@ nav { gap: 0.25rem; } } -} \ No newline at end of file +} diff --git a/resources/views/admin/buku/create.blade.php b/resources/views/admin/buku/create.blade.php index ff63fb7..24c5b13 100644 --- a/resources/views/admin/buku/create.blade.php +++ b/resources/views/admin/buku/create.blade.php @@ -9,7 +9,7 @@
-
+
@@ -28,16 +28,21 @@ placeholder="Masukkan nama penulis">
-
+
-
+
+
+ + +
diff --git a/resources/views/admin/buku/edit.blade.php b/resources/views/admin/buku/edit.blade.php index 547dbb7..ffaa238 100644 --- a/resources/views/admin/buku/edit.blade.php +++ b/resources/views/admin/buku/edit.blade.php @@ -9,7 +9,7 @@
-
+
@@ -39,13 +39,25 @@ value="{{ $buku['tahun'] }}">
+ + @php + $tipe_akses = is_array($buku['tipe_akses']) + ? $buku['tipe_akses'] + : [$buku['tipe_akses']]; + $isOffline = in_array('offline', $tipe_akses); + @endphp + + {{-- Field Kode Buku - Hanya untuk Buku Offline --}} + @if($isOffline) +
+ + +
+ @endif +
- @php - $tipe_akses = is_array($buku['tipe_akses']) - ? $buku['tipe_akses'] - : [$buku['tipe_akses']]; - @endphp
@@ -79,4 +91,4 @@ class="img-thumbnail mt-2" width="150">
- + \ No newline at end of file diff --git a/resources/views/admin/buku/index.blade.php b/resources/views/admin/buku/index.blade.php index f1e6682..625544a 100644 --- a/resources/views/admin/buku/index.blade.php +++ b/resources/views/admin/buku/index.blade.php @@ -11,10 +11,13 @@
@@ -24,37 +27,51 @@
- + + + + + + + + + @forelse($bukuOffline as $buku) - - - - - - - - + + + + + + + + + @empty - + + + @endforelse
NoCoverJudulPenulisStatusAksi
NoCoverJudulKode BukuPenulisStatusAksi
{{ $loop->iteration }}{{ $buku['judul'] }}{{ $buku['judul'] }}{{ $buku['penulis'] }} - @if($buku['status'] == 'Tersedia') - Tersedia - @else - Dipinjam - @endif - - -
{{ $loop->iteration }}{{ $buku['judul'] }}{{ $buku['judul'] }}{{ $buku['kode_buku'] }}{{ $buku['penulis'] }} + @if ($buku['status'] == 'Tersedia') + Tersedia + @else + Dipinjam + @endif + + +
Tidak ada data buku offline.
Tidak ada data buku offline.
@@ -66,31 +83,42 @@
- + + + + + + + + @forelse($bukuOnline as $buku) - - - - - - - - + + + + + + + + @empty - + + + @endforelse
NoCoverJudulPenulisFile PDFAksi
NoCoverJudulPenulisFile PDFAksi
{{ $loop->iteration }}{{ $buku['judul'] }}{{ $buku['judul'] }}{{ $buku['penulis'] }}{{ $buku['file_pdf'] ?? 'N/A' }} - -
{{ $loop->iteration }}{{ $buku['judul'] }}{{ $buku['judul'] }}{{ $buku['penulis'] }}{{ $buku['file_pdf'] ?? 'N/A' }} + + +
Tidak ada data buku online.
Tidak ada data buku online.
@@ -116,65 +144,90 @@

- - - + + + + + + + + + + + + + + + +
Kategori
Tahun
Status
Kategori
Kode Buku
Tahun
Status
@push('scripts') - + modalJudul.textContent = judul; + modalCover.src = cover; + modalJudulContent.textContent = judul; + modalPenulis.textContent = `oleh ${penulis}`; + modalKategori.textContent = `: ${kategori}`; + modalTahun.textContent = `: ${tahun}`; + modalStatus.textContent = status; + modalEditButton.href = editUrl; + + // Tampilkan/sembunyikan kode buku berdasarkan ada tidaknya data + if (kode_buku && kode_buku !== 'null' && kode_buku !== '') { + rowKodeBuku.style.display = ''; + modalKode_buku.textContent = `: ${kode_buku}`; + } else { + rowKodeBuku.style.display = 'none'; + } + + if (status === 'Tersedia' || status === 'Dapat Dibaca Online') { + modalStatus.className = 'badge bg-success-subtle text-success-emphasis'; + } else { + modalStatus.className = 'badge bg-warning-subtle text-warning-emphasis'; + } + }); + } + }); + @endpush - \ No newline at end of file + diff --git a/resources/views/rekomendasiShow.blade.php b/resources/views/rekomendasiShow.blade.php index 58d54bb..d395416 100644 --- a/resources/views/rekomendasiShow.blade.php +++ b/resources/views/rekomendasiShow.blade.php @@ -6,7 +6,6 @@ -

Kembali

diff --git a/resources/views/riwayat/offline.blade.php b/resources/views/riwayat/offline.blade.php index 2c06be4..5c58e6c 100644 --- a/resources/views/riwayat/offline.blade.php +++ b/resources/views/riwayat/offline.blade.php @@ -11,6 +11,7 @@ NO ID PEMINJAMAN + KODE BUKU JUDUL BUKU TANGGAL PINJAM TANGGAL KEMBALI @@ -25,6 +26,7 @@ {{ $counter++ }} {{ $transaksi['id_peminjaman'] }} + {{ $buku['kode_buku'] }} {{ $buku['judul'] }} {{ $transaksi['tanggal_pinjam'] }} {{ $transaksi['tanggal_kembali'] }} @@ -151,6 +153,11 @@ class="bi bi-book-half me-2 text-primary">Detail Riwayat : ${transaksiItem.id_peminjaman} + + Kode Buku + : + ${buku.kode_buku} + Kategori Buku : diff --git a/resources/views/welcome.blade.php b/resources/views/welcome.blade.php index 71c2cd0..81d5d3d 100644 --- a/resources/views/welcome.blade.php +++ b/resources/views/welcome.blade.php @@ -30,62 +30,74 @@ DIGIPUS.GO -