| @@ 1557-1571 (lines=15) @@ | ||
| 1554 | $up = strlen($match[1]) / 3; |
|
| 1555 | $bef_last = substr($path, -6, 3); |
|
| 1556 | switch ($up) { |
|
| 1557 | case 3: |
|
| 1558 | switch ($sex2) { |
|
| 1559 | case 'M': |
|
| 1560 | if ($bef_last === 'fat') { |
|
| 1561 | return I18N::translateContext('great-grandfather’s brother', 'great-great-uncle'); |
|
| 1562 | } elseif ($bef_last === 'mot') { |
|
| 1563 | return I18N::translateContext('great-grandmother’s brother', 'great-great-uncle'); |
|
| 1564 | } else { |
|
| 1565 | return I18N::translateContext('great-grandparent’s brother', 'great-great-uncle'); |
|
| 1566 | } |
|
| 1567 | case 'F': |
|
| 1568 | return I18N::translate('great-great-aunt'); |
|
| 1569 | default: |
|
| 1570 | return I18N::translate('great-great-aunt/uncle'); |
|
| 1571 | } |
|
| 1572 | case 4: |
|
| 1573 | switch ($sex2) { |
|
| 1574 | case 'M': |
|
| @@ 1572-1586 (lines=15) @@ | ||
| 1569 | default: |
|
| 1570 | return I18N::translate('great-great-aunt/uncle'); |
|
| 1571 | } |
|
| 1572 | case 4: |
|
| 1573 | switch ($sex2) { |
|
| 1574 | case 'M': |
|
| 1575 | if ($bef_last === 'fat') { |
|
| 1576 | return I18N::translateContext('great-great-grandfather’s brother', 'great-great-great-uncle'); |
|
| 1577 | } elseif ($bef_last === 'mot') { |
|
| 1578 | return I18N::translateContext('great-great-grandmother’s brother', 'great-great-great-uncle'); |
|
| 1579 | } else { |
|
| 1580 | return I18N::translateContext('great-great-grandparent’s brother', 'great-great-great-uncle'); |
|
| 1581 | } |
|
| 1582 | case 'F': |
|
| 1583 | return I18N::translate('great-great-great-aunt'); |
|
| 1584 | default: |
|
| 1585 | return I18N::translate('great-great-great-aunt/uncle'); |
|
| 1586 | } |
|
| 1587 | case 5: |
|
| 1588 | switch ($sex2) { |
|
| 1589 | case 'M': |
|
| @@ 1587-1601 (lines=15) @@ | ||
| 1584 | default: |
|
| 1585 | return I18N::translate('great-great-great-aunt/uncle'); |
|
| 1586 | } |
|
| 1587 | case 5: |
|
| 1588 | switch ($sex2) { |
|
| 1589 | case 'M': |
|
| 1590 | if ($bef_last === 'fat') { |
|
| 1591 | return I18N::translateContext('great-great-great-grandfather’s brother', 'great ×4 uncle'); |
|
| 1592 | } elseif ($bef_last === 'mot') { |
|
| 1593 | return I18N::translateContext('great-great-great-grandmother’s brother', 'great ×4 uncle'); |
|
| 1594 | } else { |
|
| 1595 | return I18N::translateContext('great-great-great-grandparent’s brother', 'great ×4 uncle'); |
|
| 1596 | } |
|
| 1597 | case 'F': |
|
| 1598 | return I18N::translate('great ×4 aunt'); |
|
| 1599 | default: |
|
| 1600 | return I18N::translate('great ×4 aunt/uncle'); |
|
| 1601 | } |
|
| 1602 | case 6: |
|
| 1603 | switch ($sex2) { |
|
| 1604 | case 'M': |
|
| @@ 1602-1616 (lines=15) @@ | ||
| 1599 | default: |
|
| 1600 | return I18N::translate('great ×4 aunt/uncle'); |
|
| 1601 | } |
|
| 1602 | case 6: |
|
| 1603 | switch ($sex2) { |
|
| 1604 | case 'M': |
|
| 1605 | if ($bef_last === 'fat') { |
|
| 1606 | return I18N::translateContext('great ×4 grandfather’s brother', 'great ×5 uncle'); |
|
| 1607 | } elseif ($bef_last === 'mot') { |
|
| 1608 | return I18N::translateContext('great ×4 grandmother’s brother', 'great ×5 uncle'); |
|
| 1609 | } else { |
|
| 1610 | return I18N::translateContext('great ×4 grandparent’s brother', 'great ×5 uncle'); |
|
| 1611 | } |
|
| 1612 | case 'F': |
|
| 1613 | return I18N::translate('great ×5 aunt'); |
|
| 1614 | default: |
|
| 1615 | return I18N::translate('great ×5 aunt/uncle'); |
|
| 1616 | } |
|
| 1617 | case 7: |
|
| 1618 | switch ($sex2) { |
|
| 1619 | case 'M': |
|
| @@ 1617-1631 (lines=15) @@ | ||
| 1614 | default: |
|
| 1615 | return I18N::translate('great ×5 aunt/uncle'); |
|
| 1616 | } |
|
| 1617 | case 7: |
|
| 1618 | switch ($sex2) { |
|
| 1619 | case 'M': |
|
| 1620 | if ($bef_last === 'fat') { |
|
| 1621 | return I18N::translateContext('great ×5 grandfather’s brother', 'great ×6 uncle'); |
|
| 1622 | } elseif ($bef_last === 'mot') { |
|
| 1623 | return I18N::translateContext('great ×5 grandmother’s brother', 'great ×6 uncle'); |
|
| 1624 | } else { |
|
| 1625 | return I18N::translateContext('great ×5 grandparent’s brother', 'great ×6 uncle'); |
|
| 1626 | } |
|
| 1627 | case 'F': |
|
| 1628 | return I18N::translate('great ×6 aunt'); |
|
| 1629 | default: |
|
| 1630 | return I18N::translate('great ×6 aunt/uncle'); |
|
| 1631 | } |
|
| 1632 | case 8: |
|
| 1633 | switch ($sex2) { |
|
| 1634 | case 'M': |
|
| @@ 1632-1646 (lines=15) @@ | ||
| 1629 | default: |
|
| 1630 | return I18N::translate('great ×6 aunt/uncle'); |
|
| 1631 | } |
|
| 1632 | case 8: |
|
| 1633 | switch ($sex2) { |
|
| 1634 | case 'M': |
|
| 1635 | if ($bef_last === 'fat') { |
|
| 1636 | return I18N::translateContext('great ×6 grandfather’s brother', 'great ×7 uncle'); |
|
| 1637 | } elseif ($bef_last === 'mot') { |
|
| 1638 | return I18N::translateContext('great ×6 grandmother’s brother', 'great ×7 uncle'); |
|
| 1639 | } else { |
|
| 1640 | return I18N::translateContext('great ×6 grandparent’s brother', 'great ×7 uncle'); |
|
| 1641 | } |
|
| 1642 | case 'F': |
|
| 1643 | return I18N::translate('great ×7 aunt'); |
|
| 1644 | default: |
|
| 1645 | return I18N::translate('great ×7 aunt/uncle'); |
|
| 1646 | } |
|
| 1647 | default: |
|
| 1648 | // Different languages have different rules for naming generations. |
|
| 1649 | // An English great ×12 uncle is a Danish great ×10 uncle. |
|