/**
  * @param Schema $schema
  */
 public function up(Schema $schema)
 {
     $rep = $this->em->getRepository('Gedmo\\Translatable\\Entity\\Translation');
     foreach ($this->genres as $en => $ru) {
         $genre = new Genre();
         $genre->setName($en)->setTranslatableLocale('en');
         $this->em->persist($genre);
         $this->em->flush($genre);
         $rep->translate($genre, 'name', 'ru', $ru);
     }
     $this->em->flush();
 }
 /**
  * @param Schema $schema
  */
 public function down(Schema $schema)
 {
     $rep = $this->em->getRepository('AnimeDbCatalogBundle:Genre');
     /* @var $genre Genre */
     foreach ($this->restore as $from => $to) {
         $genre = $rep->findOneBy(['name' => $from]);
         if (is_array($to)) {
             $genre->setName($to[1])->setTranslatableLocale('ru');
             $this->em->persist($genre);
             $this->em->flush($genre);
             $to = $to[0];
         }
         $genre->setName($to)->setTranslatableLocale('en');
         $this->em->persist($genre);
     }
     // new genre
     $genre = new Genre();
     $genre->setName('Mystery play')->setTranslatableLocale('en');
     $this->em->persist($genre);
     $this->em->flush();
     $genre->setName('Мистерия')->setTranslatableLocale('ru');
     $this->em->persist($genre);
     // rename russian
     $genre = $rep->findOneBy(['name' => 'History']);
     $genre->setName('История')->setTranslatableLocale('ru');
     $this->em->persist($genre);
     $genre = $rep->findOneBy(['name' => 'War']);
     $genre->setName('Война')->setTranslatableLocale('ru');
     $this->em->persist($genre);
     $this->em->flush();
 }