def get_permission_screen_url(user_state): return ( 'https://fitbit.com/oauth2/authorize' '?response_type=code&client_id={client_id}&scope={scope}&prompt=login&state={state}' ).format(client_id=get_current_config().FITBIT_CLIENT_ID, scope='%20'.join(SCOPES), state=user_state)
def get(service, controller, action, params): current_configs = config.get_current_config() base_url = current_configs.REMOTE_SERVICES[service] base_url += controller base_url += '/' + action header = {'Authorization': 'Bearer ' + get_access_token()} response = requests.get(base_url, params=params, headers=header) return json.loads(response.text)
def fitbit_client(fitbit_credentials): config = get_current_config() client = fitbit.Fitbit(config.FITBIT_CLIENT_ID, config.FITBIT_CLIENT_SECRET, access_token=fitbit_credentials.access_token, refresh_token=fitbit_credentials.refresh_token) yield client # Save in case we did some refreshes save_fitbit_token(fitbit_credentials.user_id, client.client.token['access_token'], client.client.token['refresh_token'])
def create_app(): app = Flask(__name__) app.config.from_object(get_current_config()) app.register_blueprint(router) @app.teardown_appcontext def close_connection(*_): db = getattr(g, '_database', None) if db: db.close() return app
def fitbit_client(fitbit_credentials): config = get_current_config() client = fitbit.Fitbit( config.FITBIT_CLIENT_ID, config.FITBIT_CLIENT_SECRET, access_token=fitbit_credentials.access_token, refresh_token=fitbit_credentials.refresh_token, expires_at=fitbit_credentials.expires_at, refresh_cb=lambda tokendict: save_fitbit_token( fitbit_credentials.user_id, # tokendict['access_token' ], # refresh_cb takes only a tokendict as a parameter tokendict['refresh_token' ], # so save_fitbit_token is rewritten as a lambda tokendict['expires_at']) # ) yield client
for i in range(1, len(res_df.columns) - 1): res_df['diff_FlowValve008_1492 - ' + str(res_df.columns[i + 1])] = res_df[ res_df.columns[1]] - res_df[res_df.columns[i + 1]] analysis_to_file(res_df, mp_ids, iter_num) threshold_diff(res_df, mp_ids, iter_num) def execute_data_analysis(mpid_var, start_period, end_period, granularity_level, iter_num): get_mp_data_data_analysis(start_period, end_period, mpid_var, granularity_level, iter_num) instance = data_analysis.instance.value config_oauth(config.get_current_config()) try: execute_data_analysis(data_analysis.measuringpoint_var.value, data_analysis.start_period.value, data_analysis.end_period.value, data_analysis.granularity.value, data_analysis.iteration_num.value) print( "end of program successful with file saved to DataAnalysis folder, inside project folder." ) except Exception as e: print(e)
def get_auth_url(code): return 'https://api.fitbit.com/oauth2/token?code={code}&client_id={client_id}&grant_type=authorization_code&expires_in=31536000'.format( code=code, client_id=get_current_config().FITBIT_CLIENT_ID)
def get_token(): config = get_current_config() return base64.b64encode("{}:{}".format( config.FITBIT_CLIENT_ID, config.FITBIT_CLIENT_SECRET).encode('utf-8')).decode('utf-8')
import sqlite3 from flask import g from config import get_current_config DATABASE = get_current_config().DATABASE_URI def init_db(app): # TODO: Implement migrations and possibly build db in Dockerfile with app.app_context(): db = get_db() with app.open_resource('schema.sql', mode='r') as f: db.cursor().executescript(f.read()) db.commit() def get_db(): db = getattr(g, '_database', None) if not db: db = g._database = sqlite3.connect(DATABASE, uri=True) # NOTE: By default, sqlite does not enforce foreign keys on # new connections # (http://www.sqlite.org/foreignkeys.html#fk_enable) # This is much easier than compiling a custom sqlite3 library db.execute('PRAGMA foreign_keys = ON') db.row_factory = sqlite3.Row return db
def _get_solr_url(): current_config = config.get_current_config() return urlparse.urlunparse(['http', '%s:%s' % (current_config['host'], current_config['port']), os.path.join('solr', current_config['core'], ''), '', '', ''])
import sys from app import create_app, db from config import get_current_config app = create_app(get_current_config()) def create_db(): db.init_app(app) db.create_all() if __name__ == '__main__': if len(sys.argv) > 1 and sys.argv[1] == 'createdb': create_db() else: app.run(host='0.0.0.0', port=8000)