Пример #1
0
 public function delete(LangDeleteEvent $event)
 {
     if (null !== ($lang = LangQuery::create()->findPk($event->getLangId()))) {
         $lang->setDispatcher($event->getDispatcher())->delete();
         $event->setLang($lang);
     }
 }
Пример #2
0
 public function delete(LangDeleteEvent $event)
 {
     if (null !== ($lang = LangQuery::create()->findPk($event->getLangId()))) {
         if ($lang->getByDefault()) {
             throw new \RuntimeException(Translator::getInstance()->trans('It is not allowed to delete the default language'));
         }
         $lang->setDispatcher($event->getDispatcher())->delete();
         $event->setLang($lang);
     }
 }
Пример #3
0
 public function delete(LangDeleteEvent $event)
 {
     if (null !== ($lang = LangQuery::create()->findPk($event->getLangId()))) {
         if ($lang->getByDefault()) {
             throw new \RuntimeException(Translator::getInstance()->trans('It is not allowed to delete the default language'));
         }
         $lang->setDispatcher($event->getDispatcher())->delete();
         $session = $this->request->getSession();
         // If we've just deleted the current admin edition language, set it to the default one.
         if ($lang->getId() == $session->getAdminEditionLang()->getId()) {
             $session->setAdminEditionLang(LangModel::getDefaultLanguage());
         }
         // If we've just deleted the current admin language, set it to the default one.
         if ($lang->getId() == $session->getLang()->getId()) {
             $session->setLang(LangModel::getDefaultLanguage());
         }
         $event->setLang($lang);
     }
 }
Пример #4
0
 /**
  * @param LangModel $lang
  * @depends testToggleDefault
  */
 public function testDelete(LangModel $lang)
 {
     $event = new LangDeleteEvent($lang->getId());
     $event->setDispatcher($this->dispatcher);
     $action = new Lang();
     $action->delete($event);
     $deletedLang = $event->getLang();
     $this->assertInstanceOf('Thelia\\Model\\Lang', $deletedLang);
     $this->assertTrue($deletedLang->isDeleted());
 }
Пример #5
0
 /**
  * @expectedException \RuntimeException
  * @expectedExceptionMessage It is not allowed to delete the default language
  */
 public function testDeleteDefault()
 {
     $lang = LangQuery::create()->findOneByByDefault(1);
     $event = new LangDeleteEvent($lang->getId());
     $event->setDispatcher($this->dispatcher);
     $action = new Lang(new TheliaTemplateHelper(), $this->request);
     $action->delete($event);
 }
Пример #6
0
 /**
  * @expectedException \RuntimeException
  * @expectedExceptionMessage It is not allowed to delete the default language
  */
 public function testDeleteDefault()
 {
     self::tearDownAfterClass();
     $lang = LangQuery::create()->findOneByByDefault(1);
     $event = new LangDeleteEvent($lang->getId());
     $event->setDispatcher($this->dispatcher);
     $action = new Lang();
     $action->delete($event);
 }