"Updated AdminController, MainController, and adminheader.blade.php to add admin profile feature and modified cart and profile logic for customers"

This commit is contained in:
UronShrestha
2024-07-14 16:45:49 +05:45
parent f214f8aab4
commit f171e49b3f
7 changed files with 117 additions and 26 deletions

View File

@ -2,6 +2,8 @@
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Http\Request;
use App\Models\Product;
@ -15,6 +17,7 @@ class AdminController extends Controller
}
return redirect()->back();
}
public function products()
{
if (session()->get('type') == 'Admin') {
@ -69,7 +72,7 @@ class AdminController extends Controller
'name' => 'required',
'price' => 'required|numeric',
'description' => 'required',
'file' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
'file' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:10240',
'quantity' => 'required|numeric',
'category' => 'required',
'type' => 'required',
@ -157,4 +160,13 @@ class AdminController extends Controller
}
return redirect()->back();
}
public function profile()
{
if (session()->get('type') == 'Admin') {
$user = User::find(session()->get('id'));
return view('Dashboard.profile', compact('user'));
}
return redirect()->back();
}
}

View File

@ -158,16 +158,19 @@ class MainController extends Controller
public function cart()
{
$cartItems = DB::table('products')
// ->join('carts', 'carts.productId', '=', 'products.id')
->join('carts', 'carts.productId', 'products.id')
->select('products.name', 'products.price', 'products.picture', 'products.quantity as pQuantity', 'carts.*')
->where('carts.customerId', session()->get('id'))
->get();
if (session()->get('type') == 'Customer') {
$cartItems = DB::table('products')
// ->join('carts', 'carts.productId', '=', 'products.id')
->join('carts', 'carts.productId', 'products.id')
->select('products.name', 'products.price', 'products.picture', 'products.quantity as pQuantity', 'carts.*')
->where('carts.customerId', session()->get('id'))
->get();
//dd($cartItems);
//dd($cartItems);
return view('cart', compact('cartItems'));
return view('cart', compact('cartItems'));
}
return redirect()->back();
}
public function addToCart(Request $data)
@ -231,11 +234,14 @@ class MainController extends Controller
public function profile()
{
if (session()->has('id')) {
$user = User::find(session()->get('id'));
return view('profile', compact('user'));
if (session()->get('type') == 'Customer') {
if (session()->has('id')) {
$user = User::find(session()->get('id'));
return view('profile', compact('user'));
}
return redirect('login');
}
return redirect('login');
return redirect()->back();
}
public function updateUser(Request $data)
@ -290,22 +296,23 @@ class MainController extends Controller
public function testMail()
{
$details = [
'title' => 'Mail from Uron Shrestha',
'message' => 'This is for testing mail using smtp in Laravel!'
];
Mail::to("yuron.stha57@gmail.com")->send(new Testing($details));
return redirect('/');
if (session()->get('type') == 'Customer') {
$details = [
'title' => 'Mail from Uron Shrestha',
'message' => 'This is for testing mail using smtp in Laravel!'
];
Mail::to("yuron.stha57@gmail.com")->send(new Testing($details));
return redirect('/');
}
return redirect()->back();
}
public function shop()
{
return view('shop');
}
public function shopDetails()
{
return view('shopDetails');
if (session()->get('type') == 'Customer') {
return view('shop');
}
return redirect()->back();
}
}