From 6b6f97f7a86bbbccd4911d401b26fa803804b1ae Mon Sep 17 00:00:00 2001 From: Steve Baker Date: Mon, 25 Mar 2013 15:06:48 +1300 Subject: [PATCH] parse_isotime filter to parse a date string. This then allows the resulting date value to be piped to one of the standard django date/time format filters This is identical to oslo timeutils parse_isotime, but annotated with @register.filter Required for blueprint: heat-ui Change-Id: Ibecca77d50bb5c0df59e07e9572069215229f60a --- horizon/utils/filters.py | 16 ++++++++++++++++ run_tests.sh | 2 +- tools/pip-requires | 1 + 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/horizon/utils/filters.py b/horizon/utils/filters.py index 95b9ae03e..b47a0cf38 100644 --- a/horizon/utils/filters.py +++ b/horizon/utils/filters.py @@ -14,9 +14,25 @@ # License for the specific language governing permissions and limitations # under the License. +import iso8601 + from django.template.defaultfilters import register @register.filter def replace_underscores(string): return string.replace("_", " ") + + +@register.filter +def parse_isotime(timestr): + """ + This duplicates oslo timeutils parse_isotime but with a + @register.filter annotation. + """ + try: + return iso8601.parse_date(timestr) + except iso8601.ParseError as e: + raise ValueError(e.message) + except TypeError as e: + raise ValueError(e.message) diff --git a/run_tests.sh b/run_tests.sh index 2b11ea083..eec9c3729 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -6,7 +6,7 @@ set -o errexit # Increment me any time the environment should be rebuilt. # This includes dependncy changes, directory renames, etc. # Simple integer secuence: 1, 2, 3... -environment_version=32 +environment_version=33 #--------------------------------------------------------# function usage { diff --git a/tools/pip-requires b/tools/pip-requires index 86409e73b..7361491ed 100644 --- a/tools/pip-requires +++ b/tools/pip-requires @@ -5,6 +5,7 @@ pbr>=0.5,<0.6 Django>=1.4,<1.6 django_compressor django_openstack_auth>=1.0.8 +iso8601>=0.1.4 netaddr python-cinderclient>=1.0.2,<2.0.0 python-glanceclient<2