From 5c0776cf14f463478525d4cec136c3b5683cfb00 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Mon, 28 Sep 2020 12:56:11 +1000 Subject: [PATCH] Working on Delete user bug --- app/Jobs/Cron/RecurringInvoicesCron.php | 10 ++++++--- app/Models/Gateway.php | 28 +++++++++++++++++++++++++ app/Models/RecurringInvoice.php | 2 -- app/Repositories/UserRepository.php | 13 +++++++++--- 4 files changed, 45 insertions(+), 8 deletions(-) diff --git a/app/Jobs/Cron/RecurringInvoicesCron.php b/app/Jobs/Cron/RecurringInvoicesCron.php index 1ce5a0772112..34b5f6e2f4c0 100644 --- a/app/Jobs/Cron/RecurringInvoicesCron.php +++ b/app/Jobs/Cron/RecurringInvoicesCron.php @@ -44,9 +44,11 @@ class RecurringInvoicesCron if (! config('ninja.db.multi_db_enabled')) { - $recurring_invoices = RecurringInvoice::whereDate('next_send_date', '=', now())->cursor(); + $recurring_invoices = RecurringInvoice::whereDate('next_send_date', '=', now()) + ->where('status_id', RecurringInvoice::STATUS_ACTIVE) + ->cursor(); - Log::info(now()->format('Y-m-d') . ' Sending Recurring Invoices. Count = '.$recurring_invoices->count().' On Database # '.$db); + Log::info(now()->format('Y-m-d') . ' Sending Recurring Invoices. Count = '.$recurring_invoices->count()); $recurring_invoices->each(function ($recurring_invoice, $key) { @@ -62,7 +64,9 @@ class RecurringInvoicesCron MultiDB::setDB($db); - $recurring_invoices = RecurringInvoice::whereDate('next_send_date', '=', now())->cursor(); + $recurring_invoices = RecurringInvoice::whereDate('next_send_date', '=', now()) + ->where('status_id', RecurringInvoice::STATUS_ACTIVE) + ->cursor(); Log::info(now()->format('Y-m-d') . ' Sending Recurring Invoices. Count = '.$recurring_invoices->count().' On Database # '.$db); diff --git a/app/Models/Gateway.php b/app/Models/Gateway.php index fe41ae3a476a..f6673e793494 100644 --- a/app/Models/Gateway.php +++ b/app/Models/Gateway.php @@ -53,4 +53,32 @@ class Gateway extends StaticModel { return in_array($this->id, [62, 67, 68]); //static table ids of the custom gateways } + + public function getHelp() + { + $link = ''; + + if ($this->id == 1) { + $link = 'http://reseller.authorize.net/application/?id=5560364'; + } elseif ($this->id == 15) { + $link = 'https://www.paypal.com/us/cgi-bin/webscr?cmd=_login-api-run'; + } elseif ($this->id == 24) { + $link = 'https://www.2checkout.com/referral?r=2c37ac2298'; + } elseif ($this->id == 35) { + $link = 'https://bitpay.com/dashboard/signup'; + } elseif ($this->id == 18) { + $link = 'https://applications.sagepay.com/apply/2C02C252-0F8A-1B84-E10D-CF933EFCAA99'; + } elseif ($this->id == 20) { + $link = 'https://dashboard.stripe.com/account/apikeys'; + } + + $key = 'texts.gateway_help_'.$this->id; + $str = trans($key, [ + 'link' => "Click here", + 'complete_link' => url('/complete'), + ]); + + return $key != $str ? $str : ''; + } + } diff --git a/app/Models/RecurringInvoice.php b/app/Models/RecurringInvoice.php index 80ca04894b46..44d3f68028bb 100644 --- a/app/Models/RecurringInvoice.php +++ b/app/Models/RecurringInvoice.php @@ -372,8 +372,6 @@ class RecurringInvoice extends BaseModel /* Return early if nothing to send back! */ if( $this->status_id == self::STATUS_COMPLETED || - $this->status_id == self::STATUS_DRAFT || - $this->status_id == self::STATUS_PAUSED || $this->remaining_cycles == 0 || !$this->next_send_date) { diff --git a/app/Repositories/UserRepository.php b/app/Repositories/UserRepository.php index 012423b67470..2c344ae66ce2 100644 --- a/app/Repositories/UserRepository.php +++ b/app/Repositories/UserRepository.php @@ -105,6 +105,9 @@ class UserRepository extends BaseRepository public function destroy(array $data, User $user) { + +info("destroy user"); + if (array_key_exists('company_user', $data)) { $this->forced_includes = 'company_users'; @@ -118,10 +121,10 @@ class UserRepository extends BaseRepository $cu->forceDelete(); } - $user->delete(); - event(new UserWasDeleted($user, $company, Ninja::eventVars())); + $user->delete(); + return $user->fresh(); } @@ -130,6 +133,9 @@ class UserRepository extends BaseRepository */ public function delete($user) { + +info("delete user"); + $company = auth()->user()->company(); $cu = CompanyUser::whereUserId($user->id) @@ -141,11 +147,12 @@ class UserRepository extends BaseRepository $cu->delete(); } + event(new UserWasDeleted($user, $company, Ninja::eventVars())); + $user->is_deleted = true; $user->save(); $user->delete(); - event(new UserWasDeleted($user, $company, Ninja::eventVars())); return $user->fresh(); }