def get_workspace_info(toyz_settings, tid, params): """ Get I/O settings for different packages (pure python, numpy, pandas, etc) and other settings for the current users workspaces """ import toyz.utils.io as io import toyz.utils.sources as sources module_info = core.get_module_info(toyz_settings, tid, params) load_src = io.build_gui(module_info, 'load') save_src = io.build_gui(module_info, 'save') response = { 'id': 'workspace_info', 'load_src_info': load_src, 'save_src_info': save_src, 'tiles': module_info['tiles'], 'import_error': module_info['import_errors'] } return response
def get_workspace_info(toyz_settings, tid, params): """ Get I/O settings for different packages (pure python, numpy, pandas, etc) and other settings for the current users workspaces """ import toyz.utils.io as io import toyz.utils.sources as sources src_types = sources.src_types.keys() data_types = sources.data_types image_types = sources.image_types toyz_modules = { 'toyz': dict(io.io_modules) } # Get workspace info from other Toyz modules tiles = {} import_error = {} modules = db_utils.get_param(toyz_settings.db, 'modules', user_id=tid['user_id']) for module in modules: try: print("importing", module+'.config') config = importlib.import_module(module+'.config') except ImportError: import_error[module] = 'could not import' + module+'.config' if hasattr(config, 'workspace_tiles'): tiles.update(config.workspace_tiles) if hasattr(config, 'data_types'): data_types += config.data_types if hasattr(config, 'image_types'): image_types += config.image_types if hasattr(config, 'io_modules'): toyz_modules.update({ module: config.io_modules }) if hasattr(config, 'src_types'): src_types += config.src_types.keys() load_src = io.build_gui(toyz_modules, 'load') load_src.update({ 'optional': { 'src_type': { 'lbl': 'Data Source Type', 'type': 'select', 'options': sorted(src_types), 'default_val': 'DataSource' }, 'data_type': { 'lbl': 'data type', 'type': 'select', 'options': sorted(data_types) }, 'image_type': { 'lbl': 'image_type', 'type': 'select', 'options': sorted(image_types) } } }) save_src = io.build_gui(toyz_modules, 'save') response = { 'id': 'workspace_info', 'load_src_info': load_src, 'save_src_info': save_src, 'tiles': tiles, 'import_error': import_error } return response