Review: Needs Fixing See below
Diff comments: > > === modified file 'openlp/core/lib/__init__.py' > --- openlp/core/lib/__init__.py 2016-08-12 19:16:12 +0000 > +++ openlp/core/lib/__init__.py 2016-10-17 04:44:46 +0000 > @@ -310,30 +310,23 @@ > > def create_separated_list(string_list): > """ > - Returns a string that represents a join of a list of strings with a > localized separator. This function corresponds > - > - to QLocale::createSeparatedList which was introduced in Qt 4.8 and > implements the algorithm from > - http://www.unicode.org/reports/tr35/#ListPatterns > - > - :param string_list: List of unicode strings > + Returns a string that represents a join of a list of strings with a > localized separator. > + Localized separation will be done via the translate() function by the > translators. > + > + :param string_list: List of unicode strings > + :return: Formatted string > """ > - if LooseVersion(Qt.PYQT_VERSION_STR) >= LooseVersion('4.9') and > LooseVersion(Qt.qVersion()) >= LooseVersion('4.8'): > - return QtCore.QLocale().createSeparatedList(string_list) > - if not string_list: > - return '' > - elif len(string_list) == 1: > - return string_list[0] > - # TODO: Verify mocking of translate() test before conversion > - elif len(string_list) == 2: > - return translate('OpenLP.core.lib', '%s and %s', > - 'Locale list separator: 2 items') % > (string_list[0], string_list[1]) > + list_length = len(string_list) > + if list_length == 1: > + return_list = string_list[0] return_list implies the field is a list when it is a string. > + elif list_length == 2: > + return_list = translate('OpenLP.core.lib', '{one} and > {two}').format(one=string_list[0], two=string_list[1]) should we not just translate "and" once and then build the strings as there is a high chance of the {} getting lost. > + elif list_length > 2: > + return_list = translate('OpenLP.core.lib', '{first}, and > {last}').format(first=', '.join(string_list[:-1]), > + > last=string_list[-1]) > else: > - merged = translate('OpenLP.core.lib', '%s, and %s', > - 'Locale list separator: end') % (string_list[-2], > string_list[-1]) > - for index in reversed(list(range(1, len(string_list) - 2))): > - merged = translate('OpenLP.core.lib', '%s, %s', > - 'Locale list separator: middle') % > (string_list[index], merged) > - return translate('OpenLP.core.lib', '%s, %s', 'Locale list > separator: start') % (string_list[0], merged) > + return_list = "" Should be '' > + return return_list > > > from .exceptions import ValidationError -- https://code.launchpad.net/~suutari-olli/openlp/bug-fixes-2-4-3/+merge/308596 Your team OpenLP Core is subscribed to branch lp:openlp. _______________________________________________ Mailing list: https://launchpad.net/~openlp-core Post to : [email protected] Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp

