'''Utilities for IPython/Jupyter notebooks and one-off experimental scripts. Usage example: from nbenv import * client = create_client(ais, get_login_params()) app = client._open_administracia_studia() ... More information: https://github.com/fmfi-svt/votr/wiki/Praca-s-ipythonom-(sk) ''' # Convenience imports. import aisikl.app import aisikl.portal from aisikl.app import Application, assert_ops from fladgejt.login import create_client from votrfront.default_settings import servers as default_servers # Servers. Choose one as the first argument of create_client(). ais = default_servers[0] ais_beta = default_servers[2] ais_test = default_servers[4] def get_login_params(): import getpass import json import os import tempfile filename = os.path.join( tempfile.gettempdir(), 'votrlogin-' + getpass.getuser()) if os.path.exists(filename): with open(filename) as f: return json.load(f) username = input('AIS username: ') password = getpass.getpass('AIS password: ') params = dict(type='cosignpassword', username=username, password=password) fd = os.open(filename, os.O_WRONLY | os.O_CREAT | os.O_EXCL, 0o600) with open(fd, 'w') as f: json.dump(params, f) return params