From 244b5aabbe500d0ca7e6a77144422302a7e9b307 Mon Sep 17 00:00:00 2001 From: cuneytsenturk Date: Wed, 25 Apr 2018 16:56:01 +0300 Subject: [PATCH] App store token verify --- app/Http/Requests/Module/Module.php | 19 ++++++++++++++++++- app/Traits/Modules.php | 19 +++++++++++++++++++ resources/lang/en-GB/modules.php | 1 + 3 files changed, 38 insertions(+), 1 deletion(-) diff --git a/app/Http/Requests/Module/Module.php b/app/Http/Requests/Module/Module.php index 436ce99f3..29807c34e 100644 --- a/app/Http/Requests/Module/Module.php +++ b/app/Http/Requests/Module/Module.php @@ -3,9 +3,26 @@ namespace App\Http\Requests\Module; use App\Http\Requests\Request; +use Illuminate\Validation\Factory as ValidationFactory; +use App\Traits\Modules; class Module extends Request { + use Modules; + + public function __construct(ValidationFactory $validationFactory) + { + + $validationFactory->extend( + 'check', + function ($attribute, $value, $parameters) { + return $this->checkToken($value); + }, + trans('modules.invalid_token') + ); + + } + /** * Determine if the user is authorized to make this request. * @@ -24,7 +41,7 @@ class Module extends Request public function rules() { return [ - 'api_token' => 'required|string', + 'api_token' => 'required|string|check', ]; } } diff --git a/app/Traits/Modules.php b/app/Traits/Modules.php index fa82c221d..224507538 100644 --- a/app/Traits/Modules.php +++ b/app/Traits/Modules.php @@ -12,6 +12,25 @@ use ZipArchive; trait Modules { + public function checkToken($token) + { + $data = [ + 'form_params' => [ + 'token' => $token, + ] + ]; + + $response = $this->getRemote('token/check', 'POST', $data); + + if ($response->getStatusCode() == 200) { + $result = json_decode($response->getBody()); + + return ($result->success) ? true : false; + } + + return false; + } + public function getModules() { $response = $this->getRemote('apps/items'); diff --git a/resources/lang/en-GB/modules.php b/resources/lang/en-GB/modules.php index 3520c9c9b..7d89c2681 100644 --- a/resources/lang/en-GB/modules.php +++ b/resources/lang/en-GB/modules.php @@ -4,6 +4,7 @@ return [ 'title' => 'API Token', 'api_token' => 'Token', + 'invalid_token' => 'Sorry, it invalid token validation!', 'top_paid' => 'Top Paid', 'new' => 'New', 'top_free' => 'Top Free',