mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-06-23 08:10:58 -04:00
Minor fixes for invitation resolution for quotes
This commit is contained in:
parent
ea144a43a4
commit
6836ed4d48
@ -138,6 +138,10 @@ class PortalComposer
|
|||||||
$data[] = ['title' => ctrans('texts.subscriptions'), 'url' => 'client.subscriptions.index', 'icon' => 'calendar'];
|
$data[] = ['title' => ctrans('texts.subscriptions'), 'url' => 'client.subscriptions.index', 'icon' => 'calendar'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($this->settings->client_initiated_payments) {
|
||||||
|
$data[] = ['title' => ctrans('texts.pre_payment'), 'url' => 'client.pre_payments.index', 'icon' => 'dollar-sign'];
|
||||||
|
}
|
||||||
|
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,7 +19,7 @@ use Illuminate\Support\Facades\Storage;
|
|||||||
|
|
||||||
class GetQuotePdf extends AbstractService
|
class GetQuotePdf extends AbstractService
|
||||||
{
|
{
|
||||||
public function __construct(Quote $quote, ClientContact $contact = null)
|
public function __construct(public Quote $quote, public ClientContact $contact = null)
|
||||||
{
|
{
|
||||||
$this->quote = $quote;
|
$this->quote = $quote;
|
||||||
|
|
||||||
@ -34,6 +34,9 @@ class GetQuotePdf extends AbstractService
|
|||||||
|
|
||||||
$invitation = $this->quote->invitations->where('client_contact_id', $this->contact->id)->first();
|
$invitation = $this->quote->invitations->where('client_contact_id', $this->contact->id)->first();
|
||||||
|
|
||||||
|
if(!$invitation)
|
||||||
|
$invitation = $this->quote->invitations->first();
|
||||||
|
|
||||||
$path = $this->quote->client->quote_filepath($invitation);
|
$path = $this->quote->client->quote_filepath($invitation);
|
||||||
|
|
||||||
$file_path = $path . $this->quote->numberFormatter() . '.pdf';
|
$file_path = $path . $this->quote->numberFormatter() . '.pdf';
|
||||||
@ -45,6 +48,6 @@ class GetQuotePdf extends AbstractService
|
|||||||
$file_path = (new CreateEntityPdf($invitation))->handle();
|
$file_path = (new CreateEntityPdf($invitation))->handle();
|
||||||
|
|
||||||
return $file_path;
|
return $file_path;
|
||||||
//return Storage::disk($disk)->path($file_path);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5020,7 +5020,7 @@ $LANG = array(
|
|||||||
'white_label_body' => 'Thank you for purchasing a white label license. <br><br> Your license key is: <br><br> :license_key',
|
'white_label_body' => 'Thank you for purchasing a white label license. <br><br> Your license key is: <br><br> :license_key',
|
||||||
'payment_type_Klarna' => 'Klarna',
|
'payment_type_Klarna' => 'Klarna',
|
||||||
'payment_type_Interac E Transfer' => 'Interac E Transfer',
|
'payment_type_Interac E Transfer' => 'Interac E Transfer',
|
||||||
|
'pre_payment' => 'Pre Payment',
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
1
public/images/svg/dark/dollar-sign.svg
Normal file
1
public/images/svg/dark/dollar-sign.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-dollar-sign"><line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
|
After Width: | Height: | Size: 334 B |
1
public/images/svg/dollar-sign.svg
Normal file
1
public/images/svg/dollar-sign.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#ffffff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-dollar-sign"><line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>
|
After Width: | Height: | Size: 329 B |
@ -1,19 +1,20 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
use App\Http\Controllers\Auth\ContactForgotPasswordController;
|
|
||||||
use App\Http\Controllers\Auth\ContactLoginController;
|
|
||||||
use App\Http\Controllers\Auth\ContactRegisterController;
|
|
||||||
use App\Http\Controllers\Auth\ContactResetPasswordController;
|
|
||||||
use App\Http\Controllers\BaseController;
|
|
||||||
use App\Http\Controllers\ClientPortal\PaymentMethodController;
|
|
||||||
use App\Http\Controllers\ClientPortal\SubscriptionController;
|
|
||||||
use App\Http\Controllers\ClientPortal\TaskController;
|
|
||||||
use App\Http\Controllers\CreditController;
|
|
||||||
use App\Http\Controllers\InvoiceController;
|
|
||||||
use App\Http\Controllers\QuoteController;
|
|
||||||
use App\Http\Controllers\RecurringInvoiceController;
|
|
||||||
use App\Utils\PhantomJS\Phantom;
|
use App\Utils\PhantomJS\Phantom;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
|
use App\Http\Controllers\BaseController;
|
||||||
|
use App\Http\Controllers\QuoteController;
|
||||||
|
use App\Http\Controllers\CreditController;
|
||||||
|
use App\Http\Controllers\InvoiceController;
|
||||||
|
use App\Http\Controllers\RecurringInvoiceController;
|
||||||
|
use App\Http\Controllers\Auth\ContactLoginController;
|
||||||
|
use App\Http\Controllers\ClientPortal\TaskController;
|
||||||
|
use App\Http\Controllers\Auth\ContactRegisterController;
|
||||||
|
use App\Http\Controllers\ClientPortal\PrePaymentController;
|
||||||
|
use App\Http\Controllers\Auth\ContactResetPasswordController;
|
||||||
|
use App\Http\Controllers\ClientPortal\SubscriptionController;
|
||||||
|
use App\Http\Controllers\Auth\ContactForgotPasswordController;
|
||||||
|
use App\Http\Controllers\ClientPortal\PaymentMethodController;
|
||||||
|
|
||||||
Route::get('client', [ContactLoginController::class, 'showLoginForm'])->name('client.catchall')->middleware(['domain_db', 'contact_account','locale']); //catch all
|
Route::get('client', [ContactLoginController::class, 'showLoginForm'])->name('client.catchall')->middleware(['domain_db', 'contact_account','locale']); //catch all
|
||||||
|
|
||||||
@ -66,6 +67,9 @@ Route::group(['middleware' => ['auth:contact', 'locale', 'domain_db','check_clie
|
|||||||
Route::get('payments', [App\Http\Controllers\ClientPortal\PaymentController::class, 'index'])->name('payments.index')->middleware('portal_enabled');
|
Route::get('payments', [App\Http\Controllers\ClientPortal\PaymentController::class, 'index'])->name('payments.index')->middleware('portal_enabled');
|
||||||
Route::get('payments/{payment}', [App\Http\Controllers\ClientPortal\PaymentController::class, 'show'])->name('payments.show');
|
Route::get('payments/{payment}', [App\Http\Controllers\ClientPortal\PaymentController::class, 'show'])->name('payments.show');
|
||||||
|
|
||||||
|
Route::get('pre_payments', [PrePaymentController::class, 'index'])->name('pre_payments.index')->middleware('portal_enabled');
|
||||||
|
Route::get('pre_payments/process', [PrePaymentController::class, 'process'])->name('pre_payments.process')->middleware('portal_enabled');
|
||||||
|
|
||||||
Route::get('profile/{client_contact}/edit', [App\Http\Controllers\ClientPortal\ProfileController::class, 'edit'])->name('profile.edit');
|
Route::get('profile/{client_contact}/edit', [App\Http\Controllers\ClientPortal\ProfileController::class, 'edit'])->name('profile.edit');
|
||||||
Route::put('profile/{client_contact}/edit', [App\Http\Controllers\ClientPortal\ProfileController::class, 'update'])->name('profile.update');
|
Route::put('profile/{client_contact}/edit', [App\Http\Controllers\ClientPortal\ProfileController::class, 'update'])->name('profile.update');
|
||||||
Route::put('profile/{client_contact}/edit_client', [App\Http\Controllers\ClientPortal\ProfileController::class, 'updateClient'])->name('profile.edit_client');
|
Route::put('profile/{client_contact}/edit_client', [App\Http\Controllers\ClientPortal\ProfileController::class, 'updateClient'])->name('profile.edit_client');
|
||||||
|
Loading…
x
Reference in New Issue
Block a user