Merge branch 'dev' into alternate_weather_api
2
.gitignore
vendored
@ -8,7 +8,7 @@ Makefile.custom.config
|
||||
__pycache__
|
||||
uploads
|
||||
.cache
|
||||
.coverage
|
||||
.coverage*
|
||||
coverage.xml
|
||||
.env
|
||||
.mypy_cache
|
||||
|
102
CHANGELOG.md
@ -1,5 +1,107 @@
|
||||
# Change log
|
||||
|
||||
## Version 0.7.10 (2022/12/21)
|
||||
|
||||
### Features and enhancements
|
||||
|
||||
* [#92](https://github.com/SamR1/FitTrackee/issues/92) - Add ascent and descent parameters in workout import without GPX file
|
||||
|
||||
### Translations
|
||||
|
||||
* [#279](https://github.com/SamR1/FitTrackee/issues/279) - [Translation Request] - Italian (thanks to @dperruso)
|
||||
* [c88a515](https://github.com/SamR1/FitTrackee/commit/c88a5158fea5f9e2fa8c41ecc2c100f6d9319371) - Translations update from Hosted Weblate (Dutch, thanks to @bjornclauw)
|
||||
* [f96dcef](https://github.com/SamR1/FitTrackee/commit/f96dcef0dc69d00f65a036fa2e33c22612004cb1) - Translations update (German)
|
||||
|
||||
**Note:** This release contains database migration (see upgrade instructions in [documentation](https://samr1.github.io/FitTrackee/installation.html#upgrade))
|
||||
|
||||
|
||||
## Version 0.7.9 (2022/12/11)
|
||||
|
||||
### Features and enhancements
|
||||
|
||||
* [#280](https://github.com/SamR1/FitTrackee/issues/280) - New sport: Mountaineering
|
||||
|
||||
### Translations
|
||||
|
||||
* [PR#278](https://github.com/SamR1/FitTrackee/pull/278) - Translations update from Hosted Weblate (German, thanks to @qwerty287)
|
||||
* [PR#282](https://github.com/SamR1/FitTrackee/pull/282) - Init italian translation files
|
||||
|
||||
**Note:** This release contains database migration (see upgrade instructions in [documentation](https://samr1.github.io/FitTrackee/installation.html#upgrade))
|
||||
|
||||
|
||||
## Version 0.7.8 (2022/11/30)
|
||||
|
||||
FitTrackee is now available in Dutch (thanks to @bjornclauw).
|
||||
|
||||
|
||||
### Translations
|
||||
|
||||
* [#270](https://github.com/SamR1/FitTrackee/issues/270) - [translations request] Dutch (Nederlands)
|
||||
|
||||
|
||||
## Version 0.7.7 (2022/11/27)
|
||||
|
||||
### Features and enhancements
|
||||
|
||||
* [#258](https://github.com/SamR1/FitTrackee/issues/258) - Request: parse links in notes area (thanks to @jat255)
|
||||
|
||||
### Bugs Fixed
|
||||
|
||||
* [PR#271](https://github.com/SamR1/FitTrackee/pull/271) - Fix workouts creation
|
||||
|
||||
### Translations
|
||||
|
||||
* [PR#273](https://github.com/SamR1/FitTrackee/pull/273) - Init Dutch translations files
|
||||
|
||||
### Misc
|
||||
|
||||
* [PR#274](https://github.com/SamR1/FitTrackee/pull/274) - Tests parallelization
|
||||
* [PR#275](https://github.com/SamR1/FitTrackee/pull/275) - Disable worker entry point
|
||||
|
||||
**Note:** `fittrackee_worker` command is disabled, please use existing flask-dramatiq CLI (see [documentation](https://samr1.github.io/FitTrackee/installation.html#from-pypi))
|
||||
|
||||
## Version 0.7.6 (2022/11/09)
|
||||
|
||||
### Translations
|
||||
|
||||
* [3c8d9c2](https://github.com/SamR1/FitTrackee/commit/3c8d9c262358958346125dd286f09ed9881fda4b) - fix api locale file (remove trailing comma)
|
||||
|
||||
### Misc
|
||||
|
||||
* dev dependencies update
|
||||
|
||||
|
||||
## Version 0.7.5 (2022/11/09)
|
||||
|
||||
### Bugs Fixed
|
||||
|
||||
* [#264](https://github.com/SamR1/FitTrackee/issues/264) - UI has white and gray background
|
||||
|
||||
### Translations
|
||||
|
||||
* [#266](https://github.com/SamR1/FitTrackee/issues/266) - Translations update from Hosted Weblate (German, thanks to @qwerty287)
|
||||
|
||||
|
||||
## Version 0.7.4 (2022/11/05)
|
||||
|
||||
### Bugs Fixed
|
||||
|
||||
* [#260](https://github.com/SamR1/FitTrackee/issues/260) - Files size is not checked in zip archive
|
||||
* [#261](https://github.com/SamR1/FitTrackee/issues/261) - The API should return an error when the number of files in an archive exceeds the limit
|
||||
|
||||
Note: archive import still needs some improvements (see [#89](https://github.com/SamR1/FitTrackee/issues/89))
|
||||
|
||||
### Translations
|
||||
|
||||
* [b1536fc](https://github.com/SamR1/FitTrackee/pull/262/commits/b1536fc637649c4c32a88af6d96c131f05bc1742) - fix french translations in administration
|
||||
|
||||
### Documentation
|
||||
|
||||
* [#257](https://github.com/SamR1/FitTrackee/issues/257) - Add client_max_body_size note to example nginx config
|
||||
|
||||
Thanks to @jat255
|
||||
|
||||
|
||||
## Version 0.7.3 (2022/11/01)
|
||||
|
||||
### Features and enhancements
|
||||
|
9
Makefile
@ -203,19 +203,24 @@ run-workers:
|
||||
$(FLASK) worker --processes=$(WORKERS_PROCESSES) >> dramatiq.log 2>&1
|
||||
|
||||
serve:
|
||||
# for dev environments
|
||||
$(MAKE) P="serve-client serve-python" make-p
|
||||
|
||||
serve-dev:
|
||||
# for dev environments
|
||||
$(MAKE) P="serve-client serve-python-dev" make-p
|
||||
|
||||
serve-client:
|
||||
# for dev environments
|
||||
cd fittrackee_client && PORT=3000 $(NPM) serve
|
||||
|
||||
serve-python:
|
||||
# for dev environments
|
||||
echo 'Running on http://$(HOST):$(PORT)'
|
||||
$(FLASK) run --with-threads -h $(HOST) -p $(PORT)
|
||||
|
||||
serve-python-dev:
|
||||
# for dev environments (
|
||||
echo 'Running on https://$(HOST):$(PORT)'
|
||||
$(FLASK) run --with-threads -h $(HOST) -p $(PORT) --cert=adhoc
|
||||
|
||||
@ -232,10 +237,12 @@ test-e2e-client:
|
||||
E2E_ARGS=client $(PYTEST) e2e --driver firefox $(PYTEST_ARGS)
|
||||
|
||||
test-python:
|
||||
# for tests parallelization: 4 workers max.
|
||||
# make test-python PYTEST_ARGS="-p no:warnings -n auto --maxprocesses=4"
|
||||
$(PYTEST) fittrackee --cov-config .coveragerc --cov=fittrackee --cov-report term-missing $(PYTEST_ARGS)
|
||||
|
||||
test-client:
|
||||
cd fittrackee_client && $(NPM) test:unit
|
||||
cd fittrackee_client && $(NPM) test:unit $(MOCHA_ARGS)
|
||||
|
||||
type-check:
|
||||
echo 'Running mypy...'
|
||||
|
@ -7,7 +7,7 @@ export APP_WORKERS = 1
|
||||
export WORKERS_PROCESSES = 1
|
||||
|
||||
# for dev env
|
||||
export FLASK_ENV = development
|
||||
export FLASK_DEBUG = 1
|
||||
export DATABASE_TEST_URL = postgresql://fittrackee:fittrackee@$(HOST):5432/fittrackee_test
|
||||
export TEST_APP_URL = http://$(HOST):$(PORT)
|
||||
export TEST_CLIENT_URL = http://$(HOST):$(CLIENT_PORT)
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
[![PyPI version](https://img.shields.io/pypi/v/fittrackee.svg)](https://pypi.org/project/fittrackee/)
|
||||
[![Python Version](https://img.shields.io/badge/python-3.7+-brightgreen.svg)](https://python.org)
|
||||
[![Flask Version](https://img.shields.io/badge/flask-2.1-brightgreen.svg)](http://flask.pocoo.org/)
|
||||
[![Flask Version](https://img.shields.io/badge/flask-2.2-brightgreen.svg)](http://flask.pocoo.org/)
|
||||
[![code style: black](https://img.shields.io/badge/code%20style-black-black)](https://github.com/psf/black)
|
||||
[![type check: mypy](https://img.shields.io/badge/type%20check-mypy-blue)](http://mypy-lang.org/)
|
||||
[![Vue Version](https://img.shields.io/badge/vue-3.2-brightgreen.svg)](https://v3.vuejs.org/)
|
||||
@ -26,8 +26,7 @@ Examples for Android (non-exhaustive list):
|
||||
Maps are displayed using [Open Street Map](https://www.openstreetmap.org).
|
||||
It is also possible to add a workout without a gpx file.
|
||||
|
||||
Translations can be updated through [Weblate](https://hosted.weblate.org/engage/fittrackee/).
|
||||
Available languages:
|
||||
Translations status on [Weblate](https://hosted.weblate.org/engage/fittrackee/):
|
||||
[![Translation status](https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg)](https://hosted.weblate.org/engage/fittrackee/)
|
||||
|
||||
**Still under heavy development (some features may be unstable).**
|
||||
|
@ -1,5 +1,9 @@
|
||||
DROP DATABASE IF EXISTS fittrackee;
|
||||
DROP DATABASE IF EXISTS fittrackee_test;
|
||||
DROP DATABASE IF EXISTS fittrackee_test_gw0;
|
||||
DROP DATABASE IF EXISTS fittrackee_test_gw1;
|
||||
DROP DATABASE IF EXISTS fittrackee_test_gw2;
|
||||
DROP DATABASE IF EXISTS fittrackee_test_gw3;
|
||||
DROP SCHEMA IF EXISTS fittrackee;
|
||||
DROP USER IF EXISTS fittrackee;
|
||||
|
||||
@ -7,3 +11,7 @@ CREATE USER fittrackee WITH PASSWORD 'fittrackee';
|
||||
CREATE SCHEMA fittrackee AUTHORIZATION fittrackee;
|
||||
CREATE DATABASE fittrackee OWNER fittrackee;
|
||||
CREATE DATABASE fittrackee_test OWNER fittrackee;
|
||||
CREATE DATABASE fittrackee_test_gw0 OWNER fittrackee;
|
||||
CREATE DATABASE fittrackee_test_gw1 OWNER fittrackee;
|
||||
CREATE DATABASE fittrackee_test_gw2 OWNER fittrackee;
|
||||
CREATE DATABASE fittrackee_test_gw3 OWNER fittrackee;
|
||||
|
@ -1,4 +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: 01a21335d6c252b5c95dfc3e08342cc3
|
||||
config: 5abf538cacc290d4cea92d1f42946aba
|
||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
||||
|
Before Width: | Height: | Size: 549 KiB After Width: | Height: | Size: 567 KiB |
Before Width: | Height: | Size: 372 KiB After Width: | Height: | Size: 378 KiB |
Before Width: | Height: | Size: 207 KiB After Width: | Height: | Size: 216 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 74 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 125 KiB |
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 130 KiB |
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 82 KiB |
@ -1,5 +1,107 @@
|
||||
# Change log
|
||||
|
||||
## Version 0.7.10 (2022/12/21)
|
||||
|
||||
### Features and enhancements
|
||||
|
||||
* [#92](https://github.com/SamR1/FitTrackee/issues/92) - Add ascent and descent parameters in workout import without GPX file
|
||||
|
||||
### Translations
|
||||
|
||||
* [#279](https://github.com/SamR1/FitTrackee/issues/279) - [Translation Request] - Italian (thanks to @dperruso)
|
||||
* [c88a515](https://github.com/SamR1/FitTrackee/commit/c88a5158fea5f9e2fa8c41ecc2c100f6d9319371) - Translations update from Hosted Weblate (Dutch, thanks to @bjornclauw)
|
||||
* [f96dcef](https://github.com/SamR1/FitTrackee/commit/f96dcef0dc69d00f65a036fa2e33c22612004cb1) - Translations update (German)
|
||||
|
||||
**Note:** This release contains database migration (see upgrade instructions in [documentation](https://samr1.github.io/FitTrackee/installation.html#upgrade))
|
||||
|
||||
|
||||
## Version 0.7.9 (2022/12/11)
|
||||
|
||||
### Features and enhancements
|
||||
|
||||
* [#280](https://github.com/SamR1/FitTrackee/issues/280) - New sport: Mountaineering
|
||||
|
||||
### Translations
|
||||
|
||||
* [PR#278](https://github.com/SamR1/FitTrackee/pull/278) - Translations update from Hosted Weblate (German, thanks to @qwerty287)
|
||||
* [PR#282](https://github.com/SamR1/FitTrackee/pull/282) - Init italian translation files
|
||||
|
||||
**Note:** This release contains database migration (see upgrade instructions in [documentation](https://samr1.github.io/FitTrackee/installation.html#upgrade))
|
||||
|
||||
|
||||
## Version 0.7.8 (2022/11/30)
|
||||
|
||||
FitTrackee is now available in Dutch (thanks to @bjornclauw).
|
||||
|
||||
|
||||
### Translations
|
||||
|
||||
* [#270](https://github.com/SamR1/FitTrackee/issues/270) - [translations request] Dutch (Nederlands)
|
||||
|
||||
|
||||
## Version 0.7.7 (2022/11/27)
|
||||
|
||||
### Features and enhancements
|
||||
|
||||
* [#258](https://github.com/SamR1/FitTrackee/issues/258) - Request: parse links in notes area (thanks to @jat255)
|
||||
|
||||
### Bugs Fixed
|
||||
|
||||
* [PR#271](https://github.com/SamR1/FitTrackee/pull/271) - Fix workouts creation
|
||||
|
||||
### Translations
|
||||
|
||||
* [PR#273](https://github.com/SamR1/FitTrackee/pull/273) - Init Dutch translations files
|
||||
|
||||
### Misc
|
||||
|
||||
* [PR#274](https://github.com/SamR1/FitTrackee/pull/274) - Tests parallelization
|
||||
* [PR#275](https://github.com/SamR1/FitTrackee/pull/275) - Disable worker entry point
|
||||
|
||||
**Note:** `fittrackee_worker` command is disabled, please use existing flask-dramatiq CLI (see [documentation](https://samr1.github.io/FitTrackee/installation.html#from-pypi))
|
||||
|
||||
## Version 0.7.6 (2022/11/09)
|
||||
|
||||
### Translations
|
||||
|
||||
* [3c8d9c2](https://github.com/SamR1/FitTrackee/commit/3c8d9c262358958346125dd286f09ed9881fda4b) - fix api locale file (remove trailing comma)
|
||||
|
||||
### Misc
|
||||
|
||||
* dev dependencies update
|
||||
|
||||
|
||||
## Version 0.7.5 (2022/11/09)
|
||||
|
||||
### Bugs Fixed
|
||||
|
||||
* [#264](https://github.com/SamR1/FitTrackee/issues/264) - UI has white and gray background
|
||||
|
||||
### Translations
|
||||
|
||||
* [#266](https://github.com/SamR1/FitTrackee/issues/266) - Translations update from Hosted Weblate (German, thanks to @qwerty287)
|
||||
|
||||
|
||||
## Version 0.7.4 (2022/11/05)
|
||||
|
||||
### Bugs Fixed
|
||||
|
||||
* [#260](https://github.com/SamR1/FitTrackee/issues/260) - Files size is not checked in zip archive
|
||||
* [#261](https://github.com/SamR1/FitTrackee/issues/261) - The API should return an error when the number of files in an archive exceeds the limit
|
||||
|
||||
Note: archive import still needs some improvements (see [#89](https://github.com/SamR1/FitTrackee/issues/89))
|
||||
|
||||
### Translations
|
||||
|
||||
* [b1536fc](https://github.com/SamR1/FitTrackee/pull/262/commits/b1536fc637649c4c32a88af6d96c131f05bc1742) - fix french translations in administration
|
||||
|
||||
### Documentation
|
||||
|
||||
* [#257](https://github.com/SamR1/FitTrackee/issues/257) - Add client_max_body_size note to example nginx config
|
||||
|
||||
Thanks to @jat255
|
||||
|
||||
|
||||
## Version 0.7.3 (2022/11/01)
|
||||
|
||||
### Features and enhancements
|
||||
|
@ -22,6 +22,7 @@ A command line interface (CLI) is available to manage database, OAuth2 tokens an
|
||||
| The following commands are now deprecated and will be removed in a next version:
|
||||
| - ``fittrackee_set_admin``
|
||||
| - ``fittrackee_upgrade_db``
|
||||
| - ``fittrackee_worker`` (disabled)
|
||||
|
||||
|
||||
Database
|
||||
|
@ -11,22 +11,24 @@ With the default configuration, `Open Street Map <https://www.openstreetmap.org>
|
||||
|
||||
Workouts
|
||||
^^^^^^^^
|
||||
- 12 sports are supported:
|
||||
- 14 sports are supported:
|
||||
- Cycling (Sport)
|
||||
- Cycling (Transport)
|
||||
- Cycling (Virtual) (**new in 0.7.3**)
|
||||
- Cycling (Virtual) (*new in 0.7.3*)
|
||||
- Hiking
|
||||
- Mountain Biking
|
||||
- Mountain Biking (Electric) (**new in 0.5.0**)
|
||||
- Rowing (**new in 0.5.0**)
|
||||
- Mountain Biking (Electric) (*new in 0.5.0*)
|
||||
- Mountaineering (*new in 0.7.9*)
|
||||
- Rowing (*new in 0.5.0*)
|
||||
- Running
|
||||
- Skiing (Alpine) (**new in 0.5.0**)
|
||||
- Skiing (Cross Country) (**new in 0.5.0**)
|
||||
- Snowshoes (**new in 0.5.2**)
|
||||
- Trail (**new in 0.5.0**)
|
||||
- Skiing (Alpine) (*new in 0.5.0*)
|
||||
- Skiing (Cross Country) (*new in 0.5.0*)
|
||||
- Snowshoes (*new in 0.5.2*)
|
||||
- Trail (*new in 0.5.0*)
|
||||
- Walking
|
||||
- (*new in 0.5.0*) Stopped speed threshold used by `gpxpy <https://github.com/tkrajina/gpxpy>`_ is not the default one for the following sports (0.1 km/h instead of 1 km/h):
|
||||
- Hiking
|
||||
- Mountaineering
|
||||
- Skiing (Cross Country)
|
||||
- Snowshoes
|
||||
- Trail
|
||||
@ -36,25 +38,27 @@ Workouts
|
||||
It can be overridden in user preferences.
|
||||
|
||||
- Dashboard with month calendar displaying workouts and record. The week can start on Sunday or Monday (which can be changed in the user preferences). The calendar displays up to 100 workouts.
|
||||
- Workout creation by uploading a gpx file (related data are stored in database with metric system). A workout can even be created without gpx (the user must enter date, time, duration and distance).
|
||||
- Workout creation by uploading a gpx file (related data are stored in database with metric system).
|
||||
- | A workout can even be created without gpx (the user must enter date, time, duration and distance).
|
||||
| Ascent and descent can also be provided (*new in 0.7.10*).
|
||||
- | A workout with a gpx file can be displayed with map and charts (speed and elevation).
|
||||
| Controls allow full screen view and position reset (**new in 0.5.5**).
|
||||
| Controls allow full screen view and position reset (*new in 0.5.5*).
|
||||
- | If DarkSky API key is provided, weather is displayed in workout detail.
|
||||
| Wind is displayed, with arrow indicating direction (a tooltip can be displayed with the direction that the wind is coming **from**) (**new in 0.5.5**).
|
||||
| Wind is displayed, with arrow indicating direction (a tooltip can be displayed with the direction that the wind is coming **from**) (*new in 0.5.5*).
|
||||
- Segments can be displayed.
|
||||
- Workout gpx file can be downloaded (**new in 0.5.1**)
|
||||
- Workout gpx file can be downloaded (*new in 0.5.1*)
|
||||
- Workout edition and deletion. User can add a note.
|
||||
- User statistics, by time period (week, month, year) and sport:
|
||||
- total distance
|
||||
- total duration
|
||||
- total workouts
|
||||
- total ascent (**new in 0.5.0**)
|
||||
- total descent (**new in 0.5.0**)
|
||||
- average speed (**new in 0.5.1**)
|
||||
- total ascent (*new in 0.5.0*)
|
||||
- total descent (*new in 0.5.0*)
|
||||
- average speed (*new in 0.5.1*)
|
||||
- User records by sports:
|
||||
- average speed
|
||||
- farthest distance
|
||||
- highest ascent (**new in 0.6.11**, can be hidden, see user preferences)
|
||||
- highest ascent (*new in 0.6.11*, can be hidden, see user preferences)
|
||||
- longest duration
|
||||
- maximum speed
|
||||
|
||||
@ -105,9 +109,9 @@ Administration
|
||||
The following parameters can be set:
|
||||
|
||||
- active users limit. If 0, registration is enabled (no limit defined)
|
||||
- maximum size of uploaded files
|
||||
- maximum size of gpx file (individually uploaded or in a zip archive) (*changed in 0.7.4*)
|
||||
- maximum size of zip archive
|
||||
- maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.
|
||||
- maximum number of files in the zip archive (*changed in 0.7.4*)
|
||||
- administrator email for contact (*new in 0.6.0*)
|
||||
|
||||
.. warning::
|
||||
@ -136,6 +140,14 @@ Translations
|
||||
^^^^^^^^^^^^
|
||||
FitTrackee is available in the following languages (which can be saved in the user preferences):
|
||||
|
||||
- English
|
||||
- French (*new in 0.2.3*)
|
||||
- German (*new in 0.6.9*)
|
||||
- Dutch (*new in 0.7.8*)
|
||||
- Italian (*new in 0.7.10*)
|
||||
|
||||
Translations status on `Weblate <https://hosted.weblate.org/engage/fittrackee/>`__:
|
||||
|
||||
.. figure:: https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg
|
||||
|
||||
|
||||
|
@ -28,7 +28,7 @@ Prerequisites
|
||||
- optional
|
||||
- Redis for task queue (if email sending is enabled) and API rate limits
|
||||
- SMTP provider (if email sending is enabled)
|
||||
- API key from `Dark Sky <https://darksky.net/dev>`__
|
||||
- API key from `Dark Sky <https://darksky.net/dev>`__ (deprecated, DarkSky will stop on March 31st, 2023)
|
||||
- `Poetry <https://poetry.eustace.io>`__ (for installation from sources only)
|
||||
- `Yarn <https://yarnpkg.com>`__ (for development only)
|
||||
- Docker and Docker Compose (for development or evaluation purposes)
|
||||
@ -392,16 +392,16 @@ For instance, copy and update ``.env`` file from ``.env.example`` and source the
|
||||
|
||||
$ fittrackee
|
||||
|
||||
- Start task queue workers if email sending is enabled.
|
||||
- Start task queue workers if email sending is enabled, with flask-dramatiq CLI:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ fittrackee_worker --processes 2
|
||||
$ flask worker --processes 2
|
||||
|
||||
.. note::
|
||||
| To start application and workers with **systemd** service, see `Deployment <installation.html#deployment>`__
|
||||
|
||||
- Open http://localhost:3000 and register
|
||||
- Open http://localhost:5000 and register
|
||||
|
||||
- To set admin rights to the newly created account, use the following command line:
|
||||
|
||||
@ -480,13 +480,13 @@ Production environment
|
||||
.. warning::
|
||||
| Note that FitTrackee is under heavy development, some features may be unstable.
|
||||
|
||||
- Download the last release (for now, it is the release v0.7.3):
|
||||
- Download the last release (for now, it is the release v0.7.10):
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.3.tar.gz
|
||||
$ tar -xzf v0.7.3.tar.gz
|
||||
$ mv FitTrackee-0.7.3 FitTrackee
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.10.tar.gz
|
||||
$ tar -xzf v0.7.10.tar.gz
|
||||
$ mv FitTrackee-0.7.10 FitTrackee
|
||||
$ cd FitTrackee
|
||||
|
||||
- Create **.env** from example and update it
|
||||
@ -606,13 +606,13 @@ Prod environment
|
||||
|
||||
- Change to the directory where FitTrackee directory is located
|
||||
|
||||
- Download the last release (for now, it is the release v0.7.3) and overwrite existing files:
|
||||
- Download the last release (for now, it is the release v0.7.10) and overwrite existing files:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.3.tar.gz
|
||||
$ tar -xzf v0.7.3.tar.gz
|
||||
$ cp -R FitTrackee-0.7.3/* FitTrackee/
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.10.tar.gz
|
||||
$ tar -xzf v0.7.10.tar.gz
|
||||
$ cp -R FitTrackee-0.7.10/* FitTrackee/
|
||||
$ cd FitTrackee
|
||||
|
||||
- Update **.env** if needed (see `Environment variables <installation.html#environment-variables>`__).
|
||||
@ -733,6 +733,14 @@ Examples (to update depending on your application configuration and given distri
|
||||
ssl_certificate fullchain.pem;
|
||||
ssl_certificate_key privkey.pem;
|
||||
|
||||
## this parameter controls how large of a file can be
|
||||
## uploaded, and defaults to 1MB. If you change the FitTrackee
|
||||
## settings to allow larger uploads, you'll need to change this
|
||||
## setting by uncommenting the line below and setting the size limit
|
||||
## you want. Set to "0" to prevent nginx from checking the
|
||||
## request body size at all
|
||||
# client_max_body_size 1m;
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:5000;
|
||||
proxy_redirect default;
|
||||
|
100
docs/_static/css/custom.css
vendored
Normal file
@ -0,0 +1,100 @@
|
||||
/* lato-regular - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: url('../fonts/lato-v15-latin-regular.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Regular'), local('Lato-Regular'),
|
||||
url('../fonts/lato-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('../fonts/lato-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('../fonts/lato-v15-latin-regular.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
/* lato-700 - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: url('../fonts/lato-v15-latin-700.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Bold'), local('Lato-Bold'),
|
||||
url('../fonts/lato-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('../fonts/lato-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-700.woff') format('woff'), /* Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('../fonts/lato-v15-latin-700.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
/* lato-italic - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: url('../fonts/lato-v15-latin-italic.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Italic'), local('Lato-Italic'),
|
||||
url('../fonts/lato-v15-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('../fonts/lato-v15-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-italic.woff') format('woff'), /* Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('../fonts/lato-v15-latin-italic.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
|
||||
html {
|
||||
font-family: "Lato", sans-serif;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
min-height: 100vh;
|
||||
padding-bottom: 65px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.alert-danger {
|
||||
background-color: #f2dede;
|
||||
border-color: #dca7a7;
|
||||
color: #a94442;
|
||||
}
|
||||
|
||||
.alert-info {
|
||||
background-color: #d9edf7;
|
||||
border-color: #9acfea;
|
||||
color: #31708f;
|
||||
}
|
||||
|
||||
.alert-warning {
|
||||
background-color: #fcf8e3;
|
||||
border-color: #f5e79e;
|
||||
color: #8a6d3b;
|
||||
}
|
||||
|
||||
.descname {
|
||||
border-top: solid 3px #a18bac;
|
||||
border-radius: unset;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
dl.field-list > dt {
|
||||
background: #f0f0f0;
|
||||
border-left: solid 3px #ccc;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.envvar {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.footer {
|
||||
bottom: 0;
|
||||
height: 65px;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
|
||||
img {
|
||||
border: 1px solid #cecdcd;
|
||||
margin: 5px 0;
|
||||
}
|
12
docs/_static/css/fork-awesome.min.css
vendored
Normal file
100
docs/_static/custom.css
vendored
@ -1,100 +0,0 @@
|
||||
/* lato-regular - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: url('fonts/lato-v15-latin-regular.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Regular'), local('Lato-Regular'),
|
||||
url('fonts/lato-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('fonts/lato-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('fonts/lato-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
|
||||
url('fonts/lato-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('fonts/lato-v15-latin-regular.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
/* lato-700 - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: url('fonts/lato-v15-latin-700.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Bold'), local('Lato-Bold'),
|
||||
url('fonts/lato-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('fonts/lato-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('fonts/lato-v15-latin-700.woff') format('woff'), /* Modern Browsers */
|
||||
url('fonts/lato-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('fonts/lato-v15-latin-700.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
/* lato-italic - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: url('fonts/lato-v15-latin-italic.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Italic'), local('Lato-Italic'),
|
||||
url('fonts/lato-v15-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('fonts/lato-v15-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('fonts/lato-v15-latin-italic.woff') format('woff'), /* Modern Browsers */
|
||||
url('fonts/lato-v15-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('fonts/lato-v15-latin-italic.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
|
||||
html {
|
||||
font-family: "Lato", sans-serif;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
min-height: 100vh;
|
||||
padding-bottom: 65px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.alert-danger {
|
||||
background-color: #f2dede;
|
||||
border-color: #dca7a7;
|
||||
color: #a94442;
|
||||
}
|
||||
|
||||
.alert-info {
|
||||
background-color: #d9edf7;
|
||||
border-color: #9acfea;
|
||||
color: #31708f;
|
||||
}
|
||||
|
||||
.alert-warning {
|
||||
background-color: #fcf8e3;
|
||||
border-color: #f5e79e;
|
||||
color: #8a6d3b;
|
||||
}
|
||||
|
||||
.descname {
|
||||
border-top: solid 3px #a18bac;
|
||||
border-radius: unset;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
dl.field-list > dt {
|
||||
background: #f0f0f0;
|
||||
border-left: solid 3px #ccc;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.envvar {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.footer {
|
||||
bottom: 0;
|
||||
height: 65px;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
|
||||
img {
|
||||
border: 1px solid #cecdcd;
|
||||
margin: 5px 0;
|
||||
}
|
2
docs/_static/documentation_options.js
vendored
@ -1,6 +1,6 @@
|
||||
var DOCUMENTATION_OPTIONS = {
|
||||
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
|
||||
VERSION: '0.7.3',
|
||||
VERSION: '0.7.10',
|
||||
LANGUAGE: 'en',
|
||||
COLLAPSE_INDEX: false,
|
||||
BUILDER: 'html',
|
||||
|
BIN
docs/_static/fonts/forkawesome-webfont.eot
vendored
Normal file
3232
docs/_static/fonts/forkawesome-webfont.svg
vendored
Normal file
After Width: | Height: | Size: 547 KiB |
BIN
docs/_static/fonts/forkawesome-webfont.ttf
vendored
Normal file
BIN
docs/_static/fonts/forkawesome-webfont.woff
vendored
Normal file
BIN
docs/_static/fonts/forkawesome-webfont.woff2
vendored
Normal file
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Authentication — FitTrackee 0.7.3
|
||||
<title>Authentication — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -426,7 +427,7 @@ character “_” allowed</p></li>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -549,7 +550,7 @@ character “_” allowed</p></li>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -692,7 +693,7 @@ character “_” allowed</p></li>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -752,7 +753,7 @@ character “_” allowed</p></li>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -802,7 +803,7 @@ character “_” allowed</p></li>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -852,7 +853,7 @@ character “_” allowed</p></li>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -896,7 +897,7 @@ character “_” allowed</p></li>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -1064,7 +1065,7 @@ character “_” allowed</p></li>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -1202,7 +1203,7 @@ If a valid token is provided, it will be blacklisted.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -1237,10 +1238,12 @@ for other reasons.</p></li>
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Configuration — FitTrackee 0.7.3
|
||||
<title>Configuration — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -154,7 +155,7 @@
|
||||
<span class="w"> </span><span class="nt">"max_users"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"max_zip_file_size"</span><span class="p">:</span><span class="w"> </span><span class="mi">10485760</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"map_attribution"</span><span class="p">:</span><span class="w"> </span><span class="nt">"&copy; <a href=http://www.openstreetmap.org/copyright>OpenStreetMap</a> contributors"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"version"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0.7.3"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"version"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0.7.10"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"success"</span><span class="w"></span>
|
||||
<span class="p">}</span><span class="w"></span>
|
||||
@ -195,7 +196,7 @@
|
||||
<span class="w"> </span><span class="nt">"max_users"</span><span class="p">:</span><span class="w"> </span><span class="mi">10</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"max_zip_file_size"</span><span class="p">:</span><span class="w"> </span><span class="mi">10485760</span><span class="p">,</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"map_attribution"</span><span class="p">:</span><span class="w"> </span><span class="nt">"&copy; <a href=http://www.openstreetmap.org/copyright>OpenStreetMap</a> contributors"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"version"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0.7.3"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"version"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0.7.10"</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
||||
<span class="w"> </span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"success"</span><span class="w"></span>
|
||||
<span class="p">}</span><span class="w"></span>
|
||||
@ -214,7 +215,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -277,10 +278,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>API documentation — FitTrackee 0.7.3
|
||||
<title>API documentation — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -158,10 +159,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>OAuth2 — FitTrackee 0.7.3
|
||||
<title>OAuth2 — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -193,7 +194,7 @@ application).</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -257,7 +258,7 @@ application).</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -335,7 +336,7 @@ application).</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -410,7 +411,7 @@ application).</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -452,7 +453,7 @@ application).</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -498,7 +499,7 @@ application).</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -557,7 +558,7 @@ provided)</p></li>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -692,10 +693,12 @@ are supported by FitTrackee)</p></li>
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Records — FitTrackee 0.7.3
|
||||
<title>Records — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -229,7 +230,7 @@
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -260,10 +261,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Sports — FitTrackee 0.7.3
|
||||
<title>Sports — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -277,7 +278,7 @@
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -374,7 +375,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -455,7 +456,7 @@
|
||||
</dd>
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -490,10 +491,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Statistics — FitTrackee 0.7.3
|
||||
<title>Statistics — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -230,7 +231,7 @@
|
||||
</dd>
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -336,7 +337,7 @@
|
||||
</dd>
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -385,7 +386,7 @@
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -417,10 +418,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Users — FitTrackee 0.7.3
|
||||
<title>Users — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -274,7 +275,7 @@ has admin rights.</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -394,7 +395,7 @@ details.</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -565,7 +566,7 @@ if sending enabled)</p></li>
|
||||
</dd>
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -620,7 +621,7 @@ one admin.</p>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -661,10 +662,12 @@ one admin.</p>
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Workouts — FitTrackee 0.7.3
|
||||
<title>Workouts — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -279,7 +280,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -373,7 +374,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -423,7 +424,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -496,7 +497,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -570,7 +571,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -622,7 +623,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -836,12 +837,13 @@
|
||||
<dt class="field-odd">Form Parameters<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>file</strong> – gpx file (allowed extensions: .gpx, .zip)</p></li>
|
||||
<li><p><strong>data</strong> – sport id and notes (example: <code class="docutils literal notranslate"><span class="pre">{"sport_id":</span> <span class="pre">1,</span> <span class="pre">"notes":</span> <span class="pre">""}</span></code>)</p></li>
|
||||
<li><p><strong>data</strong> – sport id and notes (example: <code class="docutils literal notranslate"><span class="pre">{"sport_id":</span> <span class="pre">1,</span> <span class="pre">"notes":</span> <span class="pre">""}</span></code>).
|
||||
Double quotes in notes must be escaped.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -959,18 +961,22 @@
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Request JSON Object<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>workout_date</strong> (<em>string</em>) – workout date, in user timezone
|
||||
(format: <code class="docutils literal notranslate"><span class="pre">%Y-%m-%d</span> <span class="pre">%H:%M</span></code>)</p></li>
|
||||
<li><p><strong>ascent</strong> (<em>float</em>) – workout ascent (not mandatory,
|
||||
must be provided with descent)</p></li>
|
||||
<li><p><strong>descent</strong> (<em>float</em>) – workout descent (not mandatory,
|
||||
must be provided with ascent)</p></li>
|
||||
<li><p><strong>distance</strong> (<em>float</em>) – workout distance in km</p></li>
|
||||
<li><p><strong>duration</strong> (<em>integer</em>) – workout duration in seconds</p></li>
|
||||
<li><p><strong>notes</strong> (<em>string</em>) – notes (not mandatory)</p></li>
|
||||
<li><p><strong>sport_id</strong> (<em>integer</em>) – workout sport id</p></li>
|
||||
<li><p><strong>title</strong> (<em>string</em>) – workout title</p></li>
|
||||
<li><p><strong>title</strong> (<em>string</em>) – workout title (not mandatory)</p></li>
|
||||
<li><p><strong>workout_date</strong> (<em>string</em>) – workout date, in user timezone
|
||||
(format: <code class="docutils literal notranslate"><span class="pre">%Y-%m-%d</span> <span class="pre">%H:%M</span></code>)</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -1086,9 +1092,10 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request JSON Object<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><strong>workout_date</strong> (<em>string</em>) – workout date in user timezone
|
||||
(format: <code class="docutils literal notranslate"><span class="pre">%Y-%m-%d</span> <span class="pre">%H:%M</span></code>)
|
||||
(only for workout without gpx)</p></li>
|
||||
<li><p><strong>ascent</strong> (<em>float</em>) – workout ascent
|
||||
(only for workout without gpx, must be provided with descent)</p></li>
|
||||
<li><p><strong>descent</strong> (<em>float</em>) – workout descent
|
||||
(only for workout without gpx, must be provided with ascent)</p></li>
|
||||
<li><p><strong>distance</strong> (<em>float</em>) – workout distance in km
|
||||
(only for workout without gpx)</p></li>
|
||||
<li><p><strong>duration</strong> (<em>integer</em>) – workout duration in seconds
|
||||
@ -1096,11 +1103,14 @@
|
||||
<li><p><strong>notes</strong> (<em>string</em>) – notes</p></li>
|
||||
<li><p><strong>sport_id</strong> (<em>integer</em>) – workout sport id</p></li>
|
||||
<li><p><strong>title</strong> (<em>string</em>) – workout title</p></li>
|
||||
<li><p><strong>workout_date</strong> (<em>string</em>) – workout date in user timezone
|
||||
(format: <code class="docutils literal notranslate"><span class="pre">%Y-%m-%d</span> <span class="pre">%H:%M</span></code>)
|
||||
(only for workout without gpx)</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Status Codes<span class="colon">:</span></dt>
|
||||
@ -1143,7 +1153,7 @@
|
||||
</dd>
|
||||
<dt class="field-even">Request Headers<span class="colon">:</span></dt>
|
||||
<dd class="field-even"><ul class="simple">
|
||||
<li><p><span><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
<li><p><span><a class="reference external" href="https://www.rfc-editor.org/rfc/rfc7235#section-4.2">Authorization</a></span> – OAuth 2.0 Bearer Token</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Status Codes<span class="colon">:</span></dt>
|
||||
@ -1176,10 +1186,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Third-party applications — FitTrackee 0.7.3
|
||||
<title>Third-party applications — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/custom.css" />
|
||||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||||
<script src="_static/jquery.js"></script>
|
||||
<script src="_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -257,10 +258,12 @@ It is recommended to use PKCE to provide a better security.</p>
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Command line interface — FitTrackee 0.7.3
|
||||
<title>Command line interface — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/custom.css" />
|
||||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||||
<script src="_static/jquery.js"></script>
|
||||
<script src="_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -168,6 +169,7 @@ Commands:
|
||||
<div class="line">The following commands are now deprecated and will be removed in a next version:</div>
|
||||
<div class="line">- <code class="docutils literal notranslate"><span class="pre">fittrackee_set_admin</span></code></div>
|
||||
<div class="line">- <code class="docutils literal notranslate"><span class="pre">fittrackee_upgrade_db</span></code></div>
|
||||
<div class="line">- <code class="docutils literal notranslate"><span class="pre">fittrackee_worker</span></code> (disabled)</div>
|
||||
</div>
|
||||
</div>
|
||||
<section id="database">
|
||||
@ -285,10 +287,12 @@ Commands:
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Features — FitTrackee 0.7.3
|
||||
<title>Features — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/custom.css" />
|
||||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||||
<script src="_static/jquery.js"></script>
|
||||
<script src="_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -155,19 +156,20 @@
|
||||
<h2>Workouts<a class="headerlink" href="#workouts" title="Permalink to this heading">¶</a></h2>
|
||||
<ul class="simple">
|
||||
<li><dl class="simple">
|
||||
<dt>12 sports are supported:</dt><dd><ul>
|
||||
<dt>14 sports are supported:</dt><dd><ul>
|
||||
<li><p>Cycling (Sport)</p></li>
|
||||
<li><p>Cycling (Transport)</p></li>
|
||||
<li><p>Cycling (Virtual) (<strong>new in 0.7.3</strong>)</p></li>
|
||||
<li><p>Cycling (Virtual) (<em>new in 0.7.3</em>)</p></li>
|
||||
<li><p>Hiking</p></li>
|
||||
<li><p>Mountain Biking</p></li>
|
||||
<li><p>Mountain Biking (Electric) (<strong>new in 0.5.0</strong>)</p></li>
|
||||
<li><p>Rowing (<strong>new in 0.5.0</strong>)</p></li>
|
||||
<li><p>Mountain Biking (Electric) (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><p>Mountaineering (<em>new in 0.7.9</em>)</p></li>
|
||||
<li><p>Rowing (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><p>Running</p></li>
|
||||
<li><p>Skiing (Alpine) (<strong>new in 0.5.0</strong>)</p></li>
|
||||
<li><p>Skiing (Cross Country) (<strong>new in 0.5.0</strong>)</p></li>
|
||||
<li><p>Snowshoes (<strong>new in 0.5.2</strong>)</p></li>
|
||||
<li><p>Trail (<strong>new in 0.5.0</strong>)</p></li>
|
||||
<li><p>Skiing (Alpine) (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><p>Skiing (Cross Country) (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><p>Snowshoes (<em>new in 0.5.2</em>)</p></li>
|
||||
<li><p>Trail (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><p>Walking</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -176,6 +178,7 @@
|
||||
<li><dl class="simple">
|
||||
<dt>(<em>new in 0.5.0</em>) Stopped speed threshold used by <a class="reference external" href="https://github.com/tkrajina/gpxpy">gpxpy</a> is not the default one for the following sports (0.1 km/h instead of 1 km/h):</dt><dd><ul>
|
||||
<li><p>Hiking</p></li>
|
||||
<li><p>Mountaineering</p></li>
|
||||
<li><p>Skiing (Cross Country)</p></li>
|
||||
<li><p>Snowshoes</p></li>
|
||||
<li><p>Trail</p></li>
|
||||
@ -191,28 +194,33 @@
|
||||
</div>
|
||||
<ul>
|
||||
<li><p>Dashboard with month calendar displaying workouts and record. The week can start on Sunday or Monday (which can be changed in the user preferences). The calendar displays up to 100 workouts.</p></li>
|
||||
<li><p>Workout creation by uploading a gpx file (related data are stored in database with metric system). A workout can even be created without gpx (the user must enter date, time, duration and distance).</p></li>
|
||||
<li><p>Workout creation by uploading a gpx file (related data are stored in database with metric system).</p></li>
|
||||
<li><div class="line-block">
|
||||
<div class="line">A workout can even be created without gpx (the user must enter date, time, duration and distance).</div>
|
||||
<div class="line">Ascent and descent can also be provided (<em>new in 0.7.10</em>).</div>
|
||||
</div>
|
||||
</li>
|
||||
<li><div class="line-block">
|
||||
<div class="line">A workout with a gpx file can be displayed with map and charts (speed and elevation).</div>
|
||||
<div class="line">Controls allow full screen view and position reset (<strong>new in 0.5.5</strong>).</div>
|
||||
<div class="line">Controls allow full screen view and position reset (<em>new in 0.5.5</em>).</div>
|
||||
</div>
|
||||
</li>
|
||||
<li><div class="line-block">
|
||||
<div class="line">If DarkSky API key is provided, weather is displayed in workout detail.</div>
|
||||
<div class="line">Wind is displayed, with arrow indicating direction (a tooltip can be displayed with the direction that the wind is coming <strong>from</strong>) (<strong>new in 0.5.5</strong>).</div>
|
||||
<div class="line">Wind is displayed, with arrow indicating direction (a tooltip can be displayed with the direction that the wind is coming <strong>from</strong>) (<em>new in 0.5.5</em>).</div>
|
||||
</div>
|
||||
</li>
|
||||
<li><p>Segments can be displayed.</p></li>
|
||||
<li><p>Workout gpx file can be downloaded (<strong>new in 0.5.1</strong>)</p></li>
|
||||
<li><p>Workout gpx file can be downloaded (<em>new in 0.5.1</em>)</p></li>
|
||||
<li><p>Workout edition and deletion. User can add a note.</p></li>
|
||||
<li><dl class="simple">
|
||||
<dt>User statistics, by time period (week, month, year) and sport:</dt><dd><ul class="simple">
|
||||
<li><p>total distance</p></li>
|
||||
<li><p>total duration</p></li>
|
||||
<li><p>total workouts</p></li>
|
||||
<li><p>total ascent (<strong>new in 0.5.0</strong>)</p></li>
|
||||
<li><p>total descent (<strong>new in 0.5.0</strong>)</p></li>
|
||||
<li><p>average speed (<strong>new in 0.5.1</strong>)</p></li>
|
||||
<li><p>total ascent (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><p>total descent (<em>new in 0.5.0</em>)</p></li>
|
||||
<li><p>average speed (<em>new in 0.5.1</em>)</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
@ -221,7 +229,7 @@
|
||||
<dt>User records by sports:</dt><dd><ul class="simple">
|
||||
<li><p>average speed</p></li>
|
||||
<li><p>farthest distance</p></li>
|
||||
<li><p>highest ascent (<strong>new in 0.6.11</strong>, can be hidden, see user preferences)</p></li>
|
||||
<li><p>highest ascent (<em>new in 0.6.11</em>, can be hidden, see user preferences)</p></li>
|
||||
<li><p>longest duration</p></li>
|
||||
<li><p>maximum speed</p></li>
|
||||
</ul>
|
||||
@ -290,9 +298,9 @@ A user with an inactive account cannot log in. (<em>new in 0.6.0</em>)</p></li>
|
||||
<p>The following parameters can be set:</p>
|
||||
<ul class="simple">
|
||||
<li><p>active users limit. If 0, registration is enabled (no limit defined)</p></li>
|
||||
<li><p>maximum size of uploaded files</p></li>
|
||||
<li><p>maximum size of gpx file (individually uploaded or in a zip archive) (<em>changed in 0.7.4</em>)</p></li>
|
||||
<li><p>maximum size of zip archive</p></li>
|
||||
<li><p>maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.</p></li>
|
||||
<li><p>maximum number of files in the zip archive (<em>changed in 0.7.4</em>)</p></li>
|
||||
<li><p>administrator email for contact (<em>new in 0.6.0</em>)</p></li>
|
||||
</ul>
|
||||
<div class="admonition warning">
|
||||
@ -330,6 +338,14 @@ A user with an inactive account cannot log in. (<em>new in 0.6.0</em>)</p></li>
|
||||
<section id="translations">
|
||||
<h2>Translations<a class="headerlink" href="#translations" title="Permalink to this heading">¶</a></h2>
|
||||
<p>FitTrackee is available in the following languages (which can be saved in the user preferences):</p>
|
||||
<ul class="simple">
|
||||
<li><p>English</p></li>
|
||||
<li><p>French (<em>new in 0.2.3</em>)</p></li>
|
||||
<li><p>German (<em>new in 0.6.9</em>)</p></li>
|
||||
<li><p>Dutch (<em>new in 0.7.8</em>)</p></li>
|
||||
<li><p>Italian (<em>new in 0.7.10</em>)</p></li>
|
||||
</ul>
|
||||
<p>Translations status on <a class="reference external" href="https://hosted.weblate.org/engage/fittrackee/">Weblate</a>:</p>
|
||||
<figure class="align-default">
|
||||
<img alt="https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg" src="https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg" /></figure>
|
||||
</section>
|
||||
@ -383,10 +399,12 @@ A user with an inactive account cannot log in. (<em>new in 0.6.0</em>)</p></li>
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -4,11 +4,12 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Index — FitTrackee 0.7.3
|
||||
<title>Index — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/custom.css" />
|
||||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||||
<script src="_static/jquery.js"></script>
|
||||
<script src="_static/underscore.js"></script>
|
||||
@ -39,7 +40,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -186,10 +187,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -4,11 +4,12 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>HTTP Routing Table — FitTrackee 0.7.3
|
||||
<title>HTTP Routing Table — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/custom.css" />
|
||||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||||
<script src="_static/jquery.js"></script>
|
||||
<script src="_static/underscore.js"></script>
|
||||
@ -46,7 +47,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -408,10 +409,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>FitTrackee — FitTrackee 0.7.3
|
||||
<title>FitTrackee — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/custom.css" />
|
||||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||||
<script src="_static/jquery.js"></script>
|
||||
<script src="_static/underscore.js"></script>
|
||||
@ -41,7 +42,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="#">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -178,10 +179,12 @@ Map</a>.</div>
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Installation — FitTrackee 0.7.3
|
||||
<title>Installation — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/custom.css" />
|
||||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||||
<script src="_static/jquery.js"></script>
|
||||
<script src="_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -208,7 +209,7 @@
|
||||
<dt>optional</dt><dd><ul>
|
||||
<li><p>Redis for task queue (if email sending is enabled) and API rate limits</p></li>
|
||||
<li><p>SMTP provider (if email sending is enabled)</p></li>
|
||||
<li><p>API key from <a class="reference external" href="https://darksky.net/dev">Dark Sky</a></p></li>
|
||||
<li><p>API key from <a class="reference external" href="https://darksky.net/dev">Dark Sky</a> (deprecated, DarkSky will stop on March 31st, 2023)</p></li>
|
||||
<li><p><a class="reference external" href="https://poetry.eustace.io">Poetry</a> (for installation from sources only)</p></li>
|
||||
<li><p><a class="reference external" href="https://yarnpkg.com">Yarn</a> (for development only)</p></li>
|
||||
<li><p>Docker and Docker Compose (for development or evaluation purposes)</p></li>
|
||||
@ -701,9 +702,9 @@ $ <span class="nb">source</span> .env
|
||||
</pre></div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Start task queue workers if email sending is enabled.</p></li>
|
||||
<li><p>Start task queue workers if email sending is enabled, with flask-dramatiq CLI:</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ fittrackee_worker --processes <span class="m">2</span>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ flask worker --processes <span class="m">2</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<div class="admonition note">
|
||||
@ -713,7 +714,7 @@ $ <span class="nb">source</span> .env
|
||||
</div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Open <a class="reference external" href="http://localhost:3000">http://localhost:3000</a> and register</p></li>
|
||||
<li><p>Open <a class="reference external" href="http://localhost:5000">http://localhost:5000</a> and register</p></li>
|
||||
<li><p>To set admin rights to the newly created account, use the following command line:</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ ftcli users update <username> --set-admin <span class="nb">true</span>
|
||||
@ -794,11 +795,11 @@ $ make install-db
|
||||
</div>
|
||||
</div>
|
||||
<ul class="simple">
|
||||
<li><p>Download the last release (for now, it is the release v0.7.3):</p></li>
|
||||
<li><p>Download the last release (for now, it is the release v0.7.10):</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.3.tar.gz
|
||||
$ tar -xzf v0.7.3.tar.gz
|
||||
$ mv FitTrackee-0.7.3 FitTrackee
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.10.tar.gz
|
||||
$ tar -xzf v0.7.10.tar.gz
|
||||
$ mv FitTrackee-0.7.10 FitTrackee
|
||||
$ <span class="nb">cd</span> FitTrackee
|
||||
</pre></div>
|
||||
</div>
|
||||
@ -918,11 +919,11 @@ $ <span class="nb">source</span> .env
|
||||
<ul class="simple">
|
||||
<li><p>Stop the application</p></li>
|
||||
<li><p>Change to the directory where FitTrackee directory is located</p></li>
|
||||
<li><p>Download the last release (for now, it is the release v0.7.3) and overwrite existing files:</p></li>
|
||||
<li><p>Download the last release (for now, it is the release v0.7.10) and overwrite existing files:</p></li>
|
||||
</ul>
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.3.tar.gz
|
||||
$ tar -xzf v0.7.3.tar.gz
|
||||
$ cp -R FitTrackee-0.7.3/* FitTrackee/
|
||||
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.10.tar.gz
|
||||
$ tar -xzf v0.7.10.tar.gz
|
||||
$ cp -R FitTrackee-0.7.10/* FitTrackee/
|
||||
$ <span class="nb">cd</span> FitTrackee
|
||||
</pre></div>
|
||||
</div>
|
||||
@ -1044,6 +1045,14 @@ One way is to use a <strong>systemd</strong> services and <strong>Nginx</strong>
|
||||
ssl_certificate fullchain.pem;
|
||||
ssl_certificate_key privkey.pem;
|
||||
|
||||
## this parameter controls how large of a file can be
|
||||
## uploaded, and defaults to 1MB. If you change the FitTrackee
|
||||
## settings to allow larger uploads, you'll need to change this
|
||||
## setting by uncommenting the line below and setting the size limit
|
||||
## you want. Set to "0" to prevent nginx from checking the
|
||||
## request body size at all
|
||||
# client_max_body_size 1m;
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:5000;
|
||||
proxy_redirect default;
|
||||
@ -1172,10 +1181,12 @@ $ make docker-test-python <span class="c1"># run unit tests on API</span>
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
BIN
docs/objects.inv
@ -4,11 +4,12 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Search — FitTrackee 0.7.3
|
||||
<title>Search — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="_static/css/custom.css" />
|
||||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||||
<script src="_static/jquery.js"></script>
|
||||
<script src="_static/underscore.js"></script>
|
||||
@ -46,7 +47,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -152,10 +153,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Administrator — FitTrackee 0.7.3
|
||||
<title>Administrator — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -172,10 +173,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>Troubleshooting — FitTrackee 0.7.3
|
||||
<title>Troubleshooting — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -155,10 +156,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -5,11 +5,12 @@
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
|
||||
|
||||
<title>User — FitTrackee 0.7.3
|
||||
<title>User — FitTrackee 0.7.10
|
||||
documentation</title>
|
||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/bootstrap-sphinx.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/custom.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/fork-awesome.min.css" />
|
||||
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css" />
|
||||
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
@ -42,7 +43,7 @@
|
||||
</button>
|
||||
<a class="navbar-brand" href="../index.html">
|
||||
FitTrackee</a>
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.3
|
||||
<span class="navbar-text navbar-version pull-left"><b>0.7.10
|
||||
</b></span>
|
||||
</div>
|
||||
|
||||
@ -146,10 +147,12 @@
|
||||
|
||||
</p>
|
||||
<p>
|
||||
© Copyright 2018 - 2022, SamR1.<br/>
|
||||
© Copyright 2018 - 2022, SamR1 <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.
|
||||
Last updated on Dec 21, 2022.<br/>
|
||||
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 5.3.0.<br/>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
</body>
|
||||
</html>
|
Before Width: | Height: | Size: 549 KiB After Width: | Height: | Size: 567 KiB |
Before Width: | Height: | Size: 372 KiB After Width: | Height: | Size: 378 KiB |
Before Width: | Height: | Size: 207 KiB After Width: | Height: | Size: 216 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 74 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 125 KiB |
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 130 KiB |
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 82 KiB |
100
docsrc/source/_static/css/custom.css
Normal file
@ -0,0 +1,100 @@
|
||||
/* lato-regular - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: url('../fonts/lato-v15-latin-regular.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Regular'), local('Lato-Regular'),
|
||||
url('../fonts/lato-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('../fonts/lato-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('../fonts/lato-v15-latin-regular.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
/* lato-700 - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: url('../fonts/lato-v15-latin-700.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Bold'), local('Lato-Bold'),
|
||||
url('../fonts/lato-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('../fonts/lato-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-700.woff') format('woff'), /* Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('../fonts/lato-v15-latin-700.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
/* lato-italic - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: url('../fonts/lato-v15-latin-italic.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Italic'), local('Lato-Italic'),
|
||||
url('../fonts/lato-v15-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('../fonts/lato-v15-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-italic.woff') format('woff'), /* Modern Browsers */
|
||||
url('../fonts/lato-v15-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('../fonts/lato-v15-latin-italic.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
|
||||
html {
|
||||
font-family: "Lato", sans-serif;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
min-height: 100vh;
|
||||
padding-bottom: 65px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.alert-danger {
|
||||
background-color: #f2dede;
|
||||
border-color: #dca7a7;
|
||||
color: #a94442;
|
||||
}
|
||||
|
||||
.alert-info {
|
||||
background-color: #d9edf7;
|
||||
border-color: #9acfea;
|
||||
color: #31708f;
|
||||
}
|
||||
|
||||
.alert-warning {
|
||||
background-color: #fcf8e3;
|
||||
border-color: #f5e79e;
|
||||
color: #8a6d3b;
|
||||
}
|
||||
|
||||
.descname {
|
||||
border-top: solid 3px #a18bac;
|
||||
border-radius: unset;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
dl.field-list > dt {
|
||||
background: #f0f0f0;
|
||||
border-left: solid 3px #ccc;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.envvar {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.footer {
|
||||
bottom: 0;
|
||||
height: 65px;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
|
||||
img {
|
||||
border: 1px solid #cecdcd;
|
||||
margin: 5px 0;
|
||||
}
|
12
docsrc/source/_static/css/fork-awesome.min.css
vendored
Normal file
@ -1,100 +0,0 @@
|
||||
/* lato-regular - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: url('fonts/lato-v15-latin-regular.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Regular'), local('Lato-Regular'),
|
||||
url('fonts/lato-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('fonts/lato-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('fonts/lato-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
|
||||
url('fonts/lato-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('fonts/lato-v15-latin-regular.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
/* lato-700 - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
src: url('fonts/lato-v15-latin-700.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Bold'), local('Lato-Bold'),
|
||||
url('fonts/lato-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('fonts/lato-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('fonts/lato-v15-latin-700.woff') format('woff'), /* Modern Browsers */
|
||||
url('fonts/lato-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('fonts/lato-v15-latin-700.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
/* lato-italic - latin */
|
||||
@font-face {
|
||||
font-family: 'Lato';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
src: url('fonts/lato-v15-latin-italic.eot'); /* IE9 Compat Modes */
|
||||
src: local('Lato Italic'), local('Lato-Italic'),
|
||||
url('fonts/lato-v15-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
||||
url('fonts/lato-v15-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
|
||||
url('fonts/lato-v15-latin-italic.woff') format('woff'), /* Modern Browsers */
|
||||
url('fonts/lato-v15-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
|
||||
url('fonts/lato-v15-latin-italic.svg#Lato') format('svg'); /* Legacy iOS */
|
||||
}
|
||||
|
||||
|
||||
html {
|
||||
font-family: "Lato", sans-serif;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
min-height: 100vh;
|
||||
padding-bottom: 65px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.alert-danger {
|
||||
background-color: #f2dede;
|
||||
border-color: #dca7a7;
|
||||
color: #a94442;
|
||||
}
|
||||
|
||||
.alert-info {
|
||||
background-color: #d9edf7;
|
||||
border-color: #9acfea;
|
||||
color: #31708f;
|
||||
}
|
||||
|
||||
.alert-warning {
|
||||
background-color: #fcf8e3;
|
||||
border-color: #f5e79e;
|
||||
color: #8a6d3b;
|
||||
}
|
||||
|
||||
.descname {
|
||||
border-top: solid 3px #a18bac;
|
||||
border-radius: unset;
|
||||
padding: 6px;
|
||||
}
|
||||
|
||||
dl.field-list > dt {
|
||||
background: #f0f0f0;
|
||||
border-left: solid 3px #ccc;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.envvar {
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.footer {
|
||||
bottom: 0;
|
||||
height: 65px;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
|
||||
img {
|
||||
border: 1px solid #cecdcd;
|
||||
margin: 5px 0;
|
||||
}
|
BIN
docsrc/source/_static/fonts/forkawesome-webfont.eot
Normal file
3232
docsrc/source/_static/fonts/forkawesome-webfont.svg
Normal file
After Width: | Height: | Size: 547 KiB |
BIN
docsrc/source/_static/fonts/forkawesome-webfont.ttf
Normal file
BIN
docsrc/source/_static/fonts/forkawesome-webfont.woff
Normal file
BIN
docsrc/source/_static/fonts/forkawesome-webfont.woff2
Normal file
30
docsrc/source/_templates/layout.html
Normal file
@ -0,0 +1,30 @@
|
||||
{% extends '!layout.html' %}
|
||||
|
||||
{% block footer %}
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<p class="pull-right">
|
||||
<a href="#">Back to top</a>
|
||||
{% if theme_source_link_position == "footer" %}
|
||||
<br/>
|
||||
{% include "sourcelink.html" %}
|
||||
{% endif %}
|
||||
</p>
|
||||
<p>
|
||||
{%- if show_copyright %}
|
||||
{%- if hasdoc('copyright') %}
|
||||
{% trans path=pathto('copyright'), copyright=copyright|e %}© <a href="{{ path }}">Copyright</a> {{ copyright }}.{% endtrans %}<br/>
|
||||
{%- else %}
|
||||
{% trans copyright=copyright|e %}© Copyright {{ copyright }} <a rel="me" href="https://fosstodon.org/@FitTrackee"><i class="fa fa-mastodon" aria-hidden="true"></i></a>.{% endtrans %}
|
||||
{%- endif %}
|
||||
{%- endif %}
|
||||
{%- if last_updated %}
|
||||
{% trans last_updated=last_updated|e %}Last updated on {{ last_updated }}.{% endtrans %}<br/>
|
||||
{%- endif %}
|
||||
{%- if show_sphinx %}
|
||||
{% trans sphinx_version=sphinx_version|e %}Created using <a href="http://sphinx-doc.org/">Sphinx</a> {{ sphinx_version }}.{% endtrans %}<br/>
|
||||
{%- endif %}
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
{% endblock %}
|
@ -22,6 +22,7 @@ A command line interface (CLI) is available to manage database, OAuth2 tokens an
|
||||
| The following commands are now deprecated and will be removed in a next version:
|
||||
| - ``fittrackee_set_admin``
|
||||
| - ``fittrackee_upgrade_db``
|
||||
| - ``fittrackee_worker`` (disabled)
|
||||
|
||||
|
||||
Database
|
||||
|
@ -19,10 +19,6 @@ import sphinx_bootstrap_theme
|
||||
sys.path.insert(0, os.path.abspath('../../fittrackee'))
|
||||
|
||||
|
||||
def setup(app):
|
||||
app.add_css_file("custom.css")
|
||||
|
||||
|
||||
# -- Project information -----------------------------------------------------
|
||||
|
||||
project = 'FitTrackee'
|
||||
@ -75,6 +71,12 @@ html_theme_options = {
|
||||
],
|
||||
}
|
||||
|
||||
html_css_files = [
|
||||
'css/fork-awesome.min.css',
|
||||
'css/custom.css',
|
||||
]
|
||||
|
||||
html_last_updated_fmt = ''
|
||||
|
||||
# -- Sources configuration ---------------------------------------------------
|
||||
|
||||
|
@ -11,22 +11,24 @@ With the default configuration, `Open Street Map <https://www.openstreetmap.org>
|
||||
|
||||
Workouts
|
||||
^^^^^^^^
|
||||
- 12 sports are supported:
|
||||
- 14 sports are supported:
|
||||
- Cycling (Sport)
|
||||
- Cycling (Transport)
|
||||
- Cycling (Virtual) (**new in 0.7.3**)
|
||||
- Cycling (Virtual) (*new in 0.7.3*)
|
||||
- Hiking
|
||||
- Mountain Biking
|
||||
- Mountain Biking (Electric) (**new in 0.5.0**)
|
||||
- Rowing (**new in 0.5.0**)
|
||||
- Mountain Biking (Electric) (*new in 0.5.0*)
|
||||
- Mountaineering (*new in 0.7.9*)
|
||||
- Rowing (*new in 0.5.0*)
|
||||
- Running
|
||||
- Skiing (Alpine) (**new in 0.5.0**)
|
||||
- Skiing (Cross Country) (**new in 0.5.0**)
|
||||
- Snowshoes (**new in 0.5.2**)
|
||||
- Trail (**new in 0.5.0**)
|
||||
- Skiing (Alpine) (*new in 0.5.0*)
|
||||
- Skiing (Cross Country) (*new in 0.5.0*)
|
||||
- Snowshoes (*new in 0.5.2*)
|
||||
- Trail (*new in 0.5.0*)
|
||||
- Walking
|
||||
- (*new in 0.5.0*) Stopped speed threshold used by `gpxpy <https://github.com/tkrajina/gpxpy>`_ is not the default one for the following sports (0.1 km/h instead of 1 km/h):
|
||||
- Hiking
|
||||
- Mountaineering
|
||||
- Skiing (Cross Country)
|
||||
- Snowshoes
|
||||
- Trail
|
||||
@ -36,25 +38,27 @@ Workouts
|
||||
It can be overridden in user preferences.
|
||||
|
||||
- Dashboard with month calendar displaying workouts and record. The week can start on Sunday or Monday (which can be changed in the user preferences). The calendar displays up to 100 workouts.
|
||||
- Workout creation by uploading a gpx file (related data are stored in database with metric system). A workout can even be created without gpx (the user must enter date, time, duration and distance).
|
||||
- Workout creation by uploading a gpx file (related data are stored in database with metric system).
|
||||
- | A workout can even be created without gpx (the user must enter date, time, duration and distance).
|
||||
| Ascent and descent can also be provided (*new in 0.7.10*).
|
||||
- | A workout with a gpx file can be displayed with map and charts (speed and elevation).
|
||||
| Controls allow full screen view and position reset (**new in 0.5.5**).
|
||||
| Controls allow full screen view and position reset (*new in 0.5.5*).
|
||||
- | If DarkSky API key is provided, weather is displayed in workout detail.
|
||||
| Wind is displayed, with arrow indicating direction (a tooltip can be displayed with the direction that the wind is coming **from**) (**new in 0.5.5**).
|
||||
| Wind is displayed, with arrow indicating direction (a tooltip can be displayed with the direction that the wind is coming **from**) (*new in 0.5.5*).
|
||||
- Segments can be displayed.
|
||||
- Workout gpx file can be downloaded (**new in 0.5.1**)
|
||||
- Workout gpx file can be downloaded (*new in 0.5.1*)
|
||||
- Workout edition and deletion. User can add a note.
|
||||
- User statistics, by time period (week, month, year) and sport:
|
||||
- total distance
|
||||
- total duration
|
||||
- total workouts
|
||||
- total ascent (**new in 0.5.0**)
|
||||
- total descent (**new in 0.5.0**)
|
||||
- average speed (**new in 0.5.1**)
|
||||
- total ascent (*new in 0.5.0*)
|
||||
- total descent (*new in 0.5.0*)
|
||||
- average speed (*new in 0.5.1*)
|
||||
- User records by sports:
|
||||
- average speed
|
||||
- farthest distance
|
||||
- highest ascent (**new in 0.6.11**, can be hidden, see user preferences)
|
||||
- highest ascent (*new in 0.6.11*, can be hidden, see user preferences)
|
||||
- longest duration
|
||||
- maximum speed
|
||||
|
||||
@ -105,9 +109,9 @@ Administration
|
||||
The following parameters can be set:
|
||||
|
||||
- active users limit. If 0, registration is enabled (no limit defined)
|
||||
- maximum size of uploaded files
|
||||
- maximum size of gpx file (individually uploaded or in a zip archive) (*changed in 0.7.4*)
|
||||
- maximum size of zip archive
|
||||
- maximum number of files in the zip archive. If an archive contains more files, only the configured number of files is processed, without raising errors.
|
||||
- maximum number of files in the zip archive (*changed in 0.7.4*)
|
||||
- administrator email for contact (*new in 0.6.0*)
|
||||
|
||||
.. warning::
|
||||
@ -136,6 +140,14 @@ Translations
|
||||
^^^^^^^^^^^^
|
||||
FitTrackee is available in the following languages (which can be saved in the user preferences):
|
||||
|
||||
- English
|
||||
- French (*new in 0.2.3*)
|
||||
- German (*new in 0.6.9*)
|
||||
- Dutch (*new in 0.7.8*)
|
||||
- Italian (*new in 0.7.10*)
|
||||
|
||||
Translations status on `Weblate <https://hosted.weblate.org/engage/fittrackee/>`__:
|
||||
|
||||
.. figure:: https://hosted.weblate.org/widgets/fittrackee/-/multi-auto.svg
|
||||
|
||||
|
||||
|
@ -28,7 +28,7 @@ Prerequisites
|
||||
- optional
|
||||
- Redis for task queue (if email sending is enabled) and API rate limits
|
||||
- SMTP provider (if email sending is enabled)
|
||||
- API key from `Dark Sky <https://darksky.net/dev>`__
|
||||
- API key from `Dark Sky <https://darksky.net/dev>`__ (deprecated, DarkSky will stop on March 31st, 2023)
|
||||
- `Poetry <https://poetry.eustace.io>`__ (for installation from sources only)
|
||||
- `Yarn <https://yarnpkg.com>`__ (for development only)
|
||||
- Docker and Docker Compose (for development or evaluation purposes)
|
||||
@ -392,16 +392,16 @@ For instance, copy and update ``.env`` file from ``.env.example`` and source the
|
||||
|
||||
$ fittrackee
|
||||
|
||||
- Start task queue workers if email sending is enabled.
|
||||
- Start task queue workers if email sending is enabled, with flask-dramatiq CLI:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ fittrackee_worker --processes 2
|
||||
$ flask worker --processes 2
|
||||
|
||||
.. note::
|
||||
| To start application and workers with **systemd** service, see `Deployment <installation.html#deployment>`__
|
||||
|
||||
- Open http://localhost:3000 and register
|
||||
- Open http://localhost:5000 and register
|
||||
|
||||
- To set admin rights to the newly created account, use the following command line:
|
||||
|
||||
@ -480,13 +480,13 @@ Production environment
|
||||
.. warning::
|
||||
| Note that FitTrackee is under heavy development, some features may be unstable.
|
||||
|
||||
- Download the last release (for now, it is the release v0.7.3):
|
||||
- Download the last release (for now, it is the release v0.7.10):
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.3.tar.gz
|
||||
$ tar -xzf v0.7.3.tar.gz
|
||||
$ mv FitTrackee-0.7.3 FitTrackee
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.10.tar.gz
|
||||
$ tar -xzf v0.7.10.tar.gz
|
||||
$ mv FitTrackee-0.7.10 FitTrackee
|
||||
$ cd FitTrackee
|
||||
|
||||
- Create **.env** from example and update it
|
||||
@ -606,13 +606,13 @@ Prod environment
|
||||
|
||||
- Change to the directory where FitTrackee directory is located
|
||||
|
||||
- Download the last release (for now, it is the release v0.7.3) and overwrite existing files:
|
||||
- Download the last release (for now, it is the release v0.7.10) and overwrite existing files:
|
||||
|
||||
.. code:: bash
|
||||
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.3.tar.gz
|
||||
$ tar -xzf v0.7.3.tar.gz
|
||||
$ cp -R FitTrackee-0.7.3/* FitTrackee/
|
||||
$ wget https://github.com/SamR1/FitTrackee/archive/v0.7.10.tar.gz
|
||||
$ tar -xzf v0.7.10.tar.gz
|
||||
$ cp -R FitTrackee-0.7.10/* FitTrackee/
|
||||
$ cd FitTrackee
|
||||
|
||||
- Update **.env** if needed (see `Environment variables <installation.html#environment-variables>`__).
|
||||
|
@ -25,7 +25,7 @@ from werkzeug.middleware.proxy_fix import ProxyFix
|
||||
from fittrackee.emails.email import EmailService
|
||||
from fittrackee.request import CustomRequest
|
||||
|
||||
VERSION = __version__ = '0.7.3'
|
||||
VERSION = __version__ = '0.7.10'
|
||||
REDIS_URL = os.getenv('REDIS_URL', 'redis://')
|
||||
API_RATE_LIMITS = os.environ.get('API_RATE_LIMITS', '300 per 5 minutes').split(
|
||||
','
|
||||
|
@ -81,6 +81,14 @@ def upgrade_db() -> None:
|
||||
upgrade(directory=BASEDIR + '/migrations')
|
||||
|
||||
|
||||
def worker() -> None:
|
||||
raise SystemExit(
|
||||
"Error: this command is disabled, "
|
||||
"it will be removed in a next version.\n"
|
||||
"Please use flask-dramatiq CLI instead ('flask worker')."
|
||||
)
|
||||
|
||||
|
||||
def main() -> None:
|
||||
options = {'bind': f'{HOST}:{PORT}', 'workers': WORKERS}
|
||||
StandaloneApplication(app, options).run()
|
||||
|
@ -48,7 +48,7 @@ def get_application_config() -> Union[Dict, HttpResponse]:
|
||||
"max_users": 0,
|
||||
"max_zip_file_size": 10485760,
|
||||
"map_attribution": "© <a href=http://www.openstreetmap.org/copyright>OpenStreetMap</a> contributors"
|
||||
"version": "0.7.3"
|
||||
"version": "0.7.10"
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
@ -100,7 +100,7 @@ def update_application_config(auth_user: User) -> Union[Dict, HttpResponse]:
|
||||
"max_users": 10,
|
||||
"max_zip_file_size": 10485760,
|
||||
"map_attribution": "© <a href=http://www.openstreetmap.org/copyright>OpenStreetMap</a> contributors"
|
||||
"version": "0.7.3"
|
||||
"version": "0.7.10"
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
|
@ -10,6 +10,12 @@ if os.getenv('APP_SETTINGS') == 'fittrackee.config.TestingConfig':
|
||||
else:
|
||||
broker = RedisBroker
|
||||
|
||||
XDIST_WORKER = (
|
||||
f"_{os.getenv('PYTEST_XDIST_WORKER')}"
|
||||
if os.getenv('PYTEST_XDIST_WORKER')
|
||||
else ''
|
||||
)
|
||||
|
||||
|
||||
class BaseConfig:
|
||||
|
||||
@ -54,7 +60,9 @@ class BaseConfig:
|
||||
'en',
|
||||
'fr',
|
||||
'de',
|
||||
'it',
|
||||
# 'nb', # disabled for now
|
||||
'nl',
|
||||
]
|
||||
OAUTH2_TOKEN_EXPIRES_IN = {
|
||||
'authorization_code': 864000, # 10 days
|
||||
@ -73,7 +81,13 @@ class DevelopmentConfig(BaseConfig):
|
||||
class TestingConfig(BaseConfig):
|
||||
DEBUG = True
|
||||
TESTING = True
|
||||
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_TEST_URL')
|
||||
SQLALCHEMY_DATABASE_URI = (
|
||||
os.environ.get('DATABASE_TEST_URL', '') + XDIST_WORKER
|
||||
)
|
||||
UPLOAD_FOLDER = os.path.join(
|
||||
os.getenv('UPLOAD_FOLDER', current_app.root_path),
|
||||
'uploads' + XDIST_WORKER,
|
||||
)
|
||||
SECRET_KEY = 'test key' # nosec
|
||||
BCRYPT_LOG_ROUNDS = 4
|
||||
TOKEN_EXPIRATION_DAYS = 0
|
||||
|
2
fittrackee/dist/index.html
vendored
@ -1 +1 @@
|
||||
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><link rel="stylesheet" href="/static/css/fork-awesome.min.css"/><link rel="stylesheet" href="/static/css/leaflet.css"/><title>FitTrackee</title><script defer="defer" src="/static/js/chunk-vendors.50f5c7a2.js"></script><script defer="defer" src="/static/js/app.f7049224.js"></script><link href="/static/css/app.564b9516.css" rel="stylesheet"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#4DBA87"><meta name="apple-mobile-web-app-capable" content="no"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="fittrackee_client"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color="#4DBA87"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but FitTrackee doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
||||
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><link rel="stylesheet" href="/static/css/fork-awesome.min.css"/><link rel="stylesheet" href="/static/css/leaflet.css"/><title>FitTrackee</title><script defer="defer" src="/static/js/chunk-vendors.a82f8875.js"></script><script defer="defer" src="/static/js/app.c4c614bd.js"></script><link href="/static/css/app.2461bfc8.css" rel="stylesheet"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#4DBA87"><meta name="apple-mobile-web-app-capable" content="no"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="fittrackee_client"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color="#4DBA87"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but FitTrackee doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
2
fittrackee/dist/service-worker.js
vendored
2
fittrackee/dist/service-worker.js.map
vendored
1
fittrackee/dist/static/css/app.2461bfc8.css
vendored
Normal file
1
fittrackee/dist/static/css/app.564b9516.css
vendored
@ -1 +0,0 @@
|
||||
#account-confirmation[data-v-785df978]{display:flex;flex-direction:column;align-items:center}#account-confirmation svg[data-v-785df978]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter);width:100px}#account-confirmation .error-message[data-v-785df978]{font-size:1.1em;text-align:center;display:flex;flex-direction:column}@media screen and (max-width:1000px){#account-confirmation .error-message[data-v-785df978]{font-size:1em}}#email-update[data-v-8c2ec9ce]{display:flex;flex-direction:column;align-items:center}#email-update svg[data-v-8c2ec9ce]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter);width:100px}#email-update .error-message[data-v-8c2ec9ce]{font-size:1.1em;text-align:center;display:flex;flex-direction:column}@media screen and (max-width:1000px){#email-update .error-message[data-v-8c2ec9ce]{font-size:1em}}#profile[data-v-05463732],#profile[data-v-05463732] .profile-form{display:flex;flex-direction:column}#profile[data-v-05463732] .profile-form hr{border-color:var(--card-border-color);border-width:1px 0 0 0}#profile[data-v-05463732] .profile-form .form-items{display:flex;flex-direction:column}#profile[data-v-05463732] .profile-form .form-items input{margin:5px 0}#profile[data-v-05463732] .profile-form .form-items select{height:35px;padding:5px 0}#profile[data-v-05463732] .profile-form .form-items ::v-deep(.custom-textarea) textarea{padding:5px}#profile[data-v-05463732] .profile-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#profile[data-v-05463732] .profile-form .form-items .birth-date{height:20px}#profile[data-v-05463732] .profile-form .form-buttons{display:flex;margin-top:10px;padding:10px 0;gap:10px}#user[data-v-af7007f4]{margin:auto;width:700px}@media screen and (max-width:1000px){#user[data-v-af7007f4]{width:100%;margin:0 auto 50px auto}}
|
1
fittrackee/dist/static/css/profile.9f83730d.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
#account-confirmation[data-v-785df978]{display:flex;flex-direction:column;align-items:center}#account-confirmation svg[data-v-785df978]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter);width:100px}#account-confirmation .error-message[data-v-785df978]{font-size:1.1em;text-align:center;display:flex;flex-direction:column}@media screen and (max-width:1000px){#account-confirmation .error-message[data-v-785df978]{font-size:1em}}#email-update[data-v-8c2ec9ce]{display:flex;flex-direction:column;align-items:center}#email-update svg[data-v-8c2ec9ce]{stroke:none;fill-rule:nonzero;fill:var(--app-color);filter:var(--svg-filter);width:100px}#email-update .error-message[data-v-8c2ec9ce]{font-size:1.1em;text-align:center;display:flex;flex-direction:column}@media screen and (max-width:1000px){#email-update .error-message[data-v-8c2ec9ce]{font-size:1em}}#profile[data-v-6646c65e]{padding:0 10px}#profile[data-v-6646c65e],#profile[data-v-6646c65e] .profile-form{display:flex;flex-direction:column}#profile[data-v-6646c65e] .profile-form hr{border-color:var(--card-border-color);border-width:1px 0 0 0}#profile[data-v-6646c65e] .profile-form .form-items{display:flex;flex-direction:column}#profile[data-v-6646c65e] .profile-form .form-items input{margin:5px 0}#profile[data-v-6646c65e] .profile-form .form-items select{height:35px;padding:5px 0}#profile[data-v-6646c65e] .profile-form .form-items ::v-deep(.custom-textarea) textarea{padding:5px}#profile[data-v-6646c65e] .profile-form .form-items .form-item{display:flex;flex-direction:column;padding:10px}#profile[data-v-6646c65e] .profile-form .form-items .birth-date{height:20px}#profile[data-v-6646c65e] .profile-form .form-buttons{display:flex;margin-top:10px;padding:10px 0;gap:10px}#user[data-v-af7007f4]{margin:auto;width:700px}@media screen and (max-width:1000px){#user[data-v-af7007f4]{width:100%;margin:0 auto 50px auto}}
|
1
fittrackee/dist/static/css/workouts.2c19fc50.css
vendored
Normal file
7
fittrackee/dist/static/js/243.e034bc01.js
vendored
Normal file
1
fittrackee/dist/static/js/243.e034bc01.js.map
vendored
Normal file
7
fittrackee/dist/static/js/243.e551248f.js
vendored
7
fittrackee/dist/static/js/633.3c9401e6.js
vendored
Normal file
1
fittrackee/dist/static/js/633.3c9401e6.js.map
vendored
Normal file
7
fittrackee/dist/static/js/633.81a8ddc8.js
vendored
@ -1,2 +1,2 @@
|
||||
"use strict";(self["webpackChunkfittrackee_client"]=self["webpackChunkfittrackee_client"]||[]).push([[328],{6e3:function(t,e,i){i.r(e),i.d(e,{default:function(){return _}});var a=i(6252),n=i(2262),s=i(8273),c=i(5801),r=i(9917);const S=t=>((0,a.dD)("data-v-64629971"),t=t(),(0,a.Cn)(),t),l={id:"admin",class:"view"},p={key:0,class:"container"},u=S((()=>(0,a._)("div",{id:"bottom"},null,-1)));var T=(0,a.aZ)({__name:"AdminView",setup(t){const e=(0,r.o)(),i=(0,a.Fl)((()=>e.getters[c.SY.GETTERS.APP_CONFIG])),S=(0,a.Fl)((()=>e.getters[c.SY.GETTERS.APP_STATS])),T=(0,a.Fl)((()=>e.getters[c.YN.GETTERS.IS_ADMIN])),d=(0,a.Fl)((()=>e.getters[c.YN.GETTERS.USER_LOADING]));return(0,a.wF)((()=>e.dispatch(c.SY.ACTIONS.GET_APPLICATION_STATS))),(t,e)=>{const c=(0,a.up)("router-view");return(0,a.wg)(),(0,a.iD)("div",l,[(0,n.SU)(d)?(0,a.kq)("",!0):((0,a.wg)(),(0,a.iD)("div",p,[(0,n.SU)(T)?((0,a.wg)(),(0,a.j4)(c,{key:0,appConfig:(0,n.SU)(i),appStatistics:(0,n.SU)(S)},null,8,["appConfig","appStatistics"])):((0,a.wg)(),(0,a.j4)(s.Z,{key:1})),u]))])}}}),d=i(3744);const o=(0,d.Z)(T,[["__scopeId","data-v-64629971"]]);var _=o}}]);
|
||||
//# sourceMappingURL=admin.9bc68088.js.map
|
||||
//# sourceMappingURL=admin.443044dd.js.map
|
@ -1 +1 @@
|
||||
{"version":3,"file":"static/js/admin.9bc68088.js","mappings":"mOAGA,MAAMA,EAAeC,KAAMC,EAAAA,EAAAA,IAAa,mBAAmBD,EAAEA,KAAIE,EAAAA,EAAAA,MAAcF,GACzEG,EAAa,CACjBC,GAAI,QACJC,MAAO,QAEHC,EAAa,CACjBC,IAAK,EACLF,MAAO,aAEHG,EAA2BT,GAAa,KAAmBU,EAAAA,EAAAA,GAAoB,MAAO,CAAEL,GAAI,UAAY,MAAO,KAUrH,OAA4BM,EAAAA,EAAAA,IAAiB,CAC3CC,OAAQ,YACRC,MAAMC,GAEN,MAAMC,GAAQC,EAAAA,EAAAA,KAERC,GAAqCC,EAAAA,EAAAA,KACzC,IAAMH,EAAMI,QAAQC,EAAAA,GAAAA,QAAAA,cAEhBC,GAA6CH,EAAAA,EAAAA,KACjD,IAAMH,EAAMI,QAAQC,EAAAA,GAAAA,QAAAA,aAEhBE,GAAuCJ,EAAAA,EAAAA,KAC3C,IAAMH,EAAMI,QAAQI,EAAAA,GAAAA,QAAAA,YAEhBC,GAAoCN,EAAAA,EAAAA,KACxC,IAAMH,EAAMI,QAAQI,EAAAA,GAAAA,QAAAA,gBAKxB,OAFEE,EAAAA,EAAAA,KAAc,IAAMV,EAAMW,SAASN,EAAAA,GAAAA,QAAAA,yBAE9B,CAACO,EAAUC,KAChB,MAAMC,GAAyBC,EAAAA,EAAAA,IAAkB,eAEjD,OAAQC,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAoB,MAAO5B,EAAY,EACzD6B,EAAAA,EAAAA,IAAOT,IAWLU,EAAAA,EAAAA,IAAoB,IAAI,KAVvBH,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAoB,MAAOzB,EAAY,EACnD0B,EAAAA,EAAAA,IAAOX,KACHS,EAAAA,EAAAA,OAAcI,EAAAA,EAAAA,IAAaN,EAAwB,CAClDrB,IAAK,EACLS,WAAWgB,EAAAA,EAAAA,IAAOhB,GAClBI,eAAeY,EAAAA,EAAAA,IAAOZ,IACrB,KAAM,EAAG,CAAC,YAAa,qBACzBU,EAAAA,EAAAA,OAAcI,EAAAA,EAAAA,IAAaC,EAAAA,EAAU,CAAE5B,IAAK,KACjDC,MAGN,CAEJ,I,UCvDA,MAAM4B,GAA2B,OAAgB,EAAQ,CAAC,CAAC,YAAY,qBAEvE,O","sources":["webpack://fittrackee_client/./src/views/AdminView.vue?67de","webpack://fittrackee_client/./src/views/AdminView.vue"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-64629971\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin\",\n class: \"view\"\n}\nconst _hoisted_2 = {\n key: 0,\n class: \"container\"\n}\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\n\nimport { computed, ComputedRef, onBeforeMount } from 'vue'\n\n import NotFound from '@/components/Common/NotFound.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig, IAppStatistics } from '@/types/application'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminView',\n setup(__props) {\n\n const store = useStore()\n\n const appConfig: ComputedRef<TAppConfig> = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const appStatistics: ComputedRef<IAppStatistics> = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_STATS]\n )\n const isAuthUserAmin: ComputedRef<boolean> = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_ADMIN]\n )\n const userLoading: ComputedRef<boolean> = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_STATS))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (!_unref(userLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n (_unref(isAuthUserAmin))\n ? (_openBlock(), _createBlock(_component_router_view, {\n key: 0,\n appConfig: _unref(appConfig),\n appStatistics: _unref(appStatistics)\n }, null, 8, [\"appConfig\", \"appStatistics\"]))\n : (_openBlock(), _createBlock(NotFound, { key: 1 })),\n _hoisted_3\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./AdminView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminView.vue?vue&type=style&index=0&id=64629971&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-64629971\"]])\n\nexport default __exports__"],"names":["_withScopeId","n","_pushScopeId","_popScopeId","_hoisted_1","id","class","_hoisted_2","key","_hoisted_3","_createElementVNode","_defineComponent","__name","setup","__props","store","useStore","appConfig","computed","getters","ROOT_STORE","appStatistics","isAuthUserAmin","AUTH_USER_STORE","userLoading","onBeforeMount","dispatch","_ctx","_cache","_component_router_view","_resolveComponent","_openBlock","_createElementBlock","_unref","_createCommentVNode","_createBlock","NotFound","__exports__"],"sourceRoot":""}
|
||||
{"version":3,"file":"static/js/admin.443044dd.js","mappings":"mOAGA,MAAMA,EAAeC,KAAMC,EAAAA,EAAAA,IAAa,mBAAmBD,EAAEA,KAAIE,EAAAA,EAAAA,MAAcF,GACzEG,EAAa,CACjBC,GAAI,QACJC,MAAO,QAEHC,EAAa,CACjBC,IAAK,EACLF,MAAO,aAEHG,EAA2BT,GAAa,KAAmBU,EAAAA,EAAAA,GAAoB,MAAO,CAAEL,GAAI,UAAY,MAAO,KAUrH,OAA4BM,EAAAA,EAAAA,IAAiB,CAC3CC,OAAQ,YACRC,MAAMC,GAEN,MAAMC,GAAQC,EAAAA,EAAAA,KAERC,GAAqCC,EAAAA,EAAAA,KACzC,IAAMH,EAAMI,QAAQC,EAAAA,GAAAA,QAAAA,cAEhBC,GAA6CH,EAAAA,EAAAA,KACjD,IAAMH,EAAMI,QAAQC,EAAAA,GAAAA,QAAAA,aAEhBE,GAAuCJ,EAAAA,EAAAA,KAC3C,IAAMH,EAAMI,QAAQI,EAAAA,GAAAA,QAAAA,YAEhBC,GAAoCN,EAAAA,EAAAA,KACxC,IAAMH,EAAMI,QAAQI,EAAAA,GAAAA,QAAAA,gBAKxB,OAFEE,EAAAA,EAAAA,KAAc,IAAMV,EAAMW,SAASN,EAAAA,GAAAA,QAAAA,yBAE9B,CAACO,EAAUC,KAChB,MAAMC,GAAyBC,EAAAA,EAAAA,IAAkB,eAEjD,OAAQC,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAoB,MAAO5B,EAAY,EACzD6B,EAAAA,EAAAA,IAAOT,IAWLU,EAAAA,EAAAA,IAAoB,IAAI,KAVvBH,EAAAA,EAAAA,OAAcC,EAAAA,EAAAA,IAAoB,MAAOzB,EAAY,EACnD0B,EAAAA,EAAAA,IAAOX,KACHS,EAAAA,EAAAA,OAAcI,EAAAA,EAAAA,IAAaN,EAAwB,CAClDrB,IAAK,EACLS,WAAWgB,EAAAA,EAAAA,IAAOhB,GAClBI,eAAeY,EAAAA,EAAAA,IAAOZ,IACrB,KAAM,EAAG,CAAC,YAAa,qBACzBU,EAAAA,EAAAA,OAAcI,EAAAA,EAAAA,IAAaC,EAAAA,EAAU,CAAE5B,IAAK,KACjDC,MAGN,CAEJ,I,UCvDA,MAAM4B,GAA2B,OAAgB,EAAQ,CAAC,CAAC,YAAY,qBAEvE,O","sources":["webpack://fittrackee_client/./src/views/AdminView.vue?67de","webpack://fittrackee_client/./src/views/AdminView.vue"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-64629971\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n id: \"admin\",\n class: \"view\"\n}\nconst _hoisted_2 = {\n key: 0,\n class: \"container\"\n}\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"bottom\" }, null, -1))\n\nimport { computed, ComputedRef, onBeforeMount } from 'vue'\n\n import NotFound from '@/components/Common/NotFound.vue'\n import { AUTH_USER_STORE, ROOT_STORE } from '@/store/constants'\n import { TAppConfig, IAppStatistics } from '@/types/application'\n import { useStore } from '@/use/useStore'\n\n \nexport default /*#__PURE__*/_defineComponent({\n __name: 'AdminView',\n setup(__props) {\n\n const store = useStore()\n\n const appConfig: ComputedRef<TAppConfig> = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_CONFIG]\n )\n const appStatistics: ComputedRef<IAppStatistics> = computed(\n () => store.getters[ROOT_STORE.GETTERS.APP_STATS]\n )\n const isAuthUserAmin: ComputedRef<boolean> = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.IS_ADMIN]\n )\n const userLoading: ComputedRef<boolean> = computed(\n () => store.getters[AUTH_USER_STORE.GETTERS.USER_LOADING]\n )\n\n onBeforeMount(() => store.dispatch(ROOT_STORE.ACTIONS.GET_APPLICATION_STATS))\n\nreturn (_ctx: any,_cache: any) => {\n const _component_router_view = _resolveComponent(\"router-view\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (!_unref(userLoading))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n (_unref(isAuthUserAmin))\n ? (_openBlock(), _createBlock(_component_router_view, {\n key: 0,\n appConfig: _unref(appConfig),\n appStatistics: _unref(appStatistics)\n }, null, 8, [\"appConfig\", \"appStatistics\"]))\n : (_openBlock(), _createBlock(NotFound, { key: 1 })),\n _hoisted_3\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})","import script from \"./AdminView.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./AdminView.vue?vue&type=script&setup=true&lang=ts\"\n\nimport \"./AdminView.vue?vue&type=style&index=0&id=64629971&lang=scss&scoped=true\"\n\nimport exportComponent from \"/mnt/data-lnx/Devs/00_Perso/FitTrackee/fittrackee_client/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-64629971\"]])\n\nexport default __exports__"],"names":["_withScopeId","n","_pushScopeId","_popScopeId","_hoisted_1","id","class","_hoisted_2","key","_hoisted_3","_createElementVNode","_defineComponent","__name","setup","__props","store","useStore","appConfig","computed","getters","ROOT_STORE","appStatistics","isAuthUserAmin","AUTH_USER_STORE","userLoading","onBeforeMount","dispatch","_ctx","_cache","_component_router_view","_resolveComponent","_openBlock","_createElementBlock","_unref","_createCommentVNode","_createBlock","NotFound","__exports__"],"sourceRoot":""}
|