diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..91be243c --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +vendor +node_modules diff --git a/Dockerfile b/Dockerfile index a6a73f12..dad9c2bd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ -FROM php:7 -RUN apt-get update -y && apt-get install -y openssl zip unzip git zlib1g-dev +FROM php:7.1.3 +RUN apt-get update -y && apt-get install -y openssl zip unzip git zlib1g-dev netcat mysql-client RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer RUN docker-php-ext-install pdo pdo_mysql zip WORKDIR /app @@ -8,6 +8,5 @@ RUN composer install COPY wait.sh /usr/local/bin/wait.sh RUN chmod +x /usr/local/bin/wait.sh - -CMD /usr/local/bin/wait.sh && php artisan serve --host=0.0.0.0 --port=8000 +CMD /usr/local/bin/wait.sh && composer dumpautoload && php artisan migrate && php artisan db:seed && php artisan serve --host=0.0.0.0 --port=8000 EXPOSE 8000 diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index b743b223..098d40f3 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -13,6 +13,7 @@ class DatabaseSeeder extends Seeder { $this->call(UsersTableSeeder::class); $this->call(RolesAndPermissionsSeeder::class); + $this->call(UserRoleSeeder::class); $this->call(RateTableSeeder::class); $this->call(BookTableSeeder::class); } diff --git a/database/seeds/UserRoleSeeder.php b/database/seeds/UserRoleSeeder.php new file mode 100644 index 00000000..b55e7019 --- /dev/null +++ b/database/seeds/UserRoleSeeder.php @@ -0,0 +1,25 @@ +first(); + $admin = User::where("email", "=", "admin@example.com")->first(); + + $role_user = Role::where('name','=','member')->first(); + $role_admin = Role::where('name','=','admin')->first(); + + $user->attachRole($role_user); + $admin->attachRole($role_admin); + } +} diff --git a/database/seeds/UsersTableSeeder.php b/database/seeds/UsersTableSeeder.php index 3d6a73d9..ac5c6584 100644 --- a/database/seeds/UsersTableSeeder.php +++ b/database/seeds/UsersTableSeeder.php @@ -1,6 +1,7 @@ delete(); - + $users = array( - ['name' => 'Ryan Chenkie', 'email' => 'ryanchenkie@gmail.com', 'password' => Hash::make('secret')], - ['name' => 'Chris Sevilleja', 'email' => 'chris@scotch.io', 'password' => Hash::make('secret')], - ['name' => 'Holly Lloyd', 'email' => 'holly@scotch.io', 'password' => Hash::make('secret')], - ['name' => 'Adnan Kukic', 'email' => 'adnan@scotch.io', 'password' => Hash::make('secret')], + ['name' => 'User', 'email' => 'user@example.com', 'password' => Hash::make('secret')], + ['name' => 'Admin', 'email' => 'admin@example.com', 'password' => Hash::make('secret')], ); foreach ($users as $user) { - User::create($user); + $newUser = User::create($user); } diff --git a/docker-compose.yml b/docker-compose.yml index e7aa352c..48d64a54 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,18 +1,5 @@ -version: '2' +version: '3' services: - app: - build: . - ports: - - "8000:8000" - volumes: - - .:/app - env_file: .env - working_dir: /app - command: bash -c 'sh /usr/local/bin/wait.sh && php artisan migrate && php artisan db:seed && php artisan serve --host 0.0.0.0' - depends_on: - - mysql - links: - - mysql mysql: build: context: ./docker/mysql @@ -30,6 +17,20 @@ services: ports: - "3306:3306" + app: + build: . + ports: + - "8000:8000" + volumes: + - .:/app + env_file: .env + working_dir: /app + depends_on: + - mysql + links: + - mysql + + phpmyadmin: depends_on: - mysql diff --git a/resources/assets/js/middleware/auth.js b/resources/assets/js/middleware/auth.js index d1bb7af7..1302a8b7 100644 --- a/resources/assets/js/middleware/auth.js +++ b/resources/assets/js/middleware/auth.js @@ -3,7 +3,11 @@ import store from '~/store' export default async (to, from, next) => { if (!store.getters['auth/check']) { next({ name: 'login' }) - } else { + } + else if (store.getters['auth/user'].role == "admin"){ + next({ name : 'admin.home' }) + } + else { next() } } diff --git a/resources/assets/js/pages/auth/login.vue b/resources/assets/js/pages/auth/login.vue index aae968cf..e35dc708 100644 --- a/resources/assets/js/pages/auth/login.vue +++ b/resources/assets/js/pages/auth/login.vue @@ -55,6 +55,7 @@