├── .editorconfig ├── .env.example ├── .gitattributes ├── .github └── workflows │ └── azure-webapps-php.yml ├── .gitignore ├── .styleci.yml ├── Procfile ├── README.md ├── app ├── Console │ └── Kernel.php ├── Exceptions │ └── Handler.php ├── Http │ ├── Controllers │ │ ├── Admin │ │ │ ├── BukuController.php │ │ │ ├── DashboardController.php │ │ │ ├── KategoriController.php │ │ │ ├── PetugasController.php │ │ │ ├── PinjamController.php │ │ │ └── ThumbnailController.php │ │ ├── Auth │ │ │ ├── Admin │ │ │ │ └── LoginController.php │ │ │ ├── DaftarUserController.php │ │ │ ├── LoginUserController.php │ │ │ └── LupaPasswordController.php │ │ ├── CetakController.php │ │ ├── Controller.php │ │ ├── DetailBukuController.php │ │ ├── IndexController.php │ │ ├── PinjamBukuController.php │ │ ├── ProfileController.php │ │ └── SearchController.php │ ├── Kernel.php │ └── Middleware │ │ ├── AdminRole.php │ │ ├── Anggota.php │ │ ├── Authenticate.php │ │ ├── EncryptCookies.php │ │ ├── ManageAdmin.php │ │ ├── PreventRequestsDuringMaintenance.php │ │ ├── RedirectIfAuthenticated.php │ │ ├── TrimStrings.php │ │ ├── TrustHosts.php │ │ ├── TrustProxies.php │ │ ├── UserMiddleware.php │ │ └── VerifyCsrfToken.php ├── Models │ ├── Aktifitas.php │ ├── Aktifitasadmin.php │ ├── Anggota.php │ ├── Buku.php │ ├── Kategori.php │ ├── Pinjaman.php │ ├── Thumbnail.php │ └── User.php └── Providers │ ├── AppServiceProvider.php │ ├── AuthServiceProvider.php │ ├── BroadcastServiceProvider.php │ ├── EventServiceProvider.php │ └── RouteServiceProvider.php ├── artisan ├── bootstrap ├── app.php └── cache │ └── .gitignore ├── composer.json ├── composer.lock ├── config ├── app.php ├── auth.php ├── broadcasting.php ├── cache.php ├── cors.php ├── database.php ├── filesystems.php ├── hashing.php ├── logging.php ├── mail.php ├── queue.php ├── sanctum.php ├── services.php ├── session.php └── view.php ├── database ├── .gitignore ├── factories │ ├── BukuFactory.php │ └── UserFactory.php ├── migrations │ ├── 2014_10_12_000000_create_users_table.php │ ├── 2014_10_12_100000_create_password_resets_table.php │ ├── 2019_08_19_000000_create_failed_jobs_table.php │ ├── 2019_12_14_000001_create_personal_access_tokens_table.php │ ├── 2021_11_14_072950_create_bukus_table.php │ ├── 2021_11_14_102731_create_kategoris_table.php │ ├── 2021_11_15_165432_create_thumbnails_table.php │ ├── 2021_11_16_131706_create_anggotas_table.php │ ├── 2021_11_18_155808_create_pinjamen_table.php │ ├── 2021_11_20_102837_create_aktifitas_table.php │ └── 2021_11_21_091528_create_aktifitasadmins_table.php └── seeders │ └── DatabaseSeeder.php ├── package-lock.json ├── package.json ├── phpunit.xml ├── public ├── .htaccess ├── assets │ ├── css │ │ ├── bootstrapsocial.css │ │ ├── components.css │ │ ├── components.css.map │ │ ├── custom.css │ │ ├── custom.css.map │ │ ├── izitoast │ │ │ └── izitoast.css │ │ ├── owl-carousel │ │ │ ├── owl.carousel.css │ │ │ ├── owl.carousel.min.css │ │ │ └── owl.theme.default.min.css │ │ ├── perpustakaan.css │ │ ├── reverse.css │ │ ├── rtl.css │ │ ├── skins │ │ │ ├── reverse.css │ │ │ └── reverse.css.map │ │ ├── style.css │ │ └── style.css.map │ ├── fonts │ │ ├── nunito-v9-latin-600.eot │ │ ├── nunito-v9-latin-600.svg │ │ ├── nunito-v9-latin-600.ttf │ │ ├── nunito-v9-latin-600.woff │ │ ├── nunito-v9-latin-600.woff2 │ │ ├── nunito-v9-latin-700.eot │ │ ├── nunito-v9-latin-700.svg │ │ ├── nunito-v9-latin-700.ttf │ │ ├── nunito-v9-latin-700.woff │ │ ├── nunito-v9-latin-700.woff2 │ │ ├── nunito-v9-latin-800.eot │ │ ├── nunito-v9-latin-800.svg │ │ ├── nunito-v9-latin-800.ttf │ │ ├── nunito-v9-latin-800.woff │ │ ├── nunito-v9-latin-800.woff2 │ │ ├── nunito-v9-latin-regular.eot │ │ ├── nunito-v9-latin-regular.svg │ │ ├── nunito-v9-latin-regular.ttf │ │ ├── nunito-v9-latin-regular.woff │ │ ├── nunito-v9-latin-regular.woff2 │ │ └── vazir │ │ │ ├── Farsi-Digits-Without-Latin │ │ │ ├── Vazir-Black-FD-WOL.eot │ │ │ ├── Vazir-Black-FD-WOL.ttf │ │ │ ├── Vazir-Black-FD-WOL.woff │ │ │ ├── Vazir-Black-FD-WOL.woff2 │ │ │ ├── Vazir-Bold-FD-WOL.eot │ │ │ ├── Vazir-Bold-FD-WOL.ttf │ │ │ ├── Vazir-Bold-FD-WOL.woff │ │ │ ├── Vazir-Bold-FD-WOL.woff2 │ │ │ ├── Vazir-FD-WOL.eot │ │ │ ├── Vazir-FD-WOL.ttf │ │ │ ├── Vazir-FD-WOL.woff │ │ │ ├── Vazir-FD-WOL.woff2 │ │ │ ├── Vazir-Light-FD-WOL.eot │ │ │ ├── Vazir-Light-FD-WOL.ttf │ │ │ ├── Vazir-Light-FD-WOL.woff │ │ │ ├── Vazir-Light-FD-WOL.woff2 │ │ │ ├── Vazir-Medium-FD-WOL.eot │ │ │ ├── Vazir-Medium-FD-WOL.ttf │ │ │ ├── Vazir-Medium-FD-WOL.woff │ │ │ ├── Vazir-Medium-FD-WOL.woff2 │ │ │ ├── Vazir-Thin-FD-WOL.eot │ │ │ ├── Vazir-Thin-FD-WOL.ttf │ │ │ ├── Vazir-Thin-FD-WOL.woff │ │ │ └── Vazir-Thin-FD-WOL.woff2 │ │ │ ├── Farsi-Digits │ │ │ ├── Vazir-Black-FD.eot │ │ │ ├── Vazir-Black-FD.ttf │ │ │ ├── Vazir-Black-FD.woff │ │ │ ├── Vazir-Black-FD.woff2 │ │ │ ├── Vazir-Bold-FD.eot │ │ │ ├── Vazir-Bold-FD.ttf │ │ │ ├── Vazir-Bold-FD.woff │ │ │ ├── Vazir-Bold-FD.woff2 │ │ │ ├── Vazir-FD.eot │ │ │ ├── Vazir-FD.ttf │ │ │ ├── Vazir-FD.woff │ │ │ ├── Vazir-FD.woff2 │ │ │ ├── Vazir-Light-FD.eot │ │ │ ├── Vazir-Light-FD.ttf │ │ │ ├── Vazir-Light-FD.woff │ │ │ ├── Vazir-Light-FD.woff2 │ │ │ ├── Vazir-Medium-FD.eot │ │ │ ├── Vazir-Medium-FD.ttf │ │ │ ├── Vazir-Medium-FD.woff │ │ │ ├── Vazir-Medium-FD.woff2 │ │ │ ├── Vazir-Thin-FD.eot │ │ │ ├── Vazir-Thin-FD.ttf │ │ │ ├── Vazir-Thin-FD.woff │ │ │ └── Vazir-Thin-FD.woff2 │ │ │ ├── LICENSE │ │ │ ├── Vazir-Black.eot │ │ │ ├── Vazir-Black.ttf │ │ │ ├── Vazir-Black.woff │ │ │ ├── Vazir-Black.woff2 │ │ │ ├── Vazir-Bold.eot │ │ │ ├── Vazir-Bold.ttf │ │ │ ├── Vazir-Bold.woff │ │ │ ├── Vazir-Bold.woff2 │ │ │ ├── Vazir-Light.eot │ │ │ ├── Vazir-Light.ttf │ │ │ ├── Vazir-Light.woff │ │ │ ├── Vazir-Light.woff2 │ │ │ ├── Vazir-Medium.eot │ │ │ ├── Vazir-Medium.ttf │ │ │ ├── Vazir-Medium.woff │ │ │ ├── Vazir-Medium.woff2 │ │ │ ├── Vazir-Thin.eot │ │ │ ├── Vazir-Thin.ttf │ │ │ ├── Vazir-Thin.woff │ │ │ ├── Vazir-Thin.woff2 │ │ │ ├── Vazir.eot │ │ │ ├── Vazir.ttf │ │ │ ├── Vazir.woff │ │ │ ├── Vazir.woff2 │ │ │ ├── Without-Latin │ │ │ ├── Vazir-Black-WOL.eot │ │ │ ├── Vazir-Black-WOL.ttf │ │ │ ├── Vazir-Black-WOL.woff │ │ │ ├── Vazir-Black-WOL.woff2 │ │ │ ├── Vazir-Bold-WOL.eot │ │ │ ├── Vazir-Bold-WOL.ttf │ │ │ ├── Vazir-Bold-WOL.woff │ │ │ ├── Vazir-Bold-WOL.woff2 │ │ │ ├── Vazir-Light-WOL.eot │ │ │ ├── Vazir-Light-WOL.ttf │ │ │ ├── Vazir-Light-WOL.woff │ │ │ ├── Vazir-Light-WOL.woff2 │ │ │ ├── Vazir-Medium-WOL.eot │ │ │ ├── Vazir-Medium-WOL.ttf │ │ │ ├── Vazir-Medium-WOL.woff │ │ │ ├── Vazir-Medium-WOL.woff2 │ │ │ ├── Vazir-Thin-WOL.eot │ │ │ ├── Vazir-Thin-WOL.ttf │ │ │ ├── Vazir-Thin-WOL.woff │ │ │ ├── Vazir-Thin-WOL.woff2 │ │ │ ├── Vazir-WOL.eot │ │ │ ├── Vazir-WOL.ttf │ │ │ ├── Vazir-WOL.woff │ │ │ └── Vazir-WOL.woff2 │ │ │ ├── font-face.css │ │ │ └── sample.png │ ├── img │ │ ├── avatar │ │ │ ├── avatar-1.png │ │ │ ├── avatar-2.png │ │ │ ├── avatar-3.png │ │ │ ├── avatar-4.png │ │ │ └── avatar-5.png │ │ ├── daftar.svg │ │ ├── dashboard.svg │ │ ├── header.svg │ │ └── login.svg │ ├── js │ │ ├── custom.js │ │ ├── owl-carousel │ │ │ ├── owl.carousel.js │ │ │ └── owl.carousel.min.js │ │ ├── page │ │ │ ├── chart.js │ │ │ ├── components-chat-box.js │ │ │ ├── components-multiple-upload.js │ │ │ ├── components-table.js │ │ │ ├── features-post-create.js │ │ │ ├── features-posts.js │ │ │ ├── index-0.js │ │ │ ├── index.js │ │ │ ├── modules-sweetalert.js │ │ │ └── modules-toastr.js │ │ ├── scripts.js │ │ └── stisla.js │ └── trixjs │ │ ├── trix.css │ │ └── trix.js ├── e-perpus.png ├── favicon.ico ├── index.php ├── robots.txt └── web.config ├── resources ├── css │ └── app.css ├── js │ ├── app.js │ └── bootstrap.js ├── lang │ └── en │ │ ├── auth.php │ │ ├── pagination.php │ │ ├── passwords.php │ │ └── validation.php └── views │ ├── backend │ ├── anggota.blade.php │ ├── buku │ │ ├── buku.blade.php │ │ ├── edit-buku.blade.php │ │ ├── kategori.blade.php │ │ └── tambah-buku.blade.php │ ├── dashboard.blade.php │ ├── layout │ │ └── main.blade.php │ ├── login-admin.blade.php │ ├── partial │ │ ├── navbar.blade.php │ │ └── sidebar.blade.php │ ├── petugas │ │ ├── edit-petugas.blade.php │ │ ├── petugas.blade.php │ │ └── tambah-petugas.blade.php │ ├── pinjam │ │ ├── pinjam.blade.php │ │ └── tambahpinjaman.blade.php │ └── thumbnail │ │ ├── tambah-thumbnail.blade.php │ │ └── thumbnail.blade.php │ ├── buku-tampil.blade.php │ ├── cetak │ ├── cetakdata.blade.php │ └── cetakpinjaman.blade.php │ ├── daftar-user.blade.php │ ├── detail-buku.blade.php │ ├── index.blade.php │ ├── layout │ └── main.blade.php │ ├── login-user.blade.php │ ├── lupa-password.blade.php │ ├── pinjam-buku.blade.php │ ├── pinjamberhasil.blade.php │ ├── profil │ ├── aktifitas.blade.php │ ├── layout │ │ └── main.blade.php │ ├── pinjaman.blade.php │ └── profile.blade.php │ ├── search.blade.php │ ├── semua-buku.blade.php │ ├── tampil.blade.php │ └── vendor │ └── mail │ ├── html │ ├── button.blade.php │ ├── footer.blade.php │ ├── header.blade.php │ ├── layout.blade.php │ ├── message.blade.php │ ├── panel.blade.php │ ├── subcopy.blade.php │ ├── table.blade.php │ └── themes │ │ └── default.css │ └── text │ ├── button.blade.php │ ├── footer.blade.php │ ├── header.blade.php │ ├── layout.blade.php │ ├── message.blade.php │ ├── panel.blade.php │ ├── subcopy.blade.php │ └── table.blade.php ├── routes ├── api.php ├── channels.php ├── console.php └── web.php ├── server.php ├── storage ├── app │ ├── .gitignore │ └── public │ │ └── .gitignore ├── clockwork │ └── .gitignore ├── framework │ ├── .gitignore │ ├── cache │ │ ├── .gitignore │ │ └── data │ │ │ └── .gitignore │ ├── sessions │ │ └── .gitignore │ ├── testing │ │ └── .gitignore │ └── views │ │ └── .gitignore └── logs │ └── .gitignore ├── tests ├── CreatesApplication.php ├── Feature │ └── ExampleTest.php ├── TestCase.php └── Unit │ └── ExampleTest.php └── webpack.mix.js /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | end_of_line = lf 6 | insert_final_newline = true 7 | indent_style = space 8 | indent_size = 4 9 | trim_trailing_whitespace = true 10 | 11 | [*.md] 12 | trim_trailing_whitespace = false 13 | 14 | [*.{yml,yaml}] 15 | indent_size = 2 16 | 17 | [docker-compose.yml] 18 | indent_size = 4 19 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | APP_NAME=Laravel 2 | APP_ENV=local 3 | APP_KEY= 4 | APP_DEBUG=true 5 | APP_URL=http://localhost 6 | 7 | LOG_CHANNEL=stack 8 | LOG_DEPRECATIONS_CHANNEL=null 9 | LOG_LEVEL=debug 10 | 11 | DB_CONNECTION=mysql 12 | DB_HOST=127.0.0.1 13 | DB_PORT=3306 14 | DB_DATABASE=laravel 15 | DB_USERNAME=root 16 | DB_PASSWORD= 17 | 18 | BROADCAST_DRIVER=log 19 | CACHE_DRIVER=file 20 | FILESYSTEM_DRIVER=local 21 | QUEUE_CONNECTION=sync 22 | SESSION_DRIVER=file 23 | SESSION_LIFETIME=120 24 | 25 | MEMCACHED_HOST=127.0.0.1 26 | 27 | REDIS_HOST=127.0.0.1 28 | REDIS_PASSWORD=null 29 | REDIS_PORT=6379 30 | 31 | MAIL_MAILER=smtp 32 | MAIL_HOST=mailhog 33 | MAIL_PORT=1025 34 | MAIL_USERNAME=null 35 | MAIL_PASSWORD=null 36 | MAIL_ENCRYPTION=null 37 | MAIL_FROM_ADDRESS=null 38 | MAIL_FROM_NAME="${APP_NAME}" 39 | 40 | AWS_ACCESS_KEY_ID= 41 | AWS_SECRET_ACCESS_KEY= 42 | AWS_DEFAULT_REGION=us-east-1 43 | AWS_BUCKET= 44 | AWS_USE_PATH_STYLE_ENDPOINT=false 45 | 46 | PUSHER_APP_ID= 47 | PUSHER_APP_KEY= 48 | PUSHER_APP_SECRET= 49 | PUSHER_APP_CLUSTER=mt1 50 | 51 | MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" 52 | MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" 53 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | *.css linguist-vendored 3 | *.scss linguist-vendored 4 | *.js linguist-vendored 5 | CHANGELOG.md export-ignore 6 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /public/hot 3 | /public/storage 4 | /storage/*.key 5 | /vendor 6 | .env 7 | .env.backup 8 | .phpunit.result.cache 9 | docker-compose.override.yml 10 | Homestead.json 11 | Homestead.yaml 12 | npm-debug.log 13 | yarn-error.log 14 | /.idea 15 | /.vscode 16 | -------------------------------------------------------------------------------- /.styleci.yml: -------------------------------------------------------------------------------- 1 | php: 2 | preset: laravel 3 | version: 8 4 | disabled: 5 | - no_unused_imports 6 | finder: 7 | not-name: 8 | - index.php 9 | - server.php 10 | js: 11 | finder: 12 | not-name: 13 | - webpack.mix.js 14 | css: true 15 | -------------------------------------------------------------------------------- /Procfile: -------------------------------------------------------------------------------- 1 | web: vendor/bin/heroku-php-apache2 public/ -------------------------------------------------------------------------------- /app/Console/Kernel.php: -------------------------------------------------------------------------------- 1 | command('inspire')->hourly(); 28 | } 29 | 30 | /** 31 | * Register the commands for the application. 32 | * 33 | * @return void 34 | */ 35 | protected function commands() 36 | { 37 | $this->load(__DIR__.'/Commands'); 38 | 39 | require base_path('routes/console.php'); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /app/Exceptions/Handler.php: -------------------------------------------------------------------------------- 1 | reportable(function (Throwable $e) { 38 | // 39 | }); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /app/Http/Controllers/Admin/DashboardController.php: -------------------------------------------------------------------------------- 1 | limit(10)->get(); 21 | $user = User::whereId(auth()->user()->id)->first(); 22 | $petugas = User::whereRole('petugas')->get(); 23 | $buku = Buku::orderByDesc('views'); 24 | $anggota = Anggota::latest()->get(); 25 | $pinjaman = Pinjaman::latest(); 26 | return view('backend.dashboard', compact('title', 'user', 'petugas', 'thumbnail', 'buku', 'anggota', 'pinjaman')); 27 | } 28 | public function logout() 29 | { 30 | Request()->session()->regenerateToken(); 31 | Request()->session()->invalidate(); 32 | User::find(auth()->user()->id)->update(['aktifitas' => 'Logout']); 33 | Auth::logout(); 34 | return redirect('/login-admin'); 35 | } 36 | 37 | public function anggota() 38 | { 39 | $title = 'Data Anggota'; 40 | $user = User::findorFail(auth()->user()->id); 41 | $jumlah = Anggota::get(); 42 | if(request('status')){ 43 | $anggota = Anggota::where('status', request('status'))->Filter(request(['q']))->latest()->paginate(10)->withQueryString();; 44 | }else { 45 | $anggota = Anggota::Filter(request(['q']))->latest()->paginate(10)->withQueryString();; 46 | } 47 | return view('backend.anggota', compact('title', 'user', 'anggota', 'jumlah')); 48 | } 49 | public function delete(Anggota $anggota) 50 | { 51 | $anggota = Anggota::find($anggota->id); 52 | $anggota->delete($anggota->id); 53 | Aktifitasadmin::create([ 54 | 'user_id' => Auth()->user()->id, 55 | 'icon' => 'fas fa-user', 56 | 'backgroud' => 'bg-danger', 57 | 'notifikasi' => Auth()->user()->nama. ' mengahapus anggota ' .$anggota->id_anggota .$anggota->nama, 58 | ]); 59 | return back()->with([ 60 | 'alert' => 'success', 61 | 'pesan' => 'Anggota berhasil dihapus', 62 | 'color' => 'green' 63 | ]); 64 | } 65 | public function update(Anggota $anggota, Request $request) 66 | { 67 | $anggota = Anggota::find($anggota->id); 68 | $anggota->update([ 69 | 'status' => $request->status, 70 | ]); 71 | Aktifitasadmin::create([ 72 | 'user_id' => Auth()->user()->id, 73 | 'icon' => 'fas fa-user', 74 | 'backgroud' => 'bg-primary', 75 | 'notifikasi' => Auth()->user()->nama. ' mengubah status anggota ' .$anggota->id_anggota .$anggota->nama. ' menjadi ' .$request->status, 76 | ]); 77 | return back()->with([ 78 | 'alert' => 'success', 79 | 'pesan' => 'Status anggota berhasil diedit', 80 | 'color' => 'green' 81 | ]); 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /app/Http/Controllers/Admin/ThumbnailController.php: -------------------------------------------------------------------------------- 1 | user()->id)->first(); 22 | $thumbnail = Thumbnail::latest()->get(); 23 | return view('backend.thumbnail.thumbnail', compact('title', 'user', 'thumbnail')); 24 | } 25 | 26 | /** 27 | * Show the form for creating a new resource. 28 | * 29 | * @return \Illuminate\Http\Response 30 | */ 31 | public function create() 32 | { 33 | $title = 'Tambah Thumbnail'; 34 | $user = User::whereId(auth()->user()->id)->first(); 35 | return view('backend.thumbnail.tambah-thumbnail', compact('title', 'user')); 36 | } 37 | 38 | /** 39 | * Store a newly created resource in storage. 40 | * 41 | * @param \Illuminate\Http\Request $request 42 | * @return \Illuminate\Http\Response 43 | */ 44 | public function store(Request $request) 45 | { 46 | $messages = [ 47 | 'required' => 'Gambar wajib diisi!', 48 | 'max' => 'Gambar terlalu besar silahkan dikompress!', 49 | 'file' => ':Inputan bukan gambar!' 50 | ]; 51 | $request->validate([ 52 | 'gambar' => 'required|image|file|max:2004' 53 | ], $messages); 54 | 55 | Thumbnail::create([ 56 | 'link' => $request->link, 57 | 'gambar' => $request->file('gambar')->store('upload/thumbnail') 58 | ]); 59 | 60 | return redirect('admin/thumbnail')->with(['alert' => 'success', 61 | 'pesan' => 'Thumbnail berhasil ditambahkan' 62 | ]);; 63 | } 64 | 65 | /** 66 | * Display the specified resource. 67 | * 68 | * @param int $id 69 | * @return \Illuminate\Http\Response 70 | */ 71 | public function show($id) 72 | { 73 | // 74 | } 75 | 76 | /** 77 | * Show the form for editing the specified resource. 78 | * 79 | * @param int $id 80 | * @return \Illuminate\Http\Response 81 | */ 82 | public function edit($id) 83 | { 84 | // 85 | } 86 | 87 | /** 88 | * Update the specified resource in storage. 89 | * 90 | * @param \Illuminate\Http\Request $request 91 | * @param int $id 92 | * @return \Illuminate\Http\Response 93 | */ 94 | public function update(Request $request, $id) 95 | { 96 | // 97 | } 98 | 99 | /** 100 | * Remove the specified resource from storage. 101 | * 102 | * @param int $id 103 | * @return \Illuminate\Http\Response 104 | */ 105 | public function destroy($id) 106 | { 107 | $gambar = Thumbnail::findorFail($id); 108 | if($gambar->gambar){ 109 | Storage::delete($gambar->gambar); 110 | } 111 | Thumbnail::destroy($id); 112 | return redirect('admin/thumbnail')->with(['alert' => 'success', 113 | 'pesan' => 'Thumbnail berhasil dihapus' 114 | ]); 115 | } 116 | } 117 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/Admin/LoginController.php: -------------------------------------------------------------------------------- 1 | validate([ 42 | 'username' => 'required', 43 | 'password' => 'required' 44 | ]); 45 | 46 | $admin = User::whereUsername($request->username)->first(); 47 | if($admin){ 48 | if(Hash::check($request->password, $admin->password)){ 49 | Auth::login($admin); 50 | User::find($admin->id)->update(['aktifitas' => 'Login']); 51 | return redirect('/admin/dashboard'); 52 | } 53 | return back()->with('password', 'Password salah!'); 54 | } 55 | return back()->with('username', 'Username tidak ditemukan!'); 56 | } 57 | 58 | /** 59 | * Display the specified resource. 60 | * 61 | * @param int $id 62 | * @return \Illuminate\Http\Response 63 | */ 64 | public function show($id) 65 | { 66 | // 67 | } 68 | 69 | /** 70 | * Show the form for editing the specified resource. 71 | * 72 | * @param int $id 73 | * @return \Illuminate\Http\Response 74 | */ 75 | public function edit($id) 76 | { 77 | // 78 | } 79 | 80 | /** 81 | * Update the specified resource in storage. 82 | * 83 | * @param \Illuminate\Http\Request $request 84 | * @param int $id 85 | * @return \Illuminate\Http\Response 86 | */ 87 | public function update(Request $request, $id) 88 | { 89 | // 90 | } 91 | 92 | /** 93 | * Remove the specified resource from storage. 94 | * 95 | * @param int $id 96 | * @return \Illuminate\Http\Response 97 | */ 98 | public function destroy($id) 99 | { 100 | 101 | } 102 | } 103 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/LoginUserController.php: -------------------------------------------------------------------------------- 1 | get(); 23 | return view('login-user', compact('title', 'kat')); 24 | } 25 | 26 | /** 27 | * Show the form for creating a new resource. 28 | * 29 | * @return \Illuminate\Http\Response 30 | */ 31 | public function create() 32 | { 33 | // 34 | } 35 | 36 | /** 37 | * Store a newly created resource in storage. 38 | * 39 | * @param \Illuminate\Http\Request $request 40 | * @return \Illuminate\Http\Response 41 | */ 42 | public function store(Request $request) 43 | { 44 | $anggota = Anggota::whereEmail($request->email)->first(); 45 | if($anggota){ 46 | if(Hash::check($request->password, $anggota->password)){ 47 | Auth::guard('anggota')->login($anggota); 48 | Anggota::find($anggota->id)->update(['aktifitas'=>'Login']); 49 | return redirect('/'); 50 | } 51 | return back()->with(['password' => 'Password salah!']); 52 | } 53 | return back()->with(['Email', 'Email tidak ditemukan!']); 54 | } 55 | 56 | /** 57 | * Display the specified resource. 58 | * 59 | * @param int $id 60 | * @return \Illuminate\Http\Response 61 | */ 62 | public function show($id) 63 | { 64 | // 65 | } 66 | 67 | /** 68 | * Show the form for editing the specified resource. 69 | * 70 | * @param int $id 71 | * @return \Illuminate\Http\Response 72 | */ 73 | public function edit($id) 74 | { 75 | // 76 | } 77 | 78 | /** 79 | * Update the specified resource in storage. 80 | * 81 | * @param \Illuminate\Http\Request $request 82 | * @param int $id 83 | * @return \Illuminate\Http\Response 84 | */ 85 | public function update(Request $request, $id) 86 | { 87 | // 88 | } 89 | 90 | /** 91 | * Remove the specified resource from storage. 92 | * 93 | * @param int $id 94 | * @return \Illuminate\Http\Response 95 | */ 96 | public function destroy($id) 97 | { 98 | Auth::guard('anggota')->logout(); 99 | } 100 | } 101 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/LupaPasswordController.php: -------------------------------------------------------------------------------- 1 | get(); 15 | return view('lupa-password', compact('title', 'kat')); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /app/Http/Controllers/CetakController.php: -------------------------------------------------------------------------------- 1 | first(); 15 | $pdf = PDF ::loadview('cetak.cetakpinjaman', compact('pinjaman'))->setPaper('A4', 'portrait'); 16 | return $pdf->stream('cetakpinjaman'.$pinjaman->judul_buku.'.pdf'); 17 | } 18 | public function cetakpinjaman($user, $pinjaman) 19 | { 20 | $pinjaman = Pinjaman::where('id', $pinjaman)->first(); 21 | $pdf = PDF ::loadview('cetak.cetakpinjaman', compact('pinjaman'))->setPaper('A4', 'portrait'); 22 | return $pdf->stream('cetakpinjaman'.$pinjaman->judul_buku.'.pdf'); 23 | } 24 | 25 | public function cetakdata(Request $request) 26 | { 27 | $pinjaman = Pinjaman::whereBetween('created_at', [$request->dari, $request->sampai])->get(); 28 | $pdf = PDF ::loadview('cetak.cetakdata', compact('pinjaman'))->setPaper('a4', 'landscape'); 29 | return $pdf->stream('cetakpinjaman.pdf'); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /app/Http/Controllers/Controller.php: -------------------------------------------------------------------------------- 1 | where(['slug'=>$buku, 'status' =>'publish'])->first(); 16 | 17 | if(Auth::guard('anggota')->user()){ 18 | $pinjam = Pinjaman::where(['email' => Auth::guard('anggota')->user()->email, 'id_anggota' => Auth::guard('anggota')->user()->id_anggota, 'buku_id' => $buku->id])->get(); 19 | }else { 20 | $pinjam = null; 21 | } 22 | 23 | if(!$buku){ 24 | return abort(404); 25 | }else{ 26 | Buku::findOrFail($buku->id)->update(['views'=> $buku->views+1]); 27 | } 28 | $title = $buku->judul_buku; 29 | $bukupopuler = Buku::with(['kategori'])->where(['status' => 'Publish'])->latest()->limit(5)->get(); 30 | return view('detail-buku', compact('title','buku', 'bukupopuler', 'pinjam')); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /app/Http/Controllers/IndexController.php: -------------------------------------------------------------------------------- 1 | where(['status' => 'Publish'])->orderByDesc('views')->limit(10)->get(); 18 | $thumbnail = Thumbnail::latest()->limit(10)->get(); 19 | $kat = Kategori::latest()->get(); 20 | return view('index', compact('title','bukupopuler', 'kat', 'thumbnail')); 21 | } 22 | public function tampil(Kategori $kategori) 23 | { 24 | $bukukategori = $kategori->buku->load(['kategori']); 25 | return view('tampil', compact('bukukategori')); 26 | } 27 | public function semuabuku(Kategori $kategori) 28 | { 29 | $buku = Buku::with(['kategori'])->where(['status' => 'Publish'])->latest()->get(); 30 | return view('buku-tampil', compact('buku')); 31 | } 32 | public function showkategori(Kategori $kategori) 33 | { 34 | $title = 'Kategori '.$kategori->kategori; 35 | $kat = Kategori::latest()->get(); 36 | $buku = $kategori->buku->load(['kategori']); 37 | return view('semua-buku', compact('title','kategori','kat','buku')); 38 | } 39 | 40 | public function logoutuser(Anggota $anggota) 41 | { 42 | if(!Auth::guard('anggota')->user()){ 43 | return redirect('/'); 44 | } 45 | 46 | $anggota = Anggota::findorfail(Auth::guard('anggota')->user()->id); 47 | Request()->session()->regenerateToken(); 48 | Request()->session()->invalidate(); 49 | $anggota->update(['aktifitas' => 'logout']); 50 | Auth::guard('anggota')->logout($anggota); 51 | return redirect('/')->with([ 52 | 'alert' => 'success', 53 | 'title' => 'Berhasil logout' 54 | ]); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /app/Http/Controllers/PinjamBukuController.php: -------------------------------------------------------------------------------- 1 | Auth::guard('anggota')->user()->email, 'id_anggota' => Auth::guard('anggota')->user()->id_anggota, 'buku_id' => $buku->id])->get(); 19 | if($buku->jumlah_buku == 0 OR $pinjam->count()>0){ 20 | return back(); 21 | } 22 | $title = 'Pinjam Buku'; 23 | return view('pinjam-buku', compact('title', 'buku')); 24 | } 25 | 26 | public function pinjam(Request $request, Buku $buku) 27 | { 28 | $request->validate([ 29 | 'tgl_pinjam' => 'required', 30 | 'tgl_kembali' => 'required' 31 | ]); 32 | 33 | $data = [ 34 | 'id_anggota' => Auth::guard('anggota')->user()->id_anggota, 35 | 'nama_peminjam' => Auth::guard('anggota')->user()->nama, 36 | 'email' => Auth::guard('anggota')->user()->email, 37 | 'jenis_kelamin' => Auth::guard('anggota')->user()->jenis_kelamin, 38 | 'kelas' => Auth::guard('anggota')->user()->kelas, 39 | 'judul_buku' => $buku->judul_buku, 40 | 'buku_id' => $buku->id, 41 | 'tgl_pinjam' => $request->tgl_pinjam, 42 | 'tgl_kembali' => $request->tgl_kembali, 43 | ]; 44 | 45 | Aktifitas::create([ 46 | 'user_id' => Auth::guard('anggota')->user()->id, 47 | 'icon' => 'fas fa-book-reader', 48 | 'background' => 'bg-success', 49 | 'notifikasi' => 'Selamat kamu berhasil meminjam buku '.$buku->judul_buku .'silahkan ambil buku di perpustakaan', 50 | ]); 51 | 52 | Buku::find($buku->id)->update([ 53 | 'jumlah_buku' => $buku->jumlah_buku -1, 54 | 'pinjaman' => $buku->pinjaman +1, 55 | ]); 56 | 57 | Pinjaman::create($data); 58 | $pinjam = Pinjaman::where('email', Auth::guard('anggota')->user()->email)->latest()->first(); 59 | return Redirect::route('pinjamberhasil', [Auth::guard('anggota')->user()->email, $pinjam->id])->with([ 60 | 'alert' => 'success', 61 | 'title' => 'Pinjaman berhasil dibuat', 62 | ]); 63 | } 64 | 65 | public function pinjamberhasil($email,$id) 66 | { 67 | $pinjam = Pinjaman::with(['buku'])->where(['email' => $email, 'id'=>$id])->first(); 68 | if(!$pinjam){ 69 | return abort(404); 70 | } 71 | 72 | $title = 'Pinjam Berhasil'; 73 | return view('pinjamberhasil', compact('title', 'pinjam')); 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /app/Http/Controllers/SearchController.php: -------------------------------------------------------------------------------- 1 | latest()->get(); 15 | $bukupopuler = Buku::with(['kategori'])->where(['status' => 'Publish'])->orderByDesc('views'); 16 | $buku = Buku::latest()->filter(request(['kategori','q']))->where(['status' => 'Publish'])->get(); 17 | $kategori = Kategori::where(['kategori'=>request('kategori')])->first(); 18 | if(request('kategori')){ 19 | $buku = Buku::latest()->filter(request(['kategori','q']))->where(['status' => 'Publish', 'kategori_id'=>$kategori->id])->get(); 20 | } 21 | return view('search', compact('title','kat', 'bukupopuler', 'buku')); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /app/Http/Kernel.php: -------------------------------------------------------------------------------- 1 | [ 33 | \App\Http\Middleware\EncryptCookies::class, 34 | \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, 35 | \Illuminate\Session\Middleware\StartSession::class, 36 | // \Illuminate\Session\Middleware\AuthenticateSession::class, 37 | \Illuminate\View\Middleware\ShareErrorsFromSession::class, 38 | \App\Http\Middleware\VerifyCsrfToken::class, 39 | \Illuminate\Routing\Middleware\SubstituteBindings::class, 40 | ], 41 | 42 | 'api' => [ 43 | // \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class, 44 | 'throttle:api', 45 | \Illuminate\Routing\Middleware\SubstituteBindings::class, 46 | ], 47 | ]; 48 | 49 | /** 50 | * The application's route middleware. 51 | * 52 | * These middleware may be assigned to groups or used individually. 53 | * 54 | * @var array 55 | */ 56 | protected $routeMiddleware = [ 57 | 'auth' => \App\Http\Middleware\Authenticate::class, 58 | 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 59 | 'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class, 60 | 'can' => \Illuminate\Auth\Middleware\Authorize::class, 61 | 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 62 | 'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class, 63 | 'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class, 64 | 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 65 | 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, 66 | 'adminrole' => \App\Http\Middleware\AdminRole::class, 67 | 'admin' => \App\Http\Middleware\ManageAdmin::class, 68 | 'anggota' => \App\Http\Middleware\Anggota::class, 69 | 'useranggota' => \App\Http\Middleware\UserMiddleware::class, 70 | ]; 71 | } 72 | -------------------------------------------------------------------------------- /app/Http/Middleware/AdminRole.php: -------------------------------------------------------------------------------- 1 | user()->role != 'Admin'){ 20 | return redirect('admin/dashboard'); 21 | } 22 | return $next($request); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /app/Http/Middleware/Anggota.php: -------------------------------------------------------------------------------- 1 | user()){ 21 | return redirect('/'); 22 | } 23 | return $next($request); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /app/Http/Middleware/Authenticate.php: -------------------------------------------------------------------------------- 1 | expectsJson()) { 18 | return route('login-admin.index'); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /app/Http/Middleware/EncryptCookies.php: -------------------------------------------------------------------------------- 1 | user()){ 21 | return redirect('/'); 22 | } 23 | return $next($request); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /app/Http/Middleware/PreventRequestsDuringMaintenance.php: -------------------------------------------------------------------------------- 1 | check()) { 26 | return redirect(RouteServiceProvider::HOME); 27 | } 28 | } 29 | 30 | return $next($request); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /app/Http/Middleware/TrimStrings.php: -------------------------------------------------------------------------------- 1 | allSubdomainsOfApplicationUrl(), 18 | ]; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /app/Http/Middleware/TrustProxies.php: -------------------------------------------------------------------------------- 1 | user()){ 21 | return redirect('/login'); 22 | } 23 | return $next($request); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /app/Http/Middleware/VerifyCsrfToken.php: -------------------------------------------------------------------------------- 1 | belongsTo(User::class); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /app/Models/Aktifitasadmin.php: -------------------------------------------------------------------------------- 1 | blongsTo(User::class); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /app/Models/Anggota.php: -------------------------------------------------------------------------------- 1 | 'datetime', 24 | ]; 25 | 26 | public function scopeFilter($query, array $filter) 27 | { 28 | $query->when($filter['q'] ?? false, function($query, $q){ 29 | return $query->where('id_anggota', 'like', '%' .$q. '%') 30 | ->orwhere('nama', 'like', '%' .$q. '%') 31 | ->orwhere('email', 'like', '%' .$q. '%') 32 | ->orwhere('jenis_kelamin', 'like', '%' .$q. '%') 33 | ->orwhere('kelas', 'like', '%' .$q. '%'); 34 | }); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /app/Models/Buku.php: -------------------------------------------------------------------------------- 1 | when($filters['q'] ?? false, function($query, $q){ 18 | return $query->where('judul_buku', 'like', '%' . $q . '%') 19 | ->orWhere('pengarang', 'like', '%' . $q . '%') 20 | ->orWhere('penerbit', 'like', '%' . $q . '%') 21 | ->orWhere('deskripsi', 'like', '%' . $q . '%'); 22 | })->when($filters['kategori'] ?? false, function($query, $kategori){ 23 | return $query->whereHas('kategori', function($query) use ($kategori){ 24 | $query->whereKategori($kategori); 25 | }); 26 | }); 27 | } 28 | 29 | public function kategori() 30 | { 31 | return $this->belongsTo(Kategori::class); 32 | } 33 | 34 | public function pinjaman() 35 | { 36 | return $this->hasMany(Pinjaman::class); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /app/Models/Kategori.php: -------------------------------------------------------------------------------- 1 | hasMany(Buku::class); 16 | } 17 | 18 | public function scopeFilter($query, array $filters) 19 | { 20 | $query->when($filters['q'] ?? false, function($query, $q){ 21 | return $query->where('kategori', 'like', '%' .$q. '%'); 22 | }); 23 | } 24 | } 25 | 26 | -------------------------------------------------------------------------------- /app/Models/Pinjaman.php: -------------------------------------------------------------------------------- 1 | belongsTo(Buku::class); 18 | } 19 | 20 | public function getTglPinjamAttribut() 21 | { 22 | return Carbon::parse($this->attributes['tgl_pinjam']) 23 | ->transalatedFormat('l, d F Y'); 24 | } 25 | 26 | public function scopeFilter($query, array $filters) 27 | { 28 | $query->when($filters['pinjam'] ?? false, function($query, $q){ 29 | return $query->where('id_anggota', 'like', '%' .$q. '%') 30 | ->orWhere('nama_peminjam', 'like', '%' .$q. '%') 31 | ->orWhere('judul_buku', 'like', '%' .$q. '%') 32 | ->orWhere('email', 'like', '%' .$q. '%') 33 | ->orWhere('jenis_kelamin', 'like', '%' .$q. '%') 34 | ->orWhere('kelas', 'like', '%' .$q. '%') 35 | ->orWhere('tgl_pinjam', 'like', '%' .$q. '%') 36 | ->orWhere('tgl_kembali', 'like', '%' .$q. '%') 37 | ->orWhere('status', 'like', '%' .$q. '%') 38 | ->orWhere('denda', 'like', '%' .$q. '%'); 39 | }); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /app/Models/Thumbnail.php: -------------------------------------------------------------------------------- 1 | 'datetime', 40 | ]; 41 | 42 | public function aktifitas() 43 | { 44 | return $this->hasMany(Aktifitas::class); 45 | } 46 | 47 | public function aktifitasadmin() 48 | { 49 | return $this->hasMany(aktifitasadmin::class); 50 | } 51 | 52 | public function scopeFilter($query, array $filters) 53 | { 54 | $query->when($filters['q'] ?? false, function($query, $q){ 55 | return $query->where('id_petugas', 'like', '%' .$q. '%') 56 | ->orwhere('nama', 'like', '%' .$q. '%') 57 | ->orwhere('username', 'like', '%' .$q. '%') 58 | ->orwhere('created_at', 'like', '%' .$q. '%'); 59 | }); 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /app/Providers/AppServiceProvider.php: -------------------------------------------------------------------------------- 1 | 'App\Policies\ModelPolicy', 17 | ]; 18 | 19 | /** 20 | * Register any authentication / authorization services. 21 | * 22 | * @return void 23 | */ 24 | public function boot() 25 | { 26 | $this->registerPolicies(); 27 | 28 | // 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /app/Providers/BroadcastServiceProvider.php: -------------------------------------------------------------------------------- 1 | [ 19 | SendEmailVerificationNotification::class, 20 | ], 21 | ]; 22 | 23 | /** 24 | * Register any events for your application. 25 | * 26 | * @return void 27 | */ 28 | public function boot() 29 | { 30 | // 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /app/Providers/RouteServiceProvider.php: -------------------------------------------------------------------------------- 1 | configureRateLimiting(); 39 | 40 | $this->routes(function () { 41 | Route::prefix('api') 42 | ->middleware('api') 43 | ->namespace($this->namespace) 44 | ->group(base_path('routes/api.php')); 45 | 46 | Route::middleware('web') 47 | ->namespace($this->namespace) 48 | ->group(base_path('routes/web.php')); 49 | }); 50 | } 51 | 52 | /** 53 | * Configure the rate limiters for the application. 54 | * 55 | * @return void 56 | */ 57 | protected function configureRateLimiting() 58 | { 59 | RateLimiter::for('api', function (Request $request) { 60 | return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip()); 61 | }); 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /artisan: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env php 2 | make(Illuminate\Contracts\Console\Kernel::class); 34 | 35 | $status = $kernel->handle( 36 | $input = new Symfony\Component\Console\Input\ArgvInput, 37 | new Symfony\Component\Console\Output\ConsoleOutput 38 | ); 39 | 40 | /* 41 | |-------------------------------------------------------------------------- 42 | | Shutdown The Application 43 | |-------------------------------------------------------------------------- 44 | | 45 | | Once Artisan has finished running, we will fire off the shutdown events 46 | | so that any final work may be done by the application before we shut 47 | | down the process. This is the last thing to happen to the request. 48 | | 49 | */ 50 | 51 | $kernel->terminate($input, $status); 52 | 53 | exit($status); 54 | -------------------------------------------------------------------------------- /bootstrap/app.php: -------------------------------------------------------------------------------- 1 | singleton( 30 | Illuminate\Contracts\Http\Kernel::class, 31 | App\Http\Kernel::class 32 | ); 33 | 34 | $app->singleton( 35 | Illuminate\Contracts\Console\Kernel::class, 36 | App\Console\Kernel::class 37 | ); 38 | 39 | $app->singleton( 40 | Illuminate\Contracts\Debug\ExceptionHandler::class, 41 | App\Exceptions\Handler::class 42 | ); 43 | 44 | /* 45 | |-------------------------------------------------------------------------- 46 | | Return The Application 47 | |-------------------------------------------------------------------------- 48 | | 49 | | This script returns the application instance. The instance is given to 50 | | the calling script so we can separate the building of the instances 51 | | from the actual running of the application and sending responses. 52 | | 53 | */ 54 | 55 | return $app; 56 | -------------------------------------------------------------------------------- /bootstrap/cache/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "laravel/laravel", 3 | "type": "project", 4 | "description": "The Laravel Framework.", 5 | "keywords": ["framework", "laravel"], 6 | "license": "MIT", 7 | "require": { 8 | "php": "^7.3|^8.0", 9 | "barryvdh/laravel-dompdf": "^0.9.0", 10 | "fruitcake/laravel-cors": "^2.0", 11 | "guzzlehttp/guzzle": "^7.0.1", 12 | "itsgoingd/clockwork": "^5.1", 13 | "laravel/framework": "^8.65", 14 | "laravel/sanctum": "^2.11", 15 | "laravel/tinker": "^2.5" 16 | }, 17 | "require-dev": { 18 | "facade/ignition": "^2.5", 19 | "fakerphp/faker": "^1.9.1", 20 | "laravel/sail": "^1.0.1", 21 | "mockery/mockery": "^1.4.4", 22 | "nunomaduro/collision": "^5.10", 23 | "phpunit/phpunit": "^9.5.10" 24 | }, 25 | "autoload": { 26 | "psr-4": { 27 | "App\\": "app/", 28 | "Database\\Factories\\": "database/factories/", 29 | "Database\\Seeders\\": "database/seeders/" 30 | } 31 | }, 32 | "autoload-dev": { 33 | "psr-4": { 34 | "Tests\\": "tests/" 35 | } 36 | }, 37 | "scripts": { 38 | "post-autoload-dump": [ 39 | "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", 40 | "@php artisan package:discover --ansi" 41 | ], 42 | "post-update-cmd": [ 43 | "@php artisan vendor:publish --tag=laravel-assets --ansi" 44 | ], 45 | "post-root-package-install": [ 46 | "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" 47 | ], 48 | "post-create-project-cmd": [ 49 | "@php artisan key:generate --ansi" 50 | ] 51 | }, 52 | "extra": { 53 | "laravel": { 54 | "dont-discover": [] 55 | } 56 | }, 57 | "config": { 58 | "optimize-autoloader": true, 59 | "preferred-install": "dist", 60 | "sort-packages": true 61 | }, 62 | "minimum-stability": "dev", 63 | "prefer-stable": true 64 | } 65 | -------------------------------------------------------------------------------- /config/broadcasting.php: -------------------------------------------------------------------------------- 1 | env('BROADCAST_DRIVER', 'null'), 19 | 20 | /* 21 | |-------------------------------------------------------------------------- 22 | | Broadcast Connections 23 | |-------------------------------------------------------------------------- 24 | | 25 | | Here you may define all of the broadcast connections that will be used 26 | | to broadcast events to other systems or over websockets. Samples of 27 | | each available type of connection are provided inside this array. 28 | | 29 | */ 30 | 31 | 'connections' => [ 32 | 33 | 'pusher' => [ 34 | 'driver' => 'pusher', 35 | 'key' => env('PUSHER_APP_KEY'), 36 | 'secret' => env('PUSHER_APP_SECRET'), 37 | 'app_id' => env('PUSHER_APP_ID'), 38 | 'options' => [ 39 | 'cluster' => env('PUSHER_APP_CLUSTER'), 40 | 'useTLS' => true, 41 | ], 42 | ], 43 | 44 | 'ably' => [ 45 | 'driver' => 'ably', 46 | 'key' => env('ABLY_KEY'), 47 | ], 48 | 49 | 'redis' => [ 50 | 'driver' => 'redis', 51 | 'connection' => 'default', 52 | ], 53 | 54 | 'log' => [ 55 | 'driver' => 'log', 56 | ], 57 | 58 | 'null' => [ 59 | 'driver' => 'null', 60 | ], 61 | 62 | ], 63 | 64 | ]; 65 | -------------------------------------------------------------------------------- /config/cache.php: -------------------------------------------------------------------------------- 1 | env('CACHE_DRIVER', 'file'), 19 | 20 | /* 21 | |-------------------------------------------------------------------------- 22 | | Cache Stores 23 | |-------------------------------------------------------------------------- 24 | | 25 | | Here you may define all of the cache "stores" for your application as 26 | | well as their drivers. You may even define multiple stores for the 27 | | same cache driver to group types of items stored in your caches. 28 | | 29 | | Supported drivers: "apc", "array", "database", "file", 30 | | "memcached", "redis", "dynamodb", "octane", "null" 31 | | 32 | */ 33 | 34 | 'stores' => [ 35 | 36 | 'apc' => [ 37 | 'driver' => 'apc', 38 | ], 39 | 40 | 'array' => [ 41 | 'driver' => 'array', 42 | 'serialize' => false, 43 | ], 44 | 45 | 'database' => [ 46 | 'driver' => 'database', 47 | 'table' => 'cache', 48 | 'connection' => null, 49 | 'lock_connection' => null, 50 | ], 51 | 52 | 'file' => [ 53 | 'driver' => 'file', 54 | 'path' => storage_path('framework/cache/data'), 55 | ], 56 | 57 | 'memcached' => [ 58 | 'driver' => 'memcached', 59 | 'persistent_id' => env('MEMCACHED_PERSISTENT_ID'), 60 | 'sasl' => [ 61 | env('MEMCACHED_USERNAME'), 62 | env('MEMCACHED_PASSWORD'), 63 | ], 64 | 'options' => [ 65 | // Memcached::OPT_CONNECT_TIMEOUT => 2000, 66 | ], 67 | 'servers' => [ 68 | [ 69 | 'host' => env('MEMCACHED_HOST', '127.0.0.1'), 70 | 'port' => env('MEMCACHED_PORT', 11211), 71 | 'weight' => 100, 72 | ], 73 | ], 74 | ], 75 | 76 | 'redis' => [ 77 | 'driver' => 'redis', 78 | 'connection' => 'cache', 79 | 'lock_connection' => 'default', 80 | ], 81 | 82 | 'dynamodb' => [ 83 | 'driver' => 'dynamodb', 84 | 'key' => env('AWS_ACCESS_KEY_ID'), 85 | 'secret' => env('AWS_SECRET_ACCESS_KEY'), 86 | 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), 87 | 'table' => env('DYNAMODB_CACHE_TABLE', 'cache'), 88 | 'endpoint' => env('DYNAMODB_ENDPOINT'), 89 | ], 90 | 91 | 'octane' => [ 92 | 'driver' => 'octane', 93 | ], 94 | 95 | ], 96 | 97 | /* 98 | |-------------------------------------------------------------------------- 99 | | Cache Key Prefix 100 | |-------------------------------------------------------------------------- 101 | | 102 | | When utilizing a RAM based store such as APC or Memcached, there might 103 | | be other applications utilizing the same cache. So, we'll specify a 104 | | value to get prefixed to all our keys so we can avoid collisions. 105 | | 106 | */ 107 | 108 | 'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_cache'), 109 | 110 | ]; 111 | -------------------------------------------------------------------------------- /config/cors.php: -------------------------------------------------------------------------------- 1 | ['api/*', 'sanctum/csrf-cookie'], 19 | 20 | 'allowed_methods' => ['*'], 21 | 22 | 'allowed_origins' => ['*'], 23 | 24 | 'allowed_origins_patterns' => [], 25 | 26 | 'allowed_headers' => ['*'], 27 | 28 | 'exposed_headers' => [], 29 | 30 | 'max_age' => 0, 31 | 32 | 'supports_credentials' => false, 33 | 34 | ]; 35 | -------------------------------------------------------------------------------- /config/filesystems.php: -------------------------------------------------------------------------------- 1 | env('FILESYSTEM_DRIVER', 'local'), 17 | 18 | /* 19 | |-------------------------------------------------------------------------- 20 | | Filesystem Disks 21 | |-------------------------------------------------------------------------- 22 | | 23 | | Here you may configure as many filesystem "disks" as you wish, and you 24 | | may even configure multiple disks of the same driver. Defaults have 25 | | been setup for each driver as an example of the required options. 26 | | 27 | | Supported Drivers: "local", "ftp", "sftp", "s3" 28 | | 29 | */ 30 | 31 | 'disks' => [ 32 | 33 | 'local' => [ 34 | 'driver' => 'local', 35 | 'root' => storage_path('app'), 36 | ], 37 | 38 | 'public' => [ 39 | 'driver' => 'local', 40 | 'root' => storage_path('app/public'), 41 | 'url' => env('APP_URL').'/storage', 42 | 'visibility' => 'public', 43 | ], 44 | 45 | 's3' => [ 46 | 'driver' => 's3', 47 | 'key' => env('AWS_ACCESS_KEY_ID'), 48 | 'secret' => env('AWS_SECRET_ACCESS_KEY'), 49 | 'region' => env('AWS_DEFAULT_REGION'), 50 | 'bucket' => env('AWS_BUCKET'), 51 | 'url' => env('AWS_URL'), 52 | 'endpoint' => env('AWS_ENDPOINT'), 53 | 'use_path_style_endpoint' => env('AWS_USE_PATH_STYLE_ENDPOINT', false), 54 | ], 55 | 56 | ], 57 | 58 | /* 59 | |-------------------------------------------------------------------------- 60 | | Symbolic Links 61 | |-------------------------------------------------------------------------- 62 | | 63 | | Here you may configure the symbolic links that will be created when the 64 | | `storage:link` Artisan command is executed. The array keys should be 65 | | the locations of the links and the values should be their targets. 66 | | 67 | */ 68 | 69 | 'links' => [ 70 | public_path('storage') => storage_path('app/public'), 71 | ], 72 | 73 | ]; 74 | -------------------------------------------------------------------------------- /config/hashing.php: -------------------------------------------------------------------------------- 1 | 'bcrypt', 19 | 20 | /* 21 | |-------------------------------------------------------------------------- 22 | | Bcrypt Options 23 | |-------------------------------------------------------------------------- 24 | | 25 | | Here you may specify the configuration options that should be used when 26 | | passwords are hashed using the Bcrypt algorithm. This will allow you 27 | | to control the amount of time it takes to hash the given password. 28 | | 29 | */ 30 | 31 | 'bcrypt' => [ 32 | 'rounds' => env('BCRYPT_ROUNDS', 10), 33 | ], 34 | 35 | /* 36 | |-------------------------------------------------------------------------- 37 | | Argon Options 38 | |-------------------------------------------------------------------------- 39 | | 40 | | Here you may specify the configuration options that should be used when 41 | | passwords are hashed using the Argon algorithm. These will allow you 42 | | to control the amount of time it takes to hash the given password. 43 | | 44 | */ 45 | 46 | 'argon' => [ 47 | 'memory' => 1024, 48 | 'threads' => 2, 49 | 'time' => 2, 50 | ], 51 | 52 | ]; 53 | -------------------------------------------------------------------------------- /config/queue.php: -------------------------------------------------------------------------------- 1 | env('QUEUE_CONNECTION', 'sync'), 17 | 18 | /* 19 | |-------------------------------------------------------------------------- 20 | | Queue Connections 21 | |-------------------------------------------------------------------------- 22 | | 23 | | Here you may configure the connection information for each server that 24 | | is used by your application. A default configuration has been added 25 | | for each back-end shipped with Laravel. You are free to add more. 26 | | 27 | | Drivers: "sync", "database", "beanstalkd", "sqs", "redis", "null" 28 | | 29 | */ 30 | 31 | 'connections' => [ 32 | 33 | 'sync' => [ 34 | 'driver' => 'sync', 35 | ], 36 | 37 | 'database' => [ 38 | 'driver' => 'database', 39 | 'table' => 'jobs', 40 | 'queue' => 'default', 41 | 'retry_after' => 90, 42 | 'after_commit' => false, 43 | ], 44 | 45 | 'beanstalkd' => [ 46 | 'driver' => 'beanstalkd', 47 | 'host' => 'localhost', 48 | 'queue' => 'default', 49 | 'retry_after' => 90, 50 | 'block_for' => 0, 51 | 'after_commit' => false, 52 | ], 53 | 54 | 'sqs' => [ 55 | 'driver' => 'sqs', 56 | 'key' => env('AWS_ACCESS_KEY_ID'), 57 | 'secret' => env('AWS_SECRET_ACCESS_KEY'), 58 | 'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'), 59 | 'queue' => env('SQS_QUEUE', 'default'), 60 | 'suffix' => env('SQS_SUFFIX'), 61 | 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), 62 | 'after_commit' => false, 63 | ], 64 | 65 | 'redis' => [ 66 | 'driver' => 'redis', 67 | 'connection' => 'default', 68 | 'queue' => env('REDIS_QUEUE', 'default'), 69 | 'retry_after' => 90, 70 | 'block_for' => null, 71 | 'after_commit' => false, 72 | ], 73 | 74 | ], 75 | 76 | /* 77 | |-------------------------------------------------------------------------- 78 | | Failed Queue Jobs 79 | |-------------------------------------------------------------------------- 80 | | 81 | | These options configure the behavior of failed queue job logging so you 82 | | can control which database and table are used to store the jobs that 83 | | have failed. You may change them to any database / table you wish. 84 | | 85 | */ 86 | 87 | 'failed' => [ 88 | 'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), 89 | 'database' => env('DB_CONNECTION', 'mysql'), 90 | 'table' => 'failed_jobs', 91 | ], 92 | 93 | ]; 94 | -------------------------------------------------------------------------------- /config/sanctum.php: -------------------------------------------------------------------------------- 1 | explode(',', env('SANCTUM_STATEFUL_DOMAINS', sprintf( 17 | '%s%s', 18 | 'localhost,localhost:3000,127.0.0.1,127.0.0.1:8000,::1', 19 | env('APP_URL') ? ','.parse_url(env('APP_URL'), PHP_URL_HOST) : '' 20 | ))), 21 | 22 | /* 23 | |-------------------------------------------------------------------------- 24 | | Expiration Minutes 25 | |-------------------------------------------------------------------------- 26 | | 27 | | This value controls the number of minutes until an issued token will be 28 | | considered expired. If this value is null, personal access tokens do 29 | | not expire. This won't tweak the lifetime of first-party sessions. 30 | | 31 | */ 32 | 33 | 'expiration' => null, 34 | 35 | /* 36 | |-------------------------------------------------------------------------- 37 | | Sanctum Middleware 38 | |-------------------------------------------------------------------------- 39 | | 40 | | When authenticating your first-party SPA with Sanctum you may need to 41 | | customize some of the middleware Sanctum uses while processing the 42 | | request. You may change the middleware listed below as required. 43 | | 44 | */ 45 | 46 | 'middleware' => [ 47 | 'verify_csrf_token' => App\Http\Middleware\VerifyCsrfToken::class, 48 | 'encrypt_cookies' => App\Http\Middleware\EncryptCookies::class, 49 | ], 50 | 51 | ]; 52 | -------------------------------------------------------------------------------- /config/services.php: -------------------------------------------------------------------------------- 1 | [ 18 | 'domain' => env('MAILGUN_DOMAIN'), 19 | 'secret' => env('MAILGUN_SECRET'), 20 | 'endpoint' => env('MAILGUN_ENDPOINT', 'api.mailgun.net'), 21 | ], 22 | 23 | 'postmark' => [ 24 | 'token' => env('POSTMARK_TOKEN'), 25 | ], 26 | 27 | 'ses' => [ 28 | 'key' => env('AWS_ACCESS_KEY_ID'), 29 | 'secret' => env('AWS_SECRET_ACCESS_KEY'), 30 | 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), 31 | ], 32 | 33 | ]; 34 | -------------------------------------------------------------------------------- /config/view.php: -------------------------------------------------------------------------------- 1 | [ 17 | resource_path('views'), 18 | ], 19 | 20 | /* 21 | |-------------------------------------------------------------------------- 22 | | Compiled View Path 23 | |-------------------------------------------------------------------------- 24 | | 25 | | This option determines where all the compiled Blade templates will be 26 | | stored for your application. Typically, this is within the storage 27 | | directory. However, as usual, you are free to change this value. 28 | | 29 | */ 30 | 31 | 'compiled' => env( 32 | 'VIEW_COMPILED_PATH', 33 | realpath(storage_path('framework/views')) 34 | ), 35 | 36 | ]; 37 | -------------------------------------------------------------------------------- /database/.gitignore: -------------------------------------------------------------------------------- 1 | *.sqlite* 2 | -------------------------------------------------------------------------------- /database/factories/BukuFactory.php: -------------------------------------------------------------------------------- 1 | $this->faker->name(), 19 | 'slug' => $this->faker->slug(1), 20 | 'pengarang' => 'Saya suka kamu', 21 | 'jumlah_buku' => '100', 22 | 'deskripsi' => $this->faker->text(), 23 | 'tahun_terbit' => '2021', 24 | 'penerbit' => 'Saya suka kamu', 25 | 'isbn' => '12345678', 26 | 'kategori_id' => $this->faker->numberBetween(1, 3), 27 | 'gambar_buku' => 'gambar.jpg', 28 | 'views' => $this->faker->numberBetween(0, 100) 29 | ]; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /database/factories/UserFactory.php: -------------------------------------------------------------------------------- 1 | $this->faker->name(), 19 | 'pengarang' => $this->faker->name(), 20 | 'jumlah_buku' => '100', 21 | 'deskripsi' => $this->faker->words(), 22 | 'tahun_terbit' => '2021', 23 | 'penerbit' => $this->faker->name(), 24 | 'isbn' => '12345678', 25 | 'kategori' => 'pendidikan', 26 | 'gambar_buku' => 'gambar.jpg', 27 | 'views' => $this->faker->numberBetween(0, 100) 28 | ]; 29 | } 30 | 31 | /** 32 | * Indicate that the model's email address should be unverified. 33 | * 34 | * @return \Illuminate\Database\Eloquent\Factories\Factory 35 | */ 36 | public function unverified() 37 | { 38 | return $this->state(function (array $attributes) { 39 | return [ 40 | 'email_verified_at' => null, 41 | ]; 42 | }); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /database/migrations/2014_10_12_000000_create_users_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->string('id_petugas')->nullable(); 19 | $table->string('nama'); 20 | $table->string('username')->unique(); 21 | $table->string('password'); 22 | $table->enum('role', ['Admin', 'Petugas'])->default('Petugas'); 23 | $table->string('aktifitas')->nullable(); 24 | $table->timestamps(); 25 | }); 26 | } 27 | 28 | /** 29 | * Reverse the migrations. 30 | * 31 | * @return void 32 | */ 33 | public function down() 34 | { 35 | Schema::dropIfExists('users'); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /database/migrations/2014_10_12_100000_create_password_resets_table.php: -------------------------------------------------------------------------------- 1 | string('email')->index(); 18 | $table->string('token'); 19 | $table->timestamp('created_at')->nullable(); 20 | }); 21 | } 22 | 23 | /** 24 | * Reverse the migrations. 25 | * 26 | * @return void 27 | */ 28 | public function down() 29 | { 30 | Schema::dropIfExists('password_resets'); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /database/migrations/2019_08_19_000000_create_failed_jobs_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->string('uuid')->unique(); 19 | $table->text('connection'); 20 | $table->text('queue'); 21 | $table->longText('payload'); 22 | $table->longText('exception'); 23 | $table->timestamp('failed_at')->useCurrent(); 24 | }); 25 | } 26 | 27 | /** 28 | * Reverse the migrations. 29 | * 30 | * @return void 31 | */ 32 | public function down() 33 | { 34 | Schema::dropIfExists('failed_jobs'); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->morphs('tokenable'); 19 | $table->string('name'); 20 | $table->string('token', 64)->unique(); 21 | $table->text('abilities')->nullable(); 22 | $table->timestamp('last_used_at')->nullable(); 23 | $table->timestamps(); 24 | }); 25 | } 26 | 27 | /** 28 | * Reverse the migrations. 29 | * 30 | * @return void 31 | */ 32 | public function down() 33 | { 34 | Schema::dropIfExists('personal_access_tokens'); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /database/migrations/2021_11_14_072950_create_bukus_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->string('judul_buku'); 19 | $table->string('slug'); 20 | $table->string('pengarang'); 21 | $table->integer('jumlah_buku'); 22 | $table->text('deskripsi'); 23 | $table->integer('tahun_terbit'); 24 | $table->string('penerbit'); 25 | $table->string('isbn')->nullable(); 26 | $table->foreignId('kategori_id'); 27 | $table->string('gambar_buku'); 28 | $table->integer('views')->default('0')->nullable(); 29 | $table->foreignId('pinjaman')->default('0')->nullable(); 30 | $table->enum('status', ['Publish', 'Draft', 'Pending'])->default('Publish'); 31 | $table->timestamps(); 32 | }); 33 | } 34 | 35 | /** 36 | * Reverse the migrations. 37 | * 38 | * @return void 39 | */ 40 | public function down() 41 | { 42 | Schema::dropIfExists('bukus'); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /database/migrations/2021_11_14_102731_create_kategoris_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->string('kategori'); 19 | $table->timestamps(); 20 | }); 21 | } 22 | 23 | /** 24 | * Reverse the migrations. 25 | * 26 | * @return void 27 | */ 28 | public function down() 29 | { 30 | Schema::dropIfExists('kategoris'); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /database/migrations/2021_11_15_165432_create_thumbnails_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->string('gambar'); 19 | $table->string('link')->nullable(); 20 | $table->timestamps(); 21 | }); 22 | } 23 | 24 | /** 25 | * Reverse the migrations. 26 | * 27 | * @return void 28 | */ 29 | public function down() 30 | { 31 | Schema::dropIfExists('thumbnails'); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /database/migrations/2021_11_16_131706_create_anggotas_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->string('id_anggota'); 19 | $table->string('foto'); 20 | $table->string('nama'); 21 | $table->string('email')->unique(); 22 | $table->string('kelas'); 23 | $table->enum('jenis_kelamin',['Laki-laki', 'Perempuan']); 24 | $table->integer('nis'); 25 | $table->string('password'); 26 | $table->enum('status', ['Nonaktif', 'Verify', 'Aktif'])->default('Nonaktif'); 27 | $table->string('aktifitas')->nullable(); 28 | $table->timestamp('email_verified_at')->nullable(); 29 | $table->rememberToken(); 30 | $table->timestamps(); 31 | }); 32 | } 33 | /** 34 | * Reverse the migrations. 35 | * 36 | * @return void 37 | */ 38 | public function down() 39 | { 40 | Schema::dropIfExists('anggotas'); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /database/migrations/2021_11_18_155808_create_pinjamen_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->string('id_anggota'); 19 | $table->string('nama_peminjam'); 20 | $table->string('email'); 21 | $table->string('jenis_kelamin'); 22 | $table->string('kelas'); 23 | $table->string('judul_buku'); 24 | $table->foreignId('buku_id'); 25 | $table->string('tgl_pinjam'); 26 | $table->string('tgl_kembali'); 27 | $table->enum('status',['Belum diambil','Dipinjam','Dikembalikan','Denda'])->default('Belum diambil'); 28 | $table->integer('denda')->default('0'); 29 | $table->timestamps(); 30 | }); 31 | } 32 | 33 | /** 34 | * Reverse the migrations. 35 | * 36 | * @return void 37 | */ 38 | public function down() 39 | { 40 | Schema::dropIfExists('pinjamen'); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /database/migrations/2021_11_20_102837_create_aktifitas_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->foreignId('user_id'); 19 | $table->string('icon'); 20 | $table->string('backgroud'); 21 | $table->string('notifikasi'); 22 | $table->timestamps(); 23 | }); 24 | } 25 | 26 | /** 27 | * Reverse the migrations. 28 | * 29 | * @return void 30 | */ 31 | public function down() 32 | { 33 | Schema::dropIfExists('aktifitas'); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /database/migrations/2021_11_21_091528_create_aktifitasadmins_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->foreignId('user_id'); 19 | $table->string('icon'); 20 | $table->string('backgroud'); 21 | $table->string('notifikasi'); 22 | $table->timestamps(); 23 | }); 24 | } 25 | 26 | /** 27 | * Reverse the migrations. 28 | * 29 | * @return void 30 | */ 31 | public function down() 32 | { 33 | Schema::dropIfExists('aktifitasadmins'); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /database/seeders/DatabaseSeeder.php: -------------------------------------------------------------------------------- 1 | create(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "requires": true, 3 | "lockfileVersion": 1, 4 | "dependencies": { 5 | "stisla-theme": { 6 | "version": "1.0.6", 7 | "resolved": "https://registry.npmjs.org/stisla-theme/-/stisla-theme-1.0.6.tgz", 8 | "integrity": "sha512-ccMXkEJ/u98db5Kp5Ubb1IIM0AArZu2hTznOrau2WCdoqPjR5wBvZevCVosSffN2OajhwwN2GkQ5e1LkD9y50w==" 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "scripts": { 4 | "dev": "npm run development", 5 | "development": "mix", 6 | "watch": "mix watch", 7 | "watch-poll": "mix watch -- --watch-options-poll=1000", 8 | "hot": "mix watch --hot", 9 | "prod": "npm run production", 10 | "production": "mix --production" 11 | }, 12 | "devDependencies": { 13 | "axios": "^0.21", 14 | "laravel-mix": "^6.0.6", 15 | "lodash": "^4.17.19", 16 | "postcss": "^8.1.14" 17 | }, 18 | "dependencies": { 19 | "stisla-theme": "^1.0.6" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 9 | ./tests/Unit 10 | 11 | 12 | ./tests/Feature 13 | 14 | 15 | 16 | 17 | ./app 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /public/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | 3 | Options -MultiViews -Indexes 4 | 5 | 6 | RewriteEngine On 7 | 8 | # Handle Authorization Header 9 | RewriteCond %{HTTP:Authorization} . 10 | RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 11 | 12 | # Redirect Trailing Slashes If Not A Folder... 13 | RewriteCond %{REQUEST_FILENAME} !-d 14 | RewriteCond %{REQUEST_URI} (.+)/$ 15 | RewriteRule ^ %1 [L,R=301] 16 | 17 | # Send Requests To Front Controller... 18 | RewriteCond %{REQUEST_FILENAME} !-d 19 | RewriteCond %{REQUEST_FILENAME} !-f 20 | RewriteRule ^ index.php [L] 21 | 22 | -------------------------------------------------------------------------------- /public/assets/css/custom.css: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * You can write your CSS code here, DO NOT touch the default JavaScript file 4 | * because it will make it harder for you to update. 5 | * 6 | */ 7 | 8 | /*# sourceMappingURL=custom.css.map */ 9 | .loading-halaman::before { 10 | content: " "; 11 | display: block; 12 | position: fixed; 13 | z-index: 10; 14 | height: 3px; 15 | width: 100%; 16 | top: 0; 17 | left: 0; 18 | background-color: #1a73e8; 19 | -webkit-animation: load-halaman ease-out 1s; 20 | animation: load-halaman ease-out 1s; 21 | } 22 | 23 | @-webkit-keyframes load-halaman { 24 | from { 25 | width:0; 26 | } 27 | to { 28 | width:100%; 29 | } 30 | } 31 | 32 | @keyframes load-halaman { 33 | from { 34 | width:0; 35 | } 36 | to { 37 | width:100%; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /public/assets/css/custom.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sourceRoot":"","sources":["../../sources/scss/custom.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","file":"custom.css"} -------------------------------------------------------------------------------- /public/assets/css/owl-carousel/owl.carousel.min.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Owl Carousel v2.3.4 3 | * Copyright 2013-2018 David Deutsch 4 | * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE 5 | */ 6 | .owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%} -------------------------------------------------------------------------------- /public/assets/css/owl-carousel/owl.theme.default.min.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Owl Carousel v2.3.4 3 | * Copyright 2013-2018 David Deutsch 4 | * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE 5 | */ 6 | .owl-theme .owl-dots,.owl-theme .owl-nav{text-align:center;-webkit-tap-highlight-color:transparent}.owl-theme .owl-nav{margin-top:10px}.owl-theme .owl-nav [class*=owl-]{color:#FFF;font-size:14px;margin:5px;padding:4px 7px;background:#D6D6D6;display:inline-block;cursor:pointer;border-radius:3px}.owl-theme .owl-nav [class*=owl-]:hover{background:#869791;color:#FFF;text-decoration:none}.owl-theme .owl-nav .disabled{opacity:.5;cursor:default}.owl-theme .owl-nav.disabled+.owl-dots{margin-top:10px}.owl-theme .owl-dots .owl-dot{display:inline-block;zoom:1}.owl-theme .owl-dots .owl-dot span{width:10px;height:10px;margin:5px 7px;background:#D6D6D6;display:block;-webkit-backface-visibility:visible;transition:opacity .2s ease;border-radius:30px}.owl-theme .owl-dots .owl-dot.active span,.owl-theme .owl-dots .owl-dot:hover span{background:#869791} -------------------------------------------------------------------------------- /public/assets/css/reverse.css: -------------------------------------------------------------------------------- 1 | body.skin-reverse.sidebar-mini .main-sidebar:after { 2 | background-color: color(primary); } 3 | 4 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li.active > a { 5 | background-color: #fff; 6 | box-shadow: none; 7 | color: color(primary); } 8 | 9 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li.active ul.dropdown-menu li a, 10 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li ul.dropdown-menu li a { 11 | background-color: transparent; 12 | color: color_lighten(font, 10%); } 13 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li.active ul.dropdown-menu li a:hover, 14 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li ul.dropdown-menu li a:hover { 15 | background-color: color_lighten(light, 7.6%); 16 | color: color(dark); } 17 | 18 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li.active ul.dropdown-menu li.active a, 19 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li ul.dropdown-menu li.active a { 20 | background-color: transparent !important; 21 | color: color(primary); } 22 | 23 | body.skin-reverse .main-sidebar { 24 | background-color: color(primary); } 25 | body.skin-reverse .main-sidebar .sidebar-brand a { 26 | color: #fff; } 27 | body.skin-reverse .main-sidebar .sidebar-menu li a { 28 | color: color_lighten(primary, 25%); } 29 | body.skin-reverse .main-sidebar .sidebar-menu li a:hover { 30 | background-color: #6070e5; } 31 | body.skin-reverse .main-sidebar .sidebar-menu li.active a, 32 | body.skin-reverse .main-sidebar .sidebar-menu li.active a:hover, 33 | body.skin-reverse .main-sidebar .sidebar-menu li.active ul.dropdown-menu li a:hover, 34 | body.skin-reverse .main-sidebar .sidebar-menu li.active ul.dropdown-menu li a { 35 | background-color: #6070e5; } 36 | body.skin-reverse .main-sidebar .sidebar-menu li.menu-header { 37 | color: #afb7ff; } 38 | body.skin-reverse .main-sidebar .sidebar-menu li ul.dropdown-menu li a { 39 | color: color_lighten(primary, 25%); } 40 | body.skin-reverse .main-sidebar .sidebar-menu li ul.dropdown-menu li a:hover { 41 | background-color: color(primary); 42 | color: #fff; } 43 | body.skin-reverse .main-sidebar .sidebar-menu li ul.dropdown-menu li.active a { 44 | color: #fff; } 45 | 46 | body.skin-reverse .navbar-bg, 47 | body.skin-reverse .navbar { 48 | background-color: #fff; } 49 | body.skin-reverse .navbar-bg .nav-link.nav-link-user, 50 | body.skin-reverse .navbar-bg .nav-link, 51 | body.skin-reverse .navbar .nav-link.nav-link-user, 52 | body.skin-reverse .navbar .nav-link { 53 | color: #000; } 54 | body.skin-reverse .navbar-bg .nav-link.nav-link-user:hover, 55 | body.skin-reverse .navbar-bg .nav-link:hover, 56 | body.skin-reverse .navbar .nav-link.nav-link-user:hover, 57 | body.skin-reverse .navbar .nav-link:hover { 58 | color: #1a1a1a; } 59 | body.skin-reverse .navbar-bg .form-inline .btn, 60 | body.skin-reverse .navbar-bg .form-inline .form-control, 61 | body.skin-reverse .navbar .form-inline .btn, 62 | body.skin-reverse .navbar .form-inline .form-control { 63 | background-color: color_lighten(primary, 31.5%); } 64 | -------------------------------------------------------------------------------- /public/assets/css/skins/reverse.css: -------------------------------------------------------------------------------- 1 | body.skin-reverse.sidebar-mini .main-sidebar:after { 2 | background-color: #6777ef; 3 | } 4 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li.active > a { 5 | background-color: #fff; 6 | box-shadow: none; 7 | color: #6777ef; 8 | } 9 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li.active ul.dropdown-menu li a, 10 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li ul.dropdown-menu li a { 11 | background-color: transparent; 12 | color: #868e96; 13 | } 14 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li.active ul.dropdown-menu li a:hover, 15 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li ul.dropdown-menu li a:hover { 16 | background-color: #fcfcfd; 17 | color: #191d21; 18 | } 19 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li.active ul.dropdown-menu li.active a, 20 | body.skin-reverse.sidebar-mini .main-sidebar .sidebar-menu li ul.dropdown-menu li.active a { 21 | background-color: transparent !important; 22 | color: #6777ef; 23 | } 24 | body.skin-reverse .main-sidebar { 25 | background-color: #6777ef; 26 | } 27 | body.skin-reverse .main-sidebar .sidebar-brand a { 28 | color: #fff; 29 | } 30 | body.skin-reverse .main-sidebar .sidebar-menu li a { 31 | color: #dadefb; 32 | } 33 | body.skin-reverse .main-sidebar .sidebar-menu li a:hover { 34 | background-color: #6070e5; 35 | } 36 | body.skin-reverse .main-sidebar .sidebar-menu li.active a, 37 | body.skin-reverse .main-sidebar .sidebar-menu li.active a:hover, 38 | body.skin-reverse .main-sidebar .sidebar-menu li.active ul.dropdown-menu li a:hover, 39 | body.skin-reverse .main-sidebar .sidebar-menu li.active ul.dropdown-menu li a { 40 | background-color: #6070e5; 41 | } 42 | body.skin-reverse .main-sidebar .sidebar-menu li.menu-header { 43 | color: #afb7ff; 44 | } 45 | body.skin-reverse .main-sidebar .sidebar-menu li ul.dropdown-menu li a { 46 | color: #dadefb; 47 | } 48 | body.skin-reverse .main-sidebar .sidebar-menu li ul.dropdown-menu li a:hover { 49 | background-color: #6777ef; 50 | color: #fff; 51 | } 52 | body.skin-reverse .main-sidebar .sidebar-menu li ul.dropdown-menu li.active a { 53 | color: #fff; 54 | } 55 | body.skin-reverse .navbar-bg, 56 | body.skin-reverse .navbar { 57 | background-color: #fff; 58 | } 59 | body.skin-reverse .navbar-bg .nav-link.nav-link-user, 60 | body.skin-reverse .navbar-bg .nav-link, 61 | body.skin-reverse .navbar .nav-link.nav-link-user, 62 | body.skin-reverse .navbar .nav-link { 63 | color: #000; 64 | } 65 | body.skin-reverse .navbar-bg .nav-link.nav-link-user:hover, 66 | body.skin-reverse .navbar-bg .nav-link:hover, 67 | body.skin-reverse .navbar .nav-link.nav-link-user:hover, 68 | body.skin-reverse .navbar .nav-link:hover { 69 | color: #1a1a1a; 70 | } 71 | body.skin-reverse .navbar-bg .form-inline .btn, 72 | body.skin-reverse .navbar-bg .form-inline .form-control, 73 | body.skin-reverse .navbar .form-inline .btn, 74 | body.skin-reverse .navbar .form-inline .form-control { 75 | background-color: #f8f9fe; 76 | } 77 | 78 | /*# sourceMappingURL=reverse.css.map */ 79 | -------------------------------------------------------------------------------- /public/assets/css/skins/reverse.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sourceRoot":"","sources":["../../../sources/scss/skins/reverse.scss"],"names":[],"mappings":"AAMM;EACE;;AAKI;EACE;EACA;EACA;;AAMA;AAAA;EACE;EACA;;AACA;AAAA;EACI;EACA;;AAIJ;AAAA;EACE;EACA;;AAShB;EACE;;AAEE;EACE;;AAKA;EACE;;AACA;EACE;;AAIF;AAAA;AAAA;AAAA;EAIE;;AAGJ;EACE;;AAIE;EACE;;AACA;EACE;EACA;;AAIF;EACE;;AASd;AAAA;EAEE;;AACA;AAAA;AAAA;AAAA;EAEE;;AACA;AAAA;AAAA;AAAA;EACE;;AAKF;AAAA;AAAA;AAAA;EAEE","file":"reverse.css"} -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-600.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-600.eot -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-600.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-600.ttf -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-600.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-600.woff -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-600.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-600.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-700.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-700.eot -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-700.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-700.ttf -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-700.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-700.woff -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-700.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-700.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-800.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-800.eot -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-800.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-800.ttf -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-800.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-800.woff -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-800.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-800.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-regular.eot -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-regular.ttf -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-regular.woff -------------------------------------------------------------------------------- /public/assets/fonts/nunito-v9-latin-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/nunito-v9-latin-regular.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Black-FD-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Black-FD-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Black-FD-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Black-FD-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Black-FD-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Black-FD-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Black-FD-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Black-FD-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Bold-FD-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Bold-FD-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Bold-FD-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Bold-FD-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Bold-FD-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Bold-FD-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Bold-FD-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Bold-FD-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-FD-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-FD-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-FD-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-FD-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-FD-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-FD-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-FD-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-FD-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Light-FD-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Light-FD-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Light-FD-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Light-FD-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Light-FD-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Light-FD-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Light-FD-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Light-FD-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Medium-FD-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Medium-FD-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Medium-FD-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Medium-FD-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Medium-FD-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Medium-FD-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Medium-FD-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Medium-FD-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Thin-FD-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Thin-FD-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Thin-FD-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Thin-FD-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Thin-FD-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Thin-FD-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Thin-FD-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits-Without-Latin/Vazir-Thin-FD-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Black-FD.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Black-FD.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Black-FD.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Black-FD.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Black-FD.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Black-FD.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Black-FD.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Black-FD.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Bold-FD.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Bold-FD.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Bold-FD.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Bold-FD.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Bold-FD.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Bold-FD.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Bold-FD.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Bold-FD.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-FD.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-FD.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-FD.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-FD.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-FD.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-FD.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-FD.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-FD.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Light-FD.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Light-FD.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Light-FD.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Light-FD.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Light-FD.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Light-FD.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Light-FD.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Light-FD.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Medium-FD.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Medium-FD.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Medium-FD.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Medium-FD.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Medium-FD.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Medium-FD.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Medium-FD.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Medium-FD.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Thin-FD.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Thin-FD.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Thin-FD.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Thin-FD.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Thin-FD.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Thin-FD.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Farsi-Digits/Vazir-Thin-FD.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Farsi-Digits/Vazir-Thin-FD.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/LICENSE: -------------------------------------------------------------------------------- 1 | Changes by Saber Rastikerdar are in public domain. 2 | Glyphs and data from Roboto font are licensed under the Apache License, Version 2.0. 3 | 4 | Fonts are (c) Bitstream (see below). DejaVu changes are in public domain. 5 | 6 | Bitstream Vera Fonts Copyright 7 | ------------------------------ 8 | 9 | Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream Vera is 10 | a trademark of Bitstream, Inc. 11 | 12 | Permission is hereby granted, free of charge, to any person obtaining a copy 13 | of the fonts accompanying this license ("Fonts") and associated 14 | documentation files (the "Font Software"), to reproduce and distribute the 15 | Font Software, including without limitation the rights to use, copy, merge, 16 | publish, distribute, and/or sell copies of the Font Software, and to permit 17 | persons to whom the Font Software is furnished to do so, subject to the 18 | following conditions: 19 | 20 | The above copyright and trademark notices and this permission notice shall 21 | be included in all copies of one or more of the Font Software typefaces. 22 | 23 | The Font Software may be modified, altered, or added to, and in particular 24 | the designs of glyphs or characters in the Fonts may be modified and 25 | additional glyphs or characters may be added to the Fonts, only if the fonts 26 | are renamed to names not containing either the words "Bitstream" or the word 27 | "Vera". 28 | 29 | This License becomes null and void to the extent applicable to Fonts or Font 30 | Software that has been modified and is distributed under the "Bitstream 31 | Vera" names. 32 | 33 | The Font Software may be sold as part of a larger software package but no 34 | copy of one or more of the Font Software typefaces may be sold by itself. 35 | 36 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 37 | OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, 38 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, 39 | TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME 40 | FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING 41 | ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, 42 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF 43 | THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE 44 | FONT SOFTWARE. 45 | 46 | Except as contained in this notice, the names of Gnome, the Gnome 47 | Foundation, and Bitstream Inc., shall not be used in advertising or 48 | otherwise to promote the sale, use or other dealings in this Font Software 49 | without prior written authorization from the Gnome Foundation or Bitstream 50 | Inc., respectively. For further information, contact: fonts at gnome dot 51 | org. -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Black.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Black.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Black.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Black.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Black.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Black.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Black.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Bold.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Bold.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Bold.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Bold.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Bold.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Light.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Light.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Light.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Light.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Light.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Light.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Light.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Medium.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Medium.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Medium.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Medium.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Medium.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Medium.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Medium.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Thin.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Thin.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Thin.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Thin.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Thin.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir-Thin.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir-Thin.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Vazir.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Vazir.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Black-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Black-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Black-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Black-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Black-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Black-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Black-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Black-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Bold-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Bold-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Bold-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Bold-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Bold-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Bold-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Bold-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Bold-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Light-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Light-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Light-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Light-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Light-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Light-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Light-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Light-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Medium-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Medium-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Medium-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Medium-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Medium-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Medium-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Medium-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Medium-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Thin-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Thin-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Thin-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Thin-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Thin-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Thin-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-Thin-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-Thin-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-WOL.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-WOL.eot -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-WOL.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-WOL.ttf -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-WOL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-WOL.woff -------------------------------------------------------------------------------- /public/assets/fonts/vazir/Without-Latin/Vazir-WOL.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/Without-Latin/Vazir-WOL.woff2 -------------------------------------------------------------------------------- /public/assets/fonts/vazir/font-face.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: Vazir; 3 | src: url('Vazir.eot'); 4 | src: url('Vazir.eot?#iefix') format('embedded-opentype'), 5 | url('Vazir.woff2') format('woff2'), 6 | url('Vazir.woff') format('woff'), 7 | url('Vazir.ttf') format('truetype'); 8 | font-weight: normal; 9 | } 10 | 11 | @font-face { 12 | font-family: Vazir; 13 | src: url('Vazir-Bold.eot'); 14 | src: url('Vazir-Bold.eot?#iefix') format('embedded-opentype'), 15 | url('Vazir-Bold.woff2') format('woff2'), 16 | url('Vazir-Bold.woff') format('woff'), 17 | url('Vazir-Bold.ttf') format('truetype'); 18 | font-weight: bold; 19 | } 20 | 21 | @font-face { 22 | font-family: Vazir; 23 | src: url('Vazir-Light.eot'); 24 | src: url('Vazir-Light.eot?#iefix') format('embedded-opentype'), 25 | url('Vazir-Light.woff2') format('woff2'), 26 | url('Vazir-Light.woff') format('woff'), 27 | url('Vazir-Light.ttf') format('truetype'); 28 | font-weight: 300; 29 | } 30 | 31 | @font-face { 32 | font-family: Vazir; 33 | src: url('Vazir-Medium.eot'); 34 | src: url('Vazir-Medium.eot?#iefix') format('embedded-opentype'), 35 | url('Vazir-Medium.woff2') format('woff2'), 36 | url('Vazir-Medium.woff') format('woff'), 37 | url('Vazir-Medium.ttf') format('truetype'); 38 | font-weight: 500; 39 | } 40 | 41 | @font-face { 42 | font-family: Vazir; 43 | src: url('Vazir-Thin.eot'); 44 | src: url('Vazir-Thin.eot?#iefix') format('embedded-opentype'), 45 | url('Vazir-Thin.woff2') format('woff2'), 46 | url('Vazir-Thin.woff') format('woff'), 47 | url('Vazir-Thin.ttf') format('truetype'); 48 | font-weight: 100; 49 | } 50 | 51 | @font-face { 52 | font-family: Vazir; 53 | src: url('Vazir-Black.eot'); 54 | src: url('Vazir-Black.eot?#iefix') format('embedded-opentype'), 55 | url('Vazir-Black.woff2') format('woff2'), 56 | url('Vazir-Black.woff') format('woff'), 57 | url('Vazir-Black.ttf') format('truetype'); 58 | font-weight: 900; 59 | } -------------------------------------------------------------------------------- /public/assets/fonts/vazir/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/fonts/vazir/sample.png -------------------------------------------------------------------------------- /public/assets/img/avatar/avatar-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/img/avatar/avatar-1.png -------------------------------------------------------------------------------- /public/assets/img/avatar/avatar-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/img/avatar/avatar-2.png -------------------------------------------------------------------------------- /public/assets/img/avatar/avatar-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/img/avatar/avatar-3.png -------------------------------------------------------------------------------- /public/assets/img/avatar/avatar-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/img/avatar/avatar-4.png -------------------------------------------------------------------------------- /public/assets/img/avatar/avatar-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/assets/img/avatar/avatar-5.png -------------------------------------------------------------------------------- /public/assets/js/custom.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | * You can write your JS code here, DO NOT touch the default style file 4 | * because it will make it harder for you to update. 5 | * 6 | */ 7 | 8 | "use strict"; 9 | 10 | $(document).ready(function(){ 11 | $(".link").click(function(){ 12 | $("body").addClass('loading-halaman'); 13 | setTimeout(function() { 14 | $("body").removeClass('loading-halaman'); 15 | }, 1000); 16 | }); 17 | $("body").addClass("loading-halaman"); 18 | setTimeout(function () { 19 | $("body").removeClass("loading-halaman"); 20 | }, 1000); 21 | }); 22 | 23 | $(".carousel-heading").owlCarousel({ 24 | loop: true, 25 | dots: true, 26 | autoplay: true, 27 | margin:10, 28 | autoplayTimeout: 5000, 29 | items: 1, 30 | nav: true, 31 | navText: [ 32 | '', 33 | '', 34 | ], 35 | }); 36 | 37 | $('.owl-nav button').addClass('btn btn-none'); 38 | $(".owl-dots button").addClass("btn btn-none"); 39 | $(".buku-terpopuler .button-slider button").addClass("btn btn-none"); 40 | 41 | 42 | $(".slider-buku-terpopuler").owlCarousel({ 43 | loop: true, 44 | dots: false, 45 | autoplay: true, 46 | margin: 0, 47 | autoplayTimeout: 6000, 48 | nav: true, 49 | navContainer: ".button-slider", 50 | navText: [ 51 | '', 52 | '', 53 | ], 54 | responsive: { 55 | 0: { 56 | items: 1, 57 | margin: 100, 58 | }, 59 | 356: { 60 | items: 2, 61 | margin: 180, 62 | }, 63 | 500: { 64 | items: 3, 65 | margin: 100, 66 | }, 67 | 600: { 68 | items: 3, 69 | margin: 80, 70 | }, 71 | 750: { 72 | items: 3, 73 | margin: 80, 74 | }, 75 | 900: { 76 | items: 3, 77 | margin: 80, 78 | }, 79 | 1000: { 80 | items: 5, 81 | margin: 100, 82 | }, 83 | 1200: { 84 | items: 5, 85 | }, 86 | }, 87 | }); -------------------------------------------------------------------------------- /public/assets/js/page/components-chat-box.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | var chats = [ 4 | { 5 | text: 'Hi, dude!', 6 | position: 'left' 7 | }, 8 | { 9 | text: 'Wat?', 10 | position: 'right' 11 | }, 12 | { 13 | text: 'You wanna know?', 14 | position: 'left' 15 | }, 16 | { 17 | text: 'Wat?!', 18 | position: 'right' 19 | }, 20 | { 21 | typing: true, 22 | position: 'left' 23 | } 24 | ]; 25 | for(var i = 0; i < chats.length; i++) { 26 | var type = 'text'; 27 | if(chats[i].typing != undefined) type = 'typing'; 28 | $.chatCtrl('#mychatbox', { 29 | text: (chats[i].text != undefined ? chats[i].text : ''), 30 | picture: (chats[i].position == 'left' ? '../assets/img/avatar/avatar-1.png' : '../assets/img/avatar/avatar-2.png'), 31 | position: 'chat-'+chats[i].position, 32 | type: type 33 | }); 34 | } 35 | 36 | $("#chat-form").submit(function() { 37 | var me = $(this); 38 | 39 | if(me.find('input').val().trim().length > 0) { 40 | $.chatCtrl('#mychatbox', { 41 | text: me.find('input').val(), 42 | picture: '../assets/img/avatar/avatar-2.png', 43 | }); 44 | me.find('input').val(''); 45 | } 46 | return false; 47 | }); 48 | 49 | var chats = [ 50 | { 51 | text: 'Wake up!', 52 | position: 'left' 53 | }, 54 | { 55 | text: 'Yes, already', 56 | position: 'right' 57 | }, 58 | { 59 | text: 'Grab a brush and put a little make-up', 60 | position: 'left' 61 | }, 62 | { 63 | text: 'What do you mean?', 64 | position: 'right' 65 | }, 66 | { 67 | text: 'Hide the scars to fade away the shake-up', 68 | position: 'left' 69 | }, 70 | { 71 | text: 'WTF?!', 72 | position: 'right' 73 | }, 74 | { 75 | text: 'Why\'d you leave the keys upon the table?', 76 | position: 'left' 77 | }, 78 | { 79 | text: '-__________________-', 80 | position: 'right' 81 | }, 82 | { 83 | text: 'Here you go create another fable', 84 | position: 'left' 85 | }, 86 | { 87 | text: 'You wanted do!', 88 | position: 'right' 89 | }, 90 | { 91 | text: 'FXCK!', 92 | position: 'right' 93 | }, 94 | { 95 | text: 'You have blocked Ryan', 96 | position: 'right' 97 | }, 98 | ]; 99 | for(var i = 0; i < chats.length; i++) { 100 | var type = 'text'; 101 | if(chats[i].typing != undefined) type = 'typing'; 102 | $.chatCtrl('#mychatbox2', { 103 | text: (chats[i].text != undefined ? chats[i].text : ''), 104 | picture: (chats[i].position == 'left' ? '../assets/img/avatar/avatar-5.png' : '../assets/img/avatar/avatar-2.png'), 105 | position: 'chat-'+chats[i].position, 106 | type: type 107 | }); 108 | } 109 | $("#chat-form2").submit(function() { 110 | var me = $(this); 111 | 112 | if(me.find('input').val().trim().length > 0) { 113 | $.chatCtrl('#mychatbox2', { 114 | text: me.find('input').val(), 115 | picture: '../assets/img/avatar/avatar-2.png', 116 | }); 117 | me.find('input').val(''); 118 | } 119 | return false; 120 | }); 121 | -------------------------------------------------------------------------------- /public/assets/js/page/components-multiple-upload.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | var dropzone = new Dropzone("#mydropzone", { 4 | url: "#" 5 | }); 6 | 7 | var minSteps = 6, 8 | maxSteps = 60, 9 | timeBetweenSteps = 100, 10 | bytesPerStep = 100000; 11 | 12 | dropzone.uploadFiles = function(files) { 13 | var self = this; 14 | 15 | for (var i = 0; i < files.length; i++) { 16 | 17 | var file = files[i]; 18 | totalSteps = Math.round(Math.min(maxSteps, Math.max(minSteps, file.size / bytesPerStep))); 19 | 20 | for (var step = 0; step < totalSteps; step++) { 21 | var duration = timeBetweenSteps * (step + 1); 22 | setTimeout(function(file, totalSteps, step) { 23 | return function() { 24 | file.upload = { 25 | progress: 100 * (step + 1) / totalSteps, 26 | total: file.size, 27 | bytesSent: (step + 1) * file.size / totalSteps 28 | }; 29 | 30 | self.emit('uploadprogress', file, file.upload.progress, file.upload.bytesSent); 31 | if (file.upload.progress == 100) { 32 | file.status = Dropzone.SUCCESS; 33 | self.emit("success", file, 'success', null); 34 | self.emit("complete", file); 35 | self.processQueue(); 36 | } 37 | }; 38 | }(file, totalSteps, step), duration); 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /public/assets/js/page/components-table.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | $("[data-checkboxes]").each(function() { 4 | var me = $(this), 5 | group = me.data('checkboxes'), 6 | role = me.data('checkbox-role'); 7 | 8 | me.change(function() { 9 | var all = $('[data-checkboxes="' + group + '"]:not([data-checkbox-role="dad"])'), 10 | checked = $('[data-checkboxes="' + group + '"]:not([data-checkbox-role="dad"]):checked'), 11 | dad = $('[data-checkboxes="' + group + '"][data-checkbox-role="dad"]'), 12 | total = all.length, 13 | checked_length = checked.length; 14 | 15 | if(role == 'dad') { 16 | if(me.is(':checked')) { 17 | all.prop('checked', true); 18 | }else{ 19 | all.prop('checked', false); 20 | } 21 | }else{ 22 | if(checked_length >= total) { 23 | dad.prop('checked', true); 24 | }else{ 25 | dad.prop('checked', false); 26 | } 27 | } 28 | }); 29 | }); 30 | 31 | $("#sortable-table tbody").sortable({ 32 | handle: '.sort-handler' 33 | }); 34 | -------------------------------------------------------------------------------- /public/assets/js/page/features-post-create.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | $("select").selectric(); 4 | $.uploadPreview({ 5 | input_field: "#image-upload", // Default: .image-upload 6 | preview_box: "#image-preview", // Default: .image-preview 7 | label_field: "#image-label", // Default: .image-label 8 | label_default: "Choose File", // Default: Choose File 9 | label_selected: "Change File", // Default: Change File 10 | no_label: false, // Default: false 11 | success_callback: null // Default: null 12 | }); 13 | $(".inputtags").tagsinput('items'); 14 | -------------------------------------------------------------------------------- /public/assets/js/page/features-posts.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | $("[data-checkboxes]").each(function() { 4 | var me = $(this), 5 | group = me.data('checkboxes'), 6 | role = me.data('checkbox-role'); 7 | 8 | me.change(function() { 9 | var all = $('[data-checkboxes="' + group + '"]:not([data-checkbox-role="dad"])'), 10 | checked = $('[data-checkboxes="' + group + '"]:not([data-checkbox-role="dad"]):checked'), 11 | dad = $('[data-checkboxes="' + group + '"][data-checkbox-role="dad"]'), 12 | total = all.length, 13 | checked_length = checked.length; 14 | 15 | if(role == 'dad') { 16 | if(me.is(':checked')) { 17 | all.prop('checked', true); 18 | }else{ 19 | all.prop('checked', false); 20 | } 21 | }else{ 22 | if(checked_length >= total) { 23 | dad.prop('checked', true); 24 | }else{ 25 | dad.prop('checked', false); 26 | } 27 | } 28 | }); 29 | }); 30 | -------------------------------------------------------------------------------- /public/assets/js/page/index-0.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | // $(document).ready(function () { 3 | // $("#table-petugas").DataTable(); 4 | // }); 5 | 6 | $("#namaL").keyup(function () { 7 | var username = $("#namaL").val(); 8 | if (username == "") { 9 | $("#valnama").html("Nama Harus Diisi"); 10 | } 11 | }); 12 | 13 | $("#username").keyup(function () { 14 | var username = $("#username").val(); 15 | var jumlahkarakter = username.length; 16 | if (jumlahkarakter < 6) { 17 | $("#valusername").html( 18 | "Username Terlalu Pendek" 19 | ); 20 | } else if (jumlahkarakter > 24) { 21 | $("#valusername").html( 22 | "Username Terlalu Panjang" 23 | ); 24 | } else { 25 | if (username.match(/[^a-zA-Z0-9]/i)) 26 | $("#valusername").html( 27 | "Anda memasukkan karakter yang tidak diijinkan" 28 | ); 29 | else $("#valusername").html("Bagus!"); 30 | } 31 | }); 32 | 33 | $("#password").keyup(function () { 34 | var password = $("#password").val(); 35 | var jumlahkarakter = password.length; 36 | if (jumlahkarakter < 8) { 37 | $("#kon1").html( 38 | "Password terlalu pendek" 39 | ); 40 | } else { 41 | $("#kon1").html("Bagus!"); 42 | } 43 | }); 44 | 45 | $("#password2").blur(function () { 46 | var password1 = $("#password").val(); 47 | var password2 = $("#password2").val(); 48 | 49 | if (password2 != password1) { 50 | $("#kon2").html("Password tidak cocok"); 51 | } else { 52 | $("#kon2").html("Password cocok"); 53 | } 54 | }); -------------------------------------------------------------------------------- /public/assets/js/page/modules-sweetalert.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | $("#swal-1").click(function() { 4 | swal('Hello'); 5 | }); 6 | 7 | $("#swal-2").click(function() { 8 | swal('Good Job', 'You clicked the button!', 'success'); 9 | }); 10 | 11 | $("#swal-3").click(function() { 12 | swal('Good Job', 'You clicked the button!', 'warning'); 13 | }); 14 | 15 | $("#swal-4").click(function() { 16 | swal('Good Job', 'You clicked the button!', 'info'); 17 | }); 18 | 19 | $("#swal-5").click(function() { 20 | swal('Good Job', 'You clicked the button!', 'error'); 21 | }); 22 | 23 | $("#swal-6").click(function() { 24 | swal({ 25 | title: 'Are you sure?', 26 | text: 'Once deleted, you will not be able to recover this imaginary file!', 27 | icon: 'warning', 28 | buttons: true, 29 | dangerMode: true, 30 | }) 31 | .then((willDelete) => { 32 | if (willDelete) { 33 | swal('Poof! Your imaginary file has been deleted!', { 34 | icon: 'success', 35 | }); 36 | } else { 37 | swal('Your imaginary file is safe!'); 38 | } 39 | }); 40 | }); 41 | 42 | $("#swal-7").click(function() { 43 | swal({ 44 | title: 'What is your name?', 45 | content: { 46 | element: 'input', 47 | attributes: { 48 | placeholder: 'Type your name', 49 | type: 'text', 50 | }, 51 | }, 52 | }).then((data) => { 53 | swal('Hello, ' + data + '!'); 54 | }); 55 | }); 56 | 57 | $("#swal-8").click(function() { 58 | swal('This modal will disappear soon!', { 59 | buttons: false, 60 | timer: 3000, 61 | }); 62 | }); -------------------------------------------------------------------------------- /public/assets/js/page/modules-toastr.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | $("#toastr-1").click(function() { 4 | iziToast.info({ 5 | title: 'Hello, world!', 6 | message: 'This awesome plugin is made iziToast toastr', 7 | position: 'topRight' 8 | }); 9 | }); 10 | 11 | $("#toastr-2").click(function() { 12 | iziToast.success({ 13 | title: 'Hello, world!', 14 | message: 'This awesome plugin is made by iziToast', 15 | position: 'topRight' 16 | }); 17 | }); 18 | 19 | $("#toastr-3").click(function() { 20 | iziToast.warning({ 21 | title: 'Hello, world!', 22 | message: 'This awesome plugin is made by iziToast', 23 | position: 'topRight' 24 | }); 25 | }); 26 | 27 | $("#toastr-4").click(function() { 28 | iziToast.error({ 29 | title: 'Hello, world!', 30 | message: 'This awesome plugin is made by iziToast', 31 | position: 'topRight' 32 | }); 33 | }); 34 | 35 | $("#toastr-5").click(function() { 36 | iziToast.show({ 37 | title: 'Hello, world!', 38 | message: 'This awesome plugin is made by iziToast', 39 | position: 'bottomRight' 40 | }); 41 | }); 42 | 43 | $("#toastr-6").click(function() { 44 | iziToast.show({ 45 | title: 'Hello, world!', 46 | message: 'This awesome plugin is made by iziToast', 47 | position: 'bottomCenter' 48 | }); 49 | }); 50 | 51 | $("#toastr-7").click(function() { 52 | iziToast.show({ 53 | title: 'Hello, world!', 54 | message: 'This awesome plugin is made by iziToast', 55 | position: 'bottomLeft' 56 | }); 57 | }); 58 | 59 | $("#toastr-8").click(function() { 60 | iziToast.show({ 61 | title: 'Hello, world!', 62 | message: 'This awesome plugin is made by iziToast', 63 | position: 'topCenter' 64 | }); 65 | }); 66 | -------------------------------------------------------------------------------- /public/e-perpus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/e-perpus.png -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/public/favicon.ico -------------------------------------------------------------------------------- /public/index.php: -------------------------------------------------------------------------------- 1 | make(Kernel::class); 50 | 51 | $response = tap($kernel->handle( 52 | $request = Request::capture() 53 | ))->send(); 54 | 55 | $kernel->terminate($request, $response); 56 | -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: 3 | -------------------------------------------------------------------------------- /public/web.config: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /resources/css/app.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/reiulen/perpuslaravel/6649a97a79789b8cf5e601c03a86e9e4c3a0c027/resources/css/app.css -------------------------------------------------------------------------------- /resources/js/app.js: -------------------------------------------------------------------------------- 1 | require('./bootstrap'); 2 | -------------------------------------------------------------------------------- /resources/js/bootstrap.js: -------------------------------------------------------------------------------- 1 | window._ = require('lodash'); 2 | 3 | /** 4 | * We'll load the axios HTTP library which allows us to easily issue requests 5 | * to our Laravel back-end. This library automatically handles sending the 6 | * CSRF token as a header based on the value of the "XSRF" token cookie. 7 | */ 8 | 9 | window.axios = require('axios'); 10 | 11 | window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'; 12 | 13 | /** 14 | * Echo exposes an expressive API for subscribing to channels and listening 15 | * for events that are broadcast by Laravel. Echo and event broadcasting 16 | * allows your team to easily build robust real-time web applications. 17 | */ 18 | 19 | // import Echo from 'laravel-echo'; 20 | 21 | // window.Pusher = require('pusher-js'); 22 | 23 | // window.Echo = new Echo({ 24 | // broadcaster: 'pusher', 25 | // key: process.env.MIX_PUSHER_APP_KEY, 26 | // cluster: process.env.MIX_PUSHER_APP_CLUSTER, 27 | // forceTLS: true 28 | // }); 29 | -------------------------------------------------------------------------------- /resources/lang/en/auth.php: -------------------------------------------------------------------------------- 1 | 'These credentials do not match our records.', 17 | 'password' => 'The provided password is incorrect.', 18 | 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', 19 | 20 | ]; 21 | -------------------------------------------------------------------------------- /resources/lang/en/pagination.php: -------------------------------------------------------------------------------- 1 | '« Previous', 17 | 'next' => 'Next »', 18 | 19 | ]; 20 | -------------------------------------------------------------------------------- /resources/lang/en/passwords.php: -------------------------------------------------------------------------------- 1 | 'Your password has been reset!', 17 | 'sent' => 'We have emailed your password reset link!', 18 | 'throttled' => 'Please wait before retrying.', 19 | 'token' => 'This password reset token is invalid.', 20 | 'user' => "We can't find a user with that email address.", 21 | 22 | ]; 23 | -------------------------------------------------------------------------------- /resources/views/backend/layout/main.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | {{ $title }} | E-Perpus 7 | @if($title == 'Tambah Pinjaman') 8 | 9 | @endif 10 | 11 | 12 | 13 | 14 | 15 | 16 | @yield('css') 17 | 18 | 19 | 20 |
21 |
22 | @include('backend.partial.navbar') 23 | @include('backend.partial.sidebar') 24 | @yield('content') 25 | 33 |
34 |
35 | 36 | 37 | 38 | 39 | @if($title != 'Tambah Pinjaman') 40 | 41 | 42 | @endif 43 | 44 | 45 | 46 | 47 | @yield('script') 48 | 49 | 50 | 51 | 52 | @if(session('alert')) 53 | 71 | @endif 72 | 73 | 74 | 75 | -------------------------------------------------------------------------------- /resources/views/buku-tampil.blade.php: -------------------------------------------------------------------------------- 1 |
2 | @foreach($buku as $row) 3 |
4 |
5 |

{{ $row->judul_buku }}

6 | Lihat Buku 7 |
8 |
9 | @endforeach 10 |
11 | 12 | @if($bukukategori->count()<0) 13 |

Belum ada buku

14 | @endif -------------------------------------------------------------------------------- /resources/views/cetak/cetakdata.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Cetak Transaksi Tanggal {{ date('d F Y', strtotime(request('dari'))) }} Sampai {{ date('d F Y', strtotime(request('sampai'))) }} 9 | 10 | 11 | 26 |
27 | 28 |

Laporan Pinjaman Buku E-Perpus

29 |

Tanggal {{ date('d F Y', strtotime(request('dari'))) }} - {{ date('d F Y', strtotime(request('sampai'))) }}

30 |
31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | @php 46 | $no = 1; 47 | @endphp 48 | @foreach($pinjaman as $tr) 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | @endforeach 63 | @if($pinjaman->count() == 0) 64 |

Tidak ditemukan

65 | @endif 66 |
NoId AnggotaNamaEmailJenis KelaminKelasJudul BukuTanggal PinjamTanggal KembaliStatusDenda
{{ $no++ }}{{ $tr->id_anggota }}{{ $tr->nama_peminjam }}{{ $tr->kelas }}{{ $tr->jenis_kelamin }}{{ $tr->kelas }}{{ $tr->judul_buku }}{{ date('d F Y', strtotime($tr->tgl_pinjam )) }}{{ date('d F Y', strtotime($tr->tgl_kembali )) }}{{ $tr->status }}{{ $tr->denda }}
67 | 68 | 69 | 70 | 71 | -------------------------------------------------------------------------------- /resources/views/cetak/cetakpinjaman.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | Cetak Pinjaman {{$pinjaman->judul_buku}} 4 | 5 | 48 | 49 | 50 | 51 | 52 |
53 | 54 |

