/** * @param array $input */ public function addVisit(array $input) { $this->family_id = $input['family']; $this->date_visited = Carbon::parse($input['date_visited']); $this->summary = $input['summary']; /** @var Family $family */ $family = Family::findOrFail($input['family']); if ($family->companionship instanceof Companionship) { $this->companionship = $family->companionship->getCompanionshipString(); } $this->save(); }
/** * @param array $input * @return bool */ public function assignFamilies(array $input = null) { if (is_null($input)) { return false; } $families = $this->families; foreach ($families as $family) { $family->companionship_id = null; $family->save(); } foreach ($input as $id) { $family = Family::findOrFail($id); $family->companionship_id = $this->id; $family->save(); } }