2017 © Pedro PelĂĄez
 

library translator

Simple and intelligent system for translate appliaction

image

kappa/translator

Simple and intelligent system for translate appliaction

  • Sunday, January 27, 2013
  • by Budry
  • Repository
  • 1 Watchers
  • 0 Stars
  • 11 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

Kappa:Translator

Nette Translator (c) Patrik Votoček (Vrtak-CZ), 2010 (http://patrik.votocek.cz), (*1)

Note

This is short manual how to use Nette Translator in the newest Nette 2.0 in its most simple version. No need to edit or operate with .po/.mo files required. Written 2012-02-10., (*2)

Actual info/manual: http://wiki.nette.org/cs/cookbook/zprovozneni-prekladace-nettetranslator, (*3)

1. Enable Translator

app/config/services.neon:, (*4)

services:
    translator:
        factory: \Kappa\Localization\Translator\Gettext::getTranslator
        setup:
            - addFile(%appDir%/lang, front) # at leas one file required
            - Kappa\Localization\Translator\Panel::register # panel to debug bar

2. Use in templates

template, (*5)

{_"Dog"}
{_"Cat", $number} // for plural, default are Czech plurals: 1, 2-4, 5+

3. Use in forms


/** * @autowire * @var \Kappa\Localization\Translator\Gettext */ protected $translator; createComponentMyForm () { $form = new Form; // ... $form->setTranslator($this->translator); }

4. Use in Presenters

app/[*Module/ (presenters/)]BasePresenter.php, (*6)

/**
 * @persistent
 */
public $lang;

/**
 * @autowire
 * @var \Kappa\Localization\Translator\Gettext
 */
protected $translator;

/**
 * @autowire
 * @var \Nette\Http\Request
 */
protected $request;

public function startup()
{
    parent::startup();
    if (!$this->lang)
    {
        $lang = $this->request->detectLanguage(array('en', 'cs')) ?: 'cs';
        $this->redirectUrl($lang);
    }
}

/**
 * @param null $class
 * @return \Nette\Templating\ITemplate
 */
public function createTemplate($class = NULL)
{
    $template = parent::createTemplate($class);
    $this->translator->setLang($this->lang); // set lang
    $template->setTranslator($this->translator);
    return $template;
}

Route:

$router[] = new Route('<lang=cs>/<presenter>/<action>[/<id>]', 'Homepage:default');

The Versions

27/01 2013

dev-master

9999999-dev https://github.com/Kappa-org/Translator

Simple and intelligent system for translate appliaction

  Sources   Download

The Requires

 

framework localization translate nette gettext kappa

27/01 2013

dev-mp

dev-mp https://github.com/Kappa-org/Translator

Simple and intelligent system for translate appliaction

  Sources   Download

The Requires

 

framework localization translate nette gettext kappa