diff --git a/app/Console/Commands/BackupUpdate.php b/app/Console/Commands/BackupUpdate.php index 536e1499e80d..a2fc126e9264 100644 --- a/app/Console/Commands/BackupUpdate.php +++ b/app/Console/Commands/BackupUpdate.php @@ -190,14 +190,12 @@ class BackupUpdate extends Command ->where('filename', '!=', '') ->cursor() ->each(function ($backup) { - $backup_bin = Storage::disk('s3')->get($backup->filename); if ($backup_bin) { Storage::disk($this->option('disk'))->put($backup->filename, $backup_bin); nlog("Backups - Moving {$backup->filename} to {$this->option('disk')}"); - } }); } diff --git a/app/Console/Commands/CheckData.php b/app/Console/Commands/CheckData.php index 8e04496b3782..202f37280504 100644 --- a/app/Console/Commands/CheckData.php +++ b/app/Console/Commands/CheckData.php @@ -12,36 +12,36 @@ namespace App\Console\Commands; use App; -use Exception; -use App\Models\User; -use App\Utils\Ninja; -use App\Models\Quote; -use App\Models\Client; -use App\Models\Credit; -use App\Models\Vendor; -use App\Models\Account; -use App\Models\Company; -use App\Models\Contact; -use App\Models\Invoice; -use App\Models\Payment; -use App\Models\CompanyUser; -use Illuminate\Support\Str; -use App\Models\CompanyToken; -use App\Models\ClientContact; -use App\Models\CompanyLedger; -use App\Models\PurchaseOrder; -use App\Models\VendorContact; -use App\Models\QuoteInvitation; -use Illuminate\Console\Command; -use App\Models\CreditInvitation; -use App\Models\InvoiceInvitation; use App\DataMapper\ClientSettings; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Mail; use App\Factory\ClientContactFactory; use App\Factory\VendorContactFactory; use App\Jobs\Company\CreateCompanyToken; +use App\Models\Account; +use App\Models\Client; +use App\Models\ClientContact; +use App\Models\Company; +use App\Models\CompanyLedger; +use App\Models\CompanyToken; +use App\Models\CompanyUser; +use App\Models\Contact; +use App\Models\Credit; +use App\Models\CreditInvitation; +use App\Models\Invoice; +use App\Models\InvoiceInvitation; +use App\Models\Payment; +use App\Models\PurchaseOrder; +use App\Models\Quote; +use App\Models\QuoteInvitation; use App\Models\RecurringInvoiceInvitation; +use App\Models\User; +use App\Models\Vendor; +use App\Models\VendorContact; +use App\Utils\Ninja; +use Exception; +use Illuminate\Console\Command; +use Illuminate\Support\Facades\DB; +use Illuminate\Support\Facades\Mail; +use Illuminate\Support\Str; use Symfony\Component\Console\Input\InputOption; /* @@ -176,18 +176,16 @@ class CheckData extends Command if (CompanyToken::where('user_id', $cu->user_id)->where('company_id', $cu->company_id)->where('is_system', 1)->doesntExist()) { $this->logMessage("Creating missing company token for user # {$cu->user_id} for company id # {$cu->company_id}"); - if($cu->company && $cu->user) + if ($cu->company && $cu->user) { (new CreateCompanyToken($cu->company, $cu->user, 'System'))->handle(); + } } }); - - - } /** * checkOauthSanity - * + * * @return void */ private function checkOauthSanity() diff --git a/app/DataMapper/ClientSettings.php b/app/DataMapper/ClientSettings.php index de723d6f1967..4e0f02176fbc 100644 --- a/app/DataMapper/ClientSettings.php +++ b/app/DataMapper/ClientSettings.php @@ -84,13 +84,13 @@ class ClientSettings extends BaseSettings */ public static function buildClientSettings($company_settings, $client_settings) { - if (! $client_settings) { return $company_settings; } - if(is_array($client_settings)) + if (is_array($client_settings)) { $client_settings = (object)$client_settings; + } foreach ($company_settings as $key => $value) { /* pseudo code diff --git a/app/DataMapper/Schedule/ScheduleInvoice.php b/app/DataMapper/Schedule/ScheduleInvoice.php index 71b57e820b50..cf22aaa7e224 100644 --- a/app/DataMapper/Schedule/ScheduleInvoice.php +++ b/app/DataMapper/Schedule/ScheduleInvoice.php @@ -33,5 +33,4 @@ class ScheduleInvoice * @var string */ public string $entity_id = ''; - } diff --git a/app/Events/Client/ClientWasArchived.php b/app/Events/Client/ClientWasArchived.php index 77bf459da449..709d9c7b11ac 100644 --- a/app/Events/Client/ClientWasArchived.php +++ b/app/Events/Client/ClientWasArchived.php @@ -16,7 +16,6 @@ use App\Models\Company; use Illuminate\Broadcasting\Channel; use Illuminate\Broadcasting\InteractsWithSockets; use Illuminate\Broadcasting\PrivateChannel; -use Illuminate\Contracts\Broadcasting\ShouldBroadcast; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Queue\SerializesModels; diff --git a/app/Events/Invoice/InvoiceWasCreated.php b/app/Events/Invoice/InvoiceWasCreated.php index c78ea9aef7d9..741b40b63930 100644 --- a/app/Events/Invoice/InvoiceWasCreated.php +++ b/app/Events/Invoice/InvoiceWasCreated.php @@ -13,11 +13,11 @@ namespace App\Events\Invoice; use App\Models\Company; use App\Models\Invoice; -use Illuminate\Queue\SerializesModels; +use Illuminate\Broadcasting\InteractsWithSockets; use Illuminate\Broadcasting\PrivateChannel; use Illuminate\Contracts\Broadcasting\ShouldBroadcast; use Illuminate\Foundation\Events\Dispatchable; -use Illuminate\Broadcasting\InteractsWithSockets; +use Illuminate\Queue\SerializesModels; /** * Class InvoiceWasCreated. diff --git a/app/Export/CSV/BaseExport.php b/app/Export/CSV/BaseExport.php index 18bb04eb4dd0..b9619700865a 100644 --- a/app/Export/CSV/BaseExport.php +++ b/app/Export/CSV/BaseExport.php @@ -12,8 +12,8 @@ namespace App\Export\CSV; use App\Models\Client; -use Illuminate\Support\Carbon; use App\Utils\Traits\MakesHash; +use Illuminate\Support\Carbon; class BaseExport { @@ -34,7 +34,6 @@ class BaseExport protected function filterByClients($query) { if (isset($this->input['client_id']) && $this->input['client_id'] != 'all') { - $client = Client::withTrashed()->find($this->input['client_id']); $this->client_description = $client->present()->name; return $query->where('client_id', $this->input['client_id']); diff --git a/app/Export/CSV/ProductSalesExport.php b/app/Export/CSV/ProductSalesExport.php index 6a2708fbc7e0..b6110dd480f5 100644 --- a/app/Export/CSV/ProductSalesExport.php +++ b/app/Export/CSV/ProductSalesExport.php @@ -11,15 +11,15 @@ namespace App\Export\CSV; -use App\Utils\Ninja; -use League\Csv\Writer; +use App\Libraries\MultiDB; use App\Models\Company; use App\Models\Invoice; use App\Models\Product; -use App\Libraries\MultiDB; +use App\Utils\Ninja; +use Illuminate\Database\Eloquent\Collection; use Illuminate\Support\Carbon; use Illuminate\Support\Facades\App; -use Illuminate\Database\Eloquent\Collection; +use League\Csv\Writer; class ProductSalesExport extends BaseExport { @@ -117,10 +117,9 @@ class ProductSalesExport extends BaseExport }); - $grouped = $this->sales->groupBy('product_key')->map(function ($key, $value){ - + $grouped = $this->sales->groupBy('product_key')->map(function ($key, $value) { $data = [ - 'product' => $value, + 'product' => $value, 'quantity' => $key->sum('quantity'), 'markup' => $key->sum('markup'), 'profit' => $key->sum('profit'), @@ -183,11 +182,10 @@ class ProductSalesExport extends BaseExport $this->sales->push($entity); return $entity; - } private function decorateAdvancedFields(Invoice $invoice, $entity) :array - { + { $product = $this->getProduct($entity['product_key']); $entity['cost'] = $product->cost ?? 0; @@ -199,31 +197,31 @@ class ProductSalesExport extends BaseExport $entity['date'] = Carbon::parse($invoice->date)->format($this->company->date_format()); $entity['discount'] = $this->calculateDiscount($invoice, $entity); - $entity['markup'] = round(((($entity['price'] - $entity['discount'] - $entity['cost']) / $unit_cost) * 100),2); + $entity['markup'] = round(((($entity['price'] - $entity['discount'] - $entity['cost']) / $unit_cost) * 100), 2); $entity['net_total'] = $entity['price'] - $entity['discount']; $entity['profit'] = $entity['price'] - $entity['discount'] - $entity['cost']; - if(strlen($entity['tax_name1']) > 1) { + if (strlen($entity['tax_name1']) > 1) { $entity['tax_name1'] = $entity['tax_name1'] . ' [' . $entity['tax_rate1'] . '%]'; $entity['tax_amount1'] = $this->calculateTax($invoice, $entity['line_total'], $entity['tax_rate1']); - } - else + } else { $entity['tax_amount1'] = 0; + } - if(strlen($entity['tax_name2']) > 1) { + if (strlen($entity['tax_name2']) > 1) { $entity['tax_name2'] = $entity['tax_name2'] . ' [' . $entity['tax_rate2'] . '%]'; $entity['tax_amount2'] = $this->calculateTax($invoice, $entity['line_total'], $entity['tax_rate2']); - } - else + } else { $entity['tax_amount2'] = 0; + } - if(strlen($entity['tax_name3']) > 1) { + if (strlen($entity['tax_name3']) > 1) { $entity['tax_name3'] = $entity['tax_name3'] . ' [' . $entity['tax_rate3'] . '%]'; $entity['tax_amount3'] = $this->calculateTax($invoice, $entity['line_total'], $entity['tax_rate3']); - } - else + } else { $entity['tax_amount3'] = 0; + } return $entity; } @@ -240,13 +238,11 @@ class ProductSalesExport extends BaseExport { $amount = $amount - ($amount * ($invoice->discount / 100)); - if($invoice->uses_inclusive_taxes) { + if ($invoice->uses_inclusive_taxes) { return round($amount - ($amount / (1 + ($tax_rate / 100))), 2); - } - else { + } else { return round(($amount * $tax_rate / 100), 2); } - } @@ -258,15 +254,15 @@ class ProductSalesExport extends BaseExport * @param mixed $entity * @return float */ - private function calculateDiscount(Invoice $invoice , $entity) :float + private function calculateDiscount(Invoice $invoice, $entity) :float { - if($entity['discount'] == 0) + if ($entity['discount'] == 0) { return 0; - - if($invoice->is_amount_discount && $entity['discount'] != 0) { - return $entity['discount']; } - elseif(!$invoice->is_amount_discount && $entity['discount'] != 0) { + + if ($invoice->is_amount_discount && $entity['discount'] != 0) { + return $entity['discount']; + } elseif (!$invoice->is_amount_discount && $entity['discount'] != 0) { return round($entity['line_total'] * ($entity['discount'] / 100), 2); } diff --git a/app/Filters/CreditFilters.php b/app/Filters/CreditFilters.php index 7f00792adc0f..ffbbba3fdb90 100644 --- a/app/Filters/CreditFilters.php +++ b/app/Filters/CreditFilters.php @@ -86,8 +86,8 @@ class CreditFilters extends QueryFilters ->orWhere('credits.custom_value2', 'like', '%'.$filter.'%') ->orWhere('credits.custom_value3', 'like', '%'.$filter.'%') ->orWhere('credits.custom_value4', 'like', '%'.$filter.'%') - ->orWhereHas('client', function ($q) use ($filter){ - $q->where('name', 'like', '%'.$filter.'%'); + ->orWhereHas('client', function ($q) use ($filter) { + $q->where('name', 'like', '%'.$filter.'%'); }); }); } diff --git a/app/Filters/InvoiceFilters.php b/app/Filters/InvoiceFilters.php index cafeee6ab5e7..c8e2f8216a36 100644 --- a/app/Filters/InvoiceFilters.php +++ b/app/Filters/InvoiceFilters.php @@ -108,8 +108,8 @@ class InvoiceFilters extends QueryFilters ->orWhere('custom_value2', 'like', '%'.$filter.'%') ->orWhere('custom_value3', 'like', '%'.$filter.'%') ->orWhere('custom_value4', 'like', '%'.$filter.'%') - ->orWhereHas('client', function ($q) use ($filter){ - $q->where('name', 'like', '%'.$filter.'%'); + ->orWhereHas('client', function ($q) use ($filter) { + $q->where('name', 'like', '%'.$filter.'%'); }); }); } diff --git a/app/Filters/PaymentFilters.php b/app/Filters/PaymentFilters.php index a8e6a1b6d165..5276772e9060 100644 --- a/app/Filters/PaymentFilters.php +++ b/app/Filters/PaymentFilters.php @@ -136,7 +136,7 @@ class PaymentFilters extends QueryFilters * Sorts the list based on $sort. * * formatted as column|asc - * + * * @param string $sort * @return Builder */ diff --git a/app/Filters/PurchaseOrderFilters.php b/app/Filters/PurchaseOrderFilters.php index 61fdbb9956fc..ea3035db32ee 100644 --- a/app/Filters/PurchaseOrderFilters.php +++ b/app/Filters/PurchaseOrderFilters.php @@ -63,8 +63,8 @@ class PurchaseOrderFilters extends QueryFilters $po_status[] = PurchaseOrder::STATUS_CANCELLED; } - if (count($status_parameters) >=1) { - $query->whereIn('status_id', $status_parameters); + if (count($po_status) >=1) { + $query->whereIn('status_id', $po_status); } }); @@ -94,7 +94,7 @@ class PurchaseOrderFilters extends QueryFilters ->orWhere('custom_value2', 'like', '%'.$filter.'%') ->orWhere('custom_value3', 'like', '%'.$filter.'%') ->orWhere('custom_value4', 'like', '%'.$filter.'%') - ->orWhereHas('vendor', function ($q) use ($filter){ + ->orWhereHas('vendor', function ($q) use ($filter) { $q->where('name', 'like', '%'.$filter.'%'); }); }); diff --git a/app/Filters/QuoteFilters.php b/app/Filters/QuoteFilters.php index 7b4151b7983a..4c99c5cc87ea 100644 --- a/app/Filters/QuoteFilters.php +++ b/app/Filters/QuoteFilters.php @@ -38,9 +38,9 @@ class QuoteFilters extends QueryFilters ->orWhere('custom_value2', 'like', '%'.$filter.'%') ->orWhere('custom_value3', 'like', '%'.$filter.'%') ->orWhere('custom_value4', 'like', '%'.$filter.'%') - ->orWhereHas('client', function ($q) use ($filter){ - $q->where('name', 'like', '%'.$filter.'%'); - }); + ->orWhereHas('client', function ($q) use ($filter) { + $q->where('name', 'like', '%'.$filter.'%'); + }); }); } diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index 413bf66a3118..8ae2803a2742 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -377,7 +377,7 @@ class LoginController extends BaseController if (auth()->user()->company_users()->count() != auth()->user()->tokens()->distinct('company_id')->count()) { auth()->user()->companies->each(function ($company) { - if (!CompanyToken::where('user_id', auth()->user()->id)->where('company_id', $company->id)->where('is_system',true)->exists()) { + if (!CompanyToken::where('user_id', auth()->user()->id)->where('company_id', $company->id)->where('is_system', true)->exists()) { (new CreateCompanyToken($company, auth()->user(), 'Google_O_Auth'))->handle(); } }); diff --git a/app/Http/Controllers/BankTransactionController.php b/app/Http/Controllers/BankTransactionController.php index 6c7839769eb1..be049d7c174c 100644 --- a/app/Http/Controllers/BankTransactionController.php +++ b/app/Http/Controllers/BankTransactionController.php @@ -531,7 +531,6 @@ class BankTransactionController extends BaseController */ public function match(MatchBankTransactionRequest $request) { - $bts = (new MatchBankTransactions(auth()->user()->company()->id, auth()->user()->company()->db, $request->all()))->handle(); return $this->listResponse($bts); diff --git a/app/Http/Controllers/ClientPortal/PaymentController.php b/app/Http/Controllers/ClientPortal/PaymentController.php index 680d629932e9..8c726b97dec0 100644 --- a/app/Http/Controllers/ClientPortal/PaymentController.php +++ b/app/Http/Controllers/ClientPortal/PaymentController.php @@ -12,24 +12,24 @@ namespace App\Http\Controllers\ClientPortal; +use App\Factory\PaymentFactory; +use App\Http\Controllers\Controller; +use App\Http\Requests\ClientPortal\Payments\PaymentResponseRequest; +use App\Models\CompanyGateway; +use App\Models\GatewayType; use App\Models\Invoice; use App\Models\Payment; -use Illuminate\View\View; -use App\Models\GatewayType; use App\Models\PaymentHash; use App\Models\PaymentType; -use Illuminate\Http\Request; -use App\Models\CompanyGateway; -use App\Factory\PaymentFactory; -use App\Utils\Traits\MakesHash; -use App\Utils\Traits\MakesDates; -use App\Http\Controllers\Controller; -use Illuminate\Http\RedirectResponse; -use Illuminate\Contracts\View\Factory; use App\PaymentDrivers\Stripe\BankTransfer; use App\Services\ClientPortal\InstantPayment; use App\Services\Subscription\SubscriptionService; -use App\Http\Requests\ClientPortal\Payments\PaymentResponseRequest; +use App\Utils\Traits\MakesDates; +use App\Utils\Traits\MakesHash; +use Illuminate\Contracts\View\Factory; +use Illuminate\Http\RedirectResponse; +use Illuminate\Http\Request; +use Illuminate\View\View; /** * Class PaymentController. @@ -64,15 +64,14 @@ class PaymentController extends Controller $data = false; $gateway = false; - if($payment->gateway_type_id == GatewayType::DIRECT_DEBIT && $payment->type_id == PaymentType::DIRECT_DEBIT){ - + if ($payment->gateway_type_id == GatewayType::DIRECT_DEBIT && $payment->type_id == PaymentType::DIRECT_DEBIT) { if (method_exists($payment->company_gateway->driver($payment->client), 'getPaymentIntent')) { $stripe = $payment->company_gateway->driver($payment->client); $payment_intent = $stripe->getPaymentIntent($payment->transaction_reference); $bt = new BankTransfer($stripe); - match($payment->currency->code){ + match ($payment->currency->code) { 'MXN' => $data = $bt->formatDataforMx($payment_intent), 'EUR' => $data = $bt->formatDataforEur($payment_intent), 'JPY' => $data = $bt->formatDataforJp($payment_intent), diff --git a/app/Http/Controllers/ClientPortal/PaymentMethodController.php b/app/Http/Controllers/ClientPortal/PaymentMethodController.php index 1a640aa0fcda..a590276c8a0d 100644 --- a/app/Http/Controllers/ClientPortal/PaymentMethodController.php +++ b/app/Http/Controllers/ClientPortal/PaymentMethodController.php @@ -15,7 +15,6 @@ namespace App\Http\Controllers\ClientPortal; use App\Events\Payment\Methods\MethodDeleted; use App\Http\Controllers\Controller; use App\Http\Requests\ClientPortal\PaymentMethod\CreatePaymentMethodRequest; -use App\Http\Requests\ClientPortal\PaymentMethod\VerifyPaymentMethodRequest; use App\Http\Requests\Request; use App\Models\ClientGatewayToken; use App\Models\GatewayType; diff --git a/app/Http/Controllers/ClientPortal/PrePaymentController.php b/app/Http/Controllers/ClientPortal/PrePaymentController.php index 874be8a353aa..1fb91c04a5ab 100644 --- a/app/Http/Controllers/ClientPortal/PrePaymentController.php +++ b/app/Http/Controllers/ClientPortal/PrePaymentController.php @@ -12,16 +12,16 @@ namespace App\Http\Controllers\ClientPortal; -use App\Utils\Number; -use Illuminate\View\View; use App\DataMapper\InvoiceItem; use App\Factory\InvoiceFactory; -use App\Utils\Traits\MakesHash; -use App\Utils\Traits\MakesDates; use App\Http\Controllers\Controller; -use Illuminate\Contracts\View\Factory; -use App\Repositories\InvoiceRepository; use App\Http\Requests\ClientPortal\PrePayments\StorePrePaymentRequest; +use App\Repositories\InvoiceRepository; +use App\Utils\Number; +use App\Utils\Traits\MakesDates; +use App\Utils\Traits\MakesHash; +use Illuminate\Contracts\View\Factory; +use Illuminate\View\View; /** * Class PrePaymentController. @@ -38,7 +38,6 @@ class PrePaymentController extends Controller */ public function index() { - $data = [ 'title' => ctrans('texts.amount'). " " .auth()->guard('contact')->user()->client->currency()->code." (".auth()->guard('contact')->user()->client->currency()->symbol . ")", 'allows_recurring' => auth()->guard('contact')->user()->client->getSetting('client_initiated_payments_recurring'), @@ -51,7 +50,6 @@ class PrePaymentController extends Controller public function process(StorePrePaymentRequest $request) { - $invoice = InvoiceFactory::create(auth()->guard('contact')->user()->company_id, auth()->guard('contact')->user()->user_id); $invoice->due_date = now()->format('Y-m-d'); $invoice->is_proforma = true; @@ -114,7 +112,5 @@ class PrePaymentController extends Controller ]; return $this->render('invoices.payment', $data); - } - -} \ No newline at end of file +} diff --git a/app/Http/Controllers/ClientPortal/SubscriptionPurchaseController.php b/app/Http/Controllers/ClientPortal/SubscriptionPurchaseController.php index e5007a607d98..62d776869f37 100644 --- a/app/Http/Controllers/ClientPortal/SubscriptionPurchaseController.php +++ b/app/Http/Controllers/ClientPortal/SubscriptionPurchaseController.php @@ -44,7 +44,6 @@ class SubscriptionPurchaseController extends Controller public function upgrade(Subscription $subscription, Request $request) { - App::setLocale($subscription->company->locale()); /* Make sure the contact is logged into the correct company for this subscription */ diff --git a/app/Http/Controllers/CompanyController.php b/app/Http/Controllers/CompanyController.php index b12e5c06dcc4..f65e970d7199 100644 --- a/app/Http/Controllers/CompanyController.php +++ b/app/Http/Controllers/CompanyController.php @@ -11,37 +11,37 @@ namespace App\Http\Controllers; -use App\Utils\Ninja; -use App\Models\Account; -use App\Models\Company; -use App\Models\CompanyUser; -use Illuminate\Http\Response; -use App\Utils\Traits\MakesHash; -use App\Utils\Traits\Uploadable; -use App\Jobs\Mail\NinjaMailerJob; -use App\DataMapper\CompanySettings; -use App\Jobs\Company\CreateCompany; -use App\Jobs\Mail\NinjaMailerObject; -use App\Mail\Company\CompanyDeleted; -use App\Utils\Traits\SavesDocuments; -use Turbo124\Beacon\Facades\LightLogs; -use App\Repositories\CompanyRepository; -use Illuminate\Support\Facades\Storage; -use App\Jobs\Company\CreateCompanyToken; -use App\Transformers\CompanyTransformer; use App\DataMapper\Analytics\AccountDeleted; -use App\Transformers\CompanyUserTransformer; -use Illuminate\Foundation\Bus\DispatchesJobs; -use App\Jobs\Company\CreateCompanyPaymentTerms; -use App\Jobs\Company\CreateCompanyTaskStatuses; +use App\DataMapper\CompanySettings; +use App\Http\Requests\Company\CreateCompanyRequest; +use App\Http\Requests\Company\DefaultCompanyRequest; +use App\Http\Requests\Company\DestroyCompanyRequest; use App\Http\Requests\Company\EditCompanyRequest; use App\Http\Requests\Company\ShowCompanyRequest; use App\Http\Requests\Company\StoreCompanyRequest; -use App\Http\Requests\Company\CreateCompanyRequest; use App\Http\Requests\Company\UpdateCompanyRequest; use App\Http\Requests\Company\UploadCompanyRequest; -use App\Http\Requests\Company\DefaultCompanyRequest; -use App\Http\Requests\Company\DestroyCompanyRequest; +use App\Jobs\Company\CreateCompany; +use App\Jobs\Company\CreateCompanyPaymentTerms; +use App\Jobs\Company\CreateCompanyTaskStatuses; +use App\Jobs\Company\CreateCompanyToken; +use App\Jobs\Mail\NinjaMailerJob; +use App\Jobs\Mail\NinjaMailerObject; +use App\Mail\Company\CompanyDeleted; +use App\Models\Account; +use App\Models\Company; +use App\Models\CompanyUser; +use App\Repositories\CompanyRepository; +use App\Transformers\CompanyTransformer; +use App\Transformers\CompanyUserTransformer; +use App\Utils\Ninja; +use App\Utils\Traits\MakesHash; +use App\Utils\Traits\SavesDocuments; +use App\Utils\Traits\Uploadable; +use Illuminate\Foundation\Bus\DispatchesJobs; +use Illuminate\Http\Response; +use Illuminate\Support\Facades\Storage; +use Turbo124\Beacon\Facades\LightLogs; /** * Class CompanyController. @@ -489,8 +489,7 @@ class CompanyController extends BaseController try { Storage::disk(config('filesystems.default'))->deleteDirectory($company->company_key); - } - catch(\Exception $e) { + } catch(\Exception $e) { } $account->delete(); @@ -502,9 +501,6 @@ class CompanyController extends BaseController LightLogs::create(new AccountDeleted()) ->increment() ->batch(); - - - } else { $company_id = $company->id; diff --git a/app/Http/Controllers/EmailController.php b/app/Http/Controllers/EmailController.php index af73ff04ccff..3899dbf76620 100644 --- a/app/Http/Controllers/EmailController.php +++ b/app/Http/Controllers/EmailController.php @@ -11,26 +11,26 @@ namespace App\Http\Controllers; -use App\Utils\Ninja; -use App\Models\Quote; +use App\Events\Credit\CreditWasEmailed; +use App\Events\Quote\QuoteWasEmailed; +use App\Http\Requests\Email\SendEmailRequest; +use App\Jobs\Entity\EmailEntity; +use App\Jobs\PurchaseOrder\PurchaseOrderEmail; use App\Models\Credit; use App\Models\Invoice; use App\Models\PurchaseOrder; -use App\Services\Email\Email; -use Illuminate\Http\Response; -use App\Utils\Traits\MakesHash; -use App\Jobs\Entity\EmailEntity; +use App\Models\Quote; use App\Models\RecurringInvoice; +use App\Services\Email\Email; use App\Services\Email\EmailObject; -use App\Events\Quote\QuoteWasEmailed; -use App\Transformers\QuoteTransformer; -use App\Events\Credit\CreditWasEmailed; use App\Transformers\CreditTransformer; use App\Transformers\InvoiceTransformer; -use App\Http\Requests\Email\SendEmailRequest; -use App\Jobs\PurchaseOrder\PurchaseOrderEmail; use App\Transformers\PurchaseOrderTransformer; +use App\Transformers\QuoteTransformer; use App\Transformers\RecurringInvoiceTransformer; +use App\Utils\Ninja; +use App\Utils\Traits\MakesHash; +use Illuminate\Http\Response; use Illuminate\Mail\Mailables\Address; class EmailController extends BaseController @@ -136,8 +136,9 @@ class EmailController extends BaseController $mo->email_template_body = $request->input('template'); $mo->email_template_subject = str_replace("template", "subject", $request->input('template')); - if($request->has('cc_email')) + if ($request->has('cc_email')) { $mo->cc[] = new Address($request->cc_email); + } // if ($entity == 'purchaseOrder' || $entity == 'purchase_order' || $template == 'purchase_order' || $entity == 'App\Models\PurchaseOrder') { // return $this->sendPurchaseOrder($entity_obj, $data, $template); @@ -152,7 +153,6 @@ class EmailController extends BaseController $mo->invitation_id = $invitation->id; Email::dispatch($mo, $invitation->company); - } }); @@ -193,7 +193,7 @@ class EmailController extends BaseController $this->entity_transformer = RecurringInvoiceTransformer::class; } - if($entity_obj instanceof PurchaseOrder){ + if ($entity_obj instanceof PurchaseOrder) { $this->entity_type = PurchaseOrder::class; $this->entity_transformer = PurchaseOrderTransformer::class; } @@ -217,8 +217,7 @@ class EmailController extends BaseController private function resolveClass(string $entity): string { - - match($entity){ + match ($entity) { 'invoice' => $class = Invoice::class, 'App\Models\Invoice' => $class = Invoice::class, 'credit' => $class = Credit::class, @@ -232,6 +231,5 @@ class EmailController extends BaseController }; return $class; - } } diff --git a/app/Http/Controllers/ImportController.php b/app/Http/Controllers/ImportController.php index 3c0ed45bdb05..39c0177d47a1 100644 --- a/app/Http/Controllers/ImportController.php +++ b/app/Http/Controllers/ImportController.php @@ -163,19 +163,15 @@ class ImportController extends Controller $bestDelimiter = ' '; $count = 0; foreach ($delimiters as $delimiter) { - // if (substr_count($csvfile, $delimiter) > $count) { // $count = substr_count($csvfile, $delimiter); // $bestDelimiter = $delimiter; // } - if (substr_count(strstr($csvfile,"\n",true), $delimiter) > $count) { + if (substr_count(strstr($csvfile, "\n", true), $delimiter) > $count) { $count = substr_count($csvfile, $delimiter); $bestDelimiter = $delimiter; } - - - } return $bestDelimiter; } diff --git a/app/Http/Controllers/LicenseController.php b/app/Http/Controllers/LicenseController.php index 3d27d5bb51f0..1c1e0c1cb99e 100644 --- a/app/Http/Controllers/LicenseController.php +++ b/app/Http/Controllers/LicenseController.php @@ -11,13 +11,13 @@ namespace App\Http\Controllers; -use stdClass; -use Carbon\Carbon; use App\Models\Account; use App\Utils\CurlUtils; +use Carbon\Carbon; +use Illuminate\Http\Request; use Illuminate\Http\Response; use Illuminate\Support\Facades\Http; -use Illuminate\Http\Request; +use stdClass; class LicenseController extends BaseController { @@ -155,15 +155,13 @@ class LicenseController extends BaseController /* Catch claim license requests */ if (config('ninja.environment') == 'selfhost' && request()->has('license_key')) { - // $response = Http::get( "http://ninja.test:8000/claim_license", [ - $response = Http::get( "https://invoicing.co/claim_license", [ + $response = Http::get("https://invoicing.co/claim_license", [ 'license_key' => $request->input('license_key'), 'product_id' => 3, ]); - if($response->successful()) { - + if ($response->successful()) { $payload = $response->json(); $account = auth()->user()->account; @@ -179,8 +177,7 @@ class LicenseController extends BaseController ]; return response()->json($error, 200); - }else { - + } else { $error = [ 'message' => trans('texts.white_label_license_error'), 'errors' => new stdClass, @@ -188,7 +185,6 @@ class LicenseController extends BaseController return response()->json($error, 400); } - } $error = [ @@ -197,7 +193,6 @@ class LicenseController extends BaseController ]; return response()->json($error, 400); - } @@ -210,6 +205,5 @@ class LicenseController extends BaseController $account->plan_expires = null; $account->save(); } - } } diff --git a/app/Http/Controllers/PreviewController.php b/app/Http/Controllers/PreviewController.php index 2e7c6da78441..eead3581a0e3 100644 --- a/app/Http/Controllers/PreviewController.php +++ b/app/Http/Controllers/PreviewController.php @@ -23,7 +23,6 @@ use App\Libraries\MultiDB; use App\Models\Client; use App\Models\ClientContact; use App\Models\Credit; -use App\Models\GroupSetting; use App\Models\Invoice; use App\Models\InvoiceInvitation; use App\Models\Quote; @@ -37,7 +36,6 @@ use App\Services\PdfMaker\Design; use App\Services\PdfMaker\Design as PdfDesignModel; use App\Services\PdfMaker\Design as PdfMakerDesign; use App\Services\PdfMaker\PdfMaker; -use App\Services\Preview\StubBuilder; use App\Utils\HostedPDF\NinjaPdf; use App\Utils\HtmlEngine; use App\Utils\Ninja; diff --git a/app/Http/Controllers/RecurringInvoiceController.php b/app/Http/Controllers/RecurringInvoiceController.php index 77078d3a818c..5c0bb277edd0 100644 --- a/app/Http/Controllers/RecurringInvoiceController.php +++ b/app/Http/Controllers/RecurringInvoiceController.php @@ -11,29 +11,29 @@ namespace App\Http\Controllers; -use App\Utils\Ninja; -use App\Models\Account; -use Illuminate\Http\Response; -use App\Utils\Traits\MakesHash; -use App\Models\RecurringInvoice; -use App\Utils\Traits\SavesDocuments; -use Illuminate\Support\Facades\Storage; -use App\Factory\RecurringInvoiceFactory; -use App\Filters\RecurringInvoiceFilters; -use App\Jobs\RecurringInvoice\UpdateRecurring; -use App\Repositories\RecurringInvoiceRepository; -use App\Transformers\RecurringInvoiceTransformer; use App\Events\RecurringInvoice\RecurringInvoiceWasCreated; use App\Events\RecurringInvoice\RecurringInvoiceWasUpdated; +use App\Factory\RecurringInvoiceFactory; +use App\Filters\RecurringInvoiceFilters; +use App\Http\Requests\RecurringInvoice\ActionRecurringInvoiceRequest; use App\Http\Requests\RecurringInvoice\BulkRecurringInvoiceRequest; +use App\Http\Requests\RecurringInvoice\CreateRecurringInvoiceRequest; +use App\Http\Requests\RecurringInvoice\DestroyRecurringInvoiceRequest; use App\Http\Requests\RecurringInvoice\EditRecurringInvoiceRequest; use App\Http\Requests\RecurringInvoice\ShowRecurringInvoiceRequest; use App\Http\Requests\RecurringInvoice\StoreRecurringInvoiceRequest; -use App\Http\Requests\RecurringInvoice\ActionRecurringInvoiceRequest; -use App\Http\Requests\RecurringInvoice\CreateRecurringInvoiceRequest; use App\Http\Requests\RecurringInvoice\UpdateRecurringInvoiceRequest; use App\Http\Requests\RecurringInvoice\UploadRecurringInvoiceRequest; -use App\Http\Requests\RecurringInvoice\DestroyRecurringInvoiceRequest; +use App\Jobs\RecurringInvoice\UpdateRecurring; +use App\Models\Account; +use App\Models\RecurringInvoice; +use App\Repositories\RecurringInvoiceRepository; +use App\Transformers\RecurringInvoiceTransformer; +use App\Utils\Ninja; +use App\Utils\Traits\MakesHash; +use App\Utils\Traits\SavesDocuments; +use Illuminate\Http\Response; +use Illuminate\Support\Facades\Storage; /** * Class RecurringInvoiceController. @@ -406,10 +406,9 @@ class RecurringInvoiceController extends BaseController */ public function bulk(BulkRecurringInvoiceRequest $request) { - $percentage_increase = request()->has('percentage_increase') ? request()->input('percentage_increase') : 0; - if(in_array($request->action, ['increase_prices', 'update_prices'])) { + if (in_array($request->action, ['increase_prices', 'update_prices'])) { UpdateRecurring::dispatch($request->ids, auth()->user()->company(), auth()->user(), $request->action, $percentage_increase); return response()->json(['message' => 'Update in progress.'], 200); @@ -417,7 +416,7 @@ class RecurringInvoiceController extends BaseController $recurring_invoices = RecurringInvoice::withTrashed()->find($request->ids); - $recurring_invoices->each(function ($recurring_invoice, $key) use($request){ + $recurring_invoices->each(function ($recurring_invoice, $key) use ($request) { if (auth()->user()->can('edit', $recurring_invoice)) { $this->performAction($recurring_invoice, $request->action, true); } diff --git a/app/Http/Controllers/TaskSchedulerController.php b/app/Http/Controllers/TaskSchedulerController.php index 370d45cf1feb..195065f62f21 100644 --- a/app/Http/Controllers/TaskSchedulerController.php +++ b/app/Http/Controllers/TaskSchedulerController.php @@ -13,8 +13,8 @@ namespace App\Http\Controllers; use App\Factory\SchedulerFactory; use App\Filters\SchedulerFilters; -use App\Http\Requests\TaskScheduler\DestroySchedulerRequest; use App\Http\Requests\TaskScheduler\CreateSchedulerRequest; +use App\Http\Requests\TaskScheduler\DestroySchedulerRequest; use App\Http\Requests\TaskScheduler\ShowSchedulerRequest; use App\Http\Requests\TaskScheduler\StoreSchedulerRequest; use App\Http\Requests\TaskScheduler\UpdateSchedulerRequest; diff --git a/app/Http/Controllers/WebhookController.php b/app/Http/Controllers/WebhookController.php index f33c3ea0674b..d7a2a581e43a 100644 --- a/app/Http/Controllers/WebhookController.php +++ b/app/Http/Controllers/WebhookController.php @@ -12,22 +12,22 @@ namespace App\Http\Controllers; -use App\Models\Webhook; -use Illuminate\Support\Str; -use Illuminate\Http\Response; use App\Factory\WebhookFactory; use App\Filters\WebhookFilters; -use App\Utils\Traits\MakesHash; +use App\Http\Requests\Webhook\CreateWebhookRequest; +use App\Http\Requests\Webhook\DestroyWebhookRequest; +use App\Http\Requests\Webhook\EditWebhookRequest; +use App\Http\Requests\Webhook\RetryWebhookRequest; +use App\Http\Requests\Webhook\ShowWebhookRequest; +use App\Http\Requests\Webhook\StoreWebhookRequest; +use App\Http\Requests\Webhook\UpdateWebhookRequest; use App\Jobs\Util\WebhookSingle; +use App\Models\Webhook; use App\Repositories\BaseRepository; use App\Transformers\WebhookTransformer; -use App\Http\Requests\Webhook\EditWebhookRequest; -use App\Http\Requests\Webhook\ShowWebhookRequest; -use App\Http\Requests\Webhook\RetryWebhookRequest; -use App\Http\Requests\Webhook\StoreWebhookRequest; -use App\Http\Requests\Webhook\CreateWebhookRequest; -use App\Http\Requests\Webhook\UpdateWebhookRequest; -use App\Http\Requests\Webhook\DestroyWebhookRequest; +use App\Utils\Traits\MakesHash; +use Illuminate\Http\Response; +use Illuminate\Support\Str; class WebhookController extends BaseController { @@ -493,7 +493,7 @@ class WebhookController extends BaseController public function retry(RetryWebhookRequest $request, Webhook $webhook) { - match($request->entity) { + match ($request->entity) { 'invoice' => $includes ='client', 'payment' => $includes ='invoices,client', 'project' => $includes ='client', @@ -506,7 +506,7 @@ class WebhookController extends BaseController $entity = $class::withTrashed()->where('id', $this->decodePrimaryKey($request->entity_id))->company()->first(); - if(!$entity){ + if (!$entity) { return response()->json(['message' => ctrans('texts.record_not_found')], 400); } diff --git a/app/Http/Livewire/BillingPortalPurchase.php b/app/Http/Livewire/BillingPortalPurchase.php index b0df3019ca18..89931982db93 100644 --- a/app/Http/Livewire/BillingPortalPurchase.php +++ b/app/Http/Livewire/BillingPortalPurchase.php @@ -11,24 +11,24 @@ namespace App\Http\Livewire; -use App\Utils\Ninja; -use App\Models\Client; -use App\Models\Invoice; -use Livewire\Component; -use App\Libraries\MultiDB; -use Illuminate\Support\Str; -use App\Models\Subscription; -use App\Models\ClientContact; +use App\DataMapper\ClientSettings; use App\Factory\ClientFactory; use App\Jobs\Mail\NinjaMailerJob; -use App\DataMapper\ClientSettings; use App\Jobs\Mail\NinjaMailerObject; +use App\Libraries\MultiDB; +use App\Mail\ContactPasswordlessLogin; +use App\Models\Client; +use App\Models\ClientContact; +use App\Models\Invoice; +use App\Models\Subscription; +use App\Repositories\ClientContactRepository; +use App\Repositories\ClientRepository; +use App\Services\Subscription\SubscriptionService; +use App\Utils\Ninja; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Cache; -use App\Mail\ContactPasswordlessLogin; -use App\Repositories\ClientRepository; -use App\Repositories\ClientContactRepository; -use App\Services\Subscription\SubscriptionService; +use Illuminate\Support\Str; +use Livewire\Component; class BillingPortalPurchase extends Component { @@ -401,7 +401,7 @@ class BillingPortalPurchase extends Component $context = 'purchase'; // if(Ninja::isHosted() && $this->subscription->service()->recurring_products()->first()?->id == SubscriptionService::WHITE_LABEL) { - if(Ninja::isHosted() && $this->subscription->service()->recurring_products()->first()?->product_key == 'whitelabel') { + if (Ninja::isHosted() && $this->subscription->service()->recurring_products()->first()?->product_key == 'whitelabel') { $context = 'whitelabel'; } diff --git a/app/Http/Livewire/BillingPortalPurchasev2.php b/app/Http/Livewire/BillingPortalPurchasev2.php index f3f0a3b132a7..aaf9bf65cbfe 100644 --- a/app/Http/Livewire/BillingPortalPurchasev2.php +++ b/app/Http/Livewire/BillingPortalPurchasev2.php @@ -172,8 +172,7 @@ class BillingPortalPurchasev2 extends Component $this->contact = auth()->guard('contact')->user(); $this->authenticated = true; $this->payment_started = true; - } - else { + } else { $this->bundle = collect(); } @@ -276,7 +275,6 @@ class BillingPortalPurchasev2 extends Component */ public function handleCoupon() { - $this->resetErrorBag('coupon'); $this->resetValidation('coupon'); diff --git a/app/Http/Livewire/RequiredClientInfo.php b/app/Http/Livewire/RequiredClientInfo.php index 70af5590a8dc..df184eff52bf 100644 --- a/app/Http/Livewire/RequiredClientInfo.php +++ b/app/Http/Livewire/RequiredClientInfo.php @@ -232,8 +232,9 @@ class RequiredClientInfo extends Component if ($cg && $cg->update_details) { $payment_gateway = $cg->driver($this->client)->init(); - if(method_exists($payment_gateway, "updateCustomer")) + if (method_exists($payment_gateway, "updateCustomer")) { $payment_gateway->updateCustomer(); + } } return true; diff --git a/app/Http/Requests/BankIntegration/UploadBankIntegrationRequest.php b/app/Http/Requests/BankIntegration/UploadBankIntegrationRequest.php index b92c22c55ad5..cd07c0688343 100644 --- a/app/Http/Requests/BankIntegration/UploadBankIntegrationRequest.php +++ b/app/Http/Requests/BankIntegration/UploadBankIntegrationRequest.php @@ -29,10 +29,11 @@ class UploadBankIntegrationRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/BankTransaction/UploadBankTransactionRequest.php b/app/Http/Requests/BankTransaction/UploadBankTransactionRequest.php index e3b62225019e..0bbc319ef3e0 100644 --- a/app/Http/Requests/BankTransaction/UploadBankTransactionRequest.php +++ b/app/Http/Requests/BankTransaction/UploadBankTransactionRequest.php @@ -29,10 +29,11 @@ class UploadBankTransactionRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Client/StoreClientRequest.php b/app/Http/Requests/Client/StoreClientRequest.php index ffe65adb9612..095b89561c2d 100644 --- a/app/Http/Requests/Client/StoreClientRequest.php +++ b/app/Http/Requests/Client/StoreClientRequest.php @@ -38,10 +38,11 @@ class StoreClientRequest extends Request public function rules() { - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Client/UpdateClientRequest.php b/app/Http/Requests/Client/UpdateClientRequest.php index 6a51aec64bf0..8b4059c9aac4 100644 --- a/app/Http/Requests/Client/UpdateClientRequest.php +++ b/app/Http/Requests/Client/UpdateClientRequest.php @@ -38,10 +38,11 @@ class UpdateClientRequest extends Request { /* Ensure we have a client name, and that all emails are unique*/ - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Client/UploadClientRequest.php b/app/Http/Requests/Client/UploadClientRequest.php index 1093b3f1ebcd..e5baef5ef0be 100644 --- a/app/Http/Requests/Client/UploadClientRequest.php +++ b/app/Http/Requests/Client/UploadClientRequest.php @@ -29,10 +29,11 @@ class UploadClientRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/ClientPortal/PrePayments/StorePrePaymentRequest.php b/app/Http/Requests/ClientPortal/PrePayments/StorePrePaymentRequest.php index a591632db413..f596ef2e6295 100644 --- a/app/Http/Requests/ClientPortal/PrePayments/StorePrePaymentRequest.php +++ b/app/Http/Requests/ClientPortal/PrePayments/StorePrePaymentRequest.php @@ -15,7 +15,6 @@ class StorePrePaymentRequest extends FormRequest public function authorize() { return auth()->guard('contact')->user()->company->enabled_modules & PortalComposer::MODULE_INVOICES; - } /** @@ -30,5 +29,4 @@ class StorePrePaymentRequest extends FormRequest 'amount' => 'required|bail|', ]; } - } diff --git a/app/Http/Requests/Company/UploadCompanyRequest.php b/app/Http/Requests/Company/UploadCompanyRequest.php index 999101417dd0..4e5cdd6308d2 100644 --- a/app/Http/Requests/Company/UploadCompanyRequest.php +++ b/app/Http/Requests/Company/UploadCompanyRequest.php @@ -29,10 +29,11 @@ class UploadCompanyRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Credit/StoreCreditRequest.php b/app/Http/Requests/Credit/StoreCreditRequest.php index 589cfe24527c..13eee9c59852 100644 --- a/app/Http/Requests/Credit/StoreCreditRequest.php +++ b/app/Http/Requests/Credit/StoreCreditRequest.php @@ -43,10 +43,11 @@ class StoreCreditRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Credit/UpdateCreditRequest.php b/app/Http/Requests/Credit/UpdateCreditRequest.php index d208cf223f51..929ad49e443a 100644 --- a/app/Http/Requests/Credit/UpdateCreditRequest.php +++ b/app/Http/Requests/Credit/UpdateCreditRequest.php @@ -42,10 +42,11 @@ class UpdateCreditRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Credit/UploadCreditRequest.php b/app/Http/Requests/Credit/UploadCreditRequest.php index 06721355bbbd..e25782acaf12 100644 --- a/app/Http/Requests/Credit/UploadCreditRequest.php +++ b/app/Http/Requests/Credit/UploadCreditRequest.php @@ -29,10 +29,11 @@ class UploadCreditRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Expense/UploadExpenseRequest.php b/app/Http/Requests/Expense/UploadExpenseRequest.php index b04cde728549..694f2317f2dd 100644 --- a/app/Http/Requests/Expense/UploadExpenseRequest.php +++ b/app/Http/Requests/Expense/UploadExpenseRequest.php @@ -29,10 +29,11 @@ class UploadExpenseRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/GroupSetting/UploadGroupSettingRequest.php b/app/Http/Requests/GroupSetting/UploadGroupSettingRequest.php index c3c1415a6c90..4b7379068059 100644 --- a/app/Http/Requests/GroupSetting/UploadGroupSettingRequest.php +++ b/app/Http/Requests/GroupSetting/UploadGroupSettingRequest.php @@ -29,10 +29,11 @@ class UploadGroupSettingRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Invoice/StoreInvoiceRequest.php b/app/Http/Requests/Invoice/StoreInvoiceRequest.php index 5f21287c3839..cedbb7fd4f7f 100644 --- a/app/Http/Requests/Invoice/StoreInvoiceRequest.php +++ b/app/Http/Requests/Invoice/StoreInvoiceRequest.php @@ -37,10 +37,11 @@ class StoreInvoiceRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Invoice/UpdateInvoiceRequest.php b/app/Http/Requests/Invoice/UpdateInvoiceRequest.php index 0a4f5d31e149..0668a8e60ff2 100644 --- a/app/Http/Requests/Invoice/UpdateInvoiceRequest.php +++ b/app/Http/Requests/Invoice/UpdateInvoiceRequest.php @@ -39,10 +39,11 @@ class UpdateInvoiceRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Invoice/UploadInvoiceRequest.php b/app/Http/Requests/Invoice/UploadInvoiceRequest.php index 70157d05aac1..93396d9ee7aa 100644 --- a/app/Http/Requests/Invoice/UploadInvoiceRequest.php +++ b/app/Http/Requests/Invoice/UploadInvoiceRequest.php @@ -29,10 +29,11 @@ class UploadInvoiceRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; @@ -45,6 +46,5 @@ class UploadInvoiceRequest extends Request public function prepareForValidation() { - } } diff --git a/app/Http/Requests/Payment/StorePaymentRequest.php b/app/Http/Requests/Payment/StorePaymentRequest.php index d796a082454d..196c302e57a7 100644 --- a/app/Http/Requests/Payment/StorePaymentRequest.php +++ b/app/Http/Requests/Payment/StorePaymentRequest.php @@ -112,10 +112,11 @@ class StorePaymentRequest extends Request ]; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Payment/UpdatePaymentRequest.php b/app/Http/Requests/Payment/UpdatePaymentRequest.php index 1d87ef164542..1cd8d8b4c850 100644 --- a/app/Http/Requests/Payment/UpdatePaymentRequest.php +++ b/app/Http/Requests/Payment/UpdatePaymentRequest.php @@ -44,10 +44,11 @@ class UpdatePaymentRequest extends Request $rules['number'] = Rule::unique('payments')->where('company_id', auth()->user()->company()->id)->ignore($this->payment->id); } - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Payment/UploadPaymentRequest.php b/app/Http/Requests/Payment/UploadPaymentRequest.php index ad3874895f2e..52bb9b2b318b 100644 --- a/app/Http/Requests/Payment/UploadPaymentRequest.php +++ b/app/Http/Requests/Payment/UploadPaymentRequest.php @@ -29,10 +29,11 @@ class UploadPaymentRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Preview/PreviewInvoiceRequest.php b/app/Http/Requests/Preview/PreviewInvoiceRequest.php index ab0586f5a5f8..b2da03628210 100644 --- a/app/Http/Requests/Preview/PreviewInvoiceRequest.php +++ b/app/Http/Requests/Preview/PreviewInvoiceRequest.php @@ -12,10 +12,6 @@ namespace App\Http\Requests\Preview; use App\Http\Requests\Request; -use App\Models\Credit; -use App\Models\Invoice; -use App\Models\Quote; -use App\Models\RecurringInvoice; use App\Utils\Traits\CleanLineItems; use App\Utils\Traits\MakesHash; diff --git a/app/Http/Requests/Preview/PreviewPurchaseOrderRequest.php b/app/Http/Requests/Preview/PreviewPurchaseOrderRequest.php index 6b3ce83cd85e..d91de03c19ec 100644 --- a/app/Http/Requests/Preview/PreviewPurchaseOrderRequest.php +++ b/app/Http/Requests/Preview/PreviewPurchaseOrderRequest.php @@ -12,7 +12,6 @@ namespace App\Http\Requests\Preview; use App\Http\Requests\Request; -use App\Models\PurchaseOrder; use App\Utils\Traits\CleanLineItems; use App\Utils\Traits\MakesHash; diff --git a/app/Http/Requests/Product/StoreProductRequest.php b/app/Http/Requests/Product/StoreProductRequest.php index a512dc6e1750..4dacdbdfca16 100644 --- a/app/Http/Requests/Product/StoreProductRequest.php +++ b/app/Http/Requests/Product/StoreProductRequest.php @@ -28,10 +28,11 @@ class StoreProductRequest extends Request public function rules() { - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Product/UpdateProductRequest.php b/app/Http/Requests/Product/UpdateProductRequest.php index b66dfd00601f..36197b90cf4a 100644 --- a/app/Http/Requests/Product/UpdateProductRequest.php +++ b/app/Http/Requests/Product/UpdateProductRequest.php @@ -12,7 +12,6 @@ namespace App\Http\Requests\Product; use App\Http\Requests\Request; -use App\Models\Product; use App\Utils\Traits\ChecksEntityStatus; class UpdateProductRequest extends Request @@ -31,10 +30,11 @@ class UpdateProductRequest extends Request public function rules() { - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Product/UploadProductRequest.php b/app/Http/Requests/Product/UploadProductRequest.php index d08a20c0f571..b7117c035790 100644 --- a/app/Http/Requests/Product/UploadProductRequest.php +++ b/app/Http/Requests/Product/UploadProductRequest.php @@ -28,10 +28,11 @@ class UploadProductRequest extends Request public function rules() { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Project/CreateProjectRequest.php b/app/Http/Requests/Project/CreateProjectRequest.php index e9f9f193f750..44abf721d522 100644 --- a/app/Http/Requests/Project/CreateProjectRequest.php +++ b/app/Http/Requests/Project/CreateProjectRequest.php @@ -11,8 +11,8 @@ namespace App\Http\Requests\Project; -use App\Models\Project; use App\Http\Requests\Request; +use App\Models\Project; class CreateProjectRequest extends Request { @@ -24,6 +24,5 @@ class CreateProjectRequest extends Request public function authorize() : bool { return auth()->user()->can('create', Project::class); - } } diff --git a/app/Http/Requests/Project/ShowProjectRequest.php b/app/Http/Requests/Project/ShowProjectRequest.php index 6e6b4ba98a84..47abf0c57f74 100644 --- a/app/Http/Requests/Project/ShowProjectRequest.php +++ b/app/Http/Requests/Project/ShowProjectRequest.php @@ -24,7 +24,6 @@ class ShowProjectRequest extends Request { // return auth()->user()->isAdmin(); return auth()->user()->can('view', $this->project); - } /** diff --git a/app/Http/Requests/Project/StoreProjectRequest.php b/app/Http/Requests/Project/StoreProjectRequest.php index 3e2b7ee6a132..98664cd84c0e 100644 --- a/app/Http/Requests/Project/StoreProjectRequest.php +++ b/app/Http/Requests/Project/StoreProjectRequest.php @@ -42,10 +42,11 @@ class StoreProjectRequest extends Request $rules['number'] = Rule::unique('projects')->where('company_id', auth()->user()->company()->id); } - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Project/UpdateProjectRequest.php b/app/Http/Requests/Project/UpdateProjectRequest.php index 9d938ce8d046..484f18f036f3 100644 --- a/app/Http/Requests/Project/UpdateProjectRequest.php +++ b/app/Http/Requests/Project/UpdateProjectRequest.php @@ -37,10 +37,11 @@ class UpdateProjectRequest extends Request $rules['number'] = Rule::unique('projects')->where('company_id', auth()->user()->company()->id)->ignore($this->project->id); } - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Project/UploadProjectRequest.php b/app/Http/Requests/Project/UploadProjectRequest.php index bf37beab7d29..c7504f5b41f7 100644 --- a/app/Http/Requests/Project/UploadProjectRequest.php +++ b/app/Http/Requests/Project/UploadProjectRequest.php @@ -29,10 +29,11 @@ class UploadProjectRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/PurchaseOrder/StorePurchaseOrderRequest.php b/app/Http/Requests/PurchaseOrder/StorePurchaseOrderRequest.php index 3071a870a6ec..74697c804ad0 100644 --- a/app/Http/Requests/PurchaseOrder/StorePurchaseOrderRequest.php +++ b/app/Http/Requests/PurchaseOrder/StorePurchaseOrderRequest.php @@ -47,10 +47,11 @@ class StorePurchaseOrderRequest extends Request $rules['is_amount_discount'] = ['boolean']; $rules['line_items'] = 'array'; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/PurchaseOrder/UpdatePurchaseOrderRequest.php b/app/Http/Requests/PurchaseOrder/UpdatePurchaseOrderRequest.php index 3ee030773a09..e504fea5c08b 100644 --- a/app/Http/Requests/PurchaseOrder/UpdatePurchaseOrderRequest.php +++ b/app/Http/Requests/PurchaseOrder/UpdatePurchaseOrderRequest.php @@ -50,10 +50,11 @@ class UpdatePurchaseOrderRequest extends Request $rules['discount'] = 'sometimes|numeric'; $rules['is_amount_discount'] = ['boolean']; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/PurchaseOrder/UploadPurchaseOrderRequest.php b/app/Http/Requests/PurchaseOrder/UploadPurchaseOrderRequest.php index 3fdce5fac4e0..25aadfdb1a19 100644 --- a/app/Http/Requests/PurchaseOrder/UploadPurchaseOrderRequest.php +++ b/app/Http/Requests/PurchaseOrder/UploadPurchaseOrderRequest.php @@ -29,10 +29,11 @@ class UploadPurchaseOrderRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Quote/StoreQuoteRequest.php b/app/Http/Requests/Quote/StoreQuoteRequest.php index 18c132367891..387f165de110 100644 --- a/app/Http/Requests/Quote/StoreQuoteRequest.php +++ b/app/Http/Requests/Quote/StoreQuoteRequest.php @@ -39,10 +39,11 @@ class StoreQuoteRequest extends Request $rules['client_id'] = 'required|exists:clients,id,company_id,'.auth()->user()->company()->id; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Quote/UpdateQuoteRequest.php b/app/Http/Requests/Quote/UpdateQuoteRequest.php index 5d75ef768a7a..07b463936892 100644 --- a/app/Http/Requests/Quote/UpdateQuoteRequest.php +++ b/app/Http/Requests/Quote/UpdateQuoteRequest.php @@ -37,10 +37,11 @@ class UpdateQuoteRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Quote/UploadQuoteRequest.php b/app/Http/Requests/Quote/UploadQuoteRequest.php index 1dce9e19de03..cfc3580ad412 100644 --- a/app/Http/Requests/Quote/UploadQuoteRequest.php +++ b/app/Http/Requests/Quote/UploadQuoteRequest.php @@ -29,10 +29,11 @@ class UploadQuoteRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringExpense/StoreRecurringExpenseRequest.php b/app/Http/Requests/RecurringExpense/StoreRecurringExpenseRequest.php index d2752a446e57..7b9e582a58d1 100644 --- a/app/Http/Requests/RecurringExpense/StoreRecurringExpenseRequest.php +++ b/app/Http/Requests/RecurringExpense/StoreRecurringExpenseRequest.php @@ -48,10 +48,11 @@ class StoreRecurringExpenseRequest extends Request $rules['tax_amount2'] = 'numeric'; $rules['tax_amount3'] = 'numeric'; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringExpense/UpdateRecurringExpenseRequest.php b/app/Http/Requests/RecurringExpense/UpdateRecurringExpenseRequest.php index 271a46bfd25b..76c61120971e 100644 --- a/app/Http/Requests/RecurringExpense/UpdateRecurringExpenseRequest.php +++ b/app/Http/Requests/RecurringExpense/UpdateRecurringExpenseRequest.php @@ -48,10 +48,11 @@ class UpdateRecurringExpenseRequest extends Request $rules['tax_amount3'] = 'numeric'; $rules['category_id'] = 'bail|nullable|sometimes|exists:expense_categories,id,company_id,'.auth()->user()->company()->id.',is_deleted,0'; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringExpense/UploadRecurringExpenseRequest.php b/app/Http/Requests/RecurringExpense/UploadRecurringExpenseRequest.php index d086142bff41..b202ece92069 100644 --- a/app/Http/Requests/RecurringExpense/UploadRecurringExpenseRequest.php +++ b/app/Http/Requests/RecurringExpense/UploadRecurringExpenseRequest.php @@ -29,10 +29,11 @@ class UploadRecurringExpenseRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringInvoice/StoreRecurringInvoiceRequest.php b/app/Http/Requests/RecurringInvoice/StoreRecurringInvoiceRequest.php index 9cfab48bbf5f..420afb7c09f7 100644 --- a/app/Http/Requests/RecurringInvoice/StoreRecurringInvoiceRequest.php +++ b/app/Http/Requests/RecurringInvoice/StoreRecurringInvoiceRequest.php @@ -38,10 +38,11 @@ class StoreRecurringInvoiceRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringInvoice/UpdateRecurringInvoiceRequest.php b/app/Http/Requests/RecurringInvoice/UpdateRecurringInvoiceRequest.php index 2ad0c1d52558..f268cbe84288 100644 --- a/app/Http/Requests/RecurringInvoice/UpdateRecurringInvoiceRequest.php +++ b/app/Http/Requests/RecurringInvoice/UpdateRecurringInvoiceRequest.php @@ -38,10 +38,11 @@ class UpdateRecurringInvoiceRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringInvoice/UploadRecurringInvoiceRequest.php b/app/Http/Requests/RecurringInvoice/UploadRecurringInvoiceRequest.php index a6125e8c7bcb..7d0ef57f7eba 100644 --- a/app/Http/Requests/RecurringInvoice/UploadRecurringInvoiceRequest.php +++ b/app/Http/Requests/RecurringInvoice/UploadRecurringInvoiceRequest.php @@ -29,10 +29,11 @@ class UploadRecurringInvoiceRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringQuote/StoreRecurringQuoteRequest.php b/app/Http/Requests/RecurringQuote/StoreRecurringQuoteRequest.php index ec3225dfd0f1..396341b9fcd0 100644 --- a/app/Http/Requests/RecurringQuote/StoreRecurringQuoteRequest.php +++ b/app/Http/Requests/RecurringQuote/StoreRecurringQuoteRequest.php @@ -37,10 +37,11 @@ class StoreRecurringQuoteRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringQuote/UpdateRecurringQuoteRequest.php b/app/Http/Requests/RecurringQuote/UpdateRecurringQuoteRequest.php index 957173a241fc..d7004836bd9c 100644 --- a/app/Http/Requests/RecurringQuote/UpdateRecurringQuoteRequest.php +++ b/app/Http/Requests/RecurringQuote/UpdateRecurringQuoteRequest.php @@ -37,10 +37,11 @@ class UpdateRecurringQuoteRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/RecurringQuote/UploadRecurringQuoteRequest.php b/app/Http/Requests/RecurringQuote/UploadRecurringQuoteRequest.php index 6ec54bf6ae1b..ee17418bb88f 100644 --- a/app/Http/Requests/RecurringQuote/UploadRecurringQuoteRequest.php +++ b/app/Http/Requests/RecurringQuote/UploadRecurringQuoteRequest.php @@ -29,10 +29,11 @@ class UploadRecurringQuoteRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Report/GenericReportRequest.php b/app/Http/Requests/Report/GenericReportRequest.php index 826ef00a5156..63837aa41341 100644 --- a/app/Http/Requests/Report/GenericReportRequest.php +++ b/app/Http/Requests/Report/GenericReportRequest.php @@ -58,6 +58,5 @@ class GenericReportRequest extends Request } $this->replace($input); - } } diff --git a/app/Http/Requests/Task/StoreTaskRequest.php b/app/Http/Requests/Task/StoreTaskRequest.php index a4fe31f950c5..e97d5d4c1a00 100644 --- a/app/Http/Requests/Task/StoreTaskRequest.php +++ b/app/Http/Requests/Task/StoreTaskRequest.php @@ -59,10 +59,11 @@ class StoreTaskRequest extends Request } }]; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Task/UpdateTaskRequest.php b/app/Http/Requests/Task/UpdateTaskRequest.php index 69194e7beee0..e8b5deb52f3c 100644 --- a/app/Http/Requests/Task/UpdateTaskRequest.php +++ b/app/Http/Requests/Task/UpdateTaskRequest.php @@ -66,10 +66,11 @@ class UpdateTaskRequest extends Request } }]; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/User/DetachCompanyUserRequest.php b/app/Http/Requests/User/DetachCompanyUserRequest.php index 843b84d98371..393295f9bc4c 100644 --- a/app/Http/Requests/User/DetachCompanyUserRequest.php +++ b/app/Http/Requests/User/DetachCompanyUserRequest.php @@ -12,11 +12,9 @@ namespace App\Http\Requests\User; use App\Http\Requests\Request; -use App\Utils\Traits\MakesHash; class DetachCompanyUserRequest extends Request { - /** * Determine if the user is authorized to make this request. * diff --git a/app/Http/Requests/Vendor/StoreVendorRequest.php b/app/Http/Requests/Vendor/StoreVendorRequest.php index 3ede512b7d74..777930dd70b4 100644 --- a/app/Http/Requests/Vendor/StoreVendorRequest.php +++ b/app/Http/Requests/Vendor/StoreVendorRequest.php @@ -41,10 +41,11 @@ class StoreVendorRequest extends Request $rules['currency_id'] = 'bail|required|exists:currencies,id'; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; @@ -57,7 +58,6 @@ class StoreVendorRequest extends Request public function prepareForValidation() { - $input = $this->all(); if (!array_key_exists('currency_id', $input) || empty($input['currency_id'])) { diff --git a/app/Http/Requests/Vendor/UpdateVendorRequest.php b/app/Http/Requests/Vendor/UpdateVendorRequest.php index 46ac272f643d..2010b38d1d1e 100644 --- a/app/Http/Requests/Vendor/UpdateVendorRequest.php +++ b/app/Http/Requests/Vendor/UpdateVendorRequest.php @@ -44,10 +44,11 @@ class UpdateVendorRequest extends Request $rules['contacts.*.email'] = 'nullable|distinct'; $rules['currency_id'] = 'bail|sometimes|exists:currencies,id'; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/Requests/Vendor/UploadVendorRequest.php b/app/Http/Requests/Vendor/UploadVendorRequest.php index fb08ca962608..6df26684fd6c 100644 --- a/app/Http/Requests/Vendor/UploadVendorRequest.php +++ b/app/Http/Requests/Vendor/UploadVendorRequest.php @@ -29,10 +29,11 @@ class UploadVendorRequest extends Request { $rules = []; - if($this->file('documents') && is_array($this->file('documents'))) + if ($this->file('documents') && is_array($this->file('documents'))) { $rules['documents.*'] = $this->file_validation; - elseif($this->file('documents')) + } elseif ($this->file('documents')) { $rules['documents'] = $this->file_validation; + } if ($this->file('file') && is_array($this->file('file'))) { $rules['file.*'] = $this->file_validation; diff --git a/app/Http/ValidationRules/PaymentAppliedValidAmount.php b/app/Http/ValidationRules/PaymentAppliedValidAmount.php index 88432bd8f2a8..1d674e07d8c5 100644 --- a/app/Http/ValidationRules/PaymentAppliedValidAmount.php +++ b/app/Http/ValidationRules/PaymentAppliedValidAmount.php @@ -84,17 +84,15 @@ class PaymentAppliedValidAmount implements Rule $inv = $inv_collection->firstWhere('id', $invoice['invoice_id']); - if($inv->balance < $invoice['amount']) { - + if ($inv->balance < $invoice['amount']) { $this->message = 'Amount cannot be greater than invoice balance'; return false; } - } } - if(round($payment_amounts, 3) >= round($invoice_amounts, 3)) { + if (round($payment_amounts, 3) >= round($invoice_amounts, 3)) { return true; } diff --git a/app/Http/ViewComposers/PortalComposer.php b/app/Http/ViewComposers/PortalComposer.php index 747cc9572adb..1a318e0e3f5b 100644 --- a/app/Http/ViewComposers/PortalComposer.php +++ b/app/Http/ViewComposers/PortalComposer.php @@ -138,7 +138,7 @@ class PortalComposer $data[] = ['title' => ctrans('texts.subscriptions'), 'url' => 'client.subscriptions.index', 'icon' => 'calendar']; } - if(property_exists($this->settings, 'client_initiated_payments') && $this->settings->client_initiated_payments) { + if (property_exists($this->settings, 'client_initiated_payments') && $this->settings->client_initiated_payments) { $data[] = ['title' => ctrans('texts.pre_payment'), 'url' => 'client.pre_payments.index', 'icon' => 'dollar-sign']; } diff --git a/app/Import/Providers/BaseImport.php b/app/Import/Providers/BaseImport.php index 072bc65c5713..b264a4320dea 100644 --- a/app/Import/Providers/BaseImport.php +++ b/app/Import/Providers/BaseImport.php @@ -130,12 +130,10 @@ class BaseImport // $count = substr_count($csvfile, $delimiter); // $bestDelimiter = $delimiter; // } - if (substr_count(strstr($csvfile,"\n",true), $delimiter) > $count) { + if (substr_count(strstr($csvfile, "\n", true), $delimiter) > $count) { $count = substr_count($csvfile, $delimiter); $bestDelimiter = $delimiter; } - - } return $bestDelimiter; } @@ -641,8 +639,6 @@ class BaseImport public function preTransform(array $data, $entity_type) { - - $keys = array_shift($data); ksort($keys); @@ -666,11 +662,10 @@ class BaseImport ksort($keys); $data = array_map(function ($row) use ($keys) { - $row_count = count($row); $key_count = count($keys); - if($key_count > $row_count) { + if ($key_count > $row_count) { $row = array_pad($row, $key_count, ' '); } diff --git a/app/Jobs/Inventory/AdjustProductInventory.php b/app/Jobs/Inventory/AdjustProductInventory.php index 8e5c01e1dcd4..27d7c4b7926e 100644 --- a/app/Jobs/Inventory/AdjustProductInventory.php +++ b/app/Jobs/Inventory/AdjustProductInventory.php @@ -68,22 +68,17 @@ class AdjustProductInventory implements ShouldQueue // $p->saveQuietly(); // } - collect($this->invoice->line_items)->filter(function ($item){ + collect($this->invoice->line_items)->filter(function ($item) { return $item->type_id == '1'; - })->each(function ($i){ - + })->each(function ($i) { $p = Product::where('product_key', $i->product_key)->where('company_id', $this->company->id)->first(); if ($p) { - $p->in_stock_quantity += $i->quantity; $p->saveQuietly(); - } - }); - } public function handleRestoredInvoice() @@ -112,8 +107,6 @@ class AdjustProductInventory implements ShouldQueue $p->saveQuietly(); } }); - - } public function middleware() @@ -157,12 +150,8 @@ class AdjustProductInventory implements ShouldQueue } elseif ($this->company->stock_notification && $p->stock_notification && $this->company->inventory_notification_threshold && $p->in_stock_quantity <= $this->company->inventory_notification_threshold) { $this->notifyStocklevels($p, 'company'); } - } }); - - - } private function existingInventoryAdjustment() @@ -189,8 +178,6 @@ class AdjustProductInventory implements ShouldQueue $p->saveQuietly(); } }); - - } private function notifyStocklevels(Product $product, string $notification_level) diff --git a/app/Jobs/Mail/NinjaMailerJob.php b/app/Jobs/Mail/NinjaMailerJob.php index 34ebd668c65e..871595f1c0ef 100644 --- a/app/Jobs/Mail/NinjaMailerJob.php +++ b/app/Jobs/Mail/NinjaMailerJob.php @@ -584,8 +584,9 @@ class NinjaMailerJob implements ShouldQueue $guzzle = new \GuzzleHttp\Client(); $url = 'https://login.microsoftonline.com/common/oauth2/v2.0/token'; - if(!$user->oauth_user_refresh_token || $user->oauth_user_refresh_token == '') + if (!$user->oauth_user_refresh_token || $user->oauth_user_refresh_token == '') { return false; + } $token = json_decode($guzzle->post($url, [ 'form_params' => [ diff --git a/app/Jobs/Ninja/AdjustEmailQuota.php b/app/Jobs/Ninja/AdjustEmailQuota.php index 1cec63ab0d04..e8a482b56893 100644 --- a/app/Jobs/Ninja/AdjustEmailQuota.php +++ b/app/Jobs/Ninja/AdjustEmailQuota.php @@ -21,8 +21,9 @@ use Illuminate\Foundation\Bus\Dispatchable; use Illuminate\Queue\InteractsWithQueue; use Illuminate\Queue\SerializesModels; use Illuminate\Support\Facades\Cache; -use Turbo124\Beacon\Facades\LightLogs; use Illuminate\Support\Facades\Redis; +use Turbo124\Beacon\Facades\LightLogs; + class AdjustEmailQuota implements ShouldQueue { use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; @@ -78,14 +79,11 @@ class AdjustEmailQuota implements ShouldQueue $keys = $redis->keys($prefix); - if(is_array($keys)) - { + if (is_array($keys)) { $redis->pipeline(function ($pipe) use ($keys) { - foreach ($keys as $key) { $pipe->del($key); } - }); } $keys = null; @@ -101,7 +99,5 @@ class AdjustEmailQuota implements ShouldQueue } }); } - - } } diff --git a/app/Jobs/Ninja/SendReminders.php b/app/Jobs/Ninja/SendReminders.php index 47754da05b6d..884a555cf436 100644 --- a/app/Jobs/Ninja/SendReminders.php +++ b/app/Jobs/Ninja/SendReminders.php @@ -215,7 +215,6 @@ class SendReminders implements ShouldQueue EmailEntity::dispatch($invitation, $invitation->company, $template)->delay(10); event(new InvoiceWasEmailed($invoice->invitations->first(), $invoice->company, Ninja::eventVars(), $template)); - } }); diff --git a/app/Jobs/Payment/EmailPayment.php b/app/Jobs/Payment/EmailPayment.php index ff01b4e9e898..54bc5c00d63f 100644 --- a/app/Jobs/Payment/EmailPayment.php +++ b/app/Jobs/Payment/EmailPayment.php @@ -73,8 +73,9 @@ class EmailPayment implements ShouldQueue $this->payment->load('invoices'); - if(!$this->contact) + if (!$this->contact) { $this->contact = $this->payment->client->contacts()->first(); + } $this->contact->load('client'); diff --git a/app/Jobs/Util/Import.php b/app/Jobs/Util/Import.php index ecfb43a5f96c..4ace36d167d6 100644 --- a/app/Jobs/Util/Import.php +++ b/app/Jobs/Util/Import.php @@ -811,7 +811,7 @@ class Import implements ShouldQueue $modified['updated_at'] = Carbon::parse($modified['updated_at']); } - if(!array_key_exists('currency_id', $modified) || !$modified['currency_id']) { + if (!array_key_exists('currency_id', $modified) || !$modified['currency_id']) { $modified['currency_id'] = $this->company->settings->currency_id; } diff --git a/app/Jobs/Util/ReminderJob.php b/app/Jobs/Util/ReminderJob.php index bf56b28546fe..df52f0084b15 100644 --- a/app/Jobs/Util/ReminderJob.php +++ b/app/Jobs/Util/ReminderJob.php @@ -11,24 +11,22 @@ namespace App\Jobs\Util; -use App\Utils\Ninja; -use App\Models\Invoice; -use App\Libraries\MultiDB; -use Illuminate\Bus\Queueable; -use Illuminate\Support\Carbon; use App\DataMapper\InvoiceItem; use App\Jobs\Entity\EmailEntity; -use App\Models\TransactionEvent; -use App\Utils\Traits\MakesDates; use App\Jobs\Ninja\TransactionLog; -use Illuminate\Support\Facades\App; +use App\Libraries\MultiDB; +use App\Models\Invoice; +use App\Models\TransactionEvent; +use App\Utils\Ninja; +use App\Utils\Traits\MakesDates; use App\Utils\Traits\MakesReminders; -use Illuminate\Queue\SerializesModels; -use Illuminate\Queue\InteractsWithQueue; -use App\Events\Invoice\InvoiceWasEmailed; +use Illuminate\Bus\Queueable; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Bus\Dispatchable; -use App\Events\Invoice\InvoiceReminderWasEmailed; +use Illuminate\Queue\InteractsWithQueue; +use Illuminate\Queue\SerializesModels; +use Illuminate\Support\Carbon; +use Illuminate\Support\Facades\App; class ReminderJob implements ShouldQueue { diff --git a/app/Listeners/Payment/PaymentBalanceActivity.php b/app/Listeners/Payment/PaymentBalanceActivity.php index 23d021e1c12c..d04dcaf5ffa8 100644 --- a/app/Listeners/Payment/PaymentBalanceActivity.php +++ b/app/Listeners/Payment/PaymentBalanceActivity.php @@ -12,8 +12,8 @@ namespace App\Listeners\Payment; use App\Libraries\MultiDB; -use Illuminate\Queue\InteractsWithQueue; use Illuminate\Contracts\Queue\ShouldQueue; +use Illuminate\Queue\InteractsWithQueue; use Illuminate\Queue\Middleware\WithoutOverlapping; class PaymentBalanceActivity implements ShouldQueue @@ -35,11 +35,9 @@ class PaymentBalanceActivity implements ShouldQueue */ public function handle($event) { - MultiDB::setDb($event->company->db); $event->payment->client->service()->updatePaymentBalance(); - } public function middleware($event): array diff --git a/app/Listeners/Payment/PaymentEmailedActivity.php b/app/Listeners/Payment/PaymentEmailedActivity.php index 5fcf3e765abd..16149f9cd3d1 100644 --- a/app/Listeners/Payment/PaymentEmailedActivity.php +++ b/app/Listeners/Payment/PaymentEmailedActivity.php @@ -11,15 +11,13 @@ namespace App\Listeners\Payment; -use App\Models\Activity; use App\Libraries\MultiDB; +use App\Models\Activity; use App\Repositories\ActivityRepository; use Illuminate\Contracts\Queue\ShouldQueue; -use App\Utils\Traits\Notifications\UserNotifies; class PaymentEmailedActivity implements ShouldQueue { - protected $activity_repo; /** @@ -52,6 +50,5 @@ class PaymentEmailedActivity implements ShouldQueue $fields->payment_id = $event->payment->id; $this->activity_repo->save($fields, $event->payment, $event->event_vars); - } } diff --git a/app/Mail/Engine/PaymentEmailEngine.php b/app/Mail/Engine/PaymentEmailEngine.php index 215949837570..b16cd3f7133a 100644 --- a/app/Mail/Engine/PaymentEmailEngine.php +++ b/app/Mail/Engine/PaymentEmailEngine.php @@ -362,7 +362,7 @@ class PaymentEmailEngine extends BaseEmailEngine /** * generateLabelsAndValues - * + * * @return array */ public function generateLabelsAndValues(): array @@ -388,11 +388,9 @@ class PaymentEmailEngine extends BaseEmailEngine */ private function buildViewButton(string $link, string $text): string { - - - if ($this->settings->email_style == 'plain') { - return ''. $text .''; - } + if ($this->settings->email_style == 'plain') { + return ''. $text .''; + } return ' diff --git a/app/Models/Gateway.php b/app/Models/Gateway.php index aa1105b852a9..56603bf3f05b 100644 --- a/app/Models/Gateway.php +++ b/app/Models/Gateway.php @@ -134,7 +134,7 @@ class Gateway extends StaticModel GatewayType::PAYPAL => ['refund' => false, 'token_billing' => false], ]; //Paypal case 20: - case 56: + case 56: return [ GatewayType::CREDIT_CARD => ['refund' => true, 'token_billing' => true, 'webhooks' => ['payment_intent.succeeded', 'payment_intent.payment_failed']], GatewayType::BANK_TRANSFER => ['refund' => true, 'token_billing' => true, 'webhooks' => ['source.chargeable', 'charge.succeeded', 'customer.source.updated','payment_intent.processing', 'payment_intent.payment_failed']], diff --git a/app/Models/Payment.php b/app/Models/Payment.php index 70da83de1bdd..b7d9d47e7565 100644 --- a/app/Models/Payment.php +++ b/app/Models/Payment.php @@ -311,7 +311,6 @@ class Payment extends BaseModel $pt = new PaymentType(); return $pt->name($this->type_id); - } public function gateway_type() diff --git a/app/Models/PaymentType.php b/app/Models/PaymentType.php index a9529e0963ee..528d0be6a74f 100644 --- a/app/Models/PaymentType.php +++ b/app/Models/PaymentType.php @@ -152,8 +152,9 @@ class PaymentType extends StaticModel public function name($id) { - if(isset($this->type_names[$id])) + if (isset($this->type_names[$id])) { return ctrans("texts.".$this->type_names[$id]); + } return ctrans('texts.manual_entry'); } diff --git a/app/Models/Product.php b/app/Models/Product.php index ac34c8f43cb2..29174daaf466 100644 --- a/app/Models/Product.php +++ b/app/Models/Product.php @@ -12,8 +12,8 @@ namespace App\Models; use App\Utils\Traits\MakesHash; -use League\CommonMark\CommonMarkConverter; use Illuminate\Database\Eloquent\SoftDeletes; +use League\CommonMark\CommonMarkConverter; /** * App\Models\Product diff --git a/app/Models/Vendor.php b/app/Models/Vendor.php index 1508a5944a19..84ca29d6f31d 100644 --- a/app/Models/Vendor.php +++ b/app/Models/Vendor.php @@ -263,7 +263,7 @@ class Vendor extends BaseModel public function getMergedSettings() :object { return $this->company->settings; - } + } public function purchase_order_filepath($invitation) { diff --git a/app/Notifications/Ninja/EmailQualityNotification.php b/app/Notifications/Ninja/EmailQualityNotification.php index dcba5702604b..ee1a32f6d8c1 100644 --- a/app/Notifications/Ninja/EmailQualityNotification.php +++ b/app/Notifications/Ninja/EmailQualityNotification.php @@ -12,7 +12,6 @@ namespace App\Notifications\Ninja; use App\Models\Company; -use Illuminate\Notifications\Messages\MailMessage; use Illuminate\Notifications\Messages\SlackMessage; use Illuminate\Notifications\Notification; diff --git a/app/PaymentDrivers/BaseDriver.php b/app/PaymentDrivers/BaseDriver.php index b746e17299ca..42f0f553ff38 100644 --- a/app/PaymentDrivers/BaseDriver.php +++ b/app/PaymentDrivers/BaseDriver.php @@ -11,36 +11,36 @@ namespace App\PaymentDrivers; -use App\Utils\Ninja; -use App\Utils\Number; +use App\Events\Invoice\InvoiceWasPaid; +use App\Events\Payment\PaymentWasCreated; +use App\Exceptions\PaymentFailed; +use App\Factory\PaymentFactory; +use App\Http\Requests\ClientPortal\Payments\PaymentResponseRequest; +use App\Jobs\Mail\NinjaMailer; +use App\Jobs\Mail\NinjaMailerJob; +use App\Jobs\Mail\NinjaMailerObject; +use App\Jobs\Mail\PaymentFailedMailer; +use App\Jobs\Util\SystemLogger; +use App\Mail\Admin\ClientPaymentFailureObject; use App\Models\Client; -use App\Utils\Helpers; +use App\Models\ClientContact; +use App\Models\ClientGatewayToken; +use App\Models\CompanyGateway; +use App\Models\GatewayType; use App\Models\Invoice; use App\Models\Payment; -use App\Models\SystemLog; -use App\Models\GatewayType; use App\Models\PaymentHash; -use Illuminate\Support\Str; -use Illuminate\Http\Request; -use App\Models\ClientContact; -use App\Jobs\Mail\NinjaMailer; -use App\Models\CompanyGateway; -use Illuminate\Support\Carbon; -use App\Factory\PaymentFactory; -use App\Jobs\Util\SystemLogger; -use App\Utils\Traits\MakesHash; -use App\Exceptions\PaymentFailed; -use App\Jobs\Mail\NinjaMailerJob; -use App\Models\ClientGatewayToken; -use Illuminate\Support\Facades\App; -use App\Jobs\Mail\NinjaMailerObject; -use App\Utils\Traits\SystemLogTrait; -use App\Events\Invoice\InvoiceWasPaid; -use App\Jobs\Mail\PaymentFailedMailer; -use App\Events\Payment\PaymentWasCreated; -use App\Mail\Admin\ClientPaymentFailureObject; +use App\Models\SystemLog; use App\Services\Subscription\SubscriptionService; -use App\Http\Requests\ClientPortal\Payments\PaymentResponseRequest; +use App\Utils\Helpers; +use App\Utils\Ninja; +use App\Utils\Number; +use App\Utils\Traits\MakesHash; +use App\Utils\Traits\SystemLogTrait; +use Illuminate\Http\Request; +use Illuminate\Support\Carbon; +use Illuminate\Support\Facades\App; +use Illuminate\Support\Str; /** * Class BaseDriver. @@ -749,11 +749,10 @@ class BaseDriver extends AbstractPaymentDriver return ctrans('texts.gateway_payment_text', [ 'invoices' => $invoices_string, 'amount' => $amount, - 'client' => $this->client->present()->name(), + 'client' => $this->client->present()->name(), ]); return sprintf('%s: %s', ctrans('texts.invoices'), \implode(', ', collect($this->payment_hash->invoices())->pluck('invoice_number')->toArray())); - } /** diff --git a/app/PaymentDrivers/Braintree/CreditCard.php b/app/PaymentDrivers/Braintree/CreditCard.php index c8dbeba2c8a7..76945859519a 100644 --- a/app/PaymentDrivers/Braintree/CreditCard.php +++ b/app/PaymentDrivers/Braintree/CreditCard.php @@ -140,7 +140,6 @@ class CreditCard try { $result = $this->braintree->gateway->transaction()->sale($data); - } catch (\Exception $e) { if ($e instanceof \Braintree\Exception\Authorization) { $this->braintree->sendFailureMail(ctrans('texts.generic_gateway_error')); diff --git a/app/PaymentDrivers/CustomPaymentDriver.php b/app/PaymentDrivers/CustomPaymentDriver.php index a99bdd4123fe..7a28833ed5d0 100644 --- a/app/PaymentDrivers/CustomPaymentDriver.php +++ b/app/PaymentDrivers/CustomPaymentDriver.php @@ -12,16 +12,16 @@ namespace App\PaymentDrivers; +use App\Jobs\Util\SystemLogger; +use App\Models\ClientGatewayToken; +use App\Models\GatewayType; use App\Models\Invoice; use App\Models\Payment; -use App\Models\SystemLog; -use App\Utils\HtmlEngine; -use App\Models\GatewayType; use App\Models\PaymentHash; use App\Models\PaymentType; -use App\Jobs\Util\SystemLogger; +use App\Models\SystemLog; +use App\Utils\HtmlEngine; use App\Utils\Traits\MakesHash; -use App\Models\ClientGatewayToken; /** * Class CustomPaymentDriver. @@ -97,9 +97,7 @@ class CustomPaymentDriver extends BaseDriver */ public function processPaymentResponse($request) { - if ($request->has('gateway_response')) { - $this->client = auth()->guard('contact')->user()->client; $state = [ @@ -109,8 +107,7 @@ class CustomPaymentDriver extends BaseDriver $payment_hash = PaymentHash::where('hash', $request->payment_hash)->first(); - if($payment_hash) - { + if ($payment_hash) { $this->payment_hash = $payment_hash; $payment_hash->data = array_merge((array) $payment_hash->data, $state); @@ -122,27 +119,26 @@ class CustomPaymentDriver extends BaseDriver if ($gateway_response->status == 'COMPLETED') { $this->logSuccessfulGatewayResponse(['response' => json_decode($request->gateway_response), 'data' => $payment_hash], SystemLog::TYPE_CUSTOM); - $data = [ - 'payment_method' => '', - 'payment_type' => PaymentType::CREDIT_CARD_OTHER, - 'amount' => $payment_hash->amount_with_fee(), - 'transaction_reference' => $gateway_response?->purchase_units[0]?->payments?->captures[0]?->id, - 'gateway_type_id' => GatewayType::PAYPAL, - ]; + $data = [ + 'payment_method' => '', + 'payment_type' => PaymentType::CREDIT_CARD_OTHER, + 'amount' => $payment_hash->amount_with_fee(), + 'transaction_reference' => $gateway_response?->purchase_units[0]?->payments?->captures[0]?->id, + 'gateway_type_id' => GatewayType::PAYPAL, + ]; - $payment = $this->createPayment($data, Payment::STATUS_COMPLETED); + $payment = $this->createPayment($data, Payment::STATUS_COMPLETED); - SystemLogger::dispatch( - ['response' => $payment_hash->data->server_response, 'data' => $data], - SystemLog::CATEGORY_GATEWAY_RESPONSE, - SystemLog::EVENT_GATEWAY_SUCCESS, - SystemLog::TYPE_STRIPE, - $this->client, - $this->client->company, - ); - - return redirect()->route('client.payments.show', ['payment' => $this->encodePrimaryKey($payment->id)]); + SystemLogger::dispatch( + ['response' => $payment_hash->data->server_response, 'data' => $data], + SystemLog::CATEGORY_GATEWAY_RESPONSE, + SystemLog::EVENT_GATEWAY_SUCCESS, + SystemLog::TYPE_STRIPE, + $this->client, + $this->client->company, + ); + return redirect()->route('client.payments.show', ['payment' => $this->encodePrimaryKey($payment->id)]); } } diff --git a/app/PaymentDrivers/GoCardless/DirectDebit.php b/app/PaymentDrivers/GoCardless/DirectDebit.php index 2fec81223f84..4de93dc8dfc8 100644 --- a/app/PaymentDrivers/GoCardless/DirectDebit.php +++ b/app/PaymentDrivers/GoCardless/DirectDebit.php @@ -138,7 +138,7 @@ class DirectDebit implements MethodInterface private function resolveScheme(string $scheme): int { - match($scheme){ + match ($scheme) { 'sepa_core' => $type = GatewayType::SEPA, default => $type = GatewayType::DIRECT_DEBIT, }; diff --git a/app/PaymentDrivers/GoCardlessPaymentDriver.php b/app/PaymentDrivers/GoCardlessPaymentDriver.php index 91d845997a3f..869924adebf8 100644 --- a/app/PaymentDrivers/GoCardlessPaymentDriver.php +++ b/app/PaymentDrivers/GoCardlessPaymentDriver.php @@ -416,14 +416,12 @@ class GoCardlessPaymentDriver extends BaseDriver private function updatePaymentMethods($customer, Client $client): void { - $this->client = $client; $mandates = $this->gateway->mandates()->list(); - foreach($mandates->records as $mandate) - { - if($customer->id != $mandate->links->customer || $mandate->status != 'active' || ClientGatewayToken::where('token', $mandate->id)->where('gateway_customer_reference', $customer->id)->exists()) { + foreach ($mandates->records as $mandate) { + if ($customer->id != $mandate->links->customer || $mandate->status != 'active' || ClientGatewayToken::where('token', $mandate->id)->where('gateway_customer_reference', $customer->id)->exists()) { continue; } @@ -432,12 +430,10 @@ class GoCardlessPaymentDriver extends BaseDriver if ($mandate->scheme == 'bacs') { $payment_meta->brand = ctrans('texts.payment_type_direct_debit'); $payment_meta->type = GatewayType::DIRECT_DEBIT; - } - elseif($mandate->scheme == 'sepa_core') { + } elseif ($mandate->scheme == 'sepa_core') { $payment_meta->brand = ctrans('texts.sepa'); $payment_meta->type = GatewayType::SEPA; - } - else { + } else { continue; } @@ -451,7 +447,6 @@ class GoCardlessPaymentDriver extends BaseDriver $payment_method = $this->storeGatewayToken($data, ['gateway_customer_reference' => $mandate->links->customer]); } - } /* diff --git a/app/PaymentDrivers/Stripe/ACH.php b/app/PaymentDrivers/Stripe/ACH.php index 1a3473fc67d9..75789084245c 100644 --- a/app/PaymentDrivers/Stripe/ACH.php +++ b/app/PaymentDrivers/Stripe/ACH.php @@ -356,8 +356,7 @@ class ACH $response = json_decode($request->gateway_response); $bank_account_response = json_decode($request->bank_account_response); - if($response->status == 'requires_source_action' && $response->next_action->type == 'verify_with_microdeposits') - { + if ($response->status == 'requires_source_action' && $response->next_action->type == 'verify_with_microdeposits') { $method = $bank_account_response->payment_method->us_bank_account; $method = $bank_account_response->payment_method->us_bank_account; $method->id = $response->payment_method; @@ -561,7 +560,7 @@ class ACH $payment_meta->type = GatewayType::BANK_TRANSFER; $payment_meta->state = $state; - if(property_exists($method, 'next_action')) { + if (property_exists($method, 'next_action')) { $payment_meta->next_action = $method->next_action; } diff --git a/app/PaymentDrivers/Stripe/ACSS.php b/app/PaymentDrivers/Stripe/ACSS.php index 0cfa8f0812f4..2b60283d1839 100644 --- a/app/PaymentDrivers/Stripe/ACSS.php +++ b/app/PaymentDrivers/Stripe/ACSS.php @@ -185,7 +185,6 @@ class ACSS $this->stripe->payment_hash->save(); if (property_exists($gateway_response, 'status') && $gateway_response->status == 'processing') { - return $this->processSuccessfulPayment($gateway_response->id); } diff --git a/app/PaymentDrivers/Stripe/Alipay.php b/app/PaymentDrivers/Stripe/Alipay.php index 01a5329bc700..b3eb136ba236 100644 --- a/app/PaymentDrivers/Stripe/Alipay.php +++ b/app/PaymentDrivers/Stripe/Alipay.php @@ -33,7 +33,6 @@ class Alipay public function paymentView(array $data) { - $intent = \Stripe\PaymentIntent::create([ 'amount' => $this->stripe->convertToStripeAmount($data['total']['amount_with_fee'], $this->stripe->client->currency()->precision, $this->stripe->client->currency()), 'currency' => $this->stripe->client->currency()->code, @@ -76,8 +75,7 @@ class Alipay $this->stripe->payment_hash->data = array_merge((array) $this->stripe->payment_hash->data, $request->all()); $this->stripe->payment_hash->save(); - if($request->payment_intent){ - + if ($request->payment_intent) { $pi = \Stripe\PaymentIntent::retrieve( $request->payment_intent, $this->stripe->stripe_connect_auth @@ -89,10 +87,9 @@ class Alipay return $this->processSuccesfulRedirect($pi); } - if($pi->status == 'requires_source_action') { + if ($pi->status == 'requires_source_action') { return redirect($pi->next_action->alipay_handle_redirect->url); } - } return $this->processUnsuccesfulRedirect(); diff --git a/app/PaymentDrivers/Stripe/BACS.php b/app/PaymentDrivers/Stripe/BACS.php index b7fde1e47b30..3e649eef124b 100644 --- a/app/PaymentDrivers/Stripe/BACS.php +++ b/app/PaymentDrivers/Stripe/BACS.php @@ -20,12 +20,10 @@ use App\Models\GatewayType; use App\Models\Payment; use App\Models\PaymentType; use App\Models\SystemLog; -use App\PaymentDrivers\StripePaymentDriver; use App\PaymentDrivers\Stripe\Jobs\UpdateCustomer; -use Stripe\Checkout\Session; -use Stripe\PaymentIntent; -use Stripe\PaymentMethod; +use App\PaymentDrivers\StripePaymentDriver; use App\Utils\Number; +use Stripe\Checkout\Session; class BACS { @@ -78,7 +76,6 @@ class BACS return render('gateways.stripe.bacs.pay', $data); } public function paymentResponse(PaymentResponseRequest $request) - { $this->stripe->init(); $invoice_numbers = collect($this->stripe->payment_hash->invoices())->pluck('invoice_number')->implode(','); @@ -183,7 +180,7 @@ class BACS $clientgateway = ClientGatewayToken::query() ->where('token', $method->id) ->first(); - if (!$clientgateway){ + if (!$clientgateway) { $this->stripe->storeGatewayToken($data, ['gateway_customer_reference' => $customer->id]); } } catch (\Exception $e) { diff --git a/app/PaymentDrivers/Stripe/Charge.php b/app/PaymentDrivers/Stripe/Charge.php index da7263502309..fbed56e34e41 100644 --- a/app/PaymentDrivers/Stripe/Charge.php +++ b/app/PaymentDrivers/Stripe/Charge.php @@ -136,15 +136,11 @@ class Charge if ($cgt->gateway_type_id == GatewayType::SEPA) { $payment_method_type = PaymentType::SEPA; $status = Payment::STATUS_PENDING; - - } elseif ($cgt->gateway_type_id == GatewayType::BACS){ + } elseif ($cgt->gateway_type_id == GatewayType::BACS) { $payment_method_type = PaymentType::BACS; $status = Payment::STATUS_PENDING; - } - else { - - if(isset($response->latest_charge)) { - + } else { + if (isset($response->latest_charge)) { $charge = \Stripe\Charge::retrieve($response->latest_charge, $this->stripe->stripe_connect_auth); $payment_method_type = $charge->payment_method_details->card->brand; } elseif (isset($response->charges->data[0]->payment_method_details->card->brand)) { @@ -157,9 +153,8 @@ class Charge } - if(!in_array($response?->status, ['succeeded', 'processing'])){ - $this->stripe->processInternallyFailedPayment($this->stripe, new \Exception('Auto billing failed.',400)); - + if (!in_array($response?->status, ['succeeded', 'processing'])) { + $this->stripe->processInternallyFailedPayment($this->stripe, new \Exception('Auto billing failed.', 400)); } $data = [ diff --git a/app/PaymentDrivers/Stripe/CreditCard.php b/app/PaymentDrivers/Stripe/CreditCard.php index e53ffe3da27f..7816e3c9a9f3 100644 --- a/app/PaymentDrivers/Stripe/CreditCard.php +++ b/app/PaymentDrivers/Stripe/CreditCard.php @@ -21,7 +21,6 @@ use App\Models\PaymentType; use App\Models\SystemLog; use App\PaymentDrivers\Stripe\Jobs\UpdateCustomer; use App\PaymentDrivers\StripePaymentDriver; -use App\Utils\Number; use Stripe\PaymentIntent; use Stripe\PaymentMethod; diff --git a/app/PaymentDrivers/Stripe/Jobs/PaymentIntentPartiallyFundedWebhook.php b/app/PaymentDrivers/Stripe/Jobs/PaymentIntentPartiallyFundedWebhook.php index 382ac5569110..d30fa0695581 100644 --- a/app/PaymentDrivers/Stripe/Jobs/PaymentIntentPartiallyFundedWebhook.php +++ b/app/PaymentDrivers/Stripe/Jobs/PaymentIntentPartiallyFundedWebhook.php @@ -50,7 +50,7 @@ class PaymentIntentPartiallyFundedWebhook implements ShouldQueue $payment_intent = $transaction['id']; } - if(!$payment_intent){ + if (!$payment_intent) { nlog("payment intent not found"); nlog($transaction); return; @@ -61,7 +61,7 @@ class PaymentIntentPartiallyFundedWebhook implements ShouldQueue ->where('transaction_reference', $payment_intent) ->first(); - if(!$payment){ + if (!$payment) { nlog("paymentintent found but no payment"); } diff --git a/app/PaymentDrivers/Stripe/Jobs/PaymentIntentProcessingWebhook.php b/app/PaymentDrivers/Stripe/Jobs/PaymentIntentProcessingWebhook.php index 5725e56dc95f..28f3b92c5d4c 100644 --- a/app/PaymentDrivers/Stripe/Jobs/PaymentIntentProcessingWebhook.php +++ b/app/PaymentDrivers/Stripe/Jobs/PaymentIntentProcessingWebhook.php @@ -79,11 +79,10 @@ class PaymentIntentProcessingWebhook implements ShouldQueue $this->payment_completed = true; } - if(isset($transaction['payment_method'])) - { + if (isset($transaction['payment_method'])) { $cgt = ClientGatewayToken::where('token', $transaction['payment_method'])->first(); - if($cgt && $cgt->meta?->state == 'unauthorized'){ + if ($cgt && $cgt->meta?->state == 'unauthorized') { $meta = $cgt->meta; $meta->state = 'authorized'; $cgt->meta = $meta; diff --git a/app/PaymentDrivers/Stripe/Jobs/PaymentIntentWebhook.php b/app/PaymentDrivers/Stripe/Jobs/PaymentIntentWebhook.php index 5f04159130f8..70417665ae49 100644 --- a/app/PaymentDrivers/Stripe/Jobs/PaymentIntentWebhook.php +++ b/app/PaymentDrivers/Stripe/Jobs/PaymentIntentWebhook.php @@ -120,9 +120,8 @@ class PaymentIntentWebhook implements ShouldQueue ->where('transaction_reference', $charge['id']) ->first(); - //return early - if($payment && $payment->status_id == Payment::STATUS_COMPLETED){ - + //return early + if ($payment && $payment->status_id == Payment::STATUS_COMPLETED) { nlog(" payment found and status correct - returning "); return; } elseif ($payment) { @@ -188,11 +187,9 @@ class PaymentIntentWebhook implements ShouldQueue } $this->updateAchPayment($payment_hash, $client, $meta); - } elseif(isset($pi['payment_method_types']) && in_array('bacs_debit', $pi['payment_method_types'])){ + } elseif (isset($pi['payment_method_types']) && in_array('bacs_debit', $pi['payment_method_types'])) { return; } - - } private function updateAchPayment($payment_hash, $client, $meta) @@ -260,9 +257,7 @@ class PaymentIntentWebhook implements ShouldQueue } $driver->storeGatewayToken($data, $additional_data); - } catch(\Exception $e) { - nlog("failed to import payment methods"); nlog($e->getMessage()); } @@ -297,5 +292,4 @@ class PaymentIntentWebhook implements ShouldQueue $client->company, ); } - } diff --git a/app/PaymentDrivers/Stripe/Klarna.php b/app/PaymentDrivers/Stripe/Klarna.php index c794a4e22b53..97067dfb2c9c 100644 --- a/app/PaymentDrivers/Stripe/Klarna.php +++ b/app/PaymentDrivers/Stripe/Klarna.php @@ -19,7 +19,6 @@ use App\Models\Payment; use App\Models\PaymentType; use App\Models\SystemLog; use App\PaymentDrivers\StripePaymentDriver; -use App\Utils\Number; class Klarna { diff --git a/app/PaymentDrivers/Stripe/UpdatePaymentMethods.php b/app/PaymentDrivers/Stripe/UpdatePaymentMethods.php index 6034f62ba448..a06daa855b50 100644 --- a/app/PaymentDrivers/Stripe/UpdatePaymentMethods.php +++ b/app/PaymentDrivers/Stripe/UpdatePaymentMethods.php @@ -99,7 +99,6 @@ class UpdatePaymentMethods /* Already exists return */ if ($token) { - $meta = $token->meta; $meta->state = 'authorized'; $token->meta = $meta; diff --git a/app/PaymentDrivers/StripePaymentDriver.php b/app/PaymentDrivers/StripePaymentDriver.php index ee187536c11b..8e813802b13c 100644 --- a/app/PaymentDrivers/StripePaymentDriver.php +++ b/app/PaymentDrivers/StripePaymentDriver.php @@ -12,55 +12,54 @@ namespace App\PaymentDrivers; -use Exception; -use Stripe\Stripe; -use Stripe\Account; -use Stripe\Customer; -use App\Models\Payment; -use Stripe\SetupIntent; -use Stripe\StripeClient; -use App\Models\SystemLog; -use Stripe\PaymentIntent; -use Stripe\PaymentMethod; -use App\Models\GatewayType; -use App\Models\PaymentHash; +use App\Exceptions\PaymentFailed; +use App\Exceptions\StripeConnectFailure; +use App\Http\Requests\Payments\PaymentWebhookRequest; use App\Http\Requests\Request; use App\Jobs\Util\SystemLogger; use App\Models\Client; -use App\Utils\Traits\MakesHash; -use App\Exceptions\PaymentFailed; use App\Models\ClientGatewayToken; +use App\Models\GatewayType; +use App\Models\Payment; +use App\Models\PaymentHash; +use App\Models\SystemLog; use App\PaymentDrivers\Stripe\ACH; -use App\PaymentDrivers\Stripe\EPS; -use App\PaymentDrivers\Stripe\FPX; use App\PaymentDrivers\Stripe\ACSS; use App\PaymentDrivers\Stripe\Alipay; use App\PaymentDrivers\Stripe\BACS; -use App\PaymentDrivers\Stripe\BECS; -use App\PaymentDrivers\Stripe\SEPA; -use App\PaymentDrivers\Stripe\iDeal; -use App\PaymentDrivers\Stripe\Charge; -use App\PaymentDrivers\Stripe\Klarna; -use App\PaymentDrivers\Stripe\SOFORT; -use Illuminate\Http\RedirectResponse; -use App\PaymentDrivers\Stripe\GIROPAY; -use Stripe\Exception\ApiErrorException; -use App\Exceptions\StripeConnectFailure; -use App\PaymentDrivers\Stripe\Utilities; use App\PaymentDrivers\Stripe\Bancontact; -use App\PaymentDrivers\Stripe\BrowserPay; -use App\PaymentDrivers\Stripe\CreditCard; -use App\PaymentDrivers\Stripe\PRZELEWY24; use App\PaymentDrivers\Stripe\BankTransfer; +use App\PaymentDrivers\Stripe\BECS; +use App\PaymentDrivers\Stripe\BrowserPay; +use App\PaymentDrivers\Stripe\Charge; use App\PaymentDrivers\Stripe\Connect\Verify; +use App\PaymentDrivers\Stripe\CreditCard; +use App\PaymentDrivers\Stripe\EPS; +use App\PaymentDrivers\Stripe\FPX; +use App\PaymentDrivers\Stripe\GIROPAY; +use App\PaymentDrivers\Stripe\iDeal; use App\PaymentDrivers\Stripe\ImportCustomers; -use App\Http\Requests\Payments\PaymentWebhookRequest; -use Laracasts\Presenter\Exceptions\PresenterException; -use App\PaymentDrivers\Stripe\Jobs\PaymentIntentWebhook; use App\PaymentDrivers\Stripe\Jobs\PaymentIntentFailureWebhook; -use App\PaymentDrivers\Stripe\Jobs\PaymentIntentProcessingWebhook; use App\PaymentDrivers\Stripe\Jobs\PaymentIntentPartiallyFundedWebhook; - +use App\PaymentDrivers\Stripe\Jobs\PaymentIntentProcessingWebhook; +use App\PaymentDrivers\Stripe\Jobs\PaymentIntentWebhook; +use App\PaymentDrivers\Stripe\Klarna; +use App\PaymentDrivers\Stripe\PRZELEWY24; +use App\PaymentDrivers\Stripe\SEPA; +use App\PaymentDrivers\Stripe\SOFORT; +use App\PaymentDrivers\Stripe\Utilities; +use App\Utils\Traits\MakesHash; +use Exception; +use Illuminate\Http\RedirectResponse; +use Laracasts\Presenter\Exceptions\PresenterException; +use Stripe\Account; +use Stripe\Customer; +use Stripe\Exception\ApiErrorException; +use Stripe\PaymentIntent; +use Stripe\PaymentMethod; +use Stripe\SetupIntent; +use Stripe\Stripe; +use Stripe\StripeClient; class StripePaymentDriver extends BaseDriver { @@ -446,11 +445,10 @@ class StripePaymentDriver extends BaseDriver { $this->init(); - return PaymentIntent::retrieve( - $payment_intent_id, - $this->stripe_connect_auth - ); - + return PaymentIntent::retrieve( + $payment_intent_id, + $this->stripe_connect_auth + ); } /** @@ -667,7 +665,6 @@ class StripePaymentDriver extends BaseDriver public function processWebhookRequest(PaymentWebhookRequest $request) { - if ($request->type === 'customer.source.updated') { $ach = new ACH($this); $ach->updateBankAccount($request->all()); @@ -754,12 +751,11 @@ class StripePaymentDriver extends BaseDriver } } } - } elseif ($request->type === "payment_method.automatically_updated"){ + } elseif ($request->type === "payment_method.automatically_updated") { // Will notify customer on updated information return response()->json([], 200); - } elseif ($request->type === "mandate.updated"){ - - if ($request->data['object']['status'] == "active"){ + } elseif ($request->type === "mandate.updated") { + if ($request->data['object']['status'] == "active") { // Check if payment method existsn $payment_method = (string) $request->data['object']['payment_method']; @@ -767,18 +763,15 @@ class StripePaymentDriver extends BaseDriver ->where('token', $payment_method) ->first(); - if ($clientgateway){ - + if ($clientgateway) { $meta = $clientgateway->meta; $meta->state = 'authorized'; $clientgateway->meta = $meta; $clientgateway->save(); - } return response()->json([], 200); - } - elseif ($request->data['object']['status'] == "inactive" && $request->data['object']['payment_method']){ + } elseif ($request->data['object']['status'] == "inactive" && $request->data['object']['payment_method']) { // Delete payment method $clientgateway = ClientGatewayToken::query() ->where('token', $request->data['object']['payment_method']) @@ -787,8 +780,7 @@ class StripePaymentDriver extends BaseDriver $clientgateway->delete(); return response()->json([], 200); - } - elseif ($request->data['object']['status'] == "pending"){ + } elseif ($request->data['object']['status'] == "pending") { return response()->json([], 200); } } diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index ae34c09620cd..1028a0c943cc 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -11,259 +11,259 @@ namespace App\Providers; -use App\Models\Task; -use App\Models\User; -use App\Models\Quote; -use App\Models\Client; -use App\Models\Credit; -use App\Models\Vendor; +use App\Events\Account\AccountCreated; +use App\Events\Client\ClientWasArchived; +use App\Events\Client\ClientWasCreated; +use App\Events\Client\ClientWasDeleted; +use App\Events\Client\ClientWasRestored; +use App\Events\Client\ClientWasUpdated; +use App\Events\Client\DesignWasDeleted; +use App\Events\Client\DesignWasRestored; +use App\Events\Client\DesignWasUpdated; +use App\Events\Company\CompanyDocumentsDeleted; +use App\Events\Contact\ContactLoggedIn; +use App\Events\Credit\CreditWasArchived; +use App\Events\Credit\CreditWasCreated; +use App\Events\Credit\CreditWasDeleted; +use App\Events\Credit\CreditWasEmailed; +use App\Events\Credit\CreditWasEmailedAndFailed; +use App\Events\Credit\CreditWasMarkedSent; +use App\Events\Credit\CreditWasRestored; +use App\Events\Credit\CreditWasUpdated; +use App\Events\Credit\CreditWasViewed; +use App\Events\Design\DesignWasArchived; +use App\Events\Expense\ExpenseWasArchived; +use App\Events\Expense\ExpenseWasCreated; +use App\Events\Expense\ExpenseWasDeleted; +use App\Events\Expense\ExpenseWasRestored; +use App\Events\Expense\ExpenseWasUpdated; +use App\Events\Invoice\InvoiceReminderWasEmailed; +use App\Events\Invoice\InvoiceWasArchived; +use App\Events\Invoice\InvoiceWasCancelled; +use App\Events\Invoice\InvoiceWasCreated; +use App\Events\Invoice\InvoiceWasDeleted; +use App\Events\Invoice\InvoiceWasEmailed; +use App\Events\Invoice\InvoiceWasEmailedAndFailed; +use App\Events\Invoice\InvoiceWasMarkedSent; +use App\Events\Invoice\InvoiceWasPaid; +use App\Events\Invoice\InvoiceWasRestored; +use App\Events\Invoice\InvoiceWasReversed; +use App\Events\Invoice\InvoiceWasUpdated; +use App\Events\Invoice\InvoiceWasViewed; +use App\Events\Misc\InvitationWasViewed; +use App\Events\Payment\PaymentWasArchived; +use App\Events\Payment\PaymentWasCreated; +use App\Events\Payment\PaymentWasDeleted; +use App\Events\Payment\PaymentWasEmailed; +use App\Events\Payment\PaymentWasEmailedAndFailed; +use App\Events\Payment\PaymentWasRefunded; +use App\Events\Payment\PaymentWasRestored; +use App\Events\Payment\PaymentWasUpdated; +use App\Events\Payment\PaymentWasVoided; +use App\Events\PurchaseOrder\PurchaseOrderWasAccepted; +use App\Events\PurchaseOrder\PurchaseOrderWasArchived; +use App\Events\PurchaseOrder\PurchaseOrderWasCreated; +use App\Events\PurchaseOrder\PurchaseOrderWasDeleted; +use App\Events\PurchaseOrder\PurchaseOrderWasEmailed; +use App\Events\PurchaseOrder\PurchaseOrderWasRestored; +use App\Events\PurchaseOrder\PurchaseOrderWasUpdated; +use App\Events\PurchaseOrder\PurchaseOrderWasViewed; +use App\Events\Quote\QuoteWasApproved; +use App\Events\Quote\QuoteWasArchived; +use App\Events\Quote\QuoteWasCreated; +use App\Events\Quote\QuoteWasDeleted; +use App\Events\Quote\QuoteWasEmailed; +use App\Events\Quote\QuoteWasRestored; +use App\Events\Quote\QuoteWasUpdated; +use App\Events\Quote\QuoteWasViewed; +use App\Events\RecurringExpense\RecurringExpenseWasArchived; +use App\Events\RecurringExpense\RecurringExpenseWasCreated; +use App\Events\RecurringExpense\RecurringExpenseWasDeleted; +use App\Events\RecurringExpense\RecurringExpenseWasRestored; +use App\Events\RecurringExpense\RecurringExpenseWasUpdated; +use App\Events\RecurringInvoice\RecurringInvoiceWasArchived; +use App\Events\RecurringInvoice\RecurringInvoiceWasCreated; +use App\Events\RecurringInvoice\RecurringInvoiceWasDeleted; +use App\Events\RecurringInvoice\RecurringInvoiceWasRestored; +use App\Events\RecurringInvoice\RecurringInvoiceWasUpdated; +use App\Events\RecurringQuote\RecurringQuoteWasArchived; +use App\Events\RecurringQuote\RecurringQuoteWasCreated; +use App\Events\RecurringQuote\RecurringQuoteWasDeleted; +use App\Events\RecurringQuote\RecurringQuoteWasRestored; +use App\Events\RecurringQuote\RecurringQuoteWasUpdated; +use App\Events\Subscription\SubscriptionWasArchived; +use App\Events\Subscription\SubscriptionWasCreated; +use App\Events\Subscription\SubscriptionWasDeleted; +use App\Events\Subscription\SubscriptionWasRestored; +use App\Events\Subscription\SubscriptionWasUpdated; +use App\Events\Task\TaskWasArchived; +use App\Events\Task\TaskWasCreated; +use App\Events\Task\TaskWasDeleted; +use App\Events\Task\TaskWasRestored; +use App\Events\Task\TaskWasUpdated; +use App\Events\User\UserLoggedIn; +use App\Events\User\UserWasArchived; +use App\Events\User\UserWasCreated; +use App\Events\User\UserWasDeleted; +use App\Events\User\UserWasRestored; +use App\Events\User\UserWasUpdated; +use App\Events\Vendor\VendorWasArchived; +use App\Events\Vendor\VendorWasCreated; +use App\Events\Vendor\VendorWasDeleted; +use App\Events\Vendor\VendorWasRestored; +use App\Events\Vendor\VendorWasUpdated; +use App\Listeners\Activity\ArchivedClientActivity; +use App\Listeners\Activity\ClientUpdatedActivity; +use App\Listeners\Activity\CreatedClientActivity; +use App\Listeners\Activity\CreatedCreditActivity; +use App\Listeners\Activity\CreatedExpenseActivity; +use App\Listeners\Activity\CreatedQuoteActivity; +use App\Listeners\Activity\CreatedSubscriptionActivity; +use App\Listeners\Activity\CreatedTaskActivity; +use App\Listeners\Activity\CreatedVendorActivity; +use App\Listeners\Activity\CreditArchivedActivity; +use App\Listeners\Activity\DeleteClientActivity; +use App\Listeners\Activity\DeleteCreditActivity; +use App\Listeners\Activity\ExpenseArchivedActivity; +use App\Listeners\Activity\ExpenseDeletedActivity; +use App\Listeners\Activity\ExpenseRestoredActivity; +use App\Listeners\Activity\ExpenseUpdatedActivity; +use App\Listeners\Activity\PaymentArchivedActivity; +use App\Listeners\Activity\PaymentCreatedActivity; +use App\Listeners\Activity\PaymentDeletedActivity; +use App\Listeners\Activity\PaymentRefundedActivity; +use App\Listeners\Activity\PaymentUpdatedActivity; +use App\Listeners\Activity\PaymentVoidedActivity; +use App\Listeners\Activity\QuoteUpdatedActivity; +use App\Listeners\Activity\RestoreClientActivity; +use App\Listeners\Activity\SubscriptionArchivedActivity; +use App\Listeners\Activity\SubscriptionDeletedActivity; +use App\Listeners\Activity\SubscriptionRestoredActivity; +use App\Listeners\Activity\SubscriptionUpdatedActivity; +use App\Listeners\Activity\TaskArchivedActivity; +use App\Listeners\Activity\TaskDeletedActivity; +use App\Listeners\Activity\TaskRestoredActivity; +use App\Listeners\Activity\TaskUpdatedActivity; +use App\Listeners\Activity\UpdatedCreditActivity; +use App\Listeners\Activity\VendorArchivedActivity; +use App\Listeners\Activity\VendorDeletedActivity; +use App\Listeners\Activity\VendorRestoredActivity; +use App\Listeners\Activity\VendorUpdatedActivity; +use App\Listeners\Contact\UpdateContactLastLogin; +use App\Listeners\Credit\CreditCreatedNotification; +use App\Listeners\Credit\CreditEmailedNotification; +use App\Listeners\Credit\CreditRestoredActivity; +use App\Listeners\Credit\CreditViewedActivity; +use App\Listeners\Document\DeleteCompanyDocuments; +use App\Listeners\Invoice\CreateInvoiceActivity; +use App\Listeners\Invoice\CreateInvoicePdf; +use App\Listeners\Invoice\InvoiceArchivedActivity; +use App\Listeners\Invoice\InvoiceCancelledActivity; +use App\Listeners\Invoice\InvoiceCreatedNotification; +use App\Listeners\Invoice\InvoiceDeletedActivity; +use App\Listeners\Invoice\InvoiceEmailActivity; +use App\Listeners\Invoice\InvoiceEmailedNotification; +use App\Listeners\Invoice\InvoiceEmailFailedActivity; +use App\Listeners\Invoice\InvoiceFailedEmailNotification; +use App\Listeners\Invoice\InvoicePaidActivity; +use App\Listeners\Invoice\InvoiceReminderEmailActivity; +use App\Listeners\Invoice\InvoiceRestoredActivity; +use App\Listeners\Invoice\InvoiceReversedActivity; +use App\Listeners\Invoice\InvoiceViewedActivity; +use App\Listeners\Invoice\UpdateInvoiceActivity; +use App\Listeners\Mail\MailSentListener; +use App\Listeners\Misc\InvitationViewedListener; +use App\Listeners\Payment\PaymentBalanceActivity; +use App\Listeners\Payment\PaymentEmailedActivity; +use App\Listeners\Payment\PaymentNotification; +use App\Listeners\Payment\PaymentRestoredActivity; +use App\Listeners\PurchaseOrder\CreatePurchaseOrderActivity; +use App\Listeners\PurchaseOrder\PurchaseOrderAcceptedActivity; +use App\Listeners\PurchaseOrder\PurchaseOrderAcceptedListener; +use App\Listeners\PurchaseOrder\PurchaseOrderArchivedActivity; +use App\Listeners\PurchaseOrder\PurchaseOrderCreatedListener; +use App\Listeners\PurchaseOrder\PurchaseOrderDeletedActivity; +use App\Listeners\PurchaseOrder\PurchaseOrderEmailActivity; +use App\Listeners\PurchaseOrder\PurchaseOrderEmailedNotification; +use App\Listeners\PurchaseOrder\PurchaseOrderRestoredActivity; +use App\Listeners\PurchaseOrder\PurchaseOrderViewedActivity; +use App\Listeners\PurchaseOrder\UpdatePurchaseOrderActivity; +use App\Listeners\Quote\QuoteApprovedActivity; +use App\Listeners\Quote\QuoteApprovedNotification; +use App\Listeners\Quote\QuoteApprovedWebhook; +use App\Listeners\Quote\QuoteArchivedActivity; +use App\Listeners\Quote\QuoteCreatedNotification; +use App\Listeners\Quote\QuoteDeletedActivity; +use App\Listeners\Quote\QuoteEmailActivity; +use App\Listeners\Quote\QuoteEmailedNotification; +use App\Listeners\Quote\QuoteRestoredActivity; +use App\Listeners\Quote\QuoteViewedActivity; +use App\Listeners\Quote\ReachWorkflowSettings; +use App\Listeners\RecurringExpense\CreatedRecurringExpenseActivity; +use App\Listeners\RecurringExpense\RecurringExpenseArchivedActivity; +use App\Listeners\RecurringExpense\RecurringExpenseDeletedActivity; +use App\Listeners\RecurringExpense\RecurringExpenseRestoredActivity; +use App\Listeners\RecurringExpense\RecurringExpenseUpdatedActivity; +use App\Listeners\RecurringInvoice\CreateRecurringInvoiceActivity; +use App\Listeners\RecurringInvoice\RecurringInvoiceArchivedActivity; +use App\Listeners\RecurringInvoice\RecurringInvoiceDeletedActivity; +use App\Listeners\RecurringInvoice\RecurringInvoiceRestoredActivity; +use App\Listeners\RecurringInvoice\UpdateRecurringInvoiceActivity; +use App\Listeners\RecurringQuote\CreateRecurringQuoteActivity; +use App\Listeners\RecurringQuote\RecurringQuoteArchivedActivity; +use App\Listeners\RecurringQuote\RecurringQuoteDeletedActivity; +use App\Listeners\RecurringQuote\RecurringQuoteRestoredActivity; +use App\Listeners\RecurringQuote\UpdateRecurringQuoteActivity; +use App\Listeners\SendVerificationNotification; +use App\Listeners\User\ArchivedUserActivity; +use App\Listeners\User\CreatedUserActivity; +use App\Listeners\User\DeletedUserActivity; +use App\Listeners\User\RestoredUserActivity; +use App\Listeners\User\UpdatedUserActivity; +use App\Listeners\User\UpdateUserLastLogin; use App\Models\Account; +use App\Models\Client; +use App\Models\ClientContact; use App\Models\Company; +use App\Models\CompanyGateway; +use App\Models\CompanyToken; +use App\Models\Credit; use App\Models\Expense; use App\Models\Invoice; use App\Models\Payment; use App\Models\Product; use App\Models\Project; use App\Models\Proposal; -use App\Models\CompanyToken; -use App\Models\Subscription; -use App\Models\ClientContact; use App\Models\PurchaseOrder; +use App\Models\Quote; +use App\Models\Subscription; +use App\Models\Task; +use App\Models\User; +use App\Models\Vendor; use App\Models\VendorContact; -use App\Models\CompanyGateway; -use App\Observers\TaskObserver; -use App\Observers\UserObserver; -use App\Observers\QuoteObserver; -use App\Events\User\UserLoggedIn; -use App\Observers\ClientObserver; -use App\Observers\CreditObserver; -use App\Observers\VendorObserver; use App\Observers\AccountObserver; +use App\Observers\ClientContactObserver; +use App\Observers\ClientObserver; +use App\Observers\CompanyGatewayObserver; use App\Observers\CompanyObserver; +use App\Observers\CompanyTokenObserver; +use App\Observers\CreditObserver; use App\Observers\ExpenseObserver; use App\Observers\InvoiceObserver; use App\Observers\PaymentObserver; use App\Observers\ProductObserver; use App\Observers\ProjectObserver; -use App\Events\Task\TaskWasCreated; -use App\Events\Task\TaskWasDeleted; -use App\Events\Task\TaskWasUpdated; -use App\Events\User\UserWasCreated; -use App\Events\User\UserWasDeleted; -use App\Events\User\UserWasUpdated; use App\Observers\ProposalObserver; -use App\Events\Quote\QuoteWasViewed; -use App\Events\Task\TaskWasArchived; -use App\Events\Task\TaskWasRestored; -use App\Events\User\UserWasArchived; -use App\Events\User\UserWasRestored; -use App\Events\Quote\QuoteWasCreated; -use App\Events\Quote\QuoteWasDeleted; -use App\Events\Quote\QuoteWasEmailed; -use App\Events\Quote\QuoteWasUpdated; -use App\Events\Account\AccountCreated; -use App\Events\Credit\CreditWasViewed; -use App\Events\Invoice\InvoiceWasPaid; -use App\Events\Quote\QuoteWasApproved; -use App\Events\Quote\QuoteWasArchived; -use App\Events\Quote\QuoteWasRestored; -use App\Events\Client\ClientWasCreated; -use App\Events\Client\ClientWasDeleted; -use App\Events\Client\ClientWasUpdated; -use App\Events\Client\DesignWasDeleted; -use App\Events\Client\DesignWasUpdated; -use App\Events\Contact\ContactLoggedIn; -use App\Events\Credit\CreditWasCreated; -use App\Events\Credit\CreditWasDeleted; -use App\Events\Credit\CreditWasEmailed; -use App\Events\Credit\CreditWasUpdated; -use App\Events\Vendor\VendorWasCreated; -use App\Events\Vendor\VendorWasDeleted; -use App\Events\Vendor\VendorWasUpdated; -use App\Observers\CompanyTokenObserver; -use App\Observers\SubscriptionObserver; -use Illuminate\Mail\Events\MessageSent; -use App\Events\Client\ClientWasArchived; -use App\Events\Client\ClientWasRestored; -use App\Events\Client\DesignWasRestored; -use App\Events\Credit\CreditWasArchived; -use App\Events\Credit\CreditWasRestored; -use App\Events\Design\DesignWasArchived; -use App\Events\Invoice\InvoiceWasViewed; -use App\Events\Misc\InvitationWasViewed; -use App\Events\Payment\PaymentWasVoided; -use App\Events\Vendor\VendorWasArchived; -use App\Events\Vendor\VendorWasRestored; -use App\Listeners\Mail\MailSentListener; -use App\Observers\ClientContactObserver; use App\Observers\PurchaseOrderObserver; +use App\Observers\QuoteObserver; +use App\Observers\SubscriptionObserver; +use App\Observers\TaskObserver; +use App\Observers\UserObserver; use App\Observers\VendorContactObserver; -use App\Events\Expense\ExpenseWasCreated; -use App\Events\Expense\ExpenseWasDeleted; -use App\Events\Expense\ExpenseWasUpdated; -use App\Events\Invoice\InvoiceWasCreated; -use App\Events\Invoice\InvoiceWasDeleted; -use App\Events\Invoice\InvoiceWasEmailed; -use App\Events\Invoice\InvoiceWasUpdated; -use App\Events\Payment\PaymentWasCreated; -use App\Events\Payment\PaymentWasDeleted; -use App\Events\Payment\PaymentWasEmailed; -use App\Events\Payment\PaymentWasUpdated; -use App\Observers\CompanyGatewayObserver; -use App\Events\Credit\CreditWasMarkedSent; -use App\Events\Expense\ExpenseWasArchived; -use App\Events\Expense\ExpenseWasRestored; -use App\Events\Invoice\InvoiceWasArchived; -use App\Events\Invoice\InvoiceWasRestored; -use App\Events\Invoice\InvoiceWasReversed; -use App\Events\Payment\PaymentWasArchived; -use App\Events\Payment\PaymentWasRefunded; -use App\Events\Payment\PaymentWasRestored; -use Illuminate\Mail\Events\MessageSending; -use App\Events\Invoice\InvoiceWasCancelled; -use App\Listeners\Invoice\CreateInvoicePdf; -use App\Listeners\Quote\QuoteEmailActivity; -use App\Listeners\User\CreatedUserActivity; -use App\Listeners\User\DeletedUserActivity; -use App\Listeners\User\UpdatedUserActivity; -use App\Listeners\User\UpdateUserLastLogin; -use App\Events\Invoice\InvoiceWasMarkedSent; -use App\Listeners\Quote\QuoteViewedActivity; -use App\Listeners\User\ArchivedUserActivity; -use App\Listeners\User\RestoredUserActivity; -use App\Listeners\Quote\QuoteApprovedWebhook; -use App\Listeners\Quote\QuoteDeletedActivity; -use App\Listeners\Credit\CreditViewedActivity; -use App\Listeners\Invoice\InvoicePaidActivity; -use App\Listeners\Payment\PaymentNotification; -use App\Listeners\Quote\QuoteApprovedActivity; -use App\Listeners\Quote\QuoteArchivedActivity; -use App\Listeners\Quote\QuoteRestoredActivity; -use App\Listeners\Quote\ReachWorkflowSettings; -use App\Events\Company\CompanyDocumentsDeleted; -use App\Listeners\Activity\CreatedTaskActivity; -use App\Listeners\Activity\TaskDeletedActivity; -use App\Listeners\Activity\TaskUpdatedActivity; -use App\Listeners\Invoice\InvoiceEmailActivity; -use App\Listeners\SendVerificationNotification; -use App\Events\Credit\CreditWasEmailedAndFailed; -use App\Listeners\Activity\CreatedQuoteActivity; -use App\Listeners\Activity\DeleteClientActivity; -use App\Listeners\Activity\DeleteCreditActivity; -use App\Listeners\Activity\QuoteUpdatedActivity; -use App\Listeners\Activity\TaskArchivedActivity; -use App\Listeners\Activity\TaskRestoredActivity; -use App\Listeners\Credit\CreditRestoredActivity; -use App\Listeners\Invoice\CreateInvoiceActivity; -use App\Listeners\Invoice\InvoiceViewedActivity; -use App\Listeners\Invoice\UpdateInvoiceActivity; -use App\Listeners\Misc\InvitationViewedListener; -use App\Events\Invoice\InvoiceReminderWasEmailed; -use App\Listeners\Activity\ClientUpdatedActivity; -use App\Listeners\Activity\CreatedClientActivity; -use App\Listeners\Activity\CreatedCreditActivity; -use App\Listeners\Activity\CreatedVendorActivity; -use App\Listeners\Activity\PaymentVoidedActivity; -use App\Listeners\Activity\RestoreClientActivity; -use App\Listeners\Activity\UpdatedCreditActivity; -use App\Listeners\Activity\VendorDeletedActivity; -use App\Listeners\Activity\VendorUpdatedActivity; -use App\Listeners\Contact\UpdateContactLastLogin; -use App\Listeners\Invoice\InvoiceDeletedActivity; -use App\Listeners\Payment\PaymentBalanceActivity; -use App\Listeners\Payment\PaymentEmailedActivity; -use App\Listeners\Quote\QuoteCreatedNotification; -use App\Listeners\Quote\QuoteEmailedNotification; -use App\Events\Invoice\InvoiceWasEmailedAndFailed; -use App\Events\Payment\PaymentWasEmailedAndFailed; -use App\Listeners\Activity\ArchivedClientActivity; -use App\Listeners\Activity\CreatedExpenseActivity; -use App\Listeners\Activity\CreditArchivedActivity; -use App\Listeners\Activity\ExpenseDeletedActivity; -use App\Listeners\Activity\ExpenseUpdatedActivity; -use App\Listeners\Activity\PaymentCreatedActivity; -use App\Listeners\Activity\PaymentDeletedActivity; -use App\Listeners\Activity\PaymentUpdatedActivity; -use App\Listeners\Activity\VendorArchivedActivity; -use App\Listeners\Activity\VendorRestoredActivity; -use App\Listeners\Document\DeleteCompanyDocuments; -use App\Listeners\Invoice\InvoiceArchivedActivity; -use App\Listeners\Invoice\InvoiceRestoredActivity; -use App\Listeners\Invoice\InvoiceReversedActivity; -use App\Listeners\Payment\PaymentRestoredActivity; -use App\Listeners\Quote\QuoteApprovedNotification; -use App\Events\Subscription\SubscriptionWasCreated; -use App\Events\Subscription\SubscriptionWasDeleted; -use App\Events\Subscription\SubscriptionWasUpdated; -use App\Listeners\Activity\ExpenseArchivedActivity; -use App\Listeners\Activity\ExpenseRestoredActivity; -use App\Listeners\Activity\PaymentArchivedActivity; -use App\Listeners\Activity\PaymentRefundedActivity; -use App\Listeners\Credit\CreditCreatedNotification; -use App\Listeners\Credit\CreditEmailedNotification; -use App\Listeners\Invoice\InvoiceCancelledActivity; -use App\Events\PurchaseOrder\PurchaseOrderWasViewed; -use App\Events\Subscription\SubscriptionWasArchived; -use App\Events\Subscription\SubscriptionWasRestored; -use App\Events\PurchaseOrder\PurchaseOrderWasCreated; -use App\Events\PurchaseOrder\PurchaseOrderWasDeleted; -use App\Events\PurchaseOrder\PurchaseOrderWasEmailed; -use App\Events\PurchaseOrder\PurchaseOrderWasUpdated; -use App\Listeners\Invoice\InvoiceCreatedNotification; -use App\Listeners\Invoice\InvoiceEmailedNotification; -use App\Listeners\Invoice\InvoiceEmailFailedActivity; -use App\Events\PurchaseOrder\PurchaseOrderWasAccepted; -use App\Events\PurchaseOrder\PurchaseOrderWasArchived; -use App\Events\PurchaseOrder\PurchaseOrderWasRestored; -use App\Events\RecurringQuote\RecurringQuoteWasCreated; -use App\Events\RecurringQuote\RecurringQuoteWasDeleted; -use App\Events\RecurringQuote\RecurringQuoteWasUpdated; -use App\Listeners\Activity\CreatedSubscriptionActivity; -use App\Listeners\Activity\SubscriptionDeletedActivity; -use App\Listeners\Activity\SubscriptionUpdatedActivity; -use App\Listeners\Invoice\InvoiceReminderEmailActivity; -use App\Events\RecurringQuote\RecurringQuoteWasArchived; -use App\Events\RecurringQuote\RecurringQuoteWasRestored; -use App\Listeners\Activity\SubscriptionArchivedActivity; -use App\Listeners\Activity\SubscriptionRestoredActivity; -use App\Listeners\Invoice\InvoiceFailedEmailNotification; -use App\Events\RecurringExpense\RecurringExpenseWasCreated; -use App\Events\RecurringExpense\RecurringExpenseWasDeleted; -use App\Events\RecurringExpense\RecurringExpenseWasUpdated; -use App\Events\RecurringInvoice\RecurringInvoiceWasCreated; -use App\Events\RecurringInvoice\RecurringInvoiceWasDeleted; -use App\Events\RecurringInvoice\RecurringInvoiceWasUpdated; -use App\Listeners\PurchaseOrder\PurchaseOrderEmailActivity; -use App\Events\RecurringExpense\RecurringExpenseWasArchived; -use App\Events\RecurringExpense\RecurringExpenseWasRestored; -use App\Events\RecurringInvoice\RecurringInvoiceWasArchived; -use App\Events\RecurringInvoice\RecurringInvoiceWasRestored; -use App\Listeners\PurchaseOrder\CreatePurchaseOrderActivity; -use App\Listeners\PurchaseOrder\PurchaseOrderViewedActivity; -use App\Listeners\PurchaseOrder\UpdatePurchaseOrderActivity; -use App\Listeners\PurchaseOrder\PurchaseOrderCreatedListener; -use App\Listeners\PurchaseOrder\PurchaseOrderDeletedActivity; -use App\Listeners\PurchaseOrder\PurchaseOrderAcceptedActivity; -use App\Listeners\PurchaseOrder\PurchaseOrderAcceptedListener; -use App\Listeners\PurchaseOrder\PurchaseOrderArchivedActivity; -use App\Listeners\PurchaseOrder\PurchaseOrderRestoredActivity; -use App\Listeners\RecurringQuote\CreateRecurringQuoteActivity; -use App\Listeners\RecurringQuote\UpdateRecurringQuoteActivity; -use App\Listeners\RecurringQuote\RecurringQuoteDeletedActivity; -use App\Listeners\RecurringQuote\RecurringQuoteArchivedActivity; -use App\Listeners\RecurringQuote\RecurringQuoteRestoredActivity; -use App\Listeners\PurchaseOrder\PurchaseOrderEmailedNotification; -use App\Listeners\RecurringInvoice\CreateRecurringInvoiceActivity; -use App\Listeners\RecurringInvoice\UpdateRecurringInvoiceActivity; -use App\Listeners\RecurringExpense\CreatedRecurringExpenseActivity; -use App\Listeners\RecurringExpense\RecurringExpenseDeletedActivity; -use App\Listeners\RecurringExpense\RecurringExpenseUpdatedActivity; -use App\Listeners\RecurringInvoice\RecurringInvoiceDeletedActivity; -use App\Listeners\RecurringExpense\RecurringExpenseArchivedActivity; -use App\Listeners\RecurringExpense\RecurringExpenseRestoredActivity; -use App\Listeners\RecurringInvoice\RecurringInvoiceArchivedActivity; -use App\Listeners\RecurringInvoice\RecurringInvoiceRestoredActivity; +use App\Observers\VendorObserver; use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider; +use Illuminate\Mail\Events\MessageSending; +use Illuminate\Mail\Events\MessageSent; class EventServiceProvider extends ServiceProvider { diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index 73b6e6a118b0..86a681d00160 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -11,14 +11,14 @@ namespace App\Providers; -use App\Utils\Ninja; use App\Models\Scheduler; +use App\Utils\Ninja; use App\Utils\Traits\MakesHash; -use Illuminate\Support\Facades\Route; use Illuminate\Cache\RateLimiting\Limit; -use Illuminate\Support\Facades\RateLimiter; use Illuminate\Database\Eloquent\ModelNotFoundException as ModelNotFoundException; use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider; +use Illuminate\Support\Facades\RateLimiter; +use Illuminate\Support\Facades\Route; class RouteServiceProvider extends ServiceProvider { @@ -45,35 +45,28 @@ class RouteServiceProvider extends ServiceProvider }); RateLimiter::for('login', function () { - if (Ninja::isSelfHost()) { return Limit::none(); - }else { + } else { return Limit::perMinute(50); } - }); RateLimiter::for('api', function () { - if (Ninja::isSelfHost()) { return Limit::none(); - }else { + } else { return Limit::perMinute(300); } - }); RateLimiter::for('refresh', function () { - if (Ninja::isSelfHost()) { return Limit::none(); - }else { + } else { return Limit::perMinute(200); } - }); - } /** diff --git a/app/Repositories/InvoiceRepository.php b/app/Repositories/InvoiceRepository.php index f88c5a295776..969d228c28ab 100644 --- a/app/Repositories/InvoiceRepository.php +++ b/app/Repositories/InvoiceRepository.php @@ -83,8 +83,9 @@ class InvoiceRepository extends BaseRepository */ public function restore($invoice) :Invoice { - if($invoice->is_proforma) + if ($invoice->is_proforma) { return $invoice; + } //if we have just archived, only perform a soft restore if (! $invoice->is_deleted) { diff --git a/app/Services/Client/ClientService.php b/app/Services/Client/ClientService.php index dd5d944285e5..b8a5a8a6279c 100644 --- a/app/Services/Client/ClientService.php +++ b/app/Services/Client/ClientService.php @@ -11,16 +11,16 @@ namespace App\Services\Client; -use App\Utils\Number; use App\Models\Client; use App\Models\Credit; use App\Models\Payment; use App\Services\Email\Email; -use App\Utils\Traits\MakesDates; -use Illuminate\Support\Facades\DB; use App\Services\Email\EmailObject; use App\Services\Email\EmailService; +use App\Utils\Number; +use App\Utils\Traits\MakesDates; use Illuminate\Mail\Mailables\Address; +use Illuminate\Support\Facades\DB; class ClientService { @@ -173,7 +173,6 @@ class ClientService $email_object = $this->buildStatementMailableData($pdf); Email::dispatch($email_object, $this->client->company); - } /** diff --git a/app/Services/ClientPortal/InstantPayment.php b/app/Services/ClientPortal/InstantPayment.php index 1b0daac41314..2e5feffd85ea 100644 --- a/app/Services/ClientPortal/InstantPayment.php +++ b/app/Services/ClientPortal/InstantPayment.php @@ -217,9 +217,9 @@ class InstantPayment /** $hash_data = mixed[] */ $hash_data = [ - 'invoices' => $payable_invoices->toArray(), - 'credits' => $credit_totals, - 'amount_with_fee' => max(0, (($invoice_totals + $fee_totals) - $credit_totals)), + 'invoices' => $payable_invoices->toArray(), + 'credits' => $credit_totals, + 'amount_with_fee' => max(0, (($invoice_totals + $fee_totals) - $credit_totals)), 'pre_payment' => $this->request->pre_payment, 'frequency_id' => $this->request->frequency_id, 'remaining_cycles' => $this->request->remaining_cycles, diff --git a/app/Services/Email/Email.php b/app/Services/Email/Email.php index 4daf13338e20..7c8d7f072aee 100644 --- a/app/Services/Email/Email.php +++ b/app/Services/Email/Email.php @@ -11,43 +11,42 @@ namespace App\Services\Email; -use App\Models\User; -use App\Utils\Ninja; +use App\DataMapper\Analytics\EmailFailure; +use App\DataMapper\Analytics\EmailSuccess; +use App\Events\Invoice\InvoiceWasEmailedAndFailed; +use App\Events\Payment\PaymentWasEmailedAndFailed; +use App\Jobs\Util\SystemLogger; +use App\Libraries\Google\Google; +use App\Libraries\MultiDB; use App\Models\Client; -use App\Models\Vendor; +use App\Models\ClientContact; use App\Models\Company; use App\Models\Invoice; use App\Models\Payment; use App\Models\SystemLog; -use App\Utils\HtmlEngine; -use App\Libraries\MultiDB; -use App\Models\ClientContact; +use App\Models\User; +use App\Models\Vendor; use App\Models\VendorContact; -use Illuminate\Bus\Queueable; -use Illuminate\Mail\Mailable; -use App\Jobs\Util\SystemLogger; +use App\Utils\HtmlEngine; +use App\Utils\Ninja; use App\Utils\Traits\MakesHash; use App\Utils\VendorHtmlEngine; -use App\Libraries\Google\Google; -use Illuminate\Support\Facades\Mail; -use App\Services\Email\EmailMailable; -use Illuminate\Support\Facades\Cache; -use Illuminate\Queue\SerializesModels; -use Turbo124\Beacon\Facades\LightLogs; -use Illuminate\Queue\InteractsWithQueue; use GuzzleHttp\Exception\ClientException; -use App\DataMapper\Analytics\EmailFailure; -use App\DataMapper\Analytics\EmailSuccess; +use Illuminate\Bus\Queueable; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Bus\Dispatchable; -use App\Events\Invoice\InvoiceWasEmailedAndFailed; -use App\Events\Payment\PaymentWasEmailedAndFailed; +use Illuminate\Mail\Mailable; +use Illuminate\Queue\InteractsWithQueue; +use Illuminate\Queue\SerializesModels; +use Illuminate\Support\Facades\Cache; +use Illuminate\Support\Facades\Mail; +use Turbo124\Beacon\Facades\LightLogs; class Email implements ShouldQueue { use Dispatchable, InteractsWithQueue, Queueable, SerializesModels, MakesHash; - public $tries = 4; + public $tries = 4; public $deleteWhenMissingModels = true; @@ -79,7 +78,6 @@ class Email implements ShouldQueue public function handle() { - MultiDB::setDb($this->company->db); $this->setOverride() @@ -87,13 +85,13 @@ class Email implements ShouldQueue ->setDefaults() ->buildMailable(); - if($this->preFlightChecksFail()) + if ($this->preFlightChecksFail()) { return; + } $this->email(); $this->tearDown(); - } /** @@ -115,7 +113,6 @@ class Email implements ShouldQueue */ public function initModels(): self { - $this->email_object->entity_id ? $this->email_object->entity = $this->email_object->entity_class::withTrashed()->with('invitations')->find($this->email_object->entity_id) : $this->email_object->entity = null; $this->email_object->invitation_id ? $this->email_object->invitation = $this->email_object->entity->invitations()->where('id', $this->email_object->invitation_id)->first() : $this->email_object->invitation = null; @@ -126,13 +123,10 @@ class Email implements ShouldQueue $this->email_object->vendor_id ? $this->email_object->vendor = Vendor::withTrashed()->find($this->email_object->vendor_id) : $this->email_object->vendor = null; - if (!$this->email_object->contact) - { - + if (!$this->email_object->contact) { $this->email_object->vendor_contact_id ? $this->email_object->contact = VendorContact::withTrashed()->find($this->email_object->vendor_contact_id) : null; $this->email_object->client_contact_id ? $this->email_object->contact = ClientContact::withTrashed()->find($this->email_object->client_contact_id) : null; - } $this->email_object->user_id ? $this->email_object->user = User::withTrashed()->find($this->email_object->user_id) : $this->email_object->user = $this->company->owner(); @@ -163,7 +157,7 @@ class Email implements ShouldQueue { $_variables = $this->email_object->variables; - match(class_basename($this->email_object->entity)){ + match (class_basename($this->email_object->entity)) { "Invoice" => $this->email_object->variables = (new HtmlEngine($this->email_object->invitation))->makeValues(), "Quote" => $this->email_object->variables = (new HtmlEngine($this->email_object->invitation))->makeValues(), "Credit" => $this->email_object->variables = (new HtmlEngine($this->email_object->invitation))->makeValues(), @@ -172,8 +166,7 @@ class Email implements ShouldQueue }; /** If we have passed some variable overrides we insert them here */ - foreach($_variables as $key => $value) - { + foreach ($_variables as $key => $value) { $this->email_object->variables[$key] = $value; } @@ -187,7 +180,6 @@ class Email implements ShouldQueue */ private function tearDown(): self { - $this->email_object->entity = null; $this->email_object->invitation = null; $this->email_object->client = null; @@ -197,7 +189,6 @@ class Email implements ShouldQueue $this->email_object->settings = null; return $this; - } /** @@ -207,11 +198,9 @@ class Email implements ShouldQueue */ public function setDefaults(): self { - (new EmailDefaults($this))->run(); return $this; - } /** @@ -221,11 +210,9 @@ class Email implements ShouldQueue */ public function buildMailable(): self { - $this->mailable = new EmailMailable($this->email_object); return $this; - } /** @@ -235,7 +222,6 @@ class Email implements ShouldQueue */ public function email() { - $this->setMailDriver(); /* Init the mailer*/ @@ -260,7 +246,6 @@ class Email implements ShouldQueue LightLogs::create(new EmailSuccess($this->company->company_key)) ->send(); - } catch(\Symfony\Component\Mime\Exception\RfcComplianceException $e) { nlog("Mailer failed with a Logic Exception {$e->getMessage()}"); $this->fail(); @@ -274,8 +259,7 @@ class Email implements ShouldQueue $this->logMailError($e->getMessage(), $this->company->clients()->first()); return; } catch (\Exception | \RuntimeException | \Google\Service\Exception $e) { - - nlog("Mailer failed with {$e->getMessage()}"); + nlog("Mailer failed with {$e->getMessage()}"); $message = $e->getMessage(); if (stripos($e->getMessage(), 'code 406') || stripos($e->getMessage(), 'code 300') || stripos($e->getMessage(), 'code 413')) { @@ -326,7 +310,6 @@ class Email implements ShouldQueue } $this->cleanUpMailers(); - } /** @@ -765,13 +748,10 @@ class Email implements ShouldQueue public function failed($exception = null) { - - if($exception) + if ($exception) { nlog($exception->getMessage()); + } config(['queue.failed.driver' => null]); - } - - -} \ No newline at end of file +} diff --git a/app/Services/Email/EmailDefaults.php b/app/Services/Email/EmailDefaults.php index c76575e0a7a4..b63b506c7d2f 100644 --- a/app/Services/Email/EmailDefaults.php +++ b/app/Services/Email/EmailDefaults.php @@ -11,22 +11,22 @@ namespace App\Services\Email; -use App\Models\Task; -use App\Utils\Ninja; -use App\Models\Quote; -use App\Models\Credit; +use App\DataMapper\EmailTemplateDefaults; +use App\Jobs\Entity\CreateRawPdf; +use App\Jobs\Invoice\CreateUbl; +use App\Jobs\Vendor\CreatePurchaseOrderPdf; use App\Models\Account; +use App\Models\Credit; use App\Models\Expense; use App\Models\Invoice; use App\Models\PurchaseOrder; -use App\Jobs\Invoice\CreateUbl; +use App\Models\Quote; +use App\Models\Task; +use App\Utils\Ninja; use App\Utils\Traits\MakesHash; -use App\Jobs\Entity\CreateRawPdf; -use Illuminate\Support\Facades\App; use Illuminate\Mail\Mailables\Address; -use App\DataMapper\EmailTemplateDefaults; +use Illuminate\Support\Facades\App; use League\CommonMark\CommonMarkConverter; -use App\Jobs\Vendor\CreatePurchaseOrderPdf; class EmailDefaults { @@ -66,7 +66,7 @@ class EmailDefaults { $this->settings = $this->email->email_object->settings; - $this->setLocale() + $this->setLocale() ->setFrom() ->setTo() ->setCc() @@ -128,7 +128,6 @@ class EmailDefaults private function setFrom(): self { if (Ninja::isHosted() && $this->email->email_object->settings->email_sending_method == 'default') { - if ($this->email->company->account->isPaid() && property_exists($this->email->email_object->settings, 'email_from_name') && strlen($this->email->email_object->settings->email_from_name) > 1) { $email_from_name = $this->email->email_object->settings->email_from_name; } else { @@ -168,7 +167,6 @@ class EmailDefaults */ private function setBody(): self { - if ($this->template == 'email.template.custom') { $this->email->email_object->body = (str_replace('$body', $this->email->email_object->body, $this->email->email_object->settings->email_style_custom)); return $this; @@ -291,20 +289,16 @@ class EmailDefaults /** Purchase Order / Invoice / Credit / Quote PDF */ if ($this->email->email_object->settings->pdf_email_attachment && $this->email->email_object->entity instanceof PurchaseOrder) { - $pdf = (new CreatePurchaseOrderPdf($this->email->email_object->invitation))->rawPdf(); $this->email->email_object->attachments = array_merge($this->email->email_object->attachments, [['file' => base64_encode($pdf), 'name' => $this->email->email_object->entity->numberFormatter().'.pdf']]); - } elseif ($this->email->email_object->settings->pdf_email_attachment && ($this->email->email_object->entity instanceof Invoice || $this->email->email_object->entity instanceof Quote || $this->email->email_object->entity instanceof Credit)) { - $pdf = ((new CreateRawPdf($this->email->email_object->invitation, $this->email->company->db))->handle()); $this->email->email_object->attachments = array_merge($this->email->email_object->attachments, [['file' => base64_encode($pdf), 'name' => $this->email->email_object->entity->numberFormatter().'.pdf']]); - } /** UBL xml file */ @@ -316,8 +310,9 @@ class EmailDefaults } } - if(!$this->email->email_object->settings->document_email_attachment || !$this->email->company->account->hasFeature(Account::FEATURE_DOCUMENTS)) + if (!$this->email->email_object->settings->document_email_attachment || !$this->email->company->account->hasFeature(Account::FEATURE_DOCUMENTS)) { return $this; + } /* Company Documents */ $this->email->email_object->documents = array_merge($this->email->email_object->documents, $this->email->company->documents->pluck('id')->toArray()); diff --git a/app/Services/Email/EmailMailable.php b/app/Services/Email/EmailMailable.php index 50ae63181bd2..91c0ea407121 100644 --- a/app/Services/Email/EmailMailable.php +++ b/app/Services/Email/EmailMailable.php @@ -12,16 +12,15 @@ namespace App\Services\Email; use App\Models\Document; -use Illuminate\Mail\Mailable; use Illuminate\Mail\Attachment; -use Illuminate\Support\Facades\URL; +use Illuminate\Mail\Mailable; use Illuminate\Mail\Mailables\Content; -use Illuminate\Mail\Mailables\Headers; use Illuminate\Mail\Mailables\Envelope; +use Illuminate\Mail\Mailables\Headers; +use Illuminate\Support\Facades\URL; class EmailMailable extends Mailable { - public int $max_attachment_size = 3000000; /** @@ -41,7 +40,7 @@ class EmailMailable extends Mailable public function envelope() { return new Envelope( - subject: str_replace("
","",$this->email_object->subject), + subject: str_replace("
", "", $this->email_object->subject), tags: [$this->email_object->company_key], replyTo: $this->email_object->reply_to, from: $this->email_object->from, @@ -58,15 +57,12 @@ class EmailMailable extends Mailable */ public function content() { - - $links = Document::whereIn('id',$this->email_object->documents) + $links = Document::whereIn('id', $this->email_object->documents) ->where('size', '>', $this->max_attachment_size) ->cursor() - ->map(function ($document){ - - return " $document->hash]) ."'>". $document->name .""; - - }); + ->map(function ($document) { + return " $document->hash]) ."'>". $document->name .""; + }); return new Content( view: $this->email_object->html_template, @@ -94,18 +90,16 @@ class EmailMailable extends Mailable { $attachments = []; - $attachments = collect($this->email_object->attachments)->map(function ($file){ + $attachments = collect($this->email_object->attachments)->map(function ($file) { return Attachment::fromData(fn () => base64_decode($file['file']), $file['name']); }); - $documents = Document::whereIn('id',$this->email_object->documents) + $documents = Document::whereIn('id', $this->email_object->documents) ->where('size', '<', $this->max_attachment_size) ->cursor() - ->map(function ($document){ - - return Attachment::fromData(fn () => $document->getFile(), $document->name); - - }); + ->map(function ($document) { + return Attachment::fromData(fn () => $document->getFile(), $document->name); + }); return $attachments->merge($documents)->toArray(); } diff --git a/app/Services/Email/EmailObject.php b/app/Services/Email/EmailObject.php index e11e45c82419..74334965f6d4 100644 --- a/app/Services/Email/EmailObject.php +++ b/app/Services/Email/EmailObject.php @@ -11,22 +11,22 @@ namespace App\Services\Email; -use App\Models\User; -use App\Models\Quote; use App\Models\Client; -use App\Models\Credit; -use App\Models\Vendor; -use App\Models\Company; -use App\Models\Invoice; -use App\Models\Payment; use App\Models\ClientContact; -use App\Models\PurchaseOrder; -use App\Models\VendorContact; -use App\Models\QuoteInvitation; +use App\Models\Company; +use App\Models\Credit; use App\Models\CreditInvitation; +use App\Models\Invoice; use App\Models\InvoiceInvitation; -use Illuminate\Mail\Mailables\Address; +use App\Models\Payment; +use App\Models\PurchaseOrder; use App\Models\PurchaseOrderInvitation; +use App\Models\Quote; +use App\Models\QuoteInvitation; +use App\Models\User; +use App\Models\Vendor; +use App\Models\VendorContact; +use Illuminate\Mail\Mailables\Address; /** * EmailObject. diff --git a/app/Services/Invoice/ApplyNumber.php b/app/Services/Invoice/ApplyNumber.php index 93c5adb187b5..7ac46b942e04 100644 --- a/app/Services/Invoice/ApplyNumber.php +++ b/app/Services/Invoice/ApplyNumber.php @@ -41,7 +41,7 @@ class ApplyNumber extends AbstractService } /** Do no give pro forma invoices a proper invoice number */ - if($this->invoice->is_proforma) { + if ($this->invoice->is_proforma) { $this->invoice->number = ctrans('texts.pre_payment') . " " . now()->format('Y-m-d : H:i:s'); $this->invoice->saveQuietly(); return $this->invoice; diff --git a/app/Services/Invoice/AutoBillInvoice.php b/app/Services/Invoice/AutoBillInvoice.php index d60a14fa0953..5d10f2e74fff 100644 --- a/app/Services/Invoice/AutoBillInvoice.php +++ b/app/Services/Invoice/AutoBillInvoice.php @@ -122,12 +122,12 @@ class AutoBillInvoice extends AbstractService $payment_hash = PaymentHash::create([ 'hash' => Str::random(64), 'data' => [ - 'amount_with_fee' => $amount + $fee, + 'amount_with_fee' => $amount + $fee, 'invoices' => [ [ - 'invoice_id' => $this->invoice->hashed_id, - 'amount' => $amount, - 'invoice_number' => $this->invoice->number, + 'invoice_id' => $this->invoice->hashed_id, + 'amount' => $amount, + 'invoice_number' => $this->invoice->number, 'pre_payment' => $this->invoice->is_proforma, ], ], diff --git a/app/Services/Invoice/MarkSent.php b/app/Services/Invoice/MarkSent.php index 54ed2a141045..87c3a89f0664 100644 --- a/app/Services/Invoice/MarkSent.php +++ b/app/Services/Invoice/MarkSent.php @@ -21,7 +21,8 @@ use App\Utils\Ninja; class MarkSent extends AbstractService { public function __construct(public Client $client, public Invoice $invoice) - {} + { + } public function run($fire_webhook = false) { diff --git a/app/Services/Payment/DeletePayment.php b/app/Services/Payment/DeletePayment.php index eec109408172..f5c02d1e86e5 100644 --- a/app/Services/Payment/DeletePayment.php +++ b/app/Services/Payment/DeletePayment.php @@ -74,7 +74,6 @@ class DeletePayment if ($this->payment->invoices()->exists()) { $this->payment->invoices()->each(function ($paymentable_invoice) { - $net_deletable = $paymentable_invoice->pivot->amount - $paymentable_invoice->pivot->refunded; $this->_paid_to_date_deleted += $net_deletable; @@ -105,7 +104,6 @@ class DeletePayment } else { $paymentable_invoice->service()->setStatus(Invoice::STATUS_PARTIAL)->save(); } - } else { $paymentable_invoice->restore(); $paymentable_invoice->service() diff --git a/app/Services/Payment/SendEmail.php b/app/Services/Payment/SendEmail.php index a16e6ea926b2..0deb487c0a68 100644 --- a/app/Services/Payment/SendEmail.php +++ b/app/Services/Payment/SendEmail.php @@ -11,17 +11,17 @@ namespace App\Services\Payment; -use App\Utils\Ninja; -use App\Models\Payment; -use App\Models\ClientContact; -use App\Jobs\Payment\EmailPayment; use App\Events\Payment\PaymentWasEmailed; +use App\Jobs\Payment\EmailPayment; +use App\Models\ClientContact; +use App\Models\Payment; +use App\Utils\Ninja; class SendEmail { - public function __construct(public Payment $payment, public ?ClientContact $contact) - {} + { + } /** * Builds the correct template to send. @@ -31,18 +31,18 @@ class SendEmail { $this->payment->load('company', 'client.contacts', 'invoices'); - if(!$this->contact) + if (!$this->contact) { $this->contact = $this->payment->client->contacts()->first(); + } // $this->payment->invoices->sortByDesc('id')->first(function ($invoice) { // $invoice->invitations->each(function ($invitation) { // if (!$invitation->contact->trashed() && $invitation->contact->email) { - EmailPayment::dispatch($this->payment, $this->payment->company, $this->contact); + EmailPayment::dispatch($this->payment, $this->payment->company, $this->contact); - event(new PaymentWasEmailed($this->payment, $this->payment->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null))); + event(new PaymentWasEmailed($this->payment, $this->payment->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null))); // } // }); // }); - } } diff --git a/app/Services/Payment/UpdateInvoicePayment.php b/app/Services/Payment/UpdateInvoicePayment.php index aba182f80668..4f088eacfc9f 100644 --- a/app/Services/Payment/UpdateInvoicePayment.php +++ b/app/Services/Payment/UpdateInvoicePayment.php @@ -11,14 +11,14 @@ namespace App\Services\Payment; -use App\Utils\Ninja; +use App\Events\Invoice\InvoiceWasUpdated; +use App\Factory\RecurringInvoiceFactory; use App\Models\Invoice; use App\Models\Payment; use App\Models\PaymentHash; -use App\Utils\Traits\MakesHash; use App\Models\RecurringInvoice; -use App\Factory\RecurringInvoiceFactory; -use App\Events\Invoice\InvoiceWasUpdated; +use App\Utils\Ninja; +use App\Utils\Traits\MakesHash; class UpdateInvoicePayment { @@ -84,10 +84,8 @@ class UpdateInvoicePayment ->save(); if ($invoice->is_proforma) { - //keep proforma's hidden - if(property_exists($this->payment_hash->data, 'pre_payment') && $this->payment_hash->data->pre_payment == "1"){ - + if (property_exists($this->payment_hash->data, 'pre_payment') && $this->payment_hash->data->pre_payment == "1") { $invoice->payments()->each(function ($p) { $p->pivot->forceDelete(); }); @@ -117,7 +115,6 @@ class UpdateInvoicePayment $recurring_invoice->next_send_date = $recurring_invoice->nextSendDate(); $recurring_invoice->next_send_date_client = $recurring_invoice->nextSendDateClient(); $recurring_invoice->service()->applyNumber()->save(); - } return; @@ -125,8 +122,9 @@ class UpdateInvoicePayment - if (strlen($invoice->number) > 1 && str_starts_with($invoice->number, "####")) - $invoice->number = ''; + if (strlen($invoice->number) > 1 && str_starts_with($invoice->number, "####")) { + $invoice->number = ''; + } $invoice->is_proforma = false; diff --git a/app/Services/Pdf/PdfService.php b/app/Services/Pdf/PdfService.php index 77c99919ed1d..d7fde2b8cc5a 100644 --- a/app/Services/Pdf/PdfService.php +++ b/app/Services/Pdf/PdfService.php @@ -11,7 +11,6 @@ namespace App\Services\Pdf; -use App\Models\Account; use App\Models\Company; use App\Models\CreditInvitation; use App\Models\InvoiceInvitation; @@ -72,7 +71,7 @@ class PdfService * Resolves the PDF generation type and * attempts to generate a PDF from the HTML * string. - * + * * @return mixed | Exception * */ @@ -102,7 +101,6 @@ class PdfService */ public function getHtml(): string { - $html = $this->builder->getCompiledHTML(); if (config('ninja.log_pdf_html')) { diff --git a/app/Services/PdfMaker/Design.php b/app/Services/PdfMaker/Design.php index eccdb0d4dfc3..b2ffd3792db5 100644 --- a/app/Services/PdfMaker/Design.php +++ b/app/Services/PdfMaker/Design.php @@ -681,8 +681,9 @@ class Design extends BaseDesign $table_type = "{$type}_columns"; - if($type == 'product' && $this->entity instanceof Quote && !$this->settings_object->getSetting('sync_invoice_quote_columns')) + if ($type == 'product' && $this->entity instanceof Quote && !$this->settings_object->getSetting('sync_invoice_quote_columns')) { $table_type = "product_quote_columns"; + } foreach ($this->context['pdf_variables'][$table_type] as $column) { if (array_key_exists($column, $aliases)) { @@ -788,7 +789,6 @@ class Design extends BaseDesign } } } else { - foreach ($this->context['pdf_variables'][$table_type] as $key => $cell) { // We want to keep aliases like these: // $task.cost => $task.rate diff --git a/app/Services/PdfMaker/PdfMakerUtilities.php b/app/Services/PdfMaker/PdfMakerUtilities.php index 95be78b0b1e1..d38ef430b170 100644 --- a/app/Services/PdfMaker/PdfMakerUtilities.php +++ b/app/Services/PdfMaker/PdfMakerUtilities.php @@ -178,7 +178,7 @@ trait PdfMakerUtilities foreach ($children as $key => &$child) { if (isset($child['content']) && isset($child['show_empty']) && $child['show_empty'] === false) { $value = strtr($child['content'], $variables['values']); - if ($value === '' || $value === ' ' || $value === ' '){ + if ($value === '' || $value === ' ' || $value === ' ') { $child['is_empty'] = true; } } diff --git a/app/Services/Quote/GetQuotePdf.php b/app/Services/Quote/GetQuotePdf.php index 095b62650079..5ae880e33052 100644 --- a/app/Services/Quote/GetQuotePdf.php +++ b/app/Services/Quote/GetQuotePdf.php @@ -15,7 +15,6 @@ use App\Jobs\Entity\CreateEntityPdf; use App\Models\ClientContact; use App\Models\Quote; use App\Services\AbstractService; -use Illuminate\Support\Facades\Storage; class GetQuotePdf extends AbstractService { @@ -34,8 +33,9 @@ class GetQuotePdf extends AbstractService $invitation = $this->quote->invitations->where('client_contact_id', $this->contact->id)->first(); - if(!$invitation) + if (!$invitation) { $invitation = $this->quote->invitations->first(); + } $path = $this->quote->client->quote_filepath($invitation); @@ -48,6 +48,5 @@ class GetQuotePdf extends AbstractService $file_path = (new CreateEntityPdf($invitation))->handle(); return $file_path; - } } diff --git a/app/Services/Quote/SendEmail.php b/app/Services/Quote/SendEmail.php index 3fb32229612e..2530fe598bbf 100644 --- a/app/Services/Quote/SendEmail.php +++ b/app/Services/Quote/SendEmail.php @@ -14,7 +14,6 @@ namespace App\Services\Quote; use App\Jobs\Entity\EmailEntity; use App\Models\ClientContact; - class SendEmail { public $quote; @@ -48,7 +47,7 @@ class SendEmail $this->quote->service()->markSent()->save(); - $this->quote->invitations->each(function ($invitation) { + $this->quote->invitations->each(function ($invitation) { if (! $invitation->contact->trashed() && $invitation->contact->email) { EmailEntity::dispatch($invitation, $invitation->company, $this->reminder_template); diff --git a/app/Services/Recurring/IncreasePrice.php b/app/Services/Recurring/IncreasePrice.php index b8486a206710..168790e8f1f5 100644 --- a/app/Services/Recurring/IncreasePrice.php +++ b/app/Services/Recurring/IncreasePrice.php @@ -16,28 +16,18 @@ use App\Services\AbstractService; class IncreasePrice extends AbstractService { - public function __construct(public RecurringInvoice $recurring_invoice, public float $percentage) { - } public function run() { - $line_items = $this->recurring_invoice->line_items; foreach ($line_items as $key => $line_item) { - $line_items[$key]->cost = $line_item->cost * (1 + round(($this->percentage / 100), 2)); - } $this->recurring_invoice->line_items = $line_items; $this->recurring_invoice->calc()->getInvoice()->save(); - - - } - - } diff --git a/app/Services/Recurring/RecurringService.php b/app/Services/Recurring/RecurringService.php index 5c20a19bc5ed..e9c81b870dc1 100644 --- a/app/Services/Recurring/RecurringService.php +++ b/app/Services/Recurring/RecurringService.php @@ -11,20 +11,14 @@ namespace App\Services\Recurring; +use App\Jobs\RecurringInvoice\SendRecurring; use App\Jobs\Util\UnlinkFile; -use Illuminate\Support\Carbon; use App\Models\RecurringExpense; use App\Models\RecurringInvoice; -use App\Services\Recurring\ApplyNumber; -use App\Services\Recurring\UpdatePrice; -use App\Services\Recurring\GetInvoicePdf; -use App\Services\Recurring\IncreasePrice; -use App\Jobs\RecurringInvoice\SendRecurring; -use App\Services\Recurring\CreateRecurringInvitations; +use Illuminate\Support\Carbon; class RecurringService { - public function __construct(public RecurringInvoice | RecurringExpense $recurring_entity) { } @@ -58,8 +52,9 @@ class RecurringService return $this; } - if($this->recurring_entity->trashed()) + if ($this->recurring_entity->trashed()) { $this->recurring_entity->restore(); + } $this->setStatus(RecurringInvoice::STATUS_ACTIVE); @@ -145,7 +140,6 @@ class RecurringService (new IncreasePrice($this->recurring_entity, $percentage))->run(); return $this; - } public function updatePrice() diff --git a/app/Services/Recurring/UpdatePrice.php b/app/Services/Recurring/UpdatePrice.php index 1e196c68bc90..1666f1c4a4f1 100644 --- a/app/Services/Recurring/UpdatePrice.php +++ b/app/Services/Recurring/UpdatePrice.php @@ -23,28 +23,20 @@ class UpdatePrice extends AbstractService public function run() { - - $line_items = $this->recurring_invoice->line_items; - foreach($line_items as $key => $line_item) - { - + foreach ($line_items as $key => $line_item) { $product = Product::where('company_id', $this->recurring_invoice->company_id) ->where('product_key', $line_item->product_key) ->where('is_deleted', 0) ->first(); - if($product){ - + if ($product) { $line_items[$key]->cost = $product->cost; } - } $this->recurring_invoice->line_items = $line_items; $this->recurring_invoice->calc()->getInvoice()->save(); - - } -} \ No newline at end of file +} diff --git a/app/Services/Scheduler/SchedulerService.php b/app/Services/Scheduler/SchedulerService.php index eacd84b0e926..675812b670b0 100644 --- a/app/Services/Scheduler/SchedulerService.php +++ b/app/Services/Scheduler/SchedulerService.php @@ -38,8 +38,9 @@ class SchedulerService */ public function runTask(): void { - if(method_exists($this, $this->scheduler->template)) + if (method_exists($this, $this->scheduler->template)) { $this->{$this->scheduler->template}(); + } } private function email_statement() diff --git a/app/Services/Subscription/SubscriptionService.php b/app/Services/Subscription/SubscriptionService.php index 49f44eca53ad..d011bdba4867 100644 --- a/app/Services/Subscription/SubscriptionService.php +++ b/app/Services/Subscription/SubscriptionService.php @@ -11,42 +11,42 @@ namespace App\Services\Subscription; -use Carbon\Carbon; +use App\DataMapper\InvoiceItem; +use App\Factory\CreditFactory; +use App\Factory\InvoiceFactory; +use App\Factory\PaymentFactory; +use App\Factory\RecurringInvoiceFactory; +use App\Jobs\Mail\NinjaMailer; +use App\Jobs\Mail\NinjaMailerJob; +use App\Jobs\Mail\NinjaMailerObject; +use App\Jobs\Util\SystemLogger; +use App\Libraries\MultiDB; +use App\Mail\RecurringInvoice\ClientContactRequestCancellationObject; use App\Models\Client; +use App\Models\ClientContact; use App\Models\Credit; use App\Models\Invoice; use App\Models\License; -use App\Models\Product; -use App\Models\SystemLog; -use App\Libraries\MultiDB; use App\Models\PaymentHash; use App\Models\PaymentType; -use Illuminate\Support\Str; -use App\Models\Subscription; -use App\Models\ClientContact; -use App\Services\Email\Email; -use App\Factory\CreditFactory; -use App\Jobs\Mail\NinjaMailer; -use App\DataMapper\InvoiceItem; -use App\Factory\InvoiceFactory; -use App\Factory\PaymentFactory; -use App\Jobs\Util\SystemLogger; -use App\Utils\Traits\MakesHash; +use App\Models\Product; use App\Models\RecurringInvoice; -use App\Jobs\Mail\NinjaMailerJob; -use App\Services\Email\EmailObject; -use App\Jobs\Mail\NinjaMailerObject; -use App\Utils\Traits\CleanLineItems; +use App\Models\Subscription; +use App\Models\SystemLog; use App\Repositories\CreditRepository; use App\Repositories\InvoiceRepository; use App\Repositories\PaymentRepository; -use App\Factory\RecurringInvoiceFactory; -use App\Utils\Traits\SubscriptionHooker; -use App\Repositories\SubscriptionRepository; use App\Repositories\RecurringInvoiceRepository; +use App\Repositories\SubscriptionRepository; +use App\Services\Email\Email; +use App\Services\Email\EmailObject; +use App\Utils\Traits\CleanLineItems; +use App\Utils\Traits\MakesHash; use App\Utils\Traits\Notifications\UserNotifies; +use App\Utils\Traits\SubscriptionHooker; +use Carbon\Carbon; use Illuminate\Contracts\Container\BindingResolutionException; -use App\Mail\RecurringInvoice\ClientContactRequestCancellationObject; +use Illuminate\Support\Str; class SubscriptionService { @@ -121,10 +121,9 @@ class SubscriptionService 'account_key' => $recurring_invoice->client->custom_value2, ]; - $response = $this->triggerWebhook($context); + $response = $this->triggerWebhook($context); return $this->handleRedirect('/client/recurring_invoices/'.$recurring_invoice->hashed_id); - } else { $invoice = Invoice::withTrashed()->find($payment_hash->fee_invoice_id); @@ -169,7 +168,7 @@ class SubscriptionService //send license to the user. $invoice = $payment_hash->fee_invoice; $license_key = Str::uuid()->toString(); - $invoice->footer = ctrans('texts.white_label_body',['license_key' => $license_key]); + $invoice->footer = ctrans('texts.white_label_body', ['license_key' => $license_key]); $recurring_invoice = $this->convertInvoiceToRecurring($payment_hash->payment->client_id); @@ -207,7 +206,7 @@ class SubscriptionService $email_object = new EmailObject; $email_object->to = [$contact->email]; $email_object->subject = ctrans('texts.white_label_link') . " " .ctrans('texts.payment_subject'); - $email_object->body = ctrans('texts.white_label_body',['license_key' => $license_key]); + $email_object->body = ctrans('texts.white_label_body', ['license_key' => $license_key]); $email_object->client_id = $invoice->client_id; $email_object->client_contact_id = $contact->id; $email_object->invitation_key = $invitation->invitation_key; @@ -219,7 +218,6 @@ class SubscriptionService Email::dispatch($email_object, $invoice->company); return true; - } /* Starts the process to create a trial @@ -436,10 +434,11 @@ class SubscriptionService $days_of_subscription_used = $start_date->diffInDays($current_date); - if($subscription) + if ($subscription) { $days_in_frequency = $subscription->service()->getDaysInFrequency(); - else + } else { $days_in_frequency = $this->getDaysInFrequency(); + } if ($days_of_subscription_used >= $days_in_frequency) { return 0; diff --git a/app/Utils/HtmlEngine.php b/app/Utils/HtmlEngine.php index c889bd675f58..5a2a51e1dc44 100644 --- a/app/Utils/HtmlEngine.php +++ b/app/Utils/HtmlEngine.php @@ -981,9 +981,9 @@ html { */ private function buildViewButton(string $link, string $text): string { - -if($this->settings->email_style == 'plain') - return ''. $text .''; + if ($this->settings->email_style == 'plain') { + return ''. $text .''; + } return '
diff --git a/app/Utils/Number.php b/app/Utils/Number.php index 5dc8fd1975b5..3876bb3da385 100644 --- a/app/Utils/Number.php +++ b/app/Utils/Number.php @@ -238,9 +238,9 @@ class Number $precision = 2; } elseif ($v < 1) { $precision = strlen($v) - strrpos($v, '.') - 1; - } + } - if(is_array($parts) && $parts[0] != 0) { + if (is_array($parts) && $parts[0] != 0) { $precision = 2; } @@ -254,7 +254,6 @@ class Number } elseif ($swapSymbol) { return "{$value} ".trim($symbol); } elseif ($entity->getSetting('show_currency_code') === false) { - if ($_value < 0) { $value = substr($value, 1); $symbol = "-{$symbol}"; diff --git a/app/Utils/PaymentHtmlEngine.php b/app/Utils/PaymentHtmlEngine.php index 48d847f37c0c..399446aa68c9 100644 --- a/app/Utils/PaymentHtmlEngine.php +++ b/app/Utils/PaymentHtmlEngine.php @@ -11,12 +11,10 @@ namespace App\Utils; - use App\Models\Client; -use App\Utils\Helpers; +use App\Models\ClientContact; use App\Models\Company; use App\Models\Payment; -use App\Models\ClientContact; use App\Utils\Traits\MakesDates; use Illuminate\Support\Facades\App; @@ -54,7 +52,7 @@ class PaymentHtmlEngine App::setLocale($this->contact->preferredLocale()); $t->replace(Ninja::transformTranslations($this->client->getMergedSettings())); - $data = []; + $data = []; $data['$from'] = ['value' => '', 'label' => ctrans('texts.from')]; $data['$to'] = ['value' => '', 'label' => ctrans('texts.to')]; @@ -190,7 +188,6 @@ class PaymentHtmlEngine array_multisort($arrKeysLength, SORT_DESC, $data); return $data; - } private function formatInvoiceField($field) @@ -342,8 +339,4 @@ class PaymentHtmlEngine '; } - - - - -} \ No newline at end of file +} diff --git a/app/Utils/TemplateEngine.php b/app/Utils/TemplateEngine.php index 778a0083fcfc..c0f4292da9d4 100644 --- a/app/Utils/TemplateEngine.php +++ b/app/Utils/TemplateEngine.php @@ -12,28 +12,27 @@ namespace App\Utils; -use DB; -use App\Models\Quote; -use App\Models\Client; -use App\Models\Vendor; -use App\Models\Invoice; -use App\Models\Payment; -use Illuminate\Support\Str; -use App\Models\ClientContact; -use App\Models\PurchaseOrder; -use App\Models\VendorContact; -use App\Services\Pdf\PdfMock; -use App\Models\QuoteInvitation; -use App\Utils\Traits\MakesHash; -use App\Models\InvoiceInvitation; -use Illuminate\Support\Facades\App; -use App\Utils\Traits\MakesInvoiceHtml; -use App\Mail\Engine\PaymentEmailEngine; -use App\Models\PurchaseOrderInvitation; -use App\Utils\Traits\MakesTemplateData; use App\DataMapper\EmailTemplateDefaults; -use League\CommonMark\CommonMarkConverter; +use App\Mail\Engine\PaymentEmailEngine; +use App\Models\Client; +use App\Models\ClientContact; +use App\Models\Invoice; +use App\Models\InvoiceInvitation; +use App\Models\Payment; +use App\Models\PurchaseOrder; +use App\Models\PurchaseOrderInvitation; +use App\Models\Quote; +use App\Models\QuoteInvitation; +use App\Models\Vendor; +use App\Models\VendorContact; use App\Services\PdfMaker\Designs\Utilities\DesignHelpers; +use App\Utils\Traits\MakesHash; +use App\Utils\Traits\MakesInvoiceHtml; +use App\Utils\Traits\MakesTemplateData; +use DB; +use Illuminate\Support\Facades\App; +use Illuminate\Support\Str; +use League\CommonMark\CommonMarkConverter; class TemplateEngine { @@ -97,19 +96,15 @@ class TemplateEngine if (strlen($this->entity) > 1 && strlen($this->entity_id) > 1) { $class = 'App\Models\\' . ucfirst(Str::camel($this->entity)); $this->entity_obj = $class::withTrashed()->where('id', $this->decodePrimaryKey($this->entity_id))->company()->first(); - } - elseif(stripos($this->template, 'quote') !== false && $quote = Quote::whereHas('invitations')->withTrashed()->company()->first()){ + } elseif (stripos($this->template, 'quote') !== false && $quote = Quote::whereHas('invitations')->withTrashed()->company()->first()) { $this->entity = 'quote'; $this->entity_obj = $quote; - } - elseif(stripos($this->template, 'purchase') !== false && $purchase_order = PurchaseOrder::whereHas('invitations')->withTrashed()->company()->first()){ + } elseif (stripos($this->template, 'purchase') !== false && $purchase_order = PurchaseOrder::whereHas('invitations')->withTrashed()->company()->first()) { $this->entity = 'purchase_order'; $this->entity_obj = $purchase_order; - } - elseif ($invoice = Invoice::whereHas('invitations')->withTrashed()->company()->first()){ + } elseif ($invoice = Invoice::whereHas('invitations')->withTrashed()->company()->first()) { $this->entity_obj = $invoice; - } - else { + } else { $this->mockEntity(); } @@ -196,7 +191,6 @@ class TemplateEngine private function entityValues($contact) { - if (in_array($this->entity, ['purchaseOrder', 'purchase_order'])) { $this->labels_and_values = (new VendorHtmlEngine($this->entity_obj->invitations->first()))->generateLabelsAndValues(); } elseif ($this->entity == 'payment') { @@ -407,7 +401,6 @@ class TemplateEngine $this->entity_obj->load('client'); $client->setRelation('company', auth()->user()->company()); $client->load('company'); - } } diff --git a/app/Utils/Traits/Uploadable.php b/app/Utils/Traits/Uploadable.php index 2e3987a329fe..6f24bd21b272 100644 --- a/app/Utils/Traits/Uploadable.php +++ b/app/Utils/Traits/Uploadable.php @@ -13,7 +13,6 @@ namespace App\Utils\Traits; use App\Jobs\Util\UnlinkFile; use App\Jobs\Util\UploadAvatar; -use Illuminate\Support\Facades\Storage; /** * Class Uploadable. diff --git a/app/Utils/VendorHtmlEngine.php b/app/Utils/VendorHtmlEngine.php index 87072df5b703..0910c318c2ff 100644 --- a/app/Utils/VendorHtmlEngine.php +++ b/app/Utils/VendorHtmlEngine.php @@ -808,11 +808,9 @@ html { */ private function buildViewButton(string $link, string $text): string { - - -if ($this->settings->email_style == 'plain') { - return ''. $text .''; -} + if ($this->settings->email_style == 'plain') { + return ''. $text .''; + } return '