diff -Nru django-sitetree-1.9.0+dfsg/AUTHORS django-sitetree-1.10.0+dfsg/AUTHORS --- django-sitetree-1.9.0+dfsg/AUTHORS 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/AUTHORS 2018-04-08 05:30:37.000000000 +0000 @@ -40,6 +40,8 @@ Piter Vergara Chris Lamb stop5 +PetrDlouhy +Richard Price Translators @@ -52,3 +54,5 @@ Spanish: Adrián López Calvo Norwegian: Eirik Krogstad French: Jean Traullé +Japanese: Hajime Nishida +Japanese: ToitaYuka diff -Nru django-sitetree-1.9.0+dfsg/CHANGELOG django-sitetree-1.10.0+dfsg/CHANGELOG --- django-sitetree-1.9.0+dfsg/CHANGELOG 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/CHANGELOG 2018-04-08 05:30:37.000000000 +0000 @@ -2,6 +2,13 @@ ========================= +v1.10.0 +------- ++ Added Bootstrap 3 deep menu template (with nested dropdowns). ++ Added SITETREE_DYNAMIC_ONLY setting. ++ Japanese translation. + + v1.9.0 ------ + Added Bootstrap 4 templates. diff -Nru django-sitetree-1.9.0+dfsg/CONTRIBUTING django-sitetree-1.10.0+dfsg/CONTRIBUTING --- django-sitetree-1.9.0+dfsg/CONTRIBUTING 1970-01-01 00:00:00.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/CONTRIBUTING 2018-04-08 05:30:37.000000000 +0000 @@ -0,0 +1,31 @@ +django-sitetree contributing +============================ + + + +Submit issues +------------- + +If you spotted something weird in application behavior or want to propose a feature +you can do that at https://github.com/idlesign/django-sitetree/issues + + +Write code +---------- + +If you are eager to participate in application development, fork it at https://github.com/idlesign/django-sitetree, +write your code, whether it should be a bugfix or a feature implementation, and make a pull request right +from the forked project page. + +Translate +--------- + +If want to translate the application into your native language use Transifex: +https://www.transifex.net/projects/p/django-sitetree/. + + +Spread the word +--------------- + +If you have some tips and tricks or any other words that you think might be of interest for the others — publish it +wherever you find convenient. diff -Nru django-sitetree-1.9.0+dfsg/debian/changelog django-sitetree-1.10.0+dfsg/debian/changelog --- django-sitetree-1.9.0+dfsg/debian/changelog 2017-12-20 09:19:05.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/debian/changelog 2018-06-02 17:13:09.000000000 +0000 @@ -1,3 +1,21 @@ +django-sitetree (1.10.0+dfsg-1) unstable; urgency=low + + [ Ondřej Nový ] + * d/control: Set Vcs-* to salsa.debian.org + * d/control: Remove ancient X-Python-Version field + * d/control: Remove ancient X-Python3-Version field + + [ Michael Fladischer ] + * New upstream release. + * Bump debhelper compatibility and version to 11. + * Bump Standards-Version to 4.1.4. + * Extend patch to fix Language field in japanese django.po. + * Build documentation in override_dh_sphinxdoc. + * Remove lintian override for missing GPG signature check on source + tarball to serve as a reminder to improve on this. + + -- Michael Fladischer Sat, 02 Jun 2018 19:13:09 +0200 + django-sitetree (1.9.0+dfsg-1) unstable; urgency=low * New upstream release. diff -Nru django-sitetree-1.9.0+dfsg/debian/compat django-sitetree-1.10.0+dfsg/debian/compat --- django-sitetree-1.9.0+dfsg/debian/compat 2017-12-20 09:19:05.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/debian/compat 2018-06-02 17:13:09.000000000 +0000 @@ -1 +1 @@ -9 +11 diff -Nru django-sitetree-1.9.0+dfsg/debian/control django-sitetree-1.10.0+dfsg/debian/control --- django-sitetree-1.9.0+dfsg/debian/control 2017-12-20 09:19:05.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/debian/control 2018-06-02 17:13:09.000000000 +0000 @@ -5,7 +5,7 @@ Uploaders: Michael Fladischer , Build-Depends: - debhelper (>= 9), + debhelper (>= 11), dh-python, python-all, python-babel, @@ -22,12 +22,10 @@ python3-pytest-django, python3-setuptools, python3-sphinx, -Standards-Version: 4.1.2 -X-Python-Version: >= 2.6 -X-Python3-Version: >= 3.2 +Standards-Version: 4.1.4 Homepage: https://github.com/idlesign/django-sitetree -Vcs-Git: https://anonscm.debian.org/git/python-modules/packages/django-sitetree.git -Vcs-Browser: https://anonscm.debian.org/cgit/python-modules/packages/django-sitetree.git +Vcs-Git: https://salsa.debian.org/python-team/modules/django-sitetree.git +Vcs-Browser: https://salsa.debian.org/python-team/modules/django-sitetree Testsuite: autopkgtest-pkg-python Package: python-django-sitetree diff -Nru django-sitetree-1.9.0+dfsg/debian/patches/0001-Fix-value-of-Language-fields-for-django.po-files.patch django-sitetree-1.10.0+dfsg/debian/patches/0001-Fix-value-of-Language-fields-for-django.po-files.patch --- django-sitetree-1.9.0+dfsg/debian/patches/0001-Fix-value-of-Language-fields-for-django.po-files.patch 2017-12-20 09:19:05.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/debian/patches/0001-Fix-value-of-Language-fields-for-django.po-files.patch 2018-06-02 17:13:09.000000000 +0000 @@ -4,7 +4,8 @@ --- sitetree/locale/en/LC_MESSAGES/django.po | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) + sitetree/locale/ja/LC_MESSAGES/django.po | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sitetree/locale/en/LC_MESSAGES/django.po b/sitetree/locale/en/LC_MESSAGES/django.po index 91410dd..a9c7302 100644 @@ -19,3 +20,16 @@ "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +diff --git a/sitetree/locale/ja/LC_MESSAGES/django.po b/sitetree/locale/ja/LC_MESSAGES/django.po +index c02379b..9d01fac 100644 +--- a/sitetree/locale/ja/LC_MESSAGES/django.po ++++ b/sitetree/locale/ja/LC_MESSAGES/django.po +@@ -12,7 +12,7 @@ msgstr "" + "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" + "Last-Translator: FULL NAME \n" + "Language-Team: LANGUAGE \n" +-"Language: \n" ++"Language: ja\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" diff -Nru django-sitetree-1.9.0+dfsg/debian/python3-django-sitetree.docs django-sitetree-1.10.0+dfsg/debian/python3-django-sitetree.docs --- django-sitetree-1.9.0+dfsg/debian/python3-django-sitetree.docs 1970-01-01 00:00:00.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/debian/python3-django-sitetree.docs 2018-06-02 17:13:09.000000000 +0000 @@ -0,0 +1 @@ +README.rst diff -Nru django-sitetree-1.9.0+dfsg/debian/python-django-sitetree-doc.docs django-sitetree-1.10.0+dfsg/debian/python-django-sitetree-doc.docs --- django-sitetree-1.9.0+dfsg/debian/python-django-sitetree-doc.docs 2017-12-20 09:19:05.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/debian/python-django-sitetree-doc.docs 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -docs/build/html diff -Nru django-sitetree-1.9.0+dfsg/debian/rules django-sitetree-1.10.0+dfsg/debian/rules --- django-sitetree-1.9.0+dfsg/debian/rules 2017-12-20 09:19:05.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/debian/rules 2018-06-02 17:13:09.000000000 +0000 @@ -14,13 +14,18 @@ python setup.py compile_catalog --directory sitetree/locale/ --locale $$(basename $$loc) --domain django; \ done dh_auto_build - PYTHONPATH=. sphinx-build -b html -d docs/build/.doctrees -N docs/source docs/build/html + +override_dh_sphinxdoc: +ifeq (,$(findstring nodoc, $(DEB_BUILD_OPTIONS))) + PYTHONPATH=. sphinx-build -b html -N docs/source $(CURDIR)/debian/python-django-sitetree-doc/usr/share/doc/python-django-sitetree-doc/html + dh_sphinxdoc +endif override_dh_installchangelogs: dh_installchangelogs CHANGELOG override_dh_auto_test: -ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) +ifeq (,$(filter nocheck, $(DEB_BUILD_OPTIONS))) set -e; \ for python in $(shell pyversions -r) $(shell py3versions -r); do \ $$python sitetree/runtests.py; \ diff -Nru django-sitetree-1.9.0+dfsg/debian/source/lintian-overrides django-sitetree-1.10.0+dfsg/debian/source/lintian-overrides --- django-sitetree-1.9.0+dfsg/debian/source/lintian-overrides 2017-12-20 09:19:05.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/debian/source/lintian-overrides 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -# Upstream does not provide PGP signatures for their release tarballs. -django-sitetree source: debian-watch-may-check-gpg-signature diff -Nru django-sitetree-1.9.0+dfsg/docs/source/apps.rst django-sitetree-1.10.0+dfsg/docs/source/apps.rst --- django-sitetree-1.9.0+dfsg/docs/source/apps.rst 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/docs/source/apps.rst 2018-04-08 05:30:37.000000000 +0000 @@ -62,10 +62,10 @@ Optionally you can structure app-defined sitetrees into existing or new trees runtime. -Basically one should compose a dynamic tree with `compose_dynamic_tree()` and register it with `register_dynamic_trees()`. +Basically one should compose a dynamic tree with ``compose_dynamic_tree()`` and register it with ``register_dynamic_trees()``. -Let's suppose the following code is in `setting.py` (for Django < 1.7; or for Djagno >= 1.7 somewhere where app registry -is already created, e.g. `urls.py`) of your project. +Let's suppose the following code somewhere where app registry is already created, e.g. ``config.ready()`` or even +in ``urls.py`` of your project. .. code-block:: python @@ -100,3 +100,7 @@ reset_cache=True ) + +.. note:: If you use only dynamic trees you can set ``SITETREE_DYNAMIC_ONLY = True`` to prevent the application + from querying trees and items stored in DB. + diff -Nru django-sitetree-1.9.0+dfsg/docs/source/index.rst django-sitetree-1.10.0+dfsg/docs/source/index.rst --- django-sitetree-1.9.0+dfsg/docs/source/index.rst 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/docs/source/index.rst 2018-04-08 05:30:37.000000000 +0000 @@ -25,6 +25,8 @@ User access to certain sitetree items can be restricted to authenticated users or more accurately with the help of Django permissions system (Auth contrib package). +Sitetree also allows you to define dynamic trees in your code instead of Admin interface. And even more: you can combine those two types of trees in more sophisticated ways. + Requirements ------------ @@ -57,19 +59,7 @@ thirdparty -Get involved into django-sitetree ---------------------------------- - -**Submit issues.** If you spotted something weird in application behavior or want to propose a feature you can do that at https://github.com/idlesign/django-sitetree/issues - -**Write code.** If you are eager to participate in application development, fork it at https://github.com/idlesign/django-sitetree, write your code, whether it should be a bugfix or a feature implementation, and make a pull request right from the forked project page. - -**Translate.** If want to translate the application into your native language use Transifex: https://www.transifex.net/projects/p/django-sitetree/. - -**Spread the word.** If you have some tips and tricks or any other words in mind that you think might be of interest for the others — publish it. - - -Also ----- +See also +-------- If the application is not what you want for site navigation, you might be interested in considering the other choices — http://djangopackages.com/grids/g/navigation/ diff -Nru django-sitetree-1.9.0+dfsg/docs/source/templatesmod.rst django-sitetree-1.10.0+dfsg/docs/source/templatesmod.rst --- django-sitetree-1.9.0+dfsg/docs/source/templatesmod.rst 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/docs/source/templatesmod.rst 2018-04-08 05:30:37.000000000 +0000 @@ -151,6 +151,14 @@ Constructs nav-pills Bootstrap 3 horizontal navigation. + * `sitetree/menu_bootstrap3_deep.html` + + Constructs Bootstrap 3 menu with infinite submenus. + Requires adding extra CSS:: + + + + * `sitetree/menu_bootstrap4_navpills.html` The same as above but for Bootstrap version 4. diff -Nru django-sitetree-1.9.0+dfsg/MANIFEST.in django-sitetree-1.10.0+dfsg/MANIFEST.in --- django-sitetree-1.9.0+dfsg/MANIFEST.in 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/MANIFEST.in 2018-04-08 05:30:37.000000000 +0000 @@ -8,8 +8,8 @@ recursive-include docs *.py recursive-include sitetree/locale * +recursive-include sitetree/static * recursive-include sitetree/migrations *.py -recursive-include sitetree/south_migrations *.py recursive-include sitetree/templates *.html recursive-include sitetree/templatetags *.py recursive-include sitetree/management *.py \ No newline at end of file diff -Nru django-sitetree-1.9.0+dfsg/README.rst django-sitetree-1.10.0+dfsg/README.rst --- django-sitetree-1.9.0+dfsg/README.rst 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/README.rst 2018-04-08 05:30:37.000000000 +0000 @@ -43,8 +43,11 @@ |_users-personal user.id - User Called {{ user.first_name }} After setting up site structure as a sitetree you should be able to use convenient and highly customizable site navigation means (menus, breadcrumbs and full site trees). + User access to certain sitetree items can be restricted to authenticated users or more accurately with the help of Django permissions system (Auth contrib package). +Sitetree also allows you to define dynamic trees in your code instead of Admin interface. And even more: you can combine those two types of trees in more sophisticated ways. + Documentation ------------- diff -Nru django-sitetree-1.9.0+dfsg/sitetree/__init__.py django-sitetree-1.10.0+dfsg/sitetree/__init__.py --- django-sitetree-1.9.0+dfsg/sitetree/__init__.py 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/__init__.py 2018-04-08 05:30:37.000000000 +0000 @@ -1,4 +1,4 @@ -VERSION = (1, 9, 0) +VERSION = (1, 10, 0) default_app_config = 'sitetree.config.SitetreeConfig' \ No newline at end of file Binary files /tmp/tmpNdiRu3/H8i9UYMmWE/django-sitetree-1.9.0+dfsg/sitetree/locale/ja/LC_MESSAGES/django.mo and /tmp/tmpNdiRu3/97WTHqiMcQ/django-sitetree-1.10.0+dfsg/sitetree/locale/ja/LC_MESSAGES/django.mo differ diff -Nru django-sitetree-1.9.0+dfsg/sitetree/locale/ja/LC_MESSAGES/django.po django-sitetree-1.10.0+dfsg/sitetree/locale/ja/LC_MESSAGES/django.po --- django-sitetree-1.9.0+dfsg/sitetree/locale/ja/LC_MESSAGES/django.po 1970-01-01 00:00:00.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/locale/ja/LC_MESSAGES/django.po 2018-04-08 05:30:37.000000000 +0000 @@ -0,0 +1,295 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2018-02-11 02:31+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: sitetree/admin.py:95 +msgid "Basic settings" +msgstr "基本設定" + +#: sitetree/admin.py:98 +msgid "Access settings" +msgstr "アクセス権限設定" + +#: sitetree/admin.py:102 +msgid "Display settings" +msgstr "表示設定" + +#: sitetree/admin.py:106 +msgid "Additional settings" +msgstr "追加設定" + +#: sitetree/admin.py:185 +msgid "" +"You are seeing this warning because \"URL as Pattern\" option is active and " +"pattern entered above seems to be invalid. Currently registered URL pattern " +"names and parameters: " +msgstr "URLパターンが有効であるため、この警告が表示されます。入力されたURLパターンは無効と思われます。すでに登録されているURLパターンとパラメータ:" + +#: sitetree/admin.py:266 +msgid "Item's parent left unchanged. Item couldn't be parent to itself." +msgstr "アイテムの親は変更されません。アイテムは自分自身の親にはなれません。" + +#: sitetree/config.py:9 sitetree/models.py:35 +msgid "Site Trees" +msgstr "Site Trees" + +#: sitetree/models.py:26 sitetree/models.py:56 +#: sitetree/templates/admin/sitetree/tree/change_form.html:41 +msgid "Title" +msgstr "タイトル" +#: sitetree/models.py:26 + +msgid "Site tree title for presentational purposes." +msgstr "ユーザーに表示するタイトルを入力してください。" + +#: sitetree/models.py:28 sitetree/models.py:75 +msgid "Alias" +msgstr "スラッグ" + +#: sitetree/models.py:29 +msgid "" +"Short name to address site tree from templates.
Note: change " +"with care." +msgstr "任意のスラッグを入力してください。
注意:一度決定したスラッグは安易に変更しない事を推奨します。" + +#: sitetree/models.py:34 sitetree/models.py:70 +msgid "Site Tree" +msgstr "Site Tree" + +#: sitetree/models.py:51 +msgid "Any" +msgstr "複数選択可" + +#: sitetree/models.py:52 +msgid "All" +msgstr "全て" + +#: sitetree/models.py:57 +msgid "" +"Site tree item title. Can contain template variables E.g.: {{ mytitle }}." +msgstr "アイテムのタイトルを入力してください。タイトルにはテンプレート変数を含める事ができます。例:{{mytitle}}" + +#: sitetree/models.py:59 +msgid "Hint" +msgstr "ヒント" + +#: sitetree/models.py:60 +msgid "Some additional information about this item that is used as a hint." +msgstr "ヒントとなるアイテムの追加情報" + +#: sitetree/models.py:62 +#: sitetree/templates/admin/sitetree/tree/change_form.html:42 +msgid "URL" +msgstr "URL" + +#: sitetree/models.py:63 +msgid "Exact URL or URL pattern (see \"Additional settings\") for this item." +msgstr "このアイテムの正しいURLまたはURLパターンを入力してください。(URLパターンは「追加設定」を参照)" + +#: sitetree/models.py:65 +msgid "URL as Pattern" +msgstr "URLパターン" + +#: sitetree/models.py:66 +msgid "" +"Whether the given URL should be treated as a pattern.
Note: " +"Refer to Django \"URL dispatcher\" documentation (e.g. \"Naming URL patterns" +"\" part)." +msgstr "与えられたURLがパターンとして扱われます。
注意: Djangoの「URLディスパッチャ」ドキュメント(例:「URLパターンに名前をつける部分」)を参照してください。" + +#: sitetree/models.py:71 +msgid "Site tree this item belongs to." +msgstr "このアイテムが属するSite Tree" + +#: sitetree/models.py:73 +#: sitetree/templates/admin/sitetree/tree/change_form.html:34 +msgid "Hidden" +msgstr "非表示" + +#: sitetree/models.py:73 +msgid "Whether to show this item in navigation." +msgstr "ナビゲーションでの表示・非表示を設定できます。" + +#: sitetree/models.py:77 +#, python-format +msgid "" +"Short name to address site tree item from a template.
Reserved " +"aliases: \"%s\"." +msgstr "テンプレートからSite Treeアイテムをアドレス指定するスラッグ
スラッグ: \"%s\"." + +#: sitetree/models.py:82 +msgid "Description" +msgstr "説明" + +#: sitetree/models.py:83 +msgid "Additional comments on this item." +msgstr "このアイテムにコメントを追加" + +#: sitetree/models.py:85 +msgid "Show in menu" +msgstr "メニュー表示" + +#: sitetree/models.py:86 +msgid "Whether to show this item in a menu." +msgstr "メニューでの表示・非表示を設定できます。" + +#: sitetree/models.py:88 +msgid "Show in breadcrumb path" +msgstr "Breadcrumb表示" + +#: sitetree/models.py:89 +msgid "Whether to show this item in a breadcrumb path." +msgstr "Breadcrumbでの表示・非表示を設定できます。" + +#: sitetree/models.py:91 +msgid "Show in site tree" +msgstr "Site Tree表示" + +#: sitetree/models.py:92 +msgid "Whether to show this item in a site tree." +msgstr "Site Treeでの表示・非表示を設定できます。" + +#: sitetree/models.py:94 +msgid "Logged in only" +msgstr "ログインユーザーのみ" + +#: sitetree/models.py:95 +msgid "Check it to grant access to this item to authenticated users only." +msgstr "認証されたユーザーにのみこのアイテムへのアクセスを許可します。" + +#: sitetree/models.py:98 +#: sitetree/templates/admin/sitetree/tree/change_form.html:40 +msgid "Guests only" +msgstr "ゲストのみ" + +#: sitetree/models.py:99 +msgid "Check it to grant access to this item to guests only." +msgstr "ゲストにのみこのアイテムへのアクセスを許可します。" + +#: sitetree/models.py:101 +msgid "Restrict access to permissions" +msgstr "限定公開" + +#: sitetree/models.py:102 +msgid "" +"Check it to restrict user access to this item, using Django permissions " +"system." +msgstr "Django認証システムを使用し、このアイテムへのユーザーアクセスを制限します。" + +#: sitetree/models.py:105 +msgid "Permissions granting access" +msgstr "アクセス権限を追加" + +#: sitetree/models.py:107 +msgid "Permissions interpretation" +msgstr "アクセス権限の選択自由度" + +#: sitetree/models.py:108 +msgid "" +"Any — user should have any of chosen permissions. All " +"— user should have all chosen permissions." +msgstr "" +"複数選択可 — ユーザーに付与した権限の範囲で、ユーザー側が任意の権限を選択できます。
" +"全て — 全ての権限を付与します。" + +#: sitetree/models.py:114 +msgid "Parent" +msgstr "親" + +#: sitetree/models.py:115 +msgid "Parent site tree item." +msgstr "親アイテム" + +#: sitetree/models.py:117 +#: sitetree/templates/admin/sitetree/tree/change_form.html:43 +msgid "Sort order" +msgstr "並び替え" + +#: sitetree/models.py:118 +msgid "Item position among other site tree items under the same parent." +msgstr "親内のSite Tree間での位置" + +#: sitetree/models.py:143 +msgid "Site Tree Item" +msgstr "Site Treeのアイテム" + +#: sitetree/models.py:144 +#: sitetree/templates/admin/sitetree/tree/change_form.html:17 +msgid "Site Tree Items" +msgstr "Site Treeのアイテム" + +#: sitetree/templates/admin/sitetree/tree/change_form.html:24 +msgid "Add Site Tree item" +msgstr "Site Treeのアイテムを追加" + +#: sitetree/templates/admin/sitetree/tree/change_form.html:35 +msgid "Menu" +msgstr "メニュー" + +#: sitetree/templates/admin/sitetree/tree/change_form.html:36 +msgid "Breadcrumbs" +msgstr "" + +#: sitetree/templates/admin/sitetree/tree/change_form.html:37 +msgid "Tree" +msgstr "" + +#: sitetree/templates/admin/sitetree/tree/change_form.html:38 +msgid "Restricted" +msgstr "限定公開" + +#: sitetree/templates/admin/sitetree/tree/change_form.html:39 +msgid "Users only" +msgstr "ログインユーザーのみ" + +#: sitetree/templates/admin/sitetree/tree/change_list_.html:7 +msgid "Dump data" +msgstr "データ出力" + +#: sitetree/templates/admin/sitetree/tree/change_list_.html:8 +msgid "Load data" +msgstr "データを読み込む" + +#: sitetree/templates/admin/sitetree/tree/tree.html:33 +msgid "Move up" +msgstr "上へ" + +#: sitetree/templates/admin/sitetree/tree/tree.html:35 +msgid "Move down" +msgstr "下へ" + +#: sitetree/templates/admin/sitetree/treeitem/breadcrumbs.html:5 +msgid "Home" +msgstr "ホーム" + +#: sitetree/templates/admin/sitetree/treeitem/breadcrumbs.html:11 +msgid "Delete" +msgstr "削除" + +#: sitetree/templates/admin/sitetree/treeitem/breadcrumbs.html:15 +msgid "History" +msgstr "更新履歴" + +#: sitetree/templates/admin/sitetree/treeitem/breadcrumbs.html:17 +msgid "Add" +msgstr "追加" + +#: templates/admin/base_site.html:3 +msgid "Django site admin" +msgstr "" diff -Nru django-sitetree-1.9.0+dfsg/sitetree/settings.py django-sitetree-1.10.0+dfsg/sitetree/settings.py --- django-sitetree-1.9.0+dfsg/sitetree/settings.py 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/settings.py 2018-04-08 05:30:37.000000000 +0000 @@ -15,6 +15,9 @@ RAISE_ITEMS_ERRORS_ON_DEBUG = getattr(settings, 'SITETREE_RAISE_ITEMS_ERRORS_ON_DEBUG', True) +DYNAMIC_ONLY = getattr(settings, 'SITETREE_DYNAMIC_ONLY', False) +"""Whether to query DB for static trees items or use dynamic only.""" + ITEMS_FIELD_ROOT_ID = getattr(settings, 'SITETREE_ITEMS_FIELD_ROOT_ID', '') """Item ID to be used for root item in TreeItemChoiceField. This is adjustable to be able to workaround client-side field validation issues in thirdparties. diff -Nru django-sitetree-1.9.0+dfsg/sitetree/sitetreeapp.py django-sitetree-1.10.0+dfsg/sitetree/sitetreeapp.py --- django-sitetree-1.9.0+dfsg/sitetree/sitetreeapp.py 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/sitetreeapp.py 2018-04-08 05:30:37.000000000 +0000 @@ -23,7 +23,7 @@ from .exceptions import SiteTreeError from .settings import ( ALIAS_TRUNK, ALIAS_THIS_CHILDREN, ALIAS_THIS_SIBLINGS, ALIAS_THIS_PARENT_SIBLINGS, ALIAS_THIS_ANCESTOR_CHILDREN, - UNRESOLVED_ITEM_MARKER, RAISE_ITEMS_ERRORS_ON_DEBUG, CACHE_TIMEOUT) + UNRESOLVED_ITEM_MARKER, RAISE_ITEMS_ERRORS_ON_DEBUG, CACHE_TIMEOUT, DYNAMIC_ONLY) from .utils import get_tree_model, get_tree_item_model, import_app_sitetree_module, generate_id_for if False: # pragma: nocover @@ -500,12 +500,16 @@ sitetree = get_cache_entry('sitetrees', alias) if not sitetree: - sitetree = ( - MODEL_TREE_ITEM_CLASS.objects. - select_related('parent', 'tree'). - prefetch_related('access_permissions__content_type'). - filter(tree__alias__exact=alias). - order_by('parent__sort_order', 'sort_order')) + if DYNAMIC_ONLY: + sitetree = [] + + else: + sitetree = ( + MODEL_TREE_ITEM_CLASS.objects. + select_related('parent', 'tree'). + prefetch_related('access_permissions__content_type'). + filter(tree__alias__exact=alias). + order_by('parent__sort_order', 'sort_order')) sitetree = self.attach_dynamic_tree_items(alias, sitetree) set_cache_entry('sitetrees', alias, sitetree) diff -Nru django-sitetree-1.9.0+dfsg/sitetree/static/css/sitetree_bootstrap_submenu.css django-sitetree-1.10.0+dfsg/sitetree/static/css/sitetree_bootstrap_submenu.css --- django-sitetree-1.9.0+dfsg/sitetree/static/css/sitetree_bootstrap_submenu.css 1970-01-01 00:00:00.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/static/css/sitetree_bootstrap_submenu.css 2018-04-08 05:30:37.000000000 +0000 @@ -0,0 +1,49 @@ +// Taken from https://codepen.io/ajaypatelaj/pen/prHjD + +.dropdown-submenu { + position: relative; +} + +.dropdown-submenu>.dropdown-menu { + top: 0; + left: 100%; + margin-top: -6px; + margin-left: -1px; + -webkit-border-radius: 0 6px 6px 6px; + -moz-border-radius: 0 6px 6px; + border-radius: 0 6px 6px 6px; +} + +.dropdown-submenu:hover>.dropdown-menu { + display: block; +} + +.dropdown-submenu>a:after { + display: block; + content: " "; + float: right; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; + border-width: 5px 0 5px 5px; + border-left-color: #ccc; + margin-top: 5px; + margin-right: -10px; +} + +.dropdown-submenu:hover>a:after { + border-left-color: #fff; +} + +.dropdown-submenu.pull-left { + float: none; +} + +.dropdown-submenu.pull-left>.dropdown-menu { + left: -100%; + margin-left: 10px; + -webkit-border-radius: 6px 0 6px 6px; + -moz-border-radius: 6px 0 6px 6px; + border-radius: 6px 0 6px 6px; +} diff -Nru django-sitetree-1.9.0+dfsg/sitetree/templates/admin/sitetree/tree/change_list_.html django-sitetree-1.10.0+dfsg/sitetree/templates/admin/sitetree/tree/change_list_.html --- django-sitetree-1.9.0+dfsg/sitetree/templates/admin/sitetree/tree/change_list_.html 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/templates/admin/sitetree/tree/change_list_.html 2018-04-08 05:30:37.000000000 +0000 @@ -1,5 +1,4 @@ {% extends "admin/change_list.html" %} -{% load url from future %} {% load i18n %} {% block object-tools-items %} diff -Nru django-sitetree-1.9.0+dfsg/sitetree/templates/sitetree/menu_bootstrap3_deep_dropdown.html django-sitetree-1.10.0+dfsg/sitetree/templates/sitetree/menu_bootstrap3_deep_dropdown.html --- django-sitetree-1.9.0+dfsg/sitetree/templates/sitetree/menu_bootstrap3_deep_dropdown.html 1970-01-01 00:00:00.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/templates/sitetree/menu_bootstrap3_deep_dropdown.html 2018-04-08 05:30:37.000000000 +0000 @@ -0,0 +1,11 @@ +{% load sitetree %} + diff -Nru django-sitetree-1.9.0+dfsg/sitetree/templates/sitetree/menu_bootstrap3_deep.html django-sitetree-1.10.0+dfsg/sitetree/templates/sitetree/menu_bootstrap3_deep.html --- django-sitetree-1.9.0+dfsg/sitetree/templates/sitetree/menu_bootstrap3_deep.html 1970-01-01 00:00:00.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/templates/sitetree/menu_bootstrap3_deep.html 2018-04-08 05:30:37.000000000 +0000 @@ -0,0 +1,14 @@ +{% load sitetree %} + diff -Nru django-sitetree-1.9.0+dfsg/sitetree/tests/conftest.py django-sitetree-1.10.0+dfsg/sitetree/tests/conftest.py --- django-sitetree-1.9.0+dfsg/sitetree/tests/conftest.py 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/tests/conftest.py 2018-04-08 05:30:37.000000000 +0000 @@ -17,8 +17,6 @@ app_name = os.path.basename(os.path.dirname(os.path.dirname(__file__))) - if not pytest.config.pluginmanager.hasplugin('django'): - raise Exception('`pytest-django` package is required to run `%s` tests.' % app_name) if hasattr(global_settings, "MIDDLEWARE"): middleware = global_settings.MIDDLEWARE else: diff -Nru django-sitetree-1.9.0+dfsg/sitetree/tests/test_dynamic.py django-sitetree-1.10.0+dfsg/sitetree/tests/test_dynamic.py --- django-sitetree-1.9.0+dfsg/sitetree/tests/test_dynamic.py 2017-12-16 03:37:07.000000000 +0000 +++ django-sitetree-1.10.0+dfsg/sitetree/tests/test_dynamic.py 2018-04-08 05:30:37.000000000 +0000 @@ -6,6 +6,21 @@ from .common import strip_tags +def test_dynamic_only(render_template_tag, mock_template_context, monkeypatch): + from sitetree.toolbox import compose_dynamic_tree, register_dynamic_trees, tree, item + + # If DYNAMIC_ONLY is not set, pytest-django will tell: "Database access not allowed" on any DB access attempt. + monkeypatch.setattr('sitetree.sitetreeapp.DYNAMIC_ONLY', 'UNKNOWN') + + register_dynamic_trees(compose_dynamic_tree([tree('dynamic1', items=[ + item('dynamic1_1', '/dynamic1_1_url', url_as_pattern=False, sort_order=2), + ])]), reset_cache=True) + + result = strip_tags(render_template_tag('sitetree', 'sitetree_tree from "dynamic1"', mock_template_context())) + + assert 'dynamic1_1' in result + + @pytest.mark.django_db def test_dynamic_basic(render_template_tag, mock_template_context):