Browse Source

Doc

pull/4/head
Yoann Piétri 5 years ago
parent
commit
3a79cfb0ce
  1. 20
      coopeV3/acl.py
  2. 1
      coopeV3/settings.py
  3. 33
      coopeV3/templatetags/vip.py
  4. 9
      coopeV3/views.py
  5. 11
      coopeV3/widgets.py
  6. 9
      django_tex/core.py
  7. 19
      docs/Makefile
  8. BIN
      docs/_build/doctrees/coopeV3.doctree
  9. BIN
      docs/_build/doctrees/coopeV3.templatetags.doctree
  10. BIN
      docs/_build/doctrees/django_tex.doctree
  11. BIN
      docs/_build/doctrees/environment.pickle
  12. BIN
      docs/_build/doctrees/gestion.doctree
  13. BIN
      docs/_build/doctrees/gestion.migrations.doctree
  14. BIN
      docs/_build/doctrees/index.doctree
  15. BIN
      docs/_build/doctrees/manage.doctree
  16. BIN
      docs/_build/doctrees/modules.doctree
  17. BIN
      docs/_build/doctrees/modules/admin.doctree
  18. BIN
      docs/_build/doctrees/modules/django_tex.doctree
  19. BIN
      docs/_build/doctrees/modules/forms.doctree
  20. BIN
      docs/_build/doctrees/modules/models.doctree
  21. BIN
      docs/_build/doctrees/modules/utils.doctree
  22. BIN
      docs/_build/doctrees/modules/views.doctree
  23. BIN
      docs/_build/doctrees/preferences.doctree
  24. BIN
      docs/_build/doctrees/preferences.migrations.doctree
  25. BIN
      docs/_build/doctrees/users.doctree
  26. BIN
      docs/_build/doctrees/users.migrations.doctree
  27. 4
      docs/_build/html/.buildinfo
  28. 85
      docs/_build/html/_sources/coopeV3.rst.txt
  29. 22
      docs/_build/html/_sources/coopeV3.templatetags.rst.txt
  30. 70
      docs/_build/html/_sources/django_tex.rst.txt
  31. 62
      docs/_build/html/_sources/gestion.migrations.rst.txt
  32. 83
      docs/_build/html/_sources/gestion.rst.txt
  33. 25
      docs/_build/html/_sources/index.rst.txt
  34. 7
      docs/_build/html/_sources/manage.rst.txt
  35. 12
      docs/_build/html/_sources/modules.rst.txt
  36. 24
      docs/_build/html/_sources/modules/admin.rst.txt
  37. 52
      docs/_build/html/_sources/modules/django_tex.rst.txt
  38. 24
      docs/_build/html/_sources/modules/forms.rst.txt
  39. 24
      docs/_build/html/_sources/modules/models.rst.txt
  40. 24
      docs/_build/html/_sources/modules/utils.rst.txt
  41. 31
      docs/_build/html/_sources/modules/views.rst.txt
  42. 86
      docs/_build/html/_sources/preferences.migrations.rst.txt
  43. 75
      docs/_build/html/_sources/preferences.rst.txt
  44. 54
      docs/_build/html/_sources/users.migrations.rst.txt
  45. 75
      docs/_build/html/_sources/users.rst.txt
  46. 3667
      docs/_build/html/_static/_stemmer.js
  47. BIN
      docs/_build/html/_static/ajax-loader.gif
  48. 701
      docs/_build/html/_static/alabaster.css
  49. 676
      docs/_build/html/_static/basic.css
  50. BIN
      docs/_build/html/_static/comment-bright.png
  51. BIN
      docs/_build/html/_static/comment-close.png
  52. BIN
      docs/_build/html/_static/comment.png
  53. 1
      docs/_build/html/_static/css/badge_only.css
  54. 6
      docs/_build/html/_static/css/theme.css
  55. 1
      docs/_build/html/_static/custom.css
  56. 315
      docs/_build/html/_static/doctools.js
  57. 10
      docs/_build/html/_static/documentation_options.js
  58. BIN
      docs/_build/html/_static/down-pressed.png
  59. BIN
      docs/_build/html/_static/down.png
  60. BIN
      docs/_build/html/_static/file.png
  61. BIN
      docs/_build/html/_static/fonts/Inconsolata-Bold.ttf
  62. BIN
      docs/_build/html/_static/fonts/Inconsolata-Regular.ttf
  63. BIN
      docs/_build/html/_static/fonts/Inconsolata.ttf
  64. BIN
      docs/_build/html/_static/fonts/Lato-Bold.ttf
  65. BIN
      docs/_build/html/_static/fonts/Lato-Regular.ttf
  66. BIN
      docs/_build/html/_static/fonts/Lato/lato-bold.eot
  67. BIN
      docs/_build/html/_static/fonts/Lato/lato-bold.ttf
  68. BIN
      docs/_build/html/_static/fonts/Lato/lato-bold.woff
  69. BIN
      docs/_build/html/_static/fonts/Lato/lato-bold.woff2
  70. BIN
      docs/_build/html/_static/fonts/Lato/lato-bolditalic.eot
  71. BIN
      docs/_build/html/_static/fonts/Lato/lato-bolditalic.ttf
  72. BIN
      docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff
  73. BIN
      docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff2
  74. BIN
      docs/_build/html/_static/fonts/Lato/lato-italic.eot
  75. BIN
      docs/_build/html/_static/fonts/Lato/lato-italic.ttf
  76. BIN
      docs/_build/html/_static/fonts/Lato/lato-italic.woff
  77. BIN
      docs/_build/html/_static/fonts/Lato/lato-italic.woff2
  78. BIN
      docs/_build/html/_static/fonts/Lato/lato-regular.eot
  79. BIN
      docs/_build/html/_static/fonts/Lato/lato-regular.ttf
  80. BIN
      docs/_build/html/_static/fonts/Lato/lato-regular.woff
  81. BIN
      docs/_build/html/_static/fonts/Lato/lato-regular.woff2
  82. BIN
      docs/_build/html/_static/fonts/RobotoSlab-Bold.ttf
  83. BIN
      docs/_build/html/_static/fonts/RobotoSlab-Regular.ttf
  84. BIN
      docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot
  85. BIN
      docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf
  86. BIN
      docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff
  87. BIN
      docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2
  88. BIN
      docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot
  89. BIN
      docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf
  90. BIN
      docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff
  91. BIN
      docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2
  92. BIN
      docs/_build/html/_static/fonts/fontawesome-webfont.eot
  93. 2671
      docs/_build/html/_static/fonts/fontawesome-webfont.svg
  94. BIN
      docs/_build/html/_static/fonts/fontawesome-webfont.ttf
  95. BIN
      docs/_build/html/_static/fonts/fontawesome-webfont.woff
  96. BIN
      docs/_build/html/_static/fonts/fontawesome-webfont.woff2
  97. 10253
      docs/_build/html/_static/jquery-3.2.1.js
  98. 4
      docs/_build/html/_static/jquery.js
  99. 4
      docs/_build/html/_static/js/modernizr.min.js
  100. 3
      docs/_build/html/_static/js/theme.js

20
coopeV3/acl.py

@ -2,26 +2,28 @@ from django.contrib.auth.decorators import user_passes_test
from django.contrib.auth.models import User
from django.shortcuts import redirect, get_object_or_404
from django.urls import reverse
from functools import wraps
from preferences.models import GeneralPreferences
def admin_required(view):
"""
Test if the user is staff
Test if the user is staff.
"""
return user_passes_test(lambda u: u.is_staff)(view)
def superuser_required(view):
"""
Test if the user is superuser
Test if the user is superuser.
"""
return user_passes_test(lambda u: u.is_superuser)(view)
def self_or_has_perm(pkName, perm):
"""
Test if the user is the request user (pk) or has perm permission
Test if the user is the request user (pk) or has perm permission.
"""
def decorator(view):
@wraps(view)
def wrapper(request, *args, **kwargs):
user = get_object_or_404(User, pk=kwargs[pkName])
if(user == request.user or request.user.has_perm(perm)):
@ -32,6 +34,10 @@ def self_or_has_perm(pkName, perm):
return decorator
def active_required(view):
"""
Test if the site is active (:attr:`preferences.models.GeneralPreferences.is_active`).
"""
@wraps(view)
def wrapper(request, *args, **kwargs):
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
if(not gp.is_active):
@ -40,7 +46,11 @@ def active_required(view):
return wrapper
def acl_or(*perms):
"""
Test if a user has one of perms
"""
def decorator(view):
@wraps(view)
def wrapper(request,*args, **kwargs):
can_pass = request.user.has_perm(perms[0])
for perm in perms:
@ -53,7 +63,11 @@ def acl_or(*perms):
return decorator
def acl_and(*perms):
"""
Test if a user has all perms
"""
def decorator(view):
@wraps(view)
def wrapper(request,*args, **kwargs):
can_pass = request.user.has_perm(perms[0])
for perm in perms:

1
coopeV3/settings.py

@ -30,7 +30,6 @@ INSTALLED_APPS = [
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admindocs',
'gestion',
'users',
'preferences',

33
coopeV3/templatetags/vip.py

@ -6,48 +6,75 @@ register = template.Library()
@register.simple_tag
def president():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.president`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
return gp.president
@register.simple_tag
def vice_president():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.vice_president`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
return gp.vice_president
@register.simple_tag
def treasurer():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.treasurer`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
return gp.treasurer
@register.simple_tag
def secretary():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.secretary`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
return gp.secretary
@register.simple_tag
def brewer():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.brewer`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
return gp.brewer
@register.simple_tag
def grocer():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.grocer`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
return gp.grocer
@register.simple_tag
def global_message():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.global_message`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
messages = gp.global_message.split("\n")
return random.choice(messages)
@register.simple_tag
def logout_time():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.automatic_logout_time`.
"""
gp, _ = GeneralPreferences.objects.get_or_create(pk=1)
logout_time = gp.automatic_logout_time
return logout_time
@register.simple_tag
def statutes():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.statutes`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
try:
return '<a target="_blank" href="' + gp.statutes.url + '">' + str(gp.statutes) + '</a>'
@ -56,6 +83,9 @@ def statutes():
@register.simple_tag
def rules():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.rules`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
try:
return '<a target="_blank" href="' + gp.rules.url + '">' + str(gp.rules) + '</a>'
@ -64,6 +94,9 @@ def rules():
@register.simple_tag
def menu():
"""
A tag which returns :attr:`preferences.models.GeneralPreferences.menu`.
"""
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
try:
return '<a target="_blank" href="' + gp.menu.url + '">' + str(gp.menu) + '</a>'

9
coopeV3/views.py

@ -5,6 +5,9 @@ from preferences.models import GeneralPreferences
from gestion.models import Keg
def home(request):
"""
Redirect the user either to :func:`~gestion.views.manage` view (if connected and staff) or :func:`~coopeV3.views.homepage` view (if connected and not staff) or :func:`~users.views.loginView` view (if not connected).
"""
if request.user.is_authenticated:
if(request.user.has_perm('gestion.can_manage')):
return redirect(reverse('gestion:manage'))
@ -14,9 +17,15 @@ def home(request):
return redirect(reverse('users:login'))
def homepage(request):
"""
View which displays the :attr:`~preferences.models.GeneralPreferences.home_text` and active :class:`Kegs <gestion.models.Keg>`.
"""
gp, _ = GeneralPreferences.objects.get_or_create(pk=1)
kegs = Keg.objects.filter(is_active=True)
return render(request, "home.html", {"home_text": gp.home_text, "kegs": kegs})
def coope_runner(request):
"""
Just an easter egg
"""
return render(request, "coope-runner.html")

11
coopeV3/widgets.py

@ -1,11 +0,0 @@
from django.forms.widgets import Select, Input
from django.template import Context, Template
from django.template.loader import get_template
class SearchField(Input):
def render(self, name, value, attrs=None):
#super().render(name, value, attrs)
template = get_template('search_field.html')
context = Context({})
return template.render(context)

9
django_tex/core.py

@ -11,6 +11,9 @@ from django.conf import settings
DEFAULT_INTERPRETER = 'lualatex'
def run_tex(source):
"""
Copy the source to temp dict and run latex.
"""
with tempfile.TemporaryDirectory() as tempdir:
filename = os.path.join(tempdir, 'texput.tex')
with open(filename, 'x', encoding='utf-8') as f:
@ -32,9 +35,15 @@ def run_tex(source):
return pdf
def compile_template_to_pdf(template_name, context):
"""
Compile the source with :func:`~django_tex.core.render_template_with_context` and :func:`~django_tex.core.run_tex`.
"""
source = render_template_with_context(template_name, context)
return run_tex(source)
def render_template_with_context(template_name, context):
"""
Render the template
"""
template = get_template(template_name, using='tex')
return template.render(context)

19
docs/Makefile

@ -0,0 +1,19 @@
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
SOURCEDIR = .
BUILDDIR = _build
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

BIN
docs/_build/doctrees/coopeV3.doctree

Binary file not shown.

BIN
docs/_build/doctrees/coopeV3.templatetags.doctree

Binary file not shown.

BIN
docs/_build/doctrees/django_tex.doctree

Binary file not shown.

BIN
docs/_build/doctrees/environment.pickle

Binary file not shown.

BIN
docs/_build/doctrees/gestion.doctree

Binary file not shown.

BIN
docs/_build/doctrees/gestion.migrations.doctree

Binary file not shown.

BIN
docs/_build/doctrees/index.doctree

Binary file not shown.

BIN
docs/_build/doctrees/manage.doctree

Binary file not shown.

BIN
docs/_build/doctrees/modules.doctree

Binary file not shown.

BIN
docs/_build/doctrees/modules/admin.doctree

Binary file not shown.

BIN
docs/_build/doctrees/modules/django_tex.doctree

Binary file not shown.

BIN
docs/_build/doctrees/modules/forms.doctree

Binary file not shown.

BIN
docs/_build/doctrees/modules/models.doctree

Binary file not shown.

BIN
docs/_build/doctrees/modules/utils.doctree

Binary file not shown.

BIN
docs/_build/doctrees/modules/views.doctree

Binary file not shown.

BIN
docs/_build/doctrees/preferences.doctree

Binary file not shown.

BIN
docs/_build/doctrees/preferences.migrations.doctree

Binary file not shown.

BIN
docs/_build/doctrees/users.doctree

Binary file not shown.

BIN
docs/_build/doctrees/users.migrations.doctree

Binary file not shown.

4
docs/_build/html/.buildinfo

@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 43e23fa5fc0f672f16886307c22e1325
tags: 645f666f9bcd5a90fca523b33c5a78b7

85
docs/_build/html/_sources/coopeV3.rst.txt

@ -0,0 +1,85 @@
coopeV3 package
===============
Subpackages
-----------
.. toctree::
coopeV3.templatetags
Submodules
----------
coopeV3.acl module
------------------
.. automodule:: coopeV3.acl
:members:
:undoc-members:
:show-inheritance:
coopeV3.local\_settings.example module
--------------------------------------
.. automodule:: coopeV3.local_settings.example
:members:
:undoc-members:
:show-inheritance:
coopeV3.local\_settings module
------------------------------
.. automodule:: coopeV3.local_settings
:members:
:undoc-members:
:show-inheritance:
coopeV3.settings module
-----------------------
.. automodule:: coopeV3.settings
:members:
:undoc-members:
:show-inheritance:
coopeV3.urls module
-------------------
.. automodule:: coopeV3.urls
:members:
:undoc-members:
:show-inheritance:
coopeV3.views module
--------------------
.. automodule:: coopeV3.views
:members:
:undoc-members:
:show-inheritance:
coopeV3.widgets module
----------------------
.. automodule:: coopeV3.widgets
:members:
:undoc-members:
:show-inheritance:
coopeV3.wsgi module
-------------------
.. automodule:: coopeV3.wsgi
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: coopeV3
:members:
:undoc-members:
:show-inheritance:

22
docs/_build/html/_sources/coopeV3.templatetags.rst.txt

@ -0,0 +1,22 @@
coopeV3.templatetags package
============================
Submodules
----------
coopeV3.templatetags.vip module
-------------------------------
.. automodule:: coopeV3.templatetags.vip
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: coopeV3.templatetags
:members:
:undoc-members:
:show-inheritance:

70
docs/_build/html/_sources/django_tex.rst.txt

@ -0,0 +1,70 @@
django\_tex package
===================
Submodules
----------
django\_tex.core module
-----------------------
.. automodule:: django_tex.core
:members:
:undoc-members:
:show-inheritance:
django\_tex.engine module
-------------------------
.. automodule:: django_tex.engine
:members:
:undoc-members:
:show-inheritance:
django\_tex.environment module
------------------------------
.. automodule:: django_tex.environment
:members:
:undoc-members:
:show-inheritance:
django\_tex.exceptions module
-----------------------------
.. automodule:: django_tex.exceptions
:members:
:undoc-members:
:show-inheritance:
django\_tex.filters module
--------------------------
.. automodule:: django_tex.filters
:members:
:undoc-members:
:show-inheritance:
django\_tex.models module
-------------------------
.. automodule:: django_tex.models
:members:
:undoc-members:
:show-inheritance:
django\_tex.views module
------------------------
.. automodule:: django_tex.views
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: django_tex
:members:
:undoc-members:
:show-inheritance:

62
docs/_build/html/_sources/gestion.migrations.rst.txt

@ -0,0 +1,62 @@
gestion.migrations package
==========================
Submodules
----------
gestion.migrations.0001\_initial module
---------------------------------------
.. automodule:: gestion.migrations.0001_initial
:members:
:undoc-members:
:show-inheritance:
gestion.migrations.0002\_pinte module
-------------------------------------
.. automodule:: gestion.migrations.0002_pinte
:members:
:undoc-members:
:show-inheritance:
gestion.migrations.0003\_historicalpinte module
-----------------------------------------------
.. automodule:: gestion.migrations.0003_historicalpinte
:members:
:undoc-members:
:show-inheritance:
gestion.migrations.0004\_auto\_20181223\_1830 module
----------------------------------------------------
.. automodule:: gestion.migrations.0004_auto_20181223_1830
:members:
:undoc-members:
:show-inheritance:
gestion.migrations.0005\_auto\_20190106\_0018 module
----------------------------------------------------
.. automodule:: gestion.migrations.0005_auto_20190106_0018
:members:
:undoc-members:
:show-inheritance:
gestion.migrations.0006\_auto\_20190227\_0859 module
----------------------------------------------------
.. automodule:: gestion.migrations.0006_auto_20190227_0859
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: gestion.migrations
:members:
:undoc-members:
:show-inheritance:

83
docs/_build/html/_sources/gestion.rst.txt

@ -0,0 +1,83 @@
gestion package
===============
Subpackages
-----------
.. toctree::
Submodules
----------
gestion.admin module
--------------------
.. automodule:: gestion.admin
:members:
:undoc-members:
:show-inheritance:
gestion.apps module
-------------------
.. automodule:: gestion.apps
:members:
:undoc-members:
:show-inheritance:
gestion.environment module
--------------------------
.. automodule:: gestion.environment
:members:
:undoc-members:
:show-inheritance:
gestion.forms module
--------------------
.. automodule:: gestion.forms
:members:
:undoc-members:
:show-inheritance:
gestion.models module
---------------------
.. automodule:: gestion.models
:members:
:undoc-members:
:show-inheritance:
gestion.tests module
--------------------
.. automodule:: gestion.tests
:members:
:undoc-members:
:show-inheritance:
gestion.urls module
-------------------
.. automodule:: gestion.urls
:members:
:undoc-members:
:show-inheritance:
gestion.views module
--------------------
.. automodule:: gestion.views
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: gestion
:members:
:undoc-members:
:show-inheritance:

25
docs/_build/html/_sources/index.rst.txt

@ -0,0 +1,25 @@
.. CoopeV3 documentation master file, created by
sphinx-quickstart on Wed Feb 27 09:11:01 2019.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
CoopeV3 documentation
===================================
.. toctree::
:maxdepth: 2
:caption: Contents:
modules/views.rst
modules/models.rst
modules/admin.rst
modules/forms.rst
modules/utils.rst
modules/django_tex.rst
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

7
docs/_build/html/_sources/manage.rst.txt

@ -0,0 +1,7 @@
manage module
=============
.. automodule:: manage
:members:
:undoc-members:
:show-inheritance:

12
docs/_build/html/_sources/modules.rst.txt

@ -0,0 +1,12 @@
coopeV3
=======
.. toctree::
:maxdepth: 4
coopeV3
django_tex
gestion
manage
preferences
users

24
docs/_build/html/_sources/modules/admin.rst.txt

@ -0,0 +1,24 @@
===================
Admin documentation
===================
Gestion app admin
=================
.. automodule:: gestion.admin
:members:
:undoc-members:
Users app admin
===============
.. automodule:: users.admin
:members:
:undoc-members:
Preferences app admin
=====================
.. automodule:: preferences.admin
:members:
:undoc-members:

52
docs/_build/html/_sources/modules/django_tex.rst.txt

@ -0,0 +1,52 @@
========================
Django_tex documentation
========================
Core
====
.. automodule:: django_tex.core
:members:
:undoc-members:
Engine
======
.. automodule:: django_tex.engine
:members:
:undoc-members:
Environment
===========
.. automodule:: django_tex.environment
:members:
:undoc-members:
Exceptions
==========
.. automodule:: django_tex.exceptions
:members:
:undoc-members:
Filters
=======
.. automodule:: django_tex.filters
:members:
:undoc-members:
Models
======
.. automodule:: django_tex.models
:members:
:undoc-members:
Views
=====
.. automodule:: django_tex.views
:members:
:undoc-members:

24
docs/_build/html/_sources/modules/forms.rst.txt

@ -0,0 +1,24 @@
===================
Forms documentation
===================
Gestion app forms
=================
.. automodule:: gestion.forms
:members:
:undoc-members:
Users app forms
===============
.. automodule:: users.forms
:members:
:undoc-members:
Preferences app forms
=====================
.. automodule:: preferences.forms
:members:
:undoc-members:

24
docs/_build/html/_sources/modules/models.rst.txt

@ -0,0 +1,24 @@
====================
Models documentation
====================
Gestion app models
==================
.. automodule:: gestion.models
:members:
:undoc-members:
Users app models
================
.. automodule:: users.models
:members:
:undoc-members:
Preferences app models
======================
.. automodule:: preferences.models
:members:
:undoc-members:

24
docs/_build/html/_sources/modules/utils.rst.txt

@ -0,0 +1,24 @@
===================
Utils documentation
===================
ACL
===
.. automodule:: coopeV3.acl
:members:
:undoc-members:
CoopeV3 templatetags
====================
.. automodule:: coopeV3.templatetags.vip
:members:
:undoc-members:
Users templatetags
==================
.. automodule:: users.templatetags.users_extra
:members:
:undoc-members:

31
docs/_build/html/_sources/modules/views.rst.txt

@ -0,0 +1,31 @@
===================
Views documentation
===================
Gestion app views
=================
.. automodule:: gestion.views
:members:
:undoc-members:
Users app views
===============
.. automodule:: users.views
:members:
:undoc-members:
Preferences app views
=====================
.. automodule:: preferences.views
:members:
:undoc-members:
coopeV3 app views
=================
.. automodule:: coopeV3.views
:members:
:undoc-members:

86
docs/_build/html/_sources/preferences.migrations.rst.txt

@ -0,0 +1,86 @@
preferences.migrations package
==============================
Submodules
----------
preferences.migrations.0001\_initial module
-------------------------------------------
.. automodule:: preferences.migrations.0001_initial
:members:
:undoc-members:
:show-inheritance:
preferences.migrations.0002\_auto\_20181221\_2151 module
--------------------------------------------------------
.. automodule:: preferences.migrations.0002_auto_20181221_2151
:members:
:undoc-members:
:show-inheritance:
preferences.migrations.0003\_auto\_20181223\_1440 module
--------------------------------------------------------
.. automodule:: preferences.migrations.0003_auto_20181223_1440
:members:
:undoc-members:
:show-inheritance:
preferences.migrations.0004\_auto\_20190106\_0452 module
--------------------------------------------------------
.. automodule:: preferences.migrations.0004_auto_20190106_0452
:members:
:undoc-members:
:show-inheritance:
preferences.migrations.0005\_auto\_20190106\_0513 module
--------------------------------------------------------
.. automodule:: preferences.migrations.0005_auto_20190106_0513
:members:
:undoc-members:
:show-inheritance:
preferences.migrations.0006\_auto\_20190119\_2326 module
--------------------------------------------------------
.. automodule:: preferences.migrations.0006_auto_20190119_2326
:members:
:undoc-members:
:show-inheritance:
preferences.migrations.0007\_auto\_20190120\_1208 module
--------------------------------------------------------
.. automodule:: preferences.migrations.0007_auto_20190120_1208
:members:
:undoc-members:
:show-inheritance:
preferences.migrations.0008\_auto\_20190218\_1802 module
--------------------------------------------------------
.. automodule:: preferences.migrations.0008_auto_20190218_1802
:members:
:undoc-members:
:show-inheritance:
preferences.migrations.0009\_auto\_20190227\_0859 module
--------------------------------------------------------
.. automodule:: preferences.migrations.0009_auto_20190227_0859
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: preferences.migrations
:members:
:undoc-members:
:show-inheritance:

75
docs/_build/html/_sources/preferences.rst.txt

@ -0,0 +1,75 @@
preferences package
===================
Subpackages
-----------
.. toctree::
Submodules
----------
preferences.admin module
------------------------
.. automodule:: preferences.admin
:members:
:undoc-members:
:show-inheritance:
preferences.apps module
-----------------------
.. automodule:: preferences.apps
:members:
:undoc-members:
:show-inheritance:
preferences.forms module
------------------------
.. automodule:: preferences.forms
:members:
:undoc-members:
:show-inheritance:
preferences.models module
-------------------------
.. automodule:: preferences.models
:members:
:undoc-members:
:show-inheritance:
preferences.tests module
------------------------
.. automodule:: preferences.tests
:members:
:undoc-members:
:show-inheritance:
preferences.urls module
-----------------------
.. automodule:: preferences.urls
:members:
:undoc-members:
:show-inheritance:
preferences.views module
------------------------
.. automodule:: preferences.views
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: preferences
:members:
:undoc-members:
:show-inheritance:

54
docs/_build/html/_sources/users.migrations.rst.txt

@ -0,0 +1,54 @@
users.migrations package
========================
Submodules
----------
users.migrations.0001\_initial module
-------------------------------------
.. automodule:: users.migrations.0001_initial
:members:
:undoc-members:
:show-inheritance:
users.migrations.0002\_auto\_20190218\_2231 module
--------------------------------------------------
.. automodule:: users.migrations.0002_auto_20190218_2231
:members:
:undoc-members:
:show-inheritance:
users.migrations.0003\_auto\_20190219\_1921 module
--------------------------------------------------
.. automodule:: users.migrations.0003_auto_20190219_1921
:members:
:undoc-members:
:show-inheritance:
users.migrations.0004\_auto\_20190226\_2313 module
--------------------------------------------------
.. automodule:: users.migrations.0004_auto_20190226_2313
:members:
:undoc-members:
:show-inheritance:
users.migrations.0005\_auto\_20190227\_0859 module
--------------------------------------------------
.. automodule:: users.migrations.0005_auto_20190227_0859
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: users.migrations
:members:
:undoc-members:
:show-inheritance:

75
docs/_build/html/_sources/users.rst.txt

@ -0,0 +1,75 @@
users package
=============
Subpackages
-----------
.. toctree::
Submodules
----------
users.admin module
------------------
.. automodule:: users.admin
:members:
:undoc-members:
:show-inheritance:
users.apps module
-----------------
.. automodule:: users.apps
:members:
:undoc-members:
:show-inheritance:
users.forms module
------------------
.. automodule:: users.forms
:members:
:undoc-members:
:show-inheritance:
users.models module
-------------------
.. automodule:: users.models
:members:
:undoc-members:
:show-inheritance:
users.tests module
------------------
.. automodule:: users.tests
:members:
:undoc-members:
:show-inheritance:
users.urls module
-----------------
.. automodule:: users.urls
:members:
:undoc-members:
:show-inheritance:
users.views module
------------------
.. automodule:: users.views
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: users
:members:
:undoc-members:
:show-inheritance:

3667
docs/_build/html/_static/_stemmer.js

File diff suppressed because it is too large

BIN
docs/_build/html/_static/ajax-loader.gif

Binary file not shown.

After

Width:  |  Height:  |  Size: 673 B

701
docs/_build/html/_static/alabaster.css

@ -0,0 +1,701 @@
@import url("basic.css");
/* -- page layout ----------------------------------------------------------- */
body {
font-family: Georgia, serif;
font-size: 17px;
background-color: #fff;
color: #000;
margin: 0;
padding: 0;
}
div.document {
width: 940px;
margin: 30px auto 0 auto;
}
div.documentwrapper {
float: left;
width: 100%;
}
div.bodywrapper {
margin: 0 0 0 220px;
}
div.sphinxsidebar {
width: 220px;
font-size: 14px;
line-height: 1.5;
}
hr {
border: 1px solid #B1B4B6;
}
div.body {
background-color: #fff;
color: #3E4349;
padding: 0 30px 0 30px;
}
div.body > .section {
text-align: left;
}
div.footer {
width: 940px;
margin: 20px auto 30px auto;
font-size: 14px;
color: #888;
text-align: right;
}
div.footer a {
color: #888;
}
p.caption {
font-family: inherit;
font-size: inherit;
}
div.relations {
display: none;
}
div.sphinxsidebar a {
color: #444;
text-decoration: none;
border-bottom: 1px dotted #999;
}
div.sphinxsidebar a:hover {
border-bottom: 1px solid #999;
}
div.sphinxsidebarwrapper {
padding: 18px 10px;
}
div.sphinxsidebarwrapper p.logo {
padding: 0;
margin: -10px 0 0 0px;
text-align: center;
}
div.sphinxsidebarwrapper h1.logo {
margin-top: -10px;
text-align: center;
margin-bottom: 5px;
text-align: left;
}
div.sphinxsidebarwrapper h1.logo-name {
margin-top: 0px;
}
div.sphinxsidebarwrapper p.blurb {
margin-top: 0;
font-style: normal;
}
div.sphinxsidebar h3,
div.sphinxsidebar h4 {
font-family: Georgia, serif;
color: #444;
font-size: 24px;
font-weight: normal;
margin: 0 0 5px 0;
padding: 0;
}
div.sphinxsidebar h4 {
font-size: 20px;
}
div.sphinxsidebar h3 a {
color: #444;
}
div.sphinxsidebar p.logo a,
div.sphinxsidebar h3 a,
div.sphinxsidebar p.logo a:hover,
div.sphinxsidebar h3 a:hover {
border: none;
}
div.sphinxsidebar p {
color: #555;
margin: 10px 0;
}
div.sphinxsidebar ul {
margin: 10px 0;
padding: 0;
color: #000;
}
div.sphinxsidebar ul li.toctree-l1 > a {
font-size: 120%;
}
div.sphinxsidebar ul li.toctree-l2 > a {
font-size: 110%;
}
div.sphinxsidebar input {
border: 1px solid #CCC;
font-family: Georgia, serif;
font-size: 1em;
}
div.sphinxsidebar hr {
border: none;
height: 1px;
color: #AAA;
background: #AAA;
text-align: left;
margin-left: 0;
width: 50%;
}
div.sphinxsidebar .badge {
border-bottom: none;
}
div.sphinxsidebar .badge:hover {
border-bottom: none;
}
/* To address an issue with donation coming after search */
div.sphinxsidebar h3.donation {
margin-top: 10px;
}
/* -- body styles ----------------------------------------------------------- */
a {
color: #004B6B;
text-decoration: underline;
}
a:hover {
color: #6D4100;
text-decoration: underline;
}
div.body h1,
div.body h2,
div.body h3,
div.body h4,
div.body h5,
div.body h6 {
font-family: Georgia, serif;
font-weight: normal;
margin: 30px 0px 10px 0px;
padding: 0;
}
div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; }
div.body h2 { font-size: 180%; }
div.body h3 { font-size: 150%; }
div.body h4 { font-size: 130%; }
div.body h5 { font-size: 100%; }
div.body h6 { font-size: 100%; }
a.headerlink {
color: #DDD;
padding: 0 4px;
text-decoration: none;
}
a.headerlink:hover {
color: #444;
background: #EAEAEA;
}
div.body p, div.body dd, div.body li {
line-height: 1.4em;
}
div.admonition {
margin: 20px 0px;
padding: 10px 30px;
background-color: #EEE;
border: 1px solid #CCC;
}
div.admonition tt.xref, div.admonition code.xref, div.admonition a tt {
background-color: #FBFBFB;
border-bottom: 1px solid #fafafa;
}
div.admonition p.admonition-title {
font-family: Georgia, serif;
font-weight: normal;
font-size: 24px;
margin: 0 0 10px 0;
padding: 0;
line-height: 1;
}
div.admonition p.last {
margin-bottom: 0;
}
div.highlight {
background-color: #fff;
}
dt:target, .highlight {
background: #FAF3E8;
}
div.warning {
background-color: #FCC;
border: 1px solid #FAA;
}
div.danger {
background-color: #FCC;
border: 1px solid #FAA;
-moz-box-shadow: 2px 2px 4px #D52C2C;
-webkit-box-shadow: 2px 2px 4px #D52C2C;
box-shadow: 2px 2px 4px #D52C2C;
}
div.error {
background-color: #FCC;
border: 1px solid #FAA;
-moz-box-shadow: 2px 2px 4px #D52C2C;
-webkit-box-shadow: 2px 2px 4px #D52C2C;
box-shadow: 2px 2px 4px #D52C2C;
}
div.caution {
background-color: #FCC;
border: 1px solid #FAA;
}
div.attention {
background-color: #FCC;
border: 1px solid #FAA;
}
div.important {
background-color: #EEE;
border: 1px solid #CCC;
}
div.note {
background-color: #EEE;
border: 1px solid #CCC;
}
div.tip {
background-color: #EEE;
border: 1px solid #CCC;
}
div.hint {
background-color: #EEE;
border: 1px solid #CCC;
}
div.seealso {
background-color: #EEE;
border: 1px solid #CCC;
}
div.topic {
background-color: #EEE;
}
p.admonition-title {
display: inline;
}
p.admonition-title:after {
content: ":";
}
pre, tt, code {
font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
font-size: 0.9em;
}
.hll {
background-color: #FFC;
margin: 0 -12px;
padding: 0 12px;
display: block;
}
img.screenshot {
}
tt.descname, tt.descclassname, code.descname, code.descclassname {
font-size: 0.95em;
}
tt.descname, code.descname {
padding-right: 0.08em;
}
img.screenshot {
-moz-box-shadow: 2px 2px 4px #EEE;
-webkit-box-shadow: 2px 2px 4px #EEE;
box-shadow: 2px 2px 4px #EEE;
}
table.docutils {
border: 1px solid #888;
-moz-box-shadow: 2px 2px 4px #EEE;
-webkit-box-shadow: 2px 2px 4px #EEE;
box-shadow: 2px 2px 4px #EEE;
}
table.docutils td, table.docutils th {
border: 1px solid #888;
padding: 0.25em 0.7em;
}
table.field-list, table.footnote {
border: none;
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
table.footnote {
margin: 15px 0;
width: 100%;
border: 1px solid #EEE;
background: #FDFDFD;
font-size: 0.9em;
}
table.footnote + table.footnote {
margin-top: -15px;
border-top: none;
}
table.field-list th {
padding: 0 0.8em 0 0;
}
table.field-list td {
padding: 0;
}
table.field-list p {
margin-bottom: 0.8em;
}
/* Cloned from
* https://github.com/sphinx-doc/sphinx/commit/ef60dbfce09286b20b7385333d63a60321784e68
*/
.field-name {
-moz-hyphens: manual;
-ms-hyphens: manual;
-webkit-hyphens: manual;
hyphens: manual;
}
table.footnote td.label {
width: .1px;
padding: 0.3em 0 0.3em 0.5em;
}
table.footnote td {
padding: 0.3em 0.5em;
}
dl {
margin: 0;
padding: 0;
}
dl dd {
margin-left: 30px;
}
blockquote {
margin: 0 0 0 30px;
padding: 0;
}
ul, ol {
/* Matches the 30px from the narrow-screen "li > ul" selector below */
margin: 10px 0 10px 30px;
padding: 0;
}
pre {
background: #EEE;
padding: 7px 30px;
margin: 15px 0px;
line-height: 1.3em;
}
div.viewcode-block:target {
background: #ffd;
}
dl pre, blockquote pre, li pre {
margin-left: 0;
padding-left: 30px;
}
tt, code {
background-color: #ecf0f3;
color: #222;
/* padding: 1px 2px; */
}
tt.xref, code.xref, a tt {
background-color: #FBFBFB;
border-bottom: 1px solid #fff;
}
a.reference {
text-decoration: none;
border-bottom: 1px dotted #004B6B;
}
/* Don't put an underline on images */
a.image-reference, a.image-reference:hover {
border-bottom: none;
}
a.reference:hover {
border-bottom: 1px solid #6D4100;
}
a.footnote-reference {
text-decoration: none;
font-size: 0.7em;
vertical-align: top;
border-bottom: 1px dotted #004B6B;
}
a.footnote-reference:hover {
border-bottom: 1px solid #6D4100;
}
a:hover tt, a:hover code {
background: #EEE;
}
@media screen and (max-width: 870px) {
div.sphinxsidebar {
display: none;
}
div.document {
width: 100%;
}
div.documentwrapper {
margin-left: 0;
margin-top: 0;
margin-right: 0;
margin-bottom: 0;
}
div.bodywrapper {
margin-top: 0;
margin-right: 0;
margin-bottom: 0;
margin-left: 0;
}
ul {
margin-left: 0;
}
li > ul {
/* Matches the 30px from the "ul, ol" selector above */
margin-left: 30px;
}
.document {
width: auto;
}
.footer {
width: auto;
}
.bodywrapper {
margin: 0;
}
.footer {
width: auto;
}
.github {
display: none;
}
}
@media screen and (max-width: 875px) {
body {
margin: 0;
padding: 20px 30px;
}
div.documentwrapper {
float: none;
background: #fff;
}
div.sphinxsidebar {
display: block;
float: none;
width: 102.5%;
margin: 50px -30px -20px -30px;
padding: 10px 20px;
background: #333;
color: #FFF;
}
div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p,
div.sphinxsidebar h3 a {
color: #fff;
}
div.sphinxsidebar a {
color: #AAA;
}
div.sphinxsidebar p.logo {
display: none;
}
div.document {
width: 100%;
margin: 0;
}
div.footer {
display: none;
}
div.bodywrapper {
margin: 0;
}
div.body {
min-height: 0;
padding: 0;
}
.rtd_doc_footer {
display: none;
}
.document {
width: auto;
}
.footer {
width: auto;
}
.footer {
width: auto;
}
.github {
display: none;
}
}
/* misc. */
.revsys-inline {
display: none!important;
}
/* Make nested-list/multi-paragraph items look better in Releases changelog
* pages. Without this, docutils' magical list fuckery causes inconsistent
* formatting between different release sub-lists.
*/
div#changelog > div.section > ul > li > p:only-child {
margin-bottom: 0;
}
/* Hide fugly table cell borders in ..bibliography:: directive output */
table.docutils.citation, table.docutils.citation td, table.docutils.citation th {
border: none;
/* Below needed in some edge cases; if not applied, bottom shadows appear */
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
/* relbar */
.related {
line-height: 30px;
width: 100%;
font-size: 0.9rem;
}
.related.top {
border-bottom: 1px solid #EEE;
margin-bottom: 20px;
}
.related.bottom {
border-top: 1px solid #EEE;
}
.related ul {
padding: 0;
margin: 0;
list-style: none;
}
.related li {
display: inline;
}
nav#rellinks {
float: right;
}
nav#rellinks li+li:before {
content: "|";
}
nav#breadcrumbs li+li:before {
content: "\00BB";
}
/* Hide certain items when printing */
@media print {
div.related {
display: none;
}
}

676
docs/_build/html/_static/basic.css

@ -0,0 +1,676 @@
/*
* basic.css
* ~~~~~~~~~
*
* Sphinx stylesheet -- basic theme.
*
* :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
/* -- main layout ----------------------------------------------------------- */
div.clearer {
clear: both;
}
/* -- relbar ---------------------------------------------------------------- */
div.related {
width: 100%;
font-size: 90%;
}
div.related h3 {
display: none;
}
div.related ul {
margin: 0;
padding: 0 0 0 10px;
list-style: none;
}
div.related li {
display: inline;
}
div.related li.right {
float: right;
margin-right: 5px;
}
/* -- sidebar --------------------------------------------------------------- */
div.sphinxsidebarwrapper {
padding: 10px 5px 0 10px;
}
div.sphinxsidebar {
float: left;
width: 230px;
margin-left: -100%;
font-size: 90%;
word-wrap: break-word;
overflow-wrap : break-word;
}
div.sphinxsidebar ul {
list-style: none;
}
div.sphinxsidebar ul ul,
div.sphinxsidebar ul.want-points {
margin-left: 20px;
list-style: square;
}
div.sphinxsidebar ul ul {
margin-top: 0;
margin-bottom: 0;
}
div.sphinxsidebar form {
margin-top: 10px;
}
div.sphinxsidebar input {
border: 1px solid #98dbcc;
font-family: sans-serif;
font-size: 1em;
}
div.sphinxsidebar #searchbox form.search {
overflow: hidden;
}
div.sphinxsidebar #searchbox input[type="text"] {
float: left;
width: 80%;
padding: 0.25em;
box-sizing: border-box;
}
div.sphinxsidebar #searchbox input[type="submit"] {
float: left;
width: 20%;
border-left: none;
padding: 0.25em;
box-sizing: border-box;
}
img {
border: 0;
max-width: 100%;
}
/* -- search page ----------------------------------------------------------- */
ul.search {
margin: 10px 0 0 20px;
padding: 0;
}
ul.search li {
padding: 5px 0 5px 20px;
background-image: url(file.png);
background-repeat: no-repeat;
background-position: 0 7px;
}
ul.search li a {
font-weight: bold;
}
ul.search li div.context {
color: #888;
margin: 2px 0 0 30px;
text-align: left;
}
ul.keywordmatches li.goodmatch a {
font-weight: bold;
}
/* -- index page ------------------------------------------------------------ */
table.contentstable {
width: 90%;
margin-left: auto;
margin-right: auto;
}
table.contentstable p.biglink {
line-height: 150%;
}
a.biglink {
font-size: 1.3em;
}
span.linkdescr {
font-style: italic;
padding-top: 5px;
font-size: 90%;
}
/* -- general index --------------------------------------------------------- */
table.indextable {
width: 100%;
}
table.indextable td {
text-align: left;
vertical-align: top;
}
table.indextable ul {
margin-top: 0;
margin-bottom: 0;
list-style-type: none;
}
table.indextable > tbody > tr > td > ul {
padding-left: 0em;
}
table.indextable tr.pcap {
height: 10px;
}
table.indextable tr.cap {
margin-top: 10px;
background-color: #f2f2f2;
}
img.toggler {
margin-right: 3px;
margin-top: 3px;
cursor: pointer;
}
div.modindex-jumpbox {
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
margin: 1em 0 1em 0;
padding: 0.4em;
}
div.genindex-jumpbox {
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
margin: 1em 0 1em 0;
padding: 0.4em;
}
/* -- domain module index --------------------------------------------------- */
table.modindextable td {
padding: 2px;
border-collapse: collapse;
}
/* -- general body styles --------------------------------------------------- */
div.body {
min-width: 450px;
max-width: 800px;
}
div.body p, div.body dd, div.body li, div.body blockquote {
-moz-hyphens: auto;
-ms-hyphens: auto;
-webkit-hyphens: auto;
hyphens: auto;
}
a.headerlink {
visibility: hidden;
}
h1:hover > a.headerlink,
h2:hover > a.headerlink,
h3:hover > a.headerlink,
h4:hover > a.headerlink,
h5:hover > a.headerlink,
h6:hover > a.headerlink,
dt:hover > a.headerlink,
caption:hover > a.headerlink,
p.caption:hover > a.headerlink,
div.code-block-caption:hover > a.headerlink {
visibility: visible;
}
div.body p.caption {
text-align: inherit;
}
div.body td {
text-align: left;
}
.first {
margin-top: 0 !important;
}
p.rubric {
margin-top: 30px;
font-weight: bold;
}
img.align-left, .figure.align-left, object.align-left {
clear: left;
float: left;
margin-right: 1em;
}
img.align-right, .figure.align-right, object.align-right {
clear: right;
float: right;
margin-left: 1em;
}
img.align-center, .figure.align-center, object.align-center {
display: block;
margin-left: auto;
margin-right: auto;
}
.align-left {
text-align: left;
}
.align-center {
text-align: center;
}
.align-right {
text-align: right;
}
/* -- sidebars -------------------------------------------------------------- */
div.sidebar {
margin: 0 0 0.5em 1em;
border: 1px solid #ddb;
padding: 7px 7px 0 7px;
background-color: #ffe;
width: 40%;
float: right;
}
p.sidebar-title {
font-weight: bold;
}
/* -- topics ---------------------------------------------------------------- */
div.topic {
border: 1px solid #ccc;
padding: 7px 7px 0 7px;
margin: 10px 0 10px 0;
}
p.topic-title {
font-size: 1.1em;
font-weight: bold;
margin-top: 10px;
}
/* -- admonitions ----------------------------------------------------------- */
div.admonition {
margin-top: 10px;
margin-bottom: 10px;
padding: 7px;
}
div.admonition dt {
font-weight: bold;
}
div.admonition dl {
margin-bottom: 0;
}
p.admonition-title {
margin: 0px 10px 5px 0px;
font-weight: bold;
}
div.body p.centered {
text-align: center;
margin-top: 25px;
}
/* -- tables ---------------------------------------------------------------- */
table.docutils {
border: 0;
border-collapse: collapse;
}
table.align-center {
margin-left: auto;
margin-right: auto;
}
table caption span.caption-number {
font-style: italic;
}
table caption span.caption-text {
}
table.docutils td, table.docutils th {
padding: 1px 8px 1px 5px;
border-top: 0;
border-left: 0;
border-right: 0;
border-bottom: 1px solid #aaa;
}
table.footnote td, table.footnote th {
border: 0 !important;
}
th {
text-align: left;
padding-right: 5px;
}
table.citation {
border-left: solid 1px gray;
margin-left: 1px;
}
table.citation td {
border-bottom: none;
}
/* -- figures --------------------------------------------------------------- */
div.figure {
margin: 0.5em;
padding: 0.5em;
}
div.figure p.caption {
padding: 0.3em;
}
div.figure p.caption span.caption-number {
font-style: italic;
}
div.figure p.caption span.caption-text {
}
/* -- field list styles ----------------------------------------------------- */
table.field-list td, table.field-list th {
border: 0 !important;
}
.field-list ul {
margin: 0;
padding-left: 1em;
}
.field-list p {
margin: 0;
}
.field-name {
-moz-hyphens: manual;
-ms-hyphens: manual;
-webkit-hyphens: manual;
hyphens: manual;
}
/* -- hlist styles ---------------------------------------------------------- */
table.hlist td {
vertical-align: top;
}
/* -- other body styles ----------------------------------------------------- */
ol.arabic {
list-style: decimal;
}
ol.loweralpha {
list-style: lower-alpha;
}
ol.upperalpha {
list-style: upper-alpha;
}
ol.lowerroman {
list-style: lower-roman;
}
ol.upperroman {
list-style: upper-roman;
}
dl {
margin-bottom: 15px;
}
dd p {
margin-top: 0px;
}
dd ul, dd table {
margin-bottom: 10px;
}
dd {
margin-top: 3px;
margin-bottom: 10px;
margin-left: 30px;
}
dt:target, span.highlighted {
background-color: #fbe54e;
}
rect.highlighted {
fill: #fbe54e;
}
dl.glossary dt {
font-weight: bold;
font-size: 1.1em;
}
.optional {
font-size: 1.3em;
}
.sig-paren {
font-size: larger;
}
.versionmodified {
font-style: italic;
}
.system-message {
background-color: #fda;
padding: 5px;
border: 3px solid red;
}
.footnote:target {
background-color: #ffa;
}
.line-block {
display: block;
margin-top: 1em;
margin-bottom: 1em;
}
.line-block .line-block {
margin-top: 0;
margin-bottom: 0;
margin-left: 1.5em;
}
.guilabel, .menuselection {
font-family: sans-serif;
}
.accelerator {
text-decoration: underline;
}
.classifier {
font-style: oblique;
}
abbr, acronym {
border-bottom: dotted 1px;
cursor: help;
}
/* -- code displays --------------------------------------------------------- */
pre {
overflow: auto;
overflow-y: hidden; /* fixes display issues on Chrome browsers */
}
span.pre {
-moz-hyphens: none;
-ms-hyphens: none;
-webkit-hyphens: none;
hyphens: none;
}
td.linenos pre {
padding: 5px 0px;
border: 0;
background-color: transparent;
color: #aaa;
}
table.highlighttable {
margin-left: 0.5em;
}
table.highlighttable td {
padding: 0 0.5em 0 0.5em;
}
div.code-block-caption {
padding: 2px 5px;
font-size: small;
}
div.code-block-caption code {
background-color: transparent;
}
div.code-block-caption + div > div.highlight > pre {
margin-top: 0;
}
div.code-block-caption span.caption-number {
padding: 0.1em 0.3em;
font-style: italic;
}
div.code-block-caption span.caption-text {
}
div.literal-block-wrapper {
padding: 1em 1em 0;
}
div.literal-block-wrapper div.highlight {
margin: 0;
}
code.descname {
background-color: transparent;
font-weight: bold;
font-size: 1.2em;
}
code.descclassname {
background-color: transparent;
}
code.xref, a code {
background-color: transparent;
font-weight: bold;
}
h1 code, h2 code, h3 code, h4 code, h5 code, h6 code {
background-color: transparent;
}
.viewcode-link {
float: right;
}
.viewcode-back {
float: right;
font-family: sans-serif;
}
div.viewcode-block:target {
margin: -1px -10px;
padding: 0 10px;
}
/* -- math display ---------------------------------------------------------- */
img.math {
vertical-align: middle;
}
div.body div.math p {
text-align: center;
}
span.eqno {
float: right;
}
span.eqno a.headerlink {
position: relative;
left: 0px;
z-index: 1;
}
div.math:hover a.headerlink {
visibility: visible;
}
/* -- printout stylesheet --------------------------------------------------- */
@media print {
div.document,
div.documentwrapper,
div.bodywrapper {
margin: 0 !important;
width: 100%;
}
div.sphinxsidebar,
div.related,
div.footer,
#top-link {
display: none;
}
}

BIN
docs/_build/html/_static/comment-bright.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 756 B

BIN
docs/_build/html/_static/comment-close.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 829 B

BIN
docs/_build/html/_static/comment.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 641 B

1
docs/_build/html/_static/css/badge_only.css

@ -0,0 +1 @@
.fa:before{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:""}.clearfix:after{clear:both}@font-face{font-family:FontAwesome;font-weight:normal;font-style:normal;src:url("../fonts/fontawesome-webfont.eot");src:url("../fonts/fontawesome-webfont.eot?#iefix") format("embedded-opentype"),url("../fonts/fontawesome-webfont.woff") format("woff"),url("../fonts/fontawesome-webfont.ttf") format("truetype"),url("../fonts/fontawesome-webfont.svg#FontAwesome") format("svg")}.fa:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;text-decoration:inherit}a .fa{display:inline-block;text-decoration:inherit}li .fa{display:inline-block}li .fa-large:before,li .fa-large:before{width:1.875em}ul.fas{list-style-type:none;margin-left:2em;text-indent:-0.8em}ul.fas li .fa{width:.8em}ul.fas li .fa-large:before,ul.fas li .fa-large:before{vertical-align:baseline}.fa-book:before{content:""}.icon-book:before{content:""}.fa-caret-down:before{content:""}.icon-caret-down:before{content:""}.fa-caret-up:before{content:""}.icon-caret-up:before{content:""}.fa-caret-left:before{content:""}.icon-caret-left:before{content:""}.fa-caret-right:before{content:""}.icon-caret-right:before{content:""}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:"Lato","proxima-nova","Helvetica Neue",Arial,sans-serif;z-index:400}.rst-versions a{color:#2980B9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27AE60;*zoom:1}.rst-versions .rst-current-version:before,.rst-versions .rst-current-version:after{display:table;content:""}.rst-versions .rst-current-version:after{clear:both}.rst-versions .rst-current-version .fa{color:#fcfcfc}.rst-versions .rst-current-version .fa-book{float:left}.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#E74C3C;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#F1C40F;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:gray;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:solid 1px #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .icon-book{float:none}.rst-versions.rst-badge .fa-book{float:none}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book{float:left}.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge .rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width: 768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}

6
docs/_build/html/_static/css/theme.css

File diff suppressed because one or more lines are too long

1
docs/_build/html/_static/custom.css

@ -0,0 +1 @@
/* This file intentionally left blank. */

315
docs/_build/html/_static/doctools.js

@ -0,0 +1,315 @@
/*
* doctools.js
* ~~~~~~~~~~~
*
* Sphinx JavaScript utilities for all documentation.
*
* :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
/**
* select a different prefix for underscore
*/
$u = _.noConflict();
/**
* make the code below compatible with browsers without
* an installed firebug like debugger
if (!window.console || !console.firebug) {
var names = ["log", "debug", "info", "warn", "error", "assert", "dir",
"dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace",
"profile", "profileEnd"];
window.console = {};
for (var i = 0; i < names.length; ++i)
window.console[names[i]] = function() {};
}
*/
/**
* small helper function to urldecode strings
*/
jQuery.urldecode = function(x) {
return decodeURIComponent(x).replace(/\+/g, ' ');
};
/**
* small helper function to urlencode strings
*/
jQuery.urlencode = encodeURIComponent;
/**
* This function returns the parsed url parameters of the
* current request. Multiple values per key are supported,
* it will always return arrays of strings for the value parts.
*/
jQuery.getQueryParameters = function(s) {
if (typeof s === 'undefined')
s = document.location.search;
var parts = s.substr(s.indexOf('?') + 1).split('&');
var result = {};
for (var i = 0; i < parts.length; i++) {
var tmp = parts[i].split('=', 2);
var key = jQuery.urldecode(tmp[0]);
var value = jQuery.urldecode(tmp[1]);
if (key in result)
result[key].push(value);
else
result[key] = [value];
}
return result;
};
/**
* highlight a given string on a jquery object by wrapping it in
* span elements with the given class name.
*/
jQuery.fn.highlightText = function(text, className) {
function highlight(node, addItems) {
if (node.nodeType === 3) {
var val = node.nodeValue;
var pos = val.toLowerCase().indexOf(text);
if (pos >= 0 &&
!jQuery(node.parentNode).hasClass(className) &&
!jQuery(node.parentNode).hasClass("nohighlight")) {
var span;
var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg");
if (isInSVG) {
span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
} else {
span = document.createElement("span");
span.className = className;
}
span.appendChild(document.createTextNode(val.substr(pos, text.length)));
node.parentNode.insertBefore(span, node.parentNode.insertBefore(
document.createTextNode(val.substr(pos + text.length)),
node.nextSibling));
node.nodeValue = val.substr(0, pos);
if (isInSVG) {
var bbox = span.getBBox();
var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
rect.x.baseVal.value = bbox.x;
rect.y.baseVal.value = bbox.y;
rect.width.baseVal.value = bbox.width;
rect.height.baseVal.value = bbox.height;
rect.setAttribute('class', className);
var parentOfText = node.parentNode.parentNode;
addItems.push({
"parent": node.parentNode,
"target": rect});
}
}
}
else if (!jQuery(node).is("button, select, textarea")) {
jQuery.each(node.childNodes, function() {
highlight(this, addItems);
});
}
}
var addItems = [];
var result = this.each(function() {
highlight(this, addItems);
});
for (var i = 0; i < addItems.length; ++i) {
jQuery(addItems[i].parent).before(addItems[i].target);
}
return result;
};
/*
* backward compatibility for jQuery.browser
* This will be supported until firefox bug is fixed.
*/
if (!jQuery.browser) {
jQuery.uaMatch = function(ua) {
ua = ua.toLowerCase();
var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
/(webkit)[ \/]([\w.]+)/.exec(ua) ||
/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
/(msie) ([\w.]+)/.exec(ua) ||
ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) ||
[];
return {
browser: match[ 1 ] || "",
version: match[ 2 ] || "0"
};
};
jQuery.browser = {};
jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true;
}
/**
* Small JavaScript module for the documentation.
*/
var Documentation = {
init : function() {
this.fixFirefoxAnchorBug();
this.highlightSearchWords();
this.initIndexTable();
if (DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) {
this.initOnKeyListeners();
}
},
/**
* i18n support
*/
TRANSLATIONS : {},
PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; },
LOCALE : 'unknown',
// gettext and ngettext don't access this so that the functions
// can safely bound to a different name (_ = Documentation.gettext)
gettext : function(string) {
var translated = Documentation.TRANSLATIONS[string];
if (typeof translated === 'undefined')
return string;
return (typeof translated === 'string') ? translated : translated[0];
},
ngettext : function(singular, plural, n) {
var translated = Documentation.TRANSLATIONS[singular];
if (typeof translated === 'undefined')
return (n == 1) ? singular : plural;
return translated[Documentation.PLURALEXPR(n)];
},
addTranslations : function(catalog) {
for (var key in catalog.messages)
this.TRANSLATIONS[key] = catalog.messages[key];
this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')');
this.LOCALE = catalog.locale;
},
/**
* add context elements like header anchor links
*/
addContextElements : function() {
$('div[id] > :header:first').each(function() {
$('<a class="headerlink">\u00B6</a>').
attr('href', '#' + this.id).
attr('title', _('Permalink to this headline')).
appendTo(this);
});
$('dt[id]').each(function() {
$('<a class="headerlink">\u00B6</a>').
attr('href', '#' + this.id).
attr('title', _('Permalink to this definition')).
appendTo(this);
});
},
/**
* workaround a firefox stupidity
* see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075
*/
fixFirefoxAnchorBug : function() {
if (document.location.hash && $.browser.mozilla)
window.setTimeout(function() {
document.location.href += '';
}, 10);
},
/**
* highlight the search words provided in the url in the text
*/
highlightSearchWords : function() {
var params = $.getQueryParameters();
var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : [];
if (terms.length) {
var body = $('div.body');
if (!body.length) {
body = $('body');
}
window.setTimeout(function() {
$.each(terms, function() {
body.highlightText(this.toLowerCase(), 'highlighted');
});
}, 10);
$('<p class="highlight-link"><a href="javascript:Documentation.' +
'hideSearchWords()">' + _('Hide Search Matches') + '</a></p>')
.appendTo($('#searchbox'));
}
},
/**
* init the domain index toggle buttons
*/
initIndexTable : function() {
var togglers = $('img.toggler').click(function() {
var src = $(this).attr('src');
var idnum = $(this).attr('id').substr(7);
$('tr.cg-' + idnum).toggle();
if (src.substr(-9) === 'minus.png')
$(this).attr('src', src.substr(0, src.length-9) + 'plus.png');
else
$(this).attr('src', src.substr(0, src.length-8) + 'minus.png');
}).css('display', '');
if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) {
togglers.click();
}
},
/**
* helper function to hide the search marks again
*/
hideSearchWords : function() {
$('#searchbox .highlight-link').fadeOut(300);
$('span.highlighted').removeClass('highlighted');
},
/**
* make the url absolute
*/
makeURL : function(relativeURL) {
return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL;
},
/**
* get the current relative url
*/
getCurrentURL : function() {
var path = document.location.pathname;
var parts = path.split(/\//);
$.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() {
if (this === '..')
parts.pop();
});
var url = parts.join('/');
return path.substring(url.lastIndexOf('/') + 1, path.length - 1);
},
initOnKeyListeners: function() {
$(document).keyup(function(event) {
var activeElementType = document.activeElement.tagName;
// don't navigate when in search box or textarea
if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT') {
switch (event.keyCode) {
case 37: // left
var prevHref = $('link[rel="prev"]').prop('href');
if (prevHref) {
window.location.href = prevHref;
return false;
}
case 39: // right
var nextHref = $('link[rel="next"]').prop('href');
if (nextHref) {
window.location.href = nextHref;
return false;
}
}
}
});
}
};
// quick alias for translations
_ = Documentation.gettext;
$(document).ready(function() {
Documentation.init();
});

10
docs/_build/html/_static/documentation_options.js

@ -0,0 +1,10 @@
var DOCUMENTATION_OPTIONS = {
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
VERSION: '3.4.0',
LANGUAGE: 'en',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt',
NAVIGATION_WITH_KEYS: false,
};

BIN
docs/_build/html/_static/down-pressed.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

BIN
docs/_build/html/_static/down.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 B

BIN
docs/_build/html/_static/file.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 B

BIN
docs/_build/html/_static/fonts/Inconsolata-Bold.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Inconsolata-Regular.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Inconsolata.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato-Bold.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato-Regular.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-bold.eot

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-bold.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-bold.woff

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-bold.woff2

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-bolditalic.eot

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-bolditalic.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff2

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-italic.eot

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-italic.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-italic.woff

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-italic.woff2

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-regular.eot

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-regular.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-regular.woff

Binary file not shown.

BIN
docs/_build/html/_static/fonts/Lato/lato-regular.woff2

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab-Bold.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab-Regular.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff

Binary file not shown.

BIN
docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2

Binary file not shown.

BIN
docs/_build/html/_static/fonts/fontawesome-webfont.eot

Binary file not shown.

2671
docs/_build/html/_static/fonts/fontawesome-webfont.svg

File diff suppressed because it is too large

After

Width:  |  Height:  |  Size: 434 KiB

BIN
docs/_build/html/_static/fonts/fontawesome-webfont.ttf

Binary file not shown.

BIN
docs/_build/html/_static/fonts/fontawesome-webfont.woff

Binary file not shown.

BIN
docs/_build/html/_static/fonts/fontawesome-webfont.woff2

Binary file not shown.

10253
docs/_build/html/_static/jquery-3.2.1.js

File diff suppressed because it is too large

4
docs/_build/html/_static/jquery.js

File diff suppressed because one or more lines are too long

4
docs/_build/html/_static/js/modernizr.min.js

File diff suppressed because one or more lines are too long

3
docs/_build/html/_static/js/theme.js

@ -0,0 +1,3 @@
/* sphinx_rtd_theme version 0.4.3 | MIT license */
/* Built 20190212 16:02 */
require=function r(s,a,l){function c(e,n){if(!a[e]){if(!s[e]){var i="function"==typeof require&&require;if(!n&&i)return i(e,!0);if(u)return u(e,!0);var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}var o=a[e]={exports:{}};s[e][0].call(o.exports,function(n){return c(s[e][1][n]||n)},o,o.exports,r,s,a,l)}return a[e].exports}for(var u="function"==typeof require&&require,n=0;n<l.length;n++)c(l[n]);return c}({"sphinx-rtd-theme":[function(n,e,i){var jQuery="undefined"!=typeof window?window.jQuery:n("jquery");e.exports.ThemeNav={navBar:null,win:null,winScroll:!1,winResize:!1,linkScroll:!1,winPosition:0,winHeight:null,docHeight:null,isRunning:!1,enable:function(e){var i=this;void 0===e&&(e=!0),i.isRunning||(i.isRunning=!0,jQuery(function(n){i.init(n),i.reset(),i.win.on("hashchange",i.reset),e&&i.win.on("scroll",function(){i.linkScroll||i.winScroll||(i.winScroll=!0,requestAnimationFrame(function(){i.onScroll()}))}),i.win.on("resize",function(){i.winResize||(i.winResize=!0,requestAnimationFrame(function(){i.onResize()}))}),i.onResize()}))},enableSticky:function(){this.enable(!0)},init:function(i){i(document);var t=this;this.navBar=i("div.wy-side-scroll:first"),this.win=i(window),i(document).on("click","[data-toggle='wy-nav-top']",function(){i("[data-toggle='wy-nav-shift']").toggleClass("shift"),i("[data-toggle='rst-versions']").toggleClass("shift")}).on("click",".wy-menu-vertical .current ul li a",function(){var n=i(this);i("[data-toggle='wy-nav-shift']").removeClass("shift"),i("[data-toggle='rst-versions']").toggleClass("shift"),t.toggleCurrent(n),t.hashChange()}).on("click","[data-toggle='rst-current-version']",function(){i("[data-toggle='rst-versions']").toggleClass("shift-up")}),i("table.docutils:not(.field-list,.footnote,.citation)").wrap("<div class='wy-table-responsive'></div>"),i("table.docutils.footnote").wrap("<div class='wy-table-responsive footnote'></div>"),i("table.docutils.citation").wrap("<div class='wy-table-responsive citation'></div>"),i(".wy-menu-vertical ul").not(".simple").siblings("a").each(function(){var e=i(this);expand=i('<span class="toctree-expand"></span>'),expand.on("click",function(n){return t.toggleCurrent(e),n.stopPropagation(),!1}),e.prepend(expand)})},reset:function(){var n=encodeURI(window.location.hash)||"#";try{var e=$(".wy-menu-vertical"),i=e.find('[href="'+n+'"]');if(0===i.length){var t=$('.document [id="'+n.substring(1)+'"]').closest("div.section");0===(i=e.find('[href="#'+t.attr("id")+'"]')).length&&(i=e.find('[href="#"]'))}0<i.length&&($(".wy-menu-vertical .current").removeClass("current"),i.addClass("current"),i.closest("li.toctree-l1").addClass("current"),i.closest("li.toctree-l1").parent().addClass("current"),i.closest("li.toctree-l1").addClass("current"),i.closest("li.toctree-l2").addClass("current"),i.closest("li.toctree-l3").addClass("current"),i.closest("li.toctree-l4").addClass("current"),i[0].scrollIntoView())}catch(o){console.log("Error expanding nav for anchor",o)}},onScroll:function(){this.winScroll=!1;var n=this.win.scrollTop(),e=n+this.winHeight,i=this.navBar.scrollTop()+(n-this.winPosition);n<0||e>this.docHeight||(this.navBar.scrollTop(i),this.winPosition=n)},onResize:function(){this.winResize=!1,this.winHeight=this.win.height(),this.docHeight=$(document).height()},hashChange:function(){this.linkScroll=!0,this.win.one("hashchange",function(){this.linkScroll=!1})},toggleCurrent:function(n){var e=n.closest("li");e.siblings("li.current").removeClass("current"),e.siblings().find("li.current").removeClass("current"),e.find("> ul li.current").removeClass("current"),e.toggleClass("current")}},"undefined"!=typeof window&&(window.SphinxRtdTheme={Navigation:e.exports.ThemeNav,StickyNav:e.exports.ThemeNav}),function(){for(var r=0,n=["ms","moz","webkit","o"],e=0;e<n.length&&!window.requestAnimationFrame;++e)window.requestAnimationFrame=window[n[e]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[n[e]+"CancelAnimationFrame"]||window[n[e]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(n,e){var i=(new Date).getTime(),t=Math.max(0,16-(i-r)),o=window.setTimeout(function(){n(i+t)},t);return r=i+t,o}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(n){clearTimeout(n)})}()},{jquery:"jquery"}]},{},["sphinx-rtd-theme"]);

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save