[Form] Changed component to use the Intl component
This commit is contained in:
parent
5917a2e0cb
commit
0c1fe395e5
@ -12,6 +12,7 @@
|
|||||||
namespace Symfony\Component\Form\Extension\Core\Type;
|
namespace Symfony\Component\Form\Extension\Core\Type;
|
||||||
|
|
||||||
use Symfony\Component\Form\AbstractType;
|
use Symfony\Component\Form\AbstractType;
|
||||||
|
use Symfony\Component\Intl\Intl;
|
||||||
use Symfony\Component\Locale\Locale;
|
use Symfony\Component\Locale\Locale;
|
||||||
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
|
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
|
||||||
|
|
||||||
@ -23,7 +24,7 @@ class CountryType extends AbstractType
|
|||||||
public function setDefaultOptions(OptionsResolverInterface $resolver)
|
public function setDefaultOptions(OptionsResolverInterface $resolver)
|
||||||
{
|
{
|
||||||
$resolver->setDefaults(array(
|
$resolver->setDefaults(array(
|
||||||
'choices' => Locale::getDisplayCountries(\Locale::getDefault()),
|
'choices' => Intl::getRegionBundle()->getCountryNames(\Locale::getDefault()),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
namespace Symfony\Component\Form\Extension\Core\Type;
|
namespace Symfony\Component\Form\Extension\Core\Type;
|
||||||
|
|
||||||
use Symfony\Component\Form\AbstractType;
|
use Symfony\Component\Form\AbstractType;
|
||||||
|
use Symfony\Component\Intl\Intl;
|
||||||
use Symfony\Component\Locale\Locale;
|
use Symfony\Component\Locale\Locale;
|
||||||
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
|
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
|
||||||
|
|
||||||
@ -23,7 +24,7 @@ class LanguageType extends AbstractType
|
|||||||
public function setDefaultOptions(OptionsResolverInterface $resolver)
|
public function setDefaultOptions(OptionsResolverInterface $resolver)
|
||||||
{
|
{
|
||||||
$resolver->setDefaults(array(
|
$resolver->setDefaults(array(
|
||||||
'choices' => Locale::getDisplayLanguages(\Locale::getDefault()),
|
'choices' => Intl::getLanguageBundle()->getLanguageNames(\Locale::getDefault()),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
namespace Symfony\Component\Form\Extension\Core\Type;
|
namespace Symfony\Component\Form\Extension\Core\Type;
|
||||||
|
|
||||||
use Symfony\Component\Form\AbstractType;
|
use Symfony\Component\Form\AbstractType;
|
||||||
|
use Symfony\Component\Intl\Intl;
|
||||||
use Symfony\Component\Locale\Locale;
|
use Symfony\Component\Locale\Locale;
|
||||||
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
|
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
|
||||||
|
|
||||||
@ -23,7 +24,7 @@ class LocaleType extends AbstractType
|
|||||||
public function setDefaultOptions(OptionsResolverInterface $resolver)
|
public function setDefaultOptions(OptionsResolverInterface $resolver)
|
||||||
{
|
{
|
||||||
$resolver->setDefaults(array(
|
$resolver->setDefaults(array(
|
||||||
'choices' => Locale::getDisplayLocales(\Locale::getDefault()),
|
'choices' => Intl::getLocaleBundle()->getLocaleNames(\Locale::getDefault()),
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,18 +11,24 @@
|
|||||||
|
|
||||||
namespace Symfony\Component\Form\Tests\Extension\Core\Type;
|
namespace Symfony\Component\Form\Tests\Extension\Core\Type;
|
||||||
|
|
||||||
|
use Symfony\Component\Intl\Intl;
|
||||||
|
|
||||||
abstract class LocalizedTestCase extends TypeTestCase
|
abstract class LocalizedTestCase extends TypeTestCase
|
||||||
{
|
{
|
||||||
protected function setUp()
|
protected function setUp()
|
||||||
{
|
{
|
||||||
parent::setUp();
|
parent::setUp();
|
||||||
|
|
||||||
if (!class_exists('Symfony\Component\Locale\Locale')) {
|
if (!class_exists('Symfony\Component\Intl\Intl')) {
|
||||||
$this->markTestSkipped('The "Locale" component is not available');
|
$this->markTestSkipped('The "Intl" component is not available');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!extension_loaded('intl')) {
|
if (!Intl::isExtensionLoaded()) {
|
||||||
$this->markTestSkipped('The "intl" extension is not available');
|
$this->markTestSkipped('The "intl" extension is not available');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Intl::setDataSource(Intl::STUB);
|
||||||
|
|
||||||
|
\Locale::setDefault('en');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
"require": {
|
"require": {
|
||||||
"php": ">=5.3.3",
|
"php": ">=5.3.3",
|
||||||
"symfony/event-dispatcher": "~2.1",
|
"symfony/event-dispatcher": "~2.1",
|
||||||
"symfony/locale": "~2.0",
|
"symfony/intl": "~2.3",
|
||||||
"symfony/options-resolver": ">=2.1,<2.4-dev",
|
"symfony/options-resolver": ">=2.1,<2.4-dev",
|
||||||
"symfony/property-access": ">=2.2,<2.4-dev"
|
"symfony/property-access": ">=2.2,<2.4-dev"
|
||||||
},
|
},
|
||||||
|
Reference in New Issue
Block a user