@extends('marketing.layout') @section('title', __('marketing.register_page_title', ['app' => $appName])) @section('description', __('marketing.register_page_description', ['days' => $trialDays])) @push('head') @endpush @section('content')
{{ __('marketing.register_trial_badge', ['days' => $trialDays]) }}

{{ __('marketing.register_h1') }}

{{ __('marketing.register_lead', ['app' => $appName]) }}

@if($errors->any())
{{ __('marketing.register_errs_intro') }}
    @foreach($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif {{-- reCAPTCHA v3: loader script + IIFE that executes for the 'register' action and writes the token into the hidden input below. Empty when SA has reCAPTCHA off, so the form degrades to plain POST. --}} {!! $recaptchaScript ?? '' !!}
@csrf @if($recaptchaActive ?? false) @endif
{{ __('marketing.register_workspace_hint_pre') }} {{ url('/') }}/{{ __('marketing.register_placeholder_slug') }}{!! __('marketing.register_workspace_hint_post') !!}
{{-- Dynamic config for register.js — base URL + reserved slug list + translated warning template. Mirrors Str::slug() on the server to give live feedback before the user submits. The payload is pre-built in a PHP block and emitted via a single variable. Inlining the array literal directly inside the json directive can trigger a paren-balancer bug in the Blade compiler when the literal contains nested function calls — the compiled output gets truncated mid-array. --}} @php $lhRegisterCfg = [ 'base' => rtrim(url('/'), '/'), 'reserved' => \App\Support\ReservedSlugs::ALL, 'warnTemplate' => __('marketing.register_slug_reserved_warn'), 'placeholderSlug' => __('marketing.register_placeholder_slug'), ]; @endphp
{{ __('marketing.register_password_hint') }}
@if(!empty($selectedPlan)) @endif
{{ __('marketing.register_coupon_hint') }}
@if (session('coupon_warning'))
{{ session('coupon_warning') }}
@endif
{{ __('marketing.register_alt_have_account') }} {{ __('marketing.register_alt_signin') }}
@endsection