App\Http\Controllers\DynamicFieldController::index PHP Method

index() public method

index
public index ( Request $request ) : Xpressengine\Presenter\RendererInterface
$request Xpressengine\Http\Request
return Xpressengine\Presenter\RendererInterface
    public function index(Request $request)
    {
        /**
         * @var \Xpressengine\DynamicField\DynamicFieldHandler $dynamicField
         */
        $dynamicField = app('xe.dynamicField');
        $list = [];
        $configs = $dynamicField->getConfigHandler()->gets($request->get('group'));
        /**
         * @var ConfigEntity $config
         */
        foreach ($configs as $config) {
            $info = $config->getPureAll();
            /**
             * @var \Xpressengine\DynamicField\TypeInterface $fieldType
             */
            $fieldType = $dynamicField->get($config->get('group'), $config->get('id'));
            $info['typeName'] = $fieldType->name();
            $info['skinName'] = $fieldType->getSkin()->name();
            $info['label'] = xe_trans($info['label']);
            $list[] = $info;
        }
        return XePresenter::makeApi(['list' => $list]);
    }