コード例 #1
0
 /**
  * Test set a invalid experience type.
  */
 public function testSetTypeInvalid()
 {
     // GIVEN
     $experience = new Experience();
     // WHEN
     $experience->setType('unknownExperienceType');
     // THEN
     $this->assertEquals(null, $experience->getType());
 }
コード例 #2
0
 /**
  * Create a Experience in the database.
  *
  * @param VBeeSiteApplication $app
  * @param Request             $request
  *
  * @return Response
  */
 public function createAction(VBeeSiteApplication $app, Request $request)
 {
     $person = $this->retrievePerson($request->get('personId'));
     $experience = new Experience();
     $experience->setPerson($person);
     /** @var FormInterface $form */
     $form = $app['form.factory']->create('experience', $experience);
     $form->handleRequest($request);
     if ($form->isValid()) {
         $this->getExperienceManager()->save($experience);
         return $app->redirect($app->path('admin_person_show', ['personId' => $person->getId()]));
     }
     return $app->render('Experience/create.html.twig', ['person' => $person, 'form' => $form->createView()]);
 }
コード例 #3
0
 /**
  * {@inheritdoc}
  */
 public function hydrate(array $data)
 {
     // TODO: make a factory
     $experience = new Experience();
     $experience->setId(isset($data['id']) ? $data['id'] : null);
     $experience->setType(isset($data['type']) ? $data['type'] : null);
     $experience->setStartDate(isset($data['startDate']) ? $data['startDate'] : null);
     $experience->setEndDate(isset($data['endDate']) ? $data['endDate'] : null);
     if (isset($data['organization'])) {
         $experience->setOrganization($this->organizationHydrator->hydrate($data['organization']));
     }
     if (isset($data['missions'])) {
         foreach ($data['missions'] as $missionData) {
             $experience->addMission($this->missionHydrator->hydrate($missionData));
         }
     }
     return $experience;
 }