mattdanger/volt-helpers

Useful additions to the Volt template engine

v1.0 2016-04-13 16:06 UTC

This package is not auto-updated.

Last update: 2024-05-08 21:40:38 UTC


README

Useful additions to the Volt template engine

Installing

Install using Composer:

{
	"require": {
		"mattdanger/volt-helpers": "dev-master"
	}
}

You'll also need to add each function to the Volt service:

$di->set('view', function () use ($config) {

  $view = new View();
  // ...
  $view->registerEngines(array(
    '.volt' => function ($view, $di) use ($config) {

      $volt = new VoltEngine($view, $di);

      $volt->getCompiler()->addFunction('ordinal', function ($resolvedArgs, $expArgs) {
        return 'VoltHelpers\Helpers::ordinal(' . $resolvedArgs . ')';
      });
      $volt->getCompiler()->addFunction('strToCurrency', function ($resolvedArgs, $expArgs) {
        return 'VoltHelpers\Helpers::strToCurrency(' . $resolvedArgs . ')';
      });
      $volt->getCompiler()->addFunction('pluralize', function ($resolvedArgs, $expArgs) {
        return 'VoltHelpers\Helpers::pluralize(' . $resolvedArgs . ')';
      });
      $volt->getCompiler()->addFunction('paginationPath', function ($resolvedArgs, $expArgs) {
        return 'VoltHelpers\Helpers::paginationPath(' . $resolvedArgs . ')';
      });
      // ... 

      return $volt;
    },
    // ...
  ));

  return $view;

});

Using Helpers

Here's a list of what's included:

ordinal($number)

Number ordinal service - returns 1st, 2nd, 10th, 43rd, 724th, etc.

strToCurrency($value)

Output a string in currency format

pluralize($count, $singular, $plural)

Pluralize string

paginationPath()

Returns a URL encoded string with current request params plus a param for current pagination page number.