diff --git a/flatfilecms/events.py b/flatfilecms/events.py index 409d94f..7516fe1 100644 --- a/flatfilecms/events.py +++ b/flatfilecms/events.py @@ -1,8 +1,15 @@ +from babel import dates +from datetime import date + from pyramid.events import subscriber from pyramid.events import BeforeRender @subscriber(BeforeRender) def add_global(event): - import datetime - event['datetime'] = datetime + dates.LC_TIME = event['request'].locale_name + event['globals'] = { + 'format_date': dates.format_date, + 'format_datetime': dates.format_datetime, + 'today': date.today(), + } diff --git a/flatfilecms/templates/blogposts.jinja2 b/flatfilecms/templates/blogposts.jinja2 index 197ebac..193b9af 100644 --- a/flatfilecms/templates/blogposts.jinja2 +++ b/flatfilecms/templates/blogposts.jinja2 @@ -11,8 +11,8 @@ Читать {% endfor %} diff --git a/flatfilecms/templates/header.jinja2 b/flatfilecms/templates/header.jinja2 index cd000ec..4b47c96 100644 --- a/flatfilecms/templates/header.jinja2 +++ b/flatfilecms/templates/header.jinja2 @@ -56,8 +56,8 @@

{{title}}

{%- if description %}

{{description}}

{% endif %}
- {%- if published %}

{{published}}

{% endif %} - {%- if updated %}

{{updated}}

{% endif %} + {%- if published %}

{{globals.format_date(published, format='long')}}

{% endif %} + {%- if updated %}

{{globals.format_date(updated, format='long')}}

{% endif %}
diff --git a/tests/conftest.py b/tests/conftest.py new file mode 100644 index 0000000..98b334e --- /dev/null +++ b/tests/conftest.py @@ -0,0 +1,9 @@ +import pytest + + +@pytest.fixture +def fake_request(): + from pyramid.testing import DummyRequest + return DummyRequest() + + diff --git a/tests/test_events.py b/tests/test_events.py new file mode 100644 index 0000000..9439091 --- /dev/null +++ b/tests/test_events.py @@ -0,0 +1,7 @@ +def test_globals(fake_request): + from flatfilecms.events import add_global + event = {'request': fake_request} + add_global(event) + assert 'globals' in event + assert 'format_date' in event['globals'] + assert 'format_datetime' in event['globals'] diff --git a/tests/test_pages.py b/tests/test_pages.py index f871353..8e1308d 100644 --- a/tests/test_pages.py +++ b/tests/test_pages.py @@ -15,12 +15,6 @@ def pages(current_directory): str(current_directory / 'data')) -@pytest.fixture -def fake_request(): - from pyramid.testing import DummyRequest - return DummyRequest() - - @pytest.fixture def config(current_directory): from pyramid.testing import testConfig