E Perpus SMKN 1 Ciamis

55 |

Form Peminjaman Buku

56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 |
Nama:{{ $pinjaman->nama_peminjam }}
Email:{{ $pinjaman->email}}
Kelas:{{ $pinjaman->kelas }}
Judul Buku:{{ $pinjaman->judul_buku }}
Tanggal Peminjaman:{{ date('d F Y', strtotime($pinjaman->tgl_pinjam)) }}
Tanggal Pengembalian:{{ date('d F Y', strtotime($pinjaman->tgl_kembali)) }}
90 | 91 | 92 |
Ciamis, {{ date(" d F Y ") }}

93 |




94 |
Petugas
95 |

dicetak oleh E-Perpus SMKN 1 Ciamis

96 |
97 | 98 | 99 | 100 | -------------------------------------------------------------------------------- /resources/views/login-user.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layout.main') 2 | @section('content') 3 |
4 |
5 |
6 |
7 | 8 | @if(session('title')) 9 | 12 | @endif 13 |
14 |
Masuk Anggota E-Perpus
15 |
16 | 17 |
18 | @csrf 19 |
20 | 21 | 22 | @if(session('email')) 23 |

{{ session('email') }}

24 | @endif 25 |
26 | *Email Belum Diisi ! 27 |
28 |
29 | 30 |
31 | 32 | 33 |

