From: Guillaume Pellerin Date: Mon, 28 Mar 2016 13:52:52 +0000 (+0200) Subject: rename utils to tags X-Git-Tag: 1.6b~1^2~7 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=b875a978b09b103905e9d42fb6b213071d8fbfda;p=telemeta.git rename utils to tags --- diff --git a/doc/devel/telemeta.templatetags.rst b/doc/devel/telemeta.templatetags.rst index 4b1d38f9..1dcab63b 100644 --- a/doc/devel/telemeta.templatetags.rst +++ b/doc/devel/telemeta.templatetags.rst @@ -12,10 +12,10 @@ telemeta.templatetags.paginator module :undoc-members: :show-inheritance: -telemeta.templatetags.telemeta_utils module +telemeta.templatetags.telemeta_tags module ------------------------------------------- -.. automodule:: telemeta.templatetags.telemeta_utils +.. automodule:: telemeta.templatetags.telemeta_tags :members: :undoc-members: :show-inheritance: diff --git a/telemeta/templates/search/addplaylist.html b/telemeta/templates/search/addplaylist.html index 8f1e552d..0d184bf0 100644 --- a/telemeta/templates/search/addplaylist.html +++ b/telemeta/templates/search/addplaylist.html @@ -1,5 +1,5 @@ {% extends 'telemeta/base.html' %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block title %} diff --git a/telemeta/templates/search/advanceSearch.html b/telemeta/templates/search/advanceSearch.html index 03555384..5285222c 100644 --- a/telemeta/templates/search/advanceSearch.html +++ b/telemeta/templates/search/advanceSearch.html @@ -1,5 +1,5 @@ {% extends 'telemeta/base.html' %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% load bootstrap_pagination %} diff --git a/telemeta/templates/search/confirmation_add_playslist.html b/telemeta/templates/search/confirmation_add_playslist.html index b5438e74..0804447e 100644 --- a/telemeta/templates/search/confirmation_add_playslist.html +++ b/telemeta/templates/search/confirmation_add_playslist.html @@ -1,5 +1,5 @@ {% extends 'telemeta/base.html' %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block title %} diff --git a/telemeta/templates/search/filters.html b/telemeta/templates/search/filters.html index 54a54d8c..c2495f7b 100644 --- a/telemeta/templates/search/filters.html +++ b/telemeta/templates/search/filters.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %}
diff --git a/telemeta/templates/search/mediacollection_listhaystack.html b/telemeta/templates/search/mediacollection_listhaystack.html index b29527de..621fac94 100644 --- a/telemeta/templates/search/mediacollection_listhaystack.html +++ b/telemeta/templates/search/mediacollection_listhaystack.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if page.object_list %} diff --git a/telemeta/templates/search/mediaitem_listhaystack.html b/telemeta/templates/search/mediaitem_listhaystack.html index 3270a04f..47bf9da0 100644 --- a/telemeta/templates/search/mediaitem_listhaystack.html +++ b/telemeta/templates/search/mediaitem_listhaystack.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if page.object_list %} diff --git a/telemeta/templates/search/mediaresource_listhaystack.html b/telemeta/templates/search/mediaresource_listhaystack.html index 44de7db7..533c32f0 100644 --- a/telemeta/templates/search/mediaresource_listhaystack.html +++ b/telemeta/templates/search/mediaresource_listhaystack.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if page.object_list %} diff --git a/telemeta/templates/search/search.html b/telemeta/templates/search/search.html index 8a2193c0..4cca777e 100644 --- a/telemeta/templates/search/search.html +++ b/telemeta/templates/search/search.html @@ -1,5 +1,5 @@ {% extends 'telemeta/base.html' %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% load bootstrap_pagination %} diff --git a/telemeta/templates/telemeta/admin.html b/telemeta/templates/telemeta/admin.html index d71c90bb..f2232cf1 100644 --- a/telemeta/templates/telemeta/admin.html +++ b/telemeta/templates/telemeta/admin.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block stylesheets %} diff --git a/telemeta/templates/telemeta/admin_enumerations.html b/telemeta/templates/telemeta/admin_enumerations.html index 4f45f190..4d0236a6 100644 --- a/telemeta/templates/telemeta/admin_enumerations.html +++ b/telemeta/templates/telemeta/admin_enumerations.html @@ -1,5 +1,5 @@ {% extends "telemeta/admin.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block title %} diff --git a/telemeta/templates/telemeta/admin_instruments.html b/telemeta/templates/telemeta/admin_instruments.html index 5a3fa5f3..682393ef 100644 --- a/telemeta/templates/telemeta/admin_instruments.html +++ b/telemeta/templates/telemeta/admin_instruments.html @@ -1,5 +1,5 @@ {% extends "telemeta/admin.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block tabcontents %} diff --git a/telemeta/templates/telemeta/admin_users.html b/telemeta/templates/telemeta/admin_users.html index 5a277a9f..60591b37 100644 --- a/telemeta/templates/telemeta/admin_users.html +++ b/telemeta/templates/telemeta/admin_users.html @@ -1,5 +1,5 @@ {% extends "telemeta/admin.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block tabcontents %} diff --git a/telemeta/templates/telemeta/base.html b/telemeta/templates/telemeta/base.html index 5bc2dba4..69397cc3 100644 --- a/telemeta/templates/telemeta/base.html +++ b/telemeta/templates/telemeta/base.html @@ -1,6 +1,6 @@ {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load bootstrap3 %} {% settings_value 'INSTALLED_APPS' as INSTALLED_APPS %} {% if 'googletools' in INSTALLED_APPS %} diff --git a/telemeta/templates/telemeta/collection.m3u b/telemeta/templates/telemeta/collection.m3u index 00ad96da..0203776a 100644 --- a/telemeta/templates/telemeta/collection.m3u +++ b/telemeta/templates/telemeta/collection.m3u @@ -1,3 +1,3 @@ -#EXTM3U{% load telemeta_utils %}{% for item in collection.items.all %} +#EXTM3U{% load telemeta_tags %}{% for item in collection.items.all %} #EXTINF:{{ item.get_duration }},{{ item }} http://{{ host }}{% url "telemeta-item-export" item.public_id,"mp3" %}{% endfor %} diff --git a/telemeta/templates/telemeta/collection_add.html b/telemeta/templates/telemeta/collection_add.html index ac66b00e..1118ecdf 100644 --- a/telemeta/templates/telemeta/collection_add.html +++ b/telemeta/templates/telemeta/collection_add.html @@ -1,6 +1,6 @@ {% extends "telemeta/collection_edit.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block title %} Collection : {% trans "New" %} diff --git a/telemeta/templates/telemeta/collection_detail.html b/telemeta/templates/telemeta/collection_detail.html index 361e456d..82eb8418 100644 --- a/telemeta/templates/telemeta/collection_detail.html +++ b/telemeta/templates/telemeta/collection_detail.html @@ -1,6 +1,6 @@ {% extends "telemeta/base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block head_title %}{% trans "Collection" %}{{collection|prepend:' : '}} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/collection_detail_dc.html b/telemeta/templates/telemeta/collection_detail_dc.html index cda7b9c8..23ae8412 100644 --- a/telemeta/templates/telemeta/collection_detail_dc.html +++ b/telemeta/templates/telemeta/collection_detail_dc.html @@ -1,5 +1,5 @@ {% extends "telemeta/collection_detail.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block content %} diff --git a/telemeta/templates/telemeta/collection_edit.html b/telemeta/templates/telemeta/collection_edit.html index 42f37018..823f5e29 100644 --- a/telemeta/templates/telemeta/collection_edit.html +++ b/telemeta/templates/telemeta/collection_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/collection_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load bootstrap3 %} {% block title %} diff --git a/telemeta/templates/telemeta/collection_list.html b/telemeta/templates/telemeta/collection_list.html index d05d9c4e..36dccf2a 100644 --- a/telemeta/templates/telemeta/collection_list.html +++ b/telemeta/templates/telemeta/collection_list.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% load bootstrap_pagination %} diff --git a/telemeta/templates/telemeta/collection_related_edit.html b/telemeta/templates/telemeta/collection_related_edit.html index 48f3e0f4..1c586bb1 100644 --- a/telemeta/templates/telemeta/collection_related_edit.html +++ b/telemeta/templates/telemeta/collection_related_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/collection_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block extra_javascript %}{% endblock %} diff --git a/telemeta/templates/telemeta/collection_xspf.xml b/telemeta/templates/telemeta/collection_xspf.xml index df3e60b1..c8b2758f 100644 --- a/telemeta/templates/telemeta/collection_xspf.xml +++ b/telemeta/templates/telemeta/collection_xspf.xml @@ -1,5 +1,5 @@ {% extends "telemeta/base_xspf.xml" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block listinfo %} {% with collection.to_dublincore.flatten as dc %} diff --git a/telemeta/templates/telemeta/country_info.html b/telemeta/templates/telemeta/country_info.html index bde7b843..9a4b32e3 100644 --- a/telemeta/templates/telemeta/country_info.html +++ b/telemeta/templates/telemeta/country_info.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %}

