Merge branch 'main'

This commit is contained in:
unknown 2022-11-10 09:08:37 +01:00
commit 148c6adf09
4 changed files with 12 additions and 224 deletions

View File

@ -37,6 +37,10 @@ class GameController extends Controller
}
public function play($id, $puzzle){
$puzzle = (int)$puzzle;
if($puzzle == 0){
abort(404);
}
$p = DB::table('game_puzzles')->join('puzzles', 'puzzle_id', '=', 'puzzles.id')->get()->where('game_id', $id)->values()->get($puzzle-1);
if($p == NULL){
return abort(404);

View File

@ -1,217 +0,0 @@
<?php
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Contracts\Cache\Store;
use Illuminate\Http\Request;
use Illuminate\Validation\Rule;
use PhpParser\Node\Expr\FuncCall;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\File;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Storage;
class UserController extends Controller
{
// ### Register ###
<<<<<<< HEAD
// Show Register/Create Form:
public function create() {
return view('users.register');
}
//Create a new user and store it in database:
public function store(Request $request) {
$formFields = $request->validate([
'username' => ['required', 'min:3'],
'email' => ['required', 'email', Rule::unique('users', 'email')],
'password' => ['required', 'confirmed', 'min:6'],
//'profile_picture' => ['image', 'mimes:jpg,png,jpeg,gif,svg', 'max:2048', 'dimensions:min_width:100,min_height:100,max_width:1000,max_height:1000']
]);
if ($request->hasFile('profile_picture')) {
$formFields['profile_picture'] = $request->file('profile_picture')->store('images/uploads/users', 'public');
}
else {
$formFields['profile_picture'] = "/images/samplePictures/Sample_User_Icon.png";
}
//dd($formFields['profile_picture']);
//Hash password:
$formFields['password'] = bcrypt($formFields['password']);
$user = User::create($formFields);
return redirect('/')->with('message', 'Példa szöveg regisztráció tesztelésére!');
}
// ### Login ###
//Show Login form:
public function login() {
return view('users.login');
}
//Authenticate User:
public function authenticate(Request $request) {
$formFields = $request->validate([
'email' => ['required', 'email'],
'password' => ['required']
]);
if (auth()->attempt($formFields)) {
$request->session()->regenerate();
return redirect('/')->with('message', 'Sikeresen bejelentkeztél!');
}
return back()->withErrors(['email' => 'Hibás adatmegadás!'])->onlyInput('email');
}
//Logout:
public function logout(Request $request) {
auth()->logout();
$request->session()->invalidate();
$request->session()->regenerateToken();
return redirect('/')->with('message', 'Sikeresen kijelentkeztél!');
}
// ### Modify ###
public function user_list_toggle(Request $request){
if (!Auth::check() || Auth::User()->isAdmin != 1) {
return abort(401);
}
if (!isset($request->uid) || !isset($request->field)) {
return abort(419);
=======
//Create a new user and store it in database:
public function store(Request $request) {
$formFields = $request->validate([
'username' => ['required', 'min:3'],
'email' => ['required', 'email', Rule::unique('users', 'email')],
'password' => ['required', 'confirmed', 'min:6']
]);
if ($request->hasFile('profile_picture')) {
$formFields['profile_picture'] = $request->file('profile_picture')->store('images/uploads/users', 'public');
$formFields['profile_picture'] = '/storage/'.$formFields['profile_picture'];
}
else {
$formFields['profile_picture'] = "/images/samplePictures/Sample_User_Icon.png";
}
//Hash password:
$formFields['password'] = bcrypt($formFields['password']);
$user = User::create($formFields);
return redirect('/')->with('message', 'Sikeres regisztráció!');
}
//Show Login form:
public function login() {
return view('users.login');
}
//Authenticate User:
public function authenticate(Request $request) {
$formFields = $request->validate([
'email' => ['required', 'email'],
'password' => ['required']
]);
if (auth()->attempt($formFields)) {
$request->session()->regenerate();
return redirect('/')->with('message', 'Sikeresen bejelentkeztél!');
>>>>>>> b5f79448901a082df9b1116cbd4e3af6ede09620
}
$this->toggle_field($request->uid, $request->field);
return redirect('/UserList');
}
private function toggle_field($uid, $field){
if(User::where('id', $uid)->get()[0][$field]){
$this->set_bool_field($uid, False, $field);
}else{
$this->set_bool_field($uid, true, $field);
}
}
private function set_bool_field($uid, $b, $field)
{
User::where('id', $uid)->update([$field => $b]);
}
//View User:
public function view() {
return view('users.view');
}
//Show Edit view
public function edit() {
return view('users.edit');
}
//Update User
public function update(Request $request) {
$formFields = $request->validate([
'username' => ['required', 'min:3'],
'email' => ['required', 'email'],
]);
$user = User::find(Auth::User()->id);
if ($request->get('email') != Auth::User()->email) {
$email = $request->validate([
'email' => [Rule::unique('users', 'email')]
]);
$formFields['email'] = $email;
}
if ($request->get('password') != '') {
$password = $request->validate([
'password' => ['required', 'confirmed', 'min:6']
]);
$user->password = Hash::make($password['password']);
}
if ($request->hasFile('profile_picture')) {
$formFields['profile_picture'] = $request->file('profile_picture')->store('images/uploads/users', 'public');
$user->profile_picture = "/storage/" . $formFields['profile_picture'];
}
if (!$user) {
return abort(404);
}
$user->username = $formFields['username'];
$user->email = $formFields['email'];
$user->save();
return redirect("/users/edit")->with("message", "Sikeres módosítás!");
}
}

View File

@ -26,9 +26,6 @@ class GameFactory extends Factory
public function len(?int $l){
$this->lenght = $l;
for($i = 0; $i < $l; $i++){
array_push($this->GamePuzzles, GamePuzzle::factory());
}
return $this;
}
@ -40,8 +37,12 @@ class GameFactory extends Factory
$query = DB::select("select max(id) m from games");
$game_id = get_object_vars($query[0])["m"];
// ---
foreach($this->GamePuzzles as $i){
$i->create(['game_id' => $game_id]);
$max_puzzles = (get_object_vars(DB::select('select count(*) c from puzzles')[0]))["c"];
$arr = range(1, $max_puzzles);
shuffle($arr);
$arr = array_slice($arr, -($this->lenght));
foreach($arr as $i){
GamePuzzle::factory()->create(['game_id' => $game_id, 'puzzle_id' => $i]);
}
}

View File

@ -1,8 +1,8 @@
@extends('template')
@php
$debug = True;
//$debug = False;
//$debug = True;
$debug = False;
$answer = $puzzle->answer;
$pic = $puzzle->picture;