Commit c57c32de by Ajay Barthwal

Merge branch 'develop' into 'master'

Develop

See merge request !7
parents abae957f f25b9b14
<?php
namespace App\Http\Controllers\Admin;
use Illuminate\Http\Request;
use App\Http\Controllers\Admin\AdminController;
use App\LocaterFeed;
use DB;
use Validator;
use Illuminate\Support\Facades\Hash;
class FeedController extends AdminController
{
const RECORD_PER_PAGE = 10;
public function __construct()
{
$this->middleware('auth');
}
public function feedsList(Request $request) {
$admin_id = $request->session()->get('id');
$pageNo = trim($request->input('page', 1));
DB::enableQueryLog();
$keyword = strtolower(trim($request->input('keyword')));
$feedList = LocaterFeed::where('locater_feeds.is_deleted', '=', '0');
$count = LocaterFeed::where('locater_feeds.is_deleted', '=', '0')->count();
if($keyword)
{
$feedList = $feedList->where(function ($query) use ($keyword) {
$query->orwhere('locater_feeds.title', 'like', '%'.$keyword);
});
}
$this->data['records'] = $feedList->sortable(['id'=>'desc'])->paginate(Self::RECORD_PER_PAGE);
$queries = DB::getQueryLog();
return view('admin.feeds.feeds_mng', ['data' => $this->data,'pageNo' => @$pageNo, 'record_per_page' => Self::RECORD_PER_PAGE,'request'=>$request]);
}
public function createFeed(){
return view('admin.feeds.add');
}
public function saveFeed(Request $request) {
$user_id = auth()->user('id');
if ($request->all()) {
$feeds_id = trim($request->feeds_id);
$title = trim($request->title);
$description = trim($request->description);
$gtin = trim($request->gtin);
$brand = trim($request->brand);
$color = trim($request->color);
$size = trim($request->size);
$link = trim($request->link);
$image_link = trim($request->image_link);
$availability = trim($request->availability);
$product_condition = trim($request->product_condition);
$item_group_id = trim($request->item_group_id);
$google_product_category = trim($request->google_product_category);
$product_type = trim($request->product_type);
$sale_price = trim($request->sale_price);
$price = trim($request->price);
$status = trim($request->status);
$validator = Validator::make($request->all(), [
'feeds_id' => 'required',
'title' => 'required',
'description' => 'required',
'gtin' => 'required',
'brand' => 'required',
'color' => 'required',
'size' => 'required',
'link' => 'required',
'image_link' => 'required',
'availability' => 'required',
'product_condition' => 'required',
'item_group_id' => 'required',
'google_product_category' => 'required',
'product_type' => 'required',
'sale_price' => 'required',
'price' => 'required',
'status' => 'required',
]);
if ($validator->fails())
{
return redirect()->route('admin.feeds.add')
->withErrors($validator)
->withInput();
}
else
{
$feed = new LocaterFeed;
$feed->feeds_id = $feeds_id;
$feed->title = $title;
$feed->description = $description;
$feed->gtin = $gtin;
$feed->brand = $brand;
$feed->color = $color;
$feed->size = $size;
$feed->link = $link;
$feed->image_link = $image_link;
$feed->availability = $availability;
$feed->product_condition = $product_condition;
$feed->item_group_id = $item_group_id;
$feed->google_product_category = $google_product_category;
$feed->product_type = $product_type;
$feed->sale_price = $sale_price;
$feed->price = $price;
$feed->status = $status;
$feed->save();
$msg = 'Feed has been added successfully.';
$request->session()->flash('add_message', $msg);
return redirect()->route('admin.feeds');
}
}
}
public function editFeed(Request $request, $id){
if(!empty($id)){
$data = LocaterFeed::find($id);
}
return view('admin.feeds.edit', compact(array('data')));
}
public function updateFeed(Request $request, $id) {
$user_id = auth()->user('id');
$data = array();
if(!empty($id)){
$data = LocaterFeed::find($id);
}
if ($request->all()) {
$feeds_id = trim($request->feeds_id);
$title = trim($request->title);
$description = trim($request->description);
$gtin = trim($request->gtin);
$brand = trim($request->brand);
$color = trim($request->color);
$size = trim($request->size);
$link = trim($request->link);
$image_link = trim($request->image_link);
$availability = trim($request->availability);
$product_condition = trim($request->product_condition);
$item_group_id = trim($request->item_group_id);
$google_product_category = trim($request->google_product_category);
$product_type = trim($request->product_type);
$sale_price = trim($request->sale_price);
$price = trim($request->price);
$status = trim($request->status);
$validator = Validator::make($request->all(), [
'feeds_id' => 'required',
'title' => 'required',
'description' => 'required',
'gtin' => 'required',
'brand' => 'required',
'color' => 'required',
'size' => 'required',
'link' => 'required',
'image_link' => 'required',
'availability' => 'required',
'product_condition' => 'required',
'item_group_id' => 'required',
'google_product_category' => 'required',
'product_type' => 'required',
'sale_price' => 'required',
'price' => 'required',
'status' => 'required',
]);
if ($validator->fails()) {
return redirect()->route('admin.feeds.edit',['id'=>$id])
->withErrors($validator)
->withInput();
} else {
$feed = LocaterFeed::find($id);
$feed->feeds_id = $feeds_id;
$feed->title = $title;
$feed->description = $description;
$feed->gtin = $gtin;
$feed->brand = $brand;
$feed->color = $color;
$feed->size = $size;
$feed->link = $link;
$feed->image_link = $image_link;
$feed->availability = $availability;
$feed->product_condition = $product_condition;
$feed->item_group_id = $item_group_id;
$feed->google_product_category = $google_product_category;
$feed->product_type = $product_type;
$feed->sale_price = $sale_price;
$feed->price = $price;
$feed->status = $status;
$feed->save();
$msg = 'Feed has been updated successfully.';
$request->session()->flash('add_message', $msg);
return redirect()->route('admin.feeds');
}
}
else {
return view('admin.feeds.add', ['data' => $data, 'request' => $request]);
}
}
public function deleteFeed($id, Request $request) {
if ($id) {
$feed = LocaterFeed::find($id);
$feed->is_deleted = '1';
if($feed->save()){
$msg = 'Feed has been deleted successfully.';
$request->session()->flash('message', $msg);
}
}
return redirect()->route('admin.feeds');
}
public function feedSetting(){
return view('admin.feeds.feed_setting');
}
public function updateShowFeed(Request $request){
if($request->showFeed == 'true'){
$show_feed = '1';
}else{
$show_feed = '0';
}
$updateShowFeed = LocaterFeed::where('locater_feeds.id', '=', $request->id)
->update(['show_feed' => $show_feed]);
return [
'status' => 'success',
'data' => 'done'
];
}
}
\ No newline at end of file
...@@ -106,6 +106,7 @@ class HomepageController extends AdminController ...@@ -106,6 +106,7 @@ class HomepageController extends AdminController
} }
if ($request->all()) { //dd($request->all()); if ($request->all()) { //dd($request->all());
$show = trim($request->show);
$header_image_normal = trim($request->header_image_normal); $header_image_normal = trim($request->header_image_normal);
$header_image_mobile = trim($request->header_image_mobile); $header_image_mobile = trim($request->header_image_mobile);
$footer_image_normal = trim($request->footer_image_normal); $footer_image_normal = trim($request->footer_image_normal);
...@@ -143,6 +144,12 @@ class HomepageController extends AdminController ...@@ -143,6 +144,12 @@ class HomepageController extends AdminController
$homepage->footer_image_mobile = $request->file('footer_image_mobile')->store('image'); $homepage->footer_image_mobile = $request->file('footer_image_mobile')->store('image');
} }
if($show == 'on'){
$homepage->show_feed = '1';
}else{
$homepage->show_feed = '0';
}
$homepage->meta_title = $meta_title; $homepage->meta_title = $meta_title;
$homepage->meta_keyword = $meta_keyword; $homepage->meta_keyword = $meta_keyword;
$homepage->meta_description = $meta_description; $homepage->meta_description = $meta_description;
......
...@@ -11,6 +11,9 @@ use App\Page; ...@@ -11,6 +11,9 @@ use App\Page;
use App\City; use App\City;
use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
//use App\Exports\UsersExport;
use App\Imports\FeedsImport;
use Maatwebsite\Excel\Facades\Excel;
...@@ -108,4 +111,27 @@ class CronController extends Controller ...@@ -108,4 +111,27 @@ class CronController extends Controller
]); ]);
} }
public function import(Request $request)
{
$url = "https://m2admin.anitadongre.com/pub/custom_script/feeds/envigo/sheet/and-google-in.csv";
$contents = file_get_contents($url);
$name = substr($url, strrpos($url, '/') + 1);
$data = Storage::put($name, $contents);
if($data == true){
$file = Storage::path('and-google-in.csv');
$data = Excel::import(new FeedsImport,$file);
$msg = 'Feeds has been updated successfully.';
$request->session()->flash('message', $msg);
return redirect()->route('admin.feedSetting');
}else{
$msg = 'Something went wrong!';
$request->session()->flash('error', $msg);
return redirect()->route('admin.feedSetting');
}
}
} }
\ No newline at end of file
...@@ -8,6 +8,7 @@ use App\Traits\Apitraits; ...@@ -8,6 +8,7 @@ use App\Traits\Apitraits;
use App\Locater; use App\Locater;
use App\Page; use App\Page;
use App\City; use App\City;
use App\LocaterFeed;
use DB; use DB;
use Validator; use Validator;
use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Hash;
...@@ -121,7 +122,9 @@ class SearchController extends Controller ...@@ -121,7 +122,9 @@ class SearchController extends Controller
$api_url = config('app.api_location'); $api_url = config('app.api_location');
$locationDetailAPIdata = $this->call_api($api_url,$locatorID); $locationDetailAPIdata = $this->call_api($api_url,$locatorID);
return view('frontend.searchs.detail', compact('locatorID','locationDetailAPIdata','pageData')); $feedDetail = LocaterFeed::where('locater_feeds.status', '=', '1')->take(6)->get();
return view('frontend.searchs.detail', compact('locatorID', 'locationDetailAPIdata', 'pageData', 'feedDetail'));
} }
......
<?php
namespace App\Imports;
use App\LocaterFeed;
use Maatwebsite\Excel\Concerns\ToModel;
use Maatwebsite\Excel\Concerns\WithHeadingRow;
class FeedsImport implements ToModel, WithHeadingRow
{
/**
* @param array $row
*
* @return \Illuminate\Database\Eloquent\Model|null
*/
public function model(array $row)
{
$getLocaterFeedData = LocaterFeed::where('is_deleted', '=', '0')->pluck('feeds_id','id')->toarray();
if(!in_array($row['id'], $getLocaterFeedData)){
return new LocaterFeed([
'feeds_id' => $row['id'],
'title' => $row['title'],
'description' => htmlentities($row['description']),
'gtin' => $row['gtin'],
'brand' => $row['brand'],
'color' => $row['color'],
'size' => trim($row['size']),
'link' => $row['link'],
'image_link' => $row['image_link'],
'availability' => $row['availability'],
'product_condition' => $row['condition'],
'item_group_id' => $row['item_group_id'],
'google_product_category' => $row['google_product_category'],
'product_type' => $row['product_type'],
'sale_price' => $row['sale_price'],
'price' => $row['price'],
]);
}
}
}
\ No newline at end of file
<?php
namespace App\Exports;
use App\User;
use Maatwebsite\Excel\Concerns\FromCollection;
class UsersExport implements FromCollection
{
/**
* @return \Illuminate\Support\Collection
*/
public function collection()
{
return User::all();
}
}
\ No newline at end of file
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Database\Eloquent\Model;
use Kyslik\ColumnSortable\Sortable;
class LocaterFeed extends Model
{
use Notifiable;
use Sortable;
protected $table = 'locater_feeds';
protected $fillable = ['feeds_id','title','description','gtin','brand','color','size','link','image_link','availability','product_condition','item_group_id','google_product_category','product_type','sale_price','price'];
}
...@@ -30,5 +30,9 @@ class AppServiceProvider extends ServiceProvider ...@@ -30,5 +30,9 @@ class AppServiceProvider extends ServiceProvider
view()->composer('layouts.footer', function ($view) { view()->composer('layouts.footer', function ($view) {
$view->with('homepage', \App\Homepage::homepage()); $view->with('homepage', \App\Homepage::homepage());
}); });
view()->composer('frontend.searchs.detail', function ($view) {
$view->with('homepage', \App\Homepage::homepage());
});
} }
} }
...@@ -48,7 +48,8 @@ Trait Apitraits ...@@ -48,7 +48,8 @@ Trait Apitraits
$expieryUpdationDate = date('d-m-Y', strtotime($expieryDate. ' - 1 days')); $expieryUpdationDate = date('d-m-Y', strtotime($expieryDate. ' - 1 days'));
$currentDate = date('d-m-Y'); $currentDate = date('d-m-Y');
if(strtotime($currentDate) == strtotime($expieryUpdationDate)){ if(strtotime($currentDate) >= strtotime($expieryUpdationDate)){
$file = Storage::disk('public')->exists('key/apikey.dba'); $file = Storage::disk('public')->exists('key/apikey.dba');
$api_key_url = config('app.api_key_url'); $api_key_url = config('app.api_key_url');
......
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
"laravel/framework": "5.8.*", "laravel/framework": "5.8.*",
"laravel/tinker": "^1.0", "laravel/tinker": "^1.0",
"laravelcollective/html": "^5.8", "laravelcollective/html": "^5.8",
"maatwebsite/excel": "^3.1",
"unisharp/laravel-ckeditor": "^4.7" "unisharp/laravel-ckeditor": "^4.7"
}, },
"require-dev": { "require-dev": {
......
...@@ -179,12 +179,29 @@ return [ ...@@ -179,12 +179,29 @@ return [
'url' => 'admin/offers', 'url' => 'admin/offers',
'icon_color' => 'aqua', 'icon_color' => 'aqua',
], ],
[
'text' => 'Feeds Setting',
'icon' => 'share',
'submenu' => [
[
'text' => 'Manage Feeds',
'url' => 'admin/feeds',
'icon_color' => 'aqua',
],
[
'text' => 'Feed Update',
'url' => 'admin/feedSetting',
'icon_color' => 'red',
],
],
],
'SETTINGS', 'SETTINGS',
[ [
'text' => 'Manage Home Page', 'text' => 'Manage Home Page',
'url' => 'admin/homepages', 'url' => 'admin/homepages',
'icon_color' => 'red', 'icon_color' => 'red',
] ],
], ],
/* /*
......
...@@ -170,6 +170,9 @@ return [ ...@@ -170,6 +170,9 @@ return [
Illuminate\View\ViewServiceProvider::class, Illuminate\View\ViewServiceProvider::class,
JeroenNoten\LaravelAdminLte\ServiceProvider::class, JeroenNoten\LaravelAdminLte\ServiceProvider::class,
Kyslik\ColumnSortable\ColumnSortableServiceProvider::class, Kyslik\ColumnSortable\ColumnSortableServiceProvider::class,
Maatwebsite\Excel\ExcelServiceProvider::class,
/* /*
* Package Service Providers... * Package Service Providers...
...@@ -239,6 +242,7 @@ return [ ...@@ -239,6 +242,7 @@ return [
'Form' => Collective\Html\FormFacade::class, 'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\FormFacade::class, 'Html' => Collective\Html\FormFacade::class,
'Apihelpers' => App\Helpers\Apihelpers::class, 'Apihelpers' => App\Helpers\Apihelpers::class,
'Excel' => Maatwebsite\Excel\Facades\Excel::class,
], ],
......
@extends('adminlte::page')
@section('content')
<div class="container-fluid">
<div class="">
<div class="col-sm-6">
<h2>Update Feed</h2>
</div>
<div class="col-sm-6">
<ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item"><a href="#">Home</a></li>
<li class="breadcrumb-item active">Update Feed</li>
</ol>
</div>
</div>
</div><!-- /.container-fluid -->
<section class="content">
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<!-- Horizontal Form -->
<div class="box box-info">
<div class="box-header with-border">
<h3 class="box-title"></h3>
<div class="alert alert-success alert-dismissible groputitle" style="display:none">
</div>
@if(Session::has('message'))
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
{!! session('message') !!}
</div>
@endif
<form id="feeds-mng" method="get" action="{{route('admin.feeds')}}">
{{ csrf_field() }}
<div class="row clearfix">
<div class="col-sm-2">
<a href="{{route('import')}}" class="btn btn-block btn-warning">Updated Feed</a>
</div>
</div>
</form>
</div>
</div>
<!-- /.box -->
</div>
</div>
</div>
@endsection
@extends('adminlte::page')
@section('content')
<div class="container-fluid">
<div class="">
<div class="col-sm-6">
<h2>Feed</h2>
</div>
<div class="col-sm-6">
<ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item"><a href="#">Home</a></li>
<li class="breadcrumb-item active">Feed Tables</li>
</ol>
</div>
</div>
</div><!-- /.container-fluid -->
<section class="content">
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<!-- Horizontal Form -->
<div class="box box-info">
<div class="box-header with-border">
<h3 class="box-title"></h3>
<div class="alert alert-success alert-dismissible groputitle" style="display:none">
</div>
@if(Session::has('add_message'))
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
{!! session('add_message') !!}
</div>
@endif
<form id="feeds-mng" method="get" action="{{route('admin.feeds')}}">
{{ csrf_field() }}
<div class="row clearfix">
<div class="col-sm-2">
<div class="form-group">
<div class="form-line">
<input class="form-control" name="keyword" value="{{old('keyword',$request->keyword)}}" placeholder="Keyword" type="text">
</div>
</div>
</div>
<div class="col-sm-4">
<button type="submit" class="btn btn-primary btn-info">Search<div></div></button>
<a href="{{route('admin.feeds')}}" class="btn btn-primary btn-success">Reset</a>
</div>
<div class="col-sm-2 pull-right">
<a href="{{route('admin.feeds.add')}}" class="btn btn-block btn-warning">Add Feed</a>
</div>
</div>
</form>
@if(Session::has('message'))
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
{!! session('message') !!}
</div>
@endif
</div>
<!-- /.box-header -->
<form id="feeds-add" method="get" action="">
<div class="card">
<!-- /.card-header -->
<div class="card-body">
<table class="table table-bordered">
<tr>
<th style="width: 10px">#</th>
<th>@sortablelink('feeds_id')</th>
<th>@sortablelink('title')</th>
<th>Feed Show</th>
<th>@sortablelink('created_at')</th>
<th style="width: 40px">Action</th>
</tr>
@if(count($data['records'])>0)
<?php $k = ($pageNo == 1) ? $pageNo : (($pageNo - 1) * $record_per_page) + 1; ?>
@foreach($data['records'] as $row)
<tr>
<td>{{$row->id}}</td>
<td>{{$row->feeds_id}}</td>
<td>{{$row->title}}</td>
<td>
<?php
if($row->show_feed == 1){
$checked = "checked";
}else{
$checked = "";
} ?>
<input <?php echo $checked; ?> type="checkbox" class="showFeed" data-id=<?php echo $row->id; ?> style="width: 20px;height: 20px;" name="show">
</td>
<td>{{date("F j, Y", strtotime($row->created_at))}}</td>
<td style="width:10%">
<a href="{{route('admin.feeds.edit',['id'=>$row->id])}}" class="btn btn-info btn-xs action-btn" title ="Edit"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></a>
<a href="{{route('admin.feeds.delete',['id'=>$row->id])}}" class="btn btn-danger btn-xs action-btn" onclick="return confirm('Are you sure you want to delete ?');" title ="Delete"><span class="glyphicon glyphicon-trash" aria-hidden="true"></span></a>
</td>
</tr>
<?php $k++; ?>
@endforeach
@else
<tr class="bg-info">
<td colspan="4">Record(s) not found.</td>
</tr>
@endif
</table>
</div>
<!-- /.card-body -->
<div class="card-footer clearfix">
<ul class="pagination pagination-sm m-0 float-right">
{!! $data['records']->links() !!}
</ul>
</div>
<!-- /.card -->
</div>
</form>
<!-- /.box-body -->
</div>
<!-- /.box -->
</div>
</div>
</div>
<script type="text/javascript">
$(".showFeed").on('click', function () {
var id = $(this).data('id');
var showFeed = $(this).is(":checked");
showFeedData(id,showFeed);
});
function showFeedData(id,showFeed){
$.ajax({
type: 'POST',
url: "{{route('admin.feeds.updateShowFeed')}}",
data: {"_token": "{{ csrf_token() }}",id:id,showFeed:showFeed},
success: function (datanew) {
}
});
}
</script>
@endsection
...@@ -41,16 +41,23 @@ ...@@ -41,16 +41,23 @@
<!-- Custom Tabs --> <!-- Custom Tabs -->
<div class="nav-tabs-custom"> <div class="nav-tabs-custom">
<ul class="nav nav-tabs"> <ul class="nav nav-tabs">
<li class="active"><a href="#other" data-toggle="tab" aria-expanded="true">Other</a></li> <li class="active"><a href="#other" data-toggle="tab" aria-expanded="true">Show Feed</a></li>
<li><a href="#tab_1" data-toggle="tab" aria-expanded="false">MAIN</a></li> <li><a href="#tab_1" data-toggle="tab" aria-expanded="false">MAIN</a></li>
<li class=""><a href="#tab_2" data-toggle="tab" aria-expanded="false">SEO</a></li> <li class=""><a href="#tab_2" data-toggle="tab" aria-expanded="false">SEO</a></li>
</ul> </ul>
<div class="tab-content"> <div class="tab-content">
<div class="tab-pane active" id="other"> <div class="tab-pane active" id="other">
<div class="form-group @if($errors->first('other_setting')) {{' has-error has-feedback'}} @endif "> <div class="form-group">
<label for="inputError" class="col-sm-2 control-label">other_setting</label> <div class="form-line">
<div class="col-sm-10"> <?php
<input type="text" name="other_setting" class="form-control" value="{{old('other_setting',@$data->other_setting)}}"> if($data->show_feed == 1){
$checked = "checked";
}else{
$checked = "";
} ?>
<input <?php echo $checked; ?> type="checkbox" style="width: 25px;height: 25px;" name="show">
<span><b>Checked check box if you want to show feeds in detail page.</b></span>
<br>
</div> </div>
</div> </div>
</div> </div>
...@@ -115,7 +122,7 @@ ...@@ -115,7 +122,7 @@
<!-- /.box-body --> <!-- /.box-body -->
<div class="box-footer"> <div class="box-footer">
<input type="submit" value="Submit" class="btn btn-info"> <input type="submit" value="Submit" class="btn btn-info">
<a href="{{route('admin.pages')}}" class="btn btn-default">Cancel</a> <a href="{{route('admin.homepages')}}" class="btn btn-default">Cancel</a>
</div> </div>
<!-- /.box-footer --> <!-- /.box-footer -->
</form> </form>
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
<form id="homepages-mng" method="get" action="{{route('admin.homepages')}}"> <form id="homepages-mng" method="get" action="{{route('admin.homepages')}}">
{{ csrf_field() }} {{ csrf_field() }}
<div class="row clearfix"> <div class="row clearfix">
<div class="col-sm-2"> <!--<div class="col-sm-2">
<div class="form-group"> <div class="form-group">
<div class="form-line"> <div class="form-line">
<input class="form-control" name="keyword" value="{{old('keyword',$request->keyword)}}" placeholder="Keyword" type="text"> <input class="form-control" name="keyword" value="{{old('keyword',$request->keyword)}}" placeholder="Keyword" type="text">
...@@ -45,19 +45,13 @@ ...@@ -45,19 +45,13 @@
<div class="col-sm-4"> <div class="col-sm-4">
<button type="submit" class="btn btn-primary btn-info">Search<div></div></button> <button type="submit" class="btn btn-primary btn-info">Search<div></div></button>
<a href="{{route('admin.homepages')}}" class="btn btn-primary btn-success">Reset</a> <a href="{{route('admin.homepages')}}" class="btn btn-primary btn-success">Reset</a>
</div> </div>-->
<div class="col-sm-2 pull-right"> <div class="col-sm-2 pull-right">
<a href="{{route('admin.homepages.add')}}" class="btn btn-block btn-warning">Add Homepages</a> <a href="{{route('admin.homepages.add')}}" class="btn btn-block btn-warning">Add Homepages</a>
</div> </div>
</div> </div>
</form> </form>
@if(Session::has('message'))
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
{!! session('message') !!}
</div>
@endif
</div> </div>
...@@ -71,7 +65,7 @@ ...@@ -71,7 +65,7 @@
<table class="table table-bordered"> <table class="table table-bordered">
<tr> <tr>
<th style="width: 10px">#</th> <th style="width: 10px">#</th>
<th>@sortablelink('other_setting')</th> <th>Setting</th>
<th>@sortablelink('created_at')</th> <th>@sortablelink('created_at')</th>
<th style="width: 40px">Action</th> <th style="width: 40px">Action</th>
</tr> </tr>
...@@ -80,7 +74,7 @@ ...@@ -80,7 +74,7 @@
@foreach($data['records'] as $row) @foreach($data['records'] as $row)
<tr> <tr>
<td>{{$row->id}}</td> <td>{{$row->id}}</td>
<td>{{$row->other_setting}}</td> <td>Setting</td>
<td>{{date("F j, Y", strtotime($row->created_at))}}</td> <td>{{date("F j, Y", strtotime($row->created_at))}}</td>
<td style="width:10%"> <td style="width:10%">
<a href="{{route('admin.homepages.edit',['id'=>$row->id])}}" class="btn btn-info btn-xs action-btn" title ="Edit"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></a> <a href="{{route('admin.homepages.edit',['id'=>$row->id])}}" class="btn btn-info btn-xs action-btn" title ="Edit"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></a>
......
...@@ -104,6 +104,32 @@ ...@@ -104,6 +104,32 @@
</div> </div>
</section> </section>
@endif @endif
<?php if($homepage->show_feed == 1){ ?>
<section class="container promotion-wrapper">
<div class="row">
<div class="col-12">
<section class="promotion-wrapper-items">
<?php foreach($feedDetail as $feed){ ?>
<div class="item">
<figure><img src="{{ $feed->image_link }}"> </figure>
<p class="name">{{ $feed->title }}</p>
<p class="currency bold">{{ $feed->price }}</p>
<p class="publisher">{{ $feed->brand }}</p>
<p class="grey-txt">Price drop: {{ $feed->sale_price }}</p>
</div>
<?php } ?>
</section>
</div>
</div>
</section>
<?php } ?>
<section class="container location_reviews_outer"> <section class="container location_reviews_outer">
<div class="row "> <div class="row ">
<div class="col-md-8 col-12"> <div class="col-md-8 col-12">
......
...@@ -26,6 +26,8 @@ Route::post('getCityValue', 'SearchController@getCityValue')->name('getCityValue ...@@ -26,6 +26,8 @@ Route::post('getCityValue', 'SearchController@getCityValue')->name('getCityValue
Route::get('cron/getLocaterListData', 'CronController@getLocaterListData')->name('getLocaterListData'); Route::get('cron/getLocaterListData', 'CronController@getLocaterListData')->name('getLocaterListData');
Route::get('cron/getState', 'CronController@getState')->name('getState'); Route::get('cron/getState', 'CronController@getState')->name('getState');
Route::get('cron/getCity', 'CronController@getCity')->name('getCity'); Route::get('cron/getCity', 'CronController@getCity')->name('getCity');
Route::get('cron/import', 'CronController@import')->name('import');
Route::get('404',['as'=>'404','uses'=>'ErrorHandlerController@errorCode404']); Route::get('404',['as'=>'404','uses'=>'ErrorHandlerController@errorCode404']);
...@@ -60,7 +62,7 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm ...@@ -60,7 +62,7 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm
Route::get('locaters/{id}/delete', 'LocaterController@deleteLocater')->name('admin.locaters.delete'); Route::get('locaters/{id}/delete', 'LocaterController@deleteLocater')->name('admin.locaters.delete');
/* For manage pages */ /* For manage pages */
Route::any('pages', 'PageController@pagesList')->name('admin.pages'); Route::get('pages', 'PageController@pagesList')->name('admin.pages');
Route::get('pages/create', 'PageController@createPage')->name('admin.pages.add'); Route::get('pages/create', 'PageController@createPage')->name('admin.pages.add');
Route::post('pages/create', 'PageController@savePage')->name('admin.pages.save'); Route::post('pages/create', 'PageController@savePage')->name('admin.pages.save');
Route::get('pages/{id}/edit', 'PageController@editPage')->name('admin.pages.edit'); Route::get('pages/{id}/edit', 'PageController@editPage')->name('admin.pages.edit');
...@@ -68,7 +70,7 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm ...@@ -68,7 +70,7 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm
Route::get('pages/{id}/delete', 'PageController@deletePage')->name('admin.pages.delete'); Route::get('pages/{id}/delete', 'PageController@deletePage')->name('admin.pages.delete');
/* For manage offers */ /* For manage offers */
Route::any('offers', 'OfferController@offersList')->name('admin.offers'); Route::get('offers', 'OfferController@offersList')->name('admin.offers');
Route::get('offers/create', 'OfferController@createOffer')->name('admin.offers.add'); Route::get('offers/create', 'OfferController@createOffer')->name('admin.offers.add');
Route::post('offers/create', 'OfferController@saveOffer')->name('admin.offers.save'); Route::post('offers/create', 'OfferController@saveOffer')->name('admin.offers.save');
Route::get('offers/{id}/edit', 'OfferController@editOffer')->name('admin.offers.edit'); Route::get('offers/{id}/edit', 'OfferController@editOffer')->name('admin.offers.edit');
...@@ -76,7 +78,7 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm ...@@ -76,7 +78,7 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm
Route::get('offers/{id}/delete', 'OfferController@deleteOffer')->name('admin.offers.delete'); Route::get('offers/{id}/delete', 'OfferController@deleteOffer')->name('admin.offers.delete');
/* For manage homepages */ /* For manage homepages */
Route::any('homepages', 'HomepageController@homepagesList')->name('admin.homepages'); Route::get('homepages', 'HomepageController@homepagesList')->name('admin.homepages');
Route::get('homepages/create', 'HomepageController@createHomepage')->name('admin.homepages.add'); Route::get('homepages/create', 'HomepageController@createHomepage')->name('admin.homepages.add');
Route::post('homepages/create', 'HomepageController@saveHomepage')->name('admin.homepages.save'); Route::post('homepages/create', 'HomepageController@saveHomepage')->name('admin.homepages.save');
Route::get('homepages/{id}/edit', 'HomepageController@editHomepage')->name('admin.homepages.edit'); Route::get('homepages/{id}/edit', 'HomepageController@editHomepage')->name('admin.homepages.edit');
...@@ -84,7 +86,7 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm ...@@ -84,7 +86,7 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm
Route::get('homepages/{id}/delete', 'HomepageController@deleteHomepage')->name('admin.homepages.delete'); Route::get('homepages/{id}/delete', 'HomepageController@deleteHomepage')->name('admin.homepages.delete');
/* For manage Cities */ /* For manage Cities */
Route::any('cities', 'CityController@citiesList')->name('admin.cities'); Route::get('cities', 'CityController@citiesList')->name('admin.cities');
Route::get('cities/create', 'CityController@createCity')->name('admin.cities.add'); Route::get('cities/create', 'CityController@createCity')->name('admin.cities.add');
Route::post('cities/create', 'CityController@saveCity')->name('admin.cities.save'); Route::post('cities/create', 'CityController@saveCity')->name('admin.cities.save');
Route::get('cities/{id}/edit', 'CityController@editCity')->name('admin.cities.edit'); Route::get('cities/{id}/edit', 'CityController@editCity')->name('admin.cities.edit');
...@@ -92,4 +94,16 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm ...@@ -92,4 +94,16 @@ Route::group(['middleware' => ['auth'], 'prefix' => 'admin', 'namespace' => 'Adm
Route::get('cities/{id}/delete', 'CityController@deleteCity')->name('admin.cities.delete'); Route::get('cities/{id}/delete', 'CityController@deleteCity')->name('admin.cities.delete');
Route::post('getParentValue', 'CityController@getParentValue')->name('getParentValue'); Route::post('getParentValue', 'CityController@getParentValue')->name('getParentValue');
/* For manage Locater Feeds */
Route::get('feeds', 'FeedController@feedsList')->name('admin.feeds');
Route::get('feeds/create', 'FeedController@createFeed')->name('admin.feeds.add');
Route::post('feeds/create', 'FeedController@saveFeed')->name('admin.feeds.save');
Route::get('feeds/{id}/edit', 'FeedController@editFeed')->name('admin.feeds.edit');
Route::post('feeds/{id}/edit', 'FeedController@updateFeed')->name('admin.feeds.update');
Route::get('feeds/{id}/delete', 'FeedController@deleteFeed')->name('admin.feeds.delete');
Route::get('feedSetting', 'FeedController@feedSetting')->name('admin.feeds.feedSetting');
Route::post('updateShowFeed', 'FeedController@updateShowFeed')->name('admin.feeds.updateShowFeed');
}); });
...@@ -3,3 +3,7 @@ For cron ...@@ -3,3 +3,7 @@ For cron
RUN on browser : WWW_ROOT./cron/getLocaterListData RUN on browser : WWW_ROOT./cron/getLocaterListData
RUN on browser : WWW_ROOT./cron/getState RUN on browser : WWW_ROOT./cron/getState
RUN on browser : WWW_ROOT./cron/getCity RUN on browser : WWW_ROOT./cron/getCity
ALTER TABLE `homepages` CHANGE `other_setting` `show_feed` VARCHAR(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL;
ALTER TABLE `locater_feeds` ADD `show_feed` TINYINT(4) NOT NULL DEFAULT '0' AFTER `id`;
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment