Enable mobile app for non-pro users

This commit is contained in:
Hillel Coren 2016-05-29 17:31:03 +03:00
parent 990b9bff28
commit 8d0bed3754

View File

@ -23,10 +23,11 @@ class ApiCheck {
{
$loggingIn = $request->is('api/v1/login') || $request->is('api/v1/register');
$headers = Utils::getApiHeaders();
$hasApiSecret = hash_equals($request->api_secret ?: '', env(API_SECRET));
if ($loggingIn) {
// check API secret
if ( ! $request->api_secret || ! env(API_SECRET) || ! hash_equals($request->api_secret, env(API_SECRET))) {
if ( ! $hasApiSecret) {
sleep(ERROR_DELAY);
return Response::json('Invalid secret', 403, $headers);
}
@ -48,7 +49,7 @@ class ApiCheck {
return $next($request);
}
if (!Utils::hasFeature(FEATURE_API) && !$loggingIn) {
if (!Utils::hasFeature(FEATURE_API) && !$hasApiSecret) {
return Response::json('API requires pro plan', 403, $headers);
} else {
$key = Auth::check() ? Auth::user()->account->id : $request->getClientIp();