2012-02-28 11:24:53 +01:00
|
|
|
import hashlib
|
2012-02-27 17:54:14 +01:00
|
|
|
|
|
|
|
PLURAL_SEPARATOR = '\x00\x00'
|
|
|
|
|
|
|
|
def is_plural(s):
|
|
|
|
'''
|
|
|
|
Checks whether string is plural form.
|
|
|
|
'''
|
|
|
|
return s.find(PLURAL_SEPARATOR) != -1
|
|
|
|
|
|
|
|
def split_plural(s):
|
|
|
|
return s.split(PLURAL_SEPARATOR)
|
|
|
|
|
|
|
|
def join_plural(s):
|
|
|
|
return PLURAL_SEPARATOR.join(s)
|
|
|
|
|
2012-02-28 11:24:53 +01:00
|
|
|
def msg_checksum(source, context):
|
|
|
|
'''
|
|
|
|
Returns checksum of source string, used for quick lookup.
|
|
|
|
|
|
|
|
We use MD5 as it is faster than SHA1.
|
|
|
|
'''
|
|
|
|
m = hashlib.md5()
|
2012-03-01 15:54:44 +01:00
|
|
|
m.update(source.encode('utf-8'))
|
|
|
|
m.update(context.encode('utf-8'))
|
2012-02-28 11:24:53 +01:00
|
|
|
return m.hexdigest()
|
|
|
|
|