summaryrefslogtreecommitdiff
path: root/languages/classes/LanguageGd.php
diff options
context:
space:
mode:
Diffstat (limited to 'languages/classes/LanguageGd.php')
-rw-r--r--languages/classes/LanguageGd.php27
1 files changed, 19 insertions, 8 deletions
diff --git a/languages/classes/LanguageGd.php b/languages/classes/LanguageGd.php
index 1b1b278e..5fe3d058 100644
--- a/languages/classes/LanguageGd.php
+++ b/languages/classes/LanguageGd.php
@@ -4,32 +4,43 @@
* @ingroup Language
*
* @author Raimond Spekking
+ * @author Niklas Laxström
*/
class LanguageGd extends Language {
/**
* Plural form transformations
- * Based on this discussion: http://translatewiki.net/w/i.php?title=Portal_talk:Gd&oldid=1094065#%C3%80ireamhan
+ * Based on this discussion: http://translatewiki.net/wiki/Thread:Support/New_plural_rules_for_Scots_Gaelic_(gd)
*
- * $forms[0] - singular form (for 1)
- * $forms[1] - dual form (for 2)
- * $forms[2] - plural form 1 (for 3-10)
- * $forms[3] - plural form 2 (for >= 11)
+ * $forms[0] - 1
+ * $forms[1] - 2
+ * $forms[2] - 11
+ * $forms[3] - 12
+ * $forms[4] - 3-10, 13-19
+ * $forms[5] - 0, 20, rest
*
+ * @param $count int
+ * @param $forms array
+ *
+ * @return string
*/
function convertPlural( $count, $forms ) {
if ( !count( $forms ) ) { return ''; }
- $forms = $this->preConvertPlural( $forms, 4 );
+ $forms = $this->preConvertPlural( $forms, 6 );
$count = abs( $count );
if ( $count === 1 ) {
return $forms[0];
} elseif ( $count === 2 ) {
return $forms[1];
- } elseif ( $count >= 3 && $count <= 10 ) {
+ } elseif ( $count === 11 ) {
return $forms[2];
- } else {
+ } elseif ( $count === 12 ) {
return $forms[3];
+ } elseif ( ($count >= 3 && $count <= 10) || ($count >= 13 && $count <= 19) ) {
+ return $forms[4];
+ } else {
+ return $forms[5];
}
}
}