diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index e226751c8078..223d0943c216 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -212,7 +212,7 @@ class SetupController extends Controller public function checkPdf(Request $request) { try { - if (config('ninja.phantomjs_key')) { + if (config('ninja.phantomjs_pdf_generation')) { return $this->testPhantom(); } @@ -240,7 +240,7 @@ class SetupController extends Controller private function testPhantom() { try { - $key = config('ninja.phantomjs_key'); + $key = config('ninja.phantomjs_pdf_generation'); $url = 'https://www.invoiceninja.org/'; $phantom_url = "https://phantomjscloud.com/api/browser/v2/{$key}/?request=%7Burl:%22{$url}%22,renderType:%22pdf%22%7D"; diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index ff320634ea20..7291e6b8bd8d 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -466,6 +466,9 @@ class UserController extends BaseController */ public function destroy(DestroyUserRequest $request, User $user) { + if($user->isOwner()) + return response()->json(['message', 'Cannot detach owner.'],400); + /* If the user passes the company user we archive the company user */ $user = $this->user_repo->delete($request->all(), $user); @@ -603,6 +606,9 @@ class UserController extends BaseController */ public function detach(DetachCompanyUserRequest $request, User $user) { + if($user->isOwner()) + return response()->json(['message', 'Cannot detach owner.'],400); + $company_user = CompanyUser::whereUserId($user->id) ->whereCompanyId(auth()->user()->companyId())->first(); diff --git a/app/Repositories/UserRepository.php b/app/Repositories/UserRepository.php index bc47a2b5bafe..7c5ce316a17d 100644 --- a/app/Repositories/UserRepository.php +++ b/app/Repositories/UserRepository.php @@ -107,6 +107,9 @@ class UserRepository extends BaseRepository public function destroy(array $data, User $user) { + if($user->isOwner()) + return $user; + if (array_key_exists('company_user', $data)) { $this->forced_includes = 'company_users'; diff --git a/config/ninja.php b/config/ninja.php index db75a9773830..a0634910d285 100644 --- a/config/ninja.php +++ b/config/ninja.php @@ -29,7 +29,7 @@ return [ 'hash_salt' => env('HASH_SALT', ''), 'currency_converter_api_key' => env('OPENEXCHANGE_APP_ID', ''), 'enabled_modules' => 32767, - 'phantomjs_key' => env('PHANTOMJS_KEY', false), + 'phantomjs_key' => env('PHANTOMJS_KEY', 'a-demo-key-with-low-quota-per-ip-address'), 'phantomjs_secret' => env('PHANTOMJS_SECRET', false), 'phantomjs_pdf_generation' => env('PHANTOMJS_PDF_GENERATION', true), 'trusted_proxies' => env('TRUSTED_PROXIES', false),