diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..c6b411c --- /dev/null +++ b/.travis.yml @@ -0,0 +1,5 @@ +language: php +php: + - 5.4 +before_script: + - composer install --dev diff --git a/CHANGELOG.md b/CHANGELOG.md index e86220c..f9addbb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ -# ChangeLog - PHP TOC +# ChangeLog - PHP TableOfContents (TOC) All notable changes to this project are documented in this file. ## 1.0 - 2014-12-30 ### Added -- Initial Version \ No newline at end of file +- Initial Version diff --git a/LICENSE b/LICENSE index abbf69a..1c141b4 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2014 Casey McLaughlin +Copyright (c) 2013-2014 Casey McLaughlin Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in @@ -17,4 +17,4 @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/composer.json b/composer.json index ad43984..84a35c8 100644 --- a/composer.json +++ b/composer.json @@ -28,6 +28,7 @@ "knplabs/knp-menu": "~2.0" }, "require-dev": { - "twig/twig": "~1.13" + "twig/twig": "~1.13", + "phpunit/phpunit": "~4.0" } } diff --git a/src/HeaderTagInterpreter.php b/src/HeaderTagInterpreter.php index 7379f23..868b400 100644 --- a/src/HeaderTagInterpreter.php +++ b/src/HeaderTagInterpreter.php @@ -1,15 +1,24 @@ + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * ------------------------------------------------------------------ */ namespace TOC; /** - * Interprets header tags + * Trait that interprets HTML Header tags from a list of integers * * @package TOC */ diff --git a/src/MarkupFixer.php b/src/MarkupFixer.php index 13f8673..46f7eef 100644 --- a/src/MarkupFixer.php +++ b/src/MarkupFixer.php @@ -1,9 +1,18 @@ + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * ------------------------------------------------------------------ */ namespace TOC; diff --git a/src/TocGenerator.php b/src/TocGenerator.php index 66e56f4..a98ab39 100644 --- a/src/TocGenerator.php +++ b/src/TocGenerator.php @@ -1,7 +1,19 @@ + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * ------------------------------------------------------------------ + */ namespace TOC; @@ -14,7 +26,7 @@ use Sunra\PhpSimple\HtmlDomParser; use RuntimeException; /** - * Class TocGenerator + * Table Of Contents Generator generates TOCs from HTML Markup * * @author Casey McLaughlin */ diff --git a/src/TocTwigExtension.php b/src/TocTwigExtension.php index a94be0a..ffc1ba5 100644 --- a/src/TocTwigExtension.php +++ b/src/TocTwigExtension.php @@ -1,11 +1,33 @@ + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * ------------------------------------------------------------------ + */ + namespace TOC; use Twig_Extension; /** - * Class TocTwigExtension + * Table of Contents Twig Extension Integrates with Twig + * + * Adds filter: + * - add_anchors + * + * Adds functions: + * - toc (returns HTML list) + * - toc_items (returns KnpMenu iterator) * * @author Casey McLaughlin */ @@ -37,6 +59,9 @@ class TocTwigExtension extends Twig_Extension // --------------------------------------------------------------- + /** + * {@inheritdoc} + */ public function getFilters() { $filters = parent::getFilters(); @@ -50,16 +75,17 @@ class TocTwigExtension extends Twig_Extension // --------------------------------------------------------------- + /** + * {@inheritdoc} + */ public function getFunctions() { $functions = parent::getFunctions(); // ~~~ - $functions[] = new \Twig_SimpleFunction('toc', function($markup, $top = 1, $depth = 2, $titleTemplate = null) { - return ($titleTemplate) - ? $this->generator->getHtmlMenu($markup, $top, $depth, $titleTemplate) - : $this->generator->getHtmlMenu($markup, $top, $depth); + $functions[] = new \Twig_SimpleFunction('toc', function($markup, $top = 1, $depth = 2) { + return $this->generator->getHtmlMenu($markup, $top, $depth); }, ['is_safe' => ['html']]); // ~~~ diff --git a/src/UniqueSluggifier.php b/src/UniqueSluggifier.php index 3af60d9..195d358 100644 --- a/src/UniqueSluggifier.php +++ b/src/UniqueSluggifier.php @@ -1,17 +1,25 @@ + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * ------------------------------------------------------------------ */ - namespace TOC; use Cocur\Slugify\Slugify; /** - * UniqueSluggifier creates slugs text without repeating the same string twice per instance + * UniqueSluggifier creates slugs from text without repeating the same slug twice per instance * * @author Casey McLaughlin */ diff --git a/tests/MarkupFixerTest.php b/tests/MarkupFixerTest.php index e1525dc..f2053ae 100644 --- a/tests/MarkupFixerTest.php +++ b/tests/MarkupFixerTest.php @@ -1,13 +1,22 @@ + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * ------------------------------------------------------------------ + */ + namespace TOC; -/** - * Created by PhpStorm. - * User: casey - * Date: 12/30/14 - * Time: 1:24 PM - */ class MarkupFixerTest extends \PHPUnit_Framework_TestCase { diff --git a/tests/TocGeneratorTest.php b/tests/TocGeneratorTest.php index 8bd6035..ceaa53d 100644 --- a/tests/TocGeneratorTest.php +++ b/tests/TocGeneratorTest.php @@ -1,9 +1,18 @@ + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + * + * ------------------------------------------------------------------ */ namespace TOC;