File: /var/www/html/fieldsblaze-heroku/app/Http/Controllers/APIAdminController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Validator;
use DB;
use App\Library\UserLib;
use App\Models\User;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Support\Facades\Crypt;
class APIAdminController extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
//User Registration
public function register(Request $request) {
//TODO What is device_token
$data = $request->json()->all();
$token = $this->userLib->tokenGenrator();
$UserId = $this->userLib->useridGenrator();
$tblData = array();
$CreatedDate = date('Y-m-d H:i:s',time());
$validator = Validator::make($data, [
'mobile' => 'required|Mobile|max:255',
]);
//check validation
if ($validator->fails())
{
$response = [
'success' => false,
'error_message' => "Mobile is required!",
'error_code' => '220',
];
return response()->json($response);
}
//Check Memeber is exist or not
$user = User::where('Mobile', $data['Mobile'])->get();
if ($user->count() > 0)
{ //email is not exist
$response = [
'success' => false,
'error_message' => "Email already exist!",
'error_code' => "201",
];
return response()->json($response);
}
else
{ //get user data
$data['UserId'] = $UserId;
$data['ModifiedDate'] = $CreatedDate;
$data['CreatedDate'] = $CreatedDate;
$user_insert = DB::connection('DBD')->table('tbl_user')->insert($data);
if($user_insert)
{
//get user details
$user_details = User::where('Mobile', $data['Mobile'])->get();
$user_data = $user_details->first();
//create auth token
$tblData['UserId'] = $user_data->UserId;
$tblData['AuthToken'] = $token;
$tblData['CreatedDate'] = $CreatedDate;
$auth = DB::connection('DBD')->table('tbl_user_auth')->insert($tblData);
unset($user_data->password);
unset($user_data->reset_key);
if($auth)
{ // success
$response = [
'success' => true,
'error_message' => "Success",
'error_code' => "200",
'UserId' => $user_data->UserId,
'AuthToken' => $token,
'auth' => $auth,
'user' => $user_data,
'api_url' => env('APP_URL'),
];
}
else
{
// fail
$response = [
'success' => false,
'error_message' => "Invalid Auth",
'error_code' => "203",
'auth' => $auth
];
}
return response()->json($response);
}
else
{
// fail
$response = [
'success' => false,
'error_message' => "Invalid data",
'error_code' => "202",
];
return response()->json($response);
}
}
}
}