diff --git a/app/Http/Controllers/BaseController.php b/app/Http/Controllers/BaseController.php index 90bdc3429ff7..9332df3876f6 100644 --- a/app/Http/Controllers/BaseController.php +++ b/app/Http/Controllers/BaseController.php @@ -800,7 +800,7 @@ class BaseController extends Controller $this->buildCache(); - if(config('ninja.react_app_enabled')) + if(Ninja::isSelfHost() && $account->set_react_as_default_ap) return response()->view('react.index', $data)->header('X-Frame-Options', 'SAMEORIGIN', false); else return response()->view('index.index', $data)->header('X-Frame-Options', 'SAMEORIGIN', false); diff --git a/app/Http/Controllers/SelfUpdateController.php b/app/Http/Controllers/SelfUpdateController.php index 06105ab32e20..051b4066d1a4 100644 --- a/app/Http/Controllers/SelfUpdateController.php +++ b/app/Http/Controllers/SelfUpdateController.php @@ -196,15 +196,26 @@ class SelfUpdateController extends BaseController private function cleanOldSnapChromeBinaries() { $current_revision = base_path('vendor/beganovich/snappdf/versions/revision.txt'); + $current_revision_text = file_get_contents($current_revision); - $directoryIterator = new \RecursiveDirectoryIterator(base_path('vendor/beganovich/snappdf/versions'), \RecursiveDirectoryIterator::SKIP_DOTS); + $iterator = new \DirectoryIterator(base_path('vendor/beganovich/snappdf/versions')); - foreach (new \RecursiveIteratorIterator($directoryIterator) as $file) { + foreach ($iterator as $file) + { - unlink($file->getPathName()); + if($file->isDir() && !$file->isDot() && ($current_revision_text != $file->getFileName())) + { - } + $directoryIterator = new \RecursiveDirectoryIterator(base_path('vendor/beganovich/snappdf/versions/'.$file->getFileName()), \RecursiveDirectoryIterator::SKIP_DOTS); + foreach (new \RecursiveIteratorIterator($directoryIterator) as $filex) + { + unlink($filex->getPathName()); + } + + } + + } } diff --git a/app/Models/Account.php b/app/Models/Account.php index b2a94fb95dff..1692ac7d6ea4 100644 --- a/app/Models/Account.php +++ b/app/Models/Account.php @@ -57,7 +57,7 @@ class Account extends BaseModel 'utm_content', 'user_agent', 'platform', - // 'set_react_as_default_ap', + 'set_react_as_default_ap', ]; /** @@ -75,7 +75,8 @@ class Account extends BaseModel 'updated_at' => 'timestamp', 'created_at' => 'timestamp', 'deleted_at' => 'timestamp', - 'onboarding' => 'object' + 'onboarding' => 'object', + 'set_react_as_default_ap' => 'bool' ]; const PLAN_FREE = 'free'; diff --git a/app/Transformers/AccountTransformer.php b/app/Transformers/AccountTransformer.php index 502f0b9dedc5..9536a9dc422f 100644 --- a/app/Transformers/AccountTransformer.php +++ b/app/Transformers/AccountTransformer.php @@ -86,7 +86,7 @@ class AccountTransformer extends EntityTransformer 'hosted_client_count' => (int) $account->hosted_client_count, 'hosted_company_count' => (int) $account->hosted_company_count, 'is_hosted' => (bool) Ninja::isHosted(), - // 'set_react_as_default_ap' => (bool) $account->set_react_as_default_ap + 'set_react_as_default_ap' => (bool) $account->set_react_as_default_ap ]; } diff --git a/database/migrations/2022_06_10_030503_set_account_flag_for_react.php b/database/migrations/2022_06_10_030503_set_account_flag_for_react.php index a81f53fa4c3e..3a26ea68b3a3 100644 --- a/database/migrations/2022_06_10_030503_set_account_flag_for_react.php +++ b/database/migrations/2022_06_10_030503_set_account_flag_for_react.php @@ -23,9 +23,6 @@ class SetAccountFlagForReact extends Migration { Illuminate\Support\Facades\Artisan::call('ninja:design-update'); - // Schema::table('accounts', function (Blueprint $table) { - // $table->boolean('set_react_as_default_ap')->default(0); - // }); } /** diff --git a/database/migrations/2022_06_16_025156_add_react_switching_flag.php b/database/migrations/2022_06_16_025156_add_react_switching_flag.php new file mode 100644 index 000000000000..704846795358 --- /dev/null +++ b/database/migrations/2022_06_16_025156_add_react_switching_flag.php @@ -0,0 +1,30 @@ +boolean('set_react_as_default_ap')->default(0); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + // + } +} diff --git a/public/react/invoiceninja-logo@dark.365f6449.png b/public/react/invoiceninja-logo@dark.365f6449.png new file mode 100644 index 000000000000..2ad35df26882 Binary files /dev/null and b/public/react/invoiceninja-logo@dark.365f6449.png differ diff --git a/resources/views/portal/ninja2020/vendor_profile/edit.blade.php b/resources/views/portal/ninja2020/vendor_profile/edit.blade.php new file mode 100644 index 000000000000..f7fb6a6d1289 --- /dev/null +++ b/resources/views/portal/ninja2020/vendor_profile/edit.blade.php @@ -0,0 +1,177 @@ +@extends('portal.ninja2020.layout.vendor_app') + +@section('meta_title', ctrans('texts.vendor_information')) + +@section('header') +
{{ ctrans('texts.update_your_personal_info') }}
+@endsection + +@section('body') + @if(session()->has('missing_required_fields')) +{{ ctrans('texts.before_proceeding_with_payment_warning') }}:
+ +