public function getAdvisorsWhoHaveAvailabilitiesWithGivenExpertise() { $expertise_id = \Request::get('expertise_id'); $givenExpertise = Expertise::find($expertise_id); $advisorsWithExpertise = $givenExpertise->advisors()->get(); $advisorsWithAvailability = []; foreach ($advisorsWithExpertise as $adv) { if ($adv->availabilities->first() != null) { $advisorsWithAvailability[] = $adv; } } return View::make('api.advisors.with-expertise', compact(['advisorsWithAvailability'])); }
public function store() { if (Expertise::where('title', Input::get('expertise'))->first()) { $this->expertise->connectExpertiseToAdvisor(Input::get('expertise'), Input::get('advisor_id')); return 'added'; } else { if (!Input::get('expertiseGroups')) { return 'create'; } else { $expertise = $this->expertise->createExpertise(Input::get('expertise'), 'Description', Input::get('advisor_id')); $this->expertise->connectExpertiseToAdvisor(Input::get('expertise'), Input::get('advisor_id')); $expertiseGroupsIds = explode(',', Input::get('expertiseGroups')); $this->expertise->connectExpertiseToExpertiseGroup($expertise, $expertiseGroupsIds); return 'expG received'; } } }
public function connect($id) { $expertise = Expertise::find($id); $expertiseGroupsNotContainedByExpertise = $expertise->expertiseGroupsNotContainedByExpertise(); $expertiseGroupsContainedByExpertise = $expertise->expertiseGroupsContainedByExpertise(); return View::make('expertise.connect-group', compact(['expertiseGroupsNotContainedByExpertise', 'expertiseGroupsContainedByExpertise', 'expertise'])); }