]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/commitdiff
Move zxx to its own group in select-languages component (#4664)
authorFlorian CUNY <poslovitch@bentobox.world>
Fri, 24 Dec 2021 08:27:27 +0000 (09:27 +0100)
committerGitHub <noreply@github.com>
Fri, 24 Dec 2021 08:27:27 +0000 (09:27 +0100)
* Move zxx to its own group in select-languages component

* Fix lint

* Fix lint, again

* Apply requested changes

client/src/app/shared/shared-forms/select/select-languages.component.ts

index 742163ede5c440a9a0c1a3b2d5caaf77edca2eb2..6b5415785a90e4a2450d3578ea2133a459e24086 100644 (file)
@@ -20,7 +20,7 @@ export class SelectLanguagesComponent implements ControlValueAccessor, OnInit {
   @Input() maxLanguages: number
 
   selectedLanguages: ItemSelectCheckboxValue[]
-  availableLanguages: SelectOptionsItem[] = []
+  availableLanguages: (SelectOptionsItem & { groupOrder: number })[] = []
 
   allLanguagesGroup = $localize`All languages`
 
@@ -38,10 +38,20 @@ export class SelectLanguagesComponent implements ControlValueAccessor, OnInit {
     this.server.getVideoLanguages()
       .subscribe(
         languages => {
-          this.availableLanguages = [ { label: $localize`Unknown language`, id: '_unknown', group: this.allLanguagesGroup } ]
+          this.availableLanguages = [ {
+            label: $localize`Unknown language`,
+            id: '_unknown',
+            group: this.allLanguagesGroup,
+            groupOrder: 1
+          } ]
 
           this.availableLanguages = this.availableLanguages
-            .concat(languages.map(l => ({ label: l.label, id: l.id, group: this.allLanguagesGroup })))
+            .concat(languages.map(l => {
+              if (l.id === 'zxx') return { label: l.label, id: l.id, group: $localize`Other`, groupOrder: 0 }
+              return { label: l.label, id: l.id, group: this.allLanguagesGroup, groupOrder: 1 }
+            }))
+
+          this.availableLanguages.sort((a, b) => a.groupOrder - b.groupOrder)
 
           this.loaded = true
           this.writeValue(this.toWrite)