def get_link_dir(links_dir, link_name, var_name='', default_val='', throw_exception=False): link = op.join(links_dir, link_name) # check if this is a windows folder shortcup if op.isfile('{}.lnk'.format(link)): from src.mmvt_addon.scripts import windows_utils as wu sc = wu.MSShortcut('{}.lnk'.format(link)) return op.join(sc.localBasePath, sc.commonPathSuffix) # return read_windows_dir_shortcut('{}.lnk'.format(val)) ret = op.realpath(link) if not op.isdir(ret) and default_val != '': ret = default_val if not op.isdir(ret): ret = os.environ.get(var_name, '') if not op.isdir(ret): ret = get_link_dir_from_csv(links_dir, link_name) if ret == '': if throw_exception: raise Exception('No {} dir!'.format(link_name)) else: print('No {} dir!'.format(link_name)) return ret
def get_link_dir(links_dir, link_name, var_name='', default_val='', throw_exception=False): link = op.join(links_dir, link_name) # check if this is a windows folder shortcup if op.isfile('{}.lnk'.format(link)): # try: # from src.mmvt_addon.scripts import windows_utils as wu # except: # os.chdir(op.join(get_code_root_dir(), 'src', 'mmvt_addon', 'scripts')) # from . import windows_utils as wu import importlib add_fol_to_path(get_current_fol()) import windows_utils as wu importlib.reload(wu) sc = wu.MSShortcut('{}.lnk'.format(link)) return op.join(sc.localBasePath, sc.commonPathSuffix) # return read_windows_dir_shortcut('{}.lnk'.format(val)) ret = op.realpath(link) if not op.isdir(ret) and default_val != '': ret = default_val if not op.isdir(ret): ret = os.environ.get(var_name, '') if not op.isdir(ret): ret = get_link_dir_from_csv(links_dir, link_name) if ret == '': if throw_exception: raise Exception('No {} dir!'.format(link_name)) else: print('No {} dir!'.format(link_name)) return ret
def get_windows_link(shortcut): try: from src.mmvt_addon.scripts import windows_utils as wu except: sys.path.append(op.split(__file__)[0]) import windows_utils as wu sc = wu.MSShortcut('{}.lnk'.format(shortcut)) return op.join(sc.localBasePath, sc.commonPathSuffix)
def is_link(link_path): if is_windows(): link_fname = link_path if link_path[-4:] == '.lnk' else '{}.lnk'.format(link_path) if not op.isfile(link_fname): return False try: from src.mmvt_addon.scripts import windows_utils as wu sc = wu.MSShortcut(link_fname) real_folder_path = op.join(sc.localBasePath, sc.commonPathSuffix) return op.isdir(real_folder_path) except: # print(traceback.format_exc()) return False else: return op.islink(link_path)
def get_link_dir(links_dir, link_name, var_name='', default_val='', throw_exception=False): link = op.join(links_dir, link_name) # check if this is a windows folder shortcup if op.isfile('{}.lnk'.format(link)): try: import importlib add_fol_to_path(get_current_fol()) import windows_utils as wu importlib.reload(wu) sc = wu.MSShortcut('{}.lnk'.format(link)) return op.join(sc.localBasePath, sc.commonPathSuffix) except: print( 'Something is wrong with the windows links, trying to read the links.csv' ) ret = get_link_dir_from_csv(links_dir, link_name) if ret == '': if throw_exception: raise Exception('No {} dir!'.format(link_name)) else: print('No {} dir!'.format(link_name)) # return read_windows_dir_shortcut('{}.lnk'.format(val)) ret = op.realpath(link) # Ugly patch!!!! todo: Fix that!!!! ret = ret.replace('local_mount', 'autofs').replace('thibault/1', 'thibault_001') if not op.isdir(ret) and default_val != '': ret = default_val if not op.isdir(ret): ret = os.environ.get(var_name, '') if not op.isdir(ret): ret = get_link_dir_from_csv(links_dir, link_name) if ret == '': if throw_exception: raise Exception('No {} dir!'.format(link_name)) else: print('No {} dir!'.format(link_name)) return ret