Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.27 KB | None | 0 0
  1. #!/usr/bin/env php
  2. <?php
  3.  
  4. require 'vendor/autoload.php';
  5.  
  6. use Symfony\Component\DomCrawler\Crawler;
  7.  
  8. $crawler = new Crawler(file_get_contents('/home/pieter/v/d8-training/index.html'));
  9. $crawler = $crawler->filter('div.slides section');
  10.  
  11. $titles = [];
  12.  
  13. /** @var DOMElement $slide */
  14. foreach ($crawler as $slide) {
  15. $title = get_title($slide) ?: 'no-title';
  16. $document = $slide->ownerDocument;
  17. $inner_html = '';
  18. foreach ($slide->childNodes as $node) {
  19. $inner_html .= $document->saveHTML($node);
  20. }
  21. var_dump($inner_html);
  22. while (in_array($title, $titles)) {
  23. echo "Title already exists: $title";
  24. $title = readline("\nEnter new title: ");
  25. }
  26. $titles[] = $title;
  27. $output = '';
  28. exec('yo reveal:slide "' . $title . '" --markdown 2>&1', $output, $return_code);
  29. var_dump($output);
  30. list($status, $filename) = explode(" ", trim(end($output)));
  31. var_dump($status);
  32. var_dump($filename);
  33. var_dump($return_code);
  34. file_put_contents($filename, $inner_html);
  35. }
  36.  
  37. function get_title(DOMElement $slide) {
  38. foreach (['h1', 'h2', 'h3'] as $heading) {
  39. /** @var DOMElement $element */
  40. foreach ($slide->getElementsByTagName($heading) as $element) {
  41. return $element->textContent;
  42. }
  43. }
  44. return FALSE;
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement