v1.php 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace zin;
  3. class navigator extends wg
  4. {
  5. /**
  6. * @var mixed[]
  7. */
  8. protected static $defineProps = array(
  9. 'items?: array'
  10. );
  11. public static function getPageCSS()
  12. {
  13. return file_get_contents(__DIR__ . DS . 'css' . DS . 'v1.css');
  14. }
  15. protected function buildSteps()
  16. {
  17. $items = $this->prop('items');
  18. if(!$items) return array();
  19. $steps = array();
  20. foreach($items as $item)
  21. {
  22. $steps[] = li
  23. (
  24. !empty($item->active) ? setClass('active') : null,
  25. !empty($item->url) ? set::href($item->url) : null,
  26. a
  27. (
  28. setClass('btn shadow-none' . (!empty($item->active) ? ' secondary' : '')),
  29. $item->text
  30. )
  31. );
  32. }
  33. return $steps;
  34. }
  35. protected function build()
  36. {
  37. return ul
  38. (
  39. setID('navigator'),
  40. setClass('nav nav-primary'),
  41. $this->buildSteps()
  42. );
  43. }
  44. }