Code Duplication    Length = 15-15 lines in 6 locations

app/Functions/Functions.php 6 locations

@@ 1538-1552 (lines=15) @@
1535
			$up       = strlen($match[1]) / 3;
1536
			$bef_last = substr($path, -6, 3);
1537
			switch ($up) {
1538
			case 3:
1539
				switch ($sex2) {
1540
				case 'M':
1541
				if ($bef_last === 'fat') {
1542
				return I18N::translateContext('great-grandfather’s brother', 'great-great-uncle');
1543
				} elseif ($bef_last === 'mot') {
1544
				return I18N::translateContext('great-grandmother’s brother', 'great-great-uncle');
1545
				} else {
1546
				return I18N::translateContext('great-grandparent’s brother', 'great-great-uncle');
1547
				}
1548
				case 'F':
1549
				return I18N::translate('great-great-aunt');
1550
				default:
1551
				return I18N::translate('great-great-aunt/uncle');
1552
				}
1553
			case 4:
1554
				switch ($sex2) {
1555
				case 'M':
@@ 1553-1567 (lines=15) @@
1550
				default:
1551
				return I18N::translate('great-great-aunt/uncle');
1552
				}
1553
			case 4:
1554
				switch ($sex2) {
1555
				case 'M':
1556
				if ($bef_last === 'fat') {
1557
				return I18N::translateContext('great-great-grandfather’s brother', 'great-great-great-uncle');
1558
				} elseif ($bef_last === 'mot') {
1559
				return I18N::translateContext('great-great-grandmother’s brother', 'great-great-great-uncle');
1560
				} else {
1561
				return I18N::translateContext('great-great-grandparent’s brother', 'great-great-great-uncle');
1562
				}
1563
				case 'F':
1564
				return I18N::translate('great-great-great-aunt');
1565
				default:
1566
				return I18N::translate('great-great-great-aunt/uncle');
1567
				}
1568
			case 5:
1569
				switch ($sex2) {
1570
				case 'M':
@@ 1568-1582 (lines=15) @@
1565
				default:
1566
				return I18N::translate('great-great-great-aunt/uncle');
1567
				}
1568
			case 5:
1569
				switch ($sex2) {
1570
				case 'M':
1571
				if ($bef_last === 'fat') {
1572
				return I18N::translateContext('great-great-great-grandfather’s brother', 'great ×4 uncle');
1573
				} elseif ($bef_last === 'mot') {
1574
				return I18N::translateContext('great-great-great-grandmother’s brother', 'great ×4 uncle');
1575
				} else {
1576
				return I18N::translateContext('great-great-great-grandparent’s brother', 'great ×4 uncle');
1577
				}
1578
				case 'F':
1579
				return I18N::translate('great ×4 aunt');
1580
				default:
1581
				return I18N::translate('great ×4 aunt/uncle');
1582
				}
1583
			case 6:
1584
				switch ($sex2) {
1585
				case 'M':
@@ 1583-1597 (lines=15) @@
1580
				default:
1581
				return I18N::translate('great ×4 aunt/uncle');
1582
				}
1583
			case 6:
1584
				switch ($sex2) {
1585
				case 'M':
1586
				if ($bef_last === 'fat') {
1587
				return I18N::translateContext('great ×4 grandfather’s brother', 'great ×5 uncle');
1588
				} elseif ($bef_last === 'mot') {
1589
				return I18N::translateContext('great ×4 grandmother’s brother', 'great ×5 uncle');
1590
				} else {
1591
				return I18N::translateContext('great ×4 grandparent’s brother', 'great ×5 uncle');
1592
				}
1593
				case 'F':
1594
				return I18N::translate('great ×5 aunt');
1595
				default:
1596
				return I18N::translate('great ×5 aunt/uncle');
1597
				}
1598
			case 7:
1599
				switch ($sex2) {
1600
				case 'M':
@@ 1598-1612 (lines=15) @@
1595
				default:
1596
				return I18N::translate('great ×5 aunt/uncle');
1597
				}
1598
			case 7:
1599
				switch ($sex2) {
1600
				case 'M':
1601
				if ($bef_last === 'fat') {
1602
				return I18N::translateContext('great ×5 grandfather’s brother', 'great ×6 uncle');
1603
				} elseif ($bef_last === 'mot') {
1604
				return I18N::translateContext('great ×5 grandmother’s brother', 'great ×6 uncle');
1605
				} else {
1606
				return I18N::translateContext('great ×5 grandparent’s brother', 'great ×6 uncle');
1607
				}
1608
				case 'F':
1609
				return I18N::translate('great ×6 aunt');
1610
				default:
1611
				return I18N::translate('great ×6 aunt/uncle');
1612
				}
1613
			case 8:
1614
				switch ($sex2) {
1615
				case 'M':
@@ 1613-1627 (lines=15) @@
1610
				default:
1611
				return I18N::translate('great ×6 aunt/uncle');
1612
				}
1613
			case 8:
1614
				switch ($sex2) {
1615
				case 'M':
1616
				if ($bef_last === 'fat') {
1617
				return I18N::translateContext('great ×6 grandfather’s brother', 'great ×7 uncle');
1618
				} elseif ($bef_last === 'mot') {
1619
				return I18N::translateContext('great ×6 grandmother’s brother', 'great ×7 uncle');
1620
				} else {
1621
				return I18N::translateContext('great ×6 grandparent’s brother', 'great ×7 uncle');
1622
				}
1623
				case 'F':
1624
				return I18N::translate('great ×7 aunt');
1625
				default:
1626
				return I18N::translate('great ×7 aunt/uncle');
1627
				}
1628
			default:
1629
				// Different languages have different rules for naming generations.
1630
				// An English great ×12 uncle is a Danish great ×10 uncle.