Пример #1
0
 /**
  * {@inheritDoc}
  */
 public function processConfigs(DatagridConfiguration $config)
 {
     $actionConfiguration = $config->offsetGetOr(static::ACTION_CONFIGURATION_KEY);
     if ($actionConfiguration && is_callable($actionConfiguration)) {
         $callable = function (ResultRecordInterface $record) use($actionConfiguration) {
             $result = call_user_func($actionConfiguration, $record);
             return is_array($result) ? $result : [];
         };
         $propertyConfig = ['type' => 'callback', 'callable' => $callable, PropertyInterface::FRONTEND_TYPE_KEY => 'array'];
         $config->offsetAddToArrayByPath(sprintf('[%s][%s]', Configuration::PROPERTIES_KEY, static::METADATA_ACTION_CONFIGURATION_KEY), $propertyConfig);
     }
 }