Ngiler SH3LL 360
Home
Information
Create File
Create Folder
:
/
home
/
tbf
/
duplicat_sala_palatului
/
app
/
Http
/
Controllers
/
Information Server
MySQL :
OFF
Perl :
OFF
CURL :
ON
WGET :
OFF
PKEXEC :
OFF
Directive
Local Value
IP Address
89.40.16.97
System
Linux server.atelieruldeit.ro 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64
User
tbf
PHP Version
7.3.33
Software
Apache
Doc root
Writable
close
Edit File :
ContactController.php
| Size :
3.02
KB
Copy
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\QuizResult; use Carbon\Carbon; use Auth; use DB; class ContactController extends Controller { public function index(Request $request){ $viewMore = $request->view_more; $quiz_results = $this->filterApplicants($request, true); // has to be before take to have all results $totalResults = $quiz_results->count(); return response()->json([ 'data' => $quiz_results->skip($viewMore)->take(100)->get(), 'total' => $totalResults, 'status' => 'success', ], 200); } public function getStatuses(Request $request) { $statuses = config('status_options.dropdown_options'); $data = []; foreach($statuses as $statusKey => $status) { $data[$statusKey] = [ 'key' => $statusKey, 'name' => $status, 'count' => $this->filterApplicants($request, false)->where('status', $statusKey)->count() ]; } return response()->json([ 'data' => $data, 'status' => 'success', ]); } private function filterApplicants($request, $withStatus = false) { $referrals = $request->referrals; $startDate = $request->start_date; $endDate = $request->end_date; $status = $request->status; $search = $request->search; $quiz_results = QuizResult::with('activity_logs')->where('contact_data', 1)->orderByDesc('created_at'); if($referrals){ $quiz_results = $quiz_results->whereIn('referral_id', $referrals); } if($startDate){ $quiz_results = $quiz_results->whereBetween('created_at', [ Carbon::parse($startDate)->startOfDay(), Carbon::parse($endDate)->endOfDay() ]); } if($status && $withStatus){ $quiz_results = $quiz_results->where('status', $status); } if($search){ $quiz_results = $quiz_results->where(function ($subQuery) use ($search) { $subQuery->where('full_name', 'like', "%" . $search . "%") ->orWhere('company_name', 'like', "%" . $search . "%") ->orWhere('email', 'like', "%" . $search . "%") ->orWhere('cui', 'like', "%" . $search . "%"); }); } return $quiz_results; } public function change_contact_status(Request $request){ $quiz_result = QuizResult::findOrFail($request->entity_id); $quiz_result->update(['status' => $request->status]); return response()->json('Ati actualizat cu succes!'); } public function show($id){ $quiz_result = QuizResult::findOrFail($id); $json = json_decode($quiz_result->entity_json , true); return response()->json(['json' => $json, 'quiz_result' => $quiz_result], 200); } public function destroy($id){ QuizResult::destroy($id); return response()->json('Success', 200); } }
Back