Skip to content
This repository
Browse code

further improvements to docs

  • Loading branch information...
commit f294cbee873ff229a444d02bb5a01634f0a91658 1 parent 78d938f
Federico Capoano nemesisdesign authored

Showing 49 changed files with 240 additions and 4,192 deletions. Show diff stats Hide diff stats

  1. +0 2  LICENSE
  2. +4 0 docs/_build/.gitignore
  3. BIN  docs/_build/doctrees/environment.pickle
  4. BIN  docs/_build/doctrees/index.doctree
  5. BIN  docs/_build/doctrees/topics/connectors.doctree
  6. BIN  docs/_build/doctrees/topics/install.doctree
  7. +0 4 docs/_build/html/.buildinfo
  8. +0 44 docs/_build/html/_sources/index.txt
  9. +0 45 docs/_build/html/_sources/topics/connectors.txt
  10. +0 394 docs/_build/html/_sources/topics/install.txt
  11. BIN  docs/_build/html/_static/ajax-loader.gif
  12. +0 540 docs/_build/html/_static/basic.css
  13. BIN  docs/_build/html/_static/comment-bright.png
  14. BIN  docs/_build/html/_static/comment-close.png
  15. BIN  docs/_build/html/_static/comment.png
  16. +0 256 docs/_build/html/_static/default.css
  17. +0 235 docs/_build/html/_static/doctools.js
  18. BIN  docs/_build/html/_static/down-pressed.png
  19. BIN  docs/_build/html/_static/down.png
  20. BIN  docs/_build/html/_static/file.png
  21. +0 2  docs/_build/html/_static/jquery.js
  22. BIN  docs/_build/html/_static/minus.png
  23. BIN  docs/_build/html/_static/plus.png
  24. +0 62 docs/_build/html/_static/pygments.css
  25. +0 622 docs/_build/html/_static/searchtools.js
  26. +0 159 docs/_build/html/_static/sidebar.js
  27. +0 31 docs/_build/html/_static/underscore.js
  28. BIN  docs/_build/html/_static/up-pressed.png
  29. BIN  docs/_build/html/_static/up.png
  30. +0 808 docs/_build/html/_static/websupport.js
  31. +0 92 docs/_build/html/genindex.html
  32. +0 145 docs/_build/html/index.html
  33. +0 6 docs/_build/html/objects.inv
  34. +0 99 docs/_build/html/search.html
  35. +0 1  docs/_build/html/searchindex.js
  36. +0 147 docs/_build/html/topics/connectors.html
  37. +0 442 docs/_build/html/topics/install.html
  38. +4 0 docs/_static/.gitignore
  39. +33 0 docs/index.rst
  40. BIN  docs/topics/API-form.png
  41. BIN  docs/topics/API-resource.png
  42. BIN  docs/topics/admin.png
  43. +11 0 docs/topics/admin.rst
  44. +79 0 docs/topics/api.rst
  45. +8 9 docs/topics/connectors.rst
  46. +100 45 docs/topics/install.rst
  47. BIN  docs/topics/nodeshot-api.png
  48. BIN  docs/topics/swagger.png
  49. +1 2  projects/ninux/ninux/settings.example.py