{{ country }}

diff --git a/telemeta/templates/telemeta/flatpage.html b/telemeta/templates/telemeta/flatpage.html index 6b2b55f4..46ef0fe5 100644 --- a/telemeta/templates/telemeta/flatpage.html +++ b/telemeta/templates/telemeta/flatpage.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block content %} {{ page_content|render_flatpage }} {% endblock %} diff --git a/telemeta/templates/telemeta/geo_continents.html b/telemeta/templates/telemeta/geo_continents.html index 5435281c..c9ac3f7d 100644 --- a/telemeta/templates/telemeta/geo_continents.html +++ b/telemeta/templates/telemeta/geo_continents.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block head_title %}{% trans "Geographic Navigator" %} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/geo_countries.html b/telemeta/templates/telemeta/geo_countries.html index 6d81e04b..b41e031b 100644 --- a/telemeta/templates/telemeta/geo_countries.html +++ b/telemeta/templates/telemeta/geo_countries.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block head_title %}{{ continent }} - {% trans "Geographic Navigator" %} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/geo_country_collections.html b/telemeta/templates/telemeta/geo_country_collections.html index ec42fbfb..00ef80a9 100644 --- a/telemeta/templates/telemeta/geo_country_collections.html +++ b/telemeta/templates/telemeta/geo_country_collections.html @@ -1,6 +1,6 @@ {% extends "telemeta/base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load bootstrap_pagination %} {% block head_title %}{{ country }} - {% trans "Geographic Navigator" %} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/geo_country_items.html b/telemeta/templates/telemeta/geo_country_items.html index 08e5dce4..81a4c9d9 100644 --- a/telemeta/templates/telemeta/geo_country_items.html +++ b/telemeta/templates/telemeta/geo_country_items.html @@ -1,6 +1,6 @@ {% extends "telemeta/base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load bootstrap_pagination %} {% block head_title %}{{ country }} - {% trans "Geographic Navigator" %} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/hello_world.html b/telemeta/templates/telemeta/hello_world.html index ef6efa2f..997e01d7 100644 --- a/telemeta/templates/telemeta/hello_world.html +++ b/telemeta/templates/telemeta/hello_world.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% load bootstrap_pagination %} diff --git a/telemeta/templates/telemeta/home.html b/telemeta/templates/telemeta/home.html index 66bd821e..38564a39 100644 --- a/telemeta/templates/telemeta/home.html +++ b/telemeta/templates/telemeta/home.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block content %} diff --git a/telemeta/templates/telemeta/inc/chat_room.html b/telemeta/templates/telemeta/inc/chat_room.html index 07432961..a0874d26 100644 --- a/telemeta/templates/telemeta/inc/chat_room.html +++ b/telemeta/templates/telemeta/inc/chat_room.html @@ -1,5 +1,5 @@ {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} diff --git a/telemeta/templates/telemeta/inc/children_list.html b/telemeta/templates/telemeta/inc/children_list.html index 7cc392d5..5f3244b0 100644 --- a/telemeta/templates/telemeta/inc/children_list.html +++ b/telemeta/templates/telemeta/inc/children_list.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if children %} diff --git a/telemeta/templates/telemeta/inc/collection_list.html b/telemeta/templates/telemeta/inc/collection_list.html index da275b01..a2ecfb8e 100644 --- a/telemeta/templates/telemeta/inc/collection_list.html +++ b/telemeta/templates/telemeta/inc/collection_list.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if collections %} diff --git a/telemeta/templates/telemeta/inc/collection_related.html b/telemeta/templates/telemeta/inc/collection_related.html index 997d9953..c00c6297 100644 --- a/telemeta/templates/telemeta/inc/collection_related.html +++ b/telemeta/templates/telemeta/inc/collection_related.html @@ -1,5 +1,5 @@ {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load thumbnail %}
diff --git a/telemeta/templates/telemeta/inc/dublincore.html b/telemeta/templates/telemeta/inc/dublincore.html index 82389c34..b3f6b1eb 100644 --- a/telemeta/templates/telemeta/inc/dublincore.html +++ b/telemeta/templates/telemeta/inc/dublincore.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %}

