Merge branch 'master' of https://github.com/sebathefox/skolehjem-webapp
This commit is contained in:
commit
2dba1fd8f7
|
@ -68,17 +68,18 @@ class UserController extends Controller
|
||||||
"email" => "required|email|unique:users",
|
"email" => "required|email|unique:users",
|
||||||
"password" => "required|max:60",
|
"password" => "required|max:60",
|
||||||
"phone" => "required|unique:users",
|
"phone" => "required|unique:users",
|
||||||
"roles" => "max:255"
|
|
||||||
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// Log::debug("FINISHED VALIDATION?");
|
// Log::debug("FINISHED VALIDATION?");
|
||||||
|
|
||||||
|
$rolez = $request->input("roles", [ "User" ]);
|
||||||
|
|
||||||
$user = new User($data);
|
$user = new User($data);
|
||||||
|
|
||||||
// Log::debug("CREATED USER [NOT PERSISTED YET]");
|
// Log::debug("CREATED USER [NOT PERSISTED YET]");
|
||||||
|
|
||||||
$user->assignRole([ "R1", "R2" ]);
|
$user->assignRole($rolez);
|
||||||
$user->save();
|
$user->save();
|
||||||
|
|
||||||
// Log::debug("SAVED USER");
|
// Log::debug("SAVED USER");
|
||||||
|
@ -166,16 +167,16 @@ class UserController extends Controller
|
||||||
//$user->save();
|
//$user->save();
|
||||||
} else { // Else if you're not on the admin site (user site)
|
} else { // Else if you're not on the admin site (user site)
|
||||||
if ($request->input('password') != null) { // If you're editing the password
|
if ($request->input('password') != null) { // If you're editing the password
|
||||||
if ($request->input('password') != $request->input('confirmpassword')) { // If new password and new password confirm is not the same, go back.
|
if ($request->input('password') != $request->input('confirmpassword')) { // If new password and new password confirm is not the same, go back with fail message.
|
||||||
return Response::detect("users.editpass");
|
return redirect()->route("users.accounteditpass")->with('error#notsamepass', '<p class="text-center">Der stod ikke det samme i `Nyt Password` & `Bekræft Nyt Password`!</p>');
|
||||||
} elseif (!Hash::check($request->input('oldpassword'), $user->password)) { // If the written current password and current password in DB is not the same, go back.
|
} elseif (!Hash::check($request->input('oldpassword'), $user->password)) { // If the written current password and current password in DB is not the same, go back with fail message.
|
||||||
return Response::detect("users.editpass");
|
return redirect()->route("users.accounteditpass")->with('error#oldpass', '<p class="text-center">Det indtastede password i `Nuværende Password` er ikke dit nuværende password!</p>');
|
||||||
} else { // If new password and current password is the same AND current written and current DB password is the same. Then update and logout.
|
} else { // If new password and current password is the same AND current written and current DB password is the same. Then update and logout.
|
||||||
/** @var User $user */
|
/** @var User $user */
|
||||||
$user->update($data);
|
$user->update($data);
|
||||||
Auth::logout();
|
Auth::logout();
|
||||||
|
|
||||||
return redirect()->route("users.login");
|
return redirect()->route("users.login")->with('success#passwordchange', '<p class="text-center">Dit password er hermed ændret!</p>');
|
||||||
}
|
}
|
||||||
} else { // Else if you're not editing the password but anything else (Email, Phone Number). Then update user.
|
} else { // Else if you're not editing the password but anything else (Email, Phone Number). Then update user.
|
||||||
$user->update($data);
|
$user->update($data);
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\UserEvent;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Http\Response;
|
||||||
|
|
||||||
|
class UserEventController extends Controller
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update the specified resource in storage.
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Http\Request $request
|
||||||
|
* @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
|
||||||
|
*/
|
||||||
|
public function create(Request $request)
|
||||||
|
{
|
||||||
|
// Get written data from events.index
|
||||||
|
$data = $request->validate([
|
||||||
|
"user_id" => "required|max:255",
|
||||||
|
"event_id" => "required|max:255"
|
||||||
|
]);
|
||||||
|
|
||||||
|
// Check the UserEvent table if there is a row that has the user_id AND the event_id
|
||||||
|
$getTableInfo = UserEvent::where('user_id', $request->user_id)
|
||||||
|
->where('event_id', $request->event_id)->get();
|
||||||
|
|
||||||
|
// If the row has both, then go back and show an error - Cause you're not allowed to be on the same event twice.
|
||||||
|
if (count($getTableInfo) > 0)
|
||||||
|
return redirect()->route("events.index")->with('error#' . $request->event_id, '<p class="text-center">Du har allerede tilmeldt dig denne Aktivitet!</p>');
|
||||||
|
|
||||||
|
// If not, then it keeps going and saves and shows a success message
|
||||||
|
$UserEvent = new UserEvent($data);
|
||||||
|
$UserEvent->save();
|
||||||
|
|
||||||
|
return redirect()->route("events.index")->with('signup#' . $request->event_id, '<p class="text-center">Du er hermed tilmeldt denne aktivitet!</p>');
|
||||||
|
}
|
||||||
|
}
|
|
@ -6,5 +6,13 @@ use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
class UserEvent extends Model
|
class UserEvent extends Model
|
||||||
{
|
{
|
||||||
//
|
/**
|
||||||
|
* The attributes that are mass assignable.
|
||||||
|
*
|
||||||
|
* @var array
|
||||||
|
*/
|
||||||
|
//protected variable which contains name of database field(s) to be filled.
|
||||||
|
protected $fillable = [
|
||||||
|
'user_id', 'event_id'
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,8 +15,8 @@ class CreateUserEventsTable extends Migration
|
||||||
{
|
{
|
||||||
Schema::create('user_events', function (Blueprint $table) {
|
Schema::create('user_events', function (Blueprint $table) {
|
||||||
$table->id();
|
$table->id();
|
||||||
$table->integer("user_id")->unique();
|
$table->integer("user_id");
|
||||||
$table->integer("event_id")->unique();
|
$table->integer("event_id");
|
||||||
|
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Seeder;
|
||||||
|
|
||||||
|
class RoleSeeder extends Seeder
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the database seeds.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function run()
|
||||||
|
{
|
||||||
|
$roles = [
|
||||||
|
"administrator" => "Admin",
|
||||||
|
"user" => "Userstuff",
|
||||||
|
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
foreach ($roles as $key => $value) {
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (\Spatie\Permission\Models\Role::findByName($key))
|
||||||
|
continue;
|
||||||
|
} catch (Exception $e) {
|
||||||
|
$permission = new \Spatie\Permission\Models\Role();
|
||||||
|
|
||||||
|
$permission->name = $key;
|
||||||
|
$permission->description = $value;
|
||||||
|
|
||||||
|
$permission->save();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -32,9 +32,6 @@
|
||||||
<div class="segment">
|
<div class="segment">
|
||||||
<h3 class="text-white"><a href="{{ route("external-links.index") }}" class="text-white">Eksterne Links</a></h3>
|
<h3 class="text-white"><a href="{{ route("external-links.index") }}" class="text-white">Eksterne Links</a></h3>
|
||||||
</div>
|
</div>
|
||||||
{{-- <div class="segment">--}}
|
|
||||||
{{-- <h3 class="text-white"><a href="{{ route('staff.index') }}" class="text-white">Personale</a></h3>--}}
|
|
||||||
{{-- </div>--}}
|
|
||||||
<div class="segment">
|
<div class="segment">
|
||||||
<h3 class="text-white"><a href="{{ route("contacts.index") }}" class="text-white">Kontakter</a></h3>
|
<h3 class="text-white"><a href="{{ route("contacts.index") }}" class="text-white">Kontakter</a></h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -9,10 +9,16 @@
|
||||||
<h1 class="text-center sde-blue mb-0">Aktiviteter</h1>
|
<h1 class="text-center sde-blue mb-0">Aktiviteter</h1>
|
||||||
@if(!$events->isEmpty())
|
@if(!$events->isEmpty())
|
||||||
@foreach($events as $event)
|
@foreach($events as $event)
|
||||||
|
<form method="get" action="{{ route("userevents.create") }}">
|
||||||
<h3 class="sde-blue bold text-center mb-0">{{$event->name}}</h3>
|
<h3 class="sde-blue bold text-center mb-0">{{$event->name}}</h3>
|
||||||
<p class="text-center mt-0">{{$event->date}}</p>
|
<p class="text-center mt-0">{{$event->date}}</p>
|
||||||
<p class="text-center">{{$event->description}}</p>
|
<p class="text-center">{{$event->description}}</p>
|
||||||
<a class="btn text-center btn-sde-blue" id="tilmeld">Tilmeld</a>
|
<input type="hidden" name="user_id" value="{{ Auth::user()->id }}">
|
||||||
|
<input type="hidden" name="event_id" value="{{ $event->id }}">
|
||||||
|
{!! session()->get('error#' . $event->id) !!}
|
||||||
|
{!! session()->get('signup#' . $event->id) !!}
|
||||||
|
<button type="submit" class="btn text-center btn-sde-blue" id="tilmeld">Tilmeld</button>
|
||||||
|
</form>
|
||||||
@endforeach
|
@endforeach
|
||||||
@else
|
@else
|
||||||
<p class="text-center">Der er ingen aktiviteter!</p>
|
<p class="text-center">Der er ingen aktiviteter!</p>
|
||||||
|
|
|
@ -3,15 +3,12 @@
|
||||||
<head>
|
<head>
|
||||||
<title>@yield("title")</title>
|
<title>@yield("title")</title>
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
{{-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">--}}
|
|
||||||
<link type="text/css" rel="stylesheet" href="{{ mix("/css/webapp.css") }}">
|
<link type="text/css" rel="stylesheet" href="{{ mix("/css/webapp.css") }}">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
{{-- @yield("header")--}}
|
|
||||||
<header class="row align-items-center">
|
<header class="row align-items-center">
|
||||||
<img class="w-50" id="sdeLogo" src="{{URL::asset('/images/logos/Logo-normal.svg')}}" alt="Syddansk Erhvervsskole">
|
<img class="w-50" id="sdeLogo" src="{{URL::asset('/images/logos/Logo-normal.svg')}}" alt="Syddansk Erhvervsskole">
|
||||||
<button class="ml-auto" id="toggle">
|
<button class="ml-auto" id="toggle">
|
||||||
{{-- <img src="{{URL::asset('/images/icons/icon.svg')}}" id="menuIcon" alt="-">--}}
|
|
||||||
<i id="icon" class="fas fa-bars"></i>
|
<i id="icon" class="fas fa-bars"></i>
|
||||||
</button>
|
</button>
|
||||||
</header>
|
</header>
|
||||||
|
|
|
@ -16,6 +16,8 @@
|
||||||
<input type="password" name="password" id="new" required>
|
<input type="password" name="password" id="new" required>
|
||||||
<span>Bekræft Nyt Password:</span>
|
<span>Bekræft Nyt Password:</span>
|
||||||
<input type="password" name="confirmpassword" id="confirm" required>
|
<input type="password" name="confirmpassword" id="confirm" required>
|
||||||
|
{!! session()->get('error#notsamepass') !!}
|
||||||
|
{!! session()->get('error#oldpass') !!}
|
||||||
<button type="submit" class="btn text-center btn-sde-blue mt-1">Rediger</button>
|
<button type="submit" class="btn text-center btn-sde-blue mt-1">Rediger</button>
|
||||||
</form>
|
</form>
|
||||||
</main>
|
</main>
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
<span class="toggle__text text-white">Remember password</span>
|
<span class="toggle__text text-white">Remember password</span>
|
||||||
</span>
|
</span>
|
||||||
</label>
|
</label>
|
||||||
|
{!! session()->get('success#passwordchange') !!}
|
||||||
<input class="btn btn-dark" type="submit" value="Sign in">
|
<input class="btn btn-dark" type="submit" value="Sign in">
|
||||||
</form>
|
</form>
|
||||||
<a class="text-white text-center" href="{{ route('users.show-forgot') }}">Forgot password?</a>
|
<a class="text-white text-center" href="{{ route('users.show-forgot') }}">Forgot password?</a>
|
||||||
|
|
|
@ -42,8 +42,8 @@ Route::get("/userapi", "UserController@search")->name("users.search");
|
||||||
Route::resource("contacts", "ContactController");
|
Route::resource("contacts", "ContactController");
|
||||||
Route::resource("menu-plans", "MenuPlanController");
|
Route::resource("menu-plans", "MenuPlanController");
|
||||||
Route::resource("users", "UserController");
|
Route::resource("users", "UserController");
|
||||||
//Route::resource("staff", "StaffController");
|
|
||||||
Route::resource("events", "EventController");
|
Route::resource("events", "EventController");
|
||||||
|
Route::resource("userevents", "UserEventController");
|
||||||
Route::resource("washing-machines", "WashingMachineController");
|
Route::resource("washing-machines", "WashingMachineController");
|
||||||
Route::resource("washing-reservations", "WashingReservationController");
|
Route::resource("washing-reservations", "WashingReservationController");
|
||||||
Route::resource("feedbacks", "FeedbackController");
|
Route::resource("feedbacks", "FeedbackController");
|
||||||
|
|
Loading…
Reference in New Issue