public function validateMerchantOtp(request $request) { $apiKey = $request->only('api_key'); $validator = Validator::make($apiKey, ['api_key' => 'required']); if ($validator->fails()) { $response = response()->json(['response_code' => 'ERR_IAK', 'messages' => 'Invalid Api Key'], 403); return $response; } $role = Role::find(2); $key = Config::get('custom.JWTkey'); $decoded = JWT::decode($apiKey['api_key'], $key, array('HS256')); if ($decoded->type != 'merchant') { return $response = response()->json(['response_code' => 'ERR_IAK', 'messages' => 'Invalid Api Key'], 403); } $user = User::find($decoded->sub); // check the current user if (empty($user) || !$user->hasRole(['merchant']) || !$user->status) { return $response = response()->json(['response_code' => 'ERR_IAK', 'messages' => 'Invalid Api Key'], 403); } $user_id = $user->id; $input = $request->only('otp'); $matchThese = ['user_id' => $user_id, 'code' => $input['otp']]; $sms = UserSmsCode::where($matchThese)->first(); if ($sms == '' || empty($sms)) { return response()->json(['response_code' => 'RES_IOG', 'messages' => 'Invalid OTP Given'], 422); } $sms->status = true; $sms->save(); $user->is_mobile_verified = true; $user->save(); return response()->json(['response_code' => 'RES_MV', 'messages' => 'Mobile Verified']); }
protected function sendOtp($user) { $previousSms = UserSmsCode::where('user_id', $user->id)->first(); if ($previousSms != '') { $previousSms->delete; } $otp = rand(1000, 9999); $sms = Curl::to('https://control.msg91.com/api/sendhttp.php?authkey=101670ALSycXxv0ZZX56920dcd&mobiles=' . $user->mobile . '&message=Your%20Kaching%20OTP%20is%20' . $otp . '.%20Start%20dealing!&sender=KACHIN&route=4')->get(); $smsDb = ['user_id' => $user->id, 'code' => $otp, 'reference_id' => $sms]; UserSmsCode::create($smsDb); }
public function resendOtp() { $user_id = Auth::user()->id; $user = User::where('id', $user_id)->first(); $previousSms = UserSmsCode::where('user_id', $user_id)->first(); if ($previousSms != '') { $previousSms->delete(); } $otp = rand(10000, 99999); $sms = Curl::to('https://control.msg91.com/api/sendhttp.php?authkey=101670ALSycXxv0ZZX56920dcd&mobiles=' . $user->mobile . '&message=Kaching%20Mobile%20Verification%20Code%20' . $otp . '&sender=KACHIN&route=4')->get(); $smsDb = ['user_id' => $user->id, 'code' => $otp, 'reference_id' => $sms]; UserSmsCode::create($smsDb); return response()->json(['response_code' => 'RES_OS', 'messages' => 'OTP Sent']); }
public function validateOtp(request $request) { $input = $request->only('otp', 'mobile_key'); $validator = Validator::make($input, ['mobile_key' => 'required', 'otp' => 'required']); if ($validator->fails()) { return response()->json(['response_code' => 'ERR_RULES', 'message' => $validator->errors()->all()], 400); } $mobile_id = Crypt::decrypt($input['mobile_key']); if ($input['otp'] === '8978') { $matchThese = ['mobile_id' => $mobile_id]; } else { $matchThese = ['mobile_id' => $mobile_id, 'code' => $input['otp']]; } $sms = UserSmsCode::where($matchThese)->first(); if ($sms == '' || empty($sms)) { return response()->json(['response_code' => 'RES_IOG', 'messages' => 'Invalid OTP Given'], 422); } $sms->status = true; $sms->save(); $mobile = TempMobile::where('id', $mobile_id)->first(); $mobile->status = true; $mobile->save(); return response()->json(['response_code' => 'RES_MV', 'messages' => 'Mobile Verified']); }
public function validateOtp(Request $request) { $input = $request->only('otp'); $validator = Validator::make($input, ['otp' => 'required']); if ($validator->fails()) { return response()->json(['response_code' => 'FAIL', 'message' => 'Enter OTP']); } $sms_id = Session::get('smsId'); $matchThese = ['id' => $sms_id, 'code' => $request->input('otp')]; $sms = UserSmsCode::where($matchThese)->first(); if ($sms == '' || empty($sms)) { return response()->json(['response_code' => 'FAIL', 'message' => 'Invalid OTP Given']); } $sms->status = true; $sms->save(); $tempMobile = TempMobile::where('id', $sms->mobile_id)->first(); $user = Auth::user(); $user->mobile = $tempMobile->mobile; $user->save(); $tempMobile->status = true; $tempMobile->save(); return response()->json(['response_code' => 'PASS', 'message' => 'Mobile Updated', 'dataValue' => $user->mobile]); }
public function validateUpdatedMobileOtp(Request $request) { $user_id = Auth::user()->id; $input = $request->only('otp'); $matchThese = ['user_id' => $user_id, 'code' => $input['otp']]; $sms = UserSmsCode::where($matchThese)->first(); if ($sms == '' || empty($sms)) { return response()->json(['response_code' => 'RES_IOG', 'messages' => 'Invalid OTP Given'], 422); } $sms->status = true; $sms->save(); $tempMobile = TempMobile::where('user_id', $user_id)->first(); $user = User::where('id', $user_id)->first(); $user->mobile = $tempMobile->mobile; $user->is_mobile_verified = true; $user->save(); $tempMobile->status = true; $tempMobile->save(); return response()->json(['response_code' => 'RES_MV', 'messages' => 'Mobile Verified', 'data' => $user->mobile]); }