{% trans "Dublin Core Metadata" %}

diff --git a/telemeta/templates/telemeta/inc/epub_list.html b/telemeta/templates/telemeta/inc/epub_list.html index ff890a54..1b198ec9 100644 --- a/telemeta/templates/telemeta/inc/epub_list.html +++ b/telemeta/templates/telemeta/inc/epub_list.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if children %} diff --git a/telemeta/templates/telemeta/inc/epub_preamble.html b/telemeta/templates/telemeta/inc/epub_preamble.html index 91f7b865..3f369b09 100644 --- a/telemeta/templates/telemeta/inc/epub_preamble.html +++ b/telemeta/templates/telemeta/inc/epub_preamble.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} diff --git a/telemeta/templates/telemeta/inc/mediaitem_list.html b/telemeta/templates/telemeta/inc/mediaitem_list.html index e958b4b0..b93933da 100644 --- a/telemeta/templates/telemeta/inc/mediaitem_list.html +++ b/telemeta/templates/telemeta/inc/mediaitem_list.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if items %} diff --git a/telemeta/templates/telemeta/inc/mediaitem_related.html b/telemeta/templates/telemeta/inc/mediaitem_related.html index 9fe8eb86..d06316dd 100644 --- a/telemeta/templates/telemeta/inc/mediaitem_related.html +++ b/telemeta/templates/telemeta/inc/mediaitem_related.html @@ -1,5 +1,5 @@ {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load thumbnail %}
diff --git a/telemeta/templates/telemeta/inc/mediaitem_video.html b/telemeta/templates/telemeta/inc/mediaitem_video.html index 9125f5b4..3b43cdd5 100644 --- a/telemeta/templates/telemeta/inc/mediaitem_video.html +++ b/telemeta/templates/telemeta/inc/mediaitem_video.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %}
diff --git a/telemeta/templates/telemeta/inc/module_revisions.html b/telemeta/templates/telemeta/inc/module_revisions.html index 40f8d259..d7d153b7 100644 --- a/telemeta/templates/telemeta/inc/module_revisions.html +++ b/telemeta/templates/telemeta/inc/module_revisions.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %}
diff --git a/telemeta/templates/telemeta/inc/module_searches.html b/telemeta/templates/telemeta/inc/module_searches.html index c2331859..39772437 100644 --- a/telemeta/templates/telemeta/inc/module_searches.html +++ b/telemeta/templates/telemeta/inc/module_searches.html @@ -1,4 +1,4 @@ -{% load i18n telemeta_utils saved_searches_tags %} +{% load i18n telemeta_tags saved_searches_tags %} {% most_recent_searches as searches for_user request.user %}
diff --git a/telemeta/templates/telemeta/inc/module_user_revisions.html b/telemeta/templates/telemeta/inc/module_user_revisions.html index 4acaacd5..736e30f2 100644 --- a/telemeta/templates/telemeta/inc/module_user_revisions.html +++ b/telemeta/templates/telemeta/inc/module_user_revisions.html @@ -1,5 +1,5 @@ {% extends "telemeta/inc/module_revisions.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block rss_title %} diff --git a/telemeta/templates/telemeta/inc/resource_list.html b/telemeta/templates/telemeta/inc/resource_list.html index 683b63ac..d5c15200 100644 --- a/telemeta/templates/telemeta/inc/resource_list.html +++ b/telemeta/templates/telemeta/inc/resource_list.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if object_list %} diff --git a/telemeta/templates/telemeta/inc/resource_related.html b/telemeta/templates/telemeta/inc/resource_related.html index 730d9139..ac76ebd2 100644 --- a/telemeta/templates/telemeta/inc/resource_related.html +++ b/telemeta/templates/telemeta/inc/resource_related.html @@ -1,5 +1,5 @@ {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load thumbnail %}
diff --git a/telemeta/templates/telemeta/inc/user_list.html b/telemeta/templates/telemeta/inc/user_list.html index 65e5e3ee..b1936903 100644 --- a/telemeta/templates/telemeta/inc/user_list.html +++ b/telemeta/templates/telemeta/inc/user_list.html @@ -1,5 +1,5 @@ {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} diff --git a/telemeta/templates/telemeta/lists.html b/telemeta/templates/telemeta/lists.html index feca98ea..866caf64 100644 --- a/telemeta/templates/telemeta/lists.html +++ b/telemeta/templates/telemeta/lists.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% comment "added by Killian Mary" %}{% endcomment %} diff --git a/telemeta/templates/telemeta/mediaitem_add.html b/telemeta/templates/telemeta/mediaitem_add.html index 787aec45..0fc23843 100644 --- a/telemeta/templates/telemeta/mediaitem_add.html +++ b/telemeta/templates/telemeta/mediaitem_add.html @@ -1,5 +1,5 @@ {% extends "telemeta/mediaitem_edit.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block head_title %}{% trans "Item" %}- {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/mediaitem_detail.html b/telemeta/templates/telemeta/mediaitem_detail.html index 9553a159..2fa27eb9 100644 --- a/telemeta/templates/telemeta/mediaitem_detail.html +++ b/telemeta/templates/telemeta/mediaitem_detail.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block head_title %}{% trans "Item" %} : {% if item.title %}{{ item.title }}{% else %}{{ item.public_id}}{% endif %} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/mediaitem_detail_dc.html b/telemeta/templates/telemeta/mediaitem_detail_dc.html index 75d6b78d..ba358fa8 100644 --- a/telemeta/templates/telemeta/mediaitem_detail_dc.html +++ b/telemeta/templates/telemeta/mediaitem_detail_dc.html @@ -1,5 +1,5 @@ {% extends "telemeta/mediaitem_detail.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if item %} diff --git a/telemeta/templates/telemeta/mediaitem_edit.html b/telemeta/templates/telemeta/mediaitem_edit.html index e854dace..7b3a3420 100644 --- a/telemeta/templates/telemeta/mediaitem_edit.html +++ b/telemeta/templates/telemeta/mediaitem_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/mediaitem_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load bootstrap3 %} {% block title %} diff --git a/telemeta/templates/telemeta/mediaitem_keywords_edit.html b/telemeta/templates/telemeta/mediaitem_keywords_edit.html index 31aceadf..4addb105 100644 --- a/telemeta/templates/telemeta/mediaitem_keywords_edit.html +++ b/telemeta/templates/telemeta/mediaitem_keywords_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/mediaitem_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block extra_javascript %} {% endblock %} diff --git a/telemeta/templates/telemeta/mediaitem_list.html b/telemeta/templates/telemeta/mediaitem_list.html index 01bf5df6..449ced27 100644 --- a/telemeta/templates/telemeta/mediaitem_list.html +++ b/telemeta/templates/telemeta/mediaitem_list.html @@ -1,6 +1,6 @@ {% extends "telemeta/base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load bootstrap_pagination %} {% block head_title %}{% trans "Media Items" %} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/mediaitem_performances_edit.html b/telemeta/templates/telemeta/mediaitem_performances_edit.html index 45cfeb4c..b866a93e 100644 --- a/telemeta/templates/telemeta/mediaitem_performances_edit.html +++ b/telemeta/templates/telemeta/mediaitem_performances_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/mediaitem_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block extra_javascript %}{% endblock %} diff --git a/telemeta/templates/telemeta/mediaitem_player.html b/telemeta/templates/telemeta/mediaitem_player.html index f7fbf21b..501ae0a9 100644 --- a/telemeta/templates/telemeta/mediaitem_player.html +++ b/telemeta/templates/telemeta/mediaitem_player.html @@ -1,5 +1,5 @@ {% extends "telemeta/mediaitem_detail.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} diff --git a/telemeta/templates/telemeta/mediaitem_player_contour.html b/telemeta/templates/telemeta/mediaitem_player_contour.html index b5709351..09d92fbd 100644 --- a/telemeta/templates/telemeta/mediaitem_player_contour.html +++ b/telemeta/templates/telemeta/mediaitem_player_contour.html @@ -1,5 +1,5 @@ {% extends "telemeta/mediaitem_detail.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block stylesheets %} diff --git a/telemeta/templates/telemeta/mediaitem_player_simple.html b/telemeta/templates/telemeta/mediaitem_player_simple.html index ae96620a..b86063df 100644 --- a/telemeta/templates/telemeta/mediaitem_player_simple.html +++ b/telemeta/templates/telemeta/mediaitem_player_simple.html @@ -1,5 +1,5 @@ {% extends "telemeta/mediaitem_detail.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} diff --git a/telemeta/templates/telemeta/mediaitem_related_edit.html b/telemeta/templates/telemeta/mediaitem_related_edit.html index 619a6177..fb43628a 100644 --- a/telemeta/templates/telemeta/mediaitem_related_edit.html +++ b/telemeta/templates/telemeta/mediaitem_related_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/mediaitem_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block extra_javascript %}{% endblock %} diff --git a/telemeta/templates/telemeta/mediaitem_video_player.html b/telemeta/templates/telemeta/mediaitem_video_player.html index a54c9faa..e224f43a 100644 --- a/telemeta/templates/telemeta/mediaitem_video_player.html +++ b/telemeta/templates/telemeta/mediaitem_video_player.html @@ -1,5 +1,5 @@ {% extends "telemeta/mediaitem_detail.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block extra_javascript %}{% endblock %} diff --git a/telemeta/templates/telemeta/mediaitem_xspf.xml b/telemeta/templates/telemeta/mediaitem_xspf.xml index 6d9da33e..707e6c1d 100644 --- a/telemeta/templates/telemeta/mediaitem_xspf.xml +++ b/telemeta/templates/telemeta/mediaitem_xspf.xml @@ -1,5 +1,5 @@ {% extends "telemeta/base_xspf.xml" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block tracklist %} diff --git a/telemeta/templates/telemeta/paginator.html b/telemeta/templates/telemeta/paginator.html index e47187d6..1d59d018 100644 --- a/telemeta/templates/telemeta/paginator.html +++ b/telemeta/templates/telemeta/paginator.html @@ -1,4 +1,4 @@ -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if has_previous %} diff --git a/telemeta/templates/telemeta/profile_detail.html b/telemeta/templates/telemeta/profile_detail.html index 7a6df49e..6d434e52 100644 --- a/telemeta/templates/telemeta/profile_detail.html +++ b/telemeta/templates/telemeta/profile_detail.html @@ -1,6 +1,6 @@ {% extends "telemeta/base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block head_title %}{% trans "User Profile" %} : {{ usr.username }}{% endblock %} diff --git a/telemeta/templates/telemeta/profile_edit.html b/telemeta/templates/telemeta/profile_edit.html index afaa1f8c..7495ad18 100644 --- a/telemeta/templates/telemeta/profile_edit.html +++ b/telemeta/templates/telemeta/profile_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/profile_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block title_buttons %} {% trans "Cancel" %} diff --git a/telemeta/templates/telemeta/registration/registration_complete.html b/telemeta/templates/telemeta/registration/registration_complete.html index 9ba78fd0..f344cc10 100644 --- a/telemeta/templates/telemeta/registration/registration_complete.html +++ b/telemeta/templates/telemeta/registration/registration_complete.html @@ -1,6 +1,6 @@ {% extends "telemeta/registration/registration_base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load teleforma_tags %} {% block title %}
{% trans "Registration" %} - {% description %}
{% endblock %} diff --git a/telemeta/templates/telemeta/registration/registration_form.html b/telemeta/templates/telemeta/registration/registration_form.html index 3801a55e..1f376574 100644 --- a/telemeta/templates/telemeta/registration/registration_form.html +++ b/telemeta/templates/telemeta/registration/registration_form.html @@ -1,6 +1,6 @@ {% extends "telemeta/registration/registration_base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load teleforma_tags %} {% block title %}
{% trans "Registration" %} - {% description %}
{% endblock %} diff --git a/telemeta/templates/telemeta/resource_add.html b/telemeta/templates/telemeta/resource_add.html index 06c4215b..24b3df9f 100644 --- a/telemeta/templates/telemeta/resource_add.html +++ b/telemeta/templates/telemeta/resource_add.html @@ -1,6 +1,6 @@ {% extends "telemeta/resource_edit.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load bootstrap3 %} {% block title %} diff --git a/telemeta/templates/telemeta/resource_confirm_delete.html b/telemeta/templates/telemeta/resource_confirm_delete.html index 591da69c..7a2e9f38 100644 --- a/telemeta/templates/telemeta/resource_confirm_delete.html +++ b/telemeta/templates/telemeta/resource_confirm_delete.html @@ -1,6 +1,6 @@ {% extends "telemeta/resource_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block title %} {{ type }} : {{ resource }} diff --git a/telemeta/templates/telemeta/resource_detail.html b/telemeta/templates/telemeta/resource_detail.html index 01a07f52..92f39909 100644 --- a/telemeta/templates/telemeta/resource_detail.html +++ b/telemeta/templates/telemeta/resource_detail.html @@ -1,6 +1,6 @@ {% extends "telemeta/base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block head_title %}{% trans type %}{{resource|prepend:' : '}} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/resource_detail_dc.html b/telemeta/templates/telemeta/resource_detail_dc.html index a31231bf..57f9d400 100644 --- a/telemeta/templates/telemeta/resource_detail_dc.html +++ b/telemeta/templates/telemeta/resource_detail_dc.html @@ -1,5 +1,5 @@ {% extends "telemeta/resource_detail.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% if item %} diff --git a/telemeta/templates/telemeta/resource_edit.html b/telemeta/templates/telemeta/resource_edit.html index 74e4f5e3..abd4882b 100644 --- a/telemeta/templates/telemeta/resource_edit.html +++ b/telemeta/templates/telemeta/resource_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/resource_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load bootstrap3 %} {% block title %} diff --git a/telemeta/templates/telemeta/resource_epub_list.html b/telemeta/templates/telemeta/resource_epub_list.html index 0c1dd16e..eab05ff6 100644 --- a/telemeta/templates/telemeta/resource_epub_list.html +++ b/telemeta/templates/telemeta/resource_epub_list.html @@ -1,6 +1,6 @@ {% extends "telemeta/resource_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block search %} diff --git a/telemeta/templates/telemeta/resource_list.html b/telemeta/templates/telemeta/resource_list.html index f80aecca..8ee59d5e 100644 --- a/telemeta/templates/telemeta/resource_list.html +++ b/telemeta/templates/telemeta/resource_list.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% load bootstrap_pagination %} diff --git a/telemeta/templates/telemeta/resource_related_edit.html b/telemeta/templates/telemeta/resource_related_edit.html index d787dcec..d591a6f7 100644 --- a/telemeta/templates/telemeta/resource_related_edit.html +++ b/telemeta/templates/telemeta/resource_related_edit.html @@ -1,6 +1,6 @@ {% extends "telemeta/resource_detail.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block extra_javascript %}{% endblock %} diff --git a/telemeta/templates/telemeta/search_criteria.html b/telemeta/templates/telemeta/search_criteria.html index 18fa0b0b..c39cb535 100644 --- a/telemeta/templates/telemeta/search_criteria.html +++ b/telemeta/templates/telemeta/search_criteria.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% block head_title %}{% trans "Advanced Search" %} - {{ block.super }}{% endblock %} diff --git a/telemeta/templates/telemeta/search_results.html b/telemeta/templates/telemeta/search_results.html index 68e1c433..034587b2 100644 --- a/telemeta/templates/telemeta/search_results.html +++ b/telemeta/templates/telemeta/search_results.html @@ -1,5 +1,5 @@ {% extends "telemeta/base.html" %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% load i18n %} {% load bootstrap_pagination %} diff --git a/telemeta/templates/telemeta/users.html b/telemeta/templates/telemeta/users.html index bbf4d913..48ced40e 100644 --- a/telemeta/templates/telemeta/users.html +++ b/telemeta/templates/telemeta/users.html @@ -1,6 +1,6 @@ {% extends "telemeta/base.html" %} {% load i18n %} -{% load telemeta_utils %} +{% load telemeta_tags %} {% block head_title %}{% trans "Users" %} - {{ block.super }}{% endblock %} diff --git a/telemeta/templatetags/telemeta_tags.py b/telemeta/templatetags/telemeta_tags.py new file mode 100644 index 00000000..a0850344 --- /dev/null +++ b/telemeta/templatetags/telemeta_tags.py @@ -0,0 +1,469 @@ +from django import template +from django.utils.http import urlquote +from telemeta import models +from django.core.urlresolvers import reverse +import telemeta.models.dublincore as dc +from django.utils import html +from django import template +from django.utils.text import capfirst +from django.utils.translation import ungettext +from docutils.core import publish_parts +from django.utils.encoding import smart_str, force_unicode +from django.utils.safestring import mark_safe +from django import db +import re +import os +import ast +import datetime +from django.conf import settings +from django.template.defaultfilters import stringfilter +from django.template import NodeList +from telemeta.views.core import get_item_access + +register = template.Library() + +@register.filter +def tolist(dict): + "Converts a simple dict into a list" + list = [] + for k, v in dict.iteritems(): + list.append({'name': k, 'value': v}) + return list + +@register.filter +def mul(value, arg): + "Multiply a numeric value" + return value * arg + +class TelemetaVersionNode(template.Node): + def render(self, context): + from telemeta import __version__ + return __version__ + +@register.tag +def telemeta_version(parser, token): + "Get Telemeta version number" + return TelemetaVersionNode() + +class TelemetaUrlNode(template.Node): + def render(self, context): + from telemeta import __url__ + return __url__ + +@register.tag +def telemeta_url(parser, token): + "Get Telemeta project homepage URL" + return TelemetaUrlNode() + +_js_escapes = ( + ('\\', '\\\\'), + ('"', '\\"'), + ("'", "\\'"), + ('\n', '\\n'), + ('\r', '\\r'), + ('\b', '\\b'), + ('\f', '\\f'), + ('\t', '\\t'), + ('\v', '\\v'), + ('' + except template.VariableDoesNotExist: + label = unicode(self.model) + '.' + self.member + value = '' + + try: + value = value() + except TypeError: + pass + if self.join_with: + value = self.join_with.join([unicode(v) for v in value]) + if not value: + value = '' + if value or self.show_empty: + value = html.escape(unicode(value)) + markup = '
%s
%s
' % (label, value) + return markup + + return '' + +@register.tag +def dl_field(parser, token): + cut = token.split_contents() + join_with = None + show_empty = False + if len(cut) == 3: + tag_name, model, attr = cut + elif len(cut) == 4: + tag_name, model, attr, arg3 = cut + if arg3 == 'placeholder': + show_empty = True + else: + raise ValueError() + elif len(cut) >= 6: + tag_name, model, attr, arg3, arg4, arg5 = cut[0:6] + if arg3 == 'join' and arg4 == 'with'and arg5[0] == arg5[-1] and arg5[0] in ('"', "'"): + join_with = arg5[1:-1] + else: + raise ValueError() + if len(cut) > 6: + if cut[6] == 'placeholder': + show_empty = True + else: + raise ValueError(); + else: + raise template.TemplateSyntaxError("%r tag: invalid arguments" + % token.contents.split()[0]) + + if attr[0] == attr[-1] and attr[0] in ('"', "'"): + attr = attr[1:-1] + else: + attr = template.Variable(attr) + model = template.Variable(model) + return DescriptionListFieldNode(model, attr, join_with=join_with, show_empty=show_empty) + +@register.filter +def prepend(str, prefix): + if str: + return prefix + unicode(str) + return '' + +@register.simple_tag +def field_label(model, field=None): + if isinstance(model, basestring): + model = getattr(models, model) + + if not field: + return capfirst(unicode(model._meta.verbose_name)) + + return capfirst(unicode(model.field_label(field))) + +@register.simple_tag +def field_value(object, member): + value = getattr(object, member) + try: + value = value() + except TypeError: + pass + return value + +@register.filter +def is_none(value): + return value is None + +@register.filter +def resources_num(value): + model = value.model + count = value.count() + label = str(count) + if model == models.MediaItem: + label = ungettext('%(count)d item', '%(count)d items', count) % { + 'count': count, } + elif model == models.MediaCollection: + label = ungettext('%(count)d collection', '%(count)d collections', count) % { + 'count': count, } + + return label + +@register.filter +def split(value, sep=','): + return value.split(sep) + +@register.simple_tag +def variable_link(object, url_name, url_key): + return reverse(url_name, args=[field_value(object, url_key)]) + +@register.filter +def equals(value1, value2): + return value1 == value2 + +@register.filter +def render_flatpage(content): + parsed = "" + path = getattr(content, 'path', '') + if isinstance(content, basestring): + content = content.split("\n") + + for line in content: + match = re.match('^(\.\. *(?:_[^:]*:|(?:\|\w+\|)? *image::) *)([^ ]+) *$', line) + if match: + directive, urlname = match.groups() + line = directive + try: + i = urlname.index('telemeta-') + except ValueError: + i = -1 + if i == 0: + line += reverse(urlname) + elif urlname[:1] != '/' and urlname[:4] != 'http': + line += reverse('telemeta-flatpage', args=[path + '/../' + urlname]) + else: + line += urlname + + parsed += line + "\n" + + parts = publish_parts(source=smart_str(parsed), writer_name="html4css1", settings_overrides={}) + return mark_safe('
\n' + force_unicode(parts["html_body"]) + '
') + +render_flatpage.is_safe = True + +@register.simple_tag +def organization(): + return settings.TELEMETA_ORGANIZATION + +@register.simple_tag +def description(): + try: + description = settings.TELEMETA_OAI_REPOSITORY_NAME + except: + description = settings.TELEMETA_DESCRIPTION + pass + return description + +class SetVarNode(template.Node): + + def __init__(self, var_name, var_value): + self.var_name = var_name + self.var_value = var_value + + def render(self, context): + try: + value = template.Variable(self.var_value).resolve(context) + except template.VariableDoesNotExist: + value = "" + context[self.var_name] = value + return u"" + +@register.tag +def set_var(parser, token): + """ + {% set = %} + """ + parts = token.split_contents() + if len(parts) < 4: + raise template.TemplateSyntaxError("'set' tag must be of the form: {% set = %}") + return SetVarNode(parts[1], parts[3]) + +@register.simple_tag +def current_year(): + return datetime.datetime.now().strftime("%Y") + +@register.filter +def html_line_break(text): + return text.replace('\n', '
') + +@register.simple_tag +def profile(user): + return user.get_profile() + +@register.filter +def to_string(list): + if len(list) != 0: + return list[0].encode('utf-8') + else: + return '' + +@register.filter +def get_filename(object): + if isinstance(object, unicode): + return object.split('/')[-1] + elif hasattr(object, 'path'): + return object.path.split(os.sep)[-1] + else: + return '' + +@register.filter +def get_youtube(link): + link = link.split('&') + if "=" in link[0]: + ref = link[0].split('=')[1] + else: + ref = link[0].split('/')[-1] + return 'http://www.youtube.com/embed/'+ref + +@register.filter +def to_utf8(word): + return word.encode('utf-8') + +@register.filter +@stringfilter +def capitalize(value): + return value.capitalize() + +@register.filter +@stringfilter +def mime_to_ext(mime_type): + return mime_type.split('/')[1] + +@register.filter +@stringfilter +def mime_to_media_type(mime_type): + if 'video' in mime_type: + return 'Video' + else: + return 'Audio' + +@register.simple_tag +def is_installed(app): + return app in settings.INSTALLED_APPS + +def do_ifloaded(parser, token): + bits = token.split_contents()[1:] + var = bits[0] + nodelist_true = parser.parse(('else', 'endifloaded')) + token = parser.next_token() + if token.contents == 'else': + nodelist_false = parser.parse(('endifloaded',)) + parser.delete_first_token() + else: + nodelist_false = NodeList() + return IfLoadedNode(var, nodelist_true, nodelist_false) +register.tag('ifloaded', do_ifloaded) + + +class IfLoadedNode(template.Node): + def __init__(self, var, nodelist_true, nodelist_false=None): + self.nodelist_true, self.nodelist_false = nodelist_true, nodelist_false + self.var = var + + def __repr__(self): + return '' + + def __iter__(self): + for node in self.nodelist_true: + yield node + for node in self.nodelist_false: + yield node + + def get_nodes_by_type(self, nodetype): + nodes = [] + if isinstance(self, nodetype): + nodes.append(self) + nodes.extend(self.nodelist_true.get_nodes_by_type(nodetype)) + nodes.extend(self.nodelist_false.get_nodes_by_type(nodetype)) + return nodes + + def render(self, context): + for app in settings.INSTALLED_APPS: + if str(app) == str(self.var): + return self.nodelist_true.render(context) + return self.nodelist_false.render(context) + + +@register.filter +def has_access(user, item): + return get_item_access(item, user) + +@register.filter +def get_attr(obj, val): + return getattr(obj, val) + +@register.simple_tag +def logo_url(): + static_url = getattr(settings, 'STATIC_URL', '/static/') + return getattr(settings, 'TELEMETA_LOGO', static_url + '/telemeta/images/logo_telemeta_2.png') + +@register.assignment_tag +def get_googletools(): + return 'googletools' in settings.INSTALLED_APPS + +@register.assignment_tag +def settings_value(name): + return getattr(settings, name, "") diff --git a/telemeta/templatetags/telemeta_utils.py b/telemeta/templatetags/telemeta_utils.py deleted file mode 100644 index a0850344..00000000 --- a/telemeta/templatetags/telemeta_utils.py +++ /dev/null @@ -1,469 +0,0 @@ -from django import template -from django.utils.http import urlquote -from telemeta import models -from django.core.urlresolvers import reverse -import telemeta.models.dublincore as dc -from django.utils import html -from django import template -from django.utils.text import capfirst -from django.utils.translation import ungettext -from docutils.core import publish_parts -from django.utils.encoding import smart_str, force_unicode -from django.utils.safestring import mark_safe -from django import db -import re -import os -import ast -import datetime -from django.conf import settings -from django.template.defaultfilters import stringfilter -from django.template import NodeList -from telemeta.views.core import get_item_access - -register = template.Library() - -@register.filter -def tolist(dict): - "Converts a simple dict into a list" - list = [] - for k, v in dict.iteritems(): - list.append({'name': k, 'value': v}) - return list - -@register.filter -def mul(value, arg): - "Multiply a numeric value" - return value * arg - -class TelemetaVersionNode(template.Node): - def render(self, context): - from telemeta import __version__ - return __version__ - -@register.tag -def telemeta_version(parser, token): - "Get Telemeta version number" - return TelemetaVersionNode() - -class TelemetaUrlNode(template.Node): - def render(self, context): - from telemeta import __url__ - return __url__ - -@register.tag -def telemeta_url(parser, token): - "Get Telemeta project homepage URL" - return TelemetaUrlNode() - -_js_escapes = ( - ('\\', '\\\\'), - ('"', '\\"'), - ("'", "\\'"), - ('\n', '\\n'), - ('\r', '\\r'), - ('\b', '\\b'), - ('\f', '\\f'), - ('\t', '\\t'), - ('\v', '\\v'), - ('' - except template.VariableDoesNotExist: - label = unicode(self.model) + '.' + self.member - value = '' - - try: - value = value() - except TypeError: - pass - if self.join_with: - value = self.join_with.join([unicode(v) for v in value]) - if not value: - value = '' - if value or self.show_empty: - value = html.escape(unicode(value)) - markup = '
%s
%s
' % (label, value) - return markup - - return '' - -@register.tag -def dl_field(parser, token): - cut = token.split_contents() - join_with = None - show_empty = False - if len(cut) == 3: - tag_name, model, attr = cut - elif len(cut) == 4: - tag_name, model, attr, arg3 = cut - if arg3 == 'placeholder': - show_empty = True - else: - raise ValueError() - elif len(cut) >= 6: - tag_name, model, attr, arg3, arg4, arg5 = cut[0:6] - if arg3 == 'join' and arg4 == 'with'and arg5[0] == arg5[-1] and arg5[0] in ('"', "'"): - join_with = arg5[1:-1] - else: - raise ValueError() - if len(cut) > 6: - if cut[6] == 'placeholder': - show_empty = True - else: - raise ValueError(); - else: - raise template.TemplateSyntaxError("%r tag: invalid arguments" - % token.contents.split()[0]) - - if attr[0] == attr[-1] and attr[0] in ('"', "'"): - attr = attr[1:-1] - else: - attr = template.Variable(attr) - model = template.Variable(model) - return DescriptionListFieldNode(model, attr, join_with=join_with, show_empty=show_empty) - -@register.filter -def prepend(str, prefix): - if str: - return prefix + unicode(str) - return '' - -@register.simple_tag -def field_label(model, field=None): - if isinstance(model, basestring): - model = getattr(models, model) - - if not field: - return capfirst(unicode(model._meta.verbose_name)) - - return capfirst(unicode(model.field_label(field))) - -@register.simple_tag -def field_value(object, member): - value = getattr(object, member) - try: - value = value() - except TypeError: - pass - return value - -@register.filter -def is_none(value): - return value is None - -@register.filter -def resources_num(value): - model = value.model - count = value.count() - label = str(count) - if model == models.MediaItem: - label = ungettext('%(count)d item', '%(count)d items', count) % { - 'count': count, } - elif model == models.MediaCollection: - label = ungettext('%(count)d collection', '%(count)d collections', count) % { - 'count': count, } - - return label - -@register.filter -def split(value, sep=','): - return value.split(sep) - -@register.simple_tag -def variable_link(object, url_name, url_key): - return reverse(url_name, args=[field_value(object, url_key)]) - -@register.filter -def equals(value1, value2): - return value1 == value2 - -@register.filter -def render_flatpage(content): - parsed = "" - path = getattr(content, 'path', '') - if isinstance(content, basestring): - content = content.split("\n") - - for line in content: - match = re.match('^(\.\. *(?:_[^:]*:|(?:\|\w+\|)? *image::) *)([^ ]+) *$', line) - if match: - directive, urlname = match.groups() - line = directive - try: - i = urlname.index('telemeta-') - except ValueError: - i = -1 - if i == 0: - line += reverse(urlname) - elif urlname[:1] != '/' and urlname[:4] != 'http': - line += reverse('telemeta-flatpage', args=[path + '/../' + urlname]) - else: - line += urlname - - parsed += line + "\n" - - parts = publish_parts(source=smart_str(parsed), writer_name="html4css1", settings_overrides={}) - return mark_safe('
\n' + force_unicode(parts["html_body"]) + '
') - -render_flatpage.is_safe = True - -@register.simple_tag -def organization(): - return settings.TELEMETA_ORGANIZATION - -@register.simple_tag -def description(): - try: - description = settings.TELEMETA_OAI_REPOSITORY_NAME - except: - description = settings.TELEMETA_DESCRIPTION - pass - return description - -class SetVarNode(template.Node): - - def __init__(self, var_name, var_value): - self.var_name = var_name - self.var_value = var_value - - def render(self, context): - try: - value = template.Variable(self.var_value).resolve(context) - except template.VariableDoesNotExist: - value = "" - context[self.var_name] = value - return u"" - -@register.tag -def set_var(parser, token): - """ - {% set = %} - """ - parts = token.split_contents() - if len(parts) < 4: - raise template.TemplateSyntaxError("'set' tag must be of the form: {% set = %}") - return SetVarNode(parts[1], parts[3]) - -@register.simple_tag -def current_year(): - return datetime.datetime.now().strftime("%Y") - -@register.filter -def html_line_break(text): - return text.replace('\n', '
') - -@register.simple_tag -def profile(user): - return user.get_profile() - -@register.filter -def to_string(list): - if len(list) != 0: - return list[0].encode('utf-8') - else: - return '' - -@register.filter -def get_filename(object): - if isinstance(object, unicode): - return object.split('/')[-1] - elif hasattr(object, 'path'): - return object.path.split(os.sep)[-1] - else: - return '' - -@register.filter -def get_youtube(link): - link = link.split('&') - if "=" in link[0]: - ref = link[0].split('=')[1] - else: - ref = link[0].split('/')[-1] - return 'http://www.youtube.com/embed/'+ref - -@register.filter -def to_utf8(word): - return word.encode('utf-8') - -@register.filter -@stringfilter -def capitalize(value): - return value.capitalize() - -@register.filter -@stringfilter -def mime_to_ext(mime_type): - return mime_type.split('/')[1] - -@register.filter -@stringfilter -def mime_to_media_type(mime_type): - if 'video' in mime_type: - return 'Video' - else: - return 'Audio' - -@register.simple_tag -def is_installed(app): - return app in settings.INSTALLED_APPS - -def do_ifloaded(parser, token): - bits = token.split_contents()[1:] - var = bits[0] - nodelist_true = parser.parse(('else', 'endifloaded')) - token = parser.next_token() - if token.contents == 'else': - nodelist_false = parser.parse(('endifloaded',)) - parser.delete_first_token() - else: - nodelist_false = NodeList() - return IfLoadedNode(var, nodelist_true, nodelist_false) -register.tag('ifloaded', do_ifloaded) - - -class IfLoadedNode(template.Node): - def __init__(self, var, nodelist_true, nodelist_false=None): - self.nodelist_true, self.nodelist_false = nodelist_true, nodelist_false - self.var = var - - def __repr__(self): - return '' - - def __iter__(self): - for node in self.nodelist_true: - yield node - for node in self.nodelist_false: - yield node - - def get_nodes_by_type(self, nodetype): - nodes = [] - if isinstance(self, nodetype): - nodes.append(self) - nodes.extend(self.nodelist_true.get_nodes_by_type(nodetype)) - nodes.extend(self.nodelist_false.get_nodes_by_type(nodetype)) - return nodes - - def render(self, context): - for app in settings.INSTALLED_APPS: - if str(app) == str(self.var): - return self.nodelist_true.render(context) - return self.nodelist_false.render(context) - - -@register.filter -def has_access(user, item): - return get_item_access(item, user) - -@register.filter -def get_attr(obj, val): - return getattr(obj, val) - -@register.simple_tag -def logo_url(): - static_url = getattr(settings, 'STATIC_URL', '/static/') - return getattr(settings, 'TELEMETA_LOGO', static_url + '/telemeta/images/logo_telemeta_2.png') - -@register.assignment_tag -def get_googletools(): - return 'googletools' in settings.INSTALLED_APPS - -@register.assignment_tag -def settings_value(name): - return getattr(settings, name, "")