Your IP : 216.73.217.79


Current Path : /var/www/v3.cesa.co.za/src/UserBundle/Admin/
Upload File :
Current File : /var/www/v3.cesa.co.za/src/UserBundle/Admin/UserFieldAdmin.php

<?php

namespace App\UserBundle\Admin;

use Sonata\AdminBundle\Admin\AbstractAdmin;
use Sonata\AdminBundle\Datagrid\ListMapper;
use Sonata\AdminBundle\Datagrid\DatagridMapper;
use Sonata\AdminBundle\Validator\ErrorElement;
use Sonata\AdminBundle\Form\FormMapper;

/**
 * User Field Admin
 *
 * @author Otto Saayman <otto@igotafrica.com>
 * @package UserBundle
 * @subpackage Admin
 * @version 0.0.1
 */
class UserFieldAdmin extends AbstractAdmin {

    protected function generateBaseRouteName(bool $isChildAdmin = false): string
    {
        return 'user_field';
    }

    protected function generateBaseRoutePattern(bool $isChildAdmin = false): string
    {
        return 'user_field';
    }

    /**
     * Container
     * @var $container
     */
    protected $container;

    /**
     * @return null
     */
    public function setContainer($container) {

        $this->container = $container;
    }

    /**
     * @return object
     */
    public function getContainer() {
        return $this->container;
    }

    protected function configureFormFields(FormMapper $formMapper): void {

        $languagePhrasesManager = $this->getContainer()->get('language_phrases.manager');

        $formMapper
                ->add('field_name', null, array('label' => $languagePhrasesManager->translate('Field name')))
                ->add('default_value', null, array('label' => $languagePhrasesManager->translate('Default')))
                ->add('field_type', null, array('label' => $languagePhrasesManager->translate('Field type')))
                ->add('required', null, array('label' => $languagePhrasesManager->translate('Required')))
        ;
    }

    protected function configureDatagridFilters(DatagridMapper $datagridMapper): void {

        $languagePhrasesManager = $this->getContainer()->get('language_phrases.manager');

        $datagridMapper
                ->add('field_name', null, array('label' => $languagePhrasesManager->translate('Field name')))
                ->add('default_value', null, array('label' => $languagePhrasesManager->translate('Default')))
                ->add('field_type', null, array('label' => $languagePhrasesManager->translate('Field type')))
                ->add('required', null, array('label' => $languagePhrasesManager->translate('Required')))
        ;
    }

    protected function configureListFields(ListMapper $listMapper): void {

        $languagePhrasesManager = $this->getContainer()->get('language_phrases.manager');

        $listMapper
                ->addIdentifier('field_name', null, array('label' => $languagePhrasesManager->translate('Field name')))
                ->add('default_value', null, array('label' => $languagePhrasesManager->translate('Default')))
                ->add('field_type', null, array('label' => $languagePhrasesManager->translate('Field type')))
                ->add('required', null, array('label' => $languagePhrasesManager->translate('Required')))
                ->add('_action', 'actions', array(
                    'actions' => array(
                        'show' => array(),
                        'edit' => array(),
                        'delete' => array(),
                    )
                ))
        ;
    }

}