Page Menu
Home
DevCentral
Search
Configure Global Search
Log In
Files
F11722488
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
16 KB
Referenced Files
None
Subscribers
None
View Options
diff --git a/composer.json b/composer.json
index e89c9a1..4d7c710 100644
--- a/composer.json
+++ b/composer.json
@@ -1,45 +1,44 @@
{
"name": "nasqueron/auth-grove",
"description": "Authentication grove to provide unified login and SSO.",
"keywords": ["nasqueron", "auth", "authentication", "login", "sso"],
"license": "BSD",
"type": "project",
"require": {
- "laravel/framework": "5.0.*",
- "keruald/globalfunctions": "0.1.*"
+ "laravel/framework": "5.0.*"
},
"require-dev": {
"phpunit/phpunit": "~4.0",
"phpspec/phpspec": "~2.1"
},
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"AuthGrove\\": "app/"
}
},
"autoload-dev": {
"classmap": [
"tests/TestCase.php"
]
},
"scripts": {
"post-install-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php -r \"copy('.env.example', '.env');\"",
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
}
}
diff --git a/resources/assets/less/login/login-form.less b/resources/assets/less/login/login-form.less
index d1c7aa6..fdafe05 100644
--- a/resources/assets/less/login/login-form.less
+++ b/resources/assets/less/login/login-form.less
@@ -1,203 +1,199 @@
/* -------------------------------------------------------------
Auth Grove - Login form
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Author: Dereckson, cesiztel
Tags: Bootstrap
Filename: login.css
Source: login-form.less
Licence: MIT
------------------------------------------------------------- */
/* -------------------------------------------------------------
Table of contents
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
:: Card
:: Form styles
*/
/* -------------------------------------------------------------
Card
The card is defined as the area of the screen offering the
content. It has the shape of a card.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
@media screen and (min-width: 350px) {
.card-container.card {
width: 350px;
padding: 0.25rem 2rem 2rem 2rem;
}
.card {
padding: 1.8rem 2rem 2rem;
}
}
.card {
margin: 4rem auto 1.5rem auto;
background-color: @shadow-medium;
color: white;
font-weight: 300 !important;
.border-radius(2px);
.box-shadow(0px; 2px; 2px; @shadow-light);
}
/* -------------------------------------------------------------
Form styles
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
.btn {
font-weight: 700;
height: 36px;
.user-select(none);
cursor: default;
}
.profile-img-card {
display: block;
width: 96px;
height: 96px;
margin: 0 auto;
background-color: rgba(255, 255, 255, 0.3);
.border-radius(50%);
.box-shadow(0; 10px; 5px; @shadow-light);
}
/**
* Form styles
*/
.profile-name-card {
margin: 10px 0 0;
min-height: 1em;
font-size: 16px;
font-weight: bold;
text-align: center;
}
.reauth-username {
display: block;
margin-bottom: 10px;
box-sizing: border-box;
color: #404040;
line-height: 2;
font-size: 14px;
text-align: center;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
-input {
+.form-signin #inputUsername,
+.form-signin #inputPassword {
+ height: 44px;
+
+ direction: ltr;
+ font-size: 16px;
+}
+
+input, #inputUsername {
border-color: rgba(30, 30, 30, 0.5) !important;
background-color: rgba(0, 0, 0, 0.4) !important;
color: white !important;
font-weight: 300;
}
.form-signin input[type=email],
.form-signin input[type=password],
.form-signin input[type=text],
.form-signin button {
display: block;
box-sizing: border-box;
position: relative;
-
width: 100%;
- height: 44px;
- z-index: 1;
-
- direction: ltr;
- font-size: 16px;
-
margin-bottom: 10px;
+ z-index: 1;
}
.form-signin .form-control:focus {
border-color: rgb(104, 145, 162);
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgb(104, 145, 162);
box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgb(104, 145, 162);
}
-.form-register {
- label {
- margin-top: 1em !important;
- }
-}
-
#identity {
margin-bottom: 2em;
}
.btn-signin {
height: 36px;
padding: 0px;
border: none;
.border-radius(3px);
background-color: #52768C;
font-weight: 700;
font-size: 14px;
transition: all 0.218s;
}
.btn-signin:hover,
.btn-signin:active,
.btn-signin:focus {
background-color: rgb(104, 145, 162);
}
.errors {
margin-bottom: 1.5em;
font-weight: 400;
}
.action-link {
color: #90C9E0;
}
.action-link:hover,
.action-link:active,
.action-link:focus{
color: #97D2EB;
}
/* -------------------------------------------------------------
Color adjustment for Pandemonium mode
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
body.pandemonium {
.btn-signin {
background-color: #7D1A07 !important;
}
.btn-signin:hover,
.btn-signin:active,
.btn-signin:focus {
background-color: #921809 !important;
}
.action-link {
color: rgb(176, 31, 10) !important;
}
.action-link:hover,
.action-link:active,
.action-link:focus{
color: #921809 !important;
}
}
diff --git a/resources/lang/en/login.php b/resources/lang/en/login.php
index d57c994..2517d7b 100644
--- a/resources/lang/en/login.php
+++ b/resources/lang/en/login.php
@@ -1,38 +1,26 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Login
|--------------------------------------------------------------------------
|
| The following language lines contain the fields names, error messages and
| other strings related to the authentication itself.
|
*/
//Login form
"username" => "Username",
"password" => "Password",
"loginButton" => "Sign in",
"remember" => "Remember me",
"passwordRecovery" => "Password recovery options",
- "registerAccount" => "Register an account", //link
+ "registerAccount" => "Register an account",
"blankAvatarAlt" => "A door, as a blank avatar",
-
- //Register form
- "usernamePlaceholder" => "Username. Will be used as login.",
- "fullnamePlaceholder" => "Full name. For example, your real name.",
- "emailPlaceholder" => "username@domain.tld",
- "passwordPlaceholder" => "********",
- "passwordConfirmPlaceholder" => "Password (confirm)",
-
- "fullname" => "Full name",
- "email" => "E-mail address",
- "passwordBoth" => "Password (twice)",
- "registerButton" => "Register",
//Error messages
"failedLogin" => "These credentials do not match our records.",
];
diff --git a/resources/views/app.blade.php b/resources/views/app.blade.php
index 7c1794c..b5c6e2c 100644
--- a/resources/views/app.blade.php
+++ b/resources/views/app.blade.php
@@ -1,63 +1,62 @@
<!DOCTYPE html>
<html lang="en">
<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>
- <link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.4/css/bootstrap.min.css" rel='stylesheet' type='text/css'>
<link href="{{ asset('/css/app.css') }}" rel="stylesheet">
<!-- Fonts -->
<link href='//fonts.googleapis.com/css?family=Roboto:400,300' rel='stylesheet' type='text/css'>
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle Navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Laravel</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li><a href="{{ url('/') }}">Home</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
@if (Auth::guest())
<li><a href="{{ url('/auth/login') }}">Login</a></li>
<li><a href="{{ url('/auth/register') }}">Register</a></li>
@else
<li class="dropdown">
- <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">{{ Auth::user()->getName() }} <span class="caret"></span></a>
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">{{ Auth::user()->name }} <span class="caret"></span></a>
<ul class="dropdown-menu" role="menu">
<li><a href="{{ url('/auth/logout') }}">Logout</a></li>
</ul>
</li>
@endif
</ul>
</div>
</div>
</nav>
@yield('content')
<!-- Scripts -->
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/js/bootstrap.min.js"></script>
</body>
</html>
diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php
index 71d5edc..3468f1f 100644
--- a/resources/views/auth/login.blade.php
+++ b/resources/views/auth/login.blade.php
@@ -1,33 +1,33 @@
@extends('auth.master')
@section('card-content')
- <h1 class="title">@lang('app.title')</h1>
<img id="profile-img" class="profile-img-card" src="/images/profile-img-blank.png" alt="@lang('login.blankAvatarAlt')" />
<form class="form-signin" role="form" method="POST" action="{{ url('/auth/login') }}">
<div id="identity">
<span id="reauth-username" class="reauth-username"></span>
<input type="text" name="username" id="inputUsername" class="form-control"
value="{{ old('username') }}" placeholder="@lang('login.username')" required autofocus />
<input type="password" name="password" id="inputPassword" class="form-control" placeholder="@lang('login.password')" required />
</div>@if (count($errors) > 0)
<p class="errors">
@foreach ($errors->all() as $error)
{{ $error }}<br />
@endforeach
<a href="{{ url('/auth/recover') }}" class="action-link">@lang('login.passwordRecovery')</a>
</p>
@endif
<div id="remember" class="checkbox">
<label><input type="checkbox" name="remember">@lang('login.remember')</label>
</div>
<input type="hidden" name="_token" value="{{ csrf_token() }}" />
<button class="btn btn-lg btn-primary btn-block btn-signin" type="submit">@lang('login.loginButton')</button>
</form>
<!-- /form -->
@if (count($errors) == 0)
<a href="{{ url('/auth/recover') }}" class="action-link">@lang('login.passwordRecovery')</a><br />
@endif
- <a href="{{ url('/auth/register') }}" class="action-link">@lang('login.registerAccount')</a>
-@endsection
+
+ <a href="{{ url('/auth/register') }}" class="action-link">@lang('login.registerAccount')</a>
+@stop
diff --git a/resources/views/auth/master.blade.php b/resources/views/auth/master.blade.php
index 91103e8..2e14241 100644
--- a/resources/views/auth/master.blade.php
+++ b/resources/views/auth/master.blade.php
@@ -1,22 +1,23 @@
<!DOCTYPE html>
<html>
<head>
<title>@lang('app.title')</title>
<link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.4/css/bootstrap.min.css" rel='stylesheet' type='text/css' />
<link href="/css/login.css" rel='stylesheet' type='text/css' />
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body class="sviatiHory">
<div class="card card-container">
+ <h1 class="title">@lang('app.title')</h1>
@yield('card-content')
</div>
<!-- /card-container -->
<script src="//cdnjs.cloudflare.com/ajax/libs/mousetrap/1.4.6/mousetrap.min.js"></script>
<script src="/js/login.js"></script>
</body>
</html>
diff --git a/resources/views/auth/register.blade.php b/resources/views/auth/register.blade.php
index 20e8b7e..21771e4 100644
--- a/resources/views/auth/register.blade.php
+++ b/resources/views/auth/register.blade.php
@@ -1,33 +1,65 @@
-@extends('auth.master')
+@extends('app')
-@section('card-content')
- <h1 class="title">@lang('login.registerAccount')</h1>
- <form class="form-signin form-register" role="form" method="POST" action="{{ url('/auth/register') }}">
- <div id="identity">
- <span id="reauth-username" class="reauth-username"></span>
- <label for="inputUsername">@lang('login.username')</label>
- <input type="text" name="username" id="inputUsername" class="form-control"
- value="{{ old('username') }}" placeholder="@lang('login.usernamePlaceholder')" required autofocus />
- <label for="inputFullname">@lang('login.fullname')</label>
- <input type="text" name="fullname" id="inputFullname" class="form-control"
- value="{{ old('fullname') }}" placeholder="@lang('login.fullnamePlaceholder')" autofocus />
- <label for="inputEmail">@lang('login.email')</label>
- <input type="email" name="email" id="inputEmail" class="form-control"
- value="{{ old('email') }}" placeholder="@lang('login.emailPlaceholder')" required autofocus />
- <label for="inputPassword">@lang('login.passwordBoth')</label>
- <input type="password" name="password" id="inputPassword" class="form-control" placeholder="@lang('login.passwordPlaceholder')" required />
- <input type="password" name="password_confirmation" id="inputPasswordConfirm" class="form-control" placeholder="@lang('login.passwordConfirmPlaceholder')" required />
- </div>@if (count($errors) > 0)
+@section('content')
+<div class="container-fluid">
+ <div class="row">
+ <div class="col-md-8 col-md-offset-2">
+ <div class="panel panel-default">
+ <div class="panel-heading">Register</div>
+ <div class="panel-body">
+ @if (count($errors) > 0)
+ <div class="alert alert-danger">
+ <strong>Whoops!</strong> There were some problems with your input.<br><br>
+ <ul>
+ @foreach ($errors->all() as $error)
+ <li>{{ $error }}</li>
+ @endforeach
+ </ul>
+ </div>
+ @endif
- <p class="errors">
-@foreach ($errors->all() as $error)
- {{ $error }}<br />
-@endforeach
- </p>
- @endif
+ <form class="form-horizontal" role="form" method="POST" action="{{ url('/auth/register') }}">
+ <input type="hidden" name="_token" value="{{ csrf_token() }}">
- <input type="hidden" name="_token" value="{{ csrf_token() }}" />
- <button class="btn btn-lg btn-primary btn-block btn-signin" type="submit">@lang('login.registerButton')</button>
- </form>
- <!-- /form -->
+ <div class="form-group">
+ <label class="col-md-4 control-label">Name</label>
+ <div class="col-md-6">
+ <input type="text" class="form-control" name="name" value="{{ old('name') }}">
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-md-4 control-label">E-Mail Address</label>
+ <div class="col-md-6">
+ <input type="email" class="form-control" name="email" value="{{ old('email') }}">
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-md-4 control-label">Password</label>
+ <div class="col-md-6">
+ <input type="password" class="form-control" name="password">
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-md-4 control-label">Confirm Password</label>
+ <div class="col-md-6">
+ <input type="password" class="form-control" name="password_confirmation">
+ </div>
+ </div>
+
+ <div class="form-group">
+ <div class="col-md-6 col-md-offset-4">
+ <button type="submit" class="btn btn-primary">
+ Register
+ </button>
+ </div>
+ </div>
+ </form>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
@endsection
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Thu, Sep 18, 02:39 (17 h, 27 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2989890
Default Alt Text
(16 KB)
Attached To
Mode
rGROVE Auth Grove
Attached
Detach File
Event Timeline
Log In to Comment