Index: docs/ref/contrib/localflavor.txt
===================================================================
--- docs/ref/contrib/localflavor.txt (revision 16515)
+++ docs/ref/contrib/localflavor.txt (working copy)
@@ -44,8 +44,10 @@
* Canada_
* Chile_
* China_
+ * Colombia_
* Croatia_
* Czech_
+ * Ecuador_
* Finland_
* France_
* Germany_
@@ -98,8 +100,10 @@
.. _Canada: `Canada (ca)`_
.. _Chile: `Chile (cl)`_
.. _China: `China (cn)`_
+.. _Colombia: `Colombia (co)`_
.. _Croatia: `Croatia (hr)`_
.. _Czech: `Czech (cz)`_
+.. _Ecuador: `Ecuador (ec)`_
.. _Finland: `Finland (fi)`_
.. _France: `France (fr)`_
.. _Germany: `Germany (de)`_
@@ -392,6 +396,13 @@
Valid formats are like 1XXXXXXXXXX, where X is digit.
The second digit could only be 3, 5 and 8.
+Colombia (``co``)
+=================
+
+.. class:: co.forms.CoDepartmentSelect
+
+ A ``Select`` widget that uses a list of Colombian departments as its choices.
+
Croatia (``hr``)
================
@@ -479,6 +490,13 @@
A ``Select`` widget that uses a list of Czech regions as its choices.
+Ecuador (``ec``)
+================
+
+.. class:: ec.forms.EcProvinceSelect
+
+ A ``Select`` widget that uses a list of Ecuatorian provinces as its choices.
+
Finland (``fi``)
================
Index: tests/regressiontests/forms/tests/__init__.py
===================================================================
--- tests/regressiontests/forms/tests/__init__.py (revision 16515)
+++ tests/regressiontests/forms/tests/__init__.py (working copy)
@@ -21,8 +21,10 @@
CHLocalFlavorTests,
CLLocalFlavorTests,
CNLocalFlavorTests,
+ COLocalFlavorTests,
CZLocalFlavorTests,
DELocalFlavorTests,
+ ECLocalFlavorTests,
ESLocalFlavorTests,
FILocalFlavorTests,
FRLocalFlavorTests,
Index: tests/regressiontests/forms/localflavor/co.py
===================================================================
--- tests/regressiontests/forms/localflavor/co.py (revision 0)
+++ tests/regressiontests/forms/localflavor/co.py (revision 0)
@@ -0,0 +1,43 @@
+from django.contrib.localflavor.co.forms import CODepartmentSelect
+
+from utils import LocalFlavorTestCase
+
+class COLocalFlavorTests(LocalFlavorTestCase):
+ def test_CODepartmentSelect(self):
+ d = CODepartmentSelect()
+ out = u''''''
+ self.assertEqual(d.render('department', 'COR'), out)
Index: tests/regressiontests/forms/localflavor/ec.py
===================================================================
--- tests/regressiontests/forms/localflavor/ec.py (revision 0)
+++ tests/regressiontests/forms/localflavor/ec.py (revision 0)
@@ -0,0 +1,34 @@
+from django.contrib.localflavor.ec.forms import ECProvinceSelect
+
+from utils import LocalFlavorTestCase
+
+class ECLocalFlavorTests(LocalFlavorTestCase):
+ def test_ECProvinceSelect(self):
+ p = ECProvinceSelect()
+ out = u''''''
+ self.assertEqual(p.render('province', 'U'), out)
Index: tests/regressiontests/forms/localflavortests.py
===================================================================
--- tests/regressiontests/forms/localflavortests.py (revision 16515)
+++ tests/regressiontests/forms/localflavortests.py (working copy)
@@ -9,8 +9,10 @@
from localflavor.cl import CLLocalFlavorTests
from localflavor.cz import CZLocalFlavorTests
from localflavor.cn import CNLocalFlavorTests
+from localflavor.co import COLocalFlavorTests
from localflavor.de import DELocalFlavorTests
from localflavor.es import ESLocalFlavorTests
+from localflavor.ec import ECLocalFlavorTests
from localflavor.fi import FILocalFlavorTests
from localflavor.fr import FRLocalFlavorTests
from localflavor.gb import GBLocalFlavorTests
Index: django/contrib/localflavor/ec/__init__.py
===================================================================
Index: django/contrib/localflavor/ec/ec_provinces.py
===================================================================
--- django/contrib/localflavor/ec/ec_provinces.py (revision 0)
+++ django/contrib/localflavor/ec/ec_provinces.py (revision 0)
@@ -0,0 +1,35 @@
+# -*- coding: utf-8 -*-
+"""
+A list of Ecuador departaments as `choices` in a
+formfield.
+
+This exists in this standalone file so that it's only
+imported into memory when explicitly needed.
+"""
+
+PROVINCE_CHOICES = (
+ ('A', u'Azuay'),
+ ('B', u'Bolívar'),
+ ('F', u'Cañar'),
+ ('C', u'Carchi'),
+ ('X', u'Cotopaxi'),
+ ('H', u'Chimborazo'),
+ ('O', u'El Oro'),
+ ('E', u'Esmeraldas'),
+ ('W', u'Galápagos'),
+ ('G', u'Guayas'),
+ ('I', u'Imbabura'),
+ ('L', u'Loja'),
+ ('R', u'Los Ríos'),
+ ('M', u'Manabí'),
+ ('S', u'Morona Santiago'),
+ ('N', u'Napo'),
+ ('D', u'Orellana'),
+ ('Y', u'Pastaza'),
+ ('P', u'Pichincha'),
+ ('SE', u'Santa Elena'),
+ ('SD', u'Sto. Domingo De Los Tsáchilas'),
+ ('U', u'Sucumbíos'),
+ ('T', u'Tungurahua'),
+ ('Z', u'Zamora Chinchipe'),
+)
Index: django/contrib/localflavor/ec/forms.py
===================================================================
--- django/contrib/localflavor/ec/forms.py (revision 0)
+++ django/contrib/localflavor/ec/forms.py (revision 0)
@@ -0,0 +1,13 @@
+"""
+Ecuador-specific form helpers.
+"""
+
+from django.forms.fields import Select
+
+class ECProvinceSelect(Select):
+ """
+ A Select widget that uses a list of Ecuador provinces as its choices.
+ """
+ def __init__(self, attrs=None):
+ from ec_provinces import PROVINCE_CHOICES
+ super(ECProvinceSelect, self).__init__(choices=PROVINCE_CHOICES)
Index: django/contrib/localflavor/co/__init__.py
===================================================================
Index: django/contrib/localflavor/co/forms.py
===================================================================
--- django/contrib/localflavor/co/forms.py (revision 0)
+++ django/contrib/localflavor/co/forms.py (revision 0)
@@ -0,0 +1,13 @@
+"""
+Colombian-specific form helpers.
+"""
+
+from django.forms.fields import Select
+
+class CODepartmentSelect(Select):
+ """
+ A Select widget that uses a list of Colombian states as its choices.
+ """
+ def __init__(self, attrs=None):
+ from co_departments import DEPARTMENT_CHOICES
+ super(CODepartmentSelect, self).__init__(choices=DEPARTMENT_CHOICES)
Index: django/contrib/localflavor/co/co_departments.py
===================================================================
--- django/contrib/localflavor/co/co_departments.py (revision 0)
+++ django/contrib/localflavor/co/co_departments.py (revision 0)
@@ -0,0 +1,44 @@
+# -*- coding: utf-8 -*-
+"""
+A list of Colombian departaments as `choices` in a
+formfield.
+
+This exists in this standalone file so that it's only
+imported into memory when explicitly needed.
+"""
+
+DEPARTMENT_CHOICES = (
+ ('AMA', u'Amazonas'),
+ ('ANT', u'Antioquia'),
+ ('ARA', u'Arauca'),
+ ('ATL', u'Atlántico'),
+ ('DC', u'Bogotá'),
+ ('BOL', u'Bolívar'),
+ ('BOY', u'Boyacá'),
+ ('CAL', u'Caldas'),
+ ('CAQ', u'Caquetá'),
+ ('CAS', u'Casanare'),
+ ('CAU', u'Cauca'),
+ ('CES', u'Cesar'),
+ ('COR', u'Córdoba'),
+ ('CUN', u'Cundinamarca'),
+ ('CHO', u'Chocó'),
+ ('GUA', u'Guainía'),
+ ('GUV', u'Guaviare'),
+ ('HUI', u'Huila'),
+ ('LAG', u'La Guajira'),
+ ('MAG', u'Magdalena'),
+ ('MET', u'Meta'),
+ ('NAR', u'Nariño'),
+ ('NSA', u'Norte De Santander'),
+ ('PUT', u'Putumayo'),
+ ('QUI', u'Quindío'),
+ ('RIS', u'Risaralda'),
+ ('SAP', u'San Andrés, Providencia y Santa Catalina'),
+ ('SAN', u'Santander'),
+ ('SUC', u'Sucre'),
+ ('TOL', u'Tolima'),
+ ('VAC', u'Valle Del Cauca'),
+ ('VAU', u'Vaupés'),
+ ('VID', u'Vichada'),
+)