AdminExtensionInterface.php 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. /*
  3. * This file is part of the Sonata package.
  4. *
  5. * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
  6. *
  7. * For the full copyright and license information, please view the LICENSE
  8. * file that was distributed with this source code.
  9. */
  10. namespace Sonata\AdminBundle\Admin;
  11. use Sonata\AdminBundle\Form\FormMapper;
  12. use Sonata\AdminBundle\Datagrid\ListMapper;
  13. use Sonata\AdminBundle\Datagrid\DatagridMapper;
  14. use Sonata\AdminBundle\Show\ShowMapper;
  15. use Sonata\AdminBundle\Route\RouteCollection;
  16. use Sonata\AdminBundle\Validator\ErrorElement;
  17. use Sonata\AdminBundle\Admin\AdminInterface;
  18. use Knp\Menu\ItemInterface as MenuItemInterface;
  19. interface AdminExtensionInterface
  20. {
  21. /**
  22. * @abstract
  23. * @param \Sonata\AdminBundle\Form\FormMapper $form
  24. * @return void
  25. */
  26. function configureFormFields(FormMapper $form);
  27. /**
  28. * @abstract
  29. * @param \Sonata\AdminBundle\Datagrid\ListMapper $list
  30. * @return void
  31. */
  32. function configureListFields(ListMapper $list);
  33. /**
  34. * @abstract
  35. * @param \Sonata\AdminBundle\Datagrid\DatagridMapper $filter
  36. * @return void
  37. */
  38. function configureDatagridFilters(DatagridMapper $filter);
  39. /**
  40. * @abstract
  41. * @param \Sonata\AdminBundle\Show\ShowMapper $filter
  42. * @return void
  43. */
  44. function configureShowFields(ShowMapper $filter);
  45. /**
  46. * @abstract
  47. * @param Admin $admin
  48. * @param \Sonata\AdminBundle\Route\RouteCollection $collection
  49. * @return void
  50. */
  51. function configureRoutes(Admin $admin, RouteCollection $collection);
  52. /**
  53. * @abstract
  54. * @param Admin $admin
  55. * @param \Knp\Menu\MenuItem $menu
  56. * @param string $action
  57. * @param null|Admin $childAdmin
  58. * @return void
  59. */
  60. function configureSideMenu(Admin $admin, MenuItemInterface $menu, $action, Admin $childAdmin = null);
  61. /**
  62. * @abstract
  63. * @param Admin $admin
  64. * @param \Sonata\AdminBundle\Validator\ErrorElement $errorElement
  65. * @param $object
  66. * @return void
  67. */
  68. function validate(Admin $admin, ErrorElement $errorElement, $object);
  69. }