diff --git a/app/Jobs/Entity/CreateEntityPdf.php b/app/Jobs/Entity/CreateEntityPdf.php
index ba4ca050190f..e559f2a904c3 100644
--- a/app/Jobs/Entity/CreateEntityPdf.php
+++ b/app/Jobs/Entity/CreateEntityPdf.php
@@ -47,7 +47,7 @@ class CreateEntityPdf implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels, NumberFormatter, MakesInvoiceHtml, PdfMaker, MakesHash, PageNumbering;
- public Invoice | Quote | Credit | RecurringInvoice $entity;
+ public $entity;
public $company;
diff --git a/resources/views/portal/ninja2020/plan/trial.blade.php b/resources/views/portal/ninja2020/plan/trial.blade.php
index c5e65ed3dfd1..ca27057d1496 100644
--- a/resources/views/portal/ninja2020/plan/trial.blade.php
+++ b/resources/views/portal/ninja2020/plan/trial.blade.php
@@ -1458,7 +1458,8 @@ Ensure the default browser behavior of the `hidden` attribute.
id="name"
placeholder="{{ ctrans('texts.name') }}"
name="name"
- value="{{$client->present()->name()}}"
+ value="{{$client->name}}"
+ required
/>
@@ -1822,6 +1823,23 @@ var country_value = e.options[e.selectedIndex].value;
.getElementById('pay-now')
.addEventListener('click', () => {
+ //make sure the user has entered their name
+
+ if (document.querySelector('input[name=name]').value == '') {
+ let errors = document.getElementById('errors');
+ let payNowButton = document.getElementById('pay-now');
+
+ errors.textContent = '';
+ errors.textContent = "{{ ctrans('texts.please_enter_a_name') }}";
+ errors.hidden = false;
+
+ payNowButton.disabled = false;
+ payNowButton.querySelector('svg').classList.add('hidden');
+ payNowButton.querySelector('span').classList.remove('hidden');
+ return;
+ }
+
+
let payNowButton = document.getElementById('pay-now');
payNowButton = payNowButton;
payNowButton.disabled = true;
@@ -1832,6 +1850,7 @@ var country_value = e.options[e.selectedIndex].value;
payment_method_data: {
billing_details: {
name: document.querySelector('input[name=name]').content,
+ email: '{{ $client->present()->email() }}',
address: {
line1: document.querySelector('input[name=address1]').content,
line2: document.querySelector('input[name=address2]').content,
diff --git a/tests/MockAccountData.php b/tests/MockAccountData.php
index 15b5daf6d8a4..c81a97c6a927 100644
--- a/tests/MockAccountData.php
+++ b/tests/MockAccountData.php
@@ -184,6 +184,8 @@ trait MockAccountData
*/
public $scheduler;
+ public $contact;
+
public function makeTestData()
{
config(['database.default' => config('ninja.db.default')]);
@@ -326,6 +328,8 @@ trait MockAccountData
'send_email' => true,
]);
+ $this->contact = $contact;
+
$this->payment = Payment::factory()->create([
'user_id' => $user_id,
'client_id' => $this->client->id,