Fixes for mailers

This commit is contained in:
David Bomba 2022-07-31 19:11:32 +10:00
parent ebb03e945b
commit 48c36d0004
14 changed files with 73 additions and 78 deletions

View File

@ -34,8 +34,8 @@ class GmailTransport extends AbstractTransport
nlog("in Do Send");
$message = MessageConverter::toEmail($message->getOriginalMessage());
$token = $message->getHeaders()->get('GmailToken')->getValue();
$message->getHeaders()->remove('GmailToken');
$token = $message->getHeaders()->get('gmailtoken')->getValue();
$message->getHeaders()->remove('gmailtoken');
$client = new Client();
$client->setClientId(config('ninja.auth.google.client_id'));

View File

@ -33,8 +33,8 @@ class Office365MailTransport extends AbstractTransport
$symfony_message = MessageConverter::toEmail($message->getOriginalMessage());
$graph = new Graph();
$token = $symfony_message->getHeaders()->get('GmailToken')->getValue();
$symfony_message->getHeaders()->remove('GmailToken');
$token = $symfony_message->getHeaders()->get('gmailtoken')->getValue();
$symfony_message->getHeaders()->remove('gmailtoken');
$graph->setAccessToken($token);

View File

@ -105,7 +105,7 @@ class ImportController extends Controller
public function import(ImportRequest $request)
{
$data = $request->all();
nlog($data);
if (empty($data['hash'])) {
// Create a reference
$data['hash'] = $hash = Str::random(32);
@ -113,7 +113,6 @@ nlog($data);
/** @var UploadedFile $file */
foreach ($request->files->get('files') as $entityType => $file) {
$contents = file_get_contents($file->getPathname());
// Store the csv in cache with an expiry of 10 minutes
Cache::put($hash.'-'.$entityType, base64_encode($contents), 600);
}

View File

@ -35,9 +35,9 @@ class QueryLogging
{
// Enable query logging for development
if (! Ninja::isHosted() || ! config('beacon.enabled')) {
return $next($request);
}
// if (! Ninja::isHosted() || ! config('beacon.enabled')) {
// return $next($request);
// }
$timeStart = microtime(true);
DB::enableQueryLog();
@ -50,8 +50,8 @@ class QueryLogging
$timeEnd = microtime(true);
$time = $timeEnd - $timeStart;
nlog("Query count = {$count}");
nlog($queries);
// nlog("Query count = {$count}");
// nlog($queries);
if ($count > 175) {
nlog("Query count = {$count}");

View File

@ -72,7 +72,7 @@ class CSVIngest implements ShouldQueue
set_time_limit(0);
$engine = $this->bootEngine($this->import_type);
$engine = $this->bootEngine();
foreach (['client', 'product', 'invoice', 'payment', 'vendor', 'expense'] as $entity) {
$engine->import($entity);
@ -106,29 +106,23 @@ class CSVIngest implements ShouldQueue
}
}
private function bootEngine(string $import_type)
private function bootEngine()
{
switch ($import_type) {
switch ($this->import_type) {
case 'csv':
return new Csv($this->request, $this->company);
break;
case 'waveaccounting':
return new Wave($this->request, $this->company);
break;
case 'invoicely':
return new Invoicely($this->request, $this->company);
break;
case 'invoice2go':
return new Invoice2Go($this->request, $this->company);
break;
case 'zoho':
return new Zoho($this->request, $this->company);
break;
case 'freshbooks':
return new Freshbooks($this->request, $this->company);
break;
default:
// code...
nlog("could not return provider");
break;
}
}

View File

@ -228,7 +228,7 @@ class NinjaMailerJob implements ShouldQueue
$this->nmo
->mailable
->from($user->email, $user->name())
->withSwiftMessage(function ($message) use($token) {
->withSymfonyMessage(function ($message) use($token) {
$message->getHeaders()->addTextHeader('GmailToken', $token);
});
@ -298,7 +298,7 @@ class NinjaMailerJob implements ShouldQueue
$this->nmo
->mailable
->from($user->email, $user->name())
->withSwiftMessage(function ($message) use($token) {
->withSymfonyMessage(function ($message) use($token) {
$message->getHeaders()->addTextHeader('GmailToken', $token);
});

View File

@ -134,6 +134,8 @@ class TemplateEmail extends Mailable
elseif($this->invitation->credit)
$path = $this->client->credit_filepath($this->invitation).$this->invitation->credit->numberFormatter().'.pdf';
sleep(1);
if($path && !Storage::disk(config('filesystems.default'))->exists($path)){
sleep(2);

View File

@ -127,6 +127,8 @@ class VendorTemplateEmail extends Mailable
if($this->invitation->purchase_order)
$path = $this->vendor->purchase_order_filepath($this->invitation).$this->invitation->purchase_order->numberFormatter().'.pdf';
sleep(1);
if($path && !Storage::disk(config('filesystems.default'))->exists($path)){
sleep(2);

View File

@ -45,10 +45,7 @@ class SendEmail
$this->credit->invitations->each(function ($invitation) {
if (! $invitation->contact->trashed() && $invitation->contact->email) {
// $email_builder = (new CreditEmail())->build($invitation, $this->reminder_template);
// EmailCredit::dispatchNow($email_builder, $invitation, $invitation->company);
EmailEntity::dispatchSync($invitation, $invitation->company, $this->reminder_template);
EmailEntity::dispatch($invitation, $invitation->company, $this->reminder_template);
}
});

View File

@ -421,7 +421,8 @@ class InvoiceService
try {
if ($force) {
$this->invoice->invitations->each(function ($invitation) {
CreateEntityPdf::dispatchSync($invitation);
// CreateEntityPdf::dispatchSync($invitation);
(new CreateEntityPdf($invitation))->handle();
});
return $this;
@ -560,7 +561,8 @@ class InvoiceService
public function adjustInventory($old_invoice = [])
{
if ($this->invoice->company->track_inventory) {
AdjustProductInventory::dispatchSync($this->invoice->company, $this->invoice, $old_invoice);
(new AdjustProductInventory($this->invoice->company, $this->invoice, $old_invoice))->handle();
// AdjustProductInventory::dispatchSync($this->invoice->company, $this->invoice, $old_invoice);
}
return $this;

View File

@ -124,7 +124,6 @@ return [
'emergency' => [
'path' => storage_path('logs/laravel.log'),
],
],
'gelf' => [
'driver' => 'custom',
@ -188,5 +187,6 @@ return [
'extra_prefix' => null,
],
]
];

View File

@ -44,57 +44,56 @@ return [
'ses' => [
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('SES_REGION', 'us-east-1'),
],
'sparkpost' => [
'secret' => env('SPARKPOST_SECRET'),
],
'sparkpost' => [
'secret' => env('SPARKPOST_SECRET'),
],
'gmail' => [
'token' => '',
],
'gmail' => [
'token' => '',
],
'stripe' => [
'model' => App\Models\User::class,
'key' => env('STRIPE_KEY'),
'secret' => env('STRIPE_SECRET'),
],
'stripe' => [
'model' => App\Models\User::class,
'key' => env('STRIPE_KEY'),
'secret' => env('STRIPE_SECRET'),
],
'github' => [
'client_id' => env('GITHUB_CLIENT_ID'),
'client_secret' => env('GITHUB_CLIENT_SECRET'),
'redirect' => env('GITHUB_OAUTH_REDIRECT'),
],
'github' => [
'client_id' => env('GITHUB_CLIENT_ID'),
'client_secret' => env('GITHUB_CLIENT_SECRET'),
'redirect' => env('GITHUB_OAUTH_REDIRECT'),
],
'google' => [
'client_id' => env('GOOGLE_CLIENT_ID'),
'client_secret' => env('GOOGLE_CLIENT_SECRET'),
'redirect' => env('GOOGLE_OAUTH_REDIRECT'),
],
'google' => [
'client_id' => env('GOOGLE_CLIENT_ID'),
'client_secret' => env('GOOGLE_CLIENT_SECRET'),
'redirect' => env('GOOGLE_OAUTH_REDIRECT'),
],
'facebook' => [
'client_id' => env('FACEBOOK_CLIENT_ID'),
'client_secret' => env('FACEBOOK_CLIENT_SECRET'),
'redirect' => env('FACEBOOK_OAUTH_REDIRECT'),
],
'facebook' => [
'client_id' => env('FACEBOOK_CLIENT_ID'),
'client_secret' => env('FACEBOOK_CLIENT_SECRET'),
'redirect' => env('FACEBOOK_OAUTH_REDIRECT'),
],
'linkedin' => [
'client_id' => env('LINKEDIN_CLIENT_ID'),
'client_secret' => env('LINKEDIN_CLIENT_SECRET'),
'redirect' => env('LINKEDIN_OAUTH_REDIRECT'),
],
'linkedin' => [
'client_id' => env('LINKEDIN_CLIENT_ID'),
'client_secret' => env('LINKEDIN_CLIENT_SECRET'),
'redirect' => env('LINKEDIN_OAUTH_REDIRECT'),
],
'twitter' => [
'client_id' => env('TWITTER_CLIENT_ID'),
'client_secret' => env('TWITTER_CLIENT_SECRET'),
'redirect' => env('TWITTER_OAUTH_REDIRECT'),
],
'twitter' => [
'client_id' => env('TWITTER_CLIENT_ID'),
'client_secret' => env('TWITTER_CLIENT_SECRET'),
'redirect' => env('TWITTER_OAUTH_REDIRECT'),
],
'bitbucket' => [
'client_id' => env('BITBUCKET_CLIENT_ID'),
'client_secret' => env('BITBUCKET_CLIENT_SECRET'),
'redirect' => env('BITBUCKET_OAUTH_REDIRECT'),
],
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
'bitbucket' => [
'client_id' => env('BITBUCKET_CLIENT_ID'),
'client_secret' => env('BITBUCKET_CLIENT_SECRET'),
'redirect' => env('BITBUCKET_OAUTH_REDIRECT'),
],
];

View File

@ -259,7 +259,7 @@ Route::group(['middleware' => ['throttle:300,1', 'api_db', 'token_auth', 'locale
Route::resource('task_scheduler', TaskSchedulerController::class)->except('edit')->parameters(['task_scheduler' => 'scheduler']);
Route::get('scheduler', [SchedulerController::class, 'index']);
Route::post('support/messages/send', [SendingController::class]);
Route::post('support/messages/send', SendingController::class);
Route::post('self-update', [SelfUpdateController::class, 'update'])->middleware('password_protected');
Route::post('self-update/check_version', [SelfUpdateController::class, 'checkVersion']);
@ -287,7 +287,7 @@ Route::group(['middleware' => ['throttle:300,1', 'api_db', 'token_auth', 'locale
Route::post('settings/disable_two_factor', [TwoFactorController::class, 'disableTwoFactor']);
Route::post('verify', [TwilioController::class, 'generate'])->name('verify.generate')->middleware('throttle:5,1');
Route::post('verify', [TwilioController::class, 'generate'])->name('verify.generate')->middleware('throttle:100,1');
Route::post('verify/confirm', [TwilioController::class, 'confirm'])->name('verify.confirm');
Route::resource('vendors', VendorController::class); // name = (vendors. index / create / show / update / destroy / edit
@ -333,11 +333,11 @@ Route::group(['middleware' => ['throttle:300,1', 'api_db', 'token_auth', 'locale
});
Route::match(['get', 'post'], 'payment_webhook/{company_key}/{company_gateway_id}', PaymentWebhookController::class)
->middleware(['throttle:1000,1','guest'])
->middleware('throttle:1000,1')
->name('payment_webhook');
Route::match(['get', 'post'], 'payment_notification_webhook/{company_key}/{company_gateway_id}/{client}', PaymentNotificationWebhookController::class)
->middleware(['throttle:1000,1', 'guest'])
->middleware('throttle:1000,1')
->name('payment_notification_webhook');
Route::post('api/v1/postmark_webhook', [PostMarkController::class, 'webhook'])->middleware('throttle:1000,1');

View File

@ -90,7 +90,7 @@ Route::group(['middleware' => ['auth:contact', 'locale', 'domain_db','check_clie
Route::get('credits/{credit_invitation}', [App\Http\Controllers\ClientPortal\CreditController::class,'show'])->name('credits.show_invitation');
Route::get('client/switch_company/{contact}', [App\Http\Controllers\ClientPortal\SwitchCompanyController::class])->name('switch_company');
Route::get('client/switch_company/{contact}', App\Http\Controllers\ClientPortal\SwitchCompanyController::class)->name('switch_company');
Route::post('documents/download_multiple', [App\Http\Controllers\ClientPortal\DocumentController::class, 'downloadMultiple'])->name('documents.download_multiple');
Route::get('documents/{document}/download', [App\Http\Controllers\ClientPortal\DocumentController::class, 'download'])->name('documents.download');