mirror of
https://github.com/cydrobolt/polr.git
synced 2024-09-19 15:11:40 +02:00
Complete sign up workflow, todo activation
This commit is contained in:
parent
72f221ccd0
commit
47744ef271
8
app/Helpers/AdminHelper.php
Normal file
8
app/Helpers/AdminHelper.php
Normal file
@ -0,0 +1,8 @@
|
||||
<?php
|
||||
namespace App\Helpers;
|
||||
|
||||
class AdminHelper {
|
||||
public static function pass() {
|
||||
|
||||
}
|
||||
}
|
@ -30,18 +30,21 @@ class UserHelper {
|
||||
}
|
||||
|
||||
public static function checkCredentials($username, $password) {
|
||||
$hashed_password = Hash::make($password);
|
||||
|
||||
$user = User::where('active', 1)
|
||||
->where('username', $username)
|
||||
->where('password', $hashed_password)
|
||||
->first();
|
||||
|
||||
if ($user == null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$correct_password = Hash::check($password, $user->password);
|
||||
|
||||
if (!$correct_password) {
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
return true;
|
||||
return ['username' => $username, 'role' => $user->role];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2,13 +2,15 @@
|
||||
namespace App\Http\Controllers;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class IndexController extends Controller {
|
||||
class AdminController extends Controller {
|
||||
/**
|
||||
* Show the admin panel, and process admin AJAX requests.
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function displayAdminPage(Request $request) {
|
||||
$role = session('role');
|
||||
|
||||
return view('admin');
|
||||
}
|
||||
}
|
||||
|
@ -5,6 +5,7 @@ use Mail;
|
||||
use App\Models\User;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Helpers\CryptoHelper;
|
||||
use App\Helpers\UserHelper;
|
||||
|
||||
class UserController extends Controller {
|
||||
/**
|
||||
@ -31,8 +32,9 @@ class UserController extends Controller {
|
||||
|
||||
$credentials_valid = UserHelper::checkCredentials($username, $password);
|
||||
|
||||
if ($credentials_valid){
|
||||
if ($credentials_valid != false) {
|
||||
// log user in
|
||||
$role = $credentials_valid['role'];
|
||||
$request->session()->put('username', $username);
|
||||
return redirect()->route('index');
|
||||
}
|
||||
@ -79,7 +81,7 @@ class UserController extends Controller {
|
||||
$user = new User;
|
||||
$user->username = $username;
|
||||
$user->password = $hashed_password;
|
||||
$user->recovery_key = $random_key;
|
||||
$user->recovery_key = $recovery_key;
|
||||
$user->active = 0;
|
||||
$user->ip = $ip;
|
||||
|
||||
@ -87,7 +89,7 @@ class UserController extends Controller {
|
||||
if ($acct_activation_needed == false) {
|
||||
// if no activation is necessary
|
||||
$user->active = 1;
|
||||
return view('notice', [
|
||||
$response = view('notice', [
|
||||
'message' => 'Thanks for signing up! You may now log in.'
|
||||
]);
|
||||
}
|
||||
@ -98,9 +100,12 @@ class UserController extends Controller {
|
||||
], function ($m) use ($user) {
|
||||
$m->to($user->email, $user->username)->subject(env('APP_NAME') . ' account activation');
|
||||
});
|
||||
return view('notice', [
|
||||
$response = view('notice', [
|
||||
'message' => 'Thanks for signing up! Please confirm your email to activate your account.'
|
||||
]);
|
||||
}
|
||||
$user->save();
|
||||
|
||||
return $response;
|
||||
}
|
||||
}
|
||||
|
@ -8,11 +8,11 @@
|
||||
<div class='col-md-6'>
|
||||
<h2 class='title'>Register</h2>
|
||||
|
||||
<form action='handle-register.php' method='POST'>
|
||||
<form action='{{route('psignup')}}' method='POST'>
|
||||
Username: <input type='text' name='username' class='form-control form-field' placeholder='Username' />
|
||||
Password: <input type='password' name='password' class='form-control form-field' placeholder='Password' />
|
||||
Email: <input type='email' name='email' class='form-control form-field' placeholder='Email' />
|
||||
|
||||
<input type="hidden" name='_token' value='{{csrf_token()}}' />
|
||||
<input type="submit" class="btn btn-default btn-success" value="Register"/>
|
||||
<p class='login-prompt'>
|
||||
<small>Already have an account? <a href='{{route('login')}}'>Login</a></small>
|
||||
|
@ -17,13 +17,12 @@
|
||||
<li class="visible-xs"><a href="{{route('admin')}}">Dashboard</a></li>
|
||||
</ul>
|
||||
<ul id="navbar" class="nav pull-right navbar-nav hidden-xs">
|
||||
@if (env('POLR_REGISTRATION') == true)
|
||||
<li><a href="{{route('signup')}}">Sign Up</a></li>
|
||||
@endif
|
||||
|
||||
<li class="divider-vertical"></li>
|
||||
|
||||
@if (empty(session('username')))
|
||||
@if (env('POLR_REGISTRATION') == true)
|
||||
<li><a href="{{route('signup')}}">Sign Up</a></li>
|
||||
@endif
|
||||
<li class="dropdown">
|
||||
<a class="dropdown-toggle" href="#" data-toggle="dropdown">Sign In <strong class="caret"></strong></a>
|
||||
<div class="dropdown-menu pull-right login-dropdown-menu" id="dropdown">
|
||||
|
Loading…
Reference in New Issue
Block a user