├── public
├── favicon.ico
├── robots.txt
├── uploads
│ ├── phpV3CcYB
│ ├── 1519263336.jpg
│ ├── 1519267045.jpg
│ ├── 1519270237.jpeg
│ └── on-server
│ │ ├── webfonts
│ │ ├── fa-brands-400.eot
│ │ ├── fa-brands-400.ttf
│ │ ├── fa-solid-900.eot
│ │ ├── fa-solid-900.ttf
│ │ ├── fa-solid-900.woff
│ │ ├── fa-brands-400.woff
│ │ ├── fa-brands-400.woff2
│ │ ├── fa-regular-400.eot
│ │ ├── fa-regular-400.ttf
│ │ ├── fa-regular-400.woff
│ │ ├── fa-regular-400.woff2
│ │ └── fa-solid-900.woff2
│ │ └── css
│ │ ├── fa-brands.min.css
│ │ ├── fa-solid.min.css
│ │ ├── fa-regular.min.css
│ │ ├── fa-brands.css
│ │ ├── fa-solid.css
│ │ ├── fa-regular.css
│ │ └── fa-svg-with-js.min.css
├── on-server
│ ├── webfonts
│ │ ├── fa-brands-400.eot
│ │ ├── fa-brands-400.ttf
│ │ ├── fa-brands-400.woff
│ │ ├── fa-regular-400.eot
│ │ ├── fa-regular-400.ttf
│ │ ├── fa-solid-900.eot
│ │ ├── fa-solid-900.ttf
│ │ ├── fa-solid-900.woff
│ │ ├── fa-solid-900.woff2
│ │ ├── fa-brands-400.woff2
│ │ ├── fa-regular-400.woff
│ │ └── fa-regular-400.woff2
│ └── css
│ │ ├── fa-brands.min.css
│ │ ├── fa-solid.min.css
│ │ ├── fa-regular.min.css
│ │ ├── fa-brands.css
│ │ ├── fa-solid.css
│ │ ├── fa-regular.css
│ │ └── fa-svg-with-js.min.css
├── bootstrap
│ ├── fonts
│ │ ├── glyphicons-halflings-regular.eot
│ │ ├── glyphicons-halflings-regular.ttf
│ │ ├── glyphicons-halflings-regular.woff
│ │ ├── glyphicons-halflings-regular(1).woff
│ │ ├── glyphicons-halflings-regular.woff2
│ │ └── glyphicons-halflings-regular(1).woff2
│ ├── js
│ │ └── npm.js
│ └── css
│ │ ├── landing-page.min.css
│ │ └── landing-page.css
├── .htaccess
├── web.config
└── index.php
├── database
├── .gitignore
├── seeds
│ ├── DatabaseSeeder.php
│ └── UserSeeder.php
├── migrations
│ ├── 2018_02_23_013814_create_kategoris_table.php
│ ├── 2018_02_23_013847_create_suppliers_table.php
│ ├── 2018_02_23_013830_create_users_table.php
│ └── 2018_02_23_013753_create_barangs_table.php
└── factories
│ └── UserFactory.php
├── bootstrap
├── cache
│ └── .gitignore
└── app.php
├── storage
├── logs
│ └── .gitignore
├── app
│ ├── public
│ │ └── .gitignore
│ └── .gitignore
└── framework
│ ├── cache
│ └── .gitignore
│ ├── testing
│ └── .gitignore
│ ├── views
│ └── .gitignore
│ ├── sessions
│ └── .gitignore
│ └── .gitignore
├── Screenshot from 2018-02-23 08-26-00.png
├── Screenshot from 2018-02-23 08-26-42.png
├── Screenshot from 2018-02-23 08-27-36.png
├── Screenshot from 2018-02-23 08-28-17.png
├── Screenshot from 2018-02-23 08-28-38.png
├── app
├── Kategori.php
├── Supplier.php
├── Stok.php
├── Barang.php
├── Http
│ ├── Middleware
│ │ ├── EncryptCookies.php
│ │ ├── VerifyCsrfToken.php
│ │ ├── TrimStrings.php
│ │ ├── isPetugas.php
│ │ ├── isAdmin.php
│ │ ├── RedirectIfAuthenticated.php
│ │ └── TrustProxies.php
│ ├── Controllers
│ │ ├── Controller.php
│ │ ├── BarangKeluarController.php
│ │ ├── LaporanController.php
│ │ ├── BarangMasukController.php
│ │ ├── HomeController.php
│ │ ├── PinjamBarangController.php
│ │ ├── Auth
│ │ │ ├── ForgotPasswordController.php
│ │ │ ├── LoginController.php
│ │ │ ├── ResetPasswordController.php
│ │ │ └── RegisterController.php
│ │ ├── KategoriController.php
│ │ ├── UsersController.php
│ │ ├── SupplierController.php
│ │ └── BarangController.php
│ └── Kernel.php
├── Providers
│ ├── BroadcastServiceProvider.php
│ ├── AuthServiceProvider.php
│ ├── AppServiceProvider.php
│ ├── EventServiceProvider.php
│ └── RouteServiceProvider.php
├── User.php
├── Console
│ └── Kernel.php
└── Exceptions
│ └── Handler.php
├── tests
├── TestCase.php
├── Unit
│ └── ExampleTest.php
├── Feature
│ └── ExampleTest.php
└── CreatesApplication.php
├── resources
├── assets
│ ├── sass
│ │ ├── app.scss
│ │ └── _variables.scss
│ └── js
│ │ ├── components
│ │ └── ExampleComponent.vue
│ │ ├── app.js
│ │ └── bootstrap.js
├── lang
│ └── en
│ │ ├── pagination.php
│ │ ├── auth.php
│ │ ├── passwords.php
│ │ └── validation.php
└── views
│ ├── vendor
│ └── pagination
│ │ ├── simple-default.blade.php
│ │ ├── simple-bootstrap-4.blade.php
│ │ ├── default.blade.php
│ │ ├── semantic-ui.blade.php
│ │ └── bootstrap-4.blade.php
│ ├── home.blade.php
│ ├── kategori
│ ├── create.blade.php
│ ├── edit.blade.php
│ ├── index.blade.php
│ └── search.blade.php
│ ├── pro.blade.php
│ ├── users
│ ├── create.blade.php
│ ├── edit.blade.php
│ ├── search.blade.php
│ └── index.blade.php
│ ├── barang
│ ├── stok.blade.php
│ ├── index.blade.php
│ ├── detail.blade.php
│ ├── search.blade.php
│ ├── create.blade.php
│ └── edit.blade.php
│ ├── supplier
│ ├── create.blade.php
│ ├── edit.blade.php
│ ├── index.blade.php
│ └── search.blade.php
│ ├── auth
│ ├── passwords
│ │ ├── email.blade.php
│ │ └── reset.blade.php
│ ├── login.blade.php
│ └── register.blade.php
│ └── welcome.blade.php
├── routes
├── channels.php
├── api.php
├── console.php
└── web.php
├── webpack.mix.js
├── server.php
├── config
├── view.php
├── services.php
├── broadcasting.php
├── filesystems.php
├── queue.php
├── cache.php
├── auth.php
├── database.php
└── mail.php
├── phpunit.xml
├── package.json
├── readme.md
├── composer.json
└── artisan
/public/favicon.ico:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/database/.gitignore:
--------------------------------------------------------------------------------
1 | *.sqlite
2 |
--------------------------------------------------------------------------------
/bootstrap/cache/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/logs/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
--------------------------------------------------------------------------------
/storage/app/public/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/app/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !public/
3 | !.gitignore
4 |
--------------------------------------------------------------------------------
/storage/framework/cache/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/testing/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/views/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/sessions/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/public/uploads/phpV3CcYB:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/phpV3CcYB
--------------------------------------------------------------------------------
/public/uploads/1519263336.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/1519263336.jpg
--------------------------------------------------------------------------------
/public/uploads/1519267045.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/1519267045.jpg
--------------------------------------------------------------------------------
/public/uploads/1519270237.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/1519270237.jpeg
--------------------------------------------------------------------------------
/Screenshot from 2018-02-23 08-26-00.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/Screenshot from 2018-02-23 08-26-00.png
--------------------------------------------------------------------------------
/Screenshot from 2018-02-23 08-26-42.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/Screenshot from 2018-02-23 08-26-42.png
--------------------------------------------------------------------------------
/Screenshot from 2018-02-23 08-27-36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/Screenshot from 2018-02-23 08-27-36.png
--------------------------------------------------------------------------------
/Screenshot from 2018-02-23 08-28-17.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/Screenshot from 2018-02-23 08-28-17.png
--------------------------------------------------------------------------------
/Screenshot from 2018-02-23 08-28-38.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/Screenshot from 2018-02-23 08-28-38.png
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-brands-400.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-brands-400.eot
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-brands-400.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-brands-400.ttf
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-brands-400.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-brands-400.woff
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-regular-400.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-regular-400.eot
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-regular-400.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-regular-400.ttf
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-solid-900.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-solid-900.eot
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-solid-900.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-solid-900.ttf
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-solid-900.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-solid-900.woff
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-solid-900.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-solid-900.woff2
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-brands-400.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-brands-400.woff2
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-regular-400.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-regular-400.woff
--------------------------------------------------------------------------------
/public/on-server/webfonts/fa-regular-400.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/on-server/webfonts/fa-regular-400.woff2
--------------------------------------------------------------------------------
/storage/framework/.gitignore:
--------------------------------------------------------------------------------
1 | config.php
2 | routes.php
3 | schedule-*
4 | compiled.php
5 | services.json
6 | events.scanned.php
7 | routes.scanned.php
8 | down
9 |
--------------------------------------------------------------------------------
/public/uploads/on-server/webfonts/fa-brands-400.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/on-server/webfonts/fa-brands-400.eot
--------------------------------------------------------------------------------
/public/uploads/on-server/webfonts/fa-brands-400.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/on-server/webfonts/fa-brands-400.ttf
--------------------------------------------------------------------------------
/public/uploads/on-server/webfonts/fa-solid-900.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/on-server/webfonts/fa-solid-900.eot
--------------------------------------------------------------------------------
/public/uploads/on-server/webfonts/fa-solid-900.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/on-server/webfonts/fa-solid-900.ttf
--------------------------------------------------------------------------------
/public/uploads/on-server/webfonts/fa-solid-900.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fariswidhi/inventaris-sekolah/HEAD/public/uploads/on-server/webfonts/fa-solid-900.woff
--------------------------------------------------------------------------------
/app/Kategori.php:
--------------------------------------------------------------------------------
1 | belongsTo('App\Barang','kode_barang');
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/database/seeds/DatabaseSeeder.php:
--------------------------------------------------------------------------------
1 | call(UserSeeder::class);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/Barang.php:
--------------------------------------------------------------------------------
1 | belongsTo('App\Kategori','kategori');
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/app/Http/Middleware/EncryptCookies.php:
--------------------------------------------------------------------------------
1 | assertTrue(true);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/app/Http/Middleware/VerifyCsrfToken.php:
--------------------------------------------------------------------------------
1 | get('/');
18 |
19 | $response->assertStatus(200);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/database/seeds/UserSeeder.php:
--------------------------------------------------------------------------------
1 | insert([
16 | 'name'=>'admin',
17 | 'email'=>'admin@admin.com',
18 | 'password'=>bcrypt('admin'),
19 | 'role'=>1
20 | ]);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/app/Providers/BroadcastServiceProvider.php:
--------------------------------------------------------------------------------
1 | role == 2 ) {
19 | echo "string";
20 | }
21 | return $next($request);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/app/Http/Middleware/isAdmin.php:
--------------------------------------------------------------------------------
1 | role != 1 ) {
20 | return redirect('/');
21 | }
22 | return $next($request);
23 |
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/tests/CreatesApplication.php:
--------------------------------------------------------------------------------
1 | make(Kernel::class)->bootstrap();
20 |
21 | Hash::setRounds(4);
22 |
23 | return $app;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/routes/channels.php:
--------------------------------------------------------------------------------
1 | id === (int) $id;
16 | });
17 |
--------------------------------------------------------------------------------
/routes/api.php:
--------------------------------------------------------------------------------
1 | get('/user', function (Request $request) {
17 | return $request->user();
18 | });
19 |
--------------------------------------------------------------------------------
/webpack.mix.js:
--------------------------------------------------------------------------------
1 | let 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 application. By default, we are compiling the Sass
10 | | file for the application as well as bundling up all the JS files.
11 | |
12 | */
13 |
14 | mix.js('resources/assets/js/app.js', 'public/js')
15 | .sass('resources/assets/sass/app.scss', 'public/css');
16 |
--------------------------------------------------------------------------------
/resources/lang/en/pagination.php:
--------------------------------------------------------------------------------
1 | '« Previous',
17 | 'next' => 'Next »',
18 |
19 | ];
20 |
--------------------------------------------------------------------------------
/routes/console.php:
--------------------------------------------------------------------------------
1 | comment(Inspiring::quote());
18 | })->describe('Display an inspiring quote');
19 |
--------------------------------------------------------------------------------
/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';
--------------------------------------------------------------------------------
/app/User.php:
--------------------------------------------------------------------------------
1 | check()) {
21 | return redirect('/home');
22 | }
23 |
24 | return $next($request);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/public/on-server/css/fa-regular.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:Font Awesome\ 5 Free;font-weight:400}
--------------------------------------------------------------------------------
/public/uploads/on-server/css/fa-solid.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:Font Awesome\ 5 Free;font-weight:900}
--------------------------------------------------------------------------------
/public/uploads/on-server/css/fa-regular.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:Font Awesome\ 5 Free;font-weight:400}
--------------------------------------------------------------------------------
/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 | # Handle Front Controller...
18 | RewriteCond %{REQUEST_FILENAME} !-d
19 | RewriteCond %{REQUEST_FILENAME} !-f
20 | RewriteRule ^ index.php [L]
21 |
22 |
--------------------------------------------------------------------------------
/resources/assets/js/components/ExampleComponent.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
Example Component
7 |
8 |
9 | I'm an example component!
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
24 |
--------------------------------------------------------------------------------
/database/migrations/2018_02_23_013814_create_kategoris_table.php:
--------------------------------------------------------------------------------
1 | integer('id', true);
18 | $table->string('kategori');
19 | $table->timestamps();
20 | });
21 | }
22 |
23 |
24 | /**
25 | * Reverse the migrations.
26 | *
27 | * @return void
28 | */
29 | public function down()
30 | {
31 | Schema::drop('kategoris');
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/resources/lang/en/auth.php:
--------------------------------------------------------------------------------
1 | 'These credentials do not match our records.',
17 | 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
18 |
19 | ];
20 |
--------------------------------------------------------------------------------
/app/Providers/AuthServiceProvider.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 |
--------------------------------------------------------------------------------
/resources/assets/js/app.js:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | * First we will load all of this project's JavaScript dependencies which
4 | * includes Vue and other libraries. It is a great starting point when
5 | * building robust, powerful web applications using Vue and Laravel.
6 | */
7 |
8 | require('./bootstrap');
9 |
10 | window.Vue = require('vue');
11 |
12 | /**
13 | * Next, we will create a fresh Vue application instance and attach it to
14 | * the page. Then, you may begin adding components to this application
15 | * or customize the JavaScript scaffolding to fit your unique needs.
16 | */
17 |
18 | Vue.component('example-component', require('./components/ExampleComponent.vue'));
19 |
20 | const app = new Vue({
21 | el: '#app'
22 | });
23 |
--------------------------------------------------------------------------------
/app/Providers/AppServiceProvider.php:
--------------------------------------------------------------------------------
1 | app->register(\Way\Generators\GeneratorsServiceProvider::class);
29 | $this->app->register(\Xethron\MigrationsGenerator\MigrationsGeneratorServiceProvider::class);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/public/on-server/css/fa-brands.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face {
6 | font-family: 'Font Awesome 5 Brands';
7 | font-style: normal;
8 | font-weight: normal;
9 | src: url("../webfonts/fa-brands-400.eot");
10 | src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
11 |
12 | .fab {
13 | font-family: 'Font Awesome 5 Brands'; }
14 |
--------------------------------------------------------------------------------
/public/uploads/on-server/css/fa-brands.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face {
6 | font-family: 'Font Awesome 5 Brands';
7 | font-style: normal;
8 | font-weight: normal;
9 | src: url("../webfonts/fa-brands-400.eot");
10 | src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
11 |
12 | .fab {
13 | font-family: 'Font Awesome 5 Brands'; }
14 |
--------------------------------------------------------------------------------
/app/Providers/EventServiceProvider.php:
--------------------------------------------------------------------------------
1 | [
17 | 'App\Listeners\EventListener',
18 | ],
19 | ];
20 |
21 | /**
22 | * Register any events for your application.
23 | *
24 | * @return void
25 | */
26 | public function boot()
27 | {
28 | parent::boot();
29 |
30 | //
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/resources/views/vendor/pagination/simple-default.blade.php:
--------------------------------------------------------------------------------
1 | @if ($paginator->hasPages())
2 |
17 | @endif
18 |
--------------------------------------------------------------------------------
/public/on-server/css/fa-solid.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face {
6 | font-family: 'Font Awesome 5 Free';
7 | font-style: normal;
8 | font-weight: 900;
9 | src: url("../webfonts/fa-solid-900.eot");
10 | src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
11 |
12 | .fa,
13 | .fas {
14 | font-family: 'Font Awesome 5 Free';
15 | font-weight: 900; }
16 |
--------------------------------------------------------------------------------
/public/on-server/css/fa-regular.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face {
6 | font-family: 'Font Awesome 5 Free';
7 | font-style: normal;
8 | font-weight: 400;
9 | src: url("../webfonts/fa-regular-400.eot");
10 | src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
11 |
12 | .far {
13 | font-family: 'Font Awesome 5 Free';
14 | font-weight: 400; }
15 |
--------------------------------------------------------------------------------
/public/uploads/on-server/css/fa-solid.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face {
6 | font-family: 'Font Awesome 5 Free';
7 | font-style: normal;
8 | font-weight: 900;
9 | src: url("../webfonts/fa-solid-900.eot");
10 | src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
11 |
12 | .fa,
13 | .fas {
14 | font-family: 'Font Awesome 5 Free';
15 | font-weight: 900; }
16 |
--------------------------------------------------------------------------------
/public/uploads/on-server/css/fa-regular.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @font-face {
6 | font-family: 'Font Awesome 5 Free';
7 | font-style: normal;
8 | font-weight: 400;
9 | src: url("../webfonts/fa-regular-400.eot");
10 | src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
11 |
12 | .far {
13 | font-family: 'Font Awesome 5 Free';
14 | font-weight: 400; }
15 |
--------------------------------------------------------------------------------
/database/migrations/2018_02_23_013847_create_suppliers_table.php:
--------------------------------------------------------------------------------
1 | string('kode')->primary();
18 | $table->string('nama');
19 | $table->text('alamat', 65535);
20 | $table->string('telp');
21 | $table->string('kota');
22 | $table->timestamps();
23 | });
24 | }
25 |
26 |
27 | /**
28 | * Reverse the migrations.
29 | *
30 | * @return void
31 | */
32 | public function down()
33 | {
34 | Schema::drop('suppliers');
35 | }
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/resources/views/home.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Dashboard
9 |
10 |
11 | @if (session('status'))
12 |
13 | {{ session('status') }}
14 |
15 | @endif
16 |
17 | Selamat Datang di Aplikasi Inventaris Barang Sekolah!
18 |
19 |
20 |
21 |
22 |
23 |
24 | @endsection
25 |
--------------------------------------------------------------------------------
/app/Http/Middleware/TrustProxies.php:
--------------------------------------------------------------------------------
1 | 'FORWARDED',
24 | Request::HEADER_X_FORWARDED_FOR => 'X_FORWARDED_FOR',
25 | Request::HEADER_X_FORWARDED_HOST => 'X_FORWARDED_HOST',
26 | Request::HEADER_X_FORWARDED_PORT => 'X_FORWARDED_PORT',
27 | Request::HEADER_X_FORWARDED_PROTO => 'X_FORWARDED_PROTO',
28 | ];
29 | }
30 |
--------------------------------------------------------------------------------
/database/factories/UserFactory.php:
--------------------------------------------------------------------------------
1 | define(App\User::class, function (Faker $faker) {
17 | return [
18 | 'name' => $faker->name,
19 | 'email' => $faker->unique()->safeEmail,
20 | 'password' => '$2y$10$TKh8H1.PfQx37YgCzwiKb.KjNyWgaHb9cbcoQgdIVFlYg7B77UdFm', // secret
21 | 'remember_token' => str_random(10),
22 | ];
23 | });
24 |
--------------------------------------------------------------------------------
/database/migrations/2018_02_23_013830_create_users_table.php:
--------------------------------------------------------------------------------
1 | integer('id', true);
18 | $table->string('name');
19 | $table->string('email')->unique();
20 | $table->string('password');
21 | $table->integer('role');
22 | $table->string('remember_token', 100)->nullable();
23 | $table->timestamps();
24 | });
25 | }
26 |
27 |
28 | /**
29 | * Reverse the migrations.
30 | *
31 | * @return void
32 | */
33 | public function down()
34 | {
35 | Schema::drop('users');
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/app/Http/Controllers/BarangKeluarController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
29 |
30 | }
31 | public function index()
32 | {
33 | //
34 | // $data = Obj::paginate(10);
35 | return view('pro');
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/app/Http/Controllers/LaporanController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
20 | $this->middleware('admin');
21 |
22 | }
23 | public function barangMasuk(Request $request){
24 | // echo "string";
25 | return view('/pro');
26 |
27 | }
28 |
29 | public function barangKeluar(Request $request){
30 | // echo "string";
31 |
32 |
33 | return view('/pro');
34 |
35 | }
36 |
37 | public function pinjamBarang(Request $request){
38 | // echo "string";
39 |
40 | return view('/pro');
41 | }
42 |
43 |
44 |
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/app/Http/Controllers/BarangMasukController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
29 |
30 | }
31 | public function index()
32 | {
33 | //
34 | // $data = Obj::paginate(10);
35 |
36 | return view('pro');
37 | }
38 |
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/app/Http/Controllers/HomeController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
26 | }
27 |
28 | /**
29 | * Show the application dashboard.
30 | *
31 | * @return \Illuminate\Http\Response
32 | */
33 | public function index()
34 | {
35 | return view('home');
36 | }
37 |
38 | public function database(){
39 | return view('pro');
40 | }
41 |
42 | }
43 |
--------------------------------------------------------------------------------
/resources/lang/en/passwords.php:
--------------------------------------------------------------------------------
1 | 'Passwords must be at least six characters and match the confirmation.',
17 | 'reset' => 'Your password has been reset!',
18 | 'sent' => 'We have e-mailed your password reset link!',
19 | 'token' => 'This password reset token is invalid.',
20 | 'user' => "We can't find a user with that e-mail address.",
21 |
22 | ];
23 |
--------------------------------------------------------------------------------
/resources/views/vendor/pagination/simple-bootstrap-4.blade.php:
--------------------------------------------------------------------------------
1 | @if ($paginator->hasPages())
2 |
17 | @endif
18 |
--------------------------------------------------------------------------------
/app/Http/Controllers/PinjamBarangController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
30 | }
31 |
32 |
33 | public function index()
34 | {
35 | //
36 | // $data = Obj::paginate(10);
37 | // echo "string";
38 |
39 | return view('/pro');
40 | }
41 |
42 |
43 | }
44 |
--------------------------------------------------------------------------------
/database/migrations/2018_02_23_013753_create_barangs_table.php:
--------------------------------------------------------------------------------
1 | string('kode')->primary();
18 | $table->string('nama');
19 | $table->string('spesifikasi');
20 | $table->string('foto', 50)->nullable();
21 | $table->string('lokasi');
22 | $table->integer('kategori')->index('kategori');
23 | $table->integer('jml_barang');
24 | $table->string('kondisi');
25 | $table->string('sumber_dana');
26 | $table->timestamps();
27 | });
28 | }
29 |
30 |
31 | /**
32 | * Reverse the migations.
33 | *
34 | * @return void
35 | */
36 | public function down()
37 | {
38 | Schema::drop('barangs');
39 | }
40 |
41 | }
42 |
--------------------------------------------------------------------------------
/resources/views/kategori/create.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Tambah Kategori
9 |
10 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | @endsection
28 |
--------------------------------------------------------------------------------
/public/web.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Auth/ForgotPasswordController.php:
--------------------------------------------------------------------------------
1 | middleware('guest');
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/app/Console/Kernel.php:
--------------------------------------------------------------------------------
1 | command('inspire')
28 | // ->hourly();
29 | }
30 |
31 | /**
32 | * Register the commands for the application.
33 | *
34 | * @return void
35 | */
36 | protected function commands()
37 | {
38 | $this->load(__DIR__.'/Commands');
39 |
40 | require base_path('routes/console.php');
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/resources/assets/sass/_variables.scss:
--------------------------------------------------------------------------------
1 |
2 | // Body
3 | $body-bg: #f5f8fa;
4 |
5 | // Borders
6 | $laravel-border-color: darken($body-bg, 10%);
7 | $list-group-border: $laravel-border-color;
8 | $navbar-default-border: $laravel-border-color;
9 | $panel-default-border: $laravel-border-color;
10 | $panel-inner-border: $laravel-border-color;
11 |
12 | // Brands
13 | $brand-primary: #3097D1;
14 | $brand-info: #8eb4cb;
15 | $brand-success: #2ab27b;
16 | $brand-warning: #cbb956;
17 | $brand-danger: #bf5329;
18 |
19 | // Typography
20 | $icon-font-path: "~bootstrap-sass/assets/fonts/bootstrap/";
21 | $font-family-sans-serif: "Raleway", sans-serif;
22 | $font-size-base: 14px;
23 | $line-height-base: 1.6;
24 | $text-color: #636b6f;
25 |
26 | // Navbar
27 | $navbar-default-bg: #fff;
28 |
29 | // Buttons
30 | $btn-default-color: $text-color;
31 |
32 | // Inputs
33 | $input-border: lighten($text-color, 40%);
34 | $input-border-focus: lighten($brand-primary, 25%);
35 | $input-color-placeholder: lighten($text-color, 30%);
36 |
37 | // Panels
38 | $panel-default-heading-bg: #fff;
39 |
--------------------------------------------------------------------------------
/resources/views/kategori/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Tambah User
9 |
10 |
24 |
25 |
26 |
27 |
28 | @endsection
29 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Auth/LoginController.php:
--------------------------------------------------------------------------------
1 | middleware('guest')->except('logout');
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/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' => realpath(storage_path('framework/views')),
32 |
33 | ];
34 |
--------------------------------------------------------------------------------
/config/services.php:
--------------------------------------------------------------------------------
1 | [
18 | 'domain' => env('MAILGUN_DOMAIN'),
19 | 'secret' => env('MAILGUN_SECRET'),
20 | ],
21 |
22 | 'ses' => [
23 | 'key' => env('SES_KEY'),
24 | 'secret' => env('SES_SECRET'),
25 | 'region' => 'us-east-1',
26 | ],
27 |
28 | 'sparkpost' => [
29 | 'secret' => env('SPARKPOST_SECRET'),
30 | ],
31 |
32 | 'stripe' => [
33 | 'model' => App\User::class,
34 | 'key' => env('STRIPE_KEY'),
35 | 'secret' => env('STRIPE_SECRET'),
36 | ],
37 |
38 | ];
39 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Auth/ResetPasswordController.php:
--------------------------------------------------------------------------------
1 | middleware('guest');
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/phpunit.xml:
--------------------------------------------------------------------------------
1 |
2 |
11 |
12 |
13 | ./tests/Feature
14 |
15 |
16 |
17 | ./tests/Unit
18 |
19 |
20 |
21 |
22 | ./app
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "scripts": {
4 | "dev": "npm run development",
5 | "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
6 | "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
7 | "watch-poll": "npm run watch -- --watch-poll",
8 | "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
9 | "prod": "npm run production",
10 | "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
11 | },
12 | "devDependencies": {
13 | "axios": "^0.17",
14 | "bootstrap-sass": "^3.3.7",
15 | "cross-env": "^5.1",
16 | "jquery": "^3.2",
17 | "laravel-mix": "^1.0",
18 | "lodash": "^4.17.4",
19 | "vue": "^2.5.7"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/readme.md:
--------------------------------------------------------------------------------
1 | # Aplikasi Inventaris Barang Sekolah
2 |
3 | Aplikasi Inventaris Barang Sekolah dibuat Menggunakan Laravel 5.5 + jQuery + Bootstrap
4 |
5 | # Screenshots
6 | 
7 | 
8 | 
9 | 
10 | 
12 |
13 |
14 |
15 | # Instalasi
16 | - Ketikan di Command Line/ Terminal
17 | ```
18 | composer install
19 | ```
20 | - Ubah konfigurasi database dan lainnya di .ENV
21 | - Ketikan di Command Line/ Terminal
22 | ```
23 | php artisan migrate
24 | ```
25 | - Ketikan di Command Line/ Terminal
26 | ```
27 | php artisan db:seed
28 | ```
29 | - Login dengan
30 | ```
31 | username : admin
32 | password : admin
33 | ```
34 |
35 |
--------------------------------------------------------------------------------
/app/Exceptions/Handler.php:
--------------------------------------------------------------------------------
1 | hasPages())
2 |
36 | @endif
37 |
--------------------------------------------------------------------------------
/resources/views/vendor/pagination/semantic-ui.blade.php:
--------------------------------------------------------------------------------
1 | @if ($paginator->hasPages())
2 |
36 | @endif
37 |
--------------------------------------------------------------------------------
/resources/views/vendor/pagination/bootstrap-4.blade.php:
--------------------------------------------------------------------------------
1 | @if ($paginator->hasPages())
2 |
36 | @endif
37 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "laravel/laravel",
3 | "description": "The Laravel Framework.",
4 | "keywords": ["framework", "laravel"],
5 | "license": "MIT",
6 | "type": "project",
7 | "require": {
8 | "php": ">=7.0.0",
9 | "fideloper/proxy": "~3.3",
10 | "laravel/framework": "5.5.*",
11 | "laravel/tinker": "~1.0"
12 | },
13 | "require-dev": {
14 | "filp/whoops": "~2.0",
15 | "fzaninotto/faker": "~1.4",
16 | "mockery/mockery": "~1.0",
17 | "phpunit/phpunit": "~6.0",
18 | "symfony/thanks": "^1.0",
19 | "xethron/migrations-generator": "^2.0"
20 | },
21 | "autoload": {
22 | "classmap": [
23 | "database/seeds",
24 | "database/factories"
25 | ],
26 | "psr-4": {
27 | "App\\": "app/"
28 | }
29 | },
30 | "autoload-dev": {
31 | "psr-4": {
32 | "Tests\\": "tests/"
33 | }
34 | },
35 | "extra": {
36 | "laravel": {
37 | "dont-discover": [
38 | ]
39 | }
40 | },
41 | "scripts": {
42 | "post-root-package-install": [
43 | "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
44 | ],
45 | "post-create-project-cmd": [
46 | "@php artisan key:generate"
47 | ],
48 | "post-autoload-dump": [
49 | "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
50 | "@php artisan package:discover"
51 | ]
52 | },
53 | "config": {
54 | "preferred-install": "dist",
55 | "sort-packages": true,
56 | "optimize-autoloader": true
57 | }
58 | }
59 |
--------------------------------------------------------------------------------
/resources/views/pro.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Dashboard
9 |
10 |
11 | @if (session('status'))
12 |
13 | {{ session('status') }}
14 |
15 | @endif
16 |
17 | Maaf Untuk Membuka Fitur Ini SIlahkan Hubungi Saya di
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 | Faris Widhiarta
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 | 0895322931444
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | Faris Widhiarta
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 | @endsection
55 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/resources/views/users/create.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Tambah User
9 |
10 |
38 |
39 |
40 |
41 |
42 | @endsection
43 |
--------------------------------------------------------------------------------
/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 | 'encrypted' => true,
41 | ],
42 | ],
43 |
44 | 'redis' => [
45 | 'driver' => 'redis',
46 | 'connection' => 'default',
47 | ],
48 |
49 | 'log' => [
50 | 'driver' => 'log',
51 | ],
52 |
53 | 'null' => [
54 | 'driver' => 'null',
55 | ],
56 |
57 | ],
58 |
59 | ];
60 |
--------------------------------------------------------------------------------
/app/Providers/RouteServiceProvider.php:
--------------------------------------------------------------------------------
1 | mapApiRoutes();
39 |
40 | $this->mapWebRoutes();
41 |
42 | //
43 | }
44 |
45 | /**
46 | * Define the "web" routes for the application.
47 | *
48 | * These routes all receive session state, CSRF protection, etc.
49 | *
50 | * @return void
51 | */
52 | protected function mapWebRoutes()
53 | {
54 | Route::middleware('web')
55 | ->namespace($this->namespace)
56 | ->group(base_path('routes/web.php'));
57 | }
58 |
59 | /**
60 | * Define the "api" routes for the application.
61 | *
62 | * These routes are typically stateless.
63 | *
64 | * @return void
65 | */
66 | protected function mapApiRoutes()
67 | {
68 | Route::prefix('api')
69 | ->middleware('api')
70 | ->namespace($this->namespace)
71 | ->group(base_path('routes/api.php'));
72 | }
73 | }
74 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/resources/assets/js/bootstrap.js:
--------------------------------------------------------------------------------
1 |
2 | window._ = require('lodash');
3 |
4 | /**
5 | * We'll load jQuery and the Bootstrap jQuery plugin which provides support
6 | * for JavaScript based Bootstrap features such as modals and tabs. This
7 | * code may be modified to fit the specific needs of your application.
8 | */
9 |
10 | try {
11 | window.$ = window.jQuery = require('jquery');
12 |
13 | require('bootstrap-sass');
14 | } catch (e) {}
15 |
16 | /**
17 | * We'll load the axios HTTP library which allows us to easily issue requests
18 | * to our Laravel back-end. This library automatically handles sending the
19 | * CSRF token as a header based on the value of the "XSRF" token cookie.
20 | */
21 |
22 | window.axios = require('axios');
23 |
24 | window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
25 |
26 | /**
27 | * Next we will register the CSRF Token as a common header with Axios so that
28 | * all outgoing HTTP requests automatically have it attached. This is just
29 | * a simple convenience so we don't have to attach every token manually.
30 | */
31 |
32 | let token = document.head.querySelector('meta[name="csrf-token"]');
33 |
34 | if (token) {
35 | window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
36 | } else {
37 | console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
38 | }
39 |
40 | /**
41 | * Echo exposes an expressive API for subscribing to channels and listening
42 | * for events that are broadcast by Laravel. Echo and event broadcasting
43 | * allows your team to easily build robust real-time web applications.
44 | */
45 |
46 | // import Echo from 'laravel-echo'
47 |
48 | // window.Pusher = require('pusher-js');
49 |
50 | // window.Echo = new Echo({
51 | // broadcaster: 'pusher',
52 | // key: 'your-pusher-key',
53 | // cluster: 'mt1',
54 | // encrypted: true
55 | // });
56 |
--------------------------------------------------------------------------------
/resources/views/barang/stok.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Stok Barang
9 |
10 |
11 |
12 |
13 |
14 | #
15 | Nama
16 | Jumlah Barang Masuk
17 | Jumlah Barang Keluar
18 | Total
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 | @push('script')
34 |
61 | {{-- expr --}}
62 | @endpush
63 | @endsection
64 |
--------------------------------------------------------------------------------
/resources/views/supplier/create.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Tambah Kategori
9 |
10 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 | @endsection
49 |
--------------------------------------------------------------------------------
/resources/views/users/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Tambah User
9 |
10 |
39 |
40 |
41 |
42 |
43 | @endsection
44 |
--------------------------------------------------------------------------------
/public/bootstrap/css/landing-page.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Start Bootstrap - Landing Page v4.0.0-beta.2 (https://startbootstrap.com/template-overviews/landing-page)
3 | * Copyright 2013-2017 Start Bootstrap
4 | * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-landing-page/blob/master/LICENSE)
5 | */body{font-family:Lato,'Helvetica Neue',Helvetica,Arial,sans-serif}h1,h2,h3,h4,h5,h6{font-family:Lato,'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:700}header.masthead{position:relative;background-color:#343a40;background:url(../img/bg-masthead.jpg) no-repeat center center;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;padding-top:8rem;padding-bottom:8rem}header.masthead .overlay{position:absolute;background-color:#212529;height:100%;width:100%;top:0;left:0;opacity:.3}header.masthead h1{font-size:2rem}@media (min-width:768px){header.masthead{padding-top:12rem;padding-bottom:12rem}header.masthead h1{font-size:3rem}}.showcase .showcase-text{padding:3rem}.showcase .showcase-img{min-height:30rem;background-size:cover}@media (min-width:768px){.showcase .showcase-text{padding:7rem}}.features-icons{padding-top:7rem;padding-bottom:7rem}.features-icons .features-icons-item{max-width:20rem}.features-icons .features-icons-item .features-icons-icon{height:7rem}.features-icons .features-icons-item .features-icons-icon i{font-size:4.5rem}.features-icons .features-icons-item:hover .features-icons-icon i{font-size:5rem}.testimonials{padding-top:7rem;padding-bottom:7rem}.testimonials .testimonial-item{max-width:18rem}.testimonials .testimonial-item img{max-width:12rem;box-shadow:0 5px 5px 0 #adb5bd}.call-to-action{position:relative;background-color:#343a40;background:url(../img/bg-masthead.jpg) no-repeat center center;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;padding-top:7rem;padding-bottom:7rem}.call-to-action .overlay{position:absolute;background-color:#212529;height:100%;width:100%;top:0;left:0;opacity:.3}footer.footer{padding-top:4rem;padding-bottom:4rem}
--------------------------------------------------------------------------------
/public/index.php:
--------------------------------------------------------------------------------
1 |
8 | */
9 |
10 | define('LARAVEL_START', microtime(true));
11 |
12 | /*
13 | |--------------------------------------------------------------------------
14 | | Register The Auto Loader
15 | |--------------------------------------------------------------------------
16 | |
17 | | Composer provides a convenient, automatically generated class loader for
18 | | our application. We just need to utilize it! We'll simply require it
19 | | into the script here so that we don't have to worry about manual
20 | | loading any of our classes later on. It feels great to relax.
21 | |
22 | */
23 |
24 | require __DIR__.'/../vendor/autoload.php';
25 |
26 | /*
27 | |--------------------------------------------------------------------------
28 | | Turn On The Lights
29 | |--------------------------------------------------------------------------
30 | |
31 | | We need to illuminate PHP development, so let us turn on the lights.
32 | | This bootstraps the framework and gets it ready for use, then it
33 | | will load up this application so that we can run it and send
34 | | the responses back to the browser and delight our users.
35 | |
36 | */
37 |
38 | $app = require_once __DIR__.'/../bootstrap/app.php';
39 |
40 | /*
41 | |--------------------------------------------------------------------------
42 | | Run The Application
43 | |--------------------------------------------------------------------------
44 | |
45 | | Once we have the application, we can handle the incoming request
46 | | through the kernel, and send the associated response back to
47 | | the client's browser allowing them to enjoy the creative
48 | | and wonderful application we have prepared for them.
49 | |
50 | */
51 |
52 | $kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
53 |
54 | $response = $kernel->handle(
55 | $request = Illuminate\Http\Request::capture()
56 | );
57 |
58 | $response->send();
59 |
60 | $kernel->terminate($request, $response);
61 |
--------------------------------------------------------------------------------
/resources/views/auth/passwords/email.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Reset Password
9 |
10 |
11 | @if (session('status'))
12 |
13 | {{ session('status') }}
14 |
15 | @endif
16 |
17 |
18 | {{ csrf_field() }}
19 |
20 |
33 |
34 |
41 |
42 |
43 |
44 |
45 |
46 |
47 | @endsection
48 |
--------------------------------------------------------------------------------
/resources/views/kategori/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Kategori
9 |
10 |
11 |
12 |
13 |
Tambah Data
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | #
23 | Nama
24 | Aksi
25 |
26 |
27 |
28 | @if (count($data) == 0)
29 | {{-- expr --}}
30 |
31 | Data Tidak Ada
32 |
33 | @else
34 | @foreach ($data as $d)
35 |
36 | {{$no++}}
37 | {{$d->kategori}}
38 |
39 | Edit
40 |
41 | Hapus
42 |
43 |
44 |
45 | @endforeach
46 | @endif
47 |
48 |
49 |
50 |
{{$data->links()}}
51 |
52 |
53 |
54 |
55 |
56 | @endsection
57 |
--------------------------------------------------------------------------------
/resources/views/supplier/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Tambah User
9 |
10 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 | @endsection
51 |
--------------------------------------------------------------------------------
/app/Http/Controllers/Auth/RegisterController.php:
--------------------------------------------------------------------------------
1 | middleware('guest');
40 | }
41 |
42 | /**
43 | * Get a validator for an incoming registration request.
44 | *
45 | * @param array $data
46 | * @return \Illuminate\Contracts\Validation\Validator
47 | */
48 | protected function validator(array $data)
49 | {
50 | return Validator::make($data, [
51 | 'name' => 'required|string|max:255',
52 | 'email' => 'required|string|email|max:255|unique:users',
53 | 'password' => 'required|string|min:6|confirmed',
54 | ]);
55 | }
56 |
57 | /**
58 | * Create a new user instance after a valid registration.
59 | *
60 | * @param array $data
61 | * @return \App\User
62 | */
63 | protected function create(array $data)
64 | {
65 | return User::create([
66 | 'name' => $data['name'],
67 | 'email' => $data['email'],
68 | 'password' => bcrypt($data['password']),
69 | ]);
70 | }
71 | }
72 |
--------------------------------------------------------------------------------
/resources/views/supplier/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Data Supplier
9 |
10 |
11 |
12 |
13 |
Tambah Data
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | #
23 | Nama
24 | Alamat
25 | Aksi
26 |
27 |
28 |
29 | @if (count($data) == 0)
30 | {{-- expr --}}
31 |
32 | Data Tidak Ada
33 |
34 | @else
35 | @foreach ($data as $d)
36 |
37 | {{$d->kode}}
38 | {{$d->nama}}
39 | {{$d->alamat}}
40 |
41 | Edit
42 |
43 | Hapus
44 |
45 |
46 |
47 | @endforeach
48 | @endif
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 | @endsection
61 |
--------------------------------------------------------------------------------
/resources/views/kategori/search.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Kategori
9 |
10 |
11 |
12 |
13 |
Tambah Data
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | #
23 | Nama
24 | Aksi
25 |
26 |
27 |
28 | @if (count($data) == 0)
29 | {{-- expr --}}
30 |
31 | Data Tidak Ada
32 |
33 | @else
34 | @foreach ($data as $d)
35 |
36 | {{$no++}}
37 | {{$d->kategori}}
38 |
39 | Edit
40 | Hapus
41 |
42 |
43 | @endforeach
44 | @endif
45 |
46 |
47 |
48 |
{{$data->links()}}
49 |
50 |
51 |
52 |
53 |
54 | @endsection
55 |
--------------------------------------------------------------------------------
/resources/views/users/search.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Users
9 |
10 |
11 |
12 |
13 |
Tambah Data
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | #
23 | Name
24 | Email
25 | Aksi
26 |
27 |
28 |
29 | @if (count($data) == 0)
30 | {{-- expr --}}
31 |
32 | Data Tidak Ada
33 |
34 | @else
35 | @foreach ($data as $d)
36 |
37 | {{$no++}}
38 | {{$d->name}}
39 | {{$d->email}}
40 |
41 | Edit
42 | Hapus
43 |
44 |
45 | @endforeach
46 | @endif
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 | @endsection
57 |
--------------------------------------------------------------------------------
/resources/views/barang/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Data Barang
9 |
10 |
11 |
12 |
13 |
Tambah Data
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | #
23 | Nama
24 | Jumlah Barang
25 | Aksi
26 |
27 |
28 | @if (count($data) == 0)
29 | {{-- expr --}}
30 |
31 | Data Tidak Ada
32 |
33 | @endif
34 | @foreach ($data as $d)
35 |
36 | {{$d->kode}}
37 | {{$d->nama}}
38 | {{$d->jml_barang}}
39 |
40 |
41 |
42 | Detail
43 | Edit
44 | Hapus
45 |
46 |
47 | @endforeach
48 |
49 |
50 |
{{$data->links()}}
51 |
52 |
53 |
54 |
55 |
56 |
57 | @endsection
58 |
--------------------------------------------------------------------------------
/resources/views/supplier/search.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Users
9 |
10 |
11 |
12 |
13 |
Tambah Data
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | #
23 | Nama
24 | Alamat
25 | Aksi
26 |
27 |
28 |
29 | @if (count($data) == 0)
30 | {{-- expr --}}
31 |
32 | Data Tidak Ada
33 |
34 | @else
35 | @foreach ($data as $d)
36 |
37 | {{$d->kode}}
38 | {{$d->nama}}
39 | {{$d->alamat}}
40 |
41 | Edit
42 |
43 | {{csrf_field()}}
44 | {{method_field('DELETE')}}
45 | Hapus
46 |
47 |
48 |
49 | @endforeach
50 | @endif
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 | @endsection
61 |
--------------------------------------------------------------------------------
/resources/views/barang/detail.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Detail Barang
9 |
10 |
11 |
12 | Cetak
13 |
14 |
15 |
16 |
17 |
18 | Kode {{$data->kode}}
19 |
20 |
21 | Nama {{$data->nama}}
22 |
23 |
24 | Spesifikasi {{$data->spesifikasi}}
25 |
26 | @if ($data->foto !=null)
27 | {{-- expr --}}
28 |
29 | Foto
30 |
31 | @endif
32 |
33 | Lokasi {{$data->lokasi}}
34 |
35 |
36 | Kategori {{$data->kat->kategori}}
37 |
38 |
39 | Jumlah Barang {{$data->jml_barang}}
40 |
41 |
42 | Kondisi {{$data->kondisi}}
43 |
44 |
45 | Sumber Dana {{$data->sumber_dana}}
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 | @endsection
56 |
--------------------------------------------------------------------------------
/resources/views/barang/search.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Data Barang
9 |
10 |
11 |
12 |
13 |
Tambah Data
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | #
23 | Nama
24 | Jumlah Barang
25 | Aksi
26 |
27 |
28 | @if (count($data) == 0)
29 | {{-- expr --}}
30 |
31 | Data Tidak Ada
32 |
33 | @endif
34 | @foreach ($data as $d)
35 |
36 | {{$d->kode}}
37 | {{$d->nama}}
38 | {{$d->jml_barang}}
39 |
40 |
41 |
42 | Detail
43 | Edit
44 | Hapus
45 |
46 |
47 | @endforeach
48 |
49 |
50 |
{{$data->links()}}
51 |
52 |
53 |
54 |
55 |
56 |
57 | @endsection
58 |
--------------------------------------------------------------------------------
/resources/views/users/index.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Users
9 |
10 |
11 |
12 |
13 |
Tambah Data
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | #
23 | Name
24 | Email
25 | Level
26 | Aksi
27 |
28 |
29 |
30 | @if (count($data) == 0)
31 | {{-- expr --}}
32 |
33 | Data Tidak Ada
34 |
35 | @else
36 | @foreach ($data as $d)
37 |
38 | {{$no++}}
39 | {{$d->name}}
40 | {{$d->email}}
41 | {!!$d->role ==1 ? 'Admin ' :''!!}
42 | {!!$d->role ==2 ? 'Petugas ' :''!!}
43 |
44 |
45 | Edit
46 | Hapus
47 |
48 |
49 | @endforeach
50 | @endif
51 |
52 |
53 |
54 |
{{$data->links()}}
55 |
56 |
57 |
58 |
59 |
60 | @endsection
61 |
--------------------------------------------------------------------------------
/config/filesystems.php:
--------------------------------------------------------------------------------
1 | env('FILESYSTEM_DRIVER', 'local'),
17 |
18 | /*
19 | |--------------------------------------------------------------------------
20 | | Default Cloud Filesystem Disk
21 | |--------------------------------------------------------------------------
22 | |
23 | | Many applications store files both locally and in the cloud. For this
24 | | reason, you may specify a default "cloud" driver here. This driver
25 | | will be bound as the Cloud disk implementation in the container.
26 | |
27 | */
28 |
29 | 'cloud' => env('FILESYSTEM_CLOUD', 's3'),
30 |
31 | /*
32 | |--------------------------------------------------------------------------
33 | | Filesystem Disks
34 | |--------------------------------------------------------------------------
35 | |
36 | | Here you may configure as many filesystem "disks" as you wish, and you
37 | | may even configure multiple disks of the same driver. Defaults have
38 | | been setup for each driver as an example of the required options.
39 | |
40 | | Supported Drivers: "local", "ftp", "s3", "rackspace"
41 | |
42 | */
43 |
44 | 'disks' => [
45 |
46 | 'local' => [
47 | 'driver' => 'local',
48 | 'root' => storage_path('app'),
49 | ],
50 |
51 | 'public' => [
52 | 'driver' => 'local',
53 | 'root' => storage_path('app/public'),
54 | 'url' => env('APP_URL').'/storage',
55 | 'visibility' => 'public',
56 | ],
57 |
58 | 's3' => [
59 | 'driver' => 's3',
60 | 'key' => env('AWS_ACCESS_KEY_ID'),
61 | 'secret' => env('AWS_SECRET_ACCESS_KEY'),
62 | 'region' => env('AWS_DEFAULT_REGION'),
63 | 'bucket' => env('AWS_BUCKET'),
64 | ],
65 |
66 | ],
67 |
68 | ];
69 |
--------------------------------------------------------------------------------
/app/Http/Kernel.php:
--------------------------------------------------------------------------------
1 | [
31 | \App\Http\Middleware\EncryptCookies::class,
32 | \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
33 | \Illuminate\Session\Middleware\StartSession::class,
34 | // \Illuminate\Session\Middleware\AuthenticateSession::class,
35 | \Illuminate\View\Middleware\ShareErrorsFromSession::class,
36 | \App\Http\Middleware\VerifyCsrfToken::class,
37 | \Illuminate\Routing\Middleware\SubstituteBindings::class,
38 | ],
39 |
40 | 'api' => [
41 | 'throttle:60,1',
42 | 'bindings',
43 | ],
44 | ];
45 |
46 | /**
47 | * The application's route middleware.
48 | *
49 | * These middleware may be assigned to groups or used individually.
50 | *
51 | * @var array
52 | */
53 | protected $routeMiddleware = [
54 | 'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
55 | 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
56 | 'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
57 | 'can' => \Illuminate\Auth\Middleware\Authorize::class,
58 | 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
59 | 'admin' => \App\Http\Middleware\isAdmin::class,
60 | 'petugas' => \App\Http\Middleware\isPetugas::class,
61 | 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
62 | ];
63 | }
64 |
--------------------------------------------------------------------------------
/resources/views/auth/login.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Login
9 |
10 |
11 |
12 | {{ csrf_field() }}
13 |
14 |
27 |
28 |
41 |
42 |
43 |
44 |
53 |
54 |
55 |
56 |
57 |
58 |
59 | @endsection
60 |
--------------------------------------------------------------------------------
/config/queue.php:
--------------------------------------------------------------------------------
1 | env('QUEUE_DRIVER', 'sync'),
19 |
20 | /*
21 | |--------------------------------------------------------------------------
22 | | Queue Connections
23 | |--------------------------------------------------------------------------
24 | |
25 | | Here you may configure the connection information for each server that
26 | | is used by your application. A default configuration has been added
27 | | for each back-end shipped with Laravel. You are free to add more.
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 | ],
43 |
44 | 'beanstalkd' => [
45 | 'driver' => 'beanstalkd',
46 | 'host' => 'localhost',
47 | 'queue' => 'default',
48 | 'retry_after' => 90,
49 | ],
50 |
51 | 'sqs' => [
52 | 'driver' => 'sqs',
53 | 'key' => env('SQS_KEY', 'your-public-key'),
54 | 'secret' => env('SQS_SECRET', 'your-secret-key'),
55 | 'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'),
56 | 'queue' => env('SQS_QUEUE', 'your-queue-name'),
57 | 'region' => env('SQS_REGION', 'us-east-1'),
58 | ],
59 |
60 | 'redis' => [
61 | 'driver' => 'redis',
62 | 'connection' => 'default',
63 | 'queue' => 'default',
64 | 'retry_after' => 90,
65 | ],
66 |
67 | ],
68 |
69 | /*
70 | |--------------------------------------------------------------------------
71 | | Failed Queue Jobs
72 | |--------------------------------------------------------------------------
73 | |
74 | | These options configure the behavior of failed queue job logging so you
75 | | can control which database and table are used to store the jobs that
76 | | have failed. You may change them to any database / table you wish.
77 | |
78 | */
79 |
80 | 'failed' => [
81 | 'database' => env('DB_CONNECTION', 'mysql'),
82 | 'table' => 'failed_jobs',
83 | ],
84 |
85 | ];
86 |
--------------------------------------------------------------------------------
/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 | */
30 |
31 | 'stores' => [
32 |
33 | 'apc' => [
34 | 'driver' => 'apc',
35 | ],
36 |
37 | 'array' => [
38 | 'driver' => 'array',
39 | ],
40 |
41 | 'database' => [
42 | 'driver' => 'database',
43 | 'table' => 'cache',
44 | 'connection' => null,
45 | ],
46 |
47 | 'file' => [
48 | 'driver' => 'file',
49 | 'path' => storage_path('framework/cache/data'),
50 | ],
51 |
52 | 'memcached' => [
53 | 'driver' => 'memcached',
54 | 'persistent_id' => env('MEMCACHED_PERSISTENT_ID'),
55 | 'sasl' => [
56 | env('MEMCACHED_USERNAME'),
57 | env('MEMCACHED_PASSWORD'),
58 | ],
59 | 'options' => [
60 | // Memcached::OPT_CONNECT_TIMEOUT => 2000,
61 | ],
62 | 'servers' => [
63 | [
64 | 'host' => env('MEMCACHED_HOST', '127.0.0.1'),
65 | 'port' => env('MEMCACHED_PORT', 11211),
66 | 'weight' => 100,
67 | ],
68 | ],
69 | ],
70 |
71 | 'redis' => [
72 | 'driver' => 'redis',
73 | 'connection' => 'default',
74 | ],
75 |
76 | ],
77 |
78 | /*
79 | |--------------------------------------------------------------------------
80 | | Cache Key Prefix
81 | |--------------------------------------------------------------------------
82 | |
83 | | When utilizing a RAM based store such as APC or Memcached, there might
84 | | be other applications utilizing the same cache. So, we'll specify a
85 | | value to get prefixed to all our keys so we can avoid collisions.
86 | |
87 | */
88 |
89 | 'prefix' => env(
90 | 'CACHE_PREFIX',
91 | str_slug(env('APP_NAME', 'laravel'), '_').'_cache'
92 | ),
93 |
94 | ];
95 |
--------------------------------------------------------------------------------
/resources/views/welcome.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Laravel
9 |
10 |
11 |
12 |
13 |
14 |
66 |
67 |
68 |
69 | @if (Route::has('login'))
70 |
78 | @endif
79 |
80 |
81 |
82 | Laravel
83 |
84 |
85 |
92 |
93 |
94 |
95 |
96 |
--------------------------------------------------------------------------------
/public/bootstrap/css/landing-page.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Start Bootstrap - Landing Page v4.0.0-beta.2 (https://startbootstrap.com/template-overviews/landing-page)
3 | * Copyright 2013-2017 Start Bootstrap
4 | * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-landing-page/blob/master/LICENSE)
5 | */
6 | body {
7 | font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif; }
8 |
9 | h1,
10 | h2,
11 | h3,
12 | h4,
13 | h5,
14 | h6 {
15 | font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif;
16 | font-weight: 700; }
17 |
18 | header.masthead {
19 | position: relative;
20 | background-color: #343a40;
21 | background: url("../img/bg.jpg") no-repeat center center;
22 | -webkit-background-size: cover;
23 | -moz-background-size: cover;
24 | -o-background-size: cover;
25 | background-size: cover;
26 | padding-top: 8rem;
27 | padding-bottom: 8rem; }
28 | header.masthead .overlay {
29 | position: absolute;
30 | background-color: #212529;
31 | height: 100%;
32 | width: 100%;
33 | top: 0;
34 | left: 0;
35 | opacity: 0.3; }
36 | header.masthead h1 {
37 | font-size: 2rem; }
38 | @media (min-width: 768px) {
39 | header.masthead {
40 | padding-top: 12rem;
41 | padding-bottom: 12rem; }
42 | header.masthead h1 {
43 | font-size: 3rem; } }
44 |
45 | .showcase .showcase-text {
46 | padding: 3rem; }
47 |
48 | .showcase .showcase-img {
49 | min-height: 30rem;
50 | background-size: cover; }
51 |
52 | @media (min-width: 768px) {
53 | .showcase .showcase-text {
54 | padding: 7rem; } }
55 |
56 | .features-icons {
57 | padding-top: 7rem;
58 | padding-bottom: 7rem; }
59 | .features-icons .features-icons-item {
60 | max-width: 20rem; }
61 | .features-icons .features-icons-item .features-icons-icon {
62 | height: 7rem; }
63 | .features-icons .features-icons-item .features-icons-icon i {
64 | font-size: 4.5rem; }
65 | .features-icons .features-icons-item:hover .features-icons-icon i {
66 | font-size: 5rem; }
67 |
68 | .testimonials {
69 | padding-top: 7rem;
70 | padding-bottom: 7rem; }
71 | .testimonials .testimonial-item {
72 | max-width: 18rem; }
73 | .testimonials .testimonial-item img {
74 | max-width: 12rem;
75 | box-shadow: 0px 5px 5px 0px #adb5bd; }
76 |
77 | .call-to-action {
78 | position: relative;
79 | background-color: #343a40;
80 | background: url("../img/bg-masthead.jpg") no-repeat center center;
81 | -webkit-background-size: cover;
82 | -moz-background-size: cover;
83 | -o-background-size: cover;
84 | background-size: cover;
85 | padding-top: 7rem;
86 | padding-bottom: 7rem; }
87 | .call-to-action .overlay {
88 | position: absolute;
89 | background-color: #212529;
90 | height: 100%;
91 | width: 100%;
92 | top: 0;
93 | left: 0;
94 | opacity: 0.3; }
95 |
96 | footer.footer {
97 | padding-top: 4rem;
98 | padding-bottom: 4rem; }
99 |
100 | .baken{
101 | color: #000;
102 | }
103 | .baken:hover{
104 | background-color: #000;
105 | color:#fff;
106 | cursor: pointer;
107 | }
--------------------------------------------------------------------------------
/resources/views/barang/create.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Tambah Barang
9 |
10 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 | @endsection
68 |
--------------------------------------------------------------------------------
/resources/views/auth/passwords/reset.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Reset Password
9 |
10 |
11 |
12 | {{ csrf_field() }}
13 |
14 |
15 |
16 |
29 |
30 |
43 |
44 |
56 |
57 |
64 |
65 |
66 |
67 |
68 |
69 |
70 | @endsection
71 |
--------------------------------------------------------------------------------
/config/auth.php:
--------------------------------------------------------------------------------
1 | [
17 | 'guard' => 'web',
18 | 'passwords' => 'users',
19 | ],
20 |
21 | /*
22 | |--------------------------------------------------------------------------
23 | | Authentication Guards
24 | |--------------------------------------------------------------------------
25 | |
26 | | Next, you may define every authentication guard for your application.
27 | | Of course, a great default configuration has been defined for you
28 | | here which uses session storage and the Eloquent user provider.
29 | |
30 | | All authentication drivers have a user provider. This defines how the
31 | | users are actually retrieved out of your database or other storage
32 | | mechanisms used by this application to persist your user's data.
33 | |
34 | | Supported: "session", "token"
35 | |
36 | */
37 |
38 | 'guards' => [
39 | 'web' => [
40 | 'driver' => 'session',
41 | 'provider' => 'users',
42 | ],
43 |
44 | 'api' => [
45 | 'driver' => 'token',
46 | 'provider' => 'users',
47 | ],
48 | ],
49 |
50 | /*
51 | |--------------------------------------------------------------------------
52 | | User Providers
53 | |--------------------------------------------------------------------------
54 | |
55 | | All authentication drivers have a user provider. This defines how the
56 | | users are actually retrieved out of your database or other storage
57 | | mechanisms used by this application to persist your user's data.
58 | |
59 | | If you have multiple user tables or models you may configure multiple
60 | | sources which represent each model / table. These sources may then
61 | | be assigned to any extra authentication guards you have defined.
62 | |
63 | | Supported: "database", "eloquent"
64 | |
65 | */
66 |
67 | 'providers' => [
68 | 'users' => [
69 | 'driver' => 'eloquent',
70 | 'model' => App\User::class,
71 | ],
72 |
73 | // 'users' => [
74 | // 'driver' => 'database',
75 | // 'table' => 'users',
76 | // ],
77 | ],
78 |
79 | /*
80 | |--------------------------------------------------------------------------
81 | | Resetting Passwords
82 | |--------------------------------------------------------------------------
83 | |
84 | | You may specify multiple password reset configurations if you have more
85 | | than one user table or model in the application and you want to have
86 | | separate password reset settings based on the specific user types.
87 | |
88 | | The expire time is the number of minutes that the reset token should be
89 | | considered valid. This security feature keeps tokens short-lived so
90 | | they have less time to be guessed. You may change this as needed.
91 | |
92 | */
93 |
94 | 'passwords' => [
95 | 'users' => [
96 | 'provider' => 'users',
97 | 'table' => 'password_resets',
98 | 'expire' => 60,
99 | ],
100 | ],
101 |
102 | ];
103 |
--------------------------------------------------------------------------------
/resources/views/barang/edit.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Tambah Barang
9 |
10 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 | @endsection
75 |
--------------------------------------------------------------------------------
/app/Http/Controllers/KategoriController.php:
--------------------------------------------------------------------------------
1 | page;
29 | return view($this->page.'/index',compact('data','no','page'));
30 | }
31 |
32 | /**
33 | * Show the form for creating a new resource.
34 | *
35 | * @return \Illuminate\Http\Response
36 | */
37 | public function create()
38 | {
39 | //
40 | $page = $this->page;
41 | return view($this->page.'/create',compact('page'));
42 | }
43 |
44 | /**
45 | * Store a newly created resource in storage.
46 | *
47 | * @param \Illuminate\Http\Request $request
48 | * @return \Illuminate\Http\Response
49 | */
50 | public function store(Request $request)
51 | {
52 | //
53 | $obj = new Obj;
54 | $obj->kategori = $request->kategori;
55 | $save = $obj->save();
56 | if ($save) {
57 | # code...
58 | Session::flash('success',$this->success.$this->insert);
59 | }
60 |
61 | return redirect('/'.$this->page);
62 | }
63 |
64 | /**
65 | * Display the specified resource.
66 | *
67 | * @param int $id
68 | * @return \Illuminate\Http\Response
69 | */
70 | public function show($id)
71 | {
72 | //
73 | }
74 |
75 | /**
76 | * Show the form for editing the specified resource.
77 | *
78 | * @param int $id
79 | * @return \Illuminate\Http\Response
80 | */
81 | public function edit($id)
82 | {
83 | //
84 | $data= Obj::find($id);
85 | $page = $this->page;
86 | return view($this->page.'/edit',compact('data','page'));
87 | }
88 |
89 | /**
90 | * Update the specified resource in storage.
91 | *
92 | * @param \Illuminate\Http\Request $request
93 | * @param int $id
94 | * @return \Illuminate\Http\Response
95 | */
96 | public function update(Request $request, $id)
97 | {
98 | //
99 | $obj = Obj::find($id);
100 | $obj->kategori = $request->kategori;
101 | $obj->save();
102 |
103 |
104 | return redirect('/'.$this->page);
105 |
106 | }
107 |
108 | /**
109 | * Remove the specified resource from storage.
110 | *
111 | * @param int $id
112 | * @return \Illuminate\Http\Response
113 | */
114 | public function destroy($id)
115 | {
116 | //
117 | $obj = Obj::find($id);
118 | $obj->delete();
119 | // Session::flash('success',);
120 | return redirect('/'.$this->page);
121 | }
122 |
123 |
124 | public function search(Request $request){
125 | $q = $request->q;
126 | $page=$this->page;
127 | if (empty($q)) {
128 | # code...
129 | return redirect('/'.$page);
130 | }
131 | $data = Obj::where('kategori','LIKE','%'.$q.'%')->paginate(10);
132 |
133 | $no=1;
134 | return view($this->page.'/search',compact('data','no','page','q'));
135 |
136 |
137 | }
138 | }
139 |
--------------------------------------------------------------------------------
/resources/views/auth/register.blade.php:
--------------------------------------------------------------------------------
1 | @extends('layouts.app')
2 |
3 | @section('content')
4 |
5 |
6 |
7 |
8 |
Register
9 |
10 |
11 |
12 | {{ csrf_field() }}
13 |
14 |
27 |
28 |
41 |
42 |
55 |
56 |
63 |
64 |
71 |
72 |
73 |
74 |
75 |
76 |
77 | @endsection
78 |
--------------------------------------------------------------------------------
/routes/web.php:
--------------------------------------------------------------------------------
1 | name('home');
18 |
19 | Route::get('/users/cari','UsersController@search');
20 | Route::resource('/users','UsersController');
21 | Route::get('/barang/cari','BarangController@search');
22 | Route::resource('/barang','BarangController');
23 | Route::get('/supplier/cari','SupplierController@search');
24 | Route::resource('/supplier','SupplierController');
25 | Route::get('/kategori/cari','KategoriController@search');
26 | Route::resource('/kategori','KategoriController');
27 |
28 | Route::get('barang-sementara/delete/{id}','BarangMasukController@remove');
29 | Route::get('barang-masuk/getBarangSementara','BarangMasukController@getBarangSementara');
30 | Route::get('barang-masuk/getBarang/{param?}','BarangMasukController@fetchBarang');
31 |
32 | Route::get('barang-masuk/cari','BarangMasukController@search');
33 | Route::post('barang-masuk/saveBarangSementara','BarangMasukController@saveBarangSementara');
34 | Route::resource('/barang-masuk','BarangMasukController');
35 |
36 | Route::get('barang-keluar/getBarangSementara','BarangKeluarController@getBarangSementara');
37 | Route::get('barang-keluar/getBarang/{param?}','BarangKeluarController@fetchBarang');
38 | Route::post('barang-keluar/saveBarangSementara','BarangKeluarController@saveBarangSementara');
39 | Route::get('barang-keluar/cari','BarangKeluarController@search');
40 | Route::resource('/barang-keluar','BarangKeluarController');
41 |
42 |
43 | Route::get('pinjam-barang/cari','PinjamBarangController@search');
44 | Route::get('pinjam-barang/kembalikan/{id}','PinjamBarangController@kembalikan');
45 | Route::post('pinjam-barang/kembalikan/{id}','PinjamBarangController@kembalikanSave');
46 | Route::get('pinjam-barang/getBarangSementara','PinjamBarangController@getBarangSementara');
47 | Route::get('pinjam-barang/getBarang/{param?}','PinjamBarangController@fetchBarang');
48 | Route::post('pinjam-barang/saveBarangSementara','PinjamBarangController@saveBarangSementara');
49 | Route::resource('/pinjam-barang','PinjamBarangController');
50 |
51 | Route::get('/stok-barang','BarangController@stok');
52 | Route::get('/stok-data','BarangController@stokData');
53 | Route::get('/database','HomeController@database');
54 | Route::get('/database/export','HomeController@export');
55 | Route::post('/database/import','HomeController@import');
56 | Route::post('/database/reset','HomeController@reset');
57 |
58 | Route::get('/laporan','LaporanController@index');
59 | Route::get('/laporan/barang-masuk/cetak','LaporanController@barangMasukCetak');
60 | Route::get('/laporan/barang-masuk','LaporanController@barangMasuk');
61 | Route::get('/laporan/barang-keluar/cetak','LaporanController@barangKeluarCetak');
62 | Route::get('/laporan/barang-keluar','LaporanController@barangKeluar');
63 | Route::get('/laporan/pinjam-barang/cetak','LaporanController@pinjamBarangCetak');
64 | Route::get('/laporan/pinjam-barang','LaporanController@pinjamBarang');
65 | Route::get('/laporan/peminjaman-barang','LaporanController@pinjamBarang');
66 |
67 |
68 |
69 | // Supplier
70 | // User
71 | // Barang
72 | // Tambah Barang Masuk
73 | // Tambah Barang Keluar
74 | // Pinjam Barang
--------------------------------------------------------------------------------
/app/Http/Controllers/UsersController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
27 | $this->middleware('admin');
28 | }
29 | public function index()
30 | {
31 | //
32 | $data = Obj::paginate(10);
33 | $no=1;
34 | $page=$this->page;
35 | return view($this->page.'/index',compact('data','no','page'));
36 | }
37 |
38 | /**
39 | * Show the form for creating a new resource.
40 | *
41 | * @return \Illuminate\Http\Response
42 | */
43 | public function create()
44 | {
45 | //
46 | $page = $this->page;
47 | return view($this->page.'/create',compact('page'));
48 | }
49 |
50 | /**
51 | * Store a newly created resource in storage.
52 | *
53 | * @param \Illuminate\Http\Request $request
54 | * @return \Illuminate\Http\Response
55 | */
56 | public function store(Request $request)
57 | {
58 | //
59 | $obj = new Obj;
60 | $obj->name = $request->name;
61 | $obj->email = $request->email;
62 | $obj->password = bcrypt($request->password);
63 | $obj->role = $request->role;
64 | $save = $obj->save();
65 | if ($save) {
66 | # code...
67 | Session::flash('success',$this->success.$this->insert);
68 | }
69 |
70 | return redirect('/'.$this->page);
71 | }
72 |
73 | /**
74 | * Display the specified resource.
75 | *
76 | * @param int $id
77 | * @return \Illuminate\Http\Response
78 | */
79 | public function show($id)
80 | {
81 | //
82 | }
83 |
84 | /**
85 | * Show the form for editing the specified resource.
86 | *
87 | * @param int $id
88 | * @return \Illuminate\Http\Response
89 | */
90 | public function edit($id)
91 | {
92 | //
93 | $data= Obj::find($id);
94 | $page = $this->page;
95 | return view($this->page.'/edit',compact('data','page'));
96 | }
97 |
98 | /**
99 | * Update the specified resource in storage.
100 | *
101 | * @param \Illuminate\Http\Request $request
102 | * @param int $id
103 | * @return \Illuminate\Http\Response
104 | */
105 | public function update(Request $request, $id)
106 | {
107 | //
108 | $obj = Obj::find($id);
109 | $obj->name = $request->name;
110 | $obj->email = $request->email;
111 | $obj->password = bcrypt($request->password);
112 | $obj->role = $request->role;
113 | $obj->save();
114 |
115 |
116 | return redirect('/'.$this->page);
117 |
118 | }
119 |
120 | /**
121 | * Remove the specified resource from storage.
122 | *
123 | * @param int $id
124 | * @return \Illuminate\Http\Response
125 | */
126 | public function destroy($id)
127 | {
128 | //
129 | $obj = Obj::find($id);
130 | $obj->delete();
131 | // Session::flash('success',);
132 | return redirect('/'.$this->page);
133 | }
134 |
135 |
136 | public function search(Request $request){
137 | $q = $request->q;
138 | $page=$this->page;
139 | if (empty($q)) {
140 | # code...
141 | return redirect('/'.$page);
142 | }
143 | $data = Obj::where('name','LIKE','%'.$q.'%')->paginate(10);
144 |
145 | $no=1;
146 | return view($this->page.'/search',compact('data','no','page'));
147 |
148 |
149 | }
150 | }
151 |
--------------------------------------------------------------------------------
/app/Http/Controllers/SupplierController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
25 |
26 | }
27 |
28 | public function index()
29 | {
30 | //
31 |
32 |
33 | $data = Obj::all();
34 | $no=1;
35 | $page=$this->page;
36 |
37 |
38 |
39 | return view($this->page.'/index',compact('data','no','page','code'));
40 | }
41 |
42 | /**
43 | * Show the form for creating a new resource.
44 | *
45 | * @return \Illuminate\Http\Response
46 | */
47 | public function create()
48 | {
49 | //
50 | $page = $this->page;
51 | $num = Obj::orderBy('created_at','desc')->count();
52 | $dataCode = Obj::orderBy('created_at','desc')->first();
53 | if ($num ==0) {
54 | $code = 'SUP001';
55 | }
56 | else{
57 | $c = $dataCode->kode;
58 | $code = substr($c, 3)+1;
59 | $code = "SUP00".$code;
60 | }
61 |
62 |
63 | return view($this->page.'/create',compact('page','code'));
64 | }
65 |
66 | /**
67 | * Store a newly created resource in storage.
68 | *
69 | * @param \Illuminate\Http\Request $request
70 | * @return \Illuminate\Http\Response
71 | */
72 | public function store(Request $request)
73 | {
74 | //
75 | $obj = new Obj;
76 | $obj->kode = $request->kode;
77 | $obj->nama = $request->nama;
78 | $obj->alamat = $request->alamat;
79 | $obj->telp = $request->telp;
80 | $obj->kota = $request->kota;
81 | $save = $obj->save();
82 | if ($save) {
83 | # code...
84 | Session::flash('success',$this->success.$this->insert);
85 | }
86 |
87 | return redirect('/'.$this->page);
88 | }
89 |
90 | /**
91 | * Display the specified resource.
92 | *
93 | * @param int $id
94 | * @return \Illuminate\Http\Response
95 | */
96 | public function show($id)
97 | {
98 | //
99 | }
100 |
101 | /**
102 | * Show the form for editing the specified resource.
103 | *
104 | * @param int $id
105 | * @return \Illuminate\Http\Response
106 | */
107 | public function edit($id)
108 | {
109 | //
110 | $data= Obj::find($id);
111 | $page = $this->page;
112 | return view($this->page.'/edit',compact('data','page'));
113 | }
114 |
115 | /**
116 | * Update the specified resource in storage.
117 | *
118 | * @param \Illuminate\Http\Request $request
119 | * @param int $id
120 | * @return \Illuminate\Http\Response
121 | */
122 | public function update(Request $request, $id)
123 | {
124 | //
125 | $obj = Obj::find($id);
126 | $obj->nama = $request->nama;
127 | $obj->alamat = $request->alamat;
128 | $obj->telp = $request->telp;
129 | $obj->kota = $request->kota;
130 | $obj->save();
131 |
132 |
133 | return redirect('/'.$this->page);
134 |
135 | }
136 |
137 | /**
138 | * Remove the specified resource from storage.
139 | *
140 | * @param int $id
141 | * @return \Illuminate\Http\Response
142 | */
143 | public function destroy($id)
144 | {
145 | //
146 | $obj = Obj::find($id);
147 | $obj->delete();
148 | // Session::flash('success',);
149 | return redirect('/'.$this->page);
150 | }
151 |
152 |
153 | public function search(Request $request){
154 | $q = $request->q;
155 | $page=$this->page;
156 | if (empty($q)) {
157 | # code...
158 | return redirect('/'.$page);
159 | }
160 | $data = Obj::where('nama','LIKE','%'.$q.'%')->orWhere('kode','LIKE','%'.$q.'%')->paginate(10);
161 |
162 | $no=1;
163 | return view($this->page.'/search',compact('data','no','page','q'));
164 |
165 |
166 | }
167 | }
168 |
--------------------------------------------------------------------------------
/config/database.php:
--------------------------------------------------------------------------------
1 | env('DB_CONNECTION', 'mysql'),
17 |
18 | /*
19 | |--------------------------------------------------------------------------
20 | | Database Connections
21 | |--------------------------------------------------------------------------
22 | |
23 | | Here are each of the database connections setup for your application.
24 | | Of course, examples of configuring each database platform that is
25 | | supported by Laravel is shown below to make development simple.
26 | |
27 | |
28 | | All database work in Laravel is done through the PHP PDO facilities
29 | | so make sure you have the driver for your particular database of
30 | | choice installed on your machine before you begin development.
31 | |
32 | */
33 |
34 | 'connections' => [
35 |
36 | 'sqlite' => [
37 | 'driver' => 'sqlite',
38 | 'database' => env('DB_DATABASE', database_path('database.sqlite')),
39 | 'prefix' => '',
40 | ],
41 |
42 | 'mysql' => [
43 | 'driver' => 'mysql',
44 | 'host' => env('DB_HOST', '127.0.0.1'),
45 | 'port' => env('DB_PORT', '3306'),
46 | 'database' => env('DB_DATABASE', 'forge'),
47 | 'username' => env('DB_USERNAME', 'forge'),
48 | 'password' => env('DB_PASSWORD', ''),
49 | 'unix_socket' => env('DB_SOCKET', ''),
50 | 'charset' => 'utf8mb4',
51 | 'collation' => 'utf8mb4_unicode_ci',
52 | 'prefix' => '',
53 | 'strict' => false,
54 | 'engine' => null,
55 | ],
56 |
57 | 'pgsql' => [
58 | 'driver' => 'pgsql',
59 | 'host' => env('DB_HOST', '127.0.0.1'),
60 | 'port' => env('DB_PORT', '5432'),
61 | 'database' => env('DB_DATABASE', 'forge'),
62 | 'username' => env('DB_USERNAME', 'forge'),
63 | 'password' => env('DB_PASSWORD', ''),
64 | 'charset' => 'utf8',
65 | 'prefix' => '',
66 | 'schema' => 'public',
67 | 'sslmode' => 'prefer',
68 | ],
69 |
70 | 'sqlsrv' => [
71 | 'driver' => 'sqlsrv',
72 | 'host' => env('DB_HOST', 'localhost'),
73 | 'port' => env('DB_PORT', '1433'),
74 | 'database' => env('DB_DATABASE', 'forge'),
75 | 'username' => env('DB_USERNAME', 'forge'),
76 | 'password' => env('DB_PASSWORD', ''),
77 | 'charset' => 'utf8',
78 | 'prefix' => '',
79 | ],
80 |
81 | ],
82 |
83 | /*
84 | |--------------------------------------------------------------------------
85 | | Migration Repository Table
86 | |--------------------------------------------------------------------------
87 | |
88 | | This table keeps track of all the migrations that have already run for
89 | | your application. Using this information, we can determine which of
90 | | the migrations on disk haven't actually been run in the database.
91 | |
92 | */
93 |
94 | 'migrations' => 'migrations',
95 |
96 | /*
97 | |--------------------------------------------------------------------------
98 | | Redis Databases
99 | |--------------------------------------------------------------------------
100 | |
101 | | Redis is an open source, fast, and advanced key-value store that also
102 | | provides a richer set of commands than a typical key-value systems
103 | | such as APC or Memcached. Laravel makes it easy to dig right in.
104 | |
105 | */
106 |
107 | 'redis' => [
108 |
109 | 'client' => 'predis',
110 |
111 | 'default' => [
112 | 'host' => env('REDIS_HOST', '127.0.0.1'),
113 | 'password' => env('REDIS_PASSWORD', null),
114 | 'port' => env('REDIS_PORT', 6379),
115 | 'database' => 0,
116 | ],
117 |
118 | ],
119 |
120 | ];
121 |
--------------------------------------------------------------------------------
/config/mail.php:
--------------------------------------------------------------------------------
1 | env('MAIL_DRIVER', 'smtp'),
20 |
21 | /*
22 | |--------------------------------------------------------------------------
23 | | SMTP Host Address
24 | |--------------------------------------------------------------------------
25 | |
26 | | Here you may provide the host address of the SMTP server used by your
27 | | applications. A default option is provided that is compatible with
28 | | the Mailgun mail service which will provide reliable deliveries.
29 | |
30 | */
31 |
32 | 'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
33 |
34 | /*
35 | |--------------------------------------------------------------------------
36 | | SMTP Host Port
37 | |--------------------------------------------------------------------------
38 | |
39 | | This is the SMTP port used by your application to deliver e-mails to
40 | | users of the application. Like the host we have set this value to
41 | | stay compatible with the Mailgun e-mail application by default.
42 | |
43 | */
44 |
45 | 'port' => env('MAIL_PORT', 587),
46 |
47 | /*
48 | |--------------------------------------------------------------------------
49 | | Global "From" Address
50 | |--------------------------------------------------------------------------
51 | |
52 | | You may wish for all e-mails sent by your application to be sent from
53 | | the same address. Here, you may specify a name and address that is
54 | | used globally for all e-mails that are sent by your application.
55 | |
56 | */
57 |
58 | 'from' => [
59 | 'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
60 | 'name' => env('MAIL_FROM_NAME', 'Example'),
61 | ],
62 |
63 | /*
64 | |--------------------------------------------------------------------------
65 | | E-Mail Encryption Protocol
66 | |--------------------------------------------------------------------------
67 | |
68 | | Here you may specify the encryption protocol that should be used when
69 | | the application send e-mail messages. A sensible default using the
70 | | transport layer security protocol should provide great security.
71 | |
72 | */
73 |
74 | 'encryption' => env('MAIL_ENCRYPTION', 'tls'),
75 |
76 | /*
77 | |--------------------------------------------------------------------------
78 | | SMTP Server Username
79 | |--------------------------------------------------------------------------
80 | |
81 | | If your SMTP server requires a username for authentication, you should
82 | | set it here. This will get used to authenticate with your server on
83 | | connection. You may also set the "password" value below this one.
84 | |
85 | */
86 |
87 | 'username' => env('MAIL_USERNAME'),
88 |
89 | 'password' => env('MAIL_PASSWORD'),
90 |
91 | /*
92 | |--------------------------------------------------------------------------
93 | | Sendmail System Path
94 | |--------------------------------------------------------------------------
95 | |
96 | | When using the "sendmail" driver to send e-mails, we will need to know
97 | | the path to where Sendmail lives on this server. A default path has
98 | | been provided here, which will work well on most of your systems.
99 | |
100 | */
101 |
102 | 'sendmail' => '/usr/sbin/sendmail -bs',
103 |
104 | /*
105 | |--------------------------------------------------------------------------
106 | | Markdown Mail Settings
107 | |--------------------------------------------------------------------------
108 | |
109 | | If you are using Markdown based email rendering, you may configure your
110 | | theme and component paths here, allowing you to customize the design
111 | | of the emails. Or, you may simply stick with the Laravel defaults!
112 | |
113 | */
114 |
115 | 'markdown' => [
116 | 'theme' => 'default',
117 |
118 | 'paths' => [
119 | resource_path('views/vendor/mail'),
120 | ],
121 | ],
122 |
123 | ];
124 |
--------------------------------------------------------------------------------
/public/on-server/css/fa-svg-with-js.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | .svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:a 2s infinite linear;animation:a 2s infinite linear}.fa-pulse{-webkit-animation:a 1s infinite steps(8);animation:a 1s infinite steps(8)}@-webkit-keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1em}.svg-inline--fa.fa-stack-2x{height:2em;width:2em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}
--------------------------------------------------------------------------------
/public/uploads/on-server/css/fa-svg-with-js.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.6 by @fontawesome - http://fontawesome.com
3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | .svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:a 2s infinite linear;animation:a 2s infinite linear}.fa-pulse{-webkit-animation:a 1s infinite steps(8);animation:a 1s infinite steps(8)}@-webkit-keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1em}.svg-inline--fa.fa-stack-2x{height:2em;width:2em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}
--------------------------------------------------------------------------------
/app/Http/Controllers/BarangController.php:
--------------------------------------------------------------------------------
1 | middleware('auth');
27 |
28 | }
29 | public function index()
30 | {
31 | //
32 | $data = Obj::paginate(10);
33 | $no=1;
34 | $page=$this->page;
35 | return view($this->page.'/index',compact('data','no','page'));
36 | }
37 |
38 | /**
39 | * Show the form for creating a new resource
40 | *
41 | * @return \Illuminate\Http\Response
42 | */
43 | public function create()
44 | {
45 | //
46 |
47 |
48 | $num = Obj::orderBy('created_at','desc')->count();
49 | $dataCode = Obj::orderBy('created_at','desc')->first();
50 | if ($num ==0) {
51 | $code = 'BRG001';
52 | }
53 | else{
54 | $c = $dataCode->kode;
55 | $code = substr($c, 3)+1;
56 | $code = "BRG00".$code;
57 | }
58 |
59 | $categories = Kategori::all();
60 | $page = $this->page;
61 | return view($this->page.'/create',compact('page','code','categories'));
62 | }
63 |
64 | /**
65 | * Store a newly created resource in storage.
66 | *
67 | * @param \Illuminate\Http\Request $request
68 | * @return \Illuminate\Http\Response
69 | */
70 | public function store(Request $request)
71 | {
72 | //
73 | if (!empty($request->foto)) {
74 | # code...
75 |
76 |
77 | $file = $request->file('foto');
78 | $name = time().'.'.$file->getClientOriginalExtension();
79 | $file->move(public_path('uploads'),$name);
80 |
81 |
82 | }
83 | // $request->foto->move(public_path('uploads'));
84 |
85 |
86 | $obj = new Obj;
87 | $obj->kode = $request->kode;
88 | $obj->nama = $request->nama;
89 | $obj->lokasi = $request->lokasi;
90 | $obj->kategori = $request->kategori;
91 | if (!empty($request->foto)) {
92 | # code...
93 | $obj->foto = $name;
94 | }
95 | $obj->jml_barang = $request->jml_barang;
96 | $obj->spesifikasi = $request->spesifikasi;
97 | $obj->kondisi = $request->kondisi;
98 | $obj->sumber_dana = $request->sumber_dana;
99 | $save = $obj->save();
100 |
101 |
102 |
103 |
104 | $stok = new Stok;
105 | $stok->kode_barang = $request->kode;
106 | $stok->jml_barang_masuk= $request->jml_barang;
107 | $stok->total = $request->jml_barang;
108 | $stok->save();
109 |
110 |
111 |
112 | if ($save) {
113 | # code...
114 | Session::flash('success',$this->success.$this->insert);
115 | }
116 |
117 | return redirect('/'.$this->page);
118 | }
119 |
120 | /**
121 | * Display the specified resource.
122 | *
123 | * @param int $id
124 | * @return \Illuminate\Http\Response
125 | */
126 | public function show($id)
127 | {
128 | //
129 |
130 | $data = Obj::find($id);
131 |
132 | return view($this->page.'/detail',compact('data'));
133 | }
134 |
135 | /**
136 | * Show the form for editing the specified resource.
137 | *
138 | * @param int $id
139 | * @return \Illuminate\Http\Response
140 | */
141 | public function edit($id)
142 | {
143 | //
144 | $data= Obj::find($id);
145 | $categories = Kategori::all();
146 | $page = $this->page;
147 | return view($this->page.'/edit',compact('data','page','categories'));
148 | }
149 |
150 | /**
151 | * Update the specified resource in storage.
152 | *
153 | * @param \Illuminate\Http\Request $request
154 | * @param int $id
155 | * @return \Illuminate\Http\Response
156 | */
157 | public function update(Request $request, $id)
158 | {
159 | //
160 |
161 | if (!empty($request->foto)) {
162 | # code...
163 |
164 |
165 | $file = $request->file('foto');
166 | $name = time().'.'.$file->getClientOriginalExtension();
167 | $file->move(public_path('uploads'),$name);
168 |
169 |
170 | }
171 | $obj = Obj::find($id);
172 | $obj->kode = $request->kode;
173 | $obj->nama = $request->nama;
174 | $obj->lokasi = $request->lokasi;
175 | $obj->kategori = $request->kategori;
176 | if (!empty($request->foto)) {
177 | # code...
178 | $obj->foto = $name;
179 | }
180 | $obj->jml_barang = $request->jml_barang;
181 | $obj->spesifikasi = $request->spesifikasi;
182 | $obj->kondisi = $request->kondisi;
183 | $obj->sumber_dana = $request->sumber_dana;
184 | $save = $obj->save();
185 | $obj->save();
186 |
187 |
188 | return redirect('/'.$this->page);
189 |
190 | }
191 |
192 | /**
193 | * Remove the specified resource from storage.
194 | *
195 | * @param int $id
196 | * @return \Illuminate\Http\Response
197 | */
198 | public function destroy($id)
199 | {
200 | //
201 | $obj = Obj::find($id);
202 | $obj->delete();
203 | // Session::flash('success',);
204 | return redirect('/'.$this->page);
205 | }
206 |
207 |
208 | public function search(Request $request){
209 | $q = $request->q;
210 | $page=$this->page;
211 | if (empty($q)) {
212 | # code...
213 | return redirect('/'.$page);
214 | }
215 | $data = Obj::where('nama','LIKE','%'.$q.'%')->paginate(10);
216 |
217 | $no=1;
218 | return view($this->page.'/search',compact('data','no','page','q'));
219 |
220 |
221 | }
222 |
223 | public function stok(){
224 | return view('pro');
225 | }
226 |
227 |
228 | }
229 |
--------------------------------------------------------------------------------
/resources/lang/en/validation.php:
--------------------------------------------------------------------------------
1 | 'The :attribute must be accepted.',
17 | 'active_url' => 'The :attribute is not a valid URL.',
18 | 'after' => 'The :attribute must be a date after :date.',
19 | 'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
20 | 'alpha' => 'The :attribute may only contain letters.',
21 | 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
22 | 'alpha_num' => 'The :attribute may only contain letters and numbers.',
23 | 'array' => 'The :attribute must be an array.',
24 | 'before' => 'The :attribute must be a date before :date.',
25 | 'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
26 | 'between' => [
27 | 'numeric' => 'The :attribute must be between :min and :max.',
28 | 'file' => 'The :attribute must be between :min and :max kilobytes.',
29 | 'string' => 'The :attribute must be between :min and :max characters.',
30 | 'array' => 'The :attribute must have between :min and :max items.',
31 | ],
32 | 'boolean' => 'The :attribute field must be true or false.',
33 | 'confirmed' => 'The :attribute confirmation does not match.',
34 | 'date' => 'The :attribute is not a valid date.',
35 | 'date_format' => 'The :attribute does not match the format :format.',
36 | 'different' => 'The :attribute and :other must be different.',
37 | 'digits' => 'The :attribute must be :digits digits.',
38 | 'digits_between' => 'The :attribute must be between :min and :max digits.',
39 | 'dimensions' => 'The :attribute has invalid image dimensions.',
40 | 'distinct' => 'The :attribute field has a duplicate value.',
41 | 'email' => 'The :attribute must be a valid email address.',
42 | 'exists' => 'The selected :attribute is invalid.',
43 | 'file' => 'The :attribute must be a file.',
44 | 'filled' => 'The :attribute field must have a value.',
45 | 'image' => 'The :attribute must be an image.',
46 | 'in' => 'The selected :attribute is invalid.',
47 | 'in_array' => 'The :attribute field does not exist in :other.',
48 | 'integer' => 'The :attribute must be an integer.',
49 | 'ip' => 'The :attribute must be a valid IP address.',
50 | 'ipv4' => 'The :attribute must be a valid IPv4 address.',
51 | 'ipv6' => 'The :attribute must be a valid IPv6 address.',
52 | 'json' => 'The :attribute must be a valid JSON string.',
53 | 'max' => [
54 | 'numeric' => 'The :attribute may not be greater than :max.',
55 | 'file' => 'The :attribute may not be greater than :max kilobytes.',
56 | 'string' => 'The :attribute may not be greater than :max characters.',
57 | 'array' => 'The :attribute may not have more than :max items.',
58 | ],
59 | 'mimes' => 'The :attribute must be a file of type: :values.',
60 | 'mimetypes' => 'The :attribute must be a file of type: :values.',
61 | 'min' => [
62 | 'numeric' => 'The :attribute must be at least :min.',
63 | 'file' => 'The :attribute must be at least :min kilobytes.',
64 | 'string' => 'The :attribute must be at least :min characters.',
65 | 'array' => 'The :attribute must have at least :min items.',
66 | ],
67 | 'not_in' => 'The selected :attribute is invalid.',
68 | 'numeric' => 'The :attribute must be a number.',
69 | 'present' => 'The :attribute field must be present.',
70 | 'regex' => 'The :attribute format is invalid.',
71 | 'required' => 'The :attribute field is required.',
72 | 'required_if' => 'The :attribute field is required when :other is :value.',
73 | 'required_unless' => 'The :attribute field is required unless :other is in :values.',
74 | 'required_with' => 'The :attribute field is required when :values is present.',
75 | 'required_with_all' => 'The :attribute field is required when :values is present.',
76 | 'required_without' => 'The :attribute field is required when :values is not present.',
77 | 'required_without_all' => 'The :attribute field is required when none of :values are present.',
78 | 'same' => 'The :attribute and :other must match.',
79 | 'size' => [
80 | 'numeric' => 'The :attribute must be :size.',
81 | 'file' => 'The :attribute must be :size kilobytes.',
82 | 'string' => 'The :attribute must be :size characters.',
83 | 'array' => 'The :attribute must contain :size items.',
84 | ],
85 | 'string' => 'The :attribute must be a string.',
86 | 'timezone' => 'The :attribute must be a valid zone.',
87 | 'unique' => 'The :attribute has already been taken.',
88 | 'uploaded' => 'The :attribute failed to upload.',
89 | 'url' => 'The :attribute format is invalid.',
90 |
91 | /*
92 | |--------------------------------------------------------------------------
93 | | Custom Validation Language Lines
94 | |--------------------------------------------------------------------------
95 | |
96 | | Here you may specify custom validation messages for attributes using the
97 | | convention "attribute.rule" to name the lines. This makes it quick to
98 | | specify a specific custom language line for a given attribute rule.
99 | |
100 | */
101 |
102 | 'custom' => [
103 | 'attribute-name' => [
104 | 'rule-name' => 'custom-message',
105 | ],
106 | ],
107 |
108 | /*
109 | |--------------------------------------------------------------------------
110 | | Custom Validation Attributes
111 | |--------------------------------------------------------------------------
112 | |
113 | | The following language lines are used to swap attribute place-holders
114 | | with something more reader friendly such as E-Mail Address instead
115 | | of "email". This simply helps us make messages a little cleaner.
116 | |
117 | */
118 |
119 | 'attributes' => [],
120 |
121 | ];
122 |
--------------------------------------------------------------------------------