Fixed/added documentation and Travis file; getting ready for release.

Этот коммит содержится в:
Casey McLaughlin 2015-01-22 17:06:48 -05:00
родитель 6d5914049a
Коммит 32b1f93d14
11 изменённых файлов: 126 добавлений и 38 удалений

5
.travis.yml Обычный файл
Просмотреть файл

@ -0,0 +1,5 @@
language: php
php:
- 5.4
before_script:
- composer install --dev

Просмотреть файл

@ -1,4 +1,4 @@
# ChangeLog - PHP TOC
# ChangeLog - PHP TableOfContents (TOC)
All notable changes to this project are documented in this file.
## 1.0 - 2014-12-30

Просмотреть файл

@ -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

Просмотреть файл

@ -28,6 +28,7 @@
"knplabs/knp-menu": "~2.0"
},
"require-dev": {
"twig/twig": "~1.13"
"twig/twig": "~1.13",
"phpunit/phpunit": "~4.0"
}
}

Просмотреть файл

@ -1,15 +1,24 @@
<?php
/**
* Created by PhpStorm.
* User: casey
* Date: 12/30/14
* Time: 12:32 PM
* PHP TableOfContents Library
*
* @license http://opensource.org/licenses/MIT
* @link https://github.com/caseyamcl/toc
* @version 1.0
* @package caseyamcl/toc
* @author Casey McLaughlin <caseyamcl@gmail.com>
*
* 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
*/

Просмотреть файл

@ -1,9 +1,18 @@
<?php
/**
* Created by PhpStorm.
* User: casey
* Date: 12/30/14
* Time: 12:20 PM
* PHP TableOfContents Library
*
* @license http://opensource.org/licenses/MIT
* @link https://github.com/caseyamcl/toc
* @version 1.0
* @package caseyamcl/toc
* @author Casey McLaughlin <caseyamcl@gmail.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*
* ------------------------------------------------------------------
*/
namespace TOC;

Просмотреть файл

@ -1,7 +1,19 @@
<?php
// Header here
// ---------------------------------------------------------------
/**
* PHP TableOfContents Library
*
* @license http://opensource.org/licenses/MIT
* @link https://github.com/caseyamcl/toc
* @version 1.0
* @package caseyamcl/toc
* @author Casey McLaughlin <caseyamcl@gmail.com>
*
* 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 <caseyamcl@gmail.com>
*/

Просмотреть файл

@ -1,11 +1,33 @@
<?php
/**
* PHP TableOfContents Library
*
* @license http://opensource.org/licenses/MIT
* @link https://github.com/caseyamcl/toc
* @version 1.0
* @package caseyamcl/toc
* @author Casey McLaughlin <caseyamcl@gmail.com>
*
* 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 <caseyamcl@gmail.com>
*/
@ -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']]);
// ~~~

Просмотреть файл

@ -1,17 +1,25 @@
<?php
/**
* Created by PhpStorm.
* User: casey
* Date: 12/30/14
* Time: 12:48 PM
*
* PHP TableOfContents Library
*
* @license http://opensource.org/licenses/MIT
* @link https://github.com/caseyamcl/toc
* @version 1.0
* @package caseyamcl/toc
* @author Casey McLaughlin <caseyamcl@gmail.com>
*
* 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 <caseyamcl@gmail.com>
*/

Просмотреть файл

@ -1,13 +1,22 @@
<?php
/**
* PHP TableOfContents Library
*
* @license http://opensource.org/licenses/MIT
* @link https://github.com/caseyamcl/toc
* @version 1.0
* @package caseyamcl/toc
* @author Casey McLaughlin <caseyamcl@gmail.com>
*
* 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
{

Просмотреть файл

@ -1,9 +1,18 @@
<?php
/**
* Created by PhpStorm.
* User: casey
* Date: 12/30/14
* Time: 12:39 PM
* PHP TableOfContents Library
*
* @license http://opensource.org/licenses/MIT
* @link https://github.com/caseyamcl/toc
* @version 1.0
* @package caseyamcl/toc
* @author Casey McLaughlin <caseyamcl@gmail.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*
* ------------------------------------------------------------------
*/
namespace TOC;