mein-sterntours/app/Http/Controllers/LeadController.php
2020-03-12 09:37:01 +01:00

100 lines
2.8 KiB
PHP
Executable file

<?php
namespace App\Http\Controllers;
use App\Models\Lead;
use App\Repositories\LeadRepository;
use Carbon;
use Request;
class LeadController extends Controller
{
protected $leadRepo;
public function __construct(LeadRepository $leadRepo)
{
$this->middleware('admin');
$this->leadRepo = $leadRepo;
}
public function index($step = false)
{
$data = [
'step' => $step
];
return view('lead.index', $data);
}
public function detail($id)
{
if($id === "new") {
$lead = new Lead();
$id = 'new';
}else{
$lead = Lead::findOrFail($id);
$id = $lead->id;
}
$data = [
'lead' => $lead,
'id' => $id,
];
return view('lead.detail', $data);
}
public function store($id)
{
return back();
/* $data = Request::all();
\Session()->flash('alert-save', '1');
return redirect(route('lead_detail', [$lead->id]));*/
}
public function delete($id){
/*
\Session()->flash('alert-success', __('Eintrag gelöscht'));
return redirect(route('lead_detail', [$lead->id]));*/
}
public function getLeads()
{
$query = Lead::with('customer')->with('sf_guard_user')->with('status');
return \DataTables::eloquent($query)
->addColumn('action_edit', function (Lead $lead) {
return '<a href="'.route('lead_detail', [$lead->id]).'" class="btn icon-btn btn-sm btn-primary"><span class="fa fa-edit"></span></a>';
})
->addColumn('id', function (Lead $lead) {
return '<a data-order="'.$lead->id.'" href="'.route('lead_detail', [$lead->id]).'" data-id="'.$lead->id.'">'.$lead->id.'</a>';
})
->addColumn('customer_id', function (Lead $lead) {
return '<a data-order="'.$lead->customer_id.'" href="'.route('customer_detail', [$lead->customer_id]).'" data-id="'.$lead->customer_id.'">'.$lead->customer_id.'</a>';
})
->addColumn('request_date', function (Lead $lead) {
return Carbon::parse($lead->request_date)->format(\Util::formatDateDB());
})
->orderColumn('id', 'id $1')
->orderColumn('customer_id', 'customer_id $1')
->filterColumn('id', function($query, $keyword) {
if($keyword != ""){
$query->where('id', 'LIKE', '%'.$keyword.'%');
}
})
->filterColumn('customer_id', function($query, $keyword) {
if($keyword != ""){
$query->where('customer_id', 'LIKE', '%'.$keyword.'%');
}
})
->rawColumns(['action_edit', 'customer_id', 'sf_guard_user_id', 'id'])
->make(true);
}
}