Code Duplication    Length = 9-10 lines in 10 locations

app/Functions/Functions.php 10 locations

@@ 1634-1642 (lines=9) @@
1631
				//
1632
				// Need to find out which languages use which rules.
1633
				switch (WT_LOCALE) {
1634
				case 'da':
1635
				switch ($sex2) {
1636
				case 'M':
1637
				return I18N::translate('great ×%s uncle', I18N::number($up - 4));
1638
				case 'F':
1639
				return I18N::translate('great ×%s aunt', I18N::number($up - 4));
1640
				default:
1641
				return I18N::translate('great ×%s aunt/uncle', I18N::number($up - 4));
1642
				}
1643
				case 'pl':
1644
					switch ($sex2) {
1645
					case 'M':
@@ 1662-1670 (lines=9) @@
1659
				case 'en_AU':
1660
				case 'en_GB':
1661
				case 'en_US':
1662
				default:
1663
					switch ($sex2) {
1664
					case 'M': // I18N: if you need a different number for %s, contact the developers, as a code-change is required
1665
					return I18N::translate('great ×%s uncle', I18N::number($up - 1));
1666
					case 'F':
1667
					return I18N::translate('great ×%s aunt', I18N::number($up - 1));
1668
					default:
1669
					return I18N::translate('great ×%s aunt/uncle', I18N::number($up - 1));
1670
					}
1671
					}
1672
			}
1673
		}
@@ 1820-1828 (lines=9) @@
1817
				return I18N::translateContext('(a woman’s) great ×%s nephew/niece', 'great ×%s nephew/niece', I18N::number($down - 3));
1818
				}
1819
				}
1820
				case 'he': // Source: Meliza Amity
1821
					switch ($sex2) {
1822
					case 'M':
1823
					return I18N::translate('great ×%s nephew', I18N::number($down - 1));
1824
					case 'F':
1825
					return I18N::translate('great ×%s niece', I18N::number($down - 1));
1826
					default:
1827
					return I18N::translate('great ×%s nephew/niece', I18N::number($down - 1));
1828
					}
1829
				case 'it': // Source: Michele Locati.
1830
				case 'en_AU':
1831
				case 'en_GB':
@@ 1833-1841 (lines=9) @@
1830
				case 'en_AU':
1831
				case 'en_GB':
1832
				case 'en_US':
1833
				default:
1834
					switch ($sex2) {
1835
					case 'M': // I18N: if you need a different number for %s, contact the developers, as a code-change is required
1836
					return I18N::translate('great ×%s nephew', I18N::number($down - 2));
1837
					case 'F':
1838
					return I18N::translate('great ×%s niece', I18N::number($down - 2));
1839
					default:
1840
					return I18N::translate('great ×%s nephew/niece', I18N::number($down - 2));
1841
					}
1842
					}
1843
			}
1844
		}
@@ 1909-1917 (lines=9) @@
1906
				//
1907
				// Need to find out which languages use which rules.
1908
				switch (WT_LOCALE) {
1909
				case 'da': // Source: Patrick Sorensen
1910
				switch ($sex2) {
1911
				case 'M':
1912
				return I18N::translate('great ×%s grandfather', I18N::number($up - 3));
1913
				case 'F':
1914
				return I18N::translate('great ×%s grandmother', I18N::number($up - 3));
1915
				default:
1916
				return I18N::translate('great ×%s grandparent', I18N::number($up - 3));
1917
				}
1918
				case 'it': // Source: Michele Locati
1919
				case 'es': // Source: Wes Groleau
1920
					switch ($sex2) {
@@ 1929-1937 (lines=9) @@
1926
					return I18N::translate('great ×%s grandparent', I18N::number($up));
1927
					}
1928
				case 'fr': // Source: Jacqueline Tetreault
1929
				case 'fr_CA':
1930
					switch ($sex2) {
1931
					case 'M':
1932
					return I18N::translate('great ×%s grandfather', I18N::number($up - 1));
1933
					case 'F':
1934
					return I18N::translate('great ×%s grandmother', I18N::number($up - 1));
1935
					default:
1936
					return I18N::translate('great ×%s grandparent', I18N::number($up - 1));
1937
					}
1938
				case 'nn': // Source: Hogne Røed Nilsen (https://bugs.launchpad.net/webtrees/+bug/1168553)
1939
				case 'nb':
1940
					switch ($sex2) {
@@ 1939-1947 (lines=9) @@
1936
					return I18N::translate('great ×%s grandparent', I18N::number($up - 1));
1937
					}
1938
				case 'nn': // Source: Hogne Røed Nilsen (https://bugs.launchpad.net/webtrees/+bug/1168553)
1939
				case 'nb':
1940
					switch ($sex2) {
1941
					case 'M': // I18N: if you need a different number for %s, contact the developers, as a code-change is required
1942
					return I18N::translate('great ×%s grandfather', I18N::number($up - 3));
1943
					case 'F':
1944
					return I18N::translate('great ×%s grandmother', I18N::number($up - 3));
1945
					default:
1946
					return I18N::translate('great ×%s grandparent', I18N::number($up - 3));
1947
					}
1948
				case 'en_AU':
1949
				case 'en_GB':
1950
				case 'en_US':
@@ 1951-1959 (lines=9) @@
1948
				case 'en_AU':
1949
				case 'en_GB':
1950
				case 'en_US':
1951
				default:
1952
					switch ($sex2) {
1953
					case 'M': // I18N: if you need a different number for %s, contact the developers, as a code-change is required
1954
					return I18N::translate('great ×%s grandfather', I18N::number($up - 2));
1955
					case 'F':
1956
					return I18N::translate('great ×%s grandmother', I18N::number($up - 2));
1957
					default:
1958
					return I18N::translate('great ×%s grandparent', I18N::number($up - 2));
1959
					}
1960
					}
1961
			}
1962
		}
@@ 2035-2043 (lines=9) @@
2032
				switch (WT_LOCALE) {
2033
				case 'nn': // Source: Hogne Røed Nilsen
2034
				case 'nb':
2035
				case 'da': // Source: Patrick Sorensen
2036
				switch ($sex2) {
2037
				case 'M':
2038
				return I18N::translate('great ×%s grandson', I18N::number($up - 3));
2039
				case 'F':
2040
				return I18N::translate('great ×%s granddaughter', I18N::number($up - 3));
2041
				default:
2042
				return I18N::translate('great ×%s grandchild', I18N::number($up - 3));
2043
				}
2044
				case 'it': // Source: Michele Locati
2045
				case 'es': // Source: Wes Groleau (adding doesn’t change behavior, but needs to be better researched)
2046
				case 'en_AU':
@@ 2049-2058 (lines=10) @@
2046
				case 'en_AU':
2047
				case 'en_GB':
2048
				case 'en_US':
2049
				default:
2050
					switch ($sex2) {
2051
2052
					case 'M': // I18N: if you need a different number for %s, contact the developers, as a code-change is required
2053
					return I18N::translate('great ×%s grandson', I18N::number($up - 2));
2054
					case 'F':
2055
					return I18N::translate('great ×%s granddaughter', I18N::number($up - 2));
2056
					default:
2057
					return I18N::translate('great ×%s grandchild', I18N::number($up - 2));
2058
					}
2059
					}
2060
			}
2061
		}