tezielab/intl-bundle

A Symfony bundle for translations

This package's canonical repository appears to be gone and the package has been frozen as a result.

Installs: 3

Dependents: 0

Suggesters: 0

Security: 0

Type:symfony-bundle

1.0.0 2022-07-26 14:30 UTC

This package is auto-updated.

Last update: 2024-06-26 18:40:40 UTC


README

Install using composer composer require tezielab/intl-bundle

What is this repository for?

  • Provides a page to translate all translations that exist in the translation files
  • A command to read all the translation files tezielab:intl:read [--domain DOMAIN] [--locale LOCALE] [--as_default AS_DEFAULT]
  • A command to read all the translation files tezielab:intl:write [--domain DOMAIN] [--locale LOCALE] [--default DEFAULT]

How do I get set up?

  • Install using composer composer require tezielab/intl-bundle (The cache:clear part at the may fail, this is due to a config that does not yet exists)
  • Setup a configuration file containing some variables

    tezielab_intl:
    translation_class: App\Entity\Language\Translation
    available_languages:
      - nl
      - en
      - fr
    
  • Create an entity that extends from Tezielab\Intl\Entity\Translation (only a id field is required)

  • Create a Repository as you would usualy do but extend it from Tezielab\Intl\Repository\TranslationRepository
  • Add a route like

    tezielab_intl:
      resource: "@TezielabIntlBundle/Resources/config/routes.yaml"
      # prefix: /{_locale} # if the locale prefix is needed`
    
  • Create some translations
  • Run the command php bin/console tezielab:intl:read
  • surf to https://www.yourdomain.com/intl/translations and start translating
  • Once done, run the command php bin/console tezielab:intl:write
  • Clear the cache and enjoy the changes

What is still todo?

  • Code cleanup
  • Code fixes
  • Translation cleaning (specials chars)
  • Templating maybe
  • Styling