client = $client; } public function run($quote) { if ($quote->number != '') return $quote; switch ($this->client->getSetting('counter_number_applied')) { case 'when_saved': $quote->number = $this->getNextQuoteNumber($this->client); break; case 'when_sent': if ($quote->status_id == Quote::STATUS_SENT) { $quote->number = $this->getNextQuoteNumber($this->client); } break; default: # code... break; } return $quote; } }