PageRenderTime 51ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 1ms

/vendors/sass/renderers/CompactSassRenderer.class.php

http://github.com/m3nt0r/chaml---cakephp-haml-sass-integration
PHP | 49 lines | 19 code | 3 blank | 27 comment | 0 complexity | 8861e0e0ec851159dadec3706b42dfb2 MD5 | raw file
  1. <?php
  2. /**
  3. * Compact Sass renderer.
  4. *
  5. * @link http://haml.hamptoncatlin.com/ Original Sass parser (for Ruby)
  6. * @link http://phphaml.sourceforge.net/ Online documentation
  7. * @link http://sourceforge.net/projects/phphaml/ SourceForge project page
  8. * @license http://www.opensource.org/licenses/mit-license.php MIT (X11) License
  9. * @author Amadeusz Jasak <amadeusz.jasak@gmail.com>
  10. * @package phpHaml
  11. * @subpackage Sass
  12. */
  13. require_once dirname(__FILE__) . '/../SassRenderer.class.php';
  14. /**
  15. * Compact Sass renderer.
  16. *
  17. * @link http://haml.hamptoncatlin.com/ Original Sass parser (for Ruby)
  18. * @link http://phphaml.sourceforge.net/ Online documentation
  19. * @link http://sourceforge.net/projects/phphaml/ SourceForge project page
  20. * @license http://www.opensource.org/licenses/mit-license.php MIT (X11) License
  21. * @author Amadeusz Jasak <amadeusz.jasak@gmail.com>
  22. * @package phpHaml
  23. * @subpackage Sass
  24. */
  25. class CompactSassRenderer extends SassRenderer
  26. {
  27. /**
  28. * Render Sass source
  29. *
  30. * @return string
  31. */
  32. public function render()
  33. {
  34. $result = '';
  35. foreach ($this->getElements() as $element)
  36. {
  37. $result .= $element->getRule().' {';
  38. foreach ($element->getAttributes() as $name => $value)
  39. $result .= " $name: $value;";
  40. $result .= " }\n";
  41. $result .= new self($element->getChildren());
  42. }
  43. return trim($result)."\n";
  44. }
  45. }
  46. ?>