bertrandom / timezone-bundle
Readable Timezone Field Type for Symfony2
Installs: 12 513
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 3
Type:symfony-bundle
Requires
- php: >=5.3.2
- symfony/framework-bundle: ~2.1
This package is not auto-updated.
Last update: 2024-11-17 03:11:24 UTC
README
The stock Symfony2 timezone field type organizes all of the Olson Timezone Identifiers in PHP by Continent and displays them to the user. This dropdown is pretty bad from a UI perspective. This bundles provides an alternate dropdown that is similar to the one found when choosing a time zone on a Windows computer.
This is my first symfony2 bundle, feedback welcome!
Installation
Edit your deps
file and add the following:
[BertTimezoneBundle]
git=git://github.com/bertrandom/BertTimezoneBundle.git
target=/bundles/Bert/TimezoneBundle
Run the vendors install script:
bin/vendors install
This will pull down the latest version of this bundle from github. Alternatively you can just put the files in /vendor/bundles/Bert/TimezoneBundle
Next, add the namespace to the end of the registerNamespaces
bit in autoload.php
:
$loader->registerNamespaces(array( 'Symfony' => array(__DIR__.'/../vendor/symfony/src', __DIR__.'/../vendor/bundles'), 'Sensio' => __DIR__.'/../vendor/bundles', . . . 'Bert' => __DIR__.'/../vendor/bundles', ));
Add the bundle in AppKernel.php
:
$bundles = array( new Symfony\Bundle\FrameworkBundle\FrameworkBundle(), new Symfony\Bundle\SecurityBundle\SecurityBundle(), . . . new Bert\TimezoneBundle\BertTimezoneBundle(), );
That's it, the field type should be ready to use.
Usage
Simply use the field type readabletimezone
in your form builder, e.g.:
$builder ->add('username') ->add('plainPassword', 'repeated', array('type' => 'password')) ->add('firstname') ->add('lastname') ->add('email', 'email') ->add('timezone', 'readabletimezone') ;
Data
The data is taken from the work of two blog posts on the subject of readable timezones:
Presenting a list of Timezones to the user
Olson Time Zone Database to Standard Windows Time Zone v0.1
I've made mirrors of these two posts and put them in Resources/source/mirrors/
in case the blog posts go away.
The timezone data itself can be found in Resources/config/timezones.yml
Credits
Bertrand Fan (bertrand@fan.net
)
Timezone data provided by Avi Block and Tim Davis, see Data section for more details.