コード例 #1
0
 /**
  * Create service
  *
  * @param  ServiceLocatorInterface $serviceLocator
  * @return mixed
  */
 public function createService(ServiceLocatorInterface $serviceLocator)
 {
     $container = new Container();
     /** @var Configuration $config */
     $config = $serviceLocator->get('EnliteAdminConfiguration');
     foreach ($config->getEntities() as $name => $options) {
         $entity = new Entity($name, $options);
         $entity->setServiceLocator($serviceLocator);
         $container->addEntity($entity);
     }
     return $container;
 }
コード例 #2
0
 /**
  * @param Entity $entity
  * @param Paginator $pagination
  */
 public function createTable(Entity $entity, Paginator $pagination)
 {
     $table = new Table();
     $table->createHead($entity->getOptions()->getFields());
     $hydrator = new ClassMethods();
     foreach ($pagination as $entity) {
         $row = $table->createRow();
         foreach ($hydrator->extract($entity) as $key => $value) {
             $row->setValue($key, $value);
         }
     }
     return $table;
 }
コード例 #3
0
 /**
  * @param Entity $entity
  * @param $model
  * @return array
  */
 public function editModel($entity, $model)
 {
     $form = $entity->getService()->getForm();
     $form->bind($model);
     if ($this->getRequest()->isPost()) {
         $form->setData(array_merge($this->params()->fromPost(), $this->params()->fromFiles()));
         if ($form->isValid()) {
             $entity->getService()->save($model);
             $this->getEntityManager()->flush();
             $this->flashMessenger()->addSuccessMessage('Saved');
             $this->redirect()->toRoute('admin/entity/entity', ['entity' => $entity->getName()]);
         }
     }
     return $form;
 }
コード例 #4
0
 /**
  * @return EntityRepository
  */
 public function getRepository()
 {
     if (null == $this->repository) {
         $this->repository = $this->getEntityManager()->getRepository($this->entity->getClassName());
     }
     return $this->repository;
 }
コード例 #5
0
 protected function getEntity()
 {
     $entity = new Entity('user', new EntityOptions());
     $entity->setService($this->getMockBuilder('EnliteAdmin\\Service\\DefaultEntityService')->disableOriginalConstructor()->getMock());
     return $entity;
 }
コード例 #6
0
ファイル: Container.php プロジェクト: enlitepro/enlite-admin
 /**
  * @param Entity $entity
  */
 public function addEntity(Entity $entity)
 {
     $this->entities[$entity->getName()] = $entity;
 }