Example #1
0
 protected function updateBaseTranslation(Accommodation $accommodation)
 {
     $accommodation->setTranslatableLocale($this->getRequest()->getLocale());
     foreach ($accommodation->getTranslations() as $translation) {
         /** @var AccommodationTranslation $translation */
         $translation->updateParentFields();
     }
 }
 /**
  * @ORM\PrePersist
  */
 public function updateParentFields()
 {
     if ($this->object->getLocale() == $this->locale) {
         $method = 'set' . ucfirst($this->field);
         if (method_exists($this->object, $method)) {
             $this->object->{$method}($this->getContent());
         }
     }
 }
Example #3
0
 /**
  * {@inheritDoc}
  */
 public function load(ObjectManager $manager)
 {
     $estancia_perales = new Accommodation();
     $estancia_perales->setImageFilename('estancia_perales.jpg')->setTitle('Estancia Perales')->setDescription($this->load_file('estancia_perales1_en'))->setSecondaryText($this->load_file('estancia_perales2_en'))->setShowOnHomepage(true)->setTranslatableLocale('en')->addTranslation(new Translation('en', 'title', 'Estancia Perales'))->addTranslation(new Translation('en', 'description', $this->load_file('estancia_perales1_en')))->addTranslation(new Translation('en', 'secondary_text', $this->load_file('estancia_perales2_en')))->addTranslation(new Translation('es', 'title', 'Estancia Perales'))->addTranslation(new Translation('es', 'description', $this->load_file('estancia_perales1_es')))->addTranslation(new Translation('es', 'secondary_text', $this->load_file('estancia_perales2_es')));
     $this->addReference('a-estancia-perales', $estancia_perales);
     $manager->persist($estancia_perales);
     $montes_balmaceda = new Accommodation();
     $montes_balmaceda->setTitle('Montes Balmaceda')->setImageFilename('monte_balmaceda1.jpg')->setDescription($this->load_file('montes_balmaceda1_en'))->setSecondaryText($this->load_file('montes_balmaceda2_en'))->setShowOnHomepage(true)->setTranslatableLocale('en')->addTranslation(new Translation('en', 'title', 'Montes Balmaceda'))->addTranslation(new Translation('en', 'description', $this->load_file('montes_balmaceda1_en')))->addTranslation(new Translation('en', 'secondary_text', $this->load_file('montes_balmaceda2_en')))->addTranslation(new Translation('es', 'title', 'Montes Balmaceda'))->addTranslation(new Translation('es', 'description', $this->load_file('montes_balmaceda1_es')))->addTranslation(new Translation('es', 'secondary_text', $this->load_file('montes_balmaceda2_es')));
     $this->addReference('a-monte-balmaceda', $montes_balmaceda);
     $manager->persist($montes_balmaceda);
     $manager->flush();
 }
 /**
  * @Method("POST")
  */
 public function orderImagesAction(Accommodation $accommodation)
 {
     $order = $this->getRequest()->get('images', array());
     $images = $accommodation->getImages();
     $em = $this->getDoctrine()->getManager();
     $i = 1;
     foreach ($order as $id) {
         foreach ($images as $image) {
             /** @var AccommodationImage $image */
             if ($image->getId() == $id) {
                 $image->setStackOrder($i++) && $em->persist($image);
             }
         }
     }
     $em->flush();
     return new Response('ok');
 }