mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2024-11-10 13:12:50 +01:00
Inject delays in emails to allow enough time for attachment resources to upload when using S3 type storage
This commit is contained in:
parent
36462d2496
commit
4675cc92b5
@ -489,11 +489,13 @@ class LoginController extends BaseController
|
||||
|
||||
public function redirectToProvider(string $provider)
|
||||
{
|
||||
//'https://www.googleapis.com/auth/gmail.send','email','profile','openid'
|
||||
|
||||
$scopes = [];
|
||||
|
||||
$parameters = [];
|
||||
|
||||
if($provider == 'google'){
|
||||
|
||||
$scopes = ['https://www.googleapis.com/auth/gmail.send','email','profile','openid'];
|
||||
$parameters = ['access_type' => 'offline', "prompt" => "consent select_account", 'redirect_uri' => config('ninja.app_url')."/auth/google"];
|
||||
}
|
||||
@ -508,6 +510,7 @@ class LoginController extends BaseController
|
||||
public function handleProviderCallback(string $provider)
|
||||
{
|
||||
$socialite_user = Socialite::driver($provider)->user();
|
||||
|
||||
$oauth_user_token = '';
|
||||
|
||||
if($socialite_user->refreshToken){
|
||||
@ -517,7 +520,7 @@ class LoginController extends BaseController
|
||||
$client->setClientSecret(config('ninja.auth.google.client_secret'));
|
||||
$client->fetchAccessTokenWithRefreshToken($socialite_user->refreshToken);
|
||||
$oauth_user_token = $client->getAccessToken();
|
||||
|
||||
|
||||
}
|
||||
|
||||
if($user = OAuth::handleAuth($socialite_user, $provider))
|
||||
@ -529,7 +532,6 @@ class LoginController extends BaseController
|
||||
$update_user = [
|
||||
'first_name' => $name[0],
|
||||
'last_name' => $name[1],
|
||||
// 'password' => '',
|
||||
'email' => $socialite_user->getEmail(),
|
||||
'oauth_user_id' => $socialite_user->getId(),
|
||||
'oauth_provider_id' => $provider,
|
||||
|
@ -564,7 +564,7 @@ class CreditController extends BaseController
|
||||
// EmailCredit::dispatch($credit, $credit->company);
|
||||
|
||||
$credit->invitations->load('contact.client.country', 'credit.client.country', 'credit.company')->each(function ($invitation) use ($credit) {
|
||||
EmailEntity::dispatch($invitation, $credit->company, 'credit');
|
||||
EmailEntity::dispatch($invitation, $credit->company, 'credit')->delay(now()->addSeconds(60));
|
||||
});
|
||||
|
||||
|
||||
|
@ -132,7 +132,7 @@ class EmailController extends BaseController
|
||||
$entity_obj->service()->markSent()->save();
|
||||
|
||||
EmailEntity::dispatch($invitation->fresh(), $invitation->company, $template, $data)
|
||||
->delay(now()->addSeconds(5));
|
||||
->delay(now()->addSeconds(60));
|
||||
|
||||
}
|
||||
|
||||
|
@ -212,7 +212,8 @@ class SendReminders implements ShouldQueue
|
||||
if ($this->checkSendSetting($invoice, $template) && $invoice->company->account->hasFeature(Account::FEATURE_EMAIL_TEMPLATES_REMINDERS)) {
|
||||
nlog("firing email");
|
||||
|
||||
EmailEntity::dispatchNow($invitation, $invitation->company, $template);
|
||||
EmailEntity::dispatchNow($invitation, $invitation->company, $template)->delay(now()->addSeconds(60));
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -96,7 +96,7 @@ class SendRecurring implements ShouldQueue
|
||||
if ($invitation->contact && strlen($invitation->contact->email) >=1) {
|
||||
|
||||
try{
|
||||
EmailEntity::dispatch($invitation, $invoice->company);
|
||||
EmailEntity::dispatch($invitation, $invoice->company)->delay(now()->addSeconds(60));
|
||||
}
|
||||
catch(\Exception $e) {
|
||||
nlog($e->getMessage());
|
||||
|
@ -60,7 +60,7 @@ class ReminderJob implements ShouldQueue
|
||||
$invoice->service()->touchReminder($reminder_template)->save();
|
||||
|
||||
$invoice->invitations->each(function ($invitation) use ($invoice, $reminder_template) {
|
||||
EmailEntity::dispatch($invitation, $invitation->company, $reminder_template);
|
||||
EmailEntity::dispatch($invitation, $invitation->company, $reminder_template)->delay(now()->addSeconds(60));
|
||||
nlog("Firing reminder email for invoice {$invoice->number}");
|
||||
});
|
||||
|
||||
|
@ -64,7 +64,7 @@ class SendFailedEmails implements ShouldQueue
|
||||
|
||||
if ($invitation->invoice) {
|
||||
if ($invitation->contact->send_email && $invitation->contact->email) {
|
||||
EmailEntity::dispatch($invitation, $invitation->company, $job_meta_array['reminder_template']);
|
||||
EmailEntity::dispatch($invitation, $invitation->company, $job_meta_array['reminder_template'])->delay(now()->addSeconds(60));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -62,7 +62,7 @@ class TriggeredActions extends AbstractService
|
||||
$reminder_template = 'payment';
|
||||
|
||||
$this->invoice->invitations->load('contact.client.country', 'invoice.client.country', 'invoice.company')->each(function ($invitation) use ($reminder_template) {
|
||||
EmailEntity::dispatch($invitation, $this->invoice->company, $reminder_template);
|
||||
EmailEntity::dispatch($invitation, $this->invoice->company, $reminder_template)->delay(now()->addSeconds(60));
|
||||
});
|
||||
|
||||
if ($this->invoice->invitations->count() > 0) {
|
||||
|
Loading…
Reference in New Issue
Block a user