ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ#!/opt/cloudlinux/venv/bin/python3 -bb # coding: utf-8 # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT # """ This module serves as a collection of functions needed by various cloudlinux-* utilities. It should not include any functions specific to a one single utility as to not pollute it with unnecessary imports. """ import json VALUES_STR = 'Available values for option' def replace_params(data: str) -> dict: """ Replacing params in a data string to display an error message for humans. :param data: error's data for show message :return: a dictionary suitable for UI """ if data.startswith("--"): param, text = data.split(" ", 1) return {"result": "%%(param)s " + text, "context": {"param": param}} if data.startswith(VALUES_STR): text, param = data.split(":", 1) return {"result": text + ": %%(available_options)s", "context": {"available_options": param.strip()}} return {"result": data} def print_dictionary(data_dict, is_json: bool = False, is_pretty: bool = False): """ Print specified dictionary :param data_dict: data dictionary to print :param is_json: True - print in JSON, False - in text :param is_pretty: True - pretty json print, False - none (default) :return: None """ if is_json: # Print as JSON if is_pretty: print(json.dumps(data_dict, indent=4, sort_keys=True)) else: print(json.dumps(data_dict, sort_keys=True)) else: # Print as text print(data_dict)