settingOra = $settingOra; $this->channel = $channel; $this->scrivisoloseaggiornato = $scrivisoloseaggiornato; $this->init(); } public function init() { $oraUpdate = Carbon::now(); if ($this->settingOra) { $this->logs['start'] = 'Inizio da ' . $this->settingOra->value . "\n
"; $this->logs['end'] = 'Fino a ' . $oraUpdate->toDateTimeString() . "\n
"; } else { $this->logs['start'] = 'Iniziato: ' . $oraUpdate->toDateTimeString() . "\n
"; } $this->logs['custom'] = ""; // for custom log messages } public function updateSettingOra($newOra) { $this->settingOra = $newOra; } public function setLogandSendEmail($descr) { if (is_object($this->settingOra) && method_exists($this->settingOra, 'save')) { $ora_update = Carbon::now(); $this->settingOra->value = $ora_update->toDateTimeString(); $this->settingOra->save(); } else { // Gestisci il caso in cui $this->settingOra non è un oggetto o non ha il metodo save // Log::warning('Impossibile eseguire il metodo save() su $this->settingOra, non è un oggetto o il metodo non esiste.'); } if (($this->scrivisoloseaggiornato && $this->aggiornato) || !$this->scrivisoloseaggiornato) { Log::channel($this->channel)->notice($this->concatenateLogs()); Mail::raw($this->concatenateLogs(), function ($message) use ($descr) { $message->to(Mylog::getEmail()); $message->subject(Mylog::getSubjectEmail($descr)); }); } } public function addLog($type, $message) { if ($type === '') { $type = 'LOG'; } if (!isset($this->logs[$type])) { $this->logs[$type] = ""; } if (isset($this->logs[$type])) { $this->logs[$type] .= $message . "\n
"; } } public function getLogs() { return $this->logs; } public function concatenateLogs() { return implode("", $this->logs); } public function setAggiornato($aggiornato) { $this->aggiornato = $aggiornato; } public function getAggiornato() { return $this->aggiornato; } }