├── trivia-web-service
├── public
│ ├── favicon.ico
│ ├── robots.txt
│ ├── .htaccess
│ ├── index.php
│ └── svg
│ │ ├── 404.svg
│ │ ├── 503.svg
│ │ ├── 403.svg
│ │ └── 500.svg
├── database
│ ├── .gitignore
│ ├── seeds
│ │ └── DatabaseSeeder.php
│ ├── migrations
│ │ ├── 2014_10_12_100000_create_password_resets_table.php
│ │ ├── 2018_11_19_131431_create_players_table.php
│ │ └── 2014_10_12_000000_create_users_table.php
│ └── factories
│ │ └── UserFactory.php
├── bootstrap
│ ├── cache
│ │ └── .gitignore
│ └── app.php
├── storage
│ ├── logs
│ │ └── .gitignore
│ ├── app
│ │ ├── public
│ │ │ └── .gitignore
│ │ └── .gitignore
│ └── framework
│ │ ├── sessions
│ │ └── .gitignore
│ │ ├── testing
│ │ └── .gitignore
│ │ ├── views
│ │ └── .gitignore
│ │ ├── cache
│ │ ├── data
│ │ │ └── .gitignore
│ │ └── .gitignore
│ │ └── .gitignore
├── .gitattributes
├── app
│ ├── Player.php
│ ├── Http
│ │ ├── Middleware
│ │ │ ├── EncryptCookies.php
│ │ │ ├── CheckForMaintenanceMode.php
│ │ │ ├── TrimStrings.php
│ │ │ ├── TrustProxies.php
│ │ │ ├── Authenticate.php
│ │ │ ├── VerifyCsrfToken.php
│ │ │ ├── RedirectIfAuthenticated.php
│ │ │ └── AuthenticateWithOkta.php
│ │ ├── Controllers
│ │ │ ├── Controller.php
│ │ │ ├── Auth
│ │ │ │ ├── ForgotPasswordController.php
│ │ │ │ ├── LoginController.php
│ │ │ │ ├── ResetPasswordController.php
│ │ │ │ ├── VerificationController.php
│ │ │ │ └── RegisterController.php
│ │ │ └── PlayerController.php
│ │ ├── Resources
│ │ │ ├── PlayerCollection.php
│ │ │ └── Player.php
│ │ └── Kernel.php
│ ├── Providers
│ │ ├── BroadcastServiceProvider.php
│ │ ├── AppServiceProvider.php
│ │ ├── AuthServiceProvider.php
│ │ ├── EventServiceProvider.php
│ │ └── RouteServiceProvider.php
│ ├── User.php
│ ├── Console
│ │ └── Kernel.php
│ └── Exceptions
│ │ └── Handler.php
├── tests
│ ├── TestCase.php
│ ├── Unit
│ │ └── ExampleTest.php
│ ├── Feature
│ │ └── ExampleTest.php
│ └── CreatesApplication.php
├── .gitignore
├── .editorconfig
├── resources
│ ├── sass
│ │ ├── app.scss
│ │ └── _variables.scss
│ ├── lang
│ │ └── en
│ │ │ ├── pagination.php
│ │ │ ├── auth.php
│ │ │ ├── passwords.php
│ │ │ └── validation.php
│ ├── js
│ │ ├── components
│ │ │ └── ExampleComponent.vue
│ │ ├── app.js
│ │ └── bootstrap.js
│ └── views
│ │ └── welcome.blade.php
├── routes
│ ├── web.php
│ ├── channels.php
│ ├── console.php
│ └── api.php
├── webpack.mix.js
├── server.php
├── .env.example
├── package.json
├── config
│ ├── view.php
│ ├── services.php
│ ├── hashing.php
│ ├── broadcasting.php
│ ├── filesystems.php
│ ├── logging.php
│ ├── queue.php
│ ├── cache.php
│ ├── auth.php
│ ├── database.php
│ ├── mail.php
│ ├── session.php
│ └── app.php
├── phpunit.xml
├── artisan
└── composer.json
├── trivia-web-client-vue
├── babel.config.js
├── public
│ ├── favicon.ico
│ └── index.html
├── src
│ ├── assets
│ │ └── logo.png
│ ├── config.js
│ ├── main.js
│ └── components
│ │ ├── PlayerForm.vue
│ │ ├── Dashboard.vue
│ │ └── TriviaGame.vue
├── .gitignore
├── README.md
└── package.json
├── README.md
└── LICENSE
/trivia-web-service/public/favicon.ico:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/trivia-web-service/database/.gitignore:
--------------------------------------------------------------------------------
1 | *.sqlite
2 |
--------------------------------------------------------------------------------
/trivia-web-service/bootstrap/cache/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/trivia-web-service/public/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
--------------------------------------------------------------------------------
/trivia-web-service/storage/logs/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/trivia-web-service/storage/app/public/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/trivia-web-service/storage/app/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !public/
3 | !.gitignore
4 |
--------------------------------------------------------------------------------
/trivia-web-service/storage/framework/sessions/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/trivia-web-service/storage/framework/testing/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/trivia-web-service/storage/framework/views/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/trivia-web-service/storage/framework/cache/data/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/trivia-web-service/storage/framework/cache/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !data/
3 | !.gitignore
4 |
--------------------------------------------------------------------------------
/trivia-web-client-vue/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: [
3 | '@vue/app'
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/trivia-web-client-vue/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oktadev/okta-php-laravel-vue-crud-example/HEAD/trivia-web-client-vue/public/favicon.ico
--------------------------------------------------------------------------------
/trivia-web-client-vue/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oktadev/okta-php-laravel-vue-crud-example/HEAD/trivia-web-client-vue/src/assets/logo.png
--------------------------------------------------------------------------------
/trivia-web-client-vue/src/config.js:
--------------------------------------------------------------------------------
1 | export const API_BASE_URL = 'http://localhost:8000/api';
2 | export const TRIVIA_ENDPOINT = 'http://jservice.io/api/random?count=1';
--------------------------------------------------------------------------------
/trivia-web-service/.gitattributes:
--------------------------------------------------------------------------------
1 | * text=auto
2 | *.css linguist-vendored
3 | *.scss linguist-vendored
4 | *.js linguist-vendored
5 | CHANGELOG.md export-ignore
6 |
--------------------------------------------------------------------------------
/trivia-web-service/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 |
--------------------------------------------------------------------------------
/trivia-web-service/app/Player.php:
--------------------------------------------------------------------------------
1 | call(UsersTableSeeder::class);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/trivia-web-service/app/Http/Middleware/EncryptCookies.php:
--------------------------------------------------------------------------------
1 | assertTrue(true);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/trivia-web-service/resources/sass/_variables.scss:
--------------------------------------------------------------------------------
1 |
2 | // Body
3 | $body-bg: #f8fafc;
4 |
5 | // Typography
6 | $font-family-sans-serif: "Nunito", sans-serif;
7 | $font-size-base: 0.9rem;
8 | $line-height-base: 1.6;
9 |
10 | // Colors
11 | $blue: #3490dc;
12 | $indigo: #6574cd;
13 | $purple: #9561e2;
14 | $pink: #f66D9b;
15 | $red: #e3342f;
16 | $orange: #f6993f;
17 | $yellow: #ffed4a;
18 | $green: #38c172;
19 | $teal: #4dc0b5;
20 | $cyan: #6cb2eb;
21 |
--------------------------------------------------------------------------------
/trivia-web-service/app/Http/Controllers/Controller.php:
--------------------------------------------------------------------------------
1 | get('/');
18 |
19 | $response->assertStatus(200);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/trivia-web-service/tests/CreatesApplication.php:
--------------------------------------------------------------------------------
1 | make(Kernel::class)->bootstrap();
19 |
20 | return $app;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/trivia-web-service/app/Providers/BroadcastServiceProvider.php:
--------------------------------------------------------------------------------
1 | $this->collection
19 | ];
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/trivia-web-service/app/Http/Middleware/TrustProxies.php:
--------------------------------------------------------------------------------
1 | expectsJson()) {
18 | return route('login');
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/trivia-web-service/routes/channels.php:
--------------------------------------------------------------------------------
1 | id === (int) $id;
16 | });
17 |
--------------------------------------------------------------------------------
/trivia-web-service/app/Http/Middleware/VerifyCsrfToken.php:
--------------------------------------------------------------------------------
1 | '« Previous',
17 | 'next' => 'Next »',
18 |
19 | ];
20 |
--------------------------------------------------------------------------------
/trivia-web-service/routes/console.php:
--------------------------------------------------------------------------------
1 | comment(Inspiring::quote());
18 | })->describe('Display an inspiring quote');
19 |
--------------------------------------------------------------------------------
/trivia-web-service/server.php:
--------------------------------------------------------------------------------
1 |
8 | */
9 |
10 | $uri = urldecode(
11 | parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)
12 | );
13 |
14 | // This file allows us to emulate Apache's "mod_rewrite" functionality from the
15 | // built-in PHP web server. This provides a convenient way to test a Laravel
16 | // application without having installed a "real" web server software here.
17 | if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) {
18 | return false;
19 | }
20 |
21 | require_once __DIR__.'/public/index.php';
22 |
--------------------------------------------------------------------------------
/trivia-web-service/app/Http/Middleware/RedirectIfAuthenticated.php:
--------------------------------------------------------------------------------
1 | check()) {
21 | return redirect('/home');
22 | }
23 |
24 | return $next($request);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/trivia-web-service/public/.htaccess:
--------------------------------------------------------------------------------
1 |
| ID | 9 |Name | 10 |Answers | 11 |Points | 12 |Actions | 13 |
|---|---|---|---|---|
| {{ player.id }} | 19 |{{ player.name }} | 20 |{{ player.answers }} | 21 |{{ player.points }} | 22 |23 | 24 | 25 | 26 | | 27 |
38 | {{ question.question }} 39 |
40 |41 | {{ question.category.title }} 42 |
43 |