Skip to content

Commit 37a0504

Browse files
committed
Wishlist Functionality added
1 parent 7b1ba90 commit 37a0504

File tree

6 files changed

+300
-31
lines changed

6 files changed

+300
-31
lines changed

EasyShop/app/Http/Controllers/HomeController.php

+23
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@
22

33
namespace App\Http\Controllers;
44

5+
use Illuminate\Support\Facades\Auth;
56
use Illuminate\Support\Facades\DB;
67
use Illuminate\Http\Request;
78
use Mail;
89
use App\Mail\contacts;
10+
use App\wishList;
911

1012
class HomeController extends Controller {
1113
/**
@@ -78,4 +80,25 @@ public function sendmail() {
7880
dd('mail sent');
7981
}
8082

83+
public function wishList(Request $request) {
84+
85+
86+
$wishList = new wishList;
87+
$wishList->user_id = Auth::user()->id;
88+
$wishList->pro_id = $request->pro_id;
89+
90+
$wishList->save();
91+
92+
$Products = DB::table('products')->where('id', $request->pro_id)->get();
93+
//$Products = DB::table('wishlist')->leftJoin('products', 'wishlist.pro_id', '=', 'products.ic')->get();
94+
95+
return view('front.product_details', compact('Products'));
96+
}
97+
98+
public function View_wishList(){
99+
100+
$Products = DB::table('wishlist')->leftJoin('products', 'wishlist.pro_id', '=', 'products.id')->get();
101+
return view('front.wishList', compact('Products'));
102+
}
103+
81104
}

EasyShop/app/wishList.php

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
3+
namespace App;
4+
5+
use Illuminate\Database\Eloquent\Model;
6+
7+
class wishList extends Model
8+
{
9+
protected $table = 'wishlist';
10+
11+
12+
protected $fillable = ['user_id','pro_id'];
13+
}

EasyShop/resources/views/admin/home.blade.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
{!! Form::open(['url' => 'admin/add_product', 'method' => 'post', 'enctype' => 'multipart/form-data']) !!}
1616

1717
<div class="panel-options">
18-
<input type="submit" value="Submit" class="btn btn-primary">
18+
<input type="submit" value="Submit" class="btn btn-primary pull-right">
1919
</div>
2020
</div>
2121
<div class="panel-body">

EasyShop/resources/views/front/product_details.blade.php

+52-28
Original file line numberDiff line numberDiff line change
@@ -145,26 +145,26 @@
145145

146146
</div>
147147
</div>
148-
@foreach($Products as $value)
148+
@foreach($Products as $value)
149149
<div class="col-sm-9 padding-right">
150150
<div class="product-details"><!--product-details-->
151151
<div class="col-sm-5">
152152
<div class="view-product">
153-
<img src="http://localhost/easyshop/upload/images/large/<?php echo $value->pro_img;?>" alt="" />
153+
<img src="http://localhost/easyshop/upload/images/large/<?php echo $value->pro_img; ?>" alt="" />
154154
<h3>ZOOM</h3>
155155
</div>
156156
<div id="similar-product" class="carousel slide" data-ride="carousel">
157157

158158
<!-- Wrapper for slides -->
159159
<div class="carousel-inner">
160160
<div class="item active">
161-
<img src="http://localhost/easyshop/upload/images/small/<?php echo $value->pro_img;?>" alt="" />
161+
<img src="http://localhost/easyshop/upload/images/small/<?php echo $value->pro_img; ?>" alt="" />
162162
</div>
163163
<div class="item">
164-
<img src="http://localhost/easyshop/upload/images/small/<?php echo $value->pro_img;?>" alt="" />
164+
<img src="http://localhost/easyshop/upload/images/small/<?php echo $value->pro_img; ?>" alt="" />
165165
</div>
166166
<div class="item">
167-
<img src="http://localhost/easyshop/upload/images/sma;ll/<?php echo $value->pro_img;?>" alt="" />
167+
<img src="http://localhost/easyshop/upload/images/sma;ll/<?php echo $value->pro_img; ?>" alt="" />
168168
</div>
169169

170170
</div>
@@ -180,27 +180,51 @@
180180

181181
</div>
182182
<div class="col-sm-7">
183-
184-
<div class="product-information"><!--/product-information-->
185-
<img src="" class="newarrival" alt="" />
186-
<h2><?php echo ucwords($value->pro_name);?></h2>
187-
<p>Web ID: <?php echo $value->pro_code;?></p>
188-
<img src="" alt="" />
189-
<span>
190-
<span>US $<?php echo $value->pro_price;?></span>
191-
<label>Quantity:</label>
192-
<input type="text" value="3" />
193-
<button type="button" class="btn btn-fefault cart">
194-
<i class="fa fa-shopping-cart"></i>
195-
Add to cart
196-
</button>
197-
</span>
198-
<p><b>Availability:</b> In Stock</p>
199-
<p><b>Condition:</b> New</p>
200-
<p><b>Brand:</b> E-SHOPPER</p>
201-
<a href=""><img src="images/product-details/share.png" class="share img-responsive" alt="" /></a>
202-
</div><!--/product-information-->
203-
183+
184+
<div class="product-information"><!--/product-information-->
185+
<img src="" class="newarrival" alt="" />
186+
<h2><?php echo ucwords($value->pro_name); ?></h2>
187+
<p>Web ID: <?php echo $value->pro_code; ?></p>
188+
<img src="" alt="" />
189+
<span>
190+
<span>US $<?php echo $value->pro_price; ?></span>
191+
<label>Quantity:</label>
192+
<input type="text" value="3" />
193+
<button type="button" class="btn btn-fefault cart">
194+
<i class="fa fa-shopping-cart"></i>
195+
Add to cart
196+
</button>
197+
198+
199+
</span>
200+
<p><b>Availability:</b> In Stock</p>
201+
<p><b>Condition:</b> New</p>
202+
<p><b>Brand:</b> E-SHOPPER</p>
203+
<a href=""><img src="{{url('/')}}/theme/images/product-details/share.png" class="share img-responsive" alt="" /></a>
204+
205+
<?php
206+
$wishData = DB::table('wishlist')->leftJoin('products', 'wishlist.pro_id', '=', 'products.id')->where('wishlist.pro_id', '=',$value->id)->get();
207+
208+
209+
//if($wishData==""){ echo 'empty'; } else { echo 'filled';}
210+
$count = App\wishList::where(['pro_id' => $value->id])->count();
211+
?>
212+
213+
214+
215+
<?php if($count=="0"){?>
216+
<form action="{{url('/addToWishList')}}">
217+
{{ csrf_field() }}
218+
<input type="hidden" value="{{$value->id}}" name="pro_id"/>
219+
<input type="submit" value="Add to WishList" class="btn btn-success"/>
220+
</form>
221+
<?php } else {?>
222+
<h5 style="color:green"> Added to <a href="{{url('/WishList')}}">wishList</a></h5>
223+
<?php }?>
224+
225+
226+
</div><!--/product-information-->
227+
204228
</div>
205229
</div><!--/product-details-->
206230

@@ -486,8 +510,8 @@
486510
</div><!--/recommended_items-->
487511

488512
</div>
489-
490-
@endforeach;
513+
514+
@endforeach;
491515
</div>
492516
</div>
493517
</section>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,209 @@
1+
@extends('front.master')
2+
3+
@section('content')
4+
5+
6+
<section id="advertisement">
7+
<div class="container">
8+
<img src="{{asset('theme/images/shop/advertisement.jpg')}}" alt="" />
9+
</div>
10+
</section>
11+
12+
<section>
13+
<div class="container">
14+
<div class="row">
15+
<div class="col-sm-3">
16+
<div class="left-sidebar">
17+
<h2>Category</h2>
18+
<div class="panel-group category-products" id="accordian"><!--category-productsr-->
19+
<div class="panel panel-default">
20+
<div class="panel-heading">
21+
<h4 class="panel-title">
22+
<a data-toggle="collapse" data-parent="#accordian" href="#sportswear">
23+
<span class="badge pull-right"><i class="fa fa-plus"></i></span>
24+
Sportswear
25+
</a>
26+
</h4>
27+
</div>
28+
<div id="sportswear" class="panel-collapse collapse">
29+
<div class="panel-body">
30+
<ul>
31+
<li><a href="">Nike </a></li>
32+
<li><a href="">Under Armour </a></li>
33+
<li><a href="">Adidas </a></li>
34+
<li><a href="">Puma</a></li>
35+
<li><a href="">ASICS </a></li>
36+
</ul>
37+
</div>
38+
</div>
39+
</div>
40+
<div class="panel panel-default">
41+
<div class="panel-heading">
42+
<h4 class="panel-title">
43+
<a data-toggle="collapse" data-parent="#accordian" href="#mens">
44+
<span class="badge pull-right"><i class="fa fa-plus"></i></span>
45+
Mens
46+
</a>
47+
</h4>
48+
</div>
49+
<div id="mens" class="panel-collapse collapse">
50+
<div class="panel-body">
51+
<ul>
52+
<li><a href="">Fendi</a></li>
53+
<li><a href="">Guess</a></li>
54+
<li><a href="">Valentino</a></li>
55+
<li><a href="">Dior</a></li>
56+
<li><a href="">Versace</a></li>
57+
<li><a href="">Armani</a></li>
58+
<li><a href="">Prada</a></li>
59+
<li><a href="">Dolce and Gabbana</a></li>
60+
<li><a href="">Chanel</a></li>
61+
<li><a href="">Gucci</a></li>
62+
</ul>
63+
</div>
64+
</div>
65+
</div>
66+
67+
<div class="panel panel-default">
68+
<div class="panel-heading">
69+
<h4 class="panel-title">
70+
<a data-toggle="collapse" data-parent="#accordian" href="#womens">
71+
<span class="badge pull-right"><i class="fa fa-plus"></i></span>
72+
Womens
73+
</a>
74+
</h4>
75+
</div>
76+
<div id="womens" class="panel-collapse collapse">
77+
<div class="panel-body">
78+
<ul>
79+
<li><a href="">Fendi</a></li>
80+
<li><a href="">Guess</a></li>
81+
<li><a href="">Valentino</a></li>
82+
<li><a href="">Dior</a></li>
83+
<li><a href="">Versace</a></li>
84+
</ul>
85+
</div>
86+
</div>
87+
</div>
88+
<div class="panel panel-default">
89+
<div class="panel-heading">
90+
<h4 class="panel-title"><a href="#">Kids</a></h4>
91+
</div>
92+
</div>
93+
<div class="panel panel-default">
94+
<div class="panel-heading">
95+
<h4 class="panel-title"><a href="#">Fashion</a></h4>
96+
</div>
97+
</div>
98+
<div class="panel panel-default">
99+
<div class="panel-heading">
100+
<h4 class="panel-title"><a href="#">Households</a></h4>
101+
</div>
102+
</div>
103+
<div class="panel panel-default">
104+
<div class="panel-heading">
105+
<h4 class="panel-title"><a href="#">Interiors</a></h4>
106+
</div>
107+
</div>
108+
<div class="panel panel-default">
109+
<div class="panel-heading">
110+
<h4 class="panel-title"><a href="#">Clothing</a></h4>
111+
</div>
112+
</div>
113+
<div class="panel panel-default">
114+
<div class="panel-heading">
115+
<h4 class="panel-title"><a href="#">Bags</a></h4>
116+
</div>
117+
</div>
118+
<div class="panel panel-default">
119+
<div class="panel-heading">
120+
<h4 class="panel-title"><a href="#">Shoes</a></h4>
121+
</div>
122+
</div>
123+
</div><!--/category-productsr-->
124+
125+
<div class="brands_products"><!--brands_products-->
126+
<h2>Brands</h2>
127+
<div class="brands-name">
128+
<ul class="nav nav-pills nav-stacked">
129+
<li><a href=""> <span class="pull-right">(50)</span>Acne</a></li>
130+
<li><a href=""> <span class="pull-right">(56)</span>Grüne Erde</a></li>
131+
<li><a href=""> <span class="pull-right">(27)</span>Albiro</a></li>
132+
<li><a href=""> <span class="pull-right">(32)</span>Ronhill</a></li>
133+
<li><a href=""> <span class="pull-right">(5)</span>Oddmolly</a></li>
134+
<li><a href=""> <span class="pull-right">(9)</span>Boudestijn</a></li>
135+
<li><a href=""> <span class="pull-right">(4)</span>Rösch creative culture</a></li>
136+
</ul>
137+
</div>
138+
</div><!--/brands_products-->
139+
140+
<div class="price-range"><!--price-range-->
141+
<h2>Price Range</h2>
142+
<div class="well">
143+
<input type="text" class="span2" value="" data-slider-min="0" data-slider-max="600" data-slider-step="5" data-slider-value="[250,450]" id="sl2" ><br />
144+
<b>$ 0</b> <b class="pull-right">$ 600</b>
145+
</div>
146+
</div><!--/price-range-->
147+
148+
<div class="shipping text-center"><!--shipping-->
149+
<img src="images/home/shipping.jpg" alt="" />
150+
</div><!--/shipping-->
151+
152+
</div>
153+
</div>
154+
155+
<div class="col-sm-9 padding-right">
156+
<div class="features_items"><!--features_items-->
157+
<h2 class="title text-center">
158+
<?php if (isset($msg)) { echo $msg;} else { ?> Features Item <?php } ?> </h2>
159+
160+
<?php if($Products->isEmpty()){?>
161+
sorry, products not found
162+
<?php } else {?>
163+
@foreach($Products as $product)
164+
<div class="col-sm-4">
165+
<div class="product-image-wrapper">
166+
<div class="single-products">
167+
<div class="productinfo text-center">
168+
<a href="{{url('/product_details')}}">
169+
<img src="http://localhost/easyshop/upload/images/large/<?php echo $product->pro_img; ?>" alt="" />
170+
</a>
171+
<h2>$<?php echo $product->pro_price; ?></h2>
172+
173+
<p><a href="{{url('/product_details')}}"><?php echo $product->pro_name; ?></a></p>
174+
<a href="{{url('/cart/addItem')}}/<?php echo $product->id; ?>" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
175+
</div>
176+
<a href="{{url('/product_details')}}/<?php echo $product->id; ?>">
177+
<div class="product-overlay">
178+
<div class="overlay-content">
179+
<h2>$<?php echo $product->pro_price; ?></h2>
180+
<p><?php echo $product->pro_name; ?></p>
181+
<a href="{{url('/cart/addItem')}}/<?php echo $product->id; ?>" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
182+
</div>
183+
</div></a>
184+
</div>
185+
<div class="choose">
186+
<ul class="nav nav-pills nav-justified">
187+
<li><a href=""><i class="fa fa-plus-square"></i>Add to wishlist</a></li>
188+
<li><a href=""><i class="fa fa-plus-square"></i>Add to compare</a></li>
189+
</ul>
190+
</div>
191+
</div>
192+
</div>
193+
@endforeach
194+
<?php }?>
195+
196+
197+
</div>
198+
<ul class="pagination">
199+
<?php echo $Products; ?>
200+
</ul>
201+
</div><!--features_items-->
202+
</div>
203+
</div>
204+
</div>
205+
</section>
206+
207+
208+
209+
@endsection

EasyShop/routes/web.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,8 @@
8484
Route::get('deleteCat/{id}','AdminController@deleteCat');
8585
});
8686
Route::get('/logout', 'Auth\LoginController@logout');
87-
88-
87+
Route::get('addToWishList','HomeController@wishList');
88+
Route::get('/WishList','HomeController@View_wishList');
8989
//Route::get('/admin', 'AdminController@index');
9090

9191

0 commit comments

Comments
 (0)