enhance add to basket

This commit is contained in:
Ludovic CANDELLIER
2022-04-01 00:11:15 +02:00
parent eff2cb21c7
commit 6e133246cf
17 changed files with 359 additions and 53 deletions

View File

@@ -14,8 +14,6 @@ class ArticleController extends Controller
{
$data = self::init();
$data['article'] = Articles::getArticleToSell($id);
// dump($data);
// exit;
return view('Shop.Articles.show', $data);
}
}

View File

@@ -0,0 +1,88 @@
<?php
namespace App\Http\Controllers\Shop\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Support\Facades\Auth;
use Illuminate\Http\Request;
use App\Repositories\Layout;
use App\Repositories\Languages;
use App\Repositories\Shop\Customers;
class LoginController extends Controller
{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/
use AuthenticatesUsers;
/**
* Where to redirect users after login.
*
* @var string
*/
protected $redirectTo = '/';
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('customer')->except('logout');
}
public function showLoginForm()
{
$data['url'] = route('Shop.Auth.login.post');
return view('Shop.Auth.login', $data);
}
protected function guard()
{
return Auth::guard('customer');
}
public function login(Request $request)
{
$this->validate($request, [
'username' => 'required|email',
'password' => 'required|min:6'
]);
if (Auth::guard('customer')->attempt(['username' => $request->username, 'password' => $request->password], $request->get('remember'))) {
return redirect()->intended(route('Conferencing.event'));
}
return back()->withInput($request->only('username', 'remember'));
}
public function logout(Request $request)
{
// Get the session key for this user
$sessionKey = $this->guard()->getName();
$this->guard()->logout();
// Delete single session key (just for this user)
$request->session()->forget($sessionKey);
return redirect()->route('home');
}
public function username()
{
return 'username';
}
}

View File

@@ -0,0 +1,48 @@
<?php
namespace App\Http\Controllers\Shop\Auth;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\ResetsPasswords;
class ResetPasswordController extends Controller
{
/*
|--------------------------------------------------------------------------
| Password Reset Controller
|--------------------------------------------------------------------------
|
| This controller is responsible for handling password reset requests
| and uses a simple trait to include this behavior. You're free to
| explore this trait and override any methods you wish to tweak.
|
*/
use ResetsPasswords;
/**
* Where to redirect users after resetting their password.
*
* @var string
*/
protected $redirectTo = '/';
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest');
}
public function showResetForm(Request $request, $token = null)
{
$data = $this->initHeader();
$data['token'] = $token;
$data['email'] = $request->email;
return view('Auth.passwords.reset', $data);
}
}

View File

@@ -23,21 +23,21 @@ class BasketController extends Controller
{
$offer_id = $request->input('offer_id');
$quantity = $request->input('quantity');
if (ShopCart::has($offer_id)) {
$ret = ShopCart::remove($offer_id);
}
$data = $quantity ? Offers::getBasketData($offer_id, $quantity) : false;
$ret = $data ? ShopCart::add($data) : false;
return true;
return Offers::addBasket($offer_id, $quantity);
}
public function modalBasket($offer_id, $quantity)
{
$data['offer'] = Offers::getFull($offer_id)->toArray();
$data['basket'] = Offers::addBasket($offer_id, $quantity);
return view('Shop.Baskets.partials.modalBasket', $data);
}
public function basket()
{
$data = self::init();
$data['basket'] = Offers::getBasket();
//dump($data['basket']);
// exit;
return view('Shop.Baskets.basket', $data);
}