Squashed commit of the following:
commit 7daedd241246bd11f371a8c93394796f8f5ec4cb Author: Jonny Barnes <jonny@jonnybarnes.uk> Date: Fri Aug 11 21:01:17 2017 +0100 Bring in the latest changes from upstream repo laravel/laravel
This commit is contained in:
parent
b695b5be8c
commit
2b5e17ab4e
27 changed files with 132 additions and 55 deletions
16
.env.example
16
.env.example
|
@ -1,10 +1,8 @@
|
||||||
|
APP_NAME=Laravel
|
||||||
APP_ENV=production
|
APP_ENV=production
|
||||||
APP_KEY=SomeRandomString # Leave this
|
APP_KEY=SomeRandomString # Leave this
|
||||||
APP_DEBUG=false
|
APP_DEBUG=false
|
||||||
APP_LOG_LEVEL=warning
|
APP_LOG_LEVEL=warning
|
||||||
APP_TIMEZONE=UTC
|
|
||||||
APP_LANG=en
|
|
||||||
APP_LOG=daily
|
|
||||||
|
|
||||||
DB_CONNECTION=pgsql
|
DB_CONNECTION=pgsql
|
||||||
DB_HOST=127.0.0.1
|
DB_HOST=127.0.0.1
|
||||||
|
@ -13,6 +11,7 @@ DB_DATABASE=
|
||||||
DB_USERNAME=
|
DB_USERNAME=
|
||||||
DB_PASSWORD=
|
DB_PASSWORD=
|
||||||
|
|
||||||
|
BROADCAST_DRIVER=log
|
||||||
CACHE_DRIVER=file
|
CACHE_DRIVER=file
|
||||||
SESSION_DRIVER=file
|
SESSION_DRIVER=file
|
||||||
QUEUE_DRIVER=sync
|
QUEUE_DRIVER=sync
|
||||||
|
@ -27,8 +26,10 @@ MAIL_PORT=2525
|
||||||
MAIL_USERNAME=null
|
MAIL_USERNAME=null
|
||||||
MAIL_PASSWORD=null
|
MAIL_PASSWORD=null
|
||||||
MAIL_ENCRYPTION=null
|
MAIL_ENCRYPTION=null
|
||||||
MAILGUN_DOMAIN=null
|
|
||||||
MAILGUN_SECRET=null
|
PUSHER_APP_ID=
|
||||||
|
PUSHER_APP_KEY=
|
||||||
|
PUSHER_APP_SECRET=
|
||||||
|
|
||||||
AWS_S3_KEY=your-key
|
AWS_S3_KEY=your-key
|
||||||
AWS_S3_SECRET=your-secret
|
AWS_S3_SECRET=your-secret
|
||||||
|
@ -54,3 +55,8 @@ SCOUT_DRIVER=pgsql
|
||||||
PIWIK=false
|
PIWIK=false
|
||||||
PIWIK_ID=1
|
PIWIK_ID=1
|
||||||
PIWIK_URL=https://analytics.jmb.lv/piwik.php
|
PIWIK_URL=https://analytics.jmb.lv/piwik.php
|
||||||
|
|
||||||
|
APP_TIMEZONE=UTC
|
||||||
|
APP_LANG=en
|
||||||
|
APP_LOG=daily
|
||||||
|
SECURE_SESSION_COOKIE=true
|
||||||
|
|
1
.gitattributes
vendored
1
.gitattributes
vendored
|
@ -2,3 +2,4 @@
|
||||||
*.css linguist-vendored
|
*.css linguist-vendored
|
||||||
*.scss linguist-vendored
|
*.scss linguist-vendored
|
||||||
*.js linguist-vendored
|
*.js linguist-vendored
|
||||||
|
CHANGELOG.md export-ignore
|
||||||
|
|
5
.gitignore
vendored
5
.gitignore
vendored
|
@ -1,11 +1,14 @@
|
||||||
/node_modules
|
/node_modules
|
||||||
/public/storage
|
|
||||||
/public/hot
|
/public/hot
|
||||||
|
/public/storage
|
||||||
/storage/*.key
|
/storage/*.key
|
||||||
/vendor
|
/vendor
|
||||||
/.idea
|
/.idea
|
||||||
|
/.vagrant
|
||||||
Homestead.yaml
|
Homestead.yaml
|
||||||
Homestead.json
|
Homestead.json
|
||||||
|
.npm-debug.log
|
||||||
|
yarn-error.log
|
||||||
.env
|
.env
|
||||||
/public/files
|
/public/files
|
||||||
/public/keybase.txt
|
/public/keybase.txt
|
||||||
|
|
|
@ -21,7 +21,7 @@ class LoginController extends Controller
|
||||||
use AuthenticatesUsers;
|
use AuthenticatesUsers;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Where to redirect users after login / registration.
|
* Where to redirect users after login.
|
||||||
*
|
*
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
|
@ -34,6 +34,6 @@ class LoginController extends Controller
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->middleware('guest', ['except' => 'logout']);
|
$this->middleware('guest')->except('logout');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@ class RegisterController extends Controller
|
||||||
use RegistersUsers;
|
use RegistersUsers;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Where to redirect users after login / registration.
|
* Where to redirect users after registration.
|
||||||
*
|
*
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
|
@ -48,9 +48,9 @@ class RegisterController extends Controller
|
||||||
protected function validator(array $data)
|
protected function validator(array $data)
|
||||||
{
|
{
|
||||||
return Validator::make($data, [
|
return Validator::make($data, [
|
||||||
'name' => 'required|max:255',
|
'name' => 'required|string|max:255',
|
||||||
'email' => 'required|email|max:255|unique:users',
|
'email' => 'required|string|email|max:255|unique:users',
|
||||||
'password' => 'required|min:6|confirmed',
|
'password' => 'required|string|min:6|confirmed',
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -30,6 +30,7 @@ class Kernel extends HttpKernel
|
||||||
\App\Http\Middleware\EncryptCookies::class,
|
\App\Http\Middleware\EncryptCookies::class,
|
||||||
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
|
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
|
||||||
\Illuminate\Session\Middleware\StartSession::class,
|
\Illuminate\Session\Middleware\StartSession::class,
|
||||||
|
// \Illuminate\Session\Middleware\AuthenticateSession::class,
|
||||||
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
|
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
|
||||||
\App\Http\Middleware\VerifyCsrfToken::class,
|
\App\Http\Middleware\VerifyCsrfToken::class,
|
||||||
\Illuminate\Routing\Middleware\SubstituteBindings::class,
|
\Illuminate\Routing\Middleware\SubstituteBindings::class,
|
||||||
|
@ -57,8 +58,8 @@ class Kernel extends HttpKernel
|
||||||
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
|
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
|
||||||
'can' => \Illuminate\Auth\Middleware\Authorize::class,
|
'can' => \Illuminate\Auth\Middleware\Authorize::class,
|
||||||
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
|
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
|
||||||
'myauth' => \App\Http\Middleware\MyAuthMiddleware::class,
|
|
||||||
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
||||||
'micropub.token' => \App\Http\Middleware\VerifyMicropubToken::class,
|
'micropub.token' => \App\Http\Middleware\VerifyMicropubToken::class,
|
||||||
|
'myauth' => \App\Http\Middleware\MyAuthMiddleware::class,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,7 +18,7 @@ class RedirectIfAuthenticated
|
||||||
public function handle($request, Closure $next, $guard = null)
|
public function handle($request, Closure $next, $guard = null)
|
||||||
{
|
{
|
||||||
if (Auth::guard($guard)->check()) {
|
if (Auth::guard($guard)->check()) {
|
||||||
return redirect('/');
|
return redirect('/home');
|
||||||
}
|
}
|
||||||
|
|
||||||
return $next($request);
|
return $next($request);
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
namespace App\Providers;
|
namespace App\Providers;
|
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Gate;
|
||||||
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
|
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
|
||||||
|
|
||||||
class AuthServiceProvider extends ServiceProvider
|
class AuthServiceProvider extends ServiceProvider
|
||||||
|
|
|
@ -19,7 +19,7 @@ class EventServiceProvider extends ServiceProvider
|
||||||
];
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Register any other events for your application.
|
* Register any events for your application.
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -19,7 +19,6 @@ class RouteServiceProvider extends ServiceProvider
|
||||||
/**
|
/**
|
||||||
* Define your route model bindings, pattern filters, etc.
|
* Define your route model bindings, pattern filters, etc.
|
||||||
*
|
*
|
||||||
* @param \Illuminate\Routing\Router $router
|
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function boot()
|
public function boot()
|
||||||
|
|
2
artisan
2
artisan
|
@ -40,7 +40,7 @@ $status = $kernel->handle(
|
||||||
| Shutdown The Application
|
| Shutdown The Application
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
|
|
|
||||||
| Once Artisan has finished running. We will fire off the shutdown events
|
| Once Artisan has finished running, we will fire off the shutdown events
|
||||||
| so that any final work may be done by the application before we shut
|
| so that any final work may be done by the application before we shut
|
||||||
| down the process. This is the last thing to happen to the request.
|
| down the process. This is the last thing to happen to the request.
|
||||||
|
|
|
|
||||||
|
|
|
@ -9,8 +9,8 @@ define('LARAVEL_START', microtime(true));
|
||||||
|
|
|
|
||||||
| Composer provides a convenient, automatically generated class loader
|
| Composer provides a convenient, automatically generated class loader
|
||||||
| for our application. We just need to utilize it! We'll require it
|
| for our application. We just need to utilize it! We'll require it
|
||||||
| into the script here so that we do not have to worry about the
|
| into the script here so we do not have to manually load any of
|
||||||
| loading of any our classes "manually". Feels great to relax.
|
| our application's PHP classes. It just feels great to relax.
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -90,6 +90,7 @@ return [
|
||||||
| they have less time to be guessed. You may change this as needed.
|
| they have less time to be guessed. You may change this as needed.
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'passwords' => [
|
'passwords' => [
|
||||||
'users' => [
|
'users' => [
|
||||||
'provider' => 'users',
|
'provider' => 'users',
|
||||||
|
|
|
@ -67,6 +67,17 @@ return [
|
||||||
'sslmode' => 'prefer',
|
'sslmode' => 'prefer',
|
||||||
],
|
],
|
||||||
|
|
||||||
|
'sqlsrv' => [
|
||||||
|
'driver' => 'sqlsrv',
|
||||||
|
'host' => env('DB_HOST', 'localhost'),
|
||||||
|
'port' => env('DB_PORT', '1433'),
|
||||||
|
'database' => env('DB_DATABASE', 'forge'),
|
||||||
|
'username' => env('DB_USERNAME', 'forge'),
|
||||||
|
'password' => env('DB_PASSWORD', ''),
|
||||||
|
'charset' => 'utf8',
|
||||||
|
'prefix' => '',
|
||||||
|
],
|
||||||
|
|
||||||
'travis' => [
|
'travis' => [
|
||||||
'driver' => 'pgsql',
|
'driver' => 'pgsql',
|
||||||
'host' => 'localhost',
|
'host' => 'localhost',
|
||||||
|
@ -106,7 +117,7 @@ return [
|
||||||
|
|
||||||
'redis' => [
|
'redis' => [
|
||||||
|
|
||||||
'cluster' => false,
|
'client' => 'predis',
|
||||||
|
|
||||||
'default' => [
|
'default' => [
|
||||||
'host' => env('REDIS_HOST', 'localhost'),
|
'host' => env('REDIS_HOST', 'localhost'),
|
||||||
|
|
|
@ -13,7 +13,7 @@ return [
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'default' => 'local',
|
'default' => env('FILESYSTEM_DRIVER', 'local'),
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
@ -26,7 +26,7 @@ return [
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'cloud' => 's3',
|
'cloud' => env('FILESYSTEM_CLOUD', 's3'),
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
|
|
@ -113,6 +113,7 @@ return [
|
||||||
|
|
||||||
'markdown' => [
|
'markdown' => [
|
||||||
'theme' => 'default',
|
'theme' => 'default',
|
||||||
|
|
||||||
'paths' => [
|
'paths' => [
|
||||||
resource_path('views/vendor/mail'),
|
resource_path('views/vendor/mail'),
|
||||||
],
|
],
|
||||||
|
|
|
@ -8,7 +8,7 @@ return [
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
|
|
|
||||||
| This file is for storing the credentials for third party services such
|
| This file is for storing the credentials for third party services such
|
||||||
| as Stripe, Mailgun, Mandrill, and others. This file provides a sane
|
| as Stripe, Mailgun, SparkPost and others. This file provides a sane
|
||||||
| default location for this type of information, allowing packages
|
| default location for this type of information, allowing packages
|
||||||
| to have a conventional place to find your various credentials.
|
| to have a conventional place to find your various credentials.
|
||||||
|
|
|
|
||||||
|
|
|
@ -161,7 +161,7 @@ return [
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'secure' => (config('app.env') != 'testing'),
|
'secure' => env('SESSION_SECURE_COOKIE', false),
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
|
|
@ -13,10 +13,12 @@
|
||||||
|
|
||||||
/** @var \Illuminate\Database\Eloquent\Factory $factory */
|
/** @var \Illuminate\Database\Eloquent\Factory $factory */
|
||||||
$factory->define(App\User::class, function (Faker\Generator $faker) {
|
$factory->define(App\User::class, function (Faker\Generator $faker) {
|
||||||
|
static $password;
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'name' => $faker->name,
|
'name' => $faker->name,
|
||||||
'email' => $faker->safeEmail,
|
'email' => $faker->safeEmail,
|
||||||
'password' => bcrypt(str_random(10)),
|
'password' => $password ?: $password = bcrypt('secret'),
|
||||||
'remember_token' => str_random(10),
|
'remember_token' => str_random(10),
|
||||||
];
|
];
|
||||||
});
|
});
|
||||||
|
|
|
@ -9,10 +9,10 @@
|
||||||
processIsolation="false"
|
processIsolation="false"
|
||||||
stopOnFailure="false">
|
stopOnFailure="false">
|
||||||
<testsuites>
|
<testsuites>
|
||||||
<testsuite name="Feature Tests">
|
<testsuite name="Feature">
|
||||||
<directory suffix="Test.php">./tests/Feature</directory>
|
<directory suffix="Test.php">./tests/Feature</directory>
|
||||||
</testsuite>
|
</testsuite>
|
||||||
<testsuite name="Unit Tests">
|
<testsuite name="Unit">
|
||||||
<directory suffix="Test.php">./tests/Unit</directory>
|
<directory suffix="Test.php">./tests/Unit</directory>
|
||||||
</testsuite>
|
</testsuite>
|
||||||
</testsuites>
|
</testsuites>
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
| Composer provides a convenient, automatically generated class loader for
|
| Composer provides a convenient, automatically generated class loader for
|
||||||
| our application. We just need to utilize it! We'll simply require it
|
| our application. We just need to utilize it! We'll simply require it
|
||||||
| into the script here so that we don't have to worry about manual
|
| into the script here so that we don't have to worry about manual
|
||||||
| loading any of our classes later on. It feels nice to relax.
|
| loading any of our classes later on. It feels great to relax.
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,6 @@ return [
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'previous' => '« Previous',
|
'previous' => '« Previous',
|
||||||
'next' => 'Next »',
|
'next' => 'Next »',
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
|
@ -16,11 +16,13 @@ return [
|
||||||
'accepted' => 'The :attribute must be accepted.',
|
'accepted' => 'The :attribute must be accepted.',
|
||||||
'active_url' => 'The :attribute is not a valid URL.',
|
'active_url' => 'The :attribute is not a valid URL.',
|
||||||
'after' => 'The :attribute must be a date after :date.',
|
'after' => 'The :attribute must be a date after :date.',
|
||||||
|
'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
|
||||||
'alpha' => 'The :attribute may only contain letters.',
|
'alpha' => 'The :attribute may only contain letters.',
|
||||||
'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
|
'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
|
||||||
'alpha_num' => 'The :attribute may only contain letters and numbers.',
|
'alpha_num' => 'The :attribute may only contain letters and numbers.',
|
||||||
'array' => 'The :attribute must be an array.',
|
'array' => 'The :attribute must be an array.',
|
||||||
'before' => 'The :attribute must be a date before :date.',
|
'before' => 'The :attribute must be a date before :date.',
|
||||||
|
'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
|
||||||
'between' => [
|
'between' => [
|
||||||
'numeric' => 'The :attribute must be between :min and :max.',
|
'numeric' => 'The :attribute must be between :min and :max.',
|
||||||
'file' => 'The :attribute must be between :min and :max kilobytes.',
|
'file' => 'The :attribute must be between :min and :max kilobytes.',
|
||||||
|
@ -38,13 +40,15 @@ return [
|
||||||
'distinct' => 'The :attribute field has a duplicate value.',
|
'distinct' => 'The :attribute field has a duplicate value.',
|
||||||
'email' => 'The :attribute must be a valid email address.',
|
'email' => 'The :attribute must be a valid email address.',
|
||||||
'exists' => 'The selected :attribute is invalid.',
|
'exists' => 'The selected :attribute is invalid.',
|
||||||
'file' => 'The :attribute must be a file.'
|
'file' => 'The :attribute must be a file.',
|
||||||
'filled' => 'The :attribute field is required.',
|
'filled' => 'The :attribute field must have a value.',
|
||||||
'image' => 'The :attribute must be an image.',
|
'image' => 'The :attribute must be an image.',
|
||||||
'in' => 'The selected :attribute is invalid.',
|
'in' => 'The selected :attribute is invalid.',
|
||||||
'in_array' => 'The :attribute field does not exist in :other.',
|
'in_array' => 'The :attribute field does not exist in :other.',
|
||||||
'integer' => 'The :attribute must be an integer.',
|
'integer' => 'The :attribute must be an integer.',
|
||||||
'ip' => 'The :attribute must be a valid IP address.',
|
'ip' => 'The :attribute must be a valid IP address.',
|
||||||
|
'ipv4' => 'The :attribute must be a valid IPv4 address.',
|
||||||
|
'ipv6' => 'The :attribute must be a valid IPv6 address.',
|
||||||
'json' => 'The :attribute must be a valid JSON string.',
|
'json' => 'The :attribute must be a valid JSON string.',
|
||||||
'max' => [
|
'max' => [
|
||||||
'numeric' => 'The :attribute may not be greater than :max.',
|
'numeric' => 'The :attribute may not be greater than :max.',
|
||||||
|
@ -53,6 +57,7 @@ return [
|
||||||
'array' => 'The :attribute may not have more than :max items.',
|
'array' => 'The :attribute may not have more than :max items.',
|
||||||
],
|
],
|
||||||
'mimes' => 'The :attribute must be a file of type: :values.',
|
'mimes' => 'The :attribute must be a file of type: :values.',
|
||||||
|
'mimetypes' => 'The :attribute must be a file of type: :values.',
|
||||||
'min' => [
|
'min' => [
|
||||||
'numeric' => 'The :attribute must be at least :min.',
|
'numeric' => 'The :attribute must be at least :min.',
|
||||||
'file' => 'The :attribute must be at least :min kilobytes.',
|
'file' => 'The :attribute must be at least :min kilobytes.',
|
||||||
|
@ -80,6 +85,7 @@ return [
|
||||||
'string' => 'The :attribute must be a string.',
|
'string' => 'The :attribute must be a string.',
|
||||||
'timezone' => 'The :attribute must be a valid zone.',
|
'timezone' => 'The :attribute must be a valid zone.',
|
||||||
'unique' => 'The :attribute has already been taken.',
|
'unique' => 'The :attribute has already been taken.',
|
||||||
|
'uploaded' => 'The :attribute failed to upload.',
|
||||||
'url' => 'The :attribute format is invalid.',
|
'url' => 'The :attribute format is invalid.',
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -1,44 +1,86 @@
|
||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html>
|
<html lang="{{ app()->getLocale() }}">
|
||||||
<head>
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
||||||
<title>Laravel</title>
|
<title>Laravel</title>
|
||||||
|
|
||||||
<link href="https://fonts.googleapis.com/css?family=Lato:100" rel="stylesheet" type="text/css">
|
<!-- Fonts -->
|
||||||
|
<link href="https://fonts.googleapis.com/css?family=Raleway:100,600" rel="stylesheet" type="text/css">
|
||||||
|
|
||||||
|
<!-- Styles -->
|
||||||
<style>
|
<style>
|
||||||
html, body {
|
html, body {
|
||||||
height: 100%;
|
background-color: #fff;
|
||||||
}
|
color: #636b6f;
|
||||||
|
font-family: 'Raleway', sans-serif;
|
||||||
body {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
width: 100%;
|
|
||||||
display: table;
|
|
||||||
font-weight: 100;
|
font-weight: 100;
|
||||||
font-family: 'Lato';
|
height: 100vh;
|
||||||
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
.full-height {
|
||||||
.container {
|
height: 100vh;
|
||||||
text-align: center;
|
}
|
||||||
display: table-cell;
|
.flex-center {
|
||||||
vertical-align: middle;
|
align-items: center;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
.position-ref {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.top-right {
|
||||||
|
position: absolute;
|
||||||
|
right: 10px;
|
||||||
|
top: 18px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.content {
|
.content {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
display: inline-block;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
font-size: 96px;
|
font-size: 84px;
|
||||||
|
}
|
||||||
|
.links > a {
|
||||||
|
color: #636b6f;
|
||||||
|
padding: 0 25px;
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: 600;
|
||||||
|
letter-spacing: .1rem;
|
||||||
|
text-decoration: none;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
.m-b-md {
|
||||||
|
margin-bottom: 30px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<div class="flex-center position-ref full-height">
|
||||||
|
@if (Route::has('login'))
|
||||||
|
<div class="top-right links">
|
||||||
|
@auth
|
||||||
|
<a href="{{ url('/home') }}">Home</a>
|
||||||
|
@else
|
||||||
|
<a href="{{ route('login') }}">Login</a>
|
||||||
|
<a href="{{ route('register') }}">Register</a>
|
||||||
|
@endauth
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="title">Laravel 5</div>
|
<div class="title m-b-md">
|
||||||
|
Laravel
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="links">
|
||||||
|
<a href="https://laravel.com/docs">Documentation</a>
|
||||||
|
<a href="https://laracasts.com">Laracasts</a>
|
||||||
|
<a href="https://laravel-news.com">News</a>
|
||||||
|
<a href="https://forge.laravel.com">Forge</a>
|
||||||
|
<a href="https://github.com/laravel/laravel">GitHub</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
* Laravel - A PHP Framework For Web Artisans
|
* Laravel - A PHP Framework For Web Artisans
|
||||||
*
|
*
|
||||||
* @package Laravel
|
* @package Laravel
|
||||||
* @author Taylor Otwell <taylorotwell@gmail.com>
|
* @author Taylor Otwell <taylor@laravel.com>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
$uri = urldecode(
|
$uri = urldecode(
|
||||||
|
|
|
@ -14,7 +14,9 @@ trait CreatesApplication
|
||||||
public function createApplication()
|
public function createApplication()
|
||||||
{
|
{
|
||||||
$app = require __DIR__.'/../bootstrap/app.php';
|
$app = require __DIR__.'/../bootstrap/app.php';
|
||||||
|
|
||||||
$app->make(Kernel::class)->bootstrap();
|
$app->make(Kernel::class)->bootstrap();
|
||||||
|
|
||||||
return $app;
|
return $app;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,6 +17,7 @@ class ExampleTest extends TestCase
|
||||||
public function testBasicTest()
|
public function testBasicTest()
|
||||||
{
|
{
|
||||||
$response = $this->get('/');
|
$response = $this->get('/');
|
||||||
|
|
||||||
$response->assertStatus(200);
|
$response->assertStatus(200);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue