File: /mnt/data/ghayatcom/ghayatcom-api/app/Http/Controllers/Api/WebSiteSettingsController.php
<?php
namespace App\Http\Controllers\api;
use App\Http\Controllers\Controller;
use App\Http\Requests\SimplePaginationRequest;
use App\Http\Requests\SiteDetailsRequest;
use App\Http\Resources\WebSettingResource;
use App\User;
use App\{WebSetting};
use Auth;
use DB;
use Exception;
use Hash;
use Illuminate\Database\QueryException;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Http;
use Throwable;
use Validator;
class WebSiteSettingsController extends Controller
{
public function addSiteDetails(SiteDetailsRequest $request)
{
try {
$validated = $request->validated();
$WebSetting = WebSetting::firstOrNew([
'id' => 1,
]);
if(!empty($request->website_name)) {
$WebSetting->site_name = $request->website_name;
}
if(!empty($request->terms_and_conditions)) {
$WebSetting->terms_and_conditions = $request->terms_and_conditions;
}
if(!empty($request->contact_email)) {
$WebSetting->contact_email = $request->contact_email;
}
if(!empty($request->contact_no)) {
$WebSetting->contact_no = $request->contact_no;
}
if(!empty($request->address)) {
$WebSetting->address = $request->address;
}
if(!empty($request->copyright)) {
$WebSetting->copyright = $request->copyright;
}
if(!empty($request->website)) {
$WebSetting->website = $request->website;
}
if(!empty($request->quick_links)) {
$WebSetting->quick_links = $request->quick_links;
}
$WebSetting->save();
return self::sentResponse(200, $WebSetting, __('digimed_validation.success_response.websettings_success'));
} catch (Exception | Throwable | QueryException $e) {
DB::rollback();
return self::sentResponse(500, [], $e->getMessage());
}
}
public function index(Request $request)
{
try {
$WebSetting = WebSetting::first();
return self::sentResponse(200, $WebSetting, __('digimed_validation.success_response.data_fetch_success'));
// return new WebSettingResource($WebSetting, 200);
} catch (Exception | Throwable | QueryException $e) {
return self::sentResponse(500, [], $e->getMessage());
}
}
// for testing purpose
// public function anlysisDistanceMatrix() {
// $origins_lat = 35.8939437;
// $origins_long = 14.4658632;
// $destinations_lat = 11.0168445;
// $destinations_long = 76.9558321;
// $api_key = 'AIzaSyAT5tpb333HWJ8RIkaNXqkAPGim6XTODDg';
// $a = $origins_lat.','.$origins_long;
// $b = $destinations_lat.','.$destinations_long;
// // $a = urlencode('Singanallur Police Station, Tiruchi Road, Ward 63, - 641015, Tamil Nadu, India');
// // $b = urlencode('Tiruchi Road, Ondipudur, - 641016, Tamil Nadu, India');
// $url = 'https://maps.googleapis.com/maps/api/directions/json?origin='.$a.'&destination='.$b.'&key='.$api_key;
// // echo $url;exit;
// $response = Http::get($url);
// /**
// * @var array $result
// */
// $result = $response->json();
// $status = $result['status'];
// // echo $status;exit;
// print_r($result);die;
// return self::sentResponse(200, $result['routes'], __('digimed_validation.success_response.data_fetch_success'));
// }
}