API - minor refactor and documentation update
This commit is contained in:
		@@ -1,4 +1,4 @@
 | 
				
			|||||||
# Sphinx build info version 1
 | 
					# 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.
 | 
					# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
 | 
				
			||||||
config: 30c5e5361bea086cc59c229f2ef9de12
 | 
					config: 49668bbf739dde28729baae15bc4e905
 | 
				
			||||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
 | 
					tags: 645f666f9bcd5a90fca523b33c5a78b7
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										7
									
								
								docs/_sources/api/configuration.rst.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								docs/_sources/api/configuration.rst.txt
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					Configuration
 | 
				
			||||||
 | 
					#############
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.. autoflask:: fittrackee_api:create_app()
 | 
				
			||||||
 | 
					   :endpoints:
 | 
				
			||||||
 | 
					    config.get_application_config,
 | 
				
			||||||
 | 
					    config.update_application_config
 | 
				
			||||||
@@ -7,6 +7,7 @@ API documentation
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
   activities
 | 
					   activities
 | 
				
			||||||
   auth
 | 
					   auth
 | 
				
			||||||
 | 
					   configuration
 | 
				
			||||||
   records
 | 
					   records
 | 
				
			||||||
   sports
 | 
					   sports
 | 
				
			||||||
   stats
 | 
					   stats
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1098,7 +1098,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -15,7 +15,7 @@
 | 
				
			|||||||
    <script type="text/javascript" src="../_static/language_data.js"></script>
 | 
					    <script type="text/javascript" src="../_static/language_data.js"></script>
 | 
				
			||||||
    <link rel="index" title="Index" href="../genindex.html" />
 | 
					    <link rel="index" title="Index" href="../genindex.html" />
 | 
				
			||||||
    <link rel="search" title="Search" href="../search.html" />
 | 
					    <link rel="search" title="Search" href="../search.html" />
 | 
				
			||||||
    <link rel="next" title="Records" href="records.html" />
 | 
					    <link rel="next" title="Configuration" href="configuration.html" />
 | 
				
			||||||
    <link rel="prev" title="Activities" href="activities.html" />
 | 
					    <link rel="prev" title="Activities" href="activities.html" />
 | 
				
			||||||
<meta charset='utf-8'>
 | 
					<meta charset='utf-8'>
 | 
				
			||||||
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
 | 
					<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
 | 
				
			||||||
@@ -89,7 +89,7 @@
 | 
				
			|||||||
    </a>
 | 
					    </a>
 | 
				
			||||||
  </li>
 | 
					  </li>
 | 
				
			||||||
  <li>
 | 
					  <li>
 | 
				
			||||||
    <a href="records.html" title="Next Chapter: Records"><span class="glyphicon glyphicon-chevron-right visible-sm"></span><span class="hidden-sm hidden-tablet">Records »</span>
 | 
					    <a href="configuration.html" title="Next Chapter: Configuration"><span class="glyphicon glyphicon-chevron-right visible-sm"></span><span class="hidden-sm hidden-tablet">Configuration »</span>
 | 
				
			||||||
    </a>
 | 
					    </a>
 | 
				
			||||||
  </li>
 | 
					  </li>
 | 
				
			||||||
              
 | 
					              
 | 
				
			||||||
@@ -545,7 +545,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										248
									
								
								docs/api/configuration.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										248
									
								
								docs/api/configuration.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,248 @@
 | 
				
			|||||||
 | 
					<!DOCTYPE html>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<html xmlns="http://www.w3.org/1999/xhtml">
 | 
				
			||||||
 | 
					  <head>
 | 
				
			||||||
 | 
					    <meta charset="utf-8" />
 | 
				
			||||||
 | 
					    <title>Configuration — FitTrackee 0.3.0-beta
 | 
				
			||||||
 | 
					 documentation</title>
 | 
				
			||||||
 | 
					    <link rel="stylesheet" href="../_static/bootstrap-sphinx.css" type="text/css" />
 | 
				
			||||||
 | 
					    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
 | 
				
			||||||
 | 
					    <link rel="stylesheet" type="text/css" href="../_static/custom.css" />
 | 
				
			||||||
 | 
					    <script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
 | 
				
			||||||
 | 
					    <script type="text/javascript" src="../_static/jquery.js"></script>
 | 
				
			||||||
 | 
					    <script type="text/javascript" src="../_static/underscore.js"></script>
 | 
				
			||||||
 | 
					    <script type="text/javascript" src="../_static/doctools.js"></script>
 | 
				
			||||||
 | 
					    <script type="text/javascript" src="../_static/language_data.js"></script>
 | 
				
			||||||
 | 
					    <link rel="index" title="Index" href="../genindex.html" />
 | 
				
			||||||
 | 
					    <link rel="search" title="Search" href="../search.html" />
 | 
				
			||||||
 | 
					    <link rel="next" title="Records" href="records.html" />
 | 
				
			||||||
 | 
					    <link rel="prev" title="Authentication" href="auth.html" />
 | 
				
			||||||
 | 
					<meta charset='utf-8'>
 | 
				
			||||||
 | 
					<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
 | 
				
			||||||
 | 
					<meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1'>
 | 
				
			||||||
 | 
					<meta name="apple-mobile-web-app-capable" content="yes">
 | 
				
			||||||
 | 
					<script type="text/javascript" src="../_static/js/jquery-1.11.0.min.js "></script>
 | 
				
			||||||
 | 
					<script type="text/javascript" src="../_static/js/jquery-fix.js "></script>
 | 
				
			||||||
 | 
					<script type="text/javascript" src="../_static/bootstrap-3.3.7/js/bootstrap.min.js "></script>
 | 
				
			||||||
 | 
					<script type="text/javascript" src="../_static/bootstrap-sphinx.js "></script>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  </head><body>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <div id="navbar" class="navbar navbar-default navbar-fixed-top">
 | 
				
			||||||
 | 
					    <div class="container">
 | 
				
			||||||
 | 
					      <div class="navbar-header">
 | 
				
			||||||
 | 
					        <!-- .btn-navbar is used as the toggle for collapsed navbar content -->
 | 
				
			||||||
 | 
					        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-collapse">
 | 
				
			||||||
 | 
					          <span class="icon-bar"></span>
 | 
				
			||||||
 | 
					          <span class="icon-bar"></span>
 | 
				
			||||||
 | 
					          <span class="icon-bar"></span>
 | 
				
			||||||
 | 
					        </button>
 | 
				
			||||||
 | 
					        <a class="navbar-brand" href="../index.html">
 | 
				
			||||||
 | 
					          FitTrackee</a>
 | 
				
			||||||
 | 
					        <span class="navbar-text navbar-version pull-left"><b>0.3.0</b></span>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <div class="collapse navbar-collapse nav-collapse">
 | 
				
			||||||
 | 
					          <ul class="nav navbar-nav">
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					                <li><a href="https://github.com/SamR1/FitTrackee">GitHub</a></li>
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					              <li class="dropdown globaltoc-container">
 | 
				
			||||||
 | 
					  <a role="button"
 | 
				
			||||||
 | 
					     id="dLabelGlobalToc"
 | 
				
			||||||
 | 
					     data-toggle="dropdown"
 | 
				
			||||||
 | 
					     data-target="#"
 | 
				
			||||||
 | 
					     href="../index.html">Docs <b class="caret"></b></a>
 | 
				
			||||||
 | 
					  <ul class="dropdown-menu globaltoc"
 | 
				
			||||||
 | 
					      role="menu"
 | 
				
			||||||
 | 
					      aria-labelledby="dLabelGlobalToc"><ul class="current">
 | 
				
			||||||
 | 
					<li class="toctree-l1"><a class="reference internal" href="../installation.html">Installation</a></li>
 | 
				
			||||||
 | 
					<li class="toctree-l1"><a class="reference internal" href="../features.html">Features</a></li>
 | 
				
			||||||
 | 
					<li class="toctree-l1 current"><a class="reference internal" href="index.html">API documentation</a></li>
 | 
				
			||||||
 | 
					<li class="toctree-l1"><a class="reference internal" href="../troubleshooting/index.html">Troubleshooting</a></li>
 | 
				
			||||||
 | 
					<li class="toctree-l1"><a class="reference internal" href="../changelog.html">Change log</a></li>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</li>
 | 
				
			||||||
 | 
					              
 | 
				
			||||||
 | 
					                <li class="dropdown">
 | 
				
			||||||
 | 
					  <a role="button"
 | 
				
			||||||
 | 
					     id="dLabelLocalToc"
 | 
				
			||||||
 | 
					     data-toggle="dropdown"
 | 
				
			||||||
 | 
					     data-target="#"
 | 
				
			||||||
 | 
					     href="#">Page <b class="caret"></b></a>
 | 
				
			||||||
 | 
					  <ul class="dropdown-menu localtoc"
 | 
				
			||||||
 | 
					      role="menu"
 | 
				
			||||||
 | 
					      aria-labelledby="dLabelLocalToc"><ul>
 | 
				
			||||||
 | 
					<li><a class="reference internal" href="#">Configuration</a></li>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</li>
 | 
				
			||||||
 | 
					              
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					              
 | 
				
			||||||
 | 
					                
 | 
				
			||||||
 | 
					  <li>
 | 
				
			||||||
 | 
					    <a href="auth.html" title="Previous Chapter: Authentication"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">« Authentication</span>
 | 
				
			||||||
 | 
					    </a>
 | 
				
			||||||
 | 
					  </li>
 | 
				
			||||||
 | 
					  <li>
 | 
				
			||||||
 | 
					    <a href="records.html" title="Next Chapter: Records"><span class="glyphicon glyphicon-chevron-right visible-sm"></span><span class="hidden-sm hidden-tablet">Records »</span>
 | 
				
			||||||
 | 
					    </a>
 | 
				
			||||||
 | 
					  </li>
 | 
				
			||||||
 | 
					              
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					              <li class="hidden-sm">
 | 
				
			||||||
 | 
					<div id="sourcelink">
 | 
				
			||||||
 | 
					  <a href="../_sources/api/configuration.rst.txt"
 | 
				
			||||||
 | 
					     rel="nofollow">Source</a>
 | 
				
			||||||
 | 
					</div></li>
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					          </ul>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					<form class="navbar-form navbar-right" action="../search.html" method="get">
 | 
				
			||||||
 | 
					 <div class="form-group">
 | 
				
			||||||
 | 
					  <input type="text" name="q" class="form-control" placeholder="Search" />
 | 
				
			||||||
 | 
					 </div>
 | 
				
			||||||
 | 
					  <input type="hidden" name="check_keywords" value="yes" />
 | 
				
			||||||
 | 
					  <input type="hidden" name="area" value="default" />
 | 
				
			||||||
 | 
					</form>
 | 
				
			||||||
 | 
					          
 | 
				
			||||||
 | 
					        </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<div class="container">
 | 
				
			||||||
 | 
					  <div class="row">
 | 
				
			||||||
 | 
					    <div class="body col-md-12 content" role="main">
 | 
				
			||||||
 | 
					      
 | 
				
			||||||
 | 
					  <div class="section" id="configuration">
 | 
				
			||||||
 | 
					<h1>Configuration<a class="headerlink" href="#configuration" title="Permalink to this headline">¶</a></h1>
 | 
				
			||||||
 | 
					<dl class="get">
 | 
				
			||||||
 | 
					<dt id="get--api-config">
 | 
				
			||||||
 | 
					<code class="sig-name descname">GET </code><code class="sig-name descname">/api/config</code><a class="headerlink" href="#get--api-config" title="Permalink to this definition">¶</a></dt>
 | 
				
			||||||
 | 
					<dd><p>Get Application config</p>
 | 
				
			||||||
 | 
					<p><strong>Example request</strong>:</p>
 | 
				
			||||||
 | 
					<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">GET</span> <span class="nn">/api/config</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
 | 
				
			||||||
 | 
					<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
 | 
				
			||||||
 | 
					</pre></div>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					<p><strong>Example response</strong>:</p>
 | 
				
			||||||
 | 
					<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
 | 
				
			||||||
 | 
					<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<span class="p">{</span>
 | 
				
			||||||
 | 
					  <span class="nt">"data"</span><span class="p">:</span> <span class="p">{</span>
 | 
				
			||||||
 | 
					    <span class="nt">"gpx_limit_import"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"is_registration_enabled"</span><span class="p">:</span> <span class="kc">false</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"max_single_file_size"</span><span class="p">:</span> <span class="mi">1048576</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"max_zip_file_size"</span><span class="p">:</span> <span class="mi">10485760</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"max_users"</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"registration"</span><span class="p">:</span> <span class="kc">false</span>
 | 
				
			||||||
 | 
					  <span class="p">},</span>
 | 
				
			||||||
 | 
					  <span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
 | 
				
			||||||
 | 
					<span class="p">}</span>
 | 
				
			||||||
 | 
					</pre></div>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					<dl class="field-list simple">
 | 
				
			||||||
 | 
					<dt class="field-odd">Status Codes</dt>
 | 
				
			||||||
 | 
					<dd class="field-odd"><ul class="simple">
 | 
				
			||||||
 | 
					<li><p><a class="reference external" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a> – success</p></li>
 | 
				
			||||||
 | 
					<li><p><a class="reference external" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a> – Error on getting configuration.</p></li>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</dd>
 | 
				
			||||||
 | 
					</dl>
 | 
				
			||||||
 | 
					</dd></dl>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<dl class="patch">
 | 
				
			||||||
 | 
					<dt id="patch--api-config">
 | 
				
			||||||
 | 
					<code class="sig-name descname">PATCH </code><code class="sig-name descname">/api/config</code><a class="headerlink" href="#patch--api-config" title="Permalink to this definition">¶</a></dt>
 | 
				
			||||||
 | 
					<dd><p>Update Application config</p>
 | 
				
			||||||
 | 
					<p>Authenticated user must be an admin</p>
 | 
				
			||||||
 | 
					<p><strong>Example request</strong>:</p>
 | 
				
			||||||
 | 
					<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="nf">GET</span> <span class="nn">/api/config</span> <span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span>
 | 
				
			||||||
 | 
					<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
 | 
				
			||||||
 | 
					</pre></div>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					<p><strong>Example response</strong>:</p>
 | 
				
			||||||
 | 
					<div class="highlight-http notranslate"><div class="highlight"><pre><span></span><span class="kr">HTTP</span><span class="o">/</span><span class="m">1.1</span> <span class="m">200</span> <span class="ne">OK</span>
 | 
				
			||||||
 | 
					<span class="na">Content-Type</span><span class="o">:</span> <span class="l">application/json</span>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<span class="p">{</span>
 | 
				
			||||||
 | 
					  <span class="nt">"data"</span><span class="p">:</span> <span class="p">{</span>
 | 
				
			||||||
 | 
					    <span class="nt">"gpx_limit_import"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"is_registration_enabled"</span><span class="p">:</span> <span class="kc">true</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"max_single_file_size"</span><span class="p">:</span> <span class="mi">1048576</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"max_zip_file_size"</span><span class="p">:</span> <span class="mi">10485760</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"max_users"</span><span class="p">:</span> <span class="mi">10</span><span class="p">,</span>
 | 
				
			||||||
 | 
					    <span class="nt">"registration"</span><span class="p">:</span> <span class="kc">true</span>
 | 
				
			||||||
 | 
					  <span class="p">},</span>
 | 
				
			||||||
 | 
					  <span class="nt">"status"</span><span class="p">:</span> <span class="s2">"success"</span>
 | 
				
			||||||
 | 
					<span class="p">}</span>
 | 
				
			||||||
 | 
					</pre></div>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					<dl class="field-list simple">
 | 
				
			||||||
 | 
					<dt class="field-odd">Parameters</dt>
 | 
				
			||||||
 | 
					<dd class="field-odd"><ul class="simple">
 | 
				
			||||||
 | 
					<li><p><strong>auth_user_id</strong> (<em>integer</em>) – authenticate user id (from JSON Web Token)</p></li>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</dd>
 | 
				
			||||||
 | 
					<dt class="field-even">Request JSON Object</dt>
 | 
				
			||||||
 | 
					<dd class="field-even"><ul class="simple">
 | 
				
			||||||
 | 
					<li><p><strong>gpx_limit_import</strong> (<em>integrer</em>) – max number of files in zip archive</p></li>
 | 
				
			||||||
 | 
					<li><p><strong>max_single_file_size</strong> (<em>integrer</em>) – max size of a single file</p></li>
 | 
				
			||||||
 | 
					<li><p><strong>max_zip_file_size</strong> (<em>integrer</em>) – max size of a zip archive</p></li>
 | 
				
			||||||
 | 
					<li><p><strong>max_users</strong> (<em>integrer</em>) – max users allowed to register on instance</p></li>
 | 
				
			||||||
 | 
					<li><p><strong>registration</strong> (<em>boolean</em>) – is registration enabled ?</p></li>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</dd>
 | 
				
			||||||
 | 
					<dt class="field-odd">Request Headers</dt>
 | 
				
			||||||
 | 
					<dd class="field-odd"><ul class="simple">
 | 
				
			||||||
 | 
					<li><p><a class="reference external" href="https://tools.ietf.org/html/rfc7235#section-4.2">Authorization</a> – OAuth 2.0 Bearer Token</p></li>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</dd>
 | 
				
			||||||
 | 
					<dt class="field-even">Status Codes</dt>
 | 
				
			||||||
 | 
					<dd class="field-even"><ul class="simple">
 | 
				
			||||||
 | 
					<li><p><a class="reference external" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1">200 OK</a> – success</p></li>
 | 
				
			||||||
 | 
					<li><p><a class="reference external" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1">400 Bad Request</a> – invalid payload</p></li>
 | 
				
			||||||
 | 
					<li><p><a class="reference external" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2">401 Unauthorized</a> – <ul>
 | 
				
			||||||
 | 
					<li><p>Provide a valid auth token.</p></li>
 | 
				
			||||||
 | 
					<li><p>Signature expired. Please log in again.</p></li>
 | 
				
			||||||
 | 
					<li><p>Invalid token. Please log in again.</p></li>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</p></li>
 | 
				
			||||||
 | 
					<li><p><a class="reference external" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4">403 Forbidden</a> – You do not have permissions.</p></li>
 | 
				
			||||||
 | 
					<li><p><a class="reference external" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1">500 Internal Server Error</a> – Error on updating configuration.</p></li>
 | 
				
			||||||
 | 
					</ul>
 | 
				
			||||||
 | 
					</dd>
 | 
				
			||||||
 | 
					</dl>
 | 
				
			||||||
 | 
					</dd></dl>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
 | 
					      
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					<footer class="footer">
 | 
				
			||||||
 | 
					  <div class="container">
 | 
				
			||||||
 | 
					    <p class="pull-right">
 | 
				
			||||||
 | 
					      <a href="#">Back to top</a>
 | 
				
			||||||
 | 
					      
 | 
				
			||||||
 | 
					    </p>
 | 
				
			||||||
 | 
					    <p>
 | 
				
			||||||
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
 | 
					    </p>
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					</footer>
 | 
				
			||||||
 | 
					  </body>
 | 
				
			||||||
 | 
					</html>
 | 
				
			||||||
@@ -130,6 +130,7 @@
 | 
				
			|||||||
<ul>
 | 
					<ul>
 | 
				
			||||||
<li class="toctree-l1"><a class="reference internal" href="activities.html">Activities</a></li>
 | 
					<li class="toctree-l1"><a class="reference internal" href="activities.html">Activities</a></li>
 | 
				
			||||||
<li class="toctree-l1"><a class="reference internal" href="auth.html">Authentication</a></li>
 | 
					<li class="toctree-l1"><a class="reference internal" href="auth.html">Authentication</a></li>
 | 
				
			||||||
 | 
					<li class="toctree-l1"><a class="reference internal" href="configuration.html">Configuration</a></li>
 | 
				
			||||||
<li class="toctree-l1"><a class="reference internal" href="records.html">Records</a></li>
 | 
					<li class="toctree-l1"><a class="reference internal" href="records.html">Records</a></li>
 | 
				
			||||||
<li class="toctree-l1"><a class="reference internal" href="sports.html">Sports</a></li>
 | 
					<li class="toctree-l1"><a class="reference internal" href="sports.html">Sports</a></li>
 | 
				
			||||||
<li class="toctree-l1"><a class="reference internal" href="stats.html">Statistics</a></li>
 | 
					<li class="toctree-l1"><a class="reference internal" href="stats.html">Statistics</a></li>
 | 
				
			||||||
@@ -151,7 +152,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -16,7 +16,7 @@
 | 
				
			|||||||
    <link rel="index" title="Index" href="../genindex.html" />
 | 
					    <link rel="index" title="Index" href="../genindex.html" />
 | 
				
			||||||
    <link rel="search" title="Search" href="../search.html" />
 | 
					    <link rel="search" title="Search" href="../search.html" />
 | 
				
			||||||
    <link rel="next" title="Sports" href="sports.html" />
 | 
					    <link rel="next" title="Sports" href="sports.html" />
 | 
				
			||||||
    <link rel="prev" title="Authentication" href="auth.html" />
 | 
					    <link rel="prev" title="Configuration" href="configuration.html" />
 | 
				
			||||||
<meta charset='utf-8'>
 | 
					<meta charset='utf-8'>
 | 
				
			||||||
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
 | 
					<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
 | 
				
			||||||
<meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1'>
 | 
					<meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1'>
 | 
				
			||||||
@@ -85,7 +85,7 @@
 | 
				
			|||||||
              
 | 
					              
 | 
				
			||||||
                
 | 
					                
 | 
				
			||||||
  <li>
 | 
					  <li>
 | 
				
			||||||
    <a href="auth.html" title="Previous Chapter: Authentication"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">« Authentication</span>
 | 
					    <a href="configuration.html" title="Previous Chapter: Configuration"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">« Configuration</span>
 | 
				
			||||||
    </a>
 | 
					    </a>
 | 
				
			||||||
  </li>
 | 
					  </li>
 | 
				
			||||||
  <li>
 | 
					  <li>
 | 
				
			||||||
@@ -249,7 +249,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -459,7 +459,7 @@ Authenticated user must be an admin</p>
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -396,7 +396,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -361,7 +361,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -316,7 +316,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -223,7 +223,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -127,7 +127,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -169,6 +169,11 @@
 | 
				
			|||||||
       <td>
 | 
					       <td>
 | 
				
			||||||
       <a href="api/auth.html#get--api-auth-profile"><code class="xref">GET /api/auth/profile</code></a></td><td>
 | 
					       <a href="api/auth.html#get--api-auth-profile"><code class="xref">GET /api/auth/profile</code></a></td><td>
 | 
				
			||||||
       <em></em></td></tr>
 | 
					       <em></em></td></tr>
 | 
				
			||||||
 | 
					     <tr>
 | 
				
			||||||
 | 
					       <td></td>
 | 
				
			||||||
 | 
					       <td>
 | 
				
			||||||
 | 
					       <a href="api/configuration.html#get--api-config"><code class="xref">GET /api/config</code></a></td><td>
 | 
				
			||||||
 | 
					       <em></em></td></tr>
 | 
				
			||||||
     <tr>
 | 
					     <tr>
 | 
				
			||||||
       <td></td>
 | 
					       <td></td>
 | 
				
			||||||
       <td>
 | 
					       <td>
 | 
				
			||||||
@@ -264,6 +269,11 @@
 | 
				
			|||||||
       <td>
 | 
					       <td>
 | 
				
			||||||
       <a href="api/activities.html#patch--api-activities-(int-activity_id)"><code class="xref">PATCH /api/activities/(int:activity_id)</code></a></td><td>
 | 
					       <a href="api/activities.html#patch--api-activities-(int-activity_id)"><code class="xref">PATCH /api/activities/(int:activity_id)</code></a></td><td>
 | 
				
			||||||
       <em></em></td></tr>
 | 
					       <em></em></td></tr>
 | 
				
			||||||
 | 
					     <tr>
 | 
				
			||||||
 | 
					       <td></td>
 | 
				
			||||||
 | 
					       <td>
 | 
				
			||||||
 | 
					       <a href="api/configuration.html#patch--api-config"><code class="xref">PATCH /api/config</code></a></td><td>
 | 
				
			||||||
 | 
					       <em></em></td></tr>
 | 
				
			||||||
     <tr>
 | 
					     <tr>
 | 
				
			||||||
       <td></td>
 | 
					       <td></td>
 | 
				
			||||||
       <td>
 | 
					       <td>
 | 
				
			||||||
@@ -284,7 +294,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -168,6 +168,7 @@ Map</a>.</div>
 | 
				
			|||||||
<li class="toctree-l1"><a class="reference internal" href="api/index.html">API documentation</a><ul>
 | 
					<li class="toctree-l1"><a class="reference internal" href="api/index.html">API documentation</a><ul>
 | 
				
			||||||
<li class="toctree-l2"><a class="reference internal" href="api/activities.html">Activities</a></li>
 | 
					<li class="toctree-l2"><a class="reference internal" href="api/activities.html">Activities</a></li>
 | 
				
			||||||
<li class="toctree-l2"><a class="reference internal" href="api/auth.html">Authentication</a></li>
 | 
					<li class="toctree-l2"><a class="reference internal" href="api/auth.html">Authentication</a></li>
 | 
				
			||||||
 | 
					<li class="toctree-l2"><a class="reference internal" href="api/configuration.html">Configuration</a></li>
 | 
				
			||||||
<li class="toctree-l2"><a class="reference internal" href="api/records.html">Records</a></li>
 | 
					<li class="toctree-l2"><a class="reference internal" href="api/records.html">Records</a></li>
 | 
				
			||||||
<li class="toctree-l2"><a class="reference internal" href="api/sports.html">Sports</a></li>
 | 
					<li class="toctree-l2"><a class="reference internal" href="api/sports.html">Sports</a></li>
 | 
				
			||||||
<li class="toctree-l2"><a class="reference internal" href="api/stats.html">Statistics</a></li>
 | 
					<li class="toctree-l2"><a class="reference internal" href="api/stats.html">Statistics</a></li>
 | 
				
			||||||
@@ -204,7 +205,7 @@ Map</a>.</div>
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -363,7 +363,7 @@ $ make upgrade-db
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										
											BIN
										
									
								
								docs/objects.inv
									
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								docs/objects.inv
									
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							@@ -147,7 +147,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							@@ -148,7 +148,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -150,7 +150,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -141,7 +141,7 @@
 | 
				
			|||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
    <p>
 | 
					    <p>
 | 
				
			||||||
        © Copyright 2018 - 2019, SamR1.<br/>
 | 
					        © Copyright 2018 - 2019, SamR1.<br/>
 | 
				
			||||||
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.0.<br/>
 | 
					      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.2.1.<br/>
 | 
				
			||||||
    </p>
 | 
					    </p>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</footer>
 | 
					</footer>
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										7
									
								
								docsrc/source/api/configuration.rst
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								docsrc/source/api/configuration.rst
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					Configuration
 | 
				
			||||||
 | 
					#############
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.. autoflask:: fittrackee_api:create_app()
 | 
				
			||||||
 | 
					   :endpoints:
 | 
				
			||||||
 | 
					    config.get_application_config,
 | 
				
			||||||
 | 
					    config.update_application_config
 | 
				
			||||||
@@ -7,6 +7,7 @@ API documentation
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
   activities
 | 
					   activities
 | 
				
			||||||
   auth
 | 
					   auth
 | 
				
			||||||
 | 
					   configuration
 | 
				
			||||||
   records
 | 
					   records
 | 
				
			||||||
   sports
 | 
					   sports
 | 
				
			||||||
   stats
 | 
					   stats
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -45,7 +45,7 @@ def create_app():
 | 
				
			|||||||
    from .activities.records import records_blueprint  # noqa
 | 
					    from .activities.records import records_blueprint  # noqa
 | 
				
			||||||
    from .activities.sports import sports_blueprint  # noqa
 | 
					    from .activities.sports import sports_blueprint  # noqa
 | 
				
			||||||
    from .activities.stats import stats_blueprint  # noqa
 | 
					    from .activities.stats import stats_blueprint  # noqa
 | 
				
			||||||
    from .application.config import config_blueprint  # noqa
 | 
					    from .application.app_config import config_blueprint  # noqa
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    app.register_blueprint(users_blueprint, url_prefix='/api')
 | 
					    app.register_blueprint(users_blueprint, url_prefix='/api')
 | 
				
			||||||
    app.register_blueprint(auth_blueprint, url_prefix='/api')
 | 
					    app.register_blueprint(auth_blueprint, url_prefix='/api')
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -36,13 +36,22 @@ def app_config_registration_disabled():
 | 
				
			|||||||
    return config
 | 
					    return config
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@pytest.fixture
 | 
					def get_app_config(app_type):
 | 
				
			||||||
def app():
 | 
					    if app_type == 'with_registration':
 | 
				
			||||||
 | 
					        return app_config_with_registration()
 | 
				
			||||||
 | 
					    elif app_type == 'no_registration':
 | 
				
			||||||
 | 
					        return app_config_registration_disabled()
 | 
				
			||||||
 | 
					    else:
 | 
				
			||||||
 | 
					        return None
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					def get_app(app_type=None):
 | 
				
			||||||
    app = create_app()
 | 
					    app = create_app()
 | 
				
			||||||
    with app.app_context():
 | 
					    with app.app_context():
 | 
				
			||||||
        db.create_all()
 | 
					        db.create_all()
 | 
				
			||||||
        app_db_config = app_config_with_registration()
 | 
					        app_db_config = get_app_config(app_type)
 | 
				
			||||||
        update_app_config_from_database(app, app_db_config)
 | 
					        if app_db_config:
 | 
				
			||||||
 | 
					            update_app_config_from_database(app, app_db_config)
 | 
				
			||||||
        yield app
 | 
					        yield app
 | 
				
			||||||
        db.session.remove()
 | 
					        db.session.remove()
 | 
				
			||||||
        db.drop_all()
 | 
					        db.drop_all()
 | 
				
			||||||
@@ -53,33 +62,19 @@ def app():
 | 
				
			|||||||
        return app
 | 
					        return app
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@pytest.fixture
 | 
				
			||||||
 | 
					def app():
 | 
				
			||||||
 | 
					    yield from get_app('with_registration')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@pytest.fixture
 | 
					@pytest.fixture
 | 
				
			||||||
def app_no_config():
 | 
					def app_no_config():
 | 
				
			||||||
    app = create_app()
 | 
					    yield from get_app()
 | 
				
			||||||
    with app.app_context():
 | 
					 | 
				
			||||||
        db.create_all()
 | 
					 | 
				
			||||||
        yield app
 | 
					 | 
				
			||||||
        db.session.remove()
 | 
					 | 
				
			||||||
        db.drop_all()
 | 
					 | 
				
			||||||
        # close unused idle connections => avoid the following error:
 | 
					 | 
				
			||||||
        # FATAL: remaining connection slots are reserved for non-replication
 | 
					 | 
				
			||||||
        # superuser connections
 | 
					 | 
				
			||||||
        db.engine.dispose()
 | 
					 | 
				
			||||||
        return app
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@pytest.fixture
 | 
					@pytest.fixture
 | 
				
			||||||
def app_no_registration():
 | 
					def app_no_registration():
 | 
				
			||||||
    app = create_app()
 | 
					    yield from get_app('no_registration')
 | 
				
			||||||
    with app.app_context():
 | 
					 | 
				
			||||||
        db.create_all()
 | 
					 | 
				
			||||||
        app_db_config = app_config_registration_disabled()
 | 
					 | 
				
			||||||
        update_app_config_from_database(app, app_db_config)
 | 
					 | 
				
			||||||
        yield app
 | 
					 | 
				
			||||||
        db.session.remove()
 | 
					 | 
				
			||||||
        db.drop_all()
 | 
					 | 
				
			||||||
        db.engine.dispose()
 | 
					 | 
				
			||||||
    return app
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@pytest.fixture()
 | 
					@pytest.fixture()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -50,9 +50,7 @@ def test_get_config_no_config(app_no_config, user_1_admin):
 | 
				
			|||||||
    assert 'Error on getting configuration.' in data['message']
 | 
					    assert 'Error on getting configuration.' in data['message']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def test_get_config_several_config(
 | 
					def test_get_config_several_config(app, app_config, user_1_admin):
 | 
				
			||||||
    app, app_config, user_1_admin
 | 
					 | 
				
			||||||
):
 | 
					 | 
				
			||||||
    client = app.test_client()
 | 
					    client = app.test_client()
 | 
				
			||||||
    resp_login = client.post(
 | 
					    resp_login = client.post(
 | 
				
			||||||
        '/api/auth/login',
 | 
					        '/api/auth/login',
 | 
				
			||||||
@@ -84,9 +82,7 @@ def test_update_config_as_admin(app, user_1_admin):
 | 
				
			|||||||
    response = client.patch(
 | 
					    response = client.patch(
 | 
				
			||||||
        '/api/config',
 | 
					        '/api/config',
 | 
				
			||||||
        content_type='application/json',
 | 
					        content_type='application/json',
 | 
				
			||||||
        data=json.dumps(
 | 
					        data=json.dumps(dict(registration=True, max_users=10)),
 | 
				
			||||||
            dict(registration=True, max_users=10)
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
        headers=dict(
 | 
					        headers=dict(
 | 
				
			||||||
            Authorization='Bearer '
 | 
					            Authorization='Bearer '
 | 
				
			||||||
            + json.loads(resp_login.data.decode())['auth_token']
 | 
					            + json.loads(resp_login.data.decode())['auth_token']
 | 
				
			||||||
@@ -150,9 +146,7 @@ def test_update_config_not_admin(app, user_1):
 | 
				
			|||||||
    response = client.patch(
 | 
					    response = client.patch(
 | 
				
			||||||
        '/api/config',
 | 
					        '/api/config',
 | 
				
			||||||
        content_type='application/json',
 | 
					        content_type='application/json',
 | 
				
			||||||
        data=json.dumps(
 | 
					        data=json.dumps(dict(registration=True, max_users=10)),
 | 
				
			||||||
            dict(registration=True, max_users=10)
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
        headers=dict(
 | 
					        headers=dict(
 | 
				
			||||||
            Authorization='Bearer '
 | 
					            Authorization='Bearer '
 | 
				
			||||||
            + json.loads(resp_login.data.decode())['auth_token']
 | 
					            + json.loads(resp_login.data.decode())['auth_token']
 | 
				
			||||||
@@ -199,9 +193,7 @@ def test_update_config_no_config(app_no_config, user_1_admin):
 | 
				
			|||||||
    response = client.patch(
 | 
					    response = client.patch(
 | 
				
			||||||
        '/api/config',
 | 
					        '/api/config',
 | 
				
			||||||
        content_type='application/json',
 | 
					        content_type='application/json',
 | 
				
			||||||
        data=json.dumps(
 | 
					        data=json.dumps(dict(registration=True, max_users=10)),
 | 
				
			||||||
            dict(registration=True, max_users=10)
 | 
					 | 
				
			||||||
        ),
 | 
					 | 
				
			||||||
        headers=dict(
 | 
					        headers=dict(
 | 
				
			||||||
            Authorization='Bearer '
 | 
					            Authorization='Bearer '
 | 
				
			||||||
            + json.loads(resp_login.data.decode())['auth_token']
 | 
					            + json.loads(resp_login.data.decode())['auth_token']
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
"""empty message
 | 
					"""add application config in database
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Revision ID: 8a0aad4c838c
 | 
					Revision ID: 8a0aad4c838c
 | 
				
			||||||
Revises: 1345afe3b11d
 | 
					Revises: 1345afe3b11d
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user