public function findByUserId($userId) { $sql = 'select sp.* from sponsors sp, sponsor_user su' . ' where sp.id = su.sponsor_id and su.user_id = :userId'; $results = $this->fetch($sql, ['userId' => $userId]); foreach ($results as $result) { $sponsor = new \Conftrack\Model\Sponsor($this->getDb()); $sponsor->load($result); $this->add($sponsor); } }
$app->get('/edit/{sponsorId}', function ($request, $response, $args) { $sponsor = new \Conftrack\Model\Sponsor($this->getContainer()->get('db')); $sponsor->findById($args['sponsorId']); $users = new \Conftrack\Collection\Users($this->getContainer()->get('db')); $users->findAll(); $data = ['sponsor' => $sponsor->toArray(), 'sponsorUsers' => $sponsor->users->toArray(true), 'action' => 'edit', 'users' => $users->toArray(true)]; $this->view->render($response, 'sponsor/create.twig', $data); }); $app->get('/image/{sponsorId}', function ($request, $response, $args) { }); $app->post('/edit/{sponsorId}', function ($request, $response, $args) { $body = $request->getParsedBody(); $data = ['success' => false]; $users = new \Conftrack\Collection\Users($this->getContainer()->get('db')); $users->findAll(); $sponsor = new \Conftrack\Model\Sponsor($this->getContainer()->get('db')); $sponsor->findById($args['sponsorId']); $loadData = ['description' => $body['description']]; if (isset($body['name'])) { $loadData['name'] = $body['name']; } $sponsor->load($loadData); try { $sponsor->verify(); $sponsor->save(); $data['success'] = true; $data['message'] = 'Sponsor saved successfully'; } catch (\Exception $e) { $data['message'] = 'There was an error saving the sponsor'; } $data = array_merge($data, ['sponsor' => $sponsor->toArray(), 'action' => 'edit', 'users' => $users->toArray(true), 'sponsorUsers' => $sponsor->users->toArray(true)]);