File manager - Edit - /home/autoph/repositories/AutoHub-Rating/app/Http/Controllers/AnswerController.php
Back
<?php namespace App\Http\Controllers; use App\Models\Link; use App\Models\Questionnaire; use App\Models\Questions; use App\Models\Answer; use App\Models\System; use App\Models\Template; use App\Models\User; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Redirect; use Jenssegers\Agent\Agent; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Mail; use Illuminate\Http\Request; class AnswerController extends Controller { public function verify(Request $request){ $page_title = "Survey Form"; if(Auth::check()){ $questionsArr = []; $url = $request->url(); $url = explode("/",$url); // dd($url); $conditions = [ ['sys_id',$url[5]], ['tmp_id',$url[7]] ]; $conditions2 = [ ['s_id',$url[5]], ['t_id',$url[7]], ['status',1], ['active',1] ]; $conditions3 = [ ['user_id',Auth::user()->id], ['tmpt_id',$url[7]], ['syst_id',$url[5]] ]; $check = Link::where($conditions)->get(); $checkIfAlreadyResponded = Answer::where($conditions3)->first(); $qstnn_id = Questionnaire::select('id','instruction')->where([['s_id',$url[5]],['t_id',$url[7]]])->first(); if(!empty($check[0])){ if(!$checkIfAlreadyResponded){ $questions = Template::select('q_id')->where('id',$url[7])->get(); $questionnaire = array_map('intval',json_decode($questions[0]->q_id)); $system_title = System::select('system_name')->where('id',"=",$url[5])->get(); foreach($questionnaire as $row){ $questions = Questions::select('title')->where('id',$row)->get(); $questionsArr['questions'][] = [ 'title' => $questions[0]->title, 'qst_id' => $row ]; } $s_id = $url[5]; $t_id = $url[7]; $q_id = $qstnn_id->id; $instruction = $qstnn_id->instruction; return view('users.verify',compact('questionsArr','t_id','s_id','q_id','system_title','instruction'))->with(['page_title' => $page_title]); } else { return view()->make('message.error',['message' => '<center><h1>You responded already!</h1></center>'])->with(['page_title' => $page_title]); } } else { abort(404); } } else { session(['url.intended' => url()->current()]); return redirect('userlogin'); } } public function getAnswer(Request $request){ $arr = json_decode($request->stars); $result = []; foreach ($arr as $subArr) { $index0 = $subArr[0]; if (!isset($result[$index0])) { $result[$index0] = $subArr; } else { $result[$index0] = $subArr; } } $result = array_values($result); $qst = []; $ans = []; // dd($result); foreach($result as $row){ $qsts = $row[0]; $qst[] = $qsts; } foreach($result as $row){ $ansr = $row[1]; $ans[] = $ansr; } // foreach($result as $row){ $answer = Answer::insertGetId([ 'user_id' => Auth::user()->id, 'tmpt_id' => $request->t_id, 'syst_id' => $request->s_id, 'qstnn_id' => $request->q_id, 'qst_id' => json_encode($qst), 'rating' => json_encode($ans), 'comment' => $request->comment ]); // } $agent = new Agent(); if($agent->isDesktop()){ DB::table('device_access')->where('id',1) ->increment('pc',1); } if($agent->isMobile()){ DB::table('device_access')->where('id',1) ->increment('mobile',1); } if($agent->isTablet()){ DB::table('device_access')->where('id',1) ->increment('tablet',1); } $this->emailResponse($answer); return response()->json(["message"=>"success"],200); } public function employeeLogin(Request $request){ $url = 'https://autohub.ph/connect/api/v1/asa/api.php'; $params = [ 'key'=>'99797807845605376', 'username'=>$request->id, 'password'=>$request->password ]; // $params = [ // 'id' => $request->id, // 'key' => "99799116300681216" // ]; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $op = curl_exec ($ch); $err = curl_error($ch); //if you need curl_close ($ch); $response = json_decode($op,true); // dd($response); // $url2 = 'https://autohub.ph/connect/api/v1/asa/api.php'; // $parameters2 = array( // 'key'=>"99799116300681218", // 'company_id'=>$response['company'], // ); // $ch2 = curl_init(); // curl_setopt($ch2, CURLOPT_URL, $url2); // curl_setopt($ch2, CURLOPT_POST, 1); // curl_setopt($ch2, CURLOPT_POSTFIELDS, http_build_query($parameters2)); // curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true); // $op2 = curl_exec ($ch2); // $err2 = curl_error($ch2); //if you need // curl_close ($ch2); // $response2 = json_decode($op2,true); if($response['status'] == 0){ // dd($response['message']); return response()->json(["message"=>"no user"],403); } else { $user = User::select('id')->where([['f_name',"=",$response['u_fname']],['l_name',"=",$response['u_lname']], ['email',"=",$response['email']]])->first(); if(empty($user)){ $user = User::create([ 'f_name' => $response['u_fname'], 'l_name' => $response['u_lname'], 'email' => $response['email'], 'password' => bcrypt($response['u_password']), 'type' => "ratee" ]); Auth::login($user); } else { // dd($user); Auth::login($user); } $rdr = explode("/",session('url.intended')); $link = "/".$rdr[3]."/".$rdr[4]."/".$rdr[5]."/".$rdr[6]."/".$rdr[7]; return response()->json($link); // dd($user); // $login = User::findOrFail($user); } return response()->json(["message"=>"data not valid"],403); } public function emailResponse($answer){ $result = Answer::findOrFail($answer); $questions = json_decode($result->qst_id); $qs = []; $template = Template::findOrFail($result->tmpt_id); $user = Auth::user()->l_name . ", " . Auth::user()->f_name; $info = [ 'template' => $template['title'], 'user' => $user, 'email' => Auth::user()->email ]; foreach($questions as $key => $id){ $title = Questions::select('title')->where('id',$id)->first(); $ans = json_decode($result->rating); // dd($ans); $qs[] = [$title['title'],$ans[$key]]; } Mail::send('mail.response',['qs' => $qs,'info' => $info], function($message){ $message->to(Auth::user()->email,Auth::user()->email)->subject('Response'); $message->from('ahub56702@gmail.com','AutoHub Group of Companies, Inc.'); }); } }
| ver. 1.4 |
.
| PHP 7.3.33 | Generation time: 0 |
proxy
|
phpinfo
|
Settings