/** * Update the time at the maximum level for the given CollectTime * @param integer $id * @param integer $newMax */ public function updateMax($id, $newMax) { /** @var CollectRates|CollectTimes $collectorClass */ $collectorClass = $this->collector; /** @var CollectRates|CollectTimes $collector */ /** @noinspection PhpUndefinedMethodInspection */ $collector = $collectorClass::with('data')->find($id); /** @var CollectRateData|CollectTimeData $data */ $data = $collector->data->where('level', (int) Setting::get('max-level'))->first(); if (!$data) { $data = new $this->collectData(['level' => Setting::get('max-level')]); $collector->data()->save($data); } $data->{$this->dataField} = $newMax; $data->save(); $this->percentageService->updateAllPercentages(); }
public function updatePercentages() { $this->percentages->updateAllPercentages(); Notification::add('success', 'Updated all percentages'); return Redirect::back(); }