2  LICENSE
@@ -4,8 +4,6 @@
4 4 | | | | (_) | (_| | __/\__ \ | | | (_) | |_
5 5 |_| |_|\___/ \__,_|\___||___/_| |_|\___/ \__|
6 6
7   -A nice snapshot of your wireless community network
8   -
9 7 Copyright (C) 2013 Ninux.org
10 8
11 9 This program is free software: you can redistribute it and/or modify
4 docs/_build/.gitignore
... ... @@ -0,0 +1,4 @@
  1 +# Ignore everything in this directory
  2 +*
  3 +# Except this file
  4 +!.gitignore
BIN  docs/_build/doctrees/environment.pickle
Binary file not shown
BIN  docs/_build/doctrees/index.doctree
Binary file not shown
BIN  docs/_build/doctrees/topics/connectors.doctree
Binary file not shown
BIN  docs/_build/doctrees/topics/install.doctree
Binary file not shown
4 docs/_build/html/.buildinfo
... ... @@ -1,4 +0,0 @@
1   -# Sphinx build info version 1
2   -# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
3   -config: 7465d362d582441455e309b196a60fed
4   -tags: 645f666f9bcd5a90fca523b33c5a78b7
44 docs/_build/html/_sources/index.txt
... ... @@ -1,44 +0,0 @@
1   -.. nodeshot documentation master file, created by
2   - sphinx-quickstart on Tue Nov 26 19:53:42 2013.
3   - You can adapt this file completely to your liking, but it should at least
4   - contain the root `toctree` directive.
5   -
6   -********
7   -Nodeshot
8   -********
9   -
10   -Nodeshot is an open source platform for **crowdsourcing georeferenced data**.
11   -
12   -Its goal it's to provide some robust tools to build a modern customized crowdsourcing web application quickly.
13   -
14   -It is designed to be modular, flexible, configurable and extensible.
15   -
16   -**This documentation is a work in progress**.
17   -
18   -============
19   -Mailing list
20   -============
21   -
22   -If you have any issue or you want to follow the development of this software you can reach us at our `Mailing List`_.
23   -
24   -.. _Mailing List: http://ml.ninux.org/mailman/listinfo/nodeshot
25   -
26   -========
27   -Contents
28   -========
29   -
30   -.. toctree::
31   - :maxdepth: 2
32   -
33   - /topics/install
34   - /topics/connectors
35   -
36   -
37   -==================
38   -Indices and tables
39   -==================
40   -
41   -* :ref:`genindex`
42   -* :ref:`modindex`
43   -* :ref:`search`
44   -
45 docs/_build/html/_sources/topics/connectors.txt
... ... @@ -1,45 +0,0 @@
1   -**********
2   -Connectors
3   -**********
4   -
5   -Prototypal abstraction layer to retrieve information from network devices.
6   -
7   -====================
8   -Console instructions
9   -====================
10   -
11   -Initialize DeviceLogin via command line::
12   -
13   - # cd into project directory
14   - cd [myproject]/ # eg: /var/django/nodeshot/projects/ninux
15   -
16   - # activate virtual env
17   - source python/bin/activate
18   -
19   - # launch shell_plus
20   - python manage.py shell_plus
21   -
22   -Now go on with the python shell commands::
23   -
24   - d = DeviceLogin()
25   - d.node_id = 1 # the node id which you want to test
26   - d.host = '172.16.177.25' # the ip/hostname of the device you want to test
27   - d.username = 'root'
28   - d.password = 'yourpassword'
29   - d.port = 22 # default port is 22
30   - d.store = True # if you want to store it in DB
31   - # path to the connector class you are testing
32   - d.connector_class = 'nodeshot.networking.connectors.ssh.OpenWRT'
33   -
34   - # open session with the protocol you're testing, in this case SSH
35   - d.connector.connect()
36   -
37   - # try some commands
38   - print d.connector.output('cat /etc/openwrt_release')
39   -
40   - # alternatively use a method specific of that class
41   - print d.connector.get_os()
42   - ('OpenWrt', 'Attitude Adjustment (Scooreggione v4 12.09, r36608)')
43   -
44   - # close connection when you're done
45   - d.connector.close()
394 docs/_build/html/_sources/topics/install.txt
... ... @@ -1,394 +0,0 @@
1   -*******
2   -Install
3   -*******
4   -
5   -This file describes how to install nodeshot on **Ubuntu Server 12.04 LTS**.
6   -
7   -Other linux distributions will work as well but you will need to find the right package names to install for the specific distribution you are using.
8   -
9   -If you are installing for a **development environment** you need to follow at least the instructions described in the section :ref:`required-instructions`.
10   -
11   -If you are installing for a **production environment** you need to follow all the instructions including :ref:`production-instructions`.
12   -
13   -**Required dependencies**:
14   -
15   -* Postgresql 9.1+
16   -* Postgis 2.0+
17   -* Git
18   -* python 2.6+
19   -* Django 1.5.5
20   -* Python Virtual Environment
21   -
22   -Recommended stack for production environment:
23   -
24   -* Nginx
25   -* uWSGI
26   -* Supervisor
27   -* Redis
28   -
29   -
30   -.. _required-instructions:
31   -
32   -=====================
33   -Required instructions
34   -=====================
35   -
36   -First of all, become ``root``::
37   -
38   - sudo -s
39   -
40   -Install **postgresql 9.1** or greater and spatial libraries::
41   -
42   - apt-get install python-software-properties software-properties-common build-essential postgresql-9.1 postgresql-server-dev-9.1 libxml2-dev libproj-dev libjson0-dev xsltproc docbook-xsl docbook-mathml gdal-bin binutils libxml2 libxml2-dev libxml2-dev checkinstall proj libpq-dev libgdal1-dev postgresql-contrib
43   -
44   -Build **GEOS** library from source::
45   -
46   - wget http://download.osgeo.org/geos/geos-3.3.8.tar.bz2
47   - tar xvfj geos-3.3.8.tar.bz2
48   - cd geos-3.3.8
49   - ./configure
50   - make
51   - sudo make install
52   - cd ..
53   -
54   -Download and compile **Postgis 2.0**::
55   -
56   - wget http://download.osgeo.org/postgis/source/postgis-2.0.3.tar.gz
57   - tar xfvz postgis-2.0.3.tar.gz
58   - cd postgis-2.0.3
59   - ./configure
60   - make
61   - sudo make install
62   - sudo ldconfig
63   - sudo make comments-install
64   -
65   -Set ``postgres`` user password::
66   -
67   - passwd postgres
68   -
69   -Become ``postgres`` user::
70   -
71   - su postgres
72   -
73   -Create database, create required postgresql extensions,
74   -create a user and grant all privileges to the newly created DB::
75   -
76   - createdb nodeshot
77   - psql nodeshot
78   - CREATE EXTENSION postgis;
79   - CREATE EXTENSION postgis_topology;
80   - CREATE EXTENSION hstore;
81   - CREATE USER nodeshot WITH PASSWORD 'your_password';
82   - GRANT ALL PRIVILEGES ON DATABASE "nodeshot" to nodeshot;
83   -
84   -Now you need to install the required python libraries::
85   -
86   - apt-get install python-setuptools python-virtualenv python-dev
87   -
88   -And **Git**::
89   -
90   - apt-get install git-core
91   -
92   -Clone git repository::
93   -
94   - # TODO: best to install via pip when the project is at a more mature stage
95   - mkdir /var/django
96   - cd /var/django
97   - git clone https://github.com/nemesisdesign/nodeshot.git nodeshot
98   - cd nodeshot
99   - git checkout refactoring
100   -
101   -.. TODO: write how to:
102   -.. * create a project
103   -.. * secret key
104   -
105   -Copy ``settings.example.py`` and modify according to needs::
106   -
107   - cp settings.example.py settings.py
108   - vim settings.py
109   -
110   -The minimum setting keys that you need to change are the following:
111   -
112   -* ``DATABASE`` (host, db, user and pwd)
113   -* ``DOMAIN`` (domain or ip address)
114   -* ``PROTOCOL`` (http or https)
115   -* ``SECRET_KEY`` (see below)
116   -
117   -If you are installing for **development**, you should put **"localhost"** as ``DOMAIN`` and you might comment the ``ALLOWED_HOSTS`` directive.
118   -
119   -Remember to uncomment the ``SECRET_KEY`` setting and slighlty change it.
120   -
121   -For more information about the secret settings, see the relative `Django Documentation`_ section.
122   -
123   -.. _Django Documentation: https://docs.djangoproject.com/en/1.5/ref/settings/#std:setting-SECRET_KEY
124   -
125   -Change secret key in ``settings.py``::
126   -
127   - #SECRET_KEY = .....
128   - # must be uncommented
129   - SECRET_KEY = 'keep same length but change some characters'
130   -
131   -Create a **python virtual environment**, activate it and install dependencies::
132   -
133   - cd /var/django/nodeshot/projects/ninux
134   - virtualenv python
135   - source python/bin/activate
136   - pip install -r ../../requirements.txt
137   - # will prompt you to create a superuser, proceed!
138   - python manage.py syncdb && python manage.py migrate
139   - # static files (css, js, images)
140   - python manage.py collectstatic
141   -
142   -If you are installing for **development**, you are done!
143   -
144   -You just need to **run the django development server** in order to see the web application::
145   -
146   - # for development only!
147   - # listens only on 127.0.0.1
148   - python manage.py runserver
149   - # open browser at http://localhost:8000/admin/
150   -
151   - # alternatively, if you need to reach the dev server for other computers
152   - # on the same LAN, tell it to listen on all the interfaces:
153   - python manage.py runserver 0.0.0.0:8000
154   -
155   -
156   -
157   -.. _production-instructions:
158   -
159   -=======================
160   -Production instructions
161   -=======================
162   -
163   -In production you will need more reliable instruments, we recommend the following software stack:
164   -
165   -* **Nginx**: main web server
166   -* **uWSGI**: application server (serves requests to django)
167   -* **Supervisor**: daemon process manager (used to manage uwsgi, celery and celery-beat)
168   -* **Redis**: in memory key-value store (used as a message broker and cache storage)
169   -
170   --------------
171   -Install Nginx
172   --------------
173   -
174   -Nginx is the recommended webserver for nodeshot.
175   -
176   -Alternatively you could also use any other webserver like apache2 or lighthttpd but it won't be covered in this doc.
177   -
178   -You can install from the system packages with the following command::
179   -
180   - apt-get install nginx-full nginx-common openssl zlib-bin
181   -
182   -Now create a dummy public folder::
183   -
184   - mkdir /var/www/nodeshot
185   -
186   -Create a temporary self signed SSL certificate (or install your own one if you already have it)::
187   -
188   - mkdir /etc/nginx/ssl
189   - cd /etc/nginx/ssl
190   - openssl req -new -x509 -nodes -out server.crt -keyout server.key
191   -
192   -Copy ``uwsgi_params`` file::
193   -
194   - cp /etc/nginx/uwsgi_params /etc/nginx/sites-available/
195   -
196   -Create site configuration (replace ``nodeshot.yourdomain.com`` with your domain)::
197   -
198   - mkdir /etc/nginx/sites-available/nodeshot.yourdomain.com
199   - vim /etc/nginx/sites-available/nodeshot.yourdomain.com
200   -
201   -and paste::
202   -
203   - server {
204   - listen 443; ## listen for ipv4; this line is default and implied
205   - listen [::]:443 default ipv6only=on; ## listen for ipv6
206   -
207   - root /var/www/nodeshot;
208   - index index.html index.htm;
209   -
210   - # Make site accessible from domain
211   - # change this according to your domain
212   - server_name nodeshot.yourdomain.com;
213   -
214   - ssl on;
215   - ssl_certificate ssl/server.crt;
216   - ssl_certificate_key ssl/server.key;
217   -
218   - ssl_session_timeout 5m;
219   -
220   - ssl_protocols SSLv3 TLSv1;
221   - ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
222   - ssl_prefer_server_ciphers on;
223   -
224   - location / {
225   - uwsgi_pass 127.0.0.1:3031;
226   - include uwsgi_params;
227   - uwsgi_param HTTP_X_FORWARDED_PROTO https;
228   - }
229   -
230   - #error_page 404 /404.html;
231   -
232   - # redirect server error pages to the static page /50x.html
233   - #
234   - #error_page 500 502 503 504 /50x.html;
235   - #location = /50x.html {
236   - # root /usr/share/nginx/www;
237   - #}
238   -
239   - # deny access to .htaccess files, if Apache's document root
240   - # concurs with nginx's one
241   - #
242   - #location ~ /\.ht {
243   - # deny all;
244   - #}
245   - }
246   -
247   - server {
248   - listen 80; ## listen for ipv4; this line is default and implied
249   - listen [::]:80 default ipv6only=on; ## listen for ipv6
250   -
251   - # Make site accessible from domain on port 80
252   - # change this according to your domain
253   - server_name nodeshot.yourdomain.com;
254   -
255   - # redirect all requests to https
256   - return 301 https://$host$request_uri;
257   - }
258   -
259   --------------
260   -Install uWSGI
261   --------------
262   -
263   -uWSGI is a performant and scalable application server written in C.
264   -
265   -We will use it to serve requests to the nodeshot django apps.
266   -
267   -Install the latest version via pip:
268   -
269   - # deactivate python virtual environment
270   - deactivate
271   - # install uwsgi globally
272   - pip install uwsgi
273   -
274   -Create a new ini configuration file::
275   -
276   - vim /var/django/nodeshot/projects/ninux/wsgi.ini
277   -
278   -Paste this config::
279   -
280   - [uwsgi]
281   - chdir=/var/django/nodeshot/projects/ninux
282   - module=ninux.wsgi:application
283   - master=True
284   - pidfile=/var/django/nodeshot/projects/ninux/uwsgi.pid
285   - socket=127.0.0.1:3031
286   - processes=2
287   - harakiri=20
288   - max-requests=5000
289   - vacuum=True
290   - home=/var/django/nodeshot/projects/ninux/python
291   - enable-threads=True
292   -
293   -Install supervisord::
294   -
295   - sudo apt-get install supervisor
296   -
297   -Create new config file::
298   -
299   - vim /etc/supervisor/conf.d/nodeshot.conf
300   -
301   -Save this in ``/etc/supervisor/conf.d/nodeshot.conf``::
302   -
303   - [program:uwsgi]
304   - user=uwsgi
305   - directory=/var/django/nodeshot/projects/ninux
306   - command=uwsgi --ini uwsgi.ini
307   - autostart=true
308   - autorestart=true
309   - stopsignal=INT
310   - redirect_stderr=true
311   - stdout_logfile=/var/django/nodeshot/projects/ninux/uwsgi.log
312   - stdout_logfile_maxbytes=30MB
313   - stdout_logfile_backups=5
314   -
315   -Repeat the same for celery::
316   -
317   - vim /etc/supervisor/conf.d/celery.conf
318   -
319   -And paste::
320   -
321   - [program:celery]
322   - directory=/var/django/nodeshot/projects/ninux
323   - user=nobody
324   - command=/var/django/nodeshot/projects/ninux/python/bin/celery -A ninux worker -l info
325   - autostart=true
326   - autorestart=true
327   - redirect_stderr=true
328   - stdout_logfile=/var/django/nodeshot/projects/ninux/celery.log
329   - stdout_logfile_maxbytes=30MB
330   - stdout_logfile_backups=10
331   - startsecs=10
332   - stopwaitsecs=600
333   - numprocs=1
334   -
335   -And celery-beat::
336   -
337   - vim /etc/supervisor/conf.d/celery-beat.conf
338   -
339   -And paste::
340   -
341   - [program:celery-beat]
342   - directory=/var/django/nodeshot/projects/ninux
343   - command=/var/django/nodeshot/projects/ninux/python/bin/celery -A ninux beat -s ./celerybeat-schedule -l info
344   - autostart=true
345   - autorestart=true
346   - redirect_stderr=true
347   - stdout_logfile=/var/django/nodeshot/projects/ninux/celery-beat.log
348   - stdout_logfile_maxbytes=30MB
349   - stdout_logfile_backups=10
350   - startsects=10
351   - numprocs=1
352   -
353   -Then run::
354   -
355   - supervisorctl update
356   -
357   -You can check the status with::
358   -
359   - supervisorctl status
360   -
361   -And you can also start, stop and restart.
362   -
363   -Install **Redis**, we will use it as a message broker for *Celery* and as a *Cache Storage*::
364   -
365   - pip install -U celery[redis]
366   -
367   - add-apt-repository ppa:chris-lea/redis-server
368   - apt-get update
369   - apt-get install redis-server
370   -
371   -Change the ``DEBUG`` setting to ``False``, leaving it to ``True`` **might lead to poor performance or security issues**::
372   -
373   - vim /var/django/nodeshot/projects/ninux/ninux/settings.py
374   -
375   - # set DEBUG to False
376   - DEBUG = False
377   -
378   - # save and exit
379   -
380   -Restart all the processes::
381   -
382   - service nginx restart && supervisorctl restart all
383   -
384   -You should be done!
385   -
386   -Test your installation and if everything works as expected.
387   -
388   -=======
389   -Support
390   -=======
391   -
392   -If you have any issue and you need support reach us at our `Mailing List`_.
393   -
394   -.. _Mailing List: http://ml.ninux.org/mailman/listinfo/nodeshot
BIN  docs/_build/html/_static/ajax-loader.gif
540 docs/_build/html/_static/basic.css
... ... @@ -1,540 +0,0 @@
1   -/*
2   - * basic.css
3   - * ~~~~~~~~~
4   - *
5   - * Sphinx stylesheet -- basic theme.
6   - *
7   - * :copyright: Copyright 2007-2013 by the Sphinx team, see AUTHORS.
8   - * :license: BSD, see LICENSE for details.
9   - *
10   - */
11   -
12   -/* -- main layout ----------------------------------------------------------- */
13   -
14   -div.clearer {
15   - clear: both;
16   -}
17   -
18   -/* -- relbar ---------------------------------------------------------------- */
19   -
20   -div.related {
21   - width: 100%;
22   - font-size: 90%;
23   -}
24   -
25   -div.related h3 {
26   - display: none;
27   -}
28   -
29   -div.related ul {
30   - margin: 0;
31   - padding: 0 0 0 10px;
32   - list-style: none;
33   -}
34   -
35   -div.related li {
36   - display: inline;
37   -}
38   -
39   -div.related li.right {
40   - float: right;
41   - margin-right: 5px;
42   -}
43   -
44   -/* -- sidebar --------------------------------------------------------------- */
45   -
46   -div.sphinxsidebarwrapper {
47   - padding: 10px 5px 0 10px;
48   -}
49   -
50   -div.sphinxsidebar {
51   - float: left;
52   - width: 230px;
53   - margin-left: -100%;
54   - font-size: 90%;
55   -}
56   -
57   -div.sphinxsidebar ul {
58   - list-style: none;
59   -}
60   -
61   -div.sphinxsidebar ul ul,
62   -div.sphinxsidebar ul.want-points {
63   - margin-left: 20px;
64   - list-style: square;
65   -}
66   -
67   -div.sphinxsidebar ul ul {
68   - margin-top: 0;
69   - margin-bottom: 0;
70   -}
71   -
72   -div.sphinxsidebar form {
73   - margin-top: 10px;
74   -}
75   -
76   -div.sphinxsidebar input {
77   - border: 1px solid #98dbcc;
78   - font-family: sans-serif;
79   - font-size: 1em;
80   -}
81   -
82   -div.sphinxsidebar #searchbox input[type="text"] {
83   - width: 170px;
84   -}
85   -
86   -div.sphinxsidebar #searchbox input[type="submit"] {
87   - width: 30px;
88   -}
89   -
90   -img {
91   - border: 0;
92   -}
93   -
94   -/* -- search page ----------------------------------------------------------- */
95   -
96   -ul.search {
97   - margin: 10px 0 0 20px;
98   - padding: 0;
99   -}
100   -
101   -ul.search li {
102   - padding: 5px 0 5px 20px;
103   - background-image: url(file.png);
104   - background-repeat: no-repeat;
105   - background-position: 0 7px;
106   -}
107   -
108   -ul.search li a {
109   - font-weight: bold;
110   -}
111   -
112   -ul.search li div.context {
113   - color: #888;
114   - margin: 2px 0 0 30px;
115   - text-align: left;
116   -}
117   -
118   -ul.keywordmatches li.goodmatch a {
119   - font-weight: bold;
120   -}
121   -
122   -/* -- index page ------------------------------------------------------------ */
123   -
124   -table.contentstable {
125   - width: 90%;
126   -}
127   -
128   -table.contentstable p.biglink {
129   - line-height: 150%;
130   -}
131   -
132   -a.biglink {
133   - font-size: 1.3em;
134   -}
135   -
136   -span.linkdescr {
137   - font-style: italic;
138   - padding-top: 5px;
139   - font-size: 90%;
140   -}
141   -
142   -/* -- general index --------------------------------------------------------- */
143   -
144   -table.indextable {
145   - width: 100%;
146   -}
147   -
148   -table.indextable td {
149   - text-align: left;
150   - vertical-align: top;
151   -}
152   -
153   -table.indextable dl, table.indextable dd {
154   - margin-top: 0;
155   - margin-bottom: 0;
156   -}
157   -
158   -table.indextable tr.pcap {
159   - height: 10px;
160   -}
161   -
162   -table.indextable tr.cap {
163   - margin-top: 10px;
164   - background-color: #f2f2f2;
165   -}
166   -
167   -img.toggler {
168   - margin-right: 3px;
169   - margin-top: 3px;
170   - cursor: pointer;
171   -}
172   -
173   -div.modindex-jumpbox {
174   - border-top: 1px solid #ddd;
175   - border-bottom: 1px solid #ddd;
176   - margin: 1em 0 1em 0;
177   - padding: 0.4em;
178   -}
179   -
180   -div.genindex-jumpbox {
181   - border-top: 1px solid #ddd;
182   - border-bottom: 1px solid #ddd;
183   - margin: 1em 0 1em 0;
184   - padding: 0.4em;
185   -}
186   -
187   -/* -- general body styles --------------------------------------------------- */
188   -
189   -a.headerlink {
190   - visibility: hidden;
191   -}
192   -
193   -h1:hover > a.headerlink,
194   -h2:hover > a.headerlink,
195   -h3:hover > a.headerlink,
196   -h4:hover > a.headerlink,
197   -h5:hover > a.headerlink,
198   -h6:hover > a.headerlink,
199   -dt:hover > a.headerlink {
200   - visibility: visible;
201   -}
202   -
203   -div.body p.caption {
204   - text-align: inherit;
205   -}
206   -
207   -div.body td {
208   - text-align: left;
209   -}
210   -
211   -.field-list ul {
212   - padding-left: 1em;
213   -}
214   -
215   -.first {
216   - margin-top: 0 !important;
217   -}
218   -
219   -p.rubric {
220   - margin-top: 30px;
221   - font-weight: bold;
222   -}
223   -
224   -img.align-left, .figure.align-left, object.align-left {
225   - clear: left;
226   - float: left;
227   - margin-right: 1em;
228   -}
229   -
230   -img.align-right, .figure.align-right, object.align-right {
231   - clear: right;
232   - float: right;
233   - margin-left: 1em;
234   -}
235   -
236   -img.align-center, .figure.align-center, object.align-center {
237   - display: block;
238   - margin-left: auto;
239   - margin-right: auto;
240   -}
241   -
242   -.align-left {
243   - text-align: left;
244   -}
245   -
246   -.align-center {
247   - text-align: center;
248   -}
249   -
250   -.align-right {
251   - text-align: right;
252   -}
253   -
254   -/* -- sidebars -------------------------------------------------------------- */
255   -
256   -div.sidebar {
257   - margin: 0 0 0.5em 1em;
258   - border: 1px solid #ddb;
259   - padding: 7px 7px 0 7px;
260   - background-color: #ffe;
261   - width: 40%;
262   - float: right;
263   -}
264   -
265   -p.sidebar-title {
266   - font-weight: bold;
267   -}
268   -
269   -/* -- topics ---------------------------------------------------------------- */
270   -
271   -div.topic {
272   - border: 1px solid #ccc;
273   - padding: 7px 7px 0 7px;
274   - margin: 10px 0 10px 0;
275   -}
276   -
277   -p.topic-title {
278   - font-size: 1.1em;
279   - font-weight: bold;
280   - margin-top: 10px;
281   -}
282   -
283   -/* -- admonitions ----------------------------------------------------------- */
284   -
285   -div.admonition {
286   - margin-top: 10px;
287   - margin-bottom: 10px;
288   - padding: 7px;
289   -}
290   -
291   -div.admonition dt {
292   - font-weight: bold;
293   -}
294   -
295   -div.admonition dl {
296   - margin-bottom: 0;
297   -}
298   -
299   -p.admonition-title {
300   - margin: 0px 10px 5px 0px;
301   - font-weight: bold;
302   -}
303   -
304   -div.body p.centered {
305   - text-align: center;
306   - margin-top: 25px;
307   -}
308   -
309   -/* -- tables ---------------------------------------------------------------- */
310   -
311   -table.docutils {
312   - border: 0;
313   - border-collapse: collapse;
314   -}
315   -
316   -table.docutils td, table.docutils th {
317   - padding: 1px 8px 1px 5px;
318   - border-top: 0;
319   - border-left: 0;
320   - border-right: 0;
321   - border-bottom: 1px solid #aaa;
322   -}
323   -
324   -table.field-list td, table.field-list th {
325   - border: 0 !important;
326   -}
327   -
328   -table.footnote td, table.footnote th {
329   - border: 0 !important;
330   -}
331   -
332   -th {
333   - text-align: left;
334   - padding-right: 5px;
335   -}
336   -
337   -table.citation {
338   - border-left: solid 1px gray;
339   - margin-left: 1px;
340   -}
341   -
342   -table.citation td {
343   - border-bottom: none;
344   -}
345   -
346   -/* -- other body styles ----------------------------------------------------- */
347   -
348   -ol.arabic {
349   - list-style: decimal;
350   -}
351   -
352   -ol.loweralpha {
353   - list-style: lower-alpha;
354   -}
355   -
356   -ol.upperalpha {
357   - list-style: upper-alpha;
358   -}
359   -
360   -ol.lowerroman {
361   - list-style: lower-roman;
362   -}
363   -
364   -ol.upperroman {
365   - list-style: upper-roman;
366   -}
367   -
368   -dl {
369   - margin-bottom: 15px;
370   -}
371   -
372   -dd p {
373   - margin-top: 0px;
374   -}
375   -
376   -dd ul, dd table {
377   - margin-bottom: 10px;
378   -}
379   -
380   -dd {
381   - margin-top: 3px;
382   - margin-bottom: 10px;
383   - margin-left: 30px;
384   -}
385   -
386   -dt:target, .highlighted {
387   - background-color: #fbe54e;
388   -}
389   -
390   -dl.glossary dt {
391   - font-weight: bold;
392   - font-size: 1.1em;
393   -}
394   -
395   -.field-list ul {
396   - margin: 0;
397   - padding-left: 1em;
398   -}
399   -
400   -.field-list p {
401   - margin: 0;
402   -}
403   -
404   -.refcount {
405   - color: #060;
406   -}
407   -
408   -.optional {
409   - font-size: 1.3em;
410   -}
411   -
412   -.versionmodified {
413   - font-style: italic;
414   -}
415   -
416   -.system-message {
417   - background-color: #fda;
418   - padding: 5px;
419   - border: 3px solid red;
420   -}
421   -
422   -.footnote:target {
423   - background-color: #ffa;
424   -}
425   -
426   -.line-block {
427   - display: block;
428   - margin-top: 1em;
429   - margin-bottom: 1em;
430   -}
431   -
432   -.line-block .line-block {
433   - margin-top: 0;
434   - margin-bottom: 0;
435   - margin-left: 1.5em;
436   -}
437   -
438   -.guilabel, .menuselection {
439   - font-family: sans-serif;
440   -}
441   -
442   -.accelerator {
443   - text-decoration: underline;
444   -}
445   -
446   -.classifier {
447   - font-style: oblique;
448   -}
449   -
450   -abbr, acronym {
451   - border-bottom: dotted 1px;
452   - cursor: help;
453   -}
454   -
455   -/* -- code displays --------------------------------------------------------- */
456   -
457   -pre {
458   - overflow: auto;
459   - overflow-y: hidden; /* fixes display issues on Chrome browsers */
460   -}
461   -
462   -td.linenos pre {
463   - padding: 5px 0px;
464   - border: 0;
465   - background-color: transparent;
466   - color: #aaa;
467   -}
468   -
469   -table.highlighttable {
470   - margin-left: 0.5em;
471   -}
472   -
473   -table.highlighttable td {
474   - padding: 0 0.5em 0 0.5em;
475   -}
476   -
477   -tt.descname {
478   - background-color: transparent;
479   - font-weight: bold;
480   - font-size: 1.2em;
481   -}
482   -
483   -tt.descclassname {
484   - background-color: transparent;
485   -}
486   -
487   -tt.xref, a tt {
488   - background-color: transparent;
489   - font-weight: bold;
490   -}
491   -
492   -h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
493   - background-color: transparent;
494   -}
495   -
496   -.viewcode-link {
497   - float: right;
498   -}
499   -
500   -.viewcode-back {
501   - float: right;
502   - font-family: sans-serif;
503   -}
504   -
505   -div.viewcode-block:target {
506   - margin: -1px -10px;
507   - padding: 0 10px;
508   -}
509   -
510   -/* -- math display ---------------------------------------------------------- */
511   -
512   -img.math {
513   - vertical-align: middle;
514   -}
515   -
516   -div.body div.math p {
517   - text-align: center;
518   -}
519   -
520   -span.eqno {
521   - float: right;
522   -}
523   -
524   -/* -- printout stylesheet --------------------------------------------------- */
525   -
526   -@media print {
527   - div.document,
528   - div.documentwrapper,
529   - div.bodywrapper {
530   - margin: 0 !important;
531   - width: 100%;
532   - }
533   -
534   - div.sphinxsidebar,
535   - div.related,
536   - div.footer,
537   - #top-link {
538   - display: none;
539   - }
540   -}
BIN  docs/_build/html/_static/comment-bright.png
BIN  docs/_build/html/_static/comment-close.png
BIN  docs/_build/html/_static/comment.png
256 docs/_build/html/_static/default.css
... ... @@ -1,256 +0,0 @@
1   -/*
2   - * default.css_t
3   - * ~~~~~~~~~~~~~
4   - *
5   - * Sphinx stylesheet -- default theme.
6   - *
7   - * :copyright: Copyright 2007-2013 by the Sphinx team, see AUTHORS.
8   - * :license: BSD, see LICENSE for details.
9   - *
10   - */
11   -
12   -@import url("basic.css");
13   -
14   -/* -- page layout ----------------------------------------------------------- */
15   -
16   -body {
17   - font-family: sans-serif;
18   - font-size: 100%;
19   - background-color: #11303d;
20   - color: #000;
21   - margin: 0;
22   - padding: 0;
23   -}
24   -
25   -div.document {
26   - background-color: #1c4e63;
27   -}
28   -
29   -div.documentwrapper {
30   - float: left;
31   - width: 100%;
32   -}
33   -
34   -div.bodywrapper {
35   - margin: 0 0 0 230px;
36   -}
37   -
38   -div.body {
39   - background-color: #ffffff;
40   - color: #000000;
41   - padding: 0 20px 30px 20px;
42   -}
43   -
44   -div.footer {
45   - color: #ffffff;
46   - width: 100%;
47   - padding: 9px 0 9px 0;
48   - text-align: center;
49   - font-size: 75%;
50   -}
51   -
52   -div.footer a {
53   - color: #ffffff;
54   - text-decoration: underline;
55   -}
56   -
57   -div.related {
58   - background-color: #133f52;
59   - line-height: 30px;
60   - color: #ffffff;
61   -}
62   -
63   -div.related a {
64   - color: #ffffff;
65   -}
66   -
67   -div.sphinxsidebar {
68   -}
69   -