<?php

namespace App\Http\Controllers\Api\V2;

use Illuminate\Http\Request;
use App\Exceptions\GeneralException;
use App\Http\Controllers\Controller;
use App\Repositories\CurrencyRepository;
use App\Repositories\ReasonRepository;
use App\Repositories\SiteSettingsRepository;

/**
 * Class SettingsApiControllerV2.
 */
class SettingsApiControllerV2 extends Controller
{
    /**
     * @var CurrencyRepository
     * @var ReasonRepository
     * @var SiteSettingsRepository
     */
    protected $currencyRepository;
    protected $reasonRepository;
    protected $siteSettingsRepository;

    /**
     * SettingsApiController constructor.
     *
     * @param CurrencyRepository $curencyRepository
     * @param ReasonRepository $reasonRepository
     * @param SiteSettingsRepository $siteSettingsRepository
     */
    public function __construct(CurrencyRepository $curencyRepository, ReasonRepository $reasonRepository, SiteSettingsRepository $siteSettingsRepository)
    {
        $this->curencyRepository = $curencyRepository;
        $this->reasonRepository = $reasonRepository;
        $this->siteSettingsRepository = $siteSettingsRepository;
    }

    /**
     * Get About us Details.
     *
     * @param Json ApiRequest $request
     *
     * @return \Illuminate\Http\JsonResponse
     * @throws GeneralException
     */
    public function getAboutUsDetails(Request $request)
    {
        $response = array();
        $output = array();

        $about_details = $this->siteSettingsRepository->getAboutDetails();
        if($about_details) {
            $status = 100;
            $statusCode = 200;
            $output = $about_details;
            $message = "Successful";
        } else {
            $status = 300;
            $statusCode = 402;
            $message = "Sorry something wrong !!!";
        }
        $response = array('status'=>$status, 'message'=>$message, 'result'=>$output);
        return response()->json($response);
    }
}
