Manager.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace AdminAddonUserManager;
  3. use Grav\Common\Grav;
  4. use Grav\Plugin\AdminAddonUserManagerPlugin;
  5. use Grav\Common\Assets;
  6. use RocketTheme\Toolbox\Event\Event;
  7. interface Manager {
  8. public function __construct(Grav $grav, AdminAddonUserManagerPlugin $plugin);
  9. /**
  10. * Returns the required permission to access the manager
  11. *
  12. * @return string
  13. */
  14. public function getRequiredPermission();
  15. /**
  16. * Returns the location of the manager
  17. * It will be accessible at this path
  18. *
  19. * @return string
  20. */
  21. public function getLocation();
  22. /**
  23. * Returns the plugin hooked nav array
  24. *
  25. * @return array
  26. */
  27. public function getNav();
  28. /**
  29. * Initialiaze required assets
  30. *
  31. * @param \Grav\Common\Assets $assets
  32. * @return void
  33. */
  34. public function initializeAssets(Assets $assets);
  35. /**
  36. * Handle task requests
  37. *
  38. * @param \RocketTheme\Toolbox\Event\Event $event
  39. * @return void
  40. */
  41. public function handleTask(Event $event);
  42. /**
  43. * Logic of the manager goes here
  44. *
  45. * @return array The array to be merged to Twig vars
  46. */
  47. public function handleRequest();
  48. }