2017 © Pedro Peláez
 

library twigbridge-laravel-4

Adds the power of Twig to Laravel

image

gencer/twigbridge-laravel-4

Adds the power of Twig to Laravel

  • Monday, August 4, 2014
  • by gencer
  • Repository
  • 1 Watchers
  • 0 Stars
  • 19 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 42 Versions
  • 0 % Grown

The README.md

Allows you to use Twig seamlessly in Laravel 4., (*1)

Latest Stable Version Total Downloads Build Status Coverage Status License, (*2)

NOTE: This is a fork of current TwigBridge by Robert Crowe. I maintained this because the current beta stage forces us to use dev branch of all repos. I do not want to use dev branch for all components, personally :), (*3)

Installation

Add gencer/twigbridge-laravel-4 as a requirement to composer.json:, (*4)

{
    "require": {
        "gencer/twigbridge-laravel-4": "0.6.*"
    }
}

Update your packages with composer update or install with composer install., (*5)

Once Composer has installed or updated your packages you need to register TwigBridge with Laravel itself. Open up app/config/app.php and find the providers key towards the bottom and add:, (*6)

'TwigBridge\ServiceProvider'

You can add the TwigBridge Facade, to have easier access to the TwigBridge (or Twig_Environment)., (*7)

'Twig' => 'TwigBridge\Facade\Twig',
Twig::addExtension('TwigBridge\Extension\Loader\Functions');
Twig::render('mytemplate', $data);

Configuration

TwigBridge's configuration file can be extended by creating app/config/packages/rcrowe/twigbridge/config.php. You can find the default configuration file at vendor/rcrowe/twigbridge/src/config/config.php., (*8)

You can quickly publish a configuration file by running the following Artisan command., (*9)

$ php artisan config:publish rcrowe/twigbridge

Usage

You call the Twig template like you would any other view:, (*10)

// Without the file extension
View::make('i_am_twig', array(...))

TwigBridge also supports views in other packages:, (*11)

View::make('pagination::simple')

The above rules continue when extending another Twig template:, (*12)

{% extend "parent" %}
{% extend "pagination::parent" %}

You can call functions with parameters:, (*13)

{{ link_to_route('tasks.edit', 'Edit', task.id, {'class': 'btn btn-primary'}) }}

And output variables, escaped by default. Use the raw filter to skip escaping., (*14)

{{ some_var }}
{{ html_var | raw }}
{{ long_var | str_limit(50) }}

Extensions

Sometimes you want to extend / add new functions for use in Twig templates. Add to the enabled array in config/extensions.php a list of extensions for Twig to load., (*15)

'extensions' => array(
    'TwigBridge\Extensions\Example'
)

TwigBridge supports both a string or a closure as a callback, so for example you might implement the Assetic Twig extension as follows:, (*16)

'extensions' => array(
    function($app) {
        $factory = new Assetic\Factory\AssetFactory($app['path'].'/../some/path/');
        $factory->setDebug(false);
        // etc.....
        return new Assetic\Extension\Twig\AsseticExtension($factory);
    }
)

TwigBridge comes with the following extensions enabled by default:, (*17)

  • Twig_Extension_Debug
  • TwigBridge\Extension\Laravel\Auth
  • TwigBridge\Extension\Laravel\Config
  • TwigBridge\Extension\Laravel\Form
  • TwigBridge\Extension\Laravel\Html
  • TwigBridge\Extension\Laravel\Input
  • TwigBridge\Extension\Laravel\Session
  • TwigBridge\Extension\Laravel\String
  • TwigBridge\Extension\Laravel\Translator
  • TwigBridge\Extension\Laravel\Url
  • TwigBridge\Extension\Loader\Facades
  • TwigBridge\Extension\Loader\Filters
  • TwigBridge\Extension\Loader\Functions

To enable '0.5.x' style Facades, enable the Legacy Facades extension: - TwigBridge\Extension\Laravel\Legacy\Facades, (*18)

FilterLoader and FunctionLoader

These loader extensions exposes Laravel helpers as both Twig functions and filters., (*19)

Check out the config/extensions.php file to see a list of defined function / filters. You can also add your own., (*20)

FacadeLoader

The FacadeLoader extension allows you to call any facade you have configured in config/extensions.php. This gives your Twig templates integration with any Laravel class as well as any other classes you alias., (*21)

To use the Laravel integration (or indeed any aliased class and method), just add your facades to the config and call them like URL.to(link) (instead of URL::to($link)), (*22)

Functions/Filters/Variables

The following helpers/filters are added by the default Extensions. They are based on the helpers and/or facades, so should be self explaining., (*23)

Functions: * asset, action, url, route, secure_url, secure_asset * auth_check, auth_guest, auth_user * config_get, config_has * form_ (All the Form:: methods, snake_cased) * html_ (All the Html:: methods, snake_cased) * input_get, input_old * link_to, link_to_asset, link_to_route, link_to_action * session_has, session_get, csrf_token * str_ (All the Str:: methods, snake_cased) * trans, trans_choice * url_ (All the URL:: methods, snake_cased), (*24)

Filters: * camel_case, snake_case, studly_case * str_ (All the Str:: methods, snake_cased) * trans, trans_choice, (*25)

Global variables: * app: the Illuminate\Foundation\Application object * errors: The $errors MessageBag from the Validator (always available), (*26)

Artisan Commands

TwigBridge offers a command for CLI Interaction., (*27)

Empty the Twig cache:, (*28)

$ php artisan twig:clean

Lint all Twig templates:, (*29)

$ php artisan twig:lint

The Versions

04/08 2014
26/03 2014

0.5.4

0.5.4.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

31/01 2014

0.5.3

0.5.3.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

22/09 2013

0.5.2

0.5.2.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

27/08 2013

0.5.1

0.5.1.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

01/08 2013

0.5.0

0.5.0.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

31/07 2013

0.4.1

0.4.1.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

06/06 2013

0.4.0

0.4.0.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

07/05 2013

0.3.1

0.3.1.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

30/04 2013

0.3.0

0.3.0.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

27/04 2013

0.2.6

0.2.6.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

26/04 2013

0.2.5

0.2.5.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

21/03 2013

0.2.4

0.2.4.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

16/03 2013

0.2.3

0.2.3.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

15/03 2013

0.2.2

0.2.2.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

15/03 2013

0.2.1

0.2.1.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

15/03 2013

0.2.0

0.2.0.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

21/02 2013

v0.1.12

0.1.12.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

18/02 2013

v0.1.11

0.1.11.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

18/02 2013

0.1.10

0.1.10.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

06/02 2013

v0.1.9

0.1.9.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

05/02 2013

v0.1.8

0.1.8.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

24/01 2013

v0.1.7

0.1.7.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

23/01 2013

v0.1.6

0.1.6.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

16/01 2013

v0.1.5

0.1.5.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

16/01 2013

v0.1.4

0.1.4.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

12/01 2013

v0.1.3

0.1.3.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

10/01 2013

v0.1.2

0.1.2.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

10/01 2013

v0.1.1

0.1.1.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

MIT

The Requires

 

The Development Requires

laravel twig

10/01 2013

0.1.0

0.1.0.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

BSD

The Requires

 

The Development Requires

laravel twig

22/12 2012

v0.0.7

0.0.7.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

BSD

The Requires

 

laravel twig

06/12 2012

v0.0.6

0.0.6.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

BSD

The Requires

 

laravel twig

06/12 2012

v0.0.5

0.0.5.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

BSD

The Requires

 

laravel twig

06/12 2012

v0.0.4

0.0.4.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

BSD

The Requires

 

laravel twig

30/11 2012

v0.0.3

0.0.3.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

BSD

The Requires

 

laravel twig

27/11 2012

v0.0.2

0.0.2.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

BSD

The Requires

 

laravel twig

27/11 2012

v0.0.1

0.0.1.0

Adds the power of Twig to Illuminate / Laravel 4

  Sources   Download

BSD

The Requires

 

laravel twig