diff --git a/rhodecode/lib/__init__.py b/rhodecode/lib/__init__.py --- a/rhodecode/lib/__init__.py +++ b/rhodecode/lib/__init__.py @@ -23,20 +23,33 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -def str2bool(s): - if s is None: + +def str2bool(_str): + """ + returs True/False value from given string, it tries to translate the + string into boolean + + :param _str: string value to translate into boolean + :rtype: boolean + :returns: boolean from given string + """ + if _str is None: return False - if s in (True, False): - return s - s = str(s).strip().lower() - return s in ('t', 'true', 'y', 'yes', 'on', '1') + if _str in (True, False): + return _str + _str = str(_str).strip().lower() + return _str in ('t', 'true', 'y', 'yes', 'on', '1') + def generate_api_key(username, salt=None): """ - Generates uniq API key for given username + Generates unique API key for given username,if salt is not given + it'll be generated from some random string :param username: username as string :param salt: salt to hash generate KEY + :rtype: str + :returns: sha1 hash from username+salt """ from tempfile import _RandomNameSequence import hashlib @@ -46,11 +59,12 @@ def generate_api_key(username, salt=None return hashlib.sha1(username + salt).hexdigest() + def safe_unicode(_str, from_encoding='utf8'): """ safe unicode function. In case of UnicodeDecode error we try to return unicode with errors replace - + :param _str: string to decode :rtype: unicode :returns: unicode object