public function addConfig(ConfigInterface $config)
 {
     if (isset($this->configs[$config->getId()])) {
         throw new \InvalidArgumentException(sprintf('Datatable "%s" is already defined', $config->getId()));
     }
     $this->configs[$config->getId()] = $config;
 }
Ejemplo n.º 2
0
 /**
  * @param ConfigInterface $config
  *
  * @return \RP\DatatableBundle\Util\Datatable
  */
 public function create(ConfigInterface $config)
 {
     $table = $this->container->get('datatable')->setEntity($config->getEntityName(), $config->getEntityAlias())->setFields($config->getFields())->setRenderers($config->getRenderers())->setWhere($config->getWhere(), $config->getWhereParams())->setOrder($config->getOrderField(), $config->getOrderDirection())->setHasAction($config->isAction())->setSearch($config->isSearch())->setSearchFields($config->getSearchFields());
     foreach ($config->getJoins() as $join) {
         $table->addJoin($join['field'], $join['alias'], $join['type']);
     }
     return $table;
 }