34 | @if(session('password')) 35 |

{{ session('password') }}

36 | @endif 37 |
38 | *Password Harus Diisi ! 39 |
40 |
41 |
42 | 45 |
46 |
47 |
48 | Lupa password?
49 | Belum punya akun?Daftar 50 |
51 |
52 |
53 | 56 |
57 |
58 |

Meminjam buku Perpustakaan
dengan kemudahan

59 | 60 |
61 |
62 |
63 |
64 | 65 | @endsection -------------------------------------------------------------------------------- /resources/views/lupa-password.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layout.main') 2 | @section('content') 3 |
4 |
5 |
6 |
7 | 8 | 9 |
10 |
Lupa Password
11 |
12 | 13 |
14 |
15 | 16 | 17 |
18 | *Email Belum Diisi ! 19 |
20 |
21 | 22 | 23 |
24 | 27 |
28 |
29 |
30 | Belum punya akun?Daftar 31 |
32 |
33 |
34 | 37 |
38 |
39 |

Meminjam buku Perpustakaan
dengan kemudahan

40 | 41 |
42 |
43 |
44 |
45 | @endsection -------------------------------------------------------------------------------- /resources/views/pinjam-buku.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layout.main') 2 | 3 | @section('content') 4 | @section('css') 5 | 6 | 7 | 8 | @endsection 9 |
10 |
11 |
12 |
13 |
14 |

Pinjam Buku

15 |
16 |
17 |
18 |
19 |

{{ $buku->judul_buku }}

20 | 21 |
22 |
23 |
24 | @csrf 25 |
26 | 27 | 28 |
29 |
30 | 31 | 32 |
33 |
34 | 35 | Batal 36 |
37 |
38 |
39 |
40 | 41 | 42 |
43 |
44 |
45 |
46 |
47 | @section('script') 48 | 60 | @endsection 61 | @endsection -------------------------------------------------------------------------------- /resources/views/pinjamberhasil.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layout.main') 2 | 3 | @section('content') 4 | 5 |
6 |
7 |
8 | 11 |
12 |
13 |

Pinjaman Berhasil!

14 |
15 |
16 |
17 | 18 |
{{ $pinjam->judul_buku }}
19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 |
ID Anggota{{ $pinjam->id_anggota }}
Nama{{ $pinjam->nama_peminjam }}
Tanggal Pinjam{{ date("l, d F Y", strtotime($pinjam->tgl_pinjam) )}}
Tanggal Kembali{{ date("l, d F Y", strtotime($pinjam->tgl_kembali) )}}
38 |
39 | Cetak Pinjaman 40 |
41 |
42 |
43 |
44 |
45 |
46 | 47 | @endsection -------------------------------------------------------------------------------- /resources/views/profil/aktifitas.blade.php: -------------------------------------------------------------------------------- 1 | @extends('profil.layout.main') 2 | 3 | @section('main') 4 |
5 |

Aktifitas

6 |
7 |
8 |
9 | @if($aktifitas->count() < 1) 10 |

Belum ada aktifitas

11 | @endif 12 | @foreach($aktifitas as $row) 13 |
14 |
15 | 16 |
17 |
18 |
19 | {{ $row->created_at->diffForhumans() }} 20 | 21 | 30 |
31 |

{{ $row->notifikasi }}

32 |
33 |
34 | @endforeach 35 |
36 |
37 |
38 |
39 | 40 | @section('script') 41 | 44 | @endsection 45 | @endsection -------------------------------------------------------------------------------- /resources/views/profil/layout/main.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layout.main') 2 | 3 | @section('content') 4 | 5 |
6 |
7 |
8 |
9 |
10 | Kembali 11 |
12 |
13 | 14 |
15 |
{{ $user->nama }}
16 | {{ $user->email }} 17 |
18 |
19 |
20 |
21 |
22 | Profile 23 | Pinjaman 24 | Aktifitas 25 |
26 |
27 |
28 | @yield('main') 29 |
30 |
31 |
32 |
33 |
34 |
35 | 36 | @endsection -------------------------------------------------------------------------------- /resources/views/semua-buku.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layout.main') 2 | 3 | @section('content') 4 |
5 |
6 |
7 | 8 | @foreach($kat as $row) 9 | 10 | @endforeach 11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | @section('script') 20 | 44 | @endsection 45 | @endsection -------------------------------------------------------------------------------- /resources/views/tampil.blade.php: -------------------------------------------------------------------------------- 1 |
2 | @if($bukukategori->count() == 0) 3 |
Belum ada buku kategori ini
4 | @endif 5 | @foreach($bukukategori->where('status', 'Publish') as $buku) 6 |
7 |
8 |

{{ $buku->judul_buku }}

9 | Lihat Buku 10 |
11 |
12 | @endforeach 13 |
14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/button.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/footer.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/header.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | @if (trim($slot) === 'Laravel') 5 | 6 | @else 7 | {{ $slot }} 8 | @endif 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/layout.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 25 | 26 | 27 | 28 | 29 | 30 | 53 | 54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/message.blade.php: -------------------------------------------------------------------------------- 1 | @component('mail::layout') 2 | {{-- Header --}} 3 | @slot('header') 4 | @component('mail::header', ['url' => config('app.url')]) 5 | {{ config('app.name') }} 6 | @endcomponent 7 | @endslot 8 | 9 | {{-- Body --}} 10 | {{ $slot }} 11 | 12 | {{-- Subcopy --}} 13 | @isset($subcopy) 14 | @slot('subcopy') 15 | @component('mail::subcopy') 16 | {{ $subcopy }} 17 | @endcomponent 18 | @endslot 19 | @endisset 20 | 21 | {{-- Footer --}} 22 | @slot('footer') 23 | @component('mail::footer') 24 | © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.') 25 | @endcomponent 26 | @endslot 27 | @endcomponent 28 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/panel.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/subcopy.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/table.blade.php: -------------------------------------------------------------------------------- 1 |
2 | {{ Illuminate\Mail\Markdown::parse($slot) }} 3 |
4 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/button.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }}: {{ $url }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/footer.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/header.blade.php: -------------------------------------------------------------------------------- 1 | [{{ $slot }}]({{ $url }}) 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/layout.blade.php: -------------------------------------------------------------------------------- 1 | {!! strip_tags($header) !!} 2 | 3 | {!! strip_tags($slot) !!} 4 | @isset($subcopy) 5 | 6 | {!! strip_tags($subcopy) !!} 7 | @endisset 8 | 9 | {!! strip_tags($footer) !!} 10 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/message.blade.php: -------------------------------------------------------------------------------- 1 | @component('mail::layout') 2 | {{-- Header --}} 3 | @slot('header') 4 | @component('mail::header', ['url' => config('app.url')]) 5 | {{ config('app.name') }} 6 | @endcomponent 7 | @endslot 8 | 9 | {{-- Body --}} 10 | {{ $slot }} 11 | 12 | {{-- Subcopy --}} 13 | @isset($subcopy) 14 | @slot('subcopy') 15 | @component('mail::subcopy') 16 | {{ $subcopy }} 17 | @endcomponent 18 | @endslot 19 | @endisset 20 | 21 | {{-- Footer --}} 22 | @slot('footer') 23 | @component('mail::footer') 24 | © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.') 25 | @endcomponent 26 | @endslot 27 | @endcomponent 28 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/panel.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/subcopy.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/table.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }} 2 | -------------------------------------------------------------------------------- /routes/api.php: -------------------------------------------------------------------------------- 1 | get('/user', function (Request $request) { 18 | return $request->user(); 19 | }); 20 | -------------------------------------------------------------------------------- /routes/channels.php: -------------------------------------------------------------------------------- 1 | id === (int) $id; 18 | }); 19 | -------------------------------------------------------------------------------- /routes/console.php: -------------------------------------------------------------------------------- 1 | comment(Inspiring::quote()); 19 | })->purpose('Display an inspiring quote'); 20 | -------------------------------------------------------------------------------- /server.php: -------------------------------------------------------------------------------- 1 | 8 | */ 9 | 10 | $uri = urldecode( 11 | parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH) 12 | ); 13 | 14 | // This file allows us to emulate Apache's "mod_rewrite" functionality from the 15 | // built-in PHP web server. This provides a convenient way to test a Laravel 16 | // application without having installed a "real" web server software here. 17 | if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) { 18 | return false; 19 | } 20 | 21 | require_once __DIR__.'/public/index.php'; 22 | -------------------------------------------------------------------------------- /storage/app/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !public/ 3 | !.gitignore 4 | -------------------------------------------------------------------------------- /storage/app/public/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/clockwork/.gitignore: -------------------------------------------------------------------------------- 1 | *.json 2 | *.json.gz 3 | index 4 | -------------------------------------------------------------------------------- /storage/framework/.gitignore: -------------------------------------------------------------------------------- 1 | compiled.php 2 | config.php 3 | down 4 | events.scanned.php 5 | maintenance.php 6 | routes.php 7 | routes.scanned.php 8 | schedule-* 9 | services.json 10 | -------------------------------------------------------------------------------- /storage/framework/cache/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !data/ 3 | !.gitignore 4 | -------------------------------------------------------------------------------- /storage/framework/cache/data/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/sessions/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/testing/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/views/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/logs/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /tests/CreatesApplication.php: -------------------------------------------------------------------------------- 1 | make(Kernel::class)->bootstrap(); 19 | 20 | return $app; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /tests/Feature/ExampleTest.php: -------------------------------------------------------------------------------- 1 | get('/'); 18 | 19 | $response->assertStatus(200); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /tests/TestCase.php: -------------------------------------------------------------------------------- 1 | assertTrue(true); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /webpack.mix.js: -------------------------------------------------------------------------------- 1 | const mix = require('laravel-mix'); 2 | 3 | /* 4 | |-------------------------------------------------------------------------- 5 | | Mix Asset Management 6 | |-------------------------------------------------------------------------- 7 | | 8 | | Mix provides a clean, fluent API for defining some Webpack build steps 9 | | for your Laravel applications. By default, we are compiling the CSS 10 | | file for the application as well as bundling up all the JS files. 11 | | 12 | */ 13 | 14 | mix.js('resources/js/app.js', 'public/js') 15 | .postCss('resources/css/app.css', 'public/css', [ 16 | // 17 | ]); 18 | --------------------------------------------------------------------------------