diff --git a/src/addon/badges/lang/ar.json b/src/addon/badges/lang/ar.json
new file mode 100755
index 000000000..edc0b0d08
--- /dev/null
+++ b/src/addon/badges/lang/ar.json
@@ -0,0 +1,4 @@
+{
+ "badges": "شارات",
+ "expired": "عذراً، تم إغلاق هذا النشاط في {{$a}} وهو غير متوفر الآن."
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/bg.json b/src/addon/badges/lang/bg.json
new file mode 100755
index 000000000..4f6540a4a
--- /dev/null
+++ b/src/addon/badges/lang/bg.json
@@ -0,0 +1,11 @@
+{
+ "badgedetails": "Елементи на значката",
+ "badges": "Значки",
+ "contact": "Контакт",
+ "expired": "За съжаление тази дейност е затворена от {{$a}} и вече не е достъпна",
+ "expirydate": "Дата на изтичане",
+ "issuancedetails": "Срок на значката",
+ "issuerdetails": "Данни за връчващия",
+ "issuername": "Име на връчващия",
+ "nobadges": "Няма налични значки."
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/ca.json b/src/addon/badges/lang/ca.json
new file mode 100755
index 000000000..4dd96b8a1
--- /dev/null
+++ b/src/addon/badges/lang/ca.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Detalls de la insígnia",
+ "badges": "Insígnies",
+ "contact": "Contacte",
+ "dateawarded": "Data publicada",
+ "expired": "Aquesta activitat es va tancar el dia {{$a}} i ja no està disponible.",
+ "expirydate": "Data d'expiració",
+ "issuancedetails": "Expiració de la insígnia",
+ "issuerdetails": "Detalls de l'atorgador",
+ "issuername": "Nom de l'atorgador",
+ "nobadges": "No hi ha insígnies disponibles.",
+ "recipientdetails": "Detalls del receptor"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/cs.json b/src/addon/badges/lang/cs.json
new file mode 100755
index 000000000..95347f65d
--- /dev/null
+++ b/src/addon/badges/lang/cs.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Detaily odznaku",
+ "badges": "Odznaky",
+ "contact": "Kontakt",
+ "dateawarded": "Datum udělení",
+ "expired": "Je nám líto, tato činnost byla uzavřena {{$a}} a není nadále dostupná",
+ "expirydate": "Datum vypršení platnosti",
+ "issuancedetails": "Vypršení platnosti odznaku",
+ "issuerdetails": "Podrobnosti o vydavateli",
+ "issuername": "Jméno vydavatele",
+ "nobadges": "Žádné odznaky nejsou k dispozici.",
+ "recipientdetails": "Podrobnosti o příjemci"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/da.json b/src/addon/badges/lang/da.json
new file mode 100755
index 000000000..5693c0af2
--- /dev/null
+++ b/src/addon/badges/lang/da.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Badgedetaljer",
+ "badges": "Badges",
+ "contact": "Kontakt",
+ "dateawarded": "Udstedelsesdato",
+ "expired": "Beklager, denne aktivitet er lukket d. {{$a}} og er ikke længere tilgængelig",
+ "expirydate": "Udløbsdato",
+ "issuancedetails": "Badge-udløb",
+ "issuerdetails": "Udstederdata",
+ "issuername": "Udsteders navn",
+ "nobadges": "Der er ingen tilgængelige badges.",
+ "recipientdetails": "Modtagerdata"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/de-du.json b/src/addon/badges/lang/de-du.json
new file mode 100755
index 000000000..14bde8d8e
--- /dev/null
+++ b/src/addon/badges/lang/de-du.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Grundeinstellungen",
+ "badges": "Auszeichnungen",
+ "contact": "Kontakt",
+ "dateawarded": "Verleihdatum",
+ "expired": "Diese Abstimmung ist seit {{$a}} beendet. Eine Auswahl ist nicht mehr möglich.",
+ "expirydate": "Ablaufdatum",
+ "issuancedetails": "Ablauf festlegen",
+ "issuerdetails": "Verleiher",
+ "issuername": "Verleiher",
+ "nobadges": "Keine Auszeichnungen verfügbar",
+ "recipientdetails": "Empfängerdetails"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/de.json b/src/addon/badges/lang/de.json
new file mode 100755
index 000000000..14bde8d8e
--- /dev/null
+++ b/src/addon/badges/lang/de.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Grundeinstellungen",
+ "badges": "Auszeichnungen",
+ "contact": "Kontakt",
+ "dateawarded": "Verleihdatum",
+ "expired": "Diese Abstimmung ist seit {{$a}} beendet. Eine Auswahl ist nicht mehr möglich.",
+ "expirydate": "Ablaufdatum",
+ "issuancedetails": "Ablauf festlegen",
+ "issuerdetails": "Verleiher",
+ "issuername": "Verleiher",
+ "nobadges": "Keine Auszeichnungen verfügbar",
+ "recipientdetails": "Empfängerdetails"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/el.json b/src/addon/badges/lang/el.json
new file mode 100755
index 000000000..41294c41e
--- /dev/null
+++ b/src/addon/badges/lang/el.json
@@ -0,0 +1,4 @@
+{
+ "badges": "Βραβεία",
+ "expired": "Η δραστηριότητα αυτή έκλεισε στις {{$a}} και δεν είναι πλέον διαθέσιμη"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/es-mx.json b/src/addon/badges/lang/es-mx.json
new file mode 100755
index 000000000..fbddeff83
--- /dev/null
+++ b/src/addon/badges/lang/es-mx.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Detalles de insignia",
+ "badges": "Insignias",
+ "contact": "Contacto",
+ "dateawarded": "Fecha de emisión",
+ "expired": "Lo sentimos, esta actividad se cerró el {{$a}} y ya no está disponible",
+ "expirydate": "Fecha de caducidad",
+ "issuancedetails": "Caducidad de insignia",
+ "issuerdetails": "Detalles del emisor",
+ "issuername": "Nombre del emisor",
+ "nobadges": "No hay insignias disponibles.",
+ "recipientdetails": "Detalles de receptores"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/es.json b/src/addon/badges/lang/es.json
new file mode 100755
index 000000000..bf84b0d2b
--- /dev/null
+++ b/src/addon/badges/lang/es.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Detalles de la insignia",
+ "badges": "Insignias",
+ "contact": "Contacto",
+ "dateawarded": "Fecha de la emisión",
+ "expired": "Lo sentimos, esta actividad se cerró el {{$a}} y ya no está disponible",
+ "expirydate": "Fecha de expiración",
+ "issuancedetails": "Caducidad de la insignia",
+ "issuerdetails": "Detalles del emisor",
+ "issuername": "Nombre del emisor",
+ "nobadges": "No hay insignias disponibles",
+ "recipientdetails": "Detalles del destinatario"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/eu.json b/src/addon/badges/lang/eu.json
new file mode 100755
index 000000000..600530dd8
--- /dev/null
+++ b/src/addon/badges/lang/eu.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Dominaren xehetasunak",
+ "badges": "Dominak",
+ "contact": "Kontaktua",
+ "dateawarded": "Emate-data",
+ "expired": "Sentitzen dugu, jarduera hau {{$a}}(e)an itxi zen eta dagoeneko ez dago eskuragarri.",
+ "expirydate": "Epemugaren data",
+ "issuancedetails": "Dominaren iraungitzea",
+ "issuerdetails": "Emailearen xehetasunak",
+ "issuername": "Emailearen izena",
+ "nobadges": "Ez dago dominarik eskura.",
+ "recipientdetails": "Jasotzailearen zehaztasunak"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/fa.json b/src/addon/badges/lang/fa.json
new file mode 100755
index 000000000..12d37d7a4
--- /dev/null
+++ b/src/addon/badges/lang/fa.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "مشخصات مدال",
+ "badges": "مدالها",
+ "contact": "تماس",
+ "dateawarded": "تاریخ صدور",
+ "expired": "با عرض پوزش، این فعالیت در {{$a}} بسته شد و دیگر در دسترس نیست",
+ "expirydate": "تاریخ انقضا",
+ "issuancedetails": "انقضای مدال",
+ "issuerdetails": "مشخصات صادرکننده",
+ "issuername": "نام صادرکننده",
+ "nobadges": "مدالی موجود نیست.",
+ "recipientdetails": "مشخصات دریافتکننده"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/fi.json b/src/addon/badges/lang/fi.json
new file mode 100755
index 000000000..b38f0f9a3
--- /dev/null
+++ b/src/addon/badges/lang/fi.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Osaamismerkin tiedot",
+ "badges": "Osaamismerkit",
+ "contact": "Yhteystieto",
+ "dateawarded": "Myöntämispäivä",
+ "expired": "Tämä aktiviteeti on suljettu {{$a}} eikä ole enää käytettävissä.",
+ "expirydate": "Vanhenemispäivä",
+ "issuancedetails": "Osaamismerkin vanhentuminen",
+ "issuerdetails": "Osaamismerkin myöntäjän tiedot",
+ "issuername": "Osaamismerkin myöntäjän nimi",
+ "nobadges": "Yhtään osaamismerkkiä ei ole tarjolla",
+ "recipientdetails": "Vastaanottajan tiedot"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/fr.json b/src/addon/badges/lang/fr.json
new file mode 100755
index 000000000..c3194b478
--- /dev/null
+++ b/src/addon/badges/lang/fr.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Description du badge",
+ "badges": "Badges",
+ "contact": "Contact",
+ "dateawarded": "Date de remise",
+ "expired": "Désolé, cette activité s'est terminée le {{$a}} et n'est plus disponible",
+ "expirydate": "Date d'échéance",
+ "issuancedetails": "Échéance du badge",
+ "issuerdetails": "Détail de l'émetteur",
+ "issuername": "Nom de l'émetteur",
+ "nobadges": "Il n'y a pas de badge disponible.",
+ "recipientdetails": "Infos détenteur"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/he.json b/src/addon/badges/lang/he.json
new file mode 100755
index 000000000..53e1eb6b7
--- /dev/null
+++ b/src/addon/badges/lang/he.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "פרטי ההישג",
+ "badges": "הישגים",
+ "contact": "ליצירת קשר",
+ "dateawarded": "תאריך הקבלה",
+ "expired": "מצטערים, פעילות זו נסגרה על {{$a}} והיא איננה זמינה יותר",
+ "expirydate": "תאריך תפוגה",
+ "issuancedetails": "מועד תפוגת ההישג",
+ "issuerdetails": "פרטי הגורם אשר העניק את ההישג",
+ "issuername": "שם מעניק ההישג",
+ "nobadges": "אין הישגים זמינים.",
+ "recipientdetails": "פרטי המכותב"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/hr.json b/src/addon/badges/lang/hr.json
new file mode 100755
index 000000000..6cfa7c095
--- /dev/null
+++ b/src/addon/badges/lang/hr.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Detalji značke",
+ "badges": "Značke",
+ "contact": "Kontakt",
+ "dateawarded": "Datum izdavanja",
+ "expired": "Nažalost, ova aktivnost je zatvorena od {{$a}} i nije više dostupna",
+ "expirydate": "Datum isteka",
+ "issuancedetails": "Istek značke",
+ "issuerdetails": "Detalji o izdavaču",
+ "issuername": "Ime izdavača",
+ "nobadges": "Nema dostupnih značaka.",
+ "recipientdetails": "Podaci o dobitniku"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/hu.json b/src/addon/badges/lang/hu.json
new file mode 100755
index 000000000..7ce39e4cb
--- /dev/null
+++ b/src/addon/badges/lang/hu.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Részletek",
+ "badges": "Kitűzők",
+ "contact": "Kapcsolat",
+ "dateawarded": "Kiadás dátuma",
+ "expired": "Ez a tevékenység {{$a}} időpontban lezárult és már nem érhető el",
+ "expirydate": "Lejárat időpontja",
+ "issuancedetails": "A kitűző lejárata",
+ "issuerdetails": "Az adományozó adatai",
+ "issuername": "Az adományozó neve",
+ "nobadges": "Nincs elérhető kitűző.",
+ "recipientdetails": "A megjutalmazott adatai"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/it.json b/src/addon/badges/lang/it.json
new file mode 100755
index 000000000..b1694dc48
--- /dev/null
+++ b/src/addon/badges/lang/it.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Dettagli badge",
+ "badges": "Badge",
+ "contact": "Contatto",
+ "dateawarded": "Data di rilascio",
+ "expired": "Spiacente, questa attività è stata chiusa il {{$a}} e non è più disponibile",
+ "expirydate": "Data di scadenza",
+ "issuancedetails": "Scadenza badge",
+ "issuerdetails": "Dettagli di chi rilascia il badge",
+ "issuername": "Nome di chi rilascia il badge",
+ "nobadges": "Non sono presenti badge.",
+ "recipientdetails": "Dettagli destinatario"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/ja.json b/src/addon/badges/lang/ja.json
new file mode 100755
index 000000000..9a8239a43
--- /dev/null
+++ b/src/addon/badges/lang/ja.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "バッジ詳細",
+ "badges": "バッジ",
+ "contact": "連絡先",
+ "dateawarded": "発効日",
+ "expired": "申し訳ございません、この活動は {{$a}} に終了しているため、これ以上利用することはできません。",
+ "expirydate": "有効期限",
+ "issuancedetails": "バッジ有効期限",
+ "issuerdetails": "発行者詳細",
+ "issuername": "発行者名",
+ "nobadges": "利用できるバッジはありません。",
+ "recipientdetails": "取得者詳細"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/ko.json b/src/addon/badges/lang/ko.json
new file mode 100755
index 000000000..9e30623e4
--- /dev/null
+++ b/src/addon/badges/lang/ko.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "뱃지 세부사항",
+ "badges": "뱃지",
+ "contact": "연락처",
+ "dateawarded": "발행일",
+ "expired": "죄송합니다. 이 활동은 {{$a}} 에 종료되어서 더 이상 사용할 수 없습니다.",
+ "expirydate": "만료일",
+ "issuancedetails": "뱃지 만료기한",
+ "issuerdetails": "발행자 세부정보",
+ "issuername": "발행자 이름",
+ "nobadges": "사용가능한 뱃지가 없습니다.",
+ "recipientdetails": "수신자 세부사항"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/lt.json b/src/addon/badges/lang/lt.json
new file mode 100755
index 000000000..2434a9c03
--- /dev/null
+++ b/src/addon/badges/lang/lt.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Pasiekimo detalės",
+ "badges": "Pasiekimai",
+ "contact": "Kontaktas",
+ "dateawarded": "Suteikimo data",
+ "expired": "Atsiprašome, veikla uždaryta {{$a}} ir nebegalima",
+ "expirydate": "Galiojimo laikas",
+ "issuancedetails": "Pasiekimo galiojimas",
+ "issuerdetails": "Suteikėjo detalesnė informacija",
+ "issuername": "Suteikėjo vardas",
+ "nobadges": "Nėra sukurtų pasiekimų.",
+ "recipientdetails": "Informacija apie gavėją"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/mr.json b/src/addon/badges/lang/mr.json
new file mode 100755
index 000000000..2b37db102
--- /dev/null
+++ b/src/addon/badges/lang/mr.json
@@ -0,0 +1,3 @@
+{
+ "expired": "संपलेला"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/nl.json b/src/addon/badges/lang/nl.json
new file mode 100755
index 000000000..24e5430f2
--- /dev/null
+++ b/src/addon/badges/lang/nl.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Badgedetails",
+ "badges": "Badges",
+ "contact": "Contact",
+ "dateawarded": "Uitgavedatum",
+ "expired": "Sorry, deze activiteit is afgesloten op {{$a}} en is niet meer beschikbaar",
+ "expirydate": "Vervaldatum",
+ "issuancedetails": "Badge verloopt",
+ "issuerdetails": "Details uitgever",
+ "issuername": "Naam uitgever",
+ "nobadges": "Er zijn geen badges beschikbaar.",
+ "recipientdetails": "Details ontvanger"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/no.json b/src/addon/badges/lang/no.json
new file mode 100755
index 000000000..6a48ea344
--- /dev/null
+++ b/src/addon/badges/lang/no.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Utmerkelsesdetaljer",
+ "badges": "Utmerkelser",
+ "contact": "Kontakt",
+ "dateawarded": "Dato tildelt",
+ "expired": "Beklager, denne aktiviteten ble stengt {{$a}} og er ikke tilgjengelig lenger.",
+ "expirydate": "Utløpsdato",
+ "issuancedetails": "Utløpsdato på utmerkelse",
+ "issuerdetails": "Utstederdetaljer",
+ "issuername": "Navn på utsteder",
+ "nobadges": "Det er ingen tilgjengelige utmerkelser.",
+ "recipientdetails": "Mottakerdetaljer"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/pl.json b/src/addon/badges/lang/pl.json
new file mode 100755
index 000000000..cdbe2ea38
--- /dev/null
+++ b/src/addon/badges/lang/pl.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Szczegóły odznaki",
+ "badges": "Odznaki",
+ "contact": "Kontakt",
+ "dateawarded": "Data wydania",
+ "expired": "Niestety ta aktywność została zamknięta {{$a}} i nie jest już dostępna.",
+ "expirydate": "Data ważności",
+ "issuancedetails": "Wygaśnięcie odznaki",
+ "issuerdetails": "Dane wystawcy",
+ "issuername": "Nazwa wydawcy",
+ "nobadges": "Brak dostępnych odznak",
+ "recipientdetails": "Dane odbiorcy"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/pt-br.json b/src/addon/badges/lang/pt-br.json
new file mode 100755
index 000000000..f58e81ab7
--- /dev/null
+++ b/src/addon/badges/lang/pt-br.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Detalhes do emblema",
+ "badges": "Emblemas",
+ "contact": "Contato",
+ "dateawarded": "Data de emissão",
+ "expired": "Esta atividade está encerrada desde {{$a}}",
+ "expirydate": "Data de validade",
+ "issuancedetails": "Expiração do emblema",
+ "issuerdetails": "Detalhes do emissor",
+ "issuername": "Nome do emissor",
+ "nobadges": "Não há emblemas disponíveis.",
+ "recipientdetails": "Detalhes do usuário a receber o emblema"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/pt.json b/src/addon/badges/lang/pt.json
new file mode 100755
index 000000000..25537f644
--- /dev/null
+++ b/src/addon/badges/lang/pt.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Detalhes da Medalha",
+ "badges": "Medalhas",
+ "contact": "Contacto",
+ "dateawarded": "Data de emissão",
+ "expired": "Esta atividade terminou em {{$a}} e já não está disponível",
+ "expirydate": "Data de validade",
+ "issuancedetails": "Data de validade da Medalha",
+ "issuerdetails": "Detalhes do emissor",
+ "issuername": "Nome do emissor",
+ "nobadges": "Não existem Medalhas disponíveis.",
+ "recipientdetails": "Detalhes do condecorado"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/ro.json b/src/addon/badges/lang/ro.json
new file mode 100755
index 000000000..f419fdda1
--- /dev/null
+++ b/src/addon/badges/lang/ro.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Detalii ecuson",
+ "badges": "Ecusoane",
+ "contact": "Contact",
+ "dateawarded": "Data emiterii",
+ "expired": "Ne pare rău, această activitate s-a închis la {{$a}} şi nu mai este disponibilă",
+ "expirydate": "Dată de expirare",
+ "issuancedetails": "Expirare ecuson",
+ "issuerdetails": "Detalii emitent",
+ "issuername": "Nume emitent",
+ "nobadges": "Nu există ecusoane disponibile",
+ "recipientdetails": "Detalii recipient"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/ru.json b/src/addon/badges/lang/ru.json
new file mode 100755
index 000000000..0b3622229
--- /dev/null
+++ b/src/addon/badges/lang/ru.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Подробнее о значке",
+ "badges": "Значки",
+ "contact": "Контакты",
+ "dateawarded": "Дата выдачи",
+ "expired": "Извините, этот элемент курса закрыт {{$a}} и более недоступен",
+ "expirydate": "Дата окончания срока действия",
+ "issuancedetails": "Срок действия значка",
+ "issuerdetails": "Сведения об эмитенте",
+ "issuername": "Наименование эмитента",
+ "nobadges": "Нет доступных значков.",
+ "recipientdetails": "Сведения о получателе"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/sr-cr.json b/src/addon/badges/lang/sr-cr.json
new file mode 100755
index 000000000..dde1e8526
--- /dev/null
+++ b/src/addon/badges/lang/sr-cr.json
@@ -0,0 +1,12 @@
+{
+ "badgedetails": "Подаци о беџу",
+ "badges": "Беџеви",
+ "contact": "Контакт",
+ "dateawarded": "Датум издавања",
+ "expirydate": "Датум истека",
+ "issuancedetails": "Беџ истиче",
+ "issuerdetails": "Подаци о издавачу",
+ "issuername": "Име/назив издавача беџа",
+ "nobadges": "Нема доступних беџева",
+ "recipientdetails": "Детаљи о примаоцу"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/sr-lt.json b/src/addon/badges/lang/sr-lt.json
new file mode 100755
index 000000000..7c2a996f0
--- /dev/null
+++ b/src/addon/badges/lang/sr-lt.json
@@ -0,0 +1,12 @@
+{
+ "badgedetails": "Podaci o bedžu",
+ "badges": "Bedževi",
+ "contact": "Kontakt",
+ "dateawarded": "Datum izdavanja",
+ "expirydate": "Datum isteka",
+ "issuancedetails": "Bedž ističe",
+ "issuerdetails": "Podaci o izdavaču",
+ "issuername": "Ime/naziv izdavača bedža",
+ "nobadges": "Nema dostupnih bedževa",
+ "recipientdetails": "Detalji o primaocu"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/sv.json b/src/addon/badges/lang/sv.json
new file mode 100755
index 000000000..d533b8a4a
--- /dev/null
+++ b/src/addon/badges/lang/sv.json
@@ -0,0 +1,12 @@
+{
+ "badgedetails": "Detaljer för märke",
+ "badges": "Märken",
+ "contact": "Kontakt",
+ "dateawarded": "Utfärdandedatum",
+ "expired": "Den här aktiviteten är stängd på {{$a}} och den är inte längre tillgänglig.",
+ "expirydate": "Förfallodatum",
+ "issuancedetails": "Förfallande av märke",
+ "issuerdetails": "Utfärdarens detaljer",
+ "issuername": "Utfärdarens namn",
+ "nobadges": "Det finns inga märken tillgängliga."
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/tg.json b/src/addon/badges/lang/tg.json
new file mode 100755
index 000000000..f0e3481e5
--- /dev/null
+++ b/src/addon/badges/lang/tg.json
@@ -0,0 +1,4 @@
+{
+ "badges": "Бейҷҳо",
+ "expired": "Бубахшед,ин фаъолият маҳкам карда шудааст {{$a}} ва акнун дастрас нест"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/tr.json b/src/addon/badges/lang/tr.json
new file mode 100755
index 000000000..86adcba8c
--- /dev/null
+++ b/src/addon/badges/lang/tr.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Nişan ayrıntıları",
+ "badges": "Nişanlar",
+ "contact": "İletişim",
+ "dateawarded": "Verilen tarih",
+ "expired": "Üzgünüz, bu etkinlik {{$a}} tarihinde kapandı ve bu etkinliğe artık ulaşılamaz",
+ "expirydate": "Bitiş Tarihi",
+ "issuancedetails": "Rozet sona erme",
+ "issuerdetails": "çıkaran ayrıntıları",
+ "issuername": "Çıkaranın adı",
+ "nobadges": "Uygun nişan bulunmuyor.",
+ "recipientdetails": "Alıcı bilgileri"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/uk.json b/src/addon/badges/lang/uk.json
new file mode 100755
index 000000000..88c5bf62b
--- /dev/null
+++ b/src/addon/badges/lang/uk.json
@@ -0,0 +1,13 @@
+{
+ "badgedetails": "Детальніше про відзнаку",
+ "badges": "Відзнаки",
+ "contact": "Контакт",
+ "dateawarded": "Дата отримання",
+ "expired": "На жаль, ця діяльність закрита для {{$a}} та більше недоступна",
+ "expirydate": "Дата завершення",
+ "issuancedetails": "Відзнака не актуальна",
+ "issuerdetails": "Деталі присудження",
+ "issuername": "Ім’я видавця",
+ "nobadges": "Немає доступних відзнак.",
+ "recipientdetails": "Деталі отримувача"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/zh-cn.json b/src/addon/badges/lang/zh-cn.json
new file mode 100755
index 000000000..241dd1a26
--- /dev/null
+++ b/src/addon/badges/lang/zh-cn.json
@@ -0,0 +1,12 @@
+{
+ "badgedetails": "勋章详情",
+ "badges": "勋章",
+ "contact": "联系",
+ "dateawarded": "授予日期",
+ "expirydate": "过期时间",
+ "issuancedetails": "有效期",
+ "issuerdetails": "授勋机构详情",
+ "issuername": "授勋机构名称",
+ "nobadges": "没有可用的勋章",
+ "recipientdetails": "获得者详情"
+}
\ No newline at end of file
diff --git a/src/addon/badges/lang/zh-tw.json b/src/addon/badges/lang/zh-tw.json
new file mode 100755
index 000000000..6f523313b
--- /dev/null
+++ b/src/addon/badges/lang/zh-tw.json
@@ -0,0 +1,12 @@
+{
+ "badgedetails": "獎章細節",
+ "badges": "獎章",
+ "contact": "聯絡",
+ "dateawarded": "頒發的日期",
+ "expirydate": "失效日期",
+ "issuancedetails": "獎章到期",
+ "issuerdetails": "頒授者細節",
+ "issuername": "頒授者的姓名",
+ "nobadges": "這裡沒有可用的獎章",
+ "recipientdetails": "收件者細節"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/ar.json b/src/addon/calendar/lang/ar.json
new file mode 100755
index 000000000..23e2ee91b
--- /dev/null
+++ b/src/addon/calendar/lang/ar.json
@@ -0,0 +1,7 @@
+{
+ "calendarevents": "أحداث التقويم",
+ "errorloadevent": "خطأ في تحميل الحدث",
+ "errorloadevents": "خطأ في تحميل الأحداث",
+ "noevents": "لا يوجد أي أحداث",
+ "notifications": "الإشعارات"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/bg.json b/src/addon/calendar/lang/bg.json
new file mode 100755
index 000000000..33589385c
--- /dev/null
+++ b/src/addon/calendar/lang/bg.json
@@ -0,0 +1,7 @@
+{
+ "calendarevents": "Събития от календара",
+ "errorloadevent": "Грешка при зареждането на събитие.",
+ "errorloadevents": "Грешка при зареждането на събитията.",
+ "noevents": "Няма предстоящи дейности",
+ "notifications": "Уведомление"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/ca.json b/src/addon/calendar/lang/ca.json
new file mode 100755
index 000000000..a2a8930c7
--- /dev/null
+++ b/src/addon/calendar/lang/ca.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Esdeveniments del calendari",
+ "defaultnotificationtime": "Hora de notificació per defecte",
+ "errorloadevent": "S'ha produït un error carregant l'esdeveniment.",
+ "errorloadevents": "S'ha produït un error carregant els esdeveniments.",
+ "noevents": "Cap activitat venç properament",
+ "notifications": "Notificacions"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/cs.json b/src/addon/calendar/lang/cs.json
new file mode 100755
index 000000000..5dca11fb0
--- /dev/null
+++ b/src/addon/calendar/lang/cs.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Kalendář událostí",
+ "defaultnotificationtime": "Výchozí čas oznámení",
+ "errorloadevent": "Chyba při načítání události.",
+ "errorloadevents": "Chyba při načítání událostí.",
+ "noevents": "Žádné nadcházející činnosti",
+ "notifications": "Informace"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/da.json b/src/addon/calendar/lang/da.json
new file mode 100755
index 000000000..9af5235a5
--- /dev/null
+++ b/src/addon/calendar/lang/da.json
@@ -0,0 +1,7 @@
+{
+ "calendarevents": "Kalenderbegivenheder",
+ "errorloadevent": "Fejl ved indlæsning af begivenhed.",
+ "errorloadevents": "Fejl ved indlæsning af begivenheder.",
+ "noevents": "Ingen forestående aktiviteter",
+ "notifications": "Beskeder"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/de-du.json b/src/addon/calendar/lang/de-du.json
new file mode 100755
index 000000000..7268e975f
--- /dev/null
+++ b/src/addon/calendar/lang/de-du.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Kalender",
+ "defaultnotificationtime": "Standardmäßige Benachrichtigungszeit",
+ "errorloadevent": "Fehler beim Laden des Kalendereintrags",
+ "errorloadevents": "Fehler beim Laden der Kalendereinträge",
+ "noevents": "Keine anstehenden Aktivitäten fällig",
+ "notifications": "Mitteilungen"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/de.json b/src/addon/calendar/lang/de.json
new file mode 100755
index 000000000..120feaec0
--- /dev/null
+++ b/src/addon/calendar/lang/de.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Kalender",
+ "defaultnotificationtime": "Standardmäßige Benachrichtigungszeit",
+ "errorloadevent": "Fehler beim Laden des Kalendereintrags",
+ "errorloadevents": "Fehler beim Laden der Kalendereinträge",
+ "noevents": "Keine Kalendereinträge",
+ "notifications": "Systemmitteilungen"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/el.json b/src/addon/calendar/lang/el.json
new file mode 100755
index 000000000..4a7590c2d
--- /dev/null
+++ b/src/addon/calendar/lang/el.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Ημερολόγιο συμβάντων",
+ "defaultnotificationtime": "Προεπιλεγμένος χρόνος ειδοποίησης",
+ "errorloadevent": "Σφάλμα στην φόρτωση συμβάντου.",
+ "errorloadevents": "Σφάλμα στην φόρτωση συμβάντων.",
+ "noevents": "Καμία δραστηριότητα προσεχώς",
+ "notifications": "Ειδοποιήσεις"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/es-mx.json b/src/addon/calendar/lang/es-mx.json
new file mode 100755
index 000000000..d4be495ef
--- /dev/null
+++ b/src/addon/calendar/lang/es-mx.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Eventos del calendario",
+ "defaultnotificationtime": "Hora de notificación por defecto",
+ "errorloadevent": "Error al cargar evento.",
+ "errorloadevents": "Error al cargar eventos.",
+ "noevents": "No hay actividades próximas pendientes",
+ "notifications": "Avisos"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/es.json b/src/addon/calendar/lang/es.json
new file mode 100755
index 000000000..8149bc574
--- /dev/null
+++ b/src/addon/calendar/lang/es.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Eventos de calendario",
+ "defaultnotificationtime": "Tiempo de notificación por defecto",
+ "errorloadevent": "Error cargando el evento.",
+ "errorloadevents": "Error cargando los eventos.",
+ "noevents": "No hay actividades próximas pendientes",
+ "notifications": "Avisos"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/eu.json b/src/addon/calendar/lang/eu.json
new file mode 100755
index 000000000..1158b9cd1
--- /dev/null
+++ b/src/addon/calendar/lang/eu.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Egutegiko gertakariak",
+ "defaultnotificationtime": "Berezko jakinarazpen-ordua",
+ "errorloadevent": "Errorea gertakaria kargatzean.",
+ "errorloadevents": "Errorea gertakariak kargatzean.",
+ "noevents": "Ez dago ekitaldirik",
+ "notifications": "Jakinarazpenak"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/fa.json b/src/addon/calendar/lang/fa.json
new file mode 100755
index 000000000..76813733c
--- /dev/null
+++ b/src/addon/calendar/lang/fa.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "رویدادهای تقویم",
+ "defaultnotificationtime": "زمان پیشفرض اطلاعرسانی",
+ "errorloadevent": "خطا در بارگیری رویداد.",
+ "errorloadevents": "خطا در بارگیری رویدادها.",
+ "noevents": "هیچ مهلتی برای فعالیتهای آتی وجود ندارد",
+ "notifications": "تذکرات"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/fi.json b/src/addon/calendar/lang/fi.json
new file mode 100755
index 000000000..39534c661
--- /dev/null
+++ b/src/addon/calendar/lang/fi.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Kalenteritapahtumat",
+ "defaultnotificationtime": "Oletusilmoitusaika",
+ "errorloadevent": "Ladattaessa tapahtumaa tapahtui virhe.",
+ "errorloadevents": "Ladattaessa tapahtumia tapahtui virhe.",
+ "noevents": "Ei tulevia aktiviteettien määräaikoja",
+ "notifications": "Ilmoitukset"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/fr.json b/src/addon/calendar/lang/fr.json
new file mode 100755
index 000000000..9281fbdab
--- /dev/null
+++ b/src/addon/calendar/lang/fr.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Événements du calendrier",
+ "defaultnotificationtime": "Heure de notification par défaut",
+ "errorloadevent": "Erreur de chargement de l'événement",
+ "errorloadevents": "Erreur de chargement des événements",
+ "noevents": "Aucune activité",
+ "notifications": "Notifications"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/he.json b/src/addon/calendar/lang/he.json
new file mode 100755
index 000000000..3702664d6
--- /dev/null
+++ b/src/addon/calendar/lang/he.json
@@ -0,0 +1,7 @@
+{
+ "calendarevents": "אירועי לוח שנה",
+ "errorloadevent": "שגיאה בטעינת האירוע.",
+ "errorloadevents": "שגיאה בטעינת האירועים.",
+ "noevents": "לא קיימות פעילויות עתידיות להן מועד הגשה",
+ "notifications": "עדכונים והודעות"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/hr.json b/src/addon/calendar/lang/hr.json
new file mode 100755
index 000000000..c60dbbe4c
--- /dev/null
+++ b/src/addon/calendar/lang/hr.json
@@ -0,0 +1,5 @@
+{
+ "calendarevents": "Događaji u kalendaru",
+ "noevents": "Nema zakazanih budućih aktivnosti",
+ "notifications": "Obavijesti"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/hu.json b/src/addon/calendar/lang/hu.json
new file mode 100755
index 000000000..c353b4458
--- /dev/null
+++ b/src/addon/calendar/lang/hu.json
@@ -0,0 +1,4 @@
+{
+ "noevents": "Nincs esedékes tevékenység",
+ "notifications": "Értesítések"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/it.json b/src/addon/calendar/lang/it.json
new file mode 100755
index 000000000..a156f75ad
--- /dev/null
+++ b/src/addon/calendar/lang/it.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Eventi nel calendario",
+ "defaultnotificationtime": "Orario di notifica di default",
+ "errorloadevent": "Si è verificato un errore durante il caricamento degli eventi.",
+ "errorloadevents": "Si è verificato un errore durante il caricamento degli eventi.",
+ "noevents": "Non ci sono attività con date di svolgimento e/o di scadenza programmate in questo periodo.",
+ "notifications": "Notifiche"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/ja.json b/src/addon/calendar/lang/ja.json
new file mode 100755
index 000000000..8bdfec3c2
--- /dev/null
+++ b/src/addon/calendar/lang/ja.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "カレンダーイベント",
+ "defaultnotificationtime": "デフォルト通知時間",
+ "errorloadevent": "イベントの読み込み時にエラーがありました。",
+ "errorloadevents": "イベントの読み込み時にエラーがありました。",
+ "noevents": "到来する活動期限はありません。",
+ "notifications": "通知"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/ko.json b/src/addon/calendar/lang/ko.json
new file mode 100755
index 000000000..eaf06b122
--- /dev/null
+++ b/src/addon/calendar/lang/ko.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "달력 일정",
+ "defaultnotificationtime": "기본 알림 시간",
+ "errorloadevent": "이벤트 올리기 오류",
+ "errorloadevents": "이벤트 올리기 오류",
+ "noevents": "이벤트 없음",
+ "notifications": "시스템공지"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/lt.json b/src/addon/calendar/lang/lt.json
new file mode 100755
index 000000000..38fab7b87
--- /dev/null
+++ b/src/addon/calendar/lang/lt.json
@@ -0,0 +1,7 @@
+{
+ "calendarevents": "Renginių kalendorius",
+ "errorloadevent": "Klaida įkeliant renginį.",
+ "errorloadevents": "Klaida įkeliant renginius.",
+ "noevents": "Nėra numatytų artėjančių veiklų",
+ "notifications": "Pranešimai"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/mr.json b/src/addon/calendar/lang/mr.json
new file mode 100755
index 000000000..9406719e9
--- /dev/null
+++ b/src/addon/calendar/lang/mr.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "दिनदर्शिका कार्यक्रम",
+ "defaultnotificationtime": "सूचना वेळ",
+ "errorloadevent": "कार्यक्रम लोड करताना त्रुटी.",
+ "errorloadevents": "कार्यक्रम लोड करताना त्रुटी.",
+ "noevents": "कोणतेही कार्यक्रम नाहीत",
+ "notifications": "अधिसुचना"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/nl.json b/src/addon/calendar/lang/nl.json
new file mode 100755
index 000000000..16546e8a4
--- /dev/null
+++ b/src/addon/calendar/lang/nl.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Kalendergebeurtenissen",
+ "defaultnotificationtime": "Standaard notificatietijd",
+ "errorloadevent": "Fout bij het laden van de gebeurtenis.",
+ "errorloadevents": "Fout bij het laden van de gebeurtenissen.",
+ "noevents": "Er zijn geen verwachte activiteiten",
+ "notifications": "Meldingen"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/no.json b/src/addon/calendar/lang/no.json
new file mode 100755
index 000000000..802154285
--- /dev/null
+++ b/src/addon/calendar/lang/no.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Kalenderhendelser",
+ "defaultnotificationtime": "Standard varslingstid",
+ "errorloadevent": "Feil ved lasting av hendelse",
+ "errorloadevents": "Feil ved lasting av hendelser",
+ "noevents": "Det er ingen aktiviteter som må gjøres i nærmeste fremtid.",
+ "notifications": "Meldinger"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/pl.json b/src/addon/calendar/lang/pl.json
new file mode 100755
index 000000000..4f391781a
--- /dev/null
+++ b/src/addon/calendar/lang/pl.json
@@ -0,0 +1,4 @@
+{
+ "noevents": "Brak nadchodzących terminów zadań",
+ "notifications": "Powiadomienia"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/pt-br.json b/src/addon/calendar/lang/pt-br.json
new file mode 100755
index 000000000..f66b11184
--- /dev/null
+++ b/src/addon/calendar/lang/pt-br.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Eventos do calendário",
+ "defaultnotificationtime": "Tempo de notificação padrão",
+ "errorloadevent": "Erro ao carregar evento.",
+ "errorloadevents": "Erro ao carregar eventos.",
+ "noevents": "Não há atividades pendentes",
+ "notifications": "Avisos"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/pt.json b/src/addon/calendar/lang/pt.json
new file mode 100755
index 000000000..a65b11f46
--- /dev/null
+++ b/src/addon/calendar/lang/pt.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Eventos do calendário",
+ "defaultnotificationtime": "Hora de notificação predefinida",
+ "errorloadevent": "Erro ao carregar evento.",
+ "errorloadevents": "Erro ao carregar eventos.",
+ "noevents": "Nenhuma atividade programada",
+ "notifications": "Notificações"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/ro.json b/src/addon/calendar/lang/ro.json
new file mode 100755
index 000000000..93994c867
--- /dev/null
+++ b/src/addon/calendar/lang/ro.json
@@ -0,0 +1,7 @@
+{
+ "calendarevents": "Evenimente din calendar",
+ "errorloadevent": "Eroare la încărcarea unui eveniment.",
+ "errorloadevents": "Eroare la încărcarea unor evenimente.",
+ "noevents": "Nu sunt evenimente noi",
+ "notifications": "Notificări"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/ru.json b/src/addon/calendar/lang/ru.json
new file mode 100755
index 000000000..3a1b1bf3b
--- /dev/null
+++ b/src/addon/calendar/lang/ru.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "События календаря",
+ "defaultnotificationtime": "Время уведомлений по умолчанию",
+ "errorloadevent": "Ошибка при загрузке события",
+ "errorloadevents": "Ошибка при загрузке событий",
+ "noevents": "Окончаний сроков сдачи элементов курса в ближайшее время нет.",
+ "notifications": "Уведомления"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/sr-cr.json b/src/addon/calendar/lang/sr-cr.json
new file mode 100755
index 000000000..dba4ebcd8
--- /dev/null
+++ b/src/addon/calendar/lang/sr-cr.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Догађаји у календару",
+ "defaultnotificationtime": "Подразумевано време за слање обавештења",
+ "errorloadevent": "Грешка приликом учитавања догађаја.",
+ "errorloadevents": "Грешка приликом учитавања догађаја.",
+ "noevents": "Нема догађаја",
+ "notifications": "Обавештења"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/sr-lt.json b/src/addon/calendar/lang/sr-lt.json
new file mode 100755
index 000000000..7db382ef5
--- /dev/null
+++ b/src/addon/calendar/lang/sr-lt.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Događaji u kalendaru",
+ "defaultnotificationtime": "Podrazumevano vreme za slanje obaveštenja",
+ "errorloadevent": "Greška prilikom učitavanja događaja.",
+ "errorloadevents": "Greška prilikom učitavanja događaja.",
+ "noevents": "Nema događaja",
+ "notifications": "Nema događaja"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/sv.json b/src/addon/calendar/lang/sv.json
new file mode 100755
index 000000000..28354a807
--- /dev/null
+++ b/src/addon/calendar/lang/sv.json
@@ -0,0 +1,7 @@
+{
+ "calendarevents": "Kalenderhändelser",
+ "errorloadevent": "Fel vid inläsning av händelse.",
+ "errorloadevents": "Fel vid inläsning av händelser",
+ "noevents": "Inga deadlines för aktiviteter",
+ "notifications": "Administration"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/tg.json b/src/addon/calendar/lang/tg.json
new file mode 100755
index 000000000..7e90c8337
--- /dev/null
+++ b/src/addon/calendar/lang/tg.json
@@ -0,0 +1,5 @@
+{
+ "calendarevents": "Чорабиниҳои тақвимӣ",
+ "noevents": "Ҳеҷ фаъолияти омадаистода нест",
+ "notifications": "Огоҳиҳо"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/tr.json b/src/addon/calendar/lang/tr.json
new file mode 100755
index 000000000..56b4ccb35
--- /dev/null
+++ b/src/addon/calendar/lang/tr.json
@@ -0,0 +1,4 @@
+{
+ "noevents": "Hiç bildiriminiz yok",
+ "notifications": "Bildirimler"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/uk.json b/src/addon/calendar/lang/uk.json
new file mode 100755
index 000000000..e0b616f24
--- /dev/null
+++ b/src/addon/calendar/lang/uk.json
@@ -0,0 +1,8 @@
+{
+ "calendarevents": "Події календаря",
+ "defaultnotificationtime": "Час сповіщень за-замовчуванням",
+ "errorloadevent": "Помилка завантаження події.",
+ "errorloadevents": "Помилка завантаження подій.",
+ "noevents": "Наразі, заплановані активності відсутні",
+ "notifications": "Повідомлення"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/zh-cn.json b/src/addon/calendar/lang/zh-cn.json
new file mode 100755
index 000000000..5fc1088f4
--- /dev/null
+++ b/src/addon/calendar/lang/zh-cn.json
@@ -0,0 +1,4 @@
+{
+ "noevents": "没有事件",
+ "notifications": "通知"
+}
\ No newline at end of file
diff --git a/src/addon/calendar/lang/zh-tw.json b/src/addon/calendar/lang/zh-tw.json
new file mode 100755
index 000000000..f880be3d5
--- /dev/null
+++ b/src/addon/calendar/lang/zh-tw.json
@@ -0,0 +1,7 @@
+{
+ "calendarevents": "行事曆",
+ "errorloadevent": "載入事件時出現錯誤",
+ "errorloadevents": "載入事件時出現錯誤",
+ "noevents": "沒有事件",
+ "notifications": "通知"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/ar.json b/src/addon/competency/lang/ar.json
new file mode 100755
index 000000000..5952485e9
--- /dev/null
+++ b/src/addon/competency/lang/ar.json
@@ -0,0 +1,11 @@
+{
+ "activities": "الأنشطة",
+ "duedate": "تاريخ تقديم مهمة",
+ "errornocompetenciesfound": "لا يوجد أي قدرات موجودة",
+ "myplans": "خططي للتعلم",
+ "nocompetencies": "لا يوجد أي قدرات",
+ "path": "مسار",
+ "progress": "تقدّم الطالب",
+ "status": "الحالة",
+ "template": "قالب"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/bg.json b/src/addon/competency/lang/bg.json
new file mode 100755
index 000000000..5b003195a
--- /dev/null
+++ b/src/addon/competency/lang/bg.json
@@ -0,0 +1,16 @@
+{
+ "activities": "Дейности",
+ "competencies": "Компетенции",
+ "coursecompetencies": "Компетенции на курса",
+ "duedate": "Краен срок",
+ "learningplans": "Учебни планове",
+ "myplans": "Моите учебни планове",
+ "noplanswerecreated": "Не бяха създадени учебни планове.",
+ "path": "Път",
+ "planstatusactive": "Активен",
+ "planstatuscomplete": "Завършен",
+ "planstatusdraft": "Чернова",
+ "status": "Състояние",
+ "template": "Шаблон",
+ "userplans": "Учебни планове"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/ca.json b/src/addon/competency/lang/ca.json
new file mode 100755
index 000000000..93bcee24b
--- /dev/null
+++ b/src/addon/competency/lang/ca.json
@@ -0,0 +1,45 @@
+{
+ "activities": "Activitats",
+ "competencies": "Competències",
+ "competenciesmostoftennotproficientincourse": "Competències que més sovint no s'assoleixen en aquest curs",
+ "coursecompetencies": "Competències del curs",
+ "crossreferencedcompetencies": "Competències referenciades",
+ "duedate": "Data de venciment",
+ "errornocompetenciesfound": "No s'han trobat competències",
+ "evidence": "Evidència",
+ "evidence_competencyrule": "La regla de competència s'ha satisfet.",
+ "evidence_coursecompleted": "S'ha completat el curs '{{$a}}'.",
+ "evidence_coursemodulecompleted": "S'ha completat l'activitat '{{$a}}'.",
+ "evidence_courserestored": "La qualificació ha estat restaurada juntament amb el curs «{{$a}}».",
+ "evidence_evidenceofpriorlearninglinked": "S'ha enllaçat l'evidència de l'aprenentatge previ «{{$a}}».",
+ "evidence_evidenceofpriorlearningunlinked": "S'ha desenllaçat l'evidència de l'aprenentatge previ «{{$a}}».",
+ "evidence_manualoverride": "S'ha configurat de forma manual la qualificació de la competència.",
+ "evidence_manualoverrideincourse": "S'ha configurat de forma manual la qualificació de la competència al curs «{{$a}}».",
+ "evidence_manualoverrideinplan": "S'ha configurat de forma manual la qualificació de la competència al pla d'aprenentatge «{{$a}}».",
+ "learningplancompetencies": "Competències del pla d'aprenentatge",
+ "learningplans": "Plans d'aprenentatge",
+ "myplans": "Els meus plans d'aprenentatge",
+ "noactivities": "Cap activitat",
+ "nocompetencies": "No s'han creat competències en aquest marc.",
+ "nocrossreferencedcompetencies": "No hi ha competències amb referències a aquesta.",
+ "noevidence": "Cap evidència",
+ "noplanswerecreated": "No s'ha creat cap pla d'aprenentatge.",
+ "path": "Ruta:",
+ "planstatusactive": "Activa",
+ "planstatuscomplete": "Completat",
+ "planstatusdraft": "Esborrany",
+ "planstatusinreview": "En revisió",
+ "planstatuswaitingforreview": "S'està esperant la revisió",
+ "proficient": "Superada",
+ "progress": "Progrés",
+ "rating": "Qualificació",
+ "reviewstatus": "Estat de la revisió",
+ "status": "Estat",
+ "template": "Plantilla de pla d'aprenentatge",
+ "usercompetencystatus_idle": "Inactiu",
+ "usercompetencystatus_inreview": "En revisió",
+ "usercompetencystatus_waitingforreview": "Esperant a ser revisat",
+ "userplans": "Plans d'aprenentatge",
+ "xcompetenciesproficientoutofy": "{{$a.x}} de {{$a.y}} competències superades",
+ "xcompetenciesproficientoutofyincourse": "Heu superat {{$a.x}} de {{$a.y}} competències en aquest curs."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/cs.json b/src/addon/competency/lang/cs.json
new file mode 100755
index 000000000..471bc29a7
--- /dev/null
+++ b/src/addon/competency/lang/cs.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Činnosti",
+ "competencies": "Kompetence",
+ "competenciesmostoftennotproficientincourse": "Kompetence v tomto kurzu často nejsou dosaženy",
+ "coursecompetencies": "Kompetence kurzu",
+ "coursecompetencyratingsarenotpushedtouserplans": "Hodnocení kompetencí v tomto kurzu nemají vliv na studijní plány.",
+ "coursecompetencyratingsarepushedtouserplans": "Hodnocení kompetencí v tomto kurzu jsou okamžitě aktualizovány v studijních plánech.",
+ "crossreferencedcompetencies": "Průřezové kompetence",
+ "duedate": "Termín odevzdání",
+ "errornocompetenciesfound": "Nebyly nalezeny žádné kompetence",
+ "evidence": "Evidence",
+ "evidence_competencyrule": "Bylo splněno pravidlo kompetence.",
+ "evidence_coursecompleted": "Kurz \"{{$a}}\" byl dokončen.",
+ "evidence_coursemodulecompleted": "Byla dokončena aktivita \"{{$a}}\".",
+ "evidence_courserestored": "Hodnocení bylo obnoveno spolu s \"{{$a}}\".",
+ "evidence_evidenceofpriorlearninglinked": "Evidence předchozího studia \"{{$a}}\" byla připojena.",
+ "evidence_evidenceofpriorlearningunlinked": "Evidence předchozího studia \"{{$a}}\" byla odpojena.",
+ "evidence_manualoverride": "Hodnocení kompetence bylo nastaveno manuálně.",
+ "evidence_manualoverrideincourse": "Hodnocení kompetence bylo nastaveno manuálně v kurzu \"{{$a}}\".",
+ "evidence_manualoverrideinplan": "Hodnocení kompetence bylo nastaveno manuálně ve studijním plánu \"{{$a}}\".",
+ "learningplancompetencies": "Kompetence studijního plánu",
+ "learningplans": "Studijní plány",
+ "myplans": "Mé studijní plány",
+ "noactivities": "Žádné činnosti",
+ "nocompetencies": "V tomto rámci nebyly vytvořeny žádné kompetence.",
+ "nocrossreferencedcompetencies": "K této kompetenci nebyly spojeny další průřezové kompetence.",
+ "noevidence": "Bez záznamu",
+ "noplanswerecreated": "Nebyly vytvořeny žádné studijní plány.",
+ "path": "Cesta:",
+ "planstatusactive": "Aktivní",
+ "planstatuscomplete": "Dokončeno",
+ "planstatusdraft": "Návrh",
+ "planstatusinreview": "V revizi",
+ "planstatuswaitingforreview": "Čekání na revizi",
+ "proficient": "Splněno",
+ "progress": "Pokrok",
+ "rating": "Hodnocení",
+ "reviewstatus": "Stav revize",
+ "status": "Stav",
+ "template": "Šablona studijního plánu",
+ "usercompetencystatus_idle": "Nečinný",
+ "usercompetencystatus_inreview": "V revizi",
+ "usercompetencystatus_waitingforreview": "Čekání na revizi",
+ "userplans": "Studijní plány",
+ "xcompetenciesproficientoutofy": "máte splněno {{$a.x}} z {{$a.y}} kompetencí",
+ "xcompetenciesproficientoutofyincourse": "V tomto kurzu máte splněno {{$a.x}} z {{$a.y}} kompetencí."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/da.json b/src/addon/competency/lang/da.json
new file mode 100755
index 000000000..f595f9ae9
--- /dev/null
+++ b/src/addon/competency/lang/da.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Aktiviteter",
+ "competencies": "Kompetencer",
+ "competenciesmostoftennotproficientincourse": "Kompetencer der ofte \"halter\" på dette kursus",
+ "coursecompetencies": "Kursuskompetencer",
+ "coursecompetencyratingsarenotpushedtouserplans": "Kompetencebedømmelser på dette kursus påvirker ikke læringsplaner.",
+ "coursecompetencyratingsarepushedtouserplans": "Kompetencebedømmelser på dette kursus opdateres straks i læringsplaner.",
+ "crossreferencedcompetencies": "Kryds-refererede kompetencer",
+ "duedate": "Afleveringsdato",
+ "errornocompetenciesfound": "Ingen kompetencer fundet",
+ "evidence": "Vidnesbyrd",
+ "evidence_competencyrule": "Kompetencereglen blev opfyldt.",
+ "evidence_coursecompleted": "Kurset \"{{$a}}\" var fuldført.",
+ "evidence_coursemodulecompleted": "Aktiviteten \"{{$a}}\" var fuldført.",
+ "evidence_courserestored": "Vurderingen blev gendannet sammen med kurset \"{{$a}}\".",
+ "evidence_evidenceofpriorlearninglinked": "Vidnesbyrd om forudgående læring \"{{$a}}\" var linket.",
+ "evidence_evidenceofpriorlearningunlinked": "Link til vidnesbyrd om forudgående læring \"{{$a}}\" var fjernet.",
+ "evidence_manualoverride": "Kompetencevurderingen blev foretaget manuelt.",
+ "evidence_manualoverrideincourse": "Kompetencevurderingen blev foretaget manuelt på kurset \"{{$a}}\".",
+ "evidence_manualoverrideinplan": "Kompetencevurderingen blev foretaget manuelt i læringsplanen \"{{$a}}\".",
+ "learningplancompetencies": "Læringsplankompetencer",
+ "learningplans": "Læringsplaner",
+ "myplans": "Mine læringsplaner",
+ "noactivities": "Ingen aktiviteter",
+ "nocompetencies": "Ingen kompetencer er oprettet i denne ramme.",
+ "nocrossreferencedcompetencies": "Ingen andre kompetencer er krydsrefereret til denne kompetence.",
+ "noevidence": "Ingen vidnesbyrd",
+ "noplanswerecreated": "Der blev ikke oprettet nogen læringsplaner.",
+ "path": "Sti:",
+ "planstatusactive": "Aktiv",
+ "planstatuscomplete": "Fuldført",
+ "planstatusdraft": "Kladde",
+ "planstatusinreview": "I gennemsyn",
+ "planstatuswaitingforreview": "Venter på gennemsyn",
+ "proficient": "Færdighedsniveau",
+ "progress": "Progression",
+ "rating": "Bedømmelse",
+ "reviewstatus": "Status på gennemsyn",
+ "status": "Status",
+ "template": "Læringsplanskabelon",
+ "usercompetencystatus_idle": "Tom",
+ "usercompetencystatus_inreview": "I gennemsyn",
+ "usercompetencystatus_waitingforreview": "Afventer gennemsyn",
+ "userplans": "Læringsplaner",
+ "xcompetenciesproficientoutofy": "{{$a.x}} ud af {{$a.y}} kompetencer er på færdighedsniveau",
+ "xcompetenciesproficientoutofyincourse": "Du har opnået færdighedsniveau {{$a.x}} ud af {{$a.y}} kompetencer på dette kursus."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/de-du.json b/src/addon/competency/lang/de-du.json
new file mode 100755
index 000000000..eeb5102e8
--- /dev/null
+++ b/src/addon/competency/lang/de-du.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Aktivitäten",
+ "competencies": "Kompetenzen",
+ "competenciesmostoftennotproficientincourse": "Meist ungeübte Kompetenzen in diesem Kurs",
+ "coursecompetencies": "Kurskompetenzen",
+ "coursecompetencyratingsarenotpushedtouserplans": "Kompetenzbewertungen in diesem Kurs beeinflussen keine Lernpläne.",
+ "coursecompetencyratingsarepushedtouserplans": "Kompetenzbewertungen in diesem Kurs werden sofort in den Lernplänen aktualisiert.",
+ "crossreferencedcompetencies": "Querverwiesene Kompetenzen",
+ "duedate": "Fälligkeitsdatum",
+ "errornocompetenciesfound": "Keine Kompetenzen gefunden",
+ "evidence": "Beleg",
+ "evidence_competencyrule": "Die Kompetenzregel wurde erfüllt.",
+ "evidence_coursecompleted": "Der Kurs '{{$a}}' wurde abgeschlossen.",
+ "evidence_coursemodulecompleted": "Die Aktivität '{{$a}}' wurde abgeschlossen.",
+ "evidence_courserestored": "Die Bewertung wurde zusammen mit dem Kurs '{{$a}}' wiederhergestellt.",
+ "evidence_evidenceofpriorlearninglinked": "Der Beleg über Vorkenntnisse '{{$a}}' wurde verlinkt.",
+ "evidence_evidenceofpriorlearningunlinked": "Der Beleg über Vorkenntnisse '{{$a}}' wurde freigegeben.",
+ "evidence_manualoverride": "Die Kompetenzbewertung wurde manuell vergeben.",
+ "evidence_manualoverrideincourse": "Die Kompetenzbewertung wurde manuell im Kurs '{{$a}}' vorgenommen.",
+ "evidence_manualoverrideinplan": "Die Kompetenzbewertung wurde manuell im Lernplan '{{$a}}' vorgenommen.",
+ "learningplancompetencies": "Kompetenzen des Lernplans",
+ "learningplans": "Lernpläne",
+ "myplans": "Meine Lernpläne",
+ "noactivities": "Keine Aktivitäten",
+ "nocompetencies": "Für diesen Kompetenzrahmen wurden keine Kompetenzen angelegt.",
+ "nocrossreferencedcompetencies": "Keine anderen Kompetenzen wurden zu dieser Kompetenz referiert.",
+ "noevidence": "Keine Belege",
+ "noplanswerecreated": "Bisher sind keine Lernpläne angelegt.",
+ "path": "Pfad:",
+ "planstatusactive": "Aktiv",
+ "planstatuscomplete": "Vollständig",
+ "planstatusdraft": "Entwurf",
+ "planstatusinreview": "Überprüfung läuft",
+ "planstatuswaitingforreview": "Überprüfung abwarten",
+ "proficient": "Erfahren",
+ "progress": "Fortschritt",
+ "rating": "Wertung",
+ "reviewstatus": "Überprüfungsstatus",
+ "status": "Status",
+ "template": "Lernplanvorlage",
+ "usercompetencystatus_idle": "Abwarten",
+ "usercompetencystatus_inreview": "Überprüfung läuft",
+ "usercompetencystatus_waitingforreview": "Überprüfung abwarten",
+ "userplans": "Lernpläne",
+ "xcompetenciesproficientoutofy": "{{$a.x}} von {{$a.y}} Kompetenzen sind eingeübt",
+ "xcompetenciesproficientoutofyincourse": "Sie sind in {{$a.x}} von {{$a.y}} Kompetenzen geübt."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/de.json b/src/addon/competency/lang/de.json
new file mode 100755
index 000000000..2fbe029fe
--- /dev/null
+++ b/src/addon/competency/lang/de.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Aktivitäten",
+ "competencies": "Kompetenzen",
+ "competenciesmostoftennotproficientincourse": "Meist ungeübte Kompetenzen in diesem Kurs",
+ "coursecompetencies": "Kurskompetenzen",
+ "coursecompetencyratingsarenotpushedtouserplans": "Kompetenzbewertungen in diesem Kurs beeinflussen keine Lernpläne.",
+ "coursecompetencyratingsarepushedtouserplans": "Kompetenzbewertungen in diesem Kurs werden sofort in den Lernplänen aktualisiert.",
+ "crossreferencedcompetencies": "Querverwiesene Kompetenzen",
+ "duedate": "Fälligkeitsdatum",
+ "errornocompetenciesfound": "Keine Kompetenzen gefunden",
+ "evidence": "Beleg",
+ "evidence_competencyrule": "Die Kompetenzregel wurde erfüllt.",
+ "evidence_coursecompleted": "Der Kurs '{{$a}}' wurde abgeschlossen.",
+ "evidence_coursemodulecompleted": "Die Aktivität '{{$a}}' wurde abgeschlossen.",
+ "evidence_courserestored": "Die Bewertung wurde zusammen mit dem Kurs '{{$a}}' wiederhergestellt.",
+ "evidence_evidenceofpriorlearninglinked": "Der Beleg über Vorkenntnisse '{{$a}}' wurde verlinkt.",
+ "evidence_evidenceofpriorlearningunlinked": "Der Beleg über Vorkenntnisse '{{$a}}' wurde freigegeben.",
+ "evidence_manualoverride": "Die Kompetenzbewertung wurde manuell vergeben.",
+ "evidence_manualoverrideincourse": "Die Kompetenzbewertung wurde manuell im Kurs '{{$a}}' vorgenommen.",
+ "evidence_manualoverrideinplan": "Die Kompetenzbewertung wurde manuell im Lernplan '{{$a}}' vorgenommen.",
+ "learningplancompetencies": "Kompetenzen des Lernplans",
+ "learningplans": "Lernpläne",
+ "myplans": "Meine Lernpläne",
+ "noactivities": "Keine Aktivitäten",
+ "nocompetencies": "Keine Kompetenzen",
+ "nocrossreferencedcompetencies": "Keine anderen Kompetenzen wurden zu dieser Kompetenz referiert.",
+ "noevidence": "Keine Belege",
+ "noplanswerecreated": "Bisher sind keine Lernpläne angelegt.",
+ "path": "Pfad:",
+ "planstatusactive": "Aktiv",
+ "planstatuscomplete": "Vollständig",
+ "planstatusdraft": "Entwurf",
+ "planstatusinreview": "Überprüfung läuft",
+ "planstatuswaitingforreview": "Überprüfung abwarten",
+ "proficient": "Erfahren",
+ "progress": "Fortschritt",
+ "rating": "Wertung",
+ "reviewstatus": "Überprüfungsstatus",
+ "status": "Status",
+ "template": "Lernplanvorlage",
+ "usercompetencystatus_idle": "Abwarten",
+ "usercompetencystatus_inreview": "Überprüfung läuft",
+ "usercompetencystatus_waitingforreview": "Überprüfung abwarten",
+ "userplans": "Lernpläne",
+ "xcompetenciesproficientoutofy": "{{$a.x}} von {{$a.y}} Kompetenzen sind eingeübt",
+ "xcompetenciesproficientoutofyincourse": "Sie sind in {{$a.x}} von {{$a.y}} Kompetenzen geübt."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/el.json b/src/addon/competency/lang/el.json
new file mode 100755
index 000000000..ccc76e104
--- /dev/null
+++ b/src/addon/competency/lang/el.json
@@ -0,0 +1,10 @@
+{
+ "activities": "Δραστηριότητες",
+ "duedate": "Καταληκτική ημερομηνία",
+ "errornocompetenciesfound": "Δεν βρέθηκαν ικανότητες",
+ "nocompetencies": "Δεν βρέθηκαν ικανότητες",
+ "path": "Διαδρομή",
+ "progress": "Πρόοδος μαθητών",
+ "status": "Επιτρέπεται η πρόσβαση στους επισκέπτες",
+ "template": "Πρότυπο"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/es-mx.json b/src/addon/competency/lang/es-mx.json
new file mode 100755
index 000000000..e3cf26a96
--- /dev/null
+++ b/src/addon/competency/lang/es-mx.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Actividades",
+ "competencies": "Competencias",
+ "competenciesmostoftennotproficientincourse": "Las competencias que con más frecuencia no están dominadas en este curso",
+ "coursecompetencies": "Competencias del curso",
+ "coursecompetencyratingsarenotpushedtouserplans": "Las valoraciones de competencia en este curso no afectan a los planes de aprendizaje.",
+ "coursecompetencyratingsarepushedtouserplans": "Las valoraciones de competencia en este curso son actualizadas inmediatamente dentro de planes de aprendizaje.",
+ "crossreferencedcompetencies": "Competencias con referencias-cruzadas",
+ "duedate": "Fecha de entrega",
+ "errornocompetenciesfound": "No se encontraron competencias",
+ "evidence": "Evidencia",
+ "evidence_competencyrule": "Se cumplió la regla de la competencia.",
+ "evidence_coursecompleted": "El curso '{{$a}}' fue completado.",
+ "evidence_coursemodulecompleted": "La actividad '{{$a}}' fue completada.",
+ "evidence_courserestored": "La valoración fue restaurada junto con el curso '{{$a}}'.",
+ "evidence_evidenceofpriorlearninglinked": "La evidencia de aprendizaje previo '{{$a}}' fue enlazada.",
+ "evidence_evidenceofpriorlearningunlinked": "La evidencia de aprendizaje previo '{{$a}}' fue des-enlazada.",
+ "evidence_manualoverride": "La valoración de competencia fue configurada manualmente.",
+ "evidence_manualoverrideincourse": "La valoración de competencia fue configurada manualmente en el curso '{{$a}}'.",
+ "evidence_manualoverrideinplan": "La valoración de competencia fue configurada manualmente en el plan de aprendizaje '{{$a}}'.",
+ "learningplancompetencies": "Competencias del plan de aprendizaje",
+ "learningplans": "Planes de aprendizaje",
+ "myplans": "Mis planes de aprendizaje",
+ "noactivities": "Sin actividades",
+ "nocompetencies": "No se han creado competencias en esta estructura.",
+ "nocrossreferencedcompetencies": "No se han referenciado cruzadamente otras competencias con esta competencia.",
+ "noevidence": "Sin evidencia",
+ "noplanswerecreated": "No se crearon planes de aprendizaje.",
+ "path": "Ruta:",
+ "planstatusactive": "Activa/o",
+ "planstatuscomplete": "Completo",
+ "planstatusdraft": "Borrador",
+ "planstatusinreview": "En revisión",
+ "planstatuswaitingforreview": "Esperando para revisión",
+ "proficient": "Dominio/pericia",
+ "progress": "Progreso",
+ "rating": "Valoración",
+ "reviewstatus": "Revisar estatus",
+ "status": "Estatus",
+ "template": "Plantilla de plan de aprendizaje",
+ "usercompetencystatus_idle": "desocupado",
+ "usercompetencystatus_inreview": "En revisión",
+ "usercompetencystatus_waitingforreview": "Esperando para revisión",
+ "userplans": "Planes de aprendizaje",
+ "xcompetenciesproficientoutofy": "{{$a.x}} de un total de {{$a.y}} competencias se tienen dominadas",
+ "xcompetenciesproficientoutofyincourse": "Usted es capaz/perito/experto en {{$a.x}} de un total de {{$a.y}} competencias en este curso."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/es.json b/src/addon/competency/lang/es.json
new file mode 100755
index 000000000..53b3162fa
--- /dev/null
+++ b/src/addon/competency/lang/es.json
@@ -0,0 +1,39 @@
+{
+ "activities": "Actividades",
+ "competencies": "Competencias",
+ "competenciesmostoftennotproficientincourse": "Competencias que más a menudo no se superan en este curso",
+ "coursecompetencies": "Competencias del curso",
+ "coursecompetencyratingsarenotpushedtouserplans": "Las calificaciones de competencias de este curso no afectan los planes de aprendizaje.",
+ "coursecompetencyratingsarepushedtouserplans": "Las calificaciones de competencias en este curso actualizan de inmediato los planes de aprendizaje.",
+ "crossreferencedcompetencies": "Competencias referenciadas",
+ "duedate": "Fecha de entrega",
+ "errornocompetenciesfound": "No se encontraron competencias",
+ "evidence": "Evidencia",
+ "evidence_coursecompleted": "El curso '{{$a}}' ha sido completado.",
+ "evidence_coursemodulecompleted": "La actividad '{{$a}}' ha sido completada.",
+ "learningplancompetencies": "Competencias del plan de aprendizaje",
+ "learningplans": "Planes de aprendizaje",
+ "myplans": "Mis planes de aprendizaje",
+ "noactivities": "Sin actividades",
+ "nocompetencies": "No se han creado competencias para este marco.",
+ "nocrossreferencedcompetencies": "No se han referenciado otras competencias a esta competencia.",
+ "noevidence": "Sin evidencias",
+ "path": "Ruta",
+ "planstatusactive": "Activo",
+ "planstatuscomplete": "Completado",
+ "planstatusdraft": "Borrador",
+ "planstatusinreview": "En revisión",
+ "planstatuswaitingforreview": "Esperando revisión",
+ "proficient": "Superada",
+ "progress": "Avance",
+ "rating": "Calificación",
+ "reviewstatus": "Estado de la revisión",
+ "status": "Estado",
+ "template": "Plantilla",
+ "usercompetencystatus_idle": "No activo",
+ "usercompetencystatus_inreview": "En revision",
+ "usercompetencystatus_waitingforreview": "Esperando revisión",
+ "userplans": "Planes de aprendizaje",
+ "xcompetenciesproficientoutofy": "{{$a.x}} de {{$a.y}} competencias superadas",
+ "xcompetenciesproficientoutofyincourse": "Has superado {{$a.x}} de las {{$a.y}} competencias del curso."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/eu.json b/src/addon/competency/lang/eu.json
new file mode 100755
index 000000000..b17c66ef8
--- /dev/null
+++ b/src/addon/competency/lang/eu.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Jarduerak",
+ "competencies": "Gaitasunak",
+ "competenciesmostoftennotproficientincourse": "Ikastaro honetan sarriago ez-gai diren gaitasunak",
+ "coursecompetencies": "Ikastaroko gaitasunak",
+ "coursecompetencyratingsarenotpushedtouserplans": "Ikastaro honetako gaitasunen kalifikazioek ez dute ikasketa-planean eragiten.",
+ "coursecompetencyratingsarepushedtouserplans": "Ikastaro honetan gaitasunen kalifikazioek ikasketa-planak berehala eguneratzen dituzte.",
+ "crossreferencedcompetencies": "Erreferentzia gurutzatuko gaitasunak",
+ "duedate": "Entregatze-data",
+ "errornocompetenciesfound": "Ez da gaitasunik aurkitu",
+ "evidence": "Ebidentzia",
+ "evidence_competencyrule": "Gaitasun-araua bete da.",
+ "evidence_coursecompleted": "'{{$a}}' ikastaroa osatu da.",
+ "evidence_coursemodulecompleted": "'{{$a}}' jarduera osatu da.",
+ "evidence_courserestored": "Puntuazioak '{{$a}}' ikastaroarekin batera berreskuratu ziren.",
+ "evidence_evidenceofpriorlearninglinked": "Aurretik ikasitakoaren '{{$a}}' ebidentzia estekatu da.",
+ "evidence_evidenceofpriorlearningunlinked": "Aurretik ikasitakoaren '{{$a}}' ebidentziaren esteka kendu da.",
+ "evidence_manualoverride": "Gaitasunen puntuazioa eskuz ezarri da.",
+ "evidence_manualoverrideincourse": "Gaitasunen puntuazioa eskuz ezarri da '{{$a}}' ikastaroan.",
+ "evidence_manualoverrideinplan": "Gaitasunen puntuazioa eskuz ezarri da '{{$a}}' ikasketa-planean.",
+ "learningplancompetencies": "Ikasketa-planaren gaitasunak",
+ "learningplans": "Ikasketa-planak",
+ "myplans": "Nire ikasketa-planak",
+ "noactivities": "Ez dago jarduerarik",
+ "nocompetencies": "Gaitasunik ez",
+ "nocrossreferencedcompetencies": "Ez dago gaitasun honekiko erreferentzia gurutzatua duen beste gaitasunik.",
+ "noevidence": "Ez dago ebidentziarik",
+ "noplanswerecreated": "Ez da ikasketa-planik sortu.",
+ "path": "Bidea:",
+ "planstatusactive": "Aktiboa",
+ "planstatuscomplete": "Osatu",
+ "planstatusdraft": "Zirriborroa",
+ "planstatusinreview": "Berrikusten",
+ "planstatuswaitingforreview": "Berrikusketaren zain",
+ "proficient": "Gai",
+ "progress": "Aurrerapena",
+ "rating": "Puntuazioa",
+ "reviewstatus": "Berrikusi egora",
+ "status": "Egoera",
+ "template": "Ikasketa-planerako txantiloia",
+ "usercompetencystatus_idle": "Ez dago aktiboa",
+ "usercompetencystatus_inreview": "Berrikusten",
+ "usercompetencystatus_waitingforreview": "Berrikusketaren zain",
+ "userplans": "Ikasketa-planak",
+ "xcompetenciesproficientoutofy": "{{$a.y}} gaitasunetik {{$a.x}} gai dira",
+ "xcompetenciesproficientoutofyincourse": "Ikastaro honetako {{$a.y}} gaitasunetik {{$a.x}}-tan zara gai."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/fa.json b/src/addon/competency/lang/fa.json
new file mode 100755
index 000000000..1ae776420
--- /dev/null
+++ b/src/addon/competency/lang/fa.json
@@ -0,0 +1,44 @@
+{
+ "activities": "فعالیتها",
+ "competencies": "شایستگیها",
+ "coursecompetencies": "شایستگیهای درس",
+ "coursecompetencyratingsarenotpushedtouserplans": "امتیازهای شایستگیها در این درس تاثیری در برنامههای یادگیری ندارند.",
+ "coursecompetencyratingsarepushedtouserplans": "امتیازهای شایستگیها در این درس بلافاصله در برنامههای یادگیری بهروز میشوند.",
+ "crossreferencedcompetencies": "شایستگیهای دارای ارجاع متقابل",
+ "duedate": "مهلت تحویل",
+ "errornocompetenciesfound": "هیچ شایستگیای پیدا نشد",
+ "evidence": "مدرک",
+ "evidence_competencyrule": "شرط شایستگی برقرار شد.",
+ "evidence_coursecompleted": "درس «{{$a}}» کامل شد.",
+ "evidence_coursemodulecompleted": "فعالیت «{{$a}}» کامل شد.",
+ "evidence_courserestored": "امتیاز همراه با درس «{{$a}}» بازیابی شد.",
+ "evidence_evidenceofpriorlearninglinked": "مدرک یادگیری قبلی «{{$a}}» متصل شد.",
+ "evidence_evidenceofpriorlearningunlinked": "مدرک یادگیری قبلی «{{$a}}» قطع اتصال شد.",
+ "evidence_manualoverride": "امتیاز شایستگی بهطور دستی تعیین شد.",
+ "evidence_manualoverrideincourse": "امتیاز شایستگی بهطور دستی در درس «{{$a}}» تعیین شد.",
+ "evidence_manualoverrideinplan": "امتیاز شایستگی بهطور دستی در برنامهٔ یادگیری «{{$a}}» تعیین شد.",
+ "learningplancompetencies": "شایستگیهای برنامه یادگیری",
+ "learningplans": "برنامههای آزموشی",
+ "myplans": "برنامههای یادگیری من",
+ "nocrossreferencedcompetencies": "هیچ شایستگی دیگری به این شایستگی بهطور متقابل ارجاع داده نشده است.",
+ "noevidence": "بدون مدرک",
+ "noplanswerecreated": "هیچ برنامهٔ یادگیریای ساخته نشده است.",
+ "path": "مسیر:",
+ "planstatusactive": "فعال",
+ "planstatuscomplete": "کامل",
+ "planstatusdraft": "پیشنویس",
+ "planstatusinreview": "درحال بازبینی",
+ "planstatuswaitingforreview": "در انتظار بازبینی",
+ "proficient": "کسب مهارت",
+ "progress": "پیشروی",
+ "rating": "امتیاز",
+ "reviewstatus": "بازبینی وضعیت",
+ "status": "وضعیت",
+ "template": "الگوی برنامه یادگیری",
+ "usercompetencystatus_idle": "بی کار",
+ "usercompetencystatus_inreview": "درحال بازبینی",
+ "usercompetencystatus_waitingforreview": "در انتظار بازبینی",
+ "userplans": "برنامههای یادگیری",
+ "xcompetenciesproficientoutofy": "در {{$a.x}} شایستگی از مجموع {{$a.y}} شایستگی مهارت کسب شده است",
+ "xcompetenciesproficientoutofyincourse": "شما در {{$a.x}} شایستگی از {{$a.y}} شایستگی ماهر هستید."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/fi.json b/src/addon/competency/lang/fi.json
new file mode 100755
index 000000000..c98434dbb
--- /dev/null
+++ b/src/addon/competency/lang/fi.json
@@ -0,0 +1,46 @@
+{
+ "activities": "Aktiviteetit",
+ "competencies": "Pätevyydet",
+ "competenciesmostoftennotproficientincourse": "Seuraavia pätevyyksiä on saavutettu tällä kurssilla vähiten.",
+ "coursecompetencies": "Kurssin pätevyydet",
+ "coursecompetencyratingsarenotpushedtouserplans": "Tämän kurssin pätevyyksien arvioinnit eivät vaikuta opintosuunnitelmiin.",
+ "coursecompetencyratingsarepushedtouserplans": "Tämän kurssin pätevyyksien arvioinnit päivitetään heti opintosuunnitelmiin.",
+ "crossreferencedcompetencies": "Ristiviitatut pätevyydet",
+ "duedate": "Määräpäivä",
+ "errornocompetenciesfound": "Pätevyyksiä ei löytynyt",
+ "evidence": "Todiste",
+ "evidence_competencyrule": "Osaamissääntökriteerit täytetty.",
+ "evidence_coursecompleted": "Kurssi '{{$a}}' suoritettiin",
+ "evidence_coursemodulecompleted": "Aktiviteetti '{{$a}}' suoritettiin",
+ "evidence_courserestored": "Osaamisenarviointi palautettiin kurssin '{{$a}}' palautuksen mukana.",
+ "evidence_evidenceofpriorlearninglinked": "Todiste aiemmasta osaamisesta '{{$a}}' on nyt linkitetty",
+ "evidence_evidenceofpriorlearningunlinked": "Aiemman osaamisen '{{$a}} linkitys on nyt purettu",
+ "evidence_manualoverride": "Pätevyys arvioitiin manuaalisesti",
+ "evidence_manualoverrideincourse": "Osaamisen arviointi asetettiin manuaalisesti kurssille '{{$a}}'.",
+ "evidence_manualoverrideinplan": "Osaamisen arviointi asetettiin manuaalisesti opintosuunnitelmassa '{{$a}}'.",
+ "learningplancompetencies": "Opintosuunnitelman pätevyydet",
+ "learningplans": "Opintosuunnitelmat",
+ "myplans": "Omat opintosuunnitelmani",
+ "noactivities": "Ei aktiviteetteja",
+ "nocompetencies": "Ei pätevyyksiä",
+ "nocrossreferencedcompetencies": "Muita pätevyyksiä ei ole ristiviitattu tähän pätevyyteen.",
+ "noevidence": "Ei todistetta",
+ "noplanswerecreated": "Yhtään opintosuunnitelmaa ei luotu.",
+ "path": "Polku",
+ "planstatusactive": "Aktiivinen",
+ "planstatuscomplete": "Valmis",
+ "planstatusdraft": "Luonnos",
+ "planstatusinreview": "Arvioitavana",
+ "planstatuswaitingforreview": "Odottaa arviointia",
+ "proficient": "Pätevä",
+ "progress": "Eteneminen",
+ "rating": "Arviointi",
+ "status": "Osaamismerkin status",
+ "template": "Opintosuunnitelman viitekehys",
+ "usercompetencystatus_idle": "Turha",
+ "usercompetencystatus_inreview": "Arvioitavana",
+ "usercompetencystatus_waitingforreview": "Odottaa arviointia",
+ "userplans": "Opintosuunnitelmat",
+ "xcompetenciesproficientoutofy": "{{$a.x}} kaikkiaan {{$a.y}}:sta pätevyydestä on suoritettu",
+ "xcompetenciesproficientoutofyincourse": "Olet suorittanut {{$a.x}} kaikkiaan {{$a.y}}:sta pätevyydestä tällä kurssilla."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/fr.json b/src/addon/competency/lang/fr.json
new file mode 100755
index 000000000..7e23c4763
--- /dev/null
+++ b/src/addon/competency/lang/fr.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Activités",
+ "competencies": "Compétences",
+ "competenciesmostoftennotproficientincourse": "Compétences non atteintes le plus souvent dans ce cours",
+ "coursecompetencies": "Compétences du cours",
+ "coursecompetencyratingsarenotpushedtouserplans": "Les évaluations de compétences de ce cours n'ont pas d'influence sur les plans de formation.",
+ "coursecompetencyratingsarepushedtouserplans": "Les évaluations de compétences de ce cours sont immédiatement reportées dans les plans de formation.",
+ "crossreferencedcompetencies": "Compétences transversales",
+ "duedate": "Délai d'achèvement",
+ "errornocompetenciesfound": "Aucune compétence trouvée",
+ "evidence": "Preuve",
+ "evidence_competencyrule": "La règle pour la compétence a été atteinte.",
+ "evidence_coursecompleted": "Le cours « {{$a}} » a été achevé.",
+ "evidence_coursemodulecompleted": "L'activité « {{$a}} » a été achevée.",
+ "evidence_courserestored": "L'évaluation a été restaurée avec le cours « {{$a}} ».",
+ "evidence_evidenceofpriorlearninglinked": "La preuve d'acquis « {{$a}} » a été liée.",
+ "evidence_evidenceofpriorlearningunlinked": "La preuve d'acquis « {{$a}} » a été déliée.",
+ "evidence_manualoverride": "L'évaluation de la compétence a été donnée manuellement.",
+ "evidence_manualoverrideincourse": "L'évaluation de la compétence a été donnée manuellement dans le cours « {{$a}} ».",
+ "evidence_manualoverrideinplan": "L'évaluation de la compétence a été donnée manuellement dans le plan « {{$a}} ».",
+ "learningplancompetencies": "Compétences du plan de formation",
+ "learningplans": "Plans de formation",
+ "myplans": "Mes plans de formation",
+ "noactivities": "Aucune activité",
+ "nocompetencies": "Aucune compétence n'a été créée dans ce référentiel.",
+ "nocrossreferencedcompetencies": "Aucune autre compétence n'est transversale pour cette compétence.",
+ "noevidence": "Aucune preuve d'acquis",
+ "noplanswerecreated": "Aucun plan de formation n'a été créé.",
+ "path": "Chemin :",
+ "planstatusactive": "Actif",
+ "planstatuscomplete": "Achevé",
+ "planstatusdraft": "Brouillon",
+ "planstatusinreview": "En cours de validation",
+ "planstatuswaitingforreview": "En attente de validation",
+ "proficient": "Compétence acquise",
+ "progress": "Progrès",
+ "rating": "Évaluation",
+ "reviewstatus": "Statut de validation",
+ "status": "Statut",
+ "template": "Modèle de plan de formation",
+ "usercompetencystatus_idle": "En suspens",
+ "usercompetencystatus_inreview": "En cours de validation",
+ "usercompetencystatus_waitingforreview": "En attente de validation",
+ "userplans": "Plans de formation",
+ "xcompetenciesproficientoutofy": "{{$a.x}} compétences sur {{$a.y}} sont acquises",
+ "xcompetenciesproficientoutofyincourse": "Vous avez acquis {{$a.x}} compétences sur {{$a.y}} dans ce cours."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/he.json b/src/addon/competency/lang/he.json
new file mode 100755
index 000000000..355d32bf0
--- /dev/null
+++ b/src/addon/competency/lang/he.json
@@ -0,0 +1,46 @@
+{
+ "activities": "פעילויות",
+ "competencies": "מיומנויות",
+ "competenciesmostoftennotproficientincourse": "מיומנויות בהן אינכם בקיאים בקורס זה",
+ "coursecompetencies": "מיומנויות הקורס",
+ "coursecompetencyratingsarenotpushedtouserplans": "השלמת מיומנויות בקורס זה לא מתעדכנות בתוכניות־הלימוד",
+ "coursecompetencyratingsarepushedtouserplans": "מצב רכישת מיומנות כתוצאה מהשלמת פעילות בקורס, מתעדכן באופן מידי בתוכניות־הלימוד.",
+ "crossreferencedcompetencies": "מקושר למיומנויות",
+ "duedate": "תאריך סופי",
+ "evidence": "ראיה לבקיאות",
+ "evidence_competencyrule": "תנאי המיומנות נענה",
+ "evidence_coursecompleted": "הקורס '{{$a}}' הושלם.",
+ "evidence_coursemodulecompleted": "הפעילות '{{$a}}' הושלמה.",
+ "evidence_courserestored": "הניקוד שוחזר יחד עם הקורס '{{$a}}'.",
+ "evidence_evidenceofpriorlearninglinked": "קישור לאישור על לימוד מקדים של '{{$a}}' צורף.",
+ "evidence_evidenceofpriorlearningunlinked": "קישור לאישור על לימוד מקדים של '{{$a}}' הוסר.",
+ "evidence_manualoverride": "מצב השלמת המיומנות עודכן באופן ידני.",
+ "evidence_manualoverrideincourse": "מצב השלמת המיומנות עודכן באופן ידני בקורס '{{$a}}'.",
+ "evidence_manualoverrideinplan": "מצב השלמת המיומנות עודכן באופן ידני בתוכנית־הלימוד '{{$a}}'.",
+ "learningplancompetencies": "מיומנויות תוכנית־הלימוד",
+ "learningplans": "תוכניות־לימוד",
+ "myplans": "תוכניות הלימודים שלי",
+ "noactivities": "לא מקושר לאף פעילות בקורס",
+ "nocompetencies": "טרם נוצרה מיומנות כלשהי באוסף־מיומנויות זה.",
+ "nocrossreferencedcompetencies": "אף מיומנות לא מקושרת למיומנות זו.",
+ "noevidence": "טרם צורפה ראיה לבקיאות",
+ "noplanswerecreated": "טרם נוצרו תוכניות־לימוד.",
+ "path": "נתיב",
+ "planstatusactive": "פעיל",
+ "planstatuscomplete": "הושלם",
+ "planstatusdraft": "טיוטה",
+ "planstatusinreview": "בסקירה",
+ "planstatuswaitingforreview": "מחכה לסקירה",
+ "proficient": "בקיאות",
+ "progress": "התקדמות",
+ "rating": "דרוג",
+ "reviewstatus": "סקירת מצב",
+ "status": "מצב",
+ "template": "תבנית תוכנית־לימוד",
+ "usercompetencystatus_idle": "לא־פעיל",
+ "usercompetencystatus_inreview": "בסקירה",
+ "usercompetencystatus_waitingforreview": "מחכה לסקירה",
+ "userplans": "תוכניות־לימוד",
+ "xcompetenciesproficientoutofy": "בקיאות ב {{$a.x}} מיומנויות מתוך {{$a.y}}",
+ "xcompetenciesproficientoutofyincourse": "רכשתם בקיאות ב {{$a.x}} מתוך {{$a.y}} המיומנויות בקורס זה."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/hr.json b/src/addon/competency/lang/hr.json
new file mode 100755
index 000000000..8c40a3b58
--- /dev/null
+++ b/src/addon/competency/lang/hr.json
@@ -0,0 +1,16 @@
+{
+ "activities": "Aktivnosti",
+ "competencies": "Kompetencije",
+ "duedate": "Rok predaje",
+ "evidence": "Dokaz",
+ "evidence_coursecompleted": "Kolegij '{{$a}}' je dovršen.",
+ "evidence_coursemodulecompleted": "Aktivnost '{{$a}}' je dovršena.",
+ "path": "Putanja",
+ "planstatusactive": "Aktivno",
+ "planstatuscomplete": "Dovršeno",
+ "planstatusdraft": "Nacrt",
+ "progress": "Napredak studenta",
+ "rating": "Ocjena",
+ "status": "Status",
+ "template": "Predložak"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/hu.json b/src/addon/competency/lang/hu.json
new file mode 100755
index 000000000..6af915532
--- /dev/null
+++ b/src/addon/competency/lang/hu.json
@@ -0,0 +1,46 @@
+{
+ "activities": "Tevékenységek",
+ "competencies": "Készségek",
+ "competenciesmostoftennotproficientincourse": "A kurzusban leginkább eredménytelen készségek",
+ "coursecompetencies": "Kurzuskészségek",
+ "coursecompetencyratingsarenotpushedtouserplans": "A kurzus készségbesorolásai nem érintik a tanulási terveket.",
+ "coursecompetencyratingsarepushedtouserplans": "A kurzus készségbesorolásai azonnal frissülnek a tanulási tervekben.",
+ "crossreferencedcompetencies": "Kereszthivatkozott készségek",
+ "duedate": "Esedékesség",
+ "evidence": "Bizonyíték",
+ "evidence_competencyrule": "A készséghez tartozó szabály teljesítve.",
+ "evidence_coursecompleted": "'{{$a}}' kurzus teljesítve.",
+ "evidence_coursemodulecompleted": "'{{$a}}' tevékenység teljesítve.",
+ "evidence_courserestored": "A besorolás a(z) '{{$a}}' kurzussal együtt helyreállt..",
+ "evidence_evidenceofpriorlearninglinked": "Előtanulmányok '{{$a}}' bizonyítéka összekapcsolva.",
+ "evidence_evidenceofpriorlearningunlinked": "Előtanulmányok '{{$a}}' bizonyítéka szétválasztva.",
+ "evidence_manualoverride": "Készségbesorolás kézzel beállítva.",
+ "evidence_manualoverrideincourse": "Készségbesorolás '{{$a}}' kurzusban kézzel beállítva.",
+ "evidence_manualoverrideinplan": "Készségbesorolás '{{$a}}' tanulási tervben kézzel beállítva.",
+ "learningplancompetencies": "Tanulási tervhez tartozó készségek",
+ "learningplans": "Tanulási tervek",
+ "myplans": "Tanulási terveim",
+ "noactivities": "Nincs tevékenység",
+ "nocompetencies": "A keretben nem jött létre készség.",
+ "nocrossreferencedcompetencies": "A készséghez kereszthivatkozással nem kapcsolódik más készség.",
+ "noevidence": "Nincs bizonyíték",
+ "noplanswerecreated": "Nem jött létre tanulási terv.",
+ "path": "Útvonal:",
+ "planstatusactive": "Aktív",
+ "planstatuscomplete": "Kész",
+ "planstatusdraft": "Vázlat",
+ "planstatusinreview": "Ellenőrzés alatt",
+ "planstatuswaitingforreview": "Ellenőrzésre vár",
+ "proficient": "Sikeres",
+ "progress": "Előmenetel",
+ "rating": "Besorolás",
+ "reviewstatus": "Ellenőrzés állapota",
+ "status": "Állapot",
+ "template": "Tanulási tervsablon",
+ "usercompetencystatus_idle": "Inaktív",
+ "usercompetencystatus_inreview": "Ellenőrzés alatt",
+ "usercompetencystatus_waitingforreview": "Ellenőrzésre vár",
+ "userplans": "Tanulási tervek",
+ "xcompetenciesproficientoutofy": "{{$a.x}} / {{$a.y}} készség eredményes",
+ "xcompetenciesproficientoutofyincourse": "Ön a kurzusban {{$a.y}} közül {{$a.x}} készség tekintetében eredményesnek bizonyul."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/it.json b/src/addon/competency/lang/it.json
new file mode 100755
index 000000000..b48ee9ec1
--- /dev/null
+++ b/src/addon/competency/lang/it.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Attività",
+ "competencies": "Competenze",
+ "competenciesmostoftennotproficientincourse": "Competenze del corso dove più frequentemente non sono stati raggiunti i livelli di esperto",
+ "coursecompetencies": "Competenze del corso",
+ "coursecompetencyratingsarenotpushedtouserplans": "Le valutazioni delle competenze nel corso non si riflettono nei piani di formazione.",
+ "coursecompetencyratingsarepushedtouserplans": "Le valutazione delle competenze nel corso si riflettono immediatamente nei piani di formazione.",
+ "crossreferencedcompetencies": "Competenze con riferimento incrociato",
+ "duedate": "Termine consegne",
+ "errornocompetenciesfound": "Non sono state trovate competenze",
+ "evidence": "Attestazione",
+ "evidence_competencyrule": "La regola della competenza è stata soddisfatta.",
+ "evidence_coursecompleted": "Il corso '{{$a}}' è stato completato.",
+ "evidence_coursemodulecompleted": "L'attività '{{$a}}' è stata completato.",
+ "evidence_courserestored": "La valutazione è stata ripristinata assieme al corso '{{$a}}'.",
+ "evidence_evidenceofpriorlearninglinked": "L'attestazione della formazione pregressa '{{$a}}' è stata collegata.",
+ "evidence_evidenceofpriorlearningunlinked": "L'attestazione della formazione pregressa '{{$a}}' è stata scollegata.",
+ "evidence_manualoverride": "La valutazione della competenza è stata data manualmente.",
+ "evidence_manualoverrideincourse": "La valutazione della competenza nel corso '{{$a}}' è stata data manualmente.",
+ "evidence_manualoverrideinplan": "La valutazione della competenza nel piano di formazione '{{$a}}' è stata data manualmente.",
+ "learningplancompetencies": "Competenze del piano di formazione",
+ "learningplans": "Piani di formazione",
+ "myplans": "I miei piani di formazione",
+ "noactivities": "Nessuna attività.",
+ "nocompetencies": "Questo quadro non ha competenze",
+ "nocrossreferencedcompetencies": "Non ci sono competenze con riferimenti incrociati a questa competenza",
+ "noevidence": "Non sono presenti attestazioni.",
+ "noplanswerecreated": "Non sono stati creati piani di formazione",
+ "path": "Percorso:",
+ "planstatusactive": "Attivo",
+ "planstatuscomplete": "Raggiunta",
+ "planstatusdraft": "Bozza",
+ "planstatusinreview": "In revisione",
+ "planstatuswaitingforreview": "In attesa di revisione",
+ "proficient": "Esperto",
+ "progress": "Avanzamento",
+ "rating": "Valutazione",
+ "reviewstatus": "Stato della revisione",
+ "status": "Stato",
+ "template": "Modello di piano di formazione",
+ "usercompetencystatus_idle": "Non attiva",
+ "usercompetencystatus_inreview": "In revisione",
+ "usercompetencystatus_waitingforreview": "In attesa di revisione",
+ "userplans": "Piani di formazione",
+ "xcompetenciesproficientoutofy": "{{$a.x}} competenze su {{$a.y}} sono a livello di esperto",
+ "xcompetenciesproficientoutofyincourse": "Possiedi un livello di esperto in {{$a.x}} competenze su {{$a.y}} competenze di questo corso."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/ja.json b/src/addon/competency/lang/ja.json
new file mode 100755
index 000000000..d4109719e
--- /dev/null
+++ b/src/addon/competency/lang/ja.json
@@ -0,0 +1,47 @@
+{
+ "activities": "活動",
+ "competencies": "コンピテンシー",
+ "competenciesmostoftennotproficientincourse": "このコース内でほとんど熟達していないコンピテンシー",
+ "coursecompetencies": "コースコンピテンシー",
+ "coursecompetencyratingsarenotpushedtouserplans": "このコース内でのコンピテンシー評定は学習プランに影響しません。",
+ "coursecompetencyratingsarepushedtouserplans": "このコース内でのコンピテンシー評定は学習プラン内ですぐに更新されます。",
+ "crossreferencedcompetencies": "クロスリファレンスコンピテンシー",
+ "duedate": "期限",
+ "errornocompetenciesfound": "コンピテンシーが見つかりません",
+ "evidence": "エビデンス",
+ "evidence_competencyrule": "コンピテンシールールが合致しません。",
+ "evidence_coursecompleted": "コース「 {{$a}} 」が完了しました。",
+ "evidence_coursemodulecompleted": "活動「 {{$a}} 」が完了しました。",
+ "evidence_courserestored": "コース「 {{$a}} 」と共に評定がリストアされました。",
+ "evidence_evidenceofpriorlearninglinked": "事前学習エビデンス「 {{$a}} 」がリンクされました。",
+ "evidence_evidenceofpriorlearningunlinked": "事前学習エビデンス「 {{$a}} 」がリンク解除されました。",
+ "evidence_manualoverride": "コンピテンシー評定は手動設定されました。",
+ "evidence_manualoverrideincourse": "コンピテンシー評定はコース「 {{$a}} 」で手動設定されました。",
+ "evidence_manualoverrideinplan": "コンピテンシー評定は学習プラン「 {{$a}} 」で手動設定されました。",
+ "learningplancompetencies": "学習プランコンピテンシー",
+ "learningplans": "学習プラン",
+ "myplans": "マイ学習プラン",
+ "noactivities": "活動なし",
+ "nocompetencies": "このフレームワークにコンピテンシーは作成されていません。",
+ "nocrossreferencedcompetencies": "このコンピテンシーに相互参照されている他のコンピテンシーはありません。",
+ "noevidence": "エビデンスなし",
+ "noplanswerecreated": "学習プランは作成されませんでした。",
+ "path": "パス:",
+ "planstatusactive": "アクティブ",
+ "planstatuscomplete": "完了",
+ "planstatusdraft": "下書き",
+ "planstatusinreview": "レビュー中",
+ "planstatuswaitingforreview": "レビュー待ち",
+ "proficient": "熟達",
+ "progress": "進捗",
+ "rating": "評定",
+ "reviewstatus": "レビューステータス",
+ "status": "ステータス",
+ "template": "学習プランテンプレート",
+ "usercompetencystatus_idle": "待機",
+ "usercompetencystatus_inreview": "レビュー中",
+ "usercompetencystatus_waitingforreview": "レビュー待ち",
+ "userplans": "学習プラン",
+ "xcompetenciesproficientoutofy": "{{$a.x}} / {{$a.y}} のコンピテンシーで熟達しています。",
+ "xcompetenciesproficientoutofyincourse": "あなたはこのコースに関して {{$a.x}} / {{$a.y}} のコンピテンシーで熟達しています。"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/ko.json b/src/addon/competency/lang/ko.json
new file mode 100755
index 000000000..a8c01eef7
--- /dev/null
+++ b/src/addon/competency/lang/ko.json
@@ -0,0 +1,10 @@
+{
+ "activities": "학습활동",
+ "duedate": "마감 일시",
+ "evidence": "증거",
+ "path": "경로",
+ "progress": "학생의 진도",
+ "rating": "등급",
+ "status": "상태",
+ "template": "질문지"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/lt.json b/src/addon/competency/lang/lt.json
new file mode 100755
index 000000000..2fac9c0ec
--- /dev/null
+++ b/src/addon/competency/lang/lt.json
@@ -0,0 +1,39 @@
+{
+ "activities": "Veikla",
+ "competencies": "Kompetencijos",
+ "coursecompetencies": "Kurso kompetencijos",
+ "coursecompetencyratingsarenotpushedtouserplans": "Kompetencijų reitingai šiame kurse neturi įtakos mokymosi planams.",
+ "crossreferencedcompetencies": "Kryžminės kompetencijos",
+ "duedate": "Data pristatymui",
+ "errornocompetenciesfound": "Kompetencijų nerasta",
+ "evidence": "Įrodymas",
+ "evidence_coursecompleted": "Kursas '{{$a}}' buvo užbaigtas.",
+ "evidence_coursemodulecompleted": "Veikla '{{$a}}' buvo užbaigta.",
+ "evidence_evidenceofpriorlearninglinked": "Ankstesnio mokymosi įrodymas '{{$a}}' buvo susietas.",
+ "evidence_evidenceofpriorlearningunlinked": "Ankstesnio mokymosi įrodymas '{{$a}}' buvo atsietas.",
+ "learningplancompetencies": "Mokymosi plano kompetencijos",
+ "learningplans": "Mokymosi planai",
+ "myplans": "Mano mokymosi planai",
+ "noactivities": "Nėra veiklų",
+ "nocompetencies": "Šioje sistemoje nebuvo sukurta kompetencijų.",
+ "nocrossreferencedcompetencies": "Jokios kitos kompetencijos nebuvo susietos kryžmine nuoroda su šia kompetencija.",
+ "noevidence": "Nėra įrodymų",
+ "noplanswerecreated": "Nebuvo sukurta mokymosi planų.",
+ "path": "Kelias",
+ "planstatusactive": "Aktyvus",
+ "planstatuscomplete": "Baigta",
+ "planstatusdraft": "Juodraštis",
+ "planstatusinreview": "Peržiūrima",
+ "planstatuswaitingforreview": "Laukiama peržiūros",
+ "proficient": "Įgūdis",
+ "progress": "Besimokančiojo pažanga",
+ "rating": "Reitingas",
+ "reviewstatus": "Peržiūros būsena",
+ "status": "Būsena",
+ "template": "Mokymosi plano šablonas",
+ "usercompetencystatus_idle": "Nenaudojamas",
+ "usercompetencystatus_inreview": "Peržiūrima",
+ "usercompetencystatus_waitingforreview": "Laukiama peržiūros",
+ "userplans": "Mokymosi planai",
+ "xcompetenciesproficientoutofyincourse": "Įgijote {{$a.x}} iš {{$a.y}} kompetenciją šiame kurse."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/mr.json b/src/addon/competency/lang/mr.json
new file mode 100755
index 000000000..a31b331a8
--- /dev/null
+++ b/src/addon/competency/lang/mr.json
@@ -0,0 +1,6 @@
+{
+ "activities": "क्रिया",
+ "errornocompetenciesfound": "कोणतीही कौशल्यं आढळली नाहीत",
+ "nocompetencies": "कोणतीही क्षमता नाहीत",
+ "status": "स्थिती"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/nl.json b/src/addon/competency/lang/nl.json
new file mode 100755
index 000000000..755c15965
--- /dev/null
+++ b/src/addon/competency/lang/nl.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Activiteiten",
+ "competencies": "Competenties",
+ "competenciesmostoftennotproficientincourse": "Meestal nog niet bekwaam voor competenties in deze cursus",
+ "coursecompetencies": "Cursuscompetenties",
+ "coursecompetencyratingsarenotpushedtouserplans": "Competentiebeoordelingen in deze cursus hebben geen invloed op studieplannnen.",
+ "coursecompetencyratingsarepushedtouserplans": "Competentiebeoordelingen in deze cursus worden onmiddellijk aangepast in studieplannen.",
+ "crossreferencedcompetencies": "Competenties met kruisverwijzingen",
+ "duedate": "Uiterste inleverdatum",
+ "errornocompetenciesfound": "Geen competenties gevonden",
+ "evidence": "Bewijs",
+ "evidence_competencyrule": "De competentieregel werd behaald.",
+ "evidence_coursecompleted": "Cursus '{{$a}}' werd voltooid",
+ "evidence_coursemodulecompleted": "Activiteit '{{$a}}' werd voltooid.",
+ "evidence_courserestored": "De waardering was hersteld, samen met cursus '{{$a}}'.",
+ "evidence_evidenceofpriorlearninglinked": "Bewijs van leren '{{$a}}' werd gelinkt.",
+ "evidence_evidenceofpriorlearningunlinked": "Bewijs van leren '{{$a}}' link verwijderd",
+ "evidence_manualoverride": "De competentiebeoordeling werd manueel ingesteld.",
+ "evidence_manualoverrideincourse": "De competentiebeoordeling werd manueel ingesteld in cursus '{{$a}}'.",
+ "evidence_manualoverrideinplan": "De competentiebeoordeling werd manueel ingesteld in leerplan '{{$a}}'.",
+ "learningplancompetencies": "Studieplan competenties",
+ "learningplans": "Studieplannen",
+ "myplans": "Mijn studieplannen",
+ "noactivities": "Geen activiteiten",
+ "nocompetencies": "Er zijn nog geen competenties gemaakt in dit framework",
+ "nocrossreferencedcompetencies": "Er zijn geen andere competenties met een kruisverwijzing naar deze competentie.",
+ "noevidence": "Geen bewijs",
+ "noplanswerecreated": "Er zijn nog geen studieplannen gemaakt",
+ "path": "Pad:",
+ "planstatusactive": "Actief",
+ "planstatuscomplete": "Volledig",
+ "planstatusdraft": "Klad",
+ "planstatusinreview": "Wordt beoordeeld",
+ "planstatuswaitingforreview": "Wacht op beoordeling",
+ "proficient": "Geslaagd",
+ "progress": "Vordering",
+ "rating": "Beoordeling",
+ "reviewstatus": "Beoordelingsstatus",
+ "status": "Status",
+ "template": "Studieplansjabloon",
+ "usercompetencystatus_idle": "Niet aan het werk",
+ "usercompetencystatus_inreview": "Wordt beoordeeld",
+ "usercompetencystatus_waitingforreview": "Wacht op beoordeling",
+ "userplans": "Leerplan",
+ "xcompetenciesproficientoutofy": "{{$a.x}} van de {{$a.y}} competenties zijn bekwaam",
+ "xcompetenciesproficientoutofyincourse": "Je bent bekwaam in {{$a.x}} van de {{$a.y}} competenties in deze cursus."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/no.json b/src/addon/competency/lang/no.json
new file mode 100755
index 000000000..e75d67cb1
--- /dev/null
+++ b/src/addon/competency/lang/no.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Aktiviteter",
+ "competencies": "Kompetanser",
+ "competenciesmostoftennotproficientincourse": "Læringsmål som sjeldnest er oppnådd i dette kurset",
+ "coursecompetencies": "Kursets læringsmål",
+ "coursecompetencyratingsarenotpushedtouserplans": "Læringsmålvurderinger i dette kurset har ingen innvirkning på opplæringsplaner.",
+ "coursecompetencyratingsarepushedtouserplans": "Læringsmålvurderinger i dette kurset vil automatisk oppdatere opplæringsplaner.",
+ "crossreferencedcompetencies": "Kryssrefererte læringsmål",
+ "duedate": "Innleveringsfrist",
+ "errornocompetenciesfound": "Ingen kompetansemål funnet",
+ "evidence": "Bevis",
+ "evidence_competencyrule": "Læringsmålregelen ble møtt",
+ "evidence_coursecompleted": "Kurset '{{$a}}' ble fullført.",
+ "evidence_coursemodulecompleted": "Aktiviteten '{{$a}}' ble fullført.",
+ "evidence_courserestored": "Vurderingen ble gjenopprettet sammen med kurset '{{$a}}'.",
+ "evidence_evidenceofpriorlearninglinked": "Beviset '{{$a}}' på tidligere læring ble lenket.",
+ "evidence_evidenceofpriorlearningunlinked": "Lenken til beviset '{{$a}}' på tidligere læring ble fjernet.",
+ "evidence_manualoverride": "Kompetansevurderingen ble satt manuelt.",
+ "evidence_manualoverrideincourse": "Kompetansevurderingen ble satt manuelt i kurset '{{$a}}'.",
+ "evidence_manualoverrideinplan": "Kompetansevurderingen ble satt manuelt i opplringsplanen '{{$a}}'.",
+ "learningplancompetencies": "Opplæringsplanens læringsmål",
+ "learningplans": "Opplæringsplaner",
+ "myplans": "Mine opplæringsplaner",
+ "noactivities": "Ingen aktiviteter",
+ "nocompetencies": "Ingen læringsmål er lagt til i dette rammeverket.",
+ "nocrossreferencedcompetencies": "Ingen andre læringsmål har en kryssreferanse til dette læringsmålet.",
+ "noevidence": "Ingen bevis",
+ "noplanswerecreated": "Ingen opplæringsplaner ble opprettet",
+ "path": "Sti:",
+ "planstatusactive": "Aktiv",
+ "planstatuscomplete": "Fullført",
+ "planstatusdraft": "Utkast",
+ "planstatusinreview": "Under vurdering",
+ "planstatuswaitingforreview": "Venter på vurdering",
+ "proficient": "Dyktighet",
+ "progress": "Fremdrift",
+ "rating": "Vurdering",
+ "reviewstatus": "Vurderingsstatus",
+ "status": "Status",
+ "template": "Opplæringsplanmal",
+ "usercompetencystatus_idle": "Uvirksom",
+ "usercompetencystatus_inreview": "Under vurdering",
+ "usercompetencystatus_waitingforreview": "Venterpå vurdering",
+ "userplans": "Opplæringsplaner",
+ "xcompetenciesproficientoutofy": "{{$a.x}} av {{$a.y}} læringsmål er oppnådd",
+ "xcompetenciesproficientoutofyincourse": "Du har oppnådd {{$a.x}} av {{$a.y}} læringsmål i dette kurset."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/pl.json b/src/addon/competency/lang/pl.json
new file mode 100755
index 000000000..9dcc2e6d8
--- /dev/null
+++ b/src/addon/competency/lang/pl.json
@@ -0,0 +1,33 @@
+{
+ "activities": "Aktywności",
+ "competencies": "Kompetencje",
+ "coursecompetencies": "Kompetencje kursu",
+ "duedate": "Termin",
+ "evidence": "Dowód",
+ "evidence_coursecompleted": "Kurs '{{$a}}' został ukończony.",
+ "evidence_coursemodulecompleted": "Aktywność '{{$a}}' została ukończona.",
+ "evidence_evidenceofpriorlearninglinked": "Dokumentacja wcześniejszej nauki '{{$a}}' została podłączona.",
+ "evidence_evidenceofpriorlearningunlinked": "Dokumentacja wcześniejszej nauki '{{$a}}' została odłączona.",
+ "learningplancompetencies": "Kompetencje planu nauczania",
+ "learningplans": "Plany nauczania",
+ "myplans": "Moje plany uczenia się.",
+ "noactivities": "Brak aktywności",
+ "nocompetencies": "Nie utworzono żadnych kompetencji w tych ramach kwalifikacji.",
+ "noevidence": "Brak dowodów",
+ "noplanswerecreated": "Nie utworzono planów uczenia się.",
+ "path": "Ścieżka:",
+ "planstatusactive": "Aktywne",
+ "planstatuscomplete": "Ukończone",
+ "planstatusdraft": "Szkic",
+ "planstatusinreview": "W trakcie przeglądu",
+ "planstatuswaitingforreview": "Oczekuje na przegląd",
+ "progress": "Postęp",
+ "rating": "Ocena",
+ "reviewstatus": "Status przeglądu",
+ "status": "Status",
+ "template": "Szablon planu uczenia się.",
+ "usercompetencystatus_idle": "Bezczynny",
+ "usercompetencystatus_inreview": "W przeglądzie",
+ "usercompetencystatus_waitingforreview": "Oczekuje na przegląd",
+ "userplans": "Plany uczenia się"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/pt-br.json b/src/addon/competency/lang/pt-br.json
new file mode 100755
index 000000000..232ddc151
--- /dev/null
+++ b/src/addon/competency/lang/pt-br.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Atividades",
+ "competencies": "Competências",
+ "competenciesmostoftennotproficientincourse": "Competências mais frequentemente improficiente neste curso",
+ "coursecompetencies": "Competências do curso",
+ "coursecompetencyratingsarenotpushedtouserplans": "Avaliações de competência neste curso não afetam os planos de aprendizagem.",
+ "coursecompetencyratingsarepushedtouserplans": "Avaliações de competência neste curso são atualizadas imediatamente nos planos de aprendizagem.",
+ "crossreferencedcompetencies": "Competências referenciadas",
+ "duedate": "Data de entrega",
+ "errornocompetenciesfound": "Nenhuma competência encontrada",
+ "evidence": "Evidência",
+ "evidence_competencyrule": "A regra da competência foi cumprida.",
+ "evidence_coursecompleted": "O curso '{{$a}}' foi concluído.",
+ "evidence_coursemodulecompleted": "A atividade '{{$a}}' foi concluída.",
+ "evidence_courserestored": "A classificação foi restaurada juntamente com o curso '{{$a}}'.",
+ "evidence_evidenceofpriorlearninglinked": "Evidência de aprendizagem prévia '{{$a}}' ativada.",
+ "evidence_evidenceofpriorlearningunlinked": "Evidência de aprendizagem prévia '{{$a}}' desativada.",
+ "evidence_manualoverride": "A classificação de competência foi definida manualmente.",
+ "evidence_manualoverrideincourse": "A classificação de competência foi definida manualmente no curso '{{$a}}'.",
+ "evidence_manualoverrideinplan": "A classificação de competência foi definida manualmente no plano de aprendizado '{{$a}}'.",
+ "learningplancompetencies": "Competências do plano de aprendizagem",
+ "learningplans": "Planos de aprendizagem",
+ "myplans": "Meus planos de aprendizagem",
+ "noactivities": "Sem atividades",
+ "nocompetencies": "Nenhuma competência foi criada para esta estrutura.",
+ "nocrossreferencedcompetencies": "Nenhuma outra competência foi referenciada a esta competência.",
+ "noevidence": "Nenhuma evidência",
+ "noplanswerecreated": "Nenhum plano de aprendizagem foi criado.",
+ "path": "Caminho:",
+ "planstatusactive": "Ativo",
+ "planstatuscomplete": "Concluído",
+ "planstatusdraft": "Rascunho",
+ "planstatusinreview": "Em revisão",
+ "planstatuswaitingforreview": "Aguardando revisão",
+ "proficient": "Proficiente",
+ "progress": "Progresso",
+ "rating": "Avaliação",
+ "reviewstatus": "Estado da revisão",
+ "status": "Status",
+ "template": "Modelo de plano de aprendizagem",
+ "usercompetencystatus_idle": "inativo",
+ "usercompetencystatus_inreview": "Em revisão",
+ "usercompetencystatus_waitingforreview": "Esperando por revisão",
+ "userplans": "Planos de aprendizado",
+ "xcompetenciesproficientoutofy": "{{$a.x}} de {{$a.y}} competências são proficiêntes",
+ "xcompetenciesproficientoutofyincourse": "Você é proficiente em {{$a.x}} de {{$a.y}} competências neste curso."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/pt.json b/src/addon/competency/lang/pt.json
new file mode 100755
index 000000000..ef18f29e3
--- /dev/null
+++ b/src/addon/competency/lang/pt.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Atividades",
+ "competencies": "Competências",
+ "competenciesmostoftennotproficientincourse": "Competências sem proficiência nesta disciplina",
+ "coursecompetencies": "Competências da disciplina",
+ "coursecompetencyratingsarenotpushedtouserplans": "As avaliações das competências nesta disciplina não afetam os planos de aprendizagem.",
+ "coursecompetencyratingsarepushedtouserplans": "As avaliações das competências nesta disciplina são automaticamente atualizadas nos planos de aprendizagem.",
+ "crossreferencedcompetencies": "Competências referenciadas",
+ "duedate": "Data limite para submeter trabalhos",
+ "errornocompetenciesfound": "Competências não encontradas",
+ "evidence": "Comprovativo",
+ "evidence_competencyrule": "A regra da competência foi cumprida.",
+ "evidence_coursecompleted": "A disciplina '{{$a}}' está concluída.",
+ "evidence_coursemodulecompleted": "A atividade '{{$a}}' está concluída.",
+ "evidence_courserestored": "A avaliação foi restaurada em conjunto com a disciplina '{{$a}}'.",
+ "evidence_evidenceofpriorlearninglinked": "O comprovativo de aprendizagem anterior '{{$a}}' foi associado à competência.",
+ "evidence_evidenceofpriorlearningunlinked": "O comprovativo de aprendizagem anterior '{{$a}}' foi desassociado da competência.",
+ "evidence_manualoverride": "A avaliação da competência foi configurada manualmente.",
+ "evidence_manualoverrideincourse": "A avaliação da competência foi configurada manualmente na disciplina '{{$a}}'.",
+ "evidence_manualoverrideinplan": "A avaliação da competência foi configurada manualmente no plano de aprendizagem '{{$a}}'.",
+ "learningplancompetencies": "Competências do plano de aprendizagem",
+ "learningplans": "Planos de aprendizagem",
+ "myplans": "Os meus planos de aprendizagem",
+ "noactivities": "Nenhuma atividade associada",
+ "nocompetencies": "Ainda não foram criadas competências neste quadro.",
+ "nocrossreferencedcompetencies": "Nenhuma competência foi referenciada a esta competência.",
+ "noevidence": "Não foi adicionado nenhum comprovativo",
+ "noplanswerecreated": "Nenhum plano de aprendizagem foi criado.",
+ "path": "Localização:",
+ "planstatusactive": "Ativo",
+ "planstatuscomplete": "Concluído",
+ "planstatusdraft": "Rascunho",
+ "planstatusinreview": "Em revisão",
+ "planstatuswaitingforreview": "À espera de revisão",
+ "proficient": "Proficiente",
+ "progress": "Progresso",
+ "rating": "Avaliação",
+ "reviewstatus": "Estado da revisão",
+ "status": "Estado",
+ "template": "Modelo de plano de aprendizagem",
+ "usercompetencystatus_idle": "Parado",
+ "usercompetencystatus_inreview": "Em revisão",
+ "usercompetencystatus_waitingforreview": "À espera de revisão",
+ "userplans": "Planos de aprendizagem",
+ "xcompetenciesproficientoutofy": "Tem proficiência em {{$a.x}} de {{$a.y}} competências",
+ "xcompetenciesproficientoutofyincourse": "Tem proficiência em {{$a.x}} de {{$a.y}} competências nesta disciplina"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/ro.json b/src/addon/competency/lang/ro.json
new file mode 100755
index 000000000..1c1c3bc4a
--- /dev/null
+++ b/src/addon/competency/lang/ro.json
@@ -0,0 +1,26 @@
+{
+ "activities": "Activităţi",
+ "competencies": "Competențe",
+ "duedate": "Termen de predare",
+ "evidence": "Evidență",
+ "evidence_competencyrule": "Nu a fost îndeplinită regula competenței.",
+ "evidence_coursecompleted": "Cursul '{{$a}}' a fost completat",
+ "evidence_coursemodulecompleted": "Activitatea '{{$a}}' a fost completată",
+ "learningplans": "Planuri de învățare",
+ "myplans": "Planurile mele de învățare",
+ "noactivities": "Nu sunt activități",
+ "path": "Cale",
+ "planstatusactive": "Activ",
+ "planstatuscomplete": "Complet",
+ "planstatusdraft": "Draft",
+ "planstatusinreview": "În revizuire",
+ "planstatuswaitingforreview": "Se așteaptă recenzia",
+ "progress": "Progres student",
+ "rating": "Rating",
+ "status": "Status",
+ "template": "Șablon",
+ "usercompetencystatus_idle": "Pauză",
+ "usercompetencystatus_inreview": "În revizuire",
+ "usercompetencystatus_waitingforreview": "Se așteaptă revizuirea",
+ "userplans": "Planuri de învățare"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/ru.json b/src/addon/competency/lang/ru.json
new file mode 100755
index 000000000..bfadb904d
--- /dev/null
+++ b/src/addon/competency/lang/ru.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Элементы курса",
+ "competencies": "Компетенции",
+ "competenciesmostoftennotproficientincourse": "Компетенции, которые чаще всего оказываются не освоенными в этом курсе",
+ "coursecompetencies": "Компетенции курса",
+ "coursecompetencyratingsarenotpushedtouserplans": "Рейтинги компетенций из этого курса не влияют на учебные планы.",
+ "coursecompetencyratingsarepushedtouserplans": "Рейтинги компетенций из этого курса сразу же обновляются в учебных планах.",
+ "crossreferencedcompetencies": "Перекрестные компетенции",
+ "duedate": "Последний срок сдачи",
+ "errornocompetenciesfound": "Компетенций не найдено",
+ "evidence": "Доказательство",
+ "evidence_competencyrule": "Выполнены требования правила компетенции.",
+ "evidence_coursecompleted": "Курс «{{$a}}» завершен.",
+ "evidence_coursemodulecompleted": "Элемент «{{$a}}» завершен.",
+ "evidence_courserestored": "Рейтинг был восстановлен вместе с курсом «{{$a}}».",
+ "evidence_evidenceofpriorlearninglinked": "Доказательство предыдущего обучения «{{$a}}» было привязано.",
+ "evidence_evidenceofpriorlearningunlinked": "Отменена связь доказательства предыдущего обучения «{{$a}}».",
+ "evidence_manualoverride": "Рейтинг компетенции был задан вручную.",
+ "evidence_manualoverrideincourse": "Рейтинг компетенции был задан вручную для курса «{{$a}}».",
+ "evidence_manualoverrideinplan": "Рейтинг компетенции был задан вручную для учебного плана «{{$a}}».",
+ "learningplancompetencies": "Компетенции учебного плана",
+ "learningplans": "Учебные планы",
+ "myplans": "Мои учебные планы",
+ "noactivities": "Нет элементов",
+ "nocompetencies": "Нет компетенций, созданных в этом фреймворке.",
+ "nocrossreferencedcompetencies": "Нет других компетенций, перекрестно ссылающихся на эту компетенцию.",
+ "noevidence": "Нет доказательств",
+ "noplanswerecreated": "Учебные планы не были созданы.",
+ "path": "Путь:",
+ "planstatusactive": "Активно",
+ "planstatuscomplete": "Выполнено",
+ "planstatusdraft": "Черновик",
+ "planstatusinreview": "Проверяется",
+ "planstatuswaitingforreview": "Ожидание отзыва",
+ "proficient": "Освоено",
+ "progress": "В процессе",
+ "rating": "Рейтинг",
+ "reviewstatus": "Статус пересмотра",
+ "status": "Статус",
+ "template": "Шаблон учебного плана",
+ "usercompetencystatus_idle": "Не используется",
+ "usercompetencystatus_inreview": "В процессе пересмотра",
+ "usercompetencystatus_waitingforreview": "Ожидает пересмотра",
+ "userplans": "Учебные планы",
+ "xcompetenciesproficientoutofy": "{{$a.x}} из {{$a.y}} компетенций освоены",
+ "xcompetenciesproficientoutofyincourse": "Вы освоили {{$a.x}} из {{$a.y}} компетенций в этом курсе."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/sr-cr.json b/src/addon/competency/lang/sr-cr.json
new file mode 100755
index 000000000..d9f5a2c01
--- /dev/null
+++ b/src/addon/competency/lang/sr-cr.json
@@ -0,0 +1,28 @@
+{
+ "activities": "Активности",
+ "competenciesmostoftennotproficientincourse": "Компетенције које најчешће нису усавршене на овом курсу",
+ "coursecompetencies": "Компетенције курса",
+ "coursecompetencyratingsarenotpushedtouserplans": "Рангирање компетенција на овом курсу на утиче на планове учења.",
+ "coursecompetencyratingsarepushedtouserplans": "Рангирање компетенција на овом курсу се аутоматски ажурира у плановима учења.",
+ "crossreferencedcompetencies": "Унакрсно повезане компетенције",
+ "duedate": "Крајњи рок",
+ "errornocompetenciesfound": "Није пронађена ниједна компетенција",
+ "evidence": "Доказ",
+ "learningplancompetencies": "Компетенције плана учења",
+ "learningplans": "Планови учења",
+ "myplans": "Моји планови учења",
+ "noactivities": "Нема активности",
+ "nocompetencies": "Нема компетенција",
+ "nocrossreferencedcompetencies": "Ниједна друга компетенција није унакрсно повезана са овом компетенцијом.",
+ "noevidence": "Нема доказа",
+ "noplanswerecreated": "Није креиран ниједан план учења.",
+ "path": "Путања",
+ "proficient": "Стручан",
+ "progress": "Напредовање полазника",
+ "rating": "Оцена",
+ "reviewstatus": "Прегледај статус",
+ "status": "Статус",
+ "template": "Шаблон",
+ "xcompetenciesproficientoutofy": "{{$a.x}} од {{$a.y}} компетенција су на највишем нивоу стручности",
+ "xcompetenciesproficientoutofyincourse": "Стручни сте у {{$a.x}} од {{$a.y}} компетенција на овом курсу."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/sr-lt.json b/src/addon/competency/lang/sr-lt.json
new file mode 100755
index 000000000..2a3c17986
--- /dev/null
+++ b/src/addon/competency/lang/sr-lt.json
@@ -0,0 +1,28 @@
+{
+ "activities": "Aktivnosti",
+ "competenciesmostoftennotproficientincourse": "Kompetencije koje najčešće nisu usavršene na ovom kursu",
+ "coursecompetencies": "Kompetencije kursa",
+ "coursecompetencyratingsarenotpushedtouserplans": "Rangiranje kompetencija na ovom kursu na utiče na planove učenja.",
+ "coursecompetencyratingsarepushedtouserplans": "Rangiranje kompetencija na ovom kursu se automatski ažurira u planovima učenja.",
+ "crossreferencedcompetencies": "Unakrsno povezane kompetencije",
+ "duedate": "Krajnji rok",
+ "errornocompetenciesfound": "Nije pronađena nijedna kompetencija",
+ "evidence": "Dokaz",
+ "learningplancompetencies": "Kompetencije plana učenja",
+ "learningplans": "Planovi učenja",
+ "myplans": "Moji planovi učenja",
+ "noactivities": "Nema aktivnosti",
+ "nocompetencies": "Nema kompetencija",
+ "nocrossreferencedcompetencies": "Nijedna druga kompetencija nije unakrsno povezana sa ovom kompetencijom.",
+ "noevidence": "Nema dokaza",
+ "noplanswerecreated": "Nije kreiran nijedan plan učenja.",
+ "path": "Putanja",
+ "proficient": "Stručan",
+ "progress": "Napredovanje polaznika",
+ "rating": "Ocena",
+ "reviewstatus": "Pregledaj status",
+ "status": "Status",
+ "template": "Šablon",
+ "xcompetenciesproficientoutofy": "{{$a.x}} od {{$a.y}} kompetencija su na najvišem nivou stručnosti",
+ "xcompetenciesproficientoutofyincourse": "Stručni ste u {{$a.x}} od {{$a.y}} kompetencija na ovom kursu."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/sv.json b/src/addon/competency/lang/sv.json
new file mode 100755
index 000000000..bd4f1f8b7
--- /dev/null
+++ b/src/addon/competency/lang/sv.json
@@ -0,0 +1,46 @@
+{
+ "activities": "Aktiviteter",
+ "competencies": "Kompetenser",
+ "competenciesmostoftennotproficientincourse": "Kompetenser som oftast ej uppnåtts i denna kurs",
+ "coursecompetencies": "Kurskompetenser",
+ "coursecompetencyratingsarenotpushedtouserplans": "Bedömning av kompetenser i denna kurs kommer inte att påverka studieplaner.",
+ "coursecompetencyratingsarepushedtouserplans": "Bedömning av kompetenser i denna kurs uppdateras omedelbart i studieplanerna.",
+ "crossreferencedcompetencies": "Korsrefererade kompetenser.",
+ "duedate": "Stoppdatum/tid",
+ "evidence": "Verifiering",
+ "evidence_competencyrule": "Regeln för kompetensen uppfylldes.",
+ "evidence_coursecompleted": "Kursen '{{$a}}' genomfördes.",
+ "evidence_coursemodulecompleted": "Aktiviteten '{{$a}}' genomfördes.",
+ "evidence_courserestored": "Bedömningen återställdes jäms med kursen '{{$a}}'.",
+ "evidence_evidenceofpriorlearninglinked": "Verifieringen av tidigare lärande '{{$a}}' länkades.",
+ "evidence_evidenceofpriorlearningunlinked": "Verifieringen av tidigare lärande '{{$a}}' avlänkades.",
+ "evidence_manualoverride": "Kompetensgraderingen sattes manuellt.",
+ "evidence_manualoverrideincourse": "Kompetensgraderingen sattes manuellt i kursen '{{$a}}'.",
+ "evidence_manualoverrideinplan": "Kompetensgraderingen sattes manuellt i studeplanen '{{$a}}'.",
+ "learningplancompetencies": "Kompetenser i studieplaner",
+ "learningplans": "Studieplaner",
+ "myplans": "Mina studieplaner",
+ "noactivities": "Inga aktiviteter",
+ "nocompetencies": "Inga kompetenser har skapats för detta ramverk",
+ "nocrossreferencedcompetencies": "Inga andra kompetenser har korsrefererats till denna kompetens.",
+ "noevidence": "Inga verifieringar",
+ "noplanswerecreated": "Inga studieplaner var skapade.",
+ "path": "Sökväg:",
+ "planstatusactive": "Aktiv",
+ "planstatuscomplete": "Komplett",
+ "planstatusdraft": "Utkast",
+ "planstatusinreview": "Granskning pågår",
+ "planstatuswaitingforreview": "Väntar på granskning",
+ "proficient": "Kunnig",
+ "progress": "Utveckling",
+ "rating": "Bedömning",
+ "reviewstatus": "Granska status",
+ "status": "Status",
+ "template": "Mall för studieplan",
+ "usercompetencystatus_idle": "Overksam",
+ "usercompetencystatus_inreview": "Bedömning pågår",
+ "usercompetencystatus_waitingforreview": "Väntar på bedömning",
+ "userplans": "Studieplaner",
+ "xcompetenciesproficientoutofy": "{{$a.x}} av {{$a.y}} kompetenser är uppnådda",
+ "xcompetenciesproficientoutofyincourse": "Du har uppnått {{$a.x}} av {{$a.y}} kompetenser i denna kurs.."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/tg.json b/src/addon/competency/lang/tg.json
new file mode 100755
index 000000000..f1318e243
--- /dev/null
+++ b/src/addon/competency/lang/tg.json
@@ -0,0 +1,8 @@
+{
+ "activities": "Унсурҳо",
+ "duedate": "Мӯҳлати охирини супурдан",
+ "path": "Роҳ",
+ "progress": "Дастовардҳои донишҷӯ",
+ "rating": "Рейтинг",
+ "status": "Ҳолат"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/tr.json b/src/addon/competency/lang/tr.json
new file mode 100755
index 000000000..d54aeeb73
--- /dev/null
+++ b/src/addon/competency/lang/tr.json
@@ -0,0 +1,46 @@
+{
+ "activities": "Etkinlikler",
+ "competencies": "Yetkinlikler",
+ "competenciesmostoftennotproficientincourse": "Bu dersi alan en çok yeterli olmayan yetkinlikler",
+ "coursecompetencies": "Ders yetkinlikleri",
+ "coursecompetencyratingsarenotpushedtouserplans": "Bu dersin yetkinlik dereceleri öğrenme planlarını etkilemez.",
+ "coursecompetencyratingsarepushedtouserplans": "Bu dersin yetkinlik dereceleri öğrenme planlarında anında güncellenir.",
+ "crossreferencedcompetencies": "Çapraz referanslı yetkinlikler",
+ "duedate": "Son teslim tarihi",
+ "evidence": "Öğrenme kanıtı",
+ "evidence_competencyrule": "Yetkinlik kuralı karşılandı.",
+ "evidence_coursecompleted": "'{{$a}}' dersi tamamlandı.",
+ "evidence_coursemodulecompleted": "'{{$a}}' etkinliği tamamlandı.",
+ "evidence_courserestored": "Değerlendirme, '{{$a}}' dersiyle birlikte geri yüklendi.",
+ "evidence_evidenceofpriorlearninglinked": "Önceki öğrenim '{{$a}}' ile ilgili kanıt bağlantılıydı.",
+ "evidence_evidenceofpriorlearningunlinked": "'{{$a}}' adlı önceden öğrenilenlerin kanıtları birbirine bağlı değildi.",
+ "evidence_manualoverride": "Yetkinlik derecesi elle ayarlandı.",
+ "evidence_manualoverrideincourse": "Yetkinlik derecesi '{{$a}}' dersinde elle ayarlandı.",
+ "evidence_manualoverrideinplan": "Yetkinlik derecesi '{{$a}}' öğrenme planında elle ayarlandı.",
+ "learningplancompetencies": "Öğrenme planı yetkinlikleri",
+ "learningplans": "Öğrenme planları",
+ "myplans": "Benim öğrenme planlarım",
+ "noactivities": "Etkinlikler yok",
+ "nocompetencies": "Bu çerçevede hiçbir yetkinlik oluşturulmamıştır.",
+ "nocrossreferencedcompetencies": "Bu yetkinliğe çapraz referanslı başka yetkinlik bulunmamaktadır.",
+ "noevidence": "Öğrenme kanıtı yok",
+ "noplanswerecreated": "Hiçbir öğrenme planı oluşturulmadı.",
+ "path": "Yol:",
+ "planstatusactive": "Aktif",
+ "planstatuscomplete": "Tamamla",
+ "planstatusdraft": "Taslak",
+ "planstatusinreview": "İncelemede",
+ "planstatuswaitingforreview": "İnceleme bekleniyor",
+ "proficient": "Yeterli",
+ "progress": "İlerleme",
+ "rating": "Derecelendirme",
+ "reviewstatus": "İnceleme durumu",
+ "status": "Durum",
+ "template": "Öğrenme planı şablonu",
+ "usercompetencystatus_idle": "Kullanılmayan",
+ "usercompetencystatus_inreview": "İncelemede",
+ "usercompetencystatus_waitingforreview": "İnceleme bekleniyor",
+ "userplans": "Öğrenme planları",
+ "xcompetenciesproficientoutofy": "{{$a.y}} yetkinliğinden {{$a.x}} dışarıda yeterli",
+ "xcompetenciesproficientoutofyincourse": "Bu derste {{$a.y}} yetkinliğin dışında {{$a.x}} yeterliliğe sahibisiniz."
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/uk.json b/src/addon/competency/lang/uk.json
new file mode 100755
index 000000000..8ba19bd44
--- /dev/null
+++ b/src/addon/competency/lang/uk.json
@@ -0,0 +1,47 @@
+{
+ "activities": "Види діяльності",
+ "competencies": "Компетентності",
+ "competenciesmostoftennotproficientincourse": "Компетентності, які найчастіше не досягаються у цьому курсі",
+ "coursecompetencies": "Компетентності курсу",
+ "coursecompetencyratingsarenotpushedtouserplans": "Оцінювання компетентностей цього курсу не впливають на навчальні плани",
+ "coursecompetencyratingsarepushedtouserplans": "Оцінювання компетентностей цього курсу будуть зразу передані в навчальні плани.",
+ "crossreferencedcompetencies": "Пов'язані компетентності",
+ "duedate": "Кінцевий термін здачі",
+ "errornocompetenciesfound": "Не знайдено компетенції",
+ "evidence": "Підтвердження",
+ "evidence_competencyrule": "Правило для компетентності досягнуте",
+ "evidence_coursecompleted": "Курс «{{$a}}» завершено.",
+ "evidence_coursemodulecompleted": "Діяльність «{{$a}}» завершена.",
+ "evidence_courserestored": "Оцінювання було відновлено з курсом «{{$a}}».",
+ "evidence_evidenceofpriorlearninglinked": "Зв'язок підтвердження «{{$a}}» встановлено.",
+ "evidence_evidenceofpriorlearningunlinked": "Зв'язок підтвердження «{{$a}}» видалено.",
+ "evidence_manualoverride": "Оцінювання компетентності дане вручну.",
+ "evidence_manualoverrideincourse": "Оцінювання компетентності дане вручну в курсі «{{$a}}».",
+ "evidence_manualoverrideinplan": "Оцінювання компетентності дане вручну в плані «{{$a}}».",
+ "learningplancompetencies": "Компетентності навчального плану",
+ "learningplans": "Навчальний план",
+ "myplans": "Мої навчальні плани",
+ "noactivities": "Жодної діяльності",
+ "nocompetencies": "Жодної компетентності не створено у цьому репозиторії",
+ "nocrossreferencedcompetencies": "Жодна інша компетентність не пов'язана з даною",
+ "noevidence": "Жодного підтвердження",
+ "noplanswerecreated": "Жодного навчального плану не було створено",
+ "path": "Шлях:",
+ "planstatusactive": "Активний",
+ "planstatuscomplete": "Завершений",
+ "planstatusdraft": "Чернетка",
+ "planstatusinreview": "В процесі підтвердження",
+ "planstatuswaitingforreview": "В очікуванні підтвердження",
+ "proficient": "Набута компетентність",
+ "progress": "Прогрес",
+ "rating": "Оцінювання",
+ "reviewstatus": "Статус підтвердження",
+ "status": "Статус",
+ "template": "Шаблон навчального плану",
+ "usercompetencystatus_idle": "В очікуванні",
+ "usercompetencystatus_inreview": "В процесі підтвердження",
+ "usercompetencystatus_waitingforreview": "В очікування підтвердження",
+ "userplans": "Навчальний план",
+ "xcompetenciesproficientoutofy": "{{$a.x}} компетентностей з {{$a.y}} набуті",
+ "xcompetenciesproficientoutofyincourse": "Ви набули {{$a.x}} компетентностей з {{$a.y}} наявних у цьому курсі"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/zh-cn.json b/src/addon/competency/lang/zh-cn.json
new file mode 100755
index 000000000..48f9fe6ae
--- /dev/null
+++ b/src/addon/competency/lang/zh-cn.json
@@ -0,0 +1,16 @@
+{
+ "activities": "活动",
+ "competenciesmostoftennotproficientincourse": "在这门课程中你有太多不精通的能力",
+ "coursecompetencies": "课程能力",
+ "duedate": "截止日",
+ "evidence": "凭据",
+ "noactivities": "没有设置活动",
+ "path": "路径",
+ "proficient": "精通",
+ "progress": "学生进度",
+ "rating": "正在评分",
+ "status": "勋章状态",
+ "template": "学习计划模板",
+ "xcompetenciesproficientoutofy": "{{$a.y}}个能力中的{{$a.x}}是精通的",
+ "xcompetenciesproficientoutofyincourse": "你精通这门课程{{$a.y}}个能力中的{{$a.x}}个。"
+}
\ No newline at end of file
diff --git a/src/addon/competency/lang/zh-tw.json b/src/addon/competency/lang/zh-tw.json
new file mode 100755
index 000000000..9106adffc
--- /dev/null
+++ b/src/addon/competency/lang/zh-tw.json
@@ -0,0 +1,28 @@
+{
+ "activities": "活動",
+ "competenciesmostoftennotproficientincourse": "大多數人在這課程無法達到精熟的核心能力",
+ "coursecompetencies": "課程核心能力",
+ "coursecompetencyratingsarenotpushedtouserplans": "在這一課程的核心能力評等不會影響學習計畫",
+ "coursecompetencyratingsarepushedtouserplans": "在這一課程的核心能力評等在學習計畫上會立即更新",
+ "crossreferencedcompetencies": "交互參照的核心能力",
+ "duedate": "到期日",
+ "errornocompetenciesfound": "找不到能使用的功能",
+ "evidence": "證據",
+ "learningplancompetencies": "學習計畫核心能力",
+ "learningplans": "學習計畫",
+ "myplans": "我的學習計畫",
+ "noactivities": "沒有活動",
+ "nocompetencies": "沒有功能",
+ "nocrossreferencedcompetencies": "沒有其他核心能力被交互參照這一核心能力",
+ "noevidence": "沒有證據",
+ "noplanswerecreated": "沒有學習計畫被建立",
+ "path": "路徑:",
+ "proficient": "精熟",
+ "progress": "進度",
+ "rating": "評等",
+ "reviewstatus": "審查狀況",
+ "status": "獎章狀態",
+ "template": "學習計畫樣版",
+ "xcompetenciesproficientoutofy": "在{{$a.y}}個核心能力中有{{$a.x}}個已經精熟",
+ "xcompetenciesproficientoutofyincourse": "在此課程中有{{$a.y}}個核心能力,你已經精熟{{$a.x}}個。"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/ar.json b/src/addon/coursecompletion/lang/ar.json
new file mode 100755
index 000000000..9069a17e6
--- /dev/null
+++ b/src/addon/coursecompletion/lang/ar.json
@@ -0,0 +1,21 @@
+{
+ "complete": "كامل",
+ "completecourse": "مقرر مكتمل",
+ "completed": "تم",
+ "completiondate": "تاريخ إكمال المقرر",
+ "couldnotloadreport": "لا يمكن تحميل تقرير إكمال المقرر، الرجاء المحاولة في وقت آخر",
+ "coursecompletion": "إكمال المقرر الدراسي",
+ "criteria": "معايير",
+ "criteriagroup": "مجموعة المعايير",
+ "criteriarequiredall": "كل المعايير في الأسفل مطلوبة",
+ "criteriarequiredany": "أي معيار في الأسفل مطلوب",
+ "inprogress": "قيد التنفيذ",
+ "manualselfcompletion": "إكمال يدوي ذاتي",
+ "notyetstarted": "لم يبدأ بعد",
+ "pending": "معلق",
+ "required": "مفروض",
+ "requiredcriteria": "المعايير المطلوبة",
+ "requirement": "المتطلبات",
+ "status": "الوضع",
+ "viewcoursereport": "عرض تقرير المقرر"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/bg.json b/src/addon/coursecompletion/lang/bg.json
new file mode 100755
index 000000000..449302205
--- /dev/null
+++ b/src/addon/coursecompletion/lang/bg.json
@@ -0,0 +1,14 @@
+{
+ "complete": "Завършен",
+ "completed": "Завършено",
+ "coursecompletion": "Завършване на курса",
+ "criteria": "Критерии",
+ "criteriagroup": "Група критерии",
+ "criteriarequiredall": "Всички критерии по-долу са задължителни",
+ "criteriarequiredany": "Някои критерии по-долу са задължителни",
+ "inprogress": "В прогрес",
+ "manualselfcompletion": "Ръчно самоотбелязване на завършването",
+ "required": "Задължително",
+ "status": "Състояние",
+ "viewcoursereport": "Вижте отчет за курса"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/ca.json b/src/addon/coursecompletion/lang/ca.json
new file mode 100755
index 000000000..7958e6cea
--- /dev/null
+++ b/src/addon/coursecompletion/lang/ca.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Completa",
+ "completecourse": "Curs complet",
+ "completed": "Completat",
+ "completiondate": "Data de compleció",
+ "couldnotloadreport": "No es pot carregar l'informe de compleció del curs, torneu a intentar-ho més tard.",
+ "coursecompletion": "Compleció de curs",
+ "criteria": "Criteris",
+ "criteriagroup": "Grup de criteris",
+ "criteriarequiredall": "Cal que es compleixin tots els criteris que es mostren a continuació",
+ "criteriarequiredany": "Cal que es compleixi algun dels criteris que es mostren a continuació",
+ "inprogress": "En progrés",
+ "manualselfcompletion": "Auto-compleció manual",
+ "notyetstarted": "No s'ha començat encara",
+ "pending": "Pendent",
+ "required": "Requerit",
+ "requiredcriteria": "Criteri requerit",
+ "requirement": "Requisit",
+ "status": "Estat de la insígnia",
+ "viewcoursereport": "Visualitza l'informe del curs"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/cs.json b/src/addon/coursecompletion/lang/cs.json
new file mode 100755
index 000000000..e437ad93b
--- /dev/null
+++ b/src/addon/coursecompletion/lang/cs.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Splněno",
+ "completecourse": "Absolvovaný kurz",
+ "completed": "Hotovo",
+ "completiondate": "Datum ukončení",
+ "couldnotloadreport": "Nelze načíst zprávu o absolvování kurzu. Zkuste to prosím později.",
+ "coursecompletion": "Studenti musí absolvovat tento kurz",
+ "criteria": "Podmínky",
+ "criteriagroup": "Skupina podmínek",
+ "criteriarequiredall": "Všechny podmínky musí být splněny",
+ "criteriarequiredany": "Jakákoli z podmínek musí být splněna",
+ "inprogress": "Probíhající",
+ "manualselfcompletion": "Označení absolvování kurzu samotným studentem",
+ "notyetstarted": "Zatím nezačalo",
+ "pending": "Probíhající",
+ "required": "Vyžadováno",
+ "requiredcriteria": "Vyžadované podmínky",
+ "requirement": "Požadavek",
+ "status": "Stav",
+ "viewcoursereport": "Zobrazit přehled kurzu"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/da.json b/src/addon/coursecompletion/lang/da.json
new file mode 100755
index 000000000..9f617cc8b
--- /dev/null
+++ b/src/addon/coursecompletion/lang/da.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Færdiggør",
+ "completecourse": "Fuldfør kursus",
+ "completed": "Gennemført",
+ "completiondate": "Afslutningsdato",
+ "couldnotloadreport": "Kunne ikke indlæse rapporten vedrørende kursusfuldførelse, prøv igen senere.",
+ "coursecompletion": "Kursusgennemførelse",
+ "criteria": "Kriterie",
+ "criteriagroup": "Kriteriegruppe",
+ "criteriarequiredall": "Alle kriterier herunder er påkrævet",
+ "criteriarequiredany": "Et af kriterierne herunder er påkrævet",
+ "inprogress": "Igangværende",
+ "manualselfcompletion": "Manuel selvregistrering af gennemførelse",
+ "notyetstarted": "Ikke begyndt endnu",
+ "pending": "Behandles",
+ "required": "Påkrævet",
+ "requiredcriteria": "Påkrævede kriterier",
+ "requirement": "Krav",
+ "status": "Badgestatus",
+ "viewcoursereport": "Vis kursusrapport"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/de-du.json b/src/addon/coursecompletion/lang/de-du.json
new file mode 100755
index 000000000..aea57098d
--- /dev/null
+++ b/src/addon/coursecompletion/lang/de-du.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Fertig",
+ "completecourse": "Kurs abschließen",
+ "completed": "Abgeschlossen",
+ "completiondate": "Abschlussdatum",
+ "couldnotloadreport": "Fehler beim Laden des Abschlussberichts. Versuche es später noch einmal.",
+ "coursecompletion": "Teilnehmer/innen müssen diesen Kurs abschließen.",
+ "criteria": "Kriterien",
+ "criteriagroup": "Kriteriengruppe",
+ "criteriarequiredall": "Alle nachfolgenden Kriterien sind notwendig",
+ "criteriarequiredany": "Eine der nachfolgenden Kriterien ist notwendig",
+ "inprogress": "In Bearbeitung",
+ "manualselfcompletion": "Manueller eigener Abschluss",
+ "notyetstarted": "Noch nicht begonnen",
+ "pending": "Unerledigt",
+ "required": "Erforderlich",
+ "requiredcriteria": "Notwendiges Kriterium",
+ "requirement": "Anforderung",
+ "status": "Existierende Einschreibungen erlauben",
+ "viewcoursereport": "Kursbericht ansehen"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/de.json b/src/addon/coursecompletion/lang/de.json
new file mode 100755
index 000000000..5634fde09
--- /dev/null
+++ b/src/addon/coursecompletion/lang/de.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Abschließen",
+ "completecourse": "Kurs abschließen",
+ "completed": "Abgeschlossen",
+ "completiondate": "Abschlussdatum",
+ "couldnotloadreport": "Fehler beim Laden des Abschlussberichts. Versuchen Sie es später noch einmal.",
+ "coursecompletion": "Kursabschluss",
+ "criteria": "Kriterien",
+ "criteriagroup": "Kriteriengruppe",
+ "criteriarequiredall": "Alle nachfolgenden Kriterien sind notwendig.",
+ "criteriarequiredany": "Ein nachfolgendes Kriterium ist notwendig.",
+ "inprogress": "In Arbeit",
+ "manualselfcompletion": "Manueller Selbstabschluss",
+ "notyetstarted": "Nicht begonnen",
+ "pending": "Nicht erledigt",
+ "required": "Notwendig",
+ "requiredcriteria": "Notwendige Kriterien",
+ "requirement": "Anforderung",
+ "status": "Status",
+ "viewcoursereport": "Kursbericht anzeigen"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/el.json b/src/addon/coursecompletion/lang/el.json
new file mode 100755
index 000000000..6c49a5c34
--- /dev/null
+++ b/src/addon/coursecompletion/lang/el.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Ολοκλήρωση",
+ "completecourse": "Ολοκλήρωση μαθήματος",
+ "completed": "ολοκληρώθηκε",
+ "completiondate": "Ημερομηνία ολοκλήρωσης",
+ "couldnotloadreport": "Δεν ήταν δυνατή η φόρτωση της αναφοράς ολοκλήρωσης του μαθήματος, δοκιμάστε ξανά αργότερα.",
+ "coursecompletion": "Ολοκλήρωση μαθήματος",
+ "criteria": "Kριτήρια",
+ "criteriagroup": "Ομάδα κριτηρίων",
+ "criteriarequiredall": "Όλα τα παρακάτω κριτήρια είναι απαραίτητα",
+ "criteriarequiredany": "Τα παρακάτω κριτήρια είναι απαραίτητα",
+ "inprogress": "Σε εξέλιξη",
+ "manualselfcompletion": "Χειροκίνητη αυτό-ολοκλήρωση",
+ "notyetstarted": "Δεν έχει ξεκινήσει ακόμα",
+ "pending": "Σε εκκρεμότητα",
+ "required": "Απαιτείται",
+ "requiredcriteria": "Απαιτούμενα κριτήρια",
+ "requirement": "Απαίτηση",
+ "status": "Επιτρέπεται η πρόσβαση στους επισκέπτες",
+ "viewcoursereport": "Προβολή αναφορά μαθήματος"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/es-mx.json b/src/addon/coursecompletion/lang/es-mx.json
new file mode 100755
index 000000000..68f9e01d8
--- /dev/null
+++ b/src/addon/coursecompletion/lang/es-mx.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Completado",
+ "completecourse": "Curso completo",
+ "completed": "Finalizado",
+ "completiondate": "Fecha de terminación",
+ "couldnotloadreport": "No pudo cargarse el reporte de finalización del curso. Por favor inténtelo más tarde.",
+ "coursecompletion": "Finalización de curso",
+ "criteria": "Criterios",
+ "criteriagroup": "Grupo de criterios",
+ "criteriarequiredall": "Son necesarios todos los criterios que aparecen más abajo",
+ "criteriarequiredany": "Es necesario cualquiera de los criterios que aparecen más abajo",
+ "inprogress": "En curso",
+ "manualselfcompletion": "Auto-finalizar manualmente",
+ "notyetstarted": "Aún no ha comenzado",
+ "pending": "Pendiente",
+ "required": "Obligatorio",
+ "requiredcriteria": "Criterios necesarios",
+ "requirement": "Requisito",
+ "status": "Estatus de insignias",
+ "viewcoursereport": "Ver reporte del curso"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/es.json b/src/addon/coursecompletion/lang/es.json
new file mode 100755
index 000000000..a061fa035
--- /dev/null
+++ b/src/addon/coursecompletion/lang/es.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Finalizado",
+ "completecourse": "Curso completado",
+ "completed": "completada",
+ "completiondate": "Fecha de finalización",
+ "couldnotloadreport": "No se puede cargar el informe de finalización del curso, por favor inténtalo de nuevo más tarde.",
+ "coursecompletion": "Los usuarios deben finalizar este curso.",
+ "criteria": "Criterios",
+ "criteriagroup": "Grupo de criterios",
+ "criteriarequiredall": "Son necesarios todos los criterios que aparecen más abajo",
+ "criteriarequiredany": "Es necesario cualquiera de los criterios que aparecen más abajo",
+ "inprogress": "En progreso",
+ "manualselfcompletion": "Autocompletar manualmente",
+ "notyetstarted": "Aún no comenzado",
+ "pending": "Pendiente",
+ "required": "Obligatorio",
+ "requiredcriteria": "Criterios necesarios",
+ "requirement": "Requisito",
+ "status": "Estado de la insignia",
+ "viewcoursereport": "Ver informe del curso"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/eu.json b/src/addon/coursecompletion/lang/eu.json
new file mode 100755
index 000000000..952157424
--- /dev/null
+++ b/src/addon/coursecompletion/lang/eu.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Osoa",
+ "completecourse": "Ikastaroa osatu",
+ "completed": "Osatuta",
+ "completiondate": "Osaketa-data",
+ "couldnotloadreport": "Ezin izan da ikastaro-osaketaren txostena kargatu. Mesedez saiatu beranduago.",
+ "coursecompletion": "Ikastaro-osaketa",
+ "criteria": "Irizpidea",
+ "criteriagroup": "Irizpide-multzoa",
+ "criteriarequiredall": "Beheko irizpide guztiak dira beharrezko.",
+ "criteriarequiredany": "Beheko hainbat irizpide dira beharrezko.",
+ "inprogress": "Ari da",
+ "manualselfcompletion": "Norberak eskuz osatu",
+ "notyetstarted": "Ez da hasi",
+ "pending": "Egin gabe",
+ "required": "Beharrezkoa",
+ "requiredcriteria": "Irizpidea behar da",
+ "requirement": "Eskakizuna",
+ "status": "Egoera",
+ "viewcoursereport": "Ikastaroaren txostena ikusi"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/fa.json b/src/addon/coursecompletion/lang/fa.json
new file mode 100755
index 000000000..451cd0c42
--- /dev/null
+++ b/src/addon/coursecompletion/lang/fa.json
@@ -0,0 +1,17 @@
+{
+ "complete": "کامل",
+ "completed": "تکمیلشده",
+ "coursecompletion": "تکمیل درس",
+ "criteria": "ضابطه",
+ "criteriagroup": "گروه ضوابط",
+ "criteriarequiredall": "تمام ضوابط زیر باید برآورده شوند",
+ "criteriarequiredany": "حداقل یکی از ضوابط زیر برآورده شود",
+ "inprogress": "در جریان",
+ "manualselfcompletion": "علامت زدن به عنوان کامل توسط خود افراد",
+ "notyetstarted": "هنوز شروع نشده است",
+ "pending": "در حال بررسی",
+ "required": "لازم است",
+ "requiredcriteria": "ضوابط مورد نیاز",
+ "status": "وضعیت مدال",
+ "viewcoursereport": "مشاهده گزارش درس"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/fi.json b/src/addon/coursecompletion/lang/fi.json
new file mode 100755
index 000000000..f06c6b664
--- /dev/null
+++ b/src/addon/coursecompletion/lang/fi.json
@@ -0,0 +1,20 @@
+{
+ "complete": "Suoritettu loppuun",
+ "completed": "valmis",
+ "completiondate": "Suorituspäivämäärä",
+ "couldnotloadreport": "Kurssin suoritusraporttia ei pystytty lataamaan. Ole hyvä ja yritä myöhemmin uudelleen.",
+ "coursecompletion": "Kurssin lopetus",
+ "criteria": "Kriteeri",
+ "criteriagroup": "Kriteeriryhmä",
+ "criteriarequiredall": "Kaikki alla olevat kriteerit vaaditaan",
+ "criteriarequiredany": "Jokin alla olevista kriteereistä vaaditaan",
+ "inprogress": "Kesken",
+ "manualselfcompletion": "Opiskelijan itse hyväksymät suoritukset",
+ "notyetstarted": "Ei vielä aloitettu",
+ "pending": "Vireillä",
+ "required": "Pakollinen",
+ "requiredcriteria": "Vaaditut kriteerit",
+ "requirement": "Vaatimus",
+ "status": "Tilanne",
+ "viewcoursereport": "Näytä kurssin raportti"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/fr.json b/src/addon/coursecompletion/lang/fr.json
new file mode 100755
index 000000000..e0290d8a8
--- /dev/null
+++ b/src/addon/coursecompletion/lang/fr.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Complet",
+ "completecourse": "Terminer le cours",
+ "completed": "Terminé",
+ "completiondate": "Date d'achèvement",
+ "couldnotloadreport": "Impossible de charger le rapport d'achèvement de cours. Veuillez essayer plus tard.",
+ "coursecompletion": "Achèvement de cours",
+ "criteria": "Critères",
+ "criteriagroup": "Groupe de critères",
+ "criteriarequiredall": "Tous les critères ci-dessous sont requis",
+ "criteriarequiredany": "Un des critères ci-dessous est requis",
+ "inprogress": "En cours",
+ "manualselfcompletion": "Auto-achèvement manuel",
+ "notyetstarted": "Pas encore commencé",
+ "pending": "En suspens",
+ "required": "Requis",
+ "requiredcriteria": "Critères requis",
+ "requirement": "Condition",
+ "status": "Statut du badge",
+ "viewcoursereport": "Consulter le rapport du cours"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/he.json b/src/addon/coursecompletion/lang/he.json
new file mode 100755
index 000000000..021aaa2b3
--- /dev/null
+++ b/src/addon/coursecompletion/lang/he.json
@@ -0,0 +1,20 @@
+{
+ "complete": "הושלם",
+ "completecourse": "השלמת קורס",
+ "completed": "הושלם",
+ "completiondate": "תאריך השלמה",
+ "coursecompletion": "השלמת הקורס",
+ "criteria": "תנאי",
+ "criteriagroup": "קבוצת תנאים",
+ "criteriarequiredall": "כל התנאים המצויינים מטה נדרשים",
+ "criteriarequiredany": "לפחות אחד מהתנאים המצויינים מטה נדרשים",
+ "inprogress": "בלמידה",
+ "manualselfcompletion": "השלמה עצמאית ידנית",
+ "notyetstarted": "עדיין לא התחיל",
+ "pending": "בתהליך למידה",
+ "required": "דרוש",
+ "requiredcriteria": "תנאי נדרש",
+ "requirement": "דרישה",
+ "status": "סטטוס ההישג",
+ "viewcoursereport": "צפיה בדוח הקורס"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/hr.json b/src/addon/coursecompletion/lang/hr.json
new file mode 100755
index 000000000..18d107012
--- /dev/null
+++ b/src/addon/coursecompletion/lang/hr.json
@@ -0,0 +1,19 @@
+{
+ "complete": "Potpuno",
+ "completed": "Završeno",
+ "completiondate": "Datum dovršetka",
+ "coursecompletion": "Dovršenost e-kolegija",
+ "criteria": "Kriterij",
+ "criteriagroup": "Grupa kriterija",
+ "criteriarequiredall": "Potrebno je zadovoljenje svih doljnjih kriterija",
+ "criteriarequiredany": "Potrebno je zadovoljenje bilo kojeg doljnjeg kriterija",
+ "inprogress": "U tijeku",
+ "manualselfcompletion": "Ručni dovršetak",
+ "notyetstarted": "Nije još započelo",
+ "pending": "Na čekanju",
+ "required": "Obvezatno",
+ "requiredcriteria": "Obvezatni kriterij",
+ "requirement": "Uvjet",
+ "status": "Status",
+ "viewcoursereport": "Prikaz izvješća e-kolegija"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/hu.json b/src/addon/coursecompletion/lang/hu.json
new file mode 100755
index 000000000..634b44da7
--- /dev/null
+++ b/src/addon/coursecompletion/lang/hu.json
@@ -0,0 +1,17 @@
+{
+ "complete": "Teljes",
+ "completed": "Teljesítve",
+ "coursecompletion": "Kurzus teljesítése",
+ "criteria": "Követelmények",
+ "criteriagroup": "Követelménycsoport",
+ "criteriarequiredall": "Az összes alábbi követelmény teljesítendő",
+ "criteriarequiredany": "Bármely alábbi követelmény teljesítendő",
+ "inprogress": "Folyamatban lévő",
+ "manualselfcompletion": "Saját teljesítés kézzel",
+ "notyetstarted": "Még nem kezdődött el",
+ "pending": "Függőben",
+ "required": "Kitöltendő",
+ "requiredcriteria": "Előírt követelmények",
+ "status": "Állapot",
+ "viewcoursereport": "Kurzusjelentés megtekintése"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/it.json b/src/addon/coursecompletion/lang/it.json
new file mode 100755
index 000000000..96e020ef8
--- /dev/null
+++ b/src/addon/coursecompletion/lang/it.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Completo",
+ "completecourse": "Corso completato",
+ "completed": "Completata",
+ "completiondate": "Data di completamento",
+ "couldnotloadreport": "Non è stato possibile caricare il report di completamento del corso, per favore riprova più tardi.",
+ "coursecompletion": "Completamento corso",
+ "criteria": "Criteri",
+ "criteriagroup": "Gruppo di criteri",
+ "criteriarequiredall": "E' richiesto il soddisfacimento di tutti i criteri elencati",
+ "criteriarequiredany": "E' richiesto il soddisfacimento di almeno uno dei criteri elencati",
+ "inprogress": "In corso",
+ "manualselfcompletion": "Conferma personale di completamento",
+ "notyetstarted": "Non ancora iniziato",
+ "pending": "In attesa",
+ "required": "Obbligatorio",
+ "requiredcriteria": "Criteri da soddisfare",
+ "requirement": "Requisito",
+ "status": "Stato badge",
+ "viewcoursereport": "Visualizza il report del corso"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/ja.json b/src/addon/coursecompletion/lang/ja.json
new file mode 100755
index 000000000..df8a2b863
--- /dev/null
+++ b/src/addon/coursecompletion/lang/ja.json
@@ -0,0 +1,21 @@
+{
+ "complete": "詳細",
+ "completecourse": "コース完了",
+ "completed": "完了",
+ "completiondate": "完了した日",
+ "couldnotloadreport": "コース完了の読み込みができませんでした。後でもう一度試してください。",
+ "coursecompletion": "ユーザはこのコースを完了する必要があります。",
+ "criteria": "クライテリア",
+ "criteriagroup": "クライテリアグループ",
+ "criteriarequiredall": "下記のクライテリアすべてが必須である",
+ "criteriarequiredany": "下記いくつかのクライテリアが必須である",
+ "inprogress": "進行中",
+ "manualselfcompletion": "手動による自己完了",
+ "notyetstarted": "未開始",
+ "pending": "保留",
+ "required": "必須",
+ "requiredcriteria": "必須クライテリア",
+ "requirement": "要求",
+ "status": "ステータス",
+ "viewcoursereport": "コースレポートを表示する"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/ko.json b/src/addon/coursecompletion/lang/ko.json
new file mode 100755
index 000000000..eae7220c2
--- /dev/null
+++ b/src/addon/coursecompletion/lang/ko.json
@@ -0,0 +1,21 @@
+{
+ "complete": "완료",
+ "completecourse": "강좌 완료",
+ "completed": "완료됨",
+ "completiondate": "완료일",
+ "couldnotloadreport": "강좌 완료 보고서를 로드 할 수 없습니다. 나중에 다시 시도 해주십시오.",
+ "coursecompletion": "강좌이수완료",
+ "criteria": "기준",
+ "criteriagroup": "기준 모둠",
+ "criteriarequiredall": "아래의 모든 기준이 필요합니다.",
+ "criteriarequiredany": "아래의 어떤 기준도 필요합니다,",
+ "inprogress": "진행 중",
+ "manualselfcompletion": "강좌이수 수동확인",
+ "notyetstarted": "아직 시작 안했습니다.",
+ "pending": "유예",
+ "required": "필수사항",
+ "requiredcriteria": "필수 기준",
+ "requirement": "요구사항",
+ "status": "뱃지 상태",
+ "viewcoursereport": "강좌 보고서 보기"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/lt.json b/src/addon/coursecompletion/lang/lt.json
new file mode 100755
index 000000000..e26747a5e
--- /dev/null
+++ b/src/addon/coursecompletion/lang/lt.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Užbaigti",
+ "completecourse": "Visa kursų medžiaga",
+ "completed": "Baigtas",
+ "completiondate": "Užbaigimo data",
+ "couldnotloadreport": "Nepavyko įkelti kursų baigimo ataskaitos, prašome pabandyti vėliau.",
+ "coursecompletion": "Kurso baigimas",
+ "criteria": "Kriterijai",
+ "criteriagroup": "Kriterijų grupė",
+ "criteriarequiredall": "Visi žemiau pateikti kriterijai yra būtini",
+ "criteriarequiredany": "Bet kuris žemiau pateiktas kriterijus yra būtinas",
+ "inprogress": "Atliekama",
+ "manualselfcompletion": "Savas užbaigimas neautomatiniu būdu",
+ "notyetstarted": "Dar nepradėta",
+ "pending": "Laukiama",
+ "required": "Būtina",
+ "requiredcriteria": "Būtini kriterijai",
+ "requirement": "Būtina sąlyga",
+ "status": "Pasiekimo būsena",
+ "viewcoursereport": "Peržiūrėti kursų ataskaitą"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/mr.json b/src/addon/coursecompletion/lang/mr.json
new file mode 100755
index 000000000..0e0177653
--- /dev/null
+++ b/src/addon/coursecompletion/lang/mr.json
@@ -0,0 +1,21 @@
+{
+ "complete": "पूर्ण",
+ "completecourse": "पूर्ण अभ्यासक्रम",
+ "completed": "पुर्ण झाली.",
+ "completiondate": "Completion date",
+ "couldnotloadreport": "अभ्यासक्रम पूर्ण केल्याचे अहवाल लोड करणे शक्य नाही, कृपया नंतर पुन्हा प्रयत्न करा.",
+ "coursecompletion": "अभ्यासक्रम पूर्ण",
+ "criteria": "निकष",
+ "criteriagroup": "निकष गट",
+ "criteriarequiredall": "खालील सर्व निकष आवश्यक आहेत",
+ "criteriarequiredany": "खालीलपैकी कोणताही निकष आवश्यक आहेत",
+ "inprogress": "प्रगतीपथावर",
+ "manualselfcompletion": "स्वयं पूर्ण",
+ "notyetstarted": "स्वतःच्या हाताने पूर्ण",
+ "pending": "प्रलंबित",
+ "required": "गरजेचे आहे.",
+ "requiredcriteria": "आवश्यक निकष",
+ "requirement": "आवश्यकता",
+ "status": "दर्जा",
+ "viewcoursereport": "अभ्यासक्रम अहवाल पहा"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/nl.json b/src/addon/coursecompletion/lang/nl.json
new file mode 100755
index 000000000..e8fdb985c
--- /dev/null
+++ b/src/addon/coursecompletion/lang/nl.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Voltooid",
+ "completecourse": "Voltooi cursus",
+ "completed": "Volledig",
+ "completiondate": "Voltooiingsdatum",
+ "couldnotloadreport": "Kon het voltooiingsrapport van de cursus niet laden. Probeer later opnieuw.",
+ "coursecompletion": "Cursus voltooien",
+ "criteria": "Criteria",
+ "criteriagroup": "Criteria groep",
+ "criteriarequiredall": "Alle onderstaande criteria zijn vereist",
+ "criteriarequiredany": "Al onderstaande criteria zijn vereist",
+ "inprogress": "Actief",
+ "manualselfcompletion": "Manueel voltooien",
+ "notyetstarted": "Nog niet begonnen",
+ "pending": "Bezig",
+ "required": "Verplicht",
+ "requiredcriteria": "Vereiste criteria",
+ "requirement": "Vereiste",
+ "status": "Badge status",
+ "viewcoursereport": "Bekijk cursusrapport"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/no.json b/src/addon/coursecompletion/lang/no.json
new file mode 100755
index 000000000..a7d05911d
--- /dev/null
+++ b/src/addon/coursecompletion/lang/no.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Fullført",
+ "completecourse": "Fullfør kurs",
+ "completed": "Fullført",
+ "completiondate": "Fullført dato",
+ "couldnotloadreport": "Kunne ikke laste kursets avslutningsrapport. Prøv igjen senere.",
+ "coursecompletion": "Kursfullføring",
+ "criteria": "Kriterie",
+ "criteriagroup": "Kriteriegruppe",
+ "criteriarequiredall": "Alle kriteriene under er obligatoriske",
+ "criteriarequiredany": "Ethvert kriterium under er obligatorisk",
+ "inprogress": "Pågår",
+ "manualselfcompletion": "Manuell egenregistrering av fullføring",
+ "notyetstarted": "Ikke startet ennå",
+ "pending": "Behandles",
+ "required": "Påkrevd",
+ "requiredcriteria": "Påkrevde kriterier",
+ "requirement": "Krav",
+ "status": "Status for utmerkelse",
+ "viewcoursereport": "Vis kursrapport"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/pl.json b/src/addon/coursecompletion/lang/pl.json
new file mode 100755
index 000000000..a2dd43de3
--- /dev/null
+++ b/src/addon/coursecompletion/lang/pl.json
@@ -0,0 +1,17 @@
+{
+ "complete": "Zakończone",
+ "completed": "Ukończony",
+ "coursecompletion": "Ukończenie kursu",
+ "criteria": "Kryteria",
+ "criteriagroup": "Grupa kryteriów",
+ "criteriarequiredall": "Wszystkie poniższe kryteria są wymagane",
+ "criteriarequiredany": "Wszystkie poniższe kryteria są wymagane",
+ "inprogress": "Aktualne",
+ "manualselfcompletion": "Samodzielne oznaczenie ukończenia",
+ "notyetstarted": "Jeszcze nie rozpoczęto",
+ "pending": "Oczekujący",
+ "required": "Wymagane",
+ "requiredcriteria": "Wymagane kryteria",
+ "status": "Status",
+ "viewcoursereport": "Zobacz raport kursu"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/pt-br.json b/src/addon/coursecompletion/lang/pt-br.json
new file mode 100755
index 000000000..6ffa2866e
--- /dev/null
+++ b/src/addon/coursecompletion/lang/pt-br.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Completo",
+ "completecourse": "Curso concluído",
+ "completed": "Concluído",
+ "completiondate": "Data de conclusão",
+ "couldnotloadreport": "Não foi possível carregar o relatório de conclusão do curso, por favor tente novamente mais tarde.",
+ "coursecompletion": "Andamento do curso",
+ "criteria": "Critérios",
+ "criteriagroup": "Grupo de critérios",
+ "criteriarequiredall": "Todos os critérios abaixo são necessários",
+ "criteriarequiredany": "Qualquer um dos critérios abaixo são necessários",
+ "inprogress": "Em andamento",
+ "manualselfcompletion": "Conclusão manual por si mesmo",
+ "notyetstarted": "Não iniciado ainda",
+ "pending": "Pendentes",
+ "required": "Necessários",
+ "requiredcriteria": "Critérios exigidos",
+ "requirement": "Exigência",
+ "status": "Status",
+ "viewcoursereport": "Ver relatório do curso"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/pt.json b/src/addon/coursecompletion/lang/pt.json
new file mode 100755
index 000000000..47b608d60
--- /dev/null
+++ b/src/addon/coursecompletion/lang/pt.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Completo",
+ "completecourse": "Disciplina concluída",
+ "completed": "Completou",
+ "completiondate": "Data de conclusão",
+ "couldnotloadreport": "Não foi possível carregar o relatório de conclusão da disciplina. Por favor, tente mais tarde.",
+ "coursecompletion": "Os utilizadores têm de concluir esta disciplina",
+ "criteria": "Critérios",
+ "criteriagroup": "Grupo de critérios",
+ "criteriarequiredall": "Todos os critérios abaixo são exigidos",
+ "criteriarequiredany": "Qualquer dos critérios abaixo é necessário",
+ "inprogress": "Em progresso",
+ "manualselfcompletion": "Conclusão manual pelo próprio",
+ "notyetstarted": "Ainda não iniciou",
+ "pending": "Pendente",
+ "required": "Obrigatório",
+ "requiredcriteria": "Critério obrigatório",
+ "requirement": "Requisito",
+ "status": "Estado da Medalha",
+ "viewcoursereport": "Ver relatório da disciplina"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/ro.json b/src/addon/coursecompletion/lang/ro.json
new file mode 100755
index 000000000..7a195f67c
--- /dev/null
+++ b/src/addon/coursecompletion/lang/ro.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Finalizează",
+ "completecourse": "Curs complet",
+ "completed": "Finalizare",
+ "completiondate": "Data limita până la completarea acțiunii",
+ "couldnotloadreport": "Raportul cu privire la situația completării cursului nu se poate încărca, încercați mai târziu.",
+ "coursecompletion": "Absolvire curs",
+ "criteria": "Criterii",
+ "criteriagroup": "Grup criterii",
+ "criteriarequiredall": "Toate criteriile de mai jos sunt necesare",
+ "criteriarequiredany": "Oricare dintre criteriile de mai jos sunt necesare",
+ "inprogress": "În curs",
+ "manualselfcompletion": "Auto-finalizare manuală",
+ "notyetstarted": "Nu a fost încă început",
+ "pending": "În așteptare",
+ "required": "Necesar",
+ "requiredcriteria": "Criteriu necesar",
+ "requirement": "Cerințe",
+ "status": "Status",
+ "viewcoursereport": "Vezi raportul cursului"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/ru.json b/src/addon/coursecompletion/lang/ru.json
new file mode 100755
index 000000000..846562655
--- /dev/null
+++ b/src/addon/coursecompletion/lang/ru.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Завершено",
+ "completecourse": "Завершить курс",
+ "completed": "Выполнено",
+ "completiondate": "Дата завершения",
+ "couldnotloadreport": "Невозможно загрузить отчёт о завершении курса. Пожалуйста, попробуйте ещё раз позже.",
+ "coursecompletion": "Окончание курса",
+ "criteria": "Критерий",
+ "criteriagroup": "Группа критериев",
+ "criteriarequiredall": "Требуются соответствие всем указанным ниже критериям",
+ "criteriarequiredany": "Требуется соответствие любому из указанных ниже критериев",
+ "inprogress": "В процессе",
+ "manualselfcompletion": "Пользователь может сам поставить отметку о выполнении",
+ "notyetstarted": "Еще не началось",
+ "pending": "Ожидается",
+ "required": "Необходимо заполнить",
+ "requiredcriteria": "Необходимые критерии",
+ "requirement": "Требование",
+ "status": "Статус значка",
+ "viewcoursereport": "Просмотреть отчет по курсу"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/sr-cr.json b/src/addon/coursecompletion/lang/sr-cr.json
new file mode 100755
index 000000000..610e78602
--- /dev/null
+++ b/src/addon/coursecompletion/lang/sr-cr.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Заврши",
+ "completecourse": "Заврши курс",
+ "completed": "Завршено",
+ "completiondate": "Датум завршетка",
+ "couldnotloadreport": "Није могуће учитати извештај о завршетку курса. Молимо вас, покушајте поново касније.",
+ "coursecompletion": "Завршетак курса",
+ "criteria": "Критеријуми",
+ "criteriagroup": "Група критеријума",
+ "criteriarequiredall": "Сви доле наведени критеријуми су неопходни",
+ "criteriarequiredany": "Било који од доле наведених критеријума је неопходан",
+ "inprogress": "У току",
+ "manualselfcompletion": "Ручни самостални завршетак",
+ "notyetstarted": "Још није започето",
+ "pending": "На чекању",
+ "required": "Неопходно",
+ "requiredcriteria": "Неопходни критеријуми",
+ "requirement": "Услов",
+ "status": "Статус",
+ "viewcoursereport": "Прикажи извештај са курса"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/sr-lt.json b/src/addon/coursecompletion/lang/sr-lt.json
new file mode 100755
index 000000000..6553f9f39
--- /dev/null
+++ b/src/addon/coursecompletion/lang/sr-lt.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Završi",
+ "completecourse": "Završi kurs",
+ "completed": "Završeno",
+ "completiondate": "Datum završetka",
+ "couldnotloadreport": "Nije moguće učitati izveštaj o završetku kursa. Molimo vas, pokušajte ponovo kasnije.",
+ "coursecompletion": "Završetak kursa",
+ "criteria": "Kriterijumi",
+ "criteriagroup": "Grupa kriterijuma",
+ "criteriarequiredall": "Svi dole navedeni kriterijumi su neophodni",
+ "criteriarequiredany": "Bilo koji od dole navedenih kriterijuma je neophodan",
+ "inprogress": "U toku",
+ "manualselfcompletion": "Ručni samostalni završetak",
+ "notyetstarted": "Još nije započeto",
+ "pending": "Na čekanju",
+ "required": "Neophodno",
+ "requiredcriteria": "Neophodni kriterijumi",
+ "requirement": "Uslov",
+ "status": "Status",
+ "viewcoursereport": "Prikaži izveštaj sa kursa"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/sv.json b/src/addon/coursecompletion/lang/sv.json
new file mode 100755
index 000000000..df193278a
--- /dev/null
+++ b/src/addon/coursecompletion/lang/sv.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Komplett",
+ "completecourse": "",
+ "completed": "Slutfört",
+ "completiondate": "Datum för fullföljande",
+ "couldnotloadreport": "Det gick inte att läsa in rapporten för fullföljande av kursen, vänligen försök igen senare .",
+ "coursecompletion": "Fullgörande av kurs",
+ "criteria": "Kriterier",
+ "criteriagroup": "Kriterier för grupp",
+ "criteriarequiredall": "Alla kriterier är obligatoriska",
+ "criteriarequiredany": "Alla kriterier nedan är obligatoriska",
+ "inprogress": "Pågår",
+ "manualselfcompletion": "Studenten markerar själv som fullföljd",
+ "notyetstarted": "Har ännu inte påbörjats",
+ "pending": "Avvaktar",
+ "required": "Obligatorisk",
+ "requiredcriteria": "Obligatoriskt kriterium",
+ "requirement": "Krav",
+ "status": "Status för märke",
+ "viewcoursereport": "Visa kursrapport"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/tg.json b/src/addon/coursecompletion/lang/tg.json
new file mode 100755
index 000000000..b0174e59b
--- /dev/null
+++ b/src/addon/coursecompletion/lang/tg.json
@@ -0,0 +1,18 @@
+{
+ "complete": "Иҷро шуд",
+ "completed": "Анҷом ёфт",
+ "coursecompletion": "Хатми курс",
+ "criteria": "Меъёр",
+ "criteriagroup": "Гурӯҳи меъёрҳо",
+ "criteriarequiredall": "Мувофиқат ба ҳамаи меъёрҳои дар зер зикршуда талаб карда мешавад",
+ "criteriarequiredany": "Мувофиқат ба ҳар яке аз меъёрҳои дар зер зикршуда талаб карда мешавад",
+ "inprogress": "Дар ҳоли иҷро",
+ "manualselfcompletion": "Истифодабаранда метавонад худаш оиди иҷрокунӣ қайд кунад",
+ "notyetstarted": "Ҳанӯз сар нашудааст",
+ "pending": "Дар ҳоли интизор",
+ "required": "Ҳатмӣ аст",
+ "requiredcriteria": "Меъёрҳои даркорӣ",
+ "requirement": "Талаб",
+ "status": "Вазъият",
+ "viewcoursereport": "Ҳисобот оиди курс аз назар гузаронда шавад"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/tr.json b/src/addon/coursecompletion/lang/tr.json
new file mode 100755
index 000000000..89efac25b
--- /dev/null
+++ b/src/addon/coursecompletion/lang/tr.json
@@ -0,0 +1,17 @@
+{
+ "complete": "Tamamlanmış",
+ "completed": "Bitirmeli",
+ "coursecompletion": "Ders tamamlama",
+ "criteria": "Ölçüt",
+ "criteriagroup": "Ölçüt Grubu",
+ "criteriarequiredall": "Aşağıdaki ölçütlerin tümü gereklidir",
+ "criteriarequiredany": "Aşağıdaki herhangi bir kriter gereklidir",
+ "inprogress": "Devam ediyor",
+ "manualselfcompletion": "Kendi kendine elle tamamlama",
+ "notyetstarted": "Henüz başlamadı",
+ "pending": "Bekliyor",
+ "required": "Gerekli",
+ "requiredcriteria": "Gerekli Ölçüt",
+ "status": "Durum",
+ "viewcoursereport": "Kurs raporunu görüntüle"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/uk.json b/src/addon/coursecompletion/lang/uk.json
new file mode 100755
index 000000000..8078ba36f
--- /dev/null
+++ b/src/addon/coursecompletion/lang/uk.json
@@ -0,0 +1,21 @@
+{
+ "complete": "Завершено",
+ "completecourse": "Завершити курсу",
+ "completed": "Виконано",
+ "completiondate": "Дата завершення",
+ "couldnotloadreport": "Не вдалося завантажити звіт про закінчення курсу, будь ласка, спробуйте ще раз пізніше.",
+ "coursecompletion": "Курс закінчено",
+ "criteria": "Критерій",
+ "criteriagroup": "Група критеріїв",
+ "criteriarequiredall": "Потрібна відповідність всім вказаним критеріям",
+ "criteriarequiredany": "Потрібна відповідність будь-якому критерію",
+ "inprogress": "В процесі",
+ "manualselfcompletion": "Самореєстрація завершення",
+ "notyetstarted": "Ще не почато",
+ "pending": "Очікується",
+ "required": "Необхідні",
+ "requiredcriteria": "Необхідний критерій",
+ "requirement": "Вимога",
+ "status": "Статус відзнаки",
+ "viewcoursereport": "Переглянути звіт курсу"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/zh-cn.json b/src/addon/coursecompletion/lang/zh-cn.json
new file mode 100755
index 000000000..eedfdd029
--- /dev/null
+++ b/src/addon/coursecompletion/lang/zh-cn.json
@@ -0,0 +1,17 @@
+{
+ "complete": "完成",
+ "completed": "已完成",
+ "coursecompletion": "课程进度跟踪",
+ "criteria": "条件",
+ "criteriagroup": "条件组",
+ "criteriarequiredall": "必须满足以下条件",
+ "criteriarequiredany": "必须满足下列任一条件",
+ "inprogress": "进行中",
+ "manualselfcompletion": "手动自设完成",
+ "notyetstarted": "还未开始",
+ "pending": "待决",
+ "required": "必须回答",
+ "requiredcriteria": "必备条件",
+ "status": "勋章状态",
+ "viewcoursereport": "查看课程报告"
+}
\ No newline at end of file
diff --git a/src/addon/coursecompletion/lang/zh-tw.json b/src/addon/coursecompletion/lang/zh-tw.json
new file mode 100755
index 000000000..55f600fc3
--- /dev/null
+++ b/src/addon/coursecompletion/lang/zh-tw.json
@@ -0,0 +1,21 @@
+{
+ "complete": "完成",
+ "completecourse": "完成課程",
+ "completed": "已完成",
+ "completiondate": "完成日期",
+ "couldnotloadreport": "無法載入課程完成報表,請稍後再試.",
+ "coursecompletion": "課程完成度",
+ "criteria": "條件",
+ "criteriagroup": "條件群組",
+ "criteriarequiredall": "以下所有的條件都為必填",
+ "criteriarequiredany": "以下任何條件都為必須",
+ "inprogress": "處理中",
+ "manualselfcompletion": "手動自我完成",
+ "notyetstarted": "還沒有開始",
+ "pending": "暫緩",
+ "required": "必須的",
+ "requiredcriteria": "必須條件",
+ "requirement": "需要",
+ "status": "狀態",
+ "viewcoursereport": "檢視課程報表"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/ar.json b/src/addon/files/lang/ar.json
new file mode 100755
index 000000000..2ab44cda4
--- /dev/null
+++ b/src/addon/files/lang/ar.json
@@ -0,0 +1,8 @@
+{
+ "couldnotloadfiles": "لا يمكن تحميل قائمة الملفات",
+ "emptyfilelist": "لا يوجد ملفات للعرض",
+ "files": "ملفات",
+ "privatefiles": "ملفات خاصة",
+ "sitefiles": "ملفات الموقع",
+ "uploadfiles": "إرسل ملفات التغذية الراجعة"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/bg.json b/src/addon/files/lang/bg.json
new file mode 100755
index 000000000..01ac698cc
--- /dev/null
+++ b/src/addon/files/lang/bg.json
@@ -0,0 +1,12 @@
+{
+ "admindisableddownload": "Моля забележете, че Вашият системен администратор е забранил изтеглянето на файлове. Може да разглеждате файловете, но не и да ги изтегляте.",
+ "clicktoupload": "Натиснете бутона по-долу за да качите файловете в секция \"Вашите частни файлове\".",
+ "couldnotloadfiles": "Списъкът с файлове не можа да бъде зареден.",
+ "emptyfilelist": "Няма файлове, които да бъдат показани.",
+ "files": "Файлове",
+ "myprivatefilesdesc": "Файловете, които са налични във Вашата лична област на сайта.",
+ "privatefiles": "Лични файлове",
+ "sitefiles": "Файлове от сайта",
+ "sitefilesdesc": "Други файлоне, които са достъпни за Вас на този Moodle сайт.",
+ "uploadfiles": "Изпрати файлове с обратна връзка"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/ca.json b/src/addon/files/lang/ca.json
new file mode 100755
index 000000000..90887bf7b
--- /dev/null
+++ b/src/addon/files/lang/ca.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Teniu en compte que l'administrador de Moodle ha desactivat la descàrrega d'arxius; podeu visualitzar els arxius, però no descarregar-los.",
+ "clicktoupload": "Feu clic al botó del dessota per pujar arxius a l'àrea del vostres fitxers.",
+ "couldnotloadfiles": "La llista d'arxius no s'ha pogut carregar.",
+ "emptyfilelist": "No hi ha fitxers per mostrar",
+ "erroruploadnotworking": "No es poden pujar fitxers al vostre lloc ara mateix.",
+ "files": "Fitxers",
+ "myprivatefilesdesc": "Els arxius que teniu disponibles a la vostra àrea privada en aquest lloc Moodle.",
+ "privatefiles": "Fitxers privats",
+ "sitefiles": "Fitxers del lloc",
+ "sitefilesdesc": "Els altres arxius que es troben disponibles en aquest lloc Moodle.",
+ "uploadfiles": "Envia fitxers de retroacció"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/cs.json b/src/addon/files/lang/cs.json
new file mode 100755
index 000000000..788a5df8a
--- /dev/null
+++ b/src/addon/files/lang/cs.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Upozorňujeme, že správce Moodle zakázal stahování souborů. Soubory si můžete prohlížet, ale ne stáhnout.",
+ "clicktoupload": "Kliknutím na tlačítko níže nahrát soubory do vašich osobních souborů.",
+ "couldnotloadfiles": "Seznam souborů, které nelze načíst .",
+ "emptyfilelist": "Žádný soubor k zobrazení",
+ "erroruploadnotworking": "Bohužel v současné době není možné nahrávat na stránky vašeho Moodle.",
+ "files": "Soubory",
+ "myprivatefilesdesc": "Soubory, které jsou dostupné pouze pro vás.",
+ "privatefiles": "Osobní soubory",
+ "sitefiles": "Soubory stránek",
+ "sitefilesdesc": "Další soubory, které jsou dostupné na těchto stránkách.",
+ "uploadfiles": "Poslat zpětnovazební soubory"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/da.json b/src/addon/files/lang/da.json
new file mode 100755
index 000000000..5f9d7d54b
--- /dev/null
+++ b/src/addon/files/lang/da.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Bemærk venligst at din Moodleadministrator har deaktiveret download af filer. Du kan se filerne men ikke downloade dem.",
+ "clicktoupload": "Klik på knappen nedenfor for at uploade filer til dine private filer.",
+ "couldnotloadfiles": "Fillisten kunne ikke hentes",
+ "emptyfilelist": "Der er ingen filer at vise",
+ "erroruploadnotworking": "Desværre er det p.t. ikke muligt at uploade filer til dit site.",
+ "files": "Filer",
+ "myprivatefilesdesc": "Filerne som er tilgængelige i dit private område på dette Moodlewebsted.",
+ "privatefiles": "Private filer",
+ "sitefiles": "Site filer",
+ "sitefilesdesc": "De andre filer som er tilgængelige for dig på denne Moodlewebside.",
+ "uploadfiles": "Send feedbackfiler"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/de-du.json b/src/addon/files/lang/de-du.json
new file mode 100755
index 000000000..4cc87c252
--- /dev/null
+++ b/src/addon/files/lang/de-du.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Das Herunterladen von Dateien ist deaktiviert. Du kannst nur die Dateiliste sehen und nichts herunterladen.",
+ "clicktoupload": "Tippe auf die Taste, um Dateien in den Bereich 'Meine Dateien' hochzuladen.",
+ "couldnotloadfiles": "Die Liste der Dateien konnte nicht geladen werden.",
+ "emptyfilelist": "Es liegen keine Dateien vor",
+ "erroruploadnotworking": "Im Moment können keine Dateien zur Website hochgeladen werden.",
+ "files": "Dateien",
+ "myprivatefilesdesc": "Dateien, Auf die ausschließlich du zugreifen kannst.",
+ "privatefiles": "Meine Dateien",
+ "sitefiles": "Dateien der Website",
+ "sitefilesdesc": "Weitere Dateien, die für dich auf dieser Website zugänglich sind.",
+ "uploadfiles": "Feedbackdateien senden"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/de.json b/src/addon/files/lang/de.json
new file mode 100755
index 000000000..1f6e9fa90
--- /dev/null
+++ b/src/addon/files/lang/de.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Das Herunterladen von Dateien ist deaktiviert. Sie können nur die Dateiliste sehen und nichts herunterladen.",
+ "clicktoupload": "Tippen Sie auf die Taste, um Dateien in den Bereich 'Meine Dateien' hochzuladen.",
+ "couldnotloadfiles": "Die Liste der Dateien konnte nicht geladen werden.",
+ "emptyfilelist": "Keine Dateien",
+ "erroruploadnotworking": "Im Moment können keine Dateien zur Website hochgeladen werden.",
+ "files": "Dateien",
+ "myprivatefilesdesc": "Dateien, auf die ausschließlich Sie zugreifen können.",
+ "privatefiles": "Meine Dateien",
+ "sitefiles": "Dateien der Website",
+ "sitefilesdesc": "Weitere Dateien, die für Sie auf dieser Website zugänglich sind.",
+ "uploadfiles": "Dateien hochladen"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/el.json b/src/addon/files/lang/el.json
new file mode 100755
index 000000000..105bb0c08
--- /dev/null
+++ b/src/addon/files/lang/el.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Παρακαλω λάβετε υπόψιν ότι ο διαχειριστής του Moodle site σας απενεργοποίησε τις λήψεις αρχείων, μπορείτε να περιηγηθείτε μέσα στα αρχεία, αλλά όχι να τα κατεβάσετε.",
+ "clicktoupload": "Κάντε κλικ στο παρακάτω κουμπί για να μεταφορτώσετε αρχεία στους προσωπικούς σας φακέλους.",
+ "couldnotloadfiles": "Η λίστα των αρχείων δεν φορτώθηκε.",
+ "emptyfilelist": "Δεν υπαρχουν αρχεία.",
+ "erroruploadnotworking": "Δυστυχώς, προσωρινά δεν είναι δυνατό να ανεβάσετε τα αρχεία στο site σας.",
+ "files": "Αρχεία",
+ "myprivatefilesdesc": "Τα αρχεία που είναι διαθέσιμα στο προσωπικό χώρο σας σε αυτό το Moodle site.",
+ "privatefiles": "Προσωπικά αρχεία",
+ "sitefiles": "Αρχεία του ιστοχώρου",
+ "sitefilesdesc": "Άλλα αρχεία που είναι στη διάθεσή σας σε αυτό το site Moodle.",
+ "uploadfiles": "Αποστολή αρχείου ανατροφοδότησης"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/es-mx.json b/src/addon/files/lang/es-mx.json
new file mode 100755
index 000000000..6a0a7e462
--- /dev/null
+++ b/src/addon/files/lang/es-mx.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "El administrador del sitio ha deshabilitado las descargas de archivos; Usted puede ver los archivos pero no puede descargarlos.",
+ "clicktoupload": "Haga click en el botón inferior para subir archivos a sus archivos privados.",
+ "couldnotloadfiles": "La lista de archivos no pudo cargarse.",
+ "emptyfilelist": "No hay archivos que mostrar",
+ "erroruploadnotworking": "Desafortunadamente ahorita no es posible subir archivos a su sitio.",
+ "files": "Archivos",
+ "myprivatefilesdesc": "Archivos a los que solamente Usted puede acceder.",
+ "privatefiles": "Archivos privados",
+ "sitefiles": "Archivos del sitio",
+ "sitefilesdesc": "Otros archivos que están disponibles para Usted en este sitio.",
+ "uploadfiles": "Mandar archivos de retroalimentación"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/es.json b/src/addon/files/lang/es.json
new file mode 100755
index 000000000..19e672053
--- /dev/null
+++ b/src/addon/files/lang/es.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Por favor tome nota de que su administrador de Moodle deshabilitó las descargas de archivos; Usted puede ojear los archivos pero no puede descargarlos.",
+ "clicktoupload": "Clic en el botón inferior para subir archivos a su zona de archivos privados.",
+ "couldnotloadfiles": "La lista de archivos no ha podido cargarse.",
+ "emptyfilelist": "No hay archivos que mostrar",
+ "erroruploadnotworking": "Desafortunadamente en estos momentos no es posible subir archivos al sitio.",
+ "files": "Archivos",
+ "myprivatefilesdesc": "Los archivos que están disponibles en su área privada en este sitio Moodle.",
+ "privatefiles": "Ficheros privados",
+ "sitefiles": "Archivos del sitio",
+ "sitefilesdesc": "Los otros archivos que están disponibles para Usted en este sitio Moodle.",
+ "uploadfiles": "Mandar archivos de retroalimentación"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/eu.json b/src/addon/files/lang/eu.json
new file mode 100755
index 000000000..71db9771a
--- /dev/null
+++ b/src/addon/files/lang/eu.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Zure Moodle kudeatzaileak fitxategien jaitsiera ezgaitu du. Fitxategiak araka ditzakezu baina ezin dituzu jaitsi.",
+ "clicktoupload": "Klik egin beheko botoian fitxategiak zure gune pribatura igotzeko.",
+ "couldnotloadfiles": "Ezin izan da fitxategien zerrenda kargatu.",
+ "emptyfilelist": "Ez dago fitxategirik erakusteko.",
+ "erroruploadnotworking": "Zoritxarrez une honetan ezin dira fitxategiak zure gunera igo.",
+ "files": "Fitxategiak",
+ "myprivatefilesdesc": "Soilik zuk eskura ditzakezun fitxategiak.",
+ "privatefiles": "Fitxategi pribatuak",
+ "sitefiles": "Guneko fitxategiak",
+ "sitefilesdesc": "Gune honetan eskuragarri dauden beste fitxategiak.",
+ "uploadfiles": "Igo fitxategiak"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/fa.json b/src/addon/files/lang/fa.json
new file mode 100755
index 000000000..62c44d00e
--- /dev/null
+++ b/src/addon/files/lang/fa.json
@@ -0,0 +1,7 @@
+{
+ "admindisableddownload": "لطفا در نظر داشته باشید که مدیر سایت شما دریافت فایلها را غیرفعال کرده است. شما میتوانید فایلها را مرور کنید، ولی نمیتوانید آنها را روی دستگاه خود دریافت کنید.",
+ "files": "فایلها",
+ "privatefiles": "فایلهای شخصی",
+ "sitefiles": "فایلهای سایت",
+ "uploadfiles": "ارسال فایلهای بازخورد"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/fi.json b/src/addon/files/lang/fi.json
new file mode 100755
index 000000000..14c205854
--- /dev/null
+++ b/src/addon/files/lang/fi.json
@@ -0,0 +1,12 @@
+{
+ "admindisableddownload": "Sivuston pääkäyttäjä on estänyt tiedostojen lataamisen. Voit ainoastaan selata tiedostoja, mutta et voi ladata niitä.",
+ "clicktoupload": "Paina alapuolella olevaa painiketta ladataksesi tiedoston omiin yksityisiin tiedostoihisi.",
+ "couldnotloadfiles": "Tiedostolistaa ei pystytty lataamaan.",
+ "emptyfilelist": "Ei näytettäviä tiedostoja",
+ "erroruploadnotworking": "Valitettavasti tiedostojen lataaminen järjestelmään ei tällä hetkellä onnistu.",
+ "files": "Tiedostot",
+ "myprivatefilesdesc": "Tiedostot, jotka ovat vain sinulle käytettävissä.",
+ "privatefiles": "Yksityiset tiedostot",
+ "sitefiles": "Sivuston tiedostot",
+ "uploadfiles": "Lähetä palautetiedostot"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/fr.json b/src/addon/files/lang/fr.json
new file mode 100755
index 000000000..d37cbd25a
--- /dev/null
+++ b/src/addon/files/lang/fr.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "L'administrateur de votre Moodle a désactivé le téléchargement des fichiers. Vous pouvez les consulter, mais pas les télécharger.",
+ "clicktoupload": "Cliquer sur le bouton ci-dessous pour déposer les fichiers dans vos fichiers personnels.",
+ "couldnotloadfiles": "La liste des fichiers n'a pas pu être chargée.",
+ "emptyfilelist": "Il n'y a pas de fichier à afficher",
+ "erroruploadnotworking": "Il n'est actuellement pas possible de déposer des fichiers sur votre site.",
+ "files": "Fichiers",
+ "myprivatefilesdesc": "Fichiers auxquels vous seul avez accès.",
+ "privatefiles": "Fichiers personnels",
+ "sitefiles": "Fichiers du site",
+ "sitefilesdesc": "Autres fichiers auxquels vous avez accès sur cette plateforme.",
+ "uploadfiles": "Envoyer des fichiers de feedback"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/he.json b/src/addon/files/lang/he.json
new file mode 100755
index 000000000..6f612548a
--- /dev/null
+++ b/src/addon/files/lang/he.json
@@ -0,0 +1,12 @@
+{
+ "admindisableddownload": "יש לשים לב כי מנהל/ת אתר המוודל שלך, ביטל/ה את אפשרות להורדת הקבצים. באפשרותך לעיין בקבצים אך לא להורידם.",
+ "clicktoupload": "להעלאת הקבצים לקבצים הפרטיים שלך, יש להקליק על הכפתור למטה.",
+ "couldnotloadfiles": "לא ניתן לטעון את רשימת הקבצים.",
+ "emptyfilelist": "אין קבצים להציג",
+ "files": "קבצים",
+ "myprivatefilesdesc": "הקבצים הזמינים לך באזור הפרטי באתר מוודל זה.",
+ "privatefiles": "הקבצים שלי",
+ "sitefiles": "קבצי האתר",
+ "sitefilesdesc": "הקבצים האחרים הזמינים לך באתר מוודל זה.",
+ "uploadfiles": "שליחת קובצי משוב"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/hr.json b/src/addon/files/lang/hr.json
new file mode 100755
index 000000000..01ff2272a
--- /dev/null
+++ b/src/addon/files/lang/hr.json
@@ -0,0 +1,7 @@
+{
+ "emptyfilelist": "Nema datoteka za prikaz",
+ "files": "Datoteke",
+ "privatefiles": "Osobne datoteke korisnika",
+ "sitefiles": "Site files",
+ "uploadfiles": "Pošalji datoteke s povratnom informacijom"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/hu.json b/src/addon/files/lang/hu.json
new file mode 100755
index 000000000..a9b2a7edf
--- /dev/null
+++ b/src/addon/files/lang/hu.json
@@ -0,0 +1,7 @@
+{
+ "emptyfilelist": "Nincs megjeleníthető állomány",
+ "files": "Állományok",
+ "privatefiles": "Saját állományaim",
+ "sitefiles": "Portál állományai",
+ "uploadfiles": "Visszajelzések elküldése"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/it.json b/src/addon/files/lang/it.json
new file mode 100755
index 000000000..935ee11cc
--- /dev/null
+++ b/src/addon/files/lang/it.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "L'amministratore del sito Moodle ha disabilitato il download dei file. Puoi navigare tra i file ma non potrai scaricarli.",
+ "clicktoupload": "Fai click sul pulsante sotto per caricare i file nei File personali",
+ "couldnotloadfiles": "Non è stato possibile caricare l'elenco dei file.",
+ "emptyfilelist": "Non ci sono file da visualizzare",
+ "erroruploadnotworking": "Al momento non è possibile caricare file sul sito.",
+ "files": "File",
+ "myprivatefilesdesc": "I file memorizzati nei File personali",
+ "privatefiles": "File personali",
+ "sitefiles": "File del sito",
+ "sitefilesdesc": "Altri file del sito ai quali puoi accedere.",
+ "uploadfiles": "Invia file di commento"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/ja.json b/src/addon/files/lang/ja.json
new file mode 100755
index 000000000..648ed7d33
--- /dev/null
+++ b/src/addon/files/lang/ja.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "あなたのMoodle管理者に、ファイルのダウンロードを無効にするよう知らせてください。そうすれば、ファイルをデバイスにダウンロードせず閲覧のみにすることができます。",
+ "clicktoupload": "ファイルをあなたのプライベートファイル領域にアップロードするには、下のボタンをクリックしてください。",
+ "couldnotloadfiles": "以下のファイルが読み込みできませんでした。",
+ "emptyfilelist": "表示するファイルはありません。",
+ "erroruploadnotworking": "残念ながら、現在、あなたのサイトにファイルをアップロードすることはできません。",
+ "files": "ファイル",
+ "myprivatefilesdesc": "ファイルはMoodleサイト上のあなたのプライベート領域にあります。",
+ "privatefiles": "プライベートファイル",
+ "sitefiles": "サイトファイル",
+ "sitefilesdesc": "本Moodleサイトであなたが利用できる他のファイル",
+ "uploadfiles": "フィードバックファイルを送信する"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/ko.json b/src/addon/files/lang/ko.json
new file mode 100755
index 000000000..1f4710a9c
--- /dev/null
+++ b/src/addon/files/lang/ko.json
@@ -0,0 +1,10 @@
+{
+ "admindisableddownload": "사이트 관리자가 파일 다운로드를 비활성화 했습니다. 파일을 탐색 할 수는 있지만 다운로드 할 수는 없습니다.",
+ "clicktoupload": "아래 버튼을 클릭하여 개인 파일에 파일을 업로드하십시오.",
+ "emptyfilelist": "보여줄 파일이 없습니다.",
+ "files": "파일",
+ "myprivatefilesdesc": "나만 접근할 수 있는 파일",
+ "sitefiles": "파일 창고",
+ "sitefilesdesc": "이 사이트에서 당신에게 제공되는 기타 파일들",
+ "uploadfiles": "피드백 파일 보내기"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/lt.json b/src/addon/files/lang/lt.json
new file mode 100755
index 000000000..1e5b2c5b2
--- /dev/null
+++ b/src/addon/files/lang/lt.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Primename, kad Moodle administratorius panaikino galimybę parsisiųsti failus, failų atsisiųsti negalima, galite tik naršyti.",
+ "clicktoupload": "Paspauskite mygtuką, esantį žemiau, kad galėtumėte atsisiųsti failus į privatų aplanką.",
+ "couldnotloadfiles": "Negalima užkrauti failų sąrašo.",
+ "emptyfilelist": "Nėra rodytinų failų",
+ "erroruploadnotworking": "Deja, failo į pasirinktą svetainę įkelti negalima.",
+ "files": "Failai",
+ "myprivatefilesdesc": "Jūsų privatūs failai Moodle svetainėje.",
+ "privatefiles": "Asmeniniai failai",
+ "sitefiles": "Svetainės failai",
+ "sitefilesdesc": "Kiti failai Moodle svetainėje",
+ "uploadfiles": "Siųsti grįžtamojo ryšio failus"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/mr.json b/src/addon/files/lang/mr.json
new file mode 100755
index 000000000..1e3707a1c
--- /dev/null
+++ b/src/addon/files/lang/mr.json
@@ -0,0 +1,12 @@
+{
+ "admindisableddownload": "कृपया लक्षात घ्या की आपले मूडल प्रशासक फाइल डाउनलोड अक्षम करते, आपण फायली ब्राउझ करू शकता परंतु त्यांना डाउनलोड करू शकत नाही.",
+ "clicktoupload": "आपल्या खाजगी फायलींवर फायली अपलोड करण्यासाठी खालील बटणावर क्लिक करा",
+ "couldnotloadfiles": "फायलींची सूची लोड करणे शक्य नाही .",
+ "emptyfilelist": "दर्शविण्यासाठी कोणतीही फाईल नाहीत.",
+ "erroruploadnotworking": "दुर्दैवाने सध्या आपल्या साइटवर फायली अपलोड करणे शक्य नाही.",
+ "files": "अनेक फाइल",
+ "myprivatefilesdesc": "या मूडल साइटवर आपल्या खाजगी क्षेत्रामध्ये उपलब्ध असलेल्या फायली.",
+ "sitefiles": "साईटवरील फाईल्स",
+ "sitefilesdesc": "या मूडल साइटवर उपलब्ध असलेल्या इतर फाईल्स.",
+ "uploadfiles": "फायली अपलोड करा"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/nl.json b/src/addon/files/lang/nl.json
new file mode 100755
index 000000000..a6b05556b
--- /dev/null
+++ b/src/addon/files/lang/nl.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Je Moodle beheerder heeft het downloaden van bestanden uitgeschakeld. Je kunt door de bestandenlijst bladeren, maar ze niet downloaden.",
+ "clicktoupload": "Klik op onderstaande knop om bestanden naar je privé-bestanden te uploaden.",
+ "couldnotloadfiles": "De bestandenlijst kon niet geladen worden.",
+ "emptyfilelist": "Er zijn geen bestanden om te tonen",
+ "erroruploadnotworking": "Jammer genoeg kun je op dit ogenblik geen bestanden uploaden naar de site.",
+ "files": "Bestanden",
+ "myprivatefilesdesc": "Bestanden die jij alleen kan zien.",
+ "privatefiles": "Privébestanden",
+ "sitefiles": "Sitebestanden",
+ "sitefilesdesc": "Andere bestanden voor jou.",
+ "uploadfiles": "Stuur feedbackbestanden"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/no.json b/src/addon/files/lang/no.json
new file mode 100755
index 000000000..0139ff8de
--- /dev/null
+++ b/src/addon/files/lang/no.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Din Moodleadministrator har slått av nedlasting av filer. Du kan bla igjennom filene men ikke laste dem ned",
+ "clicktoupload": "Klikk på knappen nedenfor for å laste opp filer til din private profil",
+ "couldnotloadfiles": "Liste med filer kunne ikke vises",
+ "emptyfilelist": "Det er ingen filer å vise",
+ "erroruploadnotworking": "Det er for øyeblikket ikke mulig å laste opp filer til din Moodle-side",
+ "files": "Filer",
+ "myprivatefilesdesc": "Tilgjengelige filer på ditt private område på Moodle-siden",
+ "privatefiles": "Private filer",
+ "sitefiles": "Nettstedfiler",
+ "sitefilesdesc": "Andre filer som er tilgjengelig på Moodle-siden",
+ "uploadfiles": "Send tilbakemeldingsfiler"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/pl.json b/src/addon/files/lang/pl.json
new file mode 100755
index 000000000..43f2b4b7e
--- /dev/null
+++ b/src/addon/files/lang/pl.json
@@ -0,0 +1,7 @@
+{
+ "emptyfilelist": "Brak plików do wyświetlenia",
+ "files": "Pliki",
+ "privatefiles": "Prywatne pliki",
+ "sitefiles": "Pliki serwisu",
+ "uploadfiles": "Wyślij pliki informacji zwrotnej"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/pt-br.json b/src/addon/files/lang/pt-br.json
new file mode 100755
index 000000000..2c3c45d95
--- /dev/null
+++ b/src/addon/files/lang/pt-br.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Por favor note que o administrador do Moodle desativou downloads de arquivos, você pode navegar através dos arquivos, mas não baixá-los.",
+ "clicktoupload": "Clique no botão abaixo para enviar para seus arquivos privados.",
+ "couldnotloadfiles": "A lista de arquivos não pode ser carregada.",
+ "emptyfilelist": "Não há arquivos para exibir",
+ "erroruploadnotworking": "Infelizmente é impossível enviar arquivos para o seu site.",
+ "files": "Arquivos",
+ "myprivatefilesdesc": "Os arquivos que estão disponíveis em sua área de arquivos privados nesse site Moodle.",
+ "privatefiles": "Arquivos privados",
+ "sitefiles": "Arquivos do site",
+ "sitefilesdesc": "Os outros arquivos que estão disponíveis a você neste site Moodle.",
+ "uploadfiles": "Enviar arquivos de feedback"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/pt.json b/src/addon/files/lang/pt.json
new file mode 100755
index 000000000..90ed68c00
--- /dev/null
+++ b/src/addon/files/lang/pt.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "O administrador do Moodle desativou a opção de descarregar ficheiros. Poderá navegar nos ficheiros mas não conseguirá descarregá-los.",
+ "clicktoupload": "Clique no botão abaixo para carregar ficheiros para os seus ficheiros privados.",
+ "couldnotloadfiles": "Não foi possível carregar a lista de ficheiros",
+ "emptyfilelist": "Este repositório está vazio",
+ "erroruploadnotworking": "Infelizmente não é possível carregar ficheiros para o seu site.",
+ "files": "Ficheiros",
+ "myprivatefilesdesc": "Ficheiros privados.",
+ "privatefiles": "Ficheiros privados",
+ "sitefiles": "Ficheiros do site",
+ "sitefilesdesc": "Os outros ficheiros que estão disponíveis para si neste site.",
+ "uploadfiles": "Enviar ficheiros de feedback"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/ro.json b/src/addon/files/lang/ro.json
new file mode 100755
index 000000000..269b6780a
--- /dev/null
+++ b/src/addon/files/lang/ro.json
@@ -0,0 +1,12 @@
+{
+ "admindisableddownload": "Atenție! Administratorul platformei a dezactivat descărcarea de fișiere; puteți accesa fișierele dar nu le puteți descărca.",
+ "clicktoupload": "Apăsați butonul de mai jos pentru a încarcă fișierele în contul dumneavoastră.",
+ "couldnotloadfiles": "Lista fișierelor nu a putut fi încărcată.",
+ "emptyfilelist": "Nu există fișiere",
+ "files": "Fişiere",
+ "myprivatefilesdesc": "Fișierele disponibile din zona personală, pe care o dețineți pe acest site.",
+ "privatefiles": "Fișiere private",
+ "sitefiles": "Fişiere site",
+ "sitefilesdesc": "Alte fișiere disponibile pe acest site.",
+ "uploadfiles": "Trimite fișiere de feedback"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/ru.json b/src/addon/files/lang/ru.json
new file mode 100755
index 000000000..f45d371d9
--- /dev/null
+++ b/src/addon/files/lang/ru.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Администратор Moodle отключил скачивание файлов. Вы можете просмотреть файлы, но не скачать их.",
+ "clicktoupload": "Нажмите внизу кнопку для загрузки файлов в свои личные файлы.",
+ "couldnotloadfiles": "Файлы из списка не могут быть загружены",
+ "emptyfilelist": "Нет файлов для отображения",
+ "erroruploadnotworking": "К сожалению, в данный момент невозможно загрузить файлы на ваш сайт.",
+ "files": "Файлы",
+ "myprivatefilesdesc": "Файлы, которые доступны только вам.",
+ "privatefiles": "Личные файлы",
+ "sitefiles": "Файлы сайта",
+ "sitefilesdesc": "Другие файлы, которые доступны вам на этом сайте.",
+ "uploadfiles": "Отправить файлы с отзывами"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/sr-cr.json b/src/addon/files/lang/sr-cr.json
new file mode 100755
index 000000000..7e6b55212
--- /dev/null
+++ b/src/addon/files/lang/sr-cr.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Имајте у виду да је ваш Moodle администратор онемогућио преузимање датотека. Датотеке можете да прегледате, али не и да их преузмете.",
+ "clicktoupload": "Кликните на доње дугме како бисте отпремили датотеке међу своје приватне датотеке.",
+ "couldnotloadfiles": "Списак датотека не може бити учитан.",
+ "emptyfilelist": "Нема датотека за приказ.",
+ "erroruploadnotworking": "Нажалост, тренутно није могуће отпремити датотеке на ваш сајт.",
+ "files": "Датотеке",
+ "myprivatefilesdesc": "Датотеке које су доступне у вашем приватном простору на овом Moodle сајту.",
+ "privatefiles": "Приватне датотеке",
+ "sitefiles": "Датотеке сајта",
+ "sitefilesdesc": "Остале датотеке које су доступне на овом Moodle сајту.",
+ "uploadfiles": "Отпреми датотеке"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/sr-lt.json b/src/addon/files/lang/sr-lt.json
new file mode 100755
index 000000000..8779139ba
--- /dev/null
+++ b/src/addon/files/lang/sr-lt.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Imajte u vidu da je vaš Moodle administrator onemogućio preuzimanje datoteka. Datoteke možete da pregledate, ali ne i da ih preuzmete.",
+ "clicktoupload": "Kliknite na donje dugme kako biste otpremili datoteke među svoje privatne datoteke.",
+ "couldnotloadfiles": "Spisak datoteka ne može biti učitan.",
+ "emptyfilelist": "Nema datoteka za prikaz.",
+ "erroruploadnotworking": "Nažalost, trenutno nije moguće otpremiti datoteke na vaš sajt.",
+ "files": "Datoteke",
+ "myprivatefilesdesc": "Datoteke koje su dostupne u vašem privatnom prostoru na ovom Moodle sajtu.",
+ "privatefiles": "Privatne datoteke",
+ "sitefiles": "Datoteke sajta",
+ "sitefilesdesc": "Ostale datoteke koje su dostupne na ovom Moodle sajtu.",
+ "uploadfiles": "Otpremi datoteke"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/sv.json b/src/addon/files/lang/sv.json
new file mode 100755
index 000000000..f50a7bb03
--- /dev/null
+++ b/src/addon/files/lang/sv.json
@@ -0,0 +1,12 @@
+{
+ "admindisableddownload": "Observera att din Moodle administratör inaktiverade nedladdningar av filer. Du kan bläddra igenom filerna men inte hämta dem.",
+ "clicktoupload": "Klicka på knappen nedan för att ladda upp filer till dina privata filer.",
+ "couldnotloadfiles": "Listan över filer kunde inte läsas in.",
+ "emptyfilelist": "Det finns inga filer att visa.",
+ "files": "Filer",
+ "myprivatefilesdesc": "De filer som finns i din privata område på denna Moodle webbplats.",
+ "privatefiles": "Privata filer",
+ "sitefiles": "Webbplatsens filer",
+ "sitefilesdesc": "De andra filer som är tillgängliga för dig på denna Moodle webbplats.",
+ "uploadfiles": "Skicka återkopplingsfiler"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/tg.json b/src/addon/files/lang/tg.json
new file mode 100755
index 000000000..3fff1b878
--- /dev/null
+++ b/src/addon/files/lang/tg.json
@@ -0,0 +1,7 @@
+{
+ "emptyfilelist": "Барои инъикос кардан файлҳо нестанд",
+ "files": "Файлҳо",
+ "privatefiles": "Файлҳои шахсӣ",
+ "sitefiles": "Файлҳои сомона",
+ "uploadfiles": "Ирсолкардани файлҳои тақриз"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/tr.json b/src/addon/files/lang/tr.json
new file mode 100755
index 000000000..ec3b602ad
--- /dev/null
+++ b/src/addon/files/lang/tr.json
@@ -0,0 +1,6 @@
+{
+ "files": "Dosyalar",
+ "privatefiles": "Kişisel dosyalar",
+ "sitefiles": "Site dosyaları",
+ "uploadfiles": "Geribildirim dosyaları gönder"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/uk.json b/src/addon/files/lang/uk.json
new file mode 100755
index 000000000..4043adc39
--- /dev/null
+++ b/src/addon/files/lang/uk.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "Зверніть увагу, що ваш адміністратор Moodle відключив завантаження файлів. Ви можете переглядати файли, але не завантажувати їх.",
+ "clicktoupload": "Натисніть на кнопку нижче, щоб завантажити ваші особисті файли.",
+ "couldnotloadfiles": "Список файлів не може бути завантажений.",
+ "emptyfilelist": "Немає файлів для показу",
+ "erroruploadnotworking": "На жаль, в даний час не представляється можливим завантажувати файли на ваш сайт.",
+ "files": "Файли",
+ "myprivatefilesdesc": "Файли, які доступні у приватній області на цьому сайті Moodle.",
+ "privatefiles": "Особисті файли",
+ "sitefiles": "Файли сайту",
+ "sitefilesdesc": "Інші файли, які доступні для вас на цьому сайті Moodle.",
+ "uploadfiles": "Надіслати файл-відгук(и)"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/zh-cn.json b/src/addon/files/lang/zh-cn.json
new file mode 100755
index 000000000..80e8e1c52
--- /dev/null
+++ b/src/addon/files/lang/zh-cn.json
@@ -0,0 +1,7 @@
+{
+ "emptyfilelist": "没有可显示的文件",
+ "files": "文件",
+ "privatefiles": "私人文件",
+ "sitefiles": "本站文件",
+ "uploadfiles": "发送反馈文件"
+}
\ No newline at end of file
diff --git a/src/addon/files/lang/zh-tw.json b/src/addon/files/lang/zh-tw.json
new file mode 100755
index 000000000..78c6090ac
--- /dev/null
+++ b/src/addon/files/lang/zh-tw.json
@@ -0,0 +1,13 @@
+{
+ "admindisableddownload": "請注意, 您的Moodle管理員禁止檔案下載, 您可以瀏覽檔案, 但不能下載它們.",
+ "clicktoupload": "點選這個按鈕,將檔案上傳到你的個人檔案區",
+ "couldnotloadfiles": "這些檔案是不能被載入的",
+ "emptyfilelist": "沒有檔案可以顯示",
+ "erroruploadnotworking": "很抱歉, 目前無法將檔案上傳到您的網站.",
+ "files": "檔案",
+ "myprivatefilesdesc": "在此Moodle網站上, 您的私有區域中有可用的文件",
+ "privatefiles": "私人檔案",
+ "sitefiles": "網站檔案",
+ "sitefilesdesc": "您在此Moodle網站上有可用的其他文件.",
+ "uploadfiles": "上傳檔案"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/ca.json b/src/addon/messageoutput/airnotifier/lang/ca.json
new file mode 100755
index 000000000..222e3c090
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/ca.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Configura els dispositius"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/cs.json b/src/addon/messageoutput/airnotifier/lang/cs.json
new file mode 100755
index 000000000..916d80720
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/cs.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Konfigurovat zařízení"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/da.json b/src/addon/messageoutput/airnotifier/lang/da.json
new file mode 100755
index 000000000..892585f89
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/da.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Konfigurer enheder"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/de-du.json b/src/addon/messageoutput/airnotifier/lang/de-du.json
new file mode 100755
index 000000000..1bf617885
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/de-du.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Geräte konfigurieren"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/de.json b/src/addon/messageoutput/airnotifier/lang/de.json
new file mode 100755
index 000000000..1bf617885
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/de.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Geräte konfigurieren"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/el.json b/src/addon/messageoutput/airnotifier/lang/el.json
new file mode 100755
index 000000000..c6845772a
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/el.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Διαμόρφωση συσκευών"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/es-mx.json b/src/addon/messageoutput/airnotifier/lang/es-mx.json
new file mode 100755
index 000000000..fc41bc788
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/es-mx.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Configurar dispositivos"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/es.json b/src/addon/messageoutput/airnotifier/lang/es.json
new file mode 100755
index 000000000..fc41bc788
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/es.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Configurar dispositivos"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/eu.json b/src/addon/messageoutput/airnotifier/lang/eu.json
new file mode 100755
index 000000000..93d8a9766
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/eu.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Gailuak konfiguratu"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/fa.json b/src/addon/messageoutput/airnotifier/lang/fa.json
new file mode 100755
index 000000000..b5a9bf34d
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/fa.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "پیکربندی دستگاهها"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/fi.json b/src/addon/messageoutput/airnotifier/lang/fi.json
new file mode 100755
index 000000000..8eca99990
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/fi.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Määrittele laitteistot"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/fr.json b/src/addon/messageoutput/airnotifier/lang/fr.json
new file mode 100755
index 000000000..f2ac92b5e
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/fr.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Configurer les appareils"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/it.json b/src/addon/messageoutput/airnotifier/lang/it.json
new file mode 100755
index 000000000..0c65c6ef0
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/it.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Configura dsipositivi"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/ja.json b/src/addon/messageoutput/airnotifier/lang/ja.json
new file mode 100755
index 000000000..3746717da
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/ja.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "デバイスの設定"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/ko.json b/src/addon/messageoutput/airnotifier/lang/ko.json
new file mode 100755
index 000000000..fd7444963
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/ko.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "장치 구성"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/lt.json b/src/addon/messageoutput/airnotifier/lang/lt.json
new file mode 100755
index 000000000..44b2cc594
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/lt.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Prietaisų konfigūravimas"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/mr.json b/src/addon/messageoutput/airnotifier/lang/mr.json
new file mode 100755
index 000000000..5379ffa9a
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/mr.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "डिव्हाइसेस कॉन्फिगर करा"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/nl.json b/src/addon/messageoutput/airnotifier/lang/nl.json
new file mode 100755
index 000000000..14d640359
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/nl.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Apparaten configureren"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/no.json b/src/addon/messageoutput/airnotifier/lang/no.json
new file mode 100755
index 000000000..4f9905ce5
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/no.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Konfigurer enheter"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/pt-br.json b/src/addon/messageoutput/airnotifier/lang/pt-br.json
new file mode 100755
index 000000000..fc41bc788
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/pt-br.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Configurar dispositivos"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/pt.json b/src/addon/messageoutput/airnotifier/lang/pt.json
new file mode 100755
index 000000000..fc41bc788
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/pt.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Configurar dispositivos"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/ru.json b/src/addon/messageoutput/airnotifier/lang/ru.json
new file mode 100755
index 000000000..4bfd031bb
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/ru.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Настроить устройства"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/sr-cr.json b/src/addon/messageoutput/airnotifier/lang/sr-cr.json
new file mode 100755
index 000000000..fda693e8a
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/sr-cr.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Конфигуриши уређаје"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/sr-lt.json b/src/addon/messageoutput/airnotifier/lang/sr-lt.json
new file mode 100755
index 000000000..4419d93d8
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/sr-lt.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Komfiguriši uređaj"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/uk.json b/src/addon/messageoutput/airnotifier/lang/uk.json
new file mode 100755
index 000000000..4b6433984
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/uk.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "Конфігурація пристроїв"
+}
\ No newline at end of file
diff --git a/src/addon/messageoutput/airnotifier/lang/zh-tw.json b/src/addon/messageoutput/airnotifier/lang/zh-tw.json
new file mode 100755
index 000000000..b009ae356
--- /dev/null
+++ b/src/addon/messageoutput/airnotifier/lang/zh-tw.json
@@ -0,0 +1,3 @@
+{
+ "processorsettingsdesc": "設定裝置"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/ar.json b/src/addon/messages/lang/ar.json
new file mode 100755
index 000000000..a13101c39
--- /dev/null
+++ b/src/addon/messages/lang/ar.json
@@ -0,0 +1,24 @@
+{
+ "addcontact": "أضف عنوان أتصال",
+ "blockcontact": "أحجب عنوان الأتصال",
+ "blocknoncontacts": "امنع المستخدمين الذين ليسوا في قائمة اتصالاتي من مراسلتي",
+ "contactlistempty": "قائمة الاتصال فارغة",
+ "contacts": "عناوين اتصال",
+ "errordeletemessage": "خطأ عند حذف الرسالة",
+ "message": "رسالة",
+ "messagenotsent": "لم يتم إرسال الرسالة، يرجي المحاولة لاحقا",
+ "messagepreferences": "مراجع الرسالة",
+ "messages": "رسائل",
+ "mustbeonlinetosendmessages": "لابد أن تكون متصل بالأنترنت لكي ترسل أي رسائل",
+ "newmessage": "رسالة جديدة",
+ "nomessages": "لا توجد رسائل بعد",
+ "nousersfound": "لا يوجد مستخدمون",
+ "removecontact": "ازل عنوان الاتصال",
+ "send": "إرسل",
+ "sendmessage": "إرسل رسالة",
+ "type_offline": "غير متصل",
+ "type_online": "متصل",
+ "type_search": "نتائج البحث",
+ "type_strangers": "رسائل أخرى",
+ "unblockcontact": "أزل الحجب عن عنوان الاتصال"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/bg.json b/src/addon/messages/lang/bg.json
new file mode 100755
index 000000000..9a9879a95
--- /dev/null
+++ b/src/addon/messages/lang/bg.json
@@ -0,0 +1,30 @@
+{
+ "addcontact": "Добавяне на контакт",
+ "blockcontact": "Блокиране на контакт",
+ "blocknoncontacts": "Блокирай съобщения от потребители извън списъка с контакти ",
+ "contactlistempty": "Списъка с контакти е празен",
+ "contactname": "Име на контакта",
+ "contacts": "Контакти",
+ "deletemessage": "Изтриване на съобщение",
+ "deletemessageconfirmation": "Сигурни ли сте, че искате да изтриете това съобщение? То ще бъде изтрито само от Вашето хранилище за съобщения и ще продължи да се вижда от изпращача или получателя.",
+ "errorwhileretrievingcontacts": "Грешка при изчитането на списъка с контакти от сървъра.",
+ "errorwhileretrievingdiscussions": "Грешка при изчитането на дискусиите от сървъра.",
+ "errorwhileretrievingmessages": "Грешка при изчитането на съобщенията от сървъра.",
+ "message": "Текст на съобщението",
+ "messagenotsent": "Съобщението не беше изпратено. Моля опитайте пак по-късно.",
+ "messagepreferences": "Предпочитания за съобщенията",
+ "messages": "Съобщения",
+ "mustbeonlinetosendmessages": "Трябва да сте онлайн, за да изпращате съобщения.",
+ "newmessage": "Ново съобщение",
+ "nomessages": "Няма чакащи съобщения",
+ "nousersfound": "Не са намерени потребители",
+ "removecontact": "Премахване на контакт",
+ "send": "изпращане",
+ "sendmessage": "Изпращане на съобщение",
+ "type_blocked": "Блокиран",
+ "type_offline": "Офлайн",
+ "type_online": "Онлайн",
+ "type_search": "Резултати от търсенето",
+ "type_strangers": "Други",
+ "unblockcontact": "Разблокиране на контакт"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/ca.json b/src/addon/messages/lang/ca.json
new file mode 100755
index 000000000..15b889086
--- /dev/null
+++ b/src/addon/messages/lang/ca.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Afegeix contacte",
+ "blockcontact": "Bloca contacte",
+ "blockcontactconfirm": "Ja no rebreu més missatges d'aquest contacte.",
+ "blocknoncontacts": "Impedeix que m'enviïn missatges els usuaris que no siguin a la meva llista de contactes",
+ "contactlistempty": "La llista de contactes és buida",
+ "contactname": "Nom del contacte",
+ "contacts": "Contactes",
+ "deletemessage": "Esborra el missatge",
+ "deletemessageconfirmation": "Confirmeu que voleu esborrar aquest missatge? Només s'esborrarà del vostre historial de missatgeria, i encara serà visible per a l'usuari que va enviar o va rebre el missatge.",
+ "errordeletemessage": "S'ha produït un error mentre s'esborrava el missatge.",
+ "errorwhileretrievingcontacts": "S'ha produït un error en recuperar els contactes del servidor.",
+ "errorwhileretrievingdiscussions": "S'ha produït un error mentre es recuperaven els debats del servidor.",
+ "errorwhileretrievingmessages": "S'ha produït un error descarregant els missatges.",
+ "loadpreviousmessages": "Carrega els missatges anteriors",
+ "message": "Cos del missatge",
+ "messagenotsent": "El missatge no s'ha enviat. Si us plau, intenteu-ho més tard",
+ "messagepreferences": "Preferències dels missatges",
+ "messages": "Missatges",
+ "mustbeonlinetosendmessages": "Heu de tenir connexió a la xarxa per a enviar missatges",
+ "newmessage": "Missatge nou",
+ "newmessages": "Nous missatges",
+ "nomessages": "No teniu missatges pendents",
+ "nousersfound": "No s'han trobat usuaris",
+ "removecontact": "Suprimeix contacte",
+ "removecontactconfirm": "El contacte s'eliminarà de la vostra llista de contactes.",
+ "send": "envia",
+ "sendmessage": "Envia missatge",
+ "type_blocked": "Bloquejat",
+ "type_offline": "Fora de línia",
+ "type_online": "En línia",
+ "type_search": "Resultats de la cerca",
+ "type_strangers": "Altres",
+ "unblockcontact": "Desbloca contacte",
+ "warningmessagenotsent": "No s'han pogut enviar missatges a l'usuari {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/cs.json b/src/addon/messages/lang/cs.json
new file mode 100755
index 000000000..9ba11c02c
--- /dev/null
+++ b/src/addon/messages/lang/cs.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Přidat kontakt",
+ "blockcontact": "Blokovat kontakt",
+ "blockcontactconfirm": "Od tohoto kontaktu již nebudete přijímat zprávy.",
+ "blocknoncontacts": "Blokuj všechny nové zprávy od uživatelů, které nemám v seznamu kontaktů",
+ "contactlistempty": "Seznam kontaktů je prázdný",
+ "contactname": "Jméno kontaktu",
+ "contacts": "Kontakty",
+ "deletemessage": "Odstranit zprávu",
+ "deletemessageconfirmation": "Jste si jisti, že chcete smazat tuto zprávu? Bude odstraněna pouze z historie zpráv a nadále bude možné zobrazit uživatele, který zprávu odeslal nebo přijal.",
+ "errordeletemessage": "Chyba při odstraňování zprávy.",
+ "errorwhileretrievingcontacts": "Chyba při načítání kontaktů ze serveru.",
+ "errorwhileretrievingdiscussions": "Chyba při načítání diskusí ze serveru.",
+ "errorwhileretrievingmessages": "Chyba při načítání zpráv ze serveru.",
+ "loadpreviousmessages": "Načtení předchozích zpráv",
+ "message": "Zpráva",
+ "messagenotsent": "Zpráva nebyla odeslána. Zkuste to prosím později.",
+ "messagepreferences": "Nastavení zpráv",
+ "messages": "Zprávy",
+ "mustbeonlinetosendmessages": "Pro odesílání zpráv musíte být online",
+ "newmessage": "Nová zpráva",
+ "newmessages": "Nové zprávy",
+ "nomessages": "Zatím žádné zprávy",
+ "nousersfound": "Nenalezeni žádní uživatelé",
+ "removecontact": "Odebrat kontakt",
+ "removecontactconfirm": "Kontakt bude odstraněn ze seznamu kontaktů.",
+ "send": "odeslat",
+ "sendmessage": "Odeslat zprávu",
+ "type_blocked": "Blokováno",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Výsledky hledání",
+ "type_strangers": "Další",
+ "unblockcontact": "Odblokovat kontakt",
+ "warningmessagenotsent": "Nelze odeslat zprávu (y) uživateli {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/da.json b/src/addon/messages/lang/da.json
new file mode 100755
index 000000000..536c24257
--- /dev/null
+++ b/src/addon/messages/lang/da.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Tilføj kontakt",
+ "blockcontact": "Bloker kontakt",
+ "blockcontactconfirm": "Du modtager ikke længere beskeder fra denne kontakt.",
+ "blocknoncontacts": "Bloker alle beskeder fra personer der ikke er i min kontaktliste.",
+ "contactlistempty": "Kontaktlisten er tom",
+ "contactname": "Navn",
+ "contacts": "Kontakter",
+ "deletemessage": "Slet besked",
+ "deletemessageconfirmation": "Er du sikker på at du ønsker at slette denne besked? Den vil blive sletter fra din beskeds historik og vil stadig kunne ses af den bruger der har afsendt eller modtaget beskeden",
+ "errordeletemessage": "Fejl under sletning af filen",
+ "errorwhileretrievingcontacts": "Fejl ved hentning af kontakter fra serveren",
+ "errorwhileretrievingdiscussions": "Fejl ved hentning af diskussioner fra serveren",
+ "errorwhileretrievingmessages": "Fejl ved hentning af beskeder fra serveren.",
+ "loadpreviousmessages": "Indlæs forrige besked",
+ "message": "Beskedtekst",
+ "messagenotsent": "Beskeden blev ikke sendt, prøv igen senere.",
+ "messagepreferences": "Indstillinger for beskeder",
+ "messages": "Beskeder",
+ "mustbeonlinetosendmessages": "Du skal være online for at sende beskeder",
+ "newmessage": "Ny besked",
+ "newmessages": "Nye beskeder",
+ "nomessages": "Ingen beskeder endnu",
+ "nousersfound": "Ingen brugere fundet",
+ "removecontact": "Fjern kontakt",
+ "removecontactconfirm": "Kontakten vil blive fjernet fra listen",
+ "send": "send",
+ "sendmessage": "Send besked",
+ "type_blocked": "Blokeret",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Søgeresultat",
+ "type_strangers": "Andre",
+ "unblockcontact": "Fjern blokering af kontakt",
+ "warningmessagenotsent": "Kunne ikke sende besked(er) til brugeren {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/de-du.json b/src/addon/messages/lang/de-du.json
new file mode 100755
index 000000000..613dd9a3c
--- /dev/null
+++ b/src/addon/messages/lang/de-du.json
@@ -0,0 +1,34 @@
+{
+ "addcontact": "Kontakt hinzufügen",
+ "blockcontact": "Kontakt sperren",
+ "blockcontactconfirm": "Möchtest du von dieser Person keine Mitteilungen mehr empfangen?",
+ "blocknoncontacts": "Mitteilungen nur für Kontakte zulassen",
+ "contactlistempty": "Die Kontaktliste ist leer.",
+ "contactname": "Name",
+ "contacts": "Kontakte",
+ "errordeletemessage": "Fehler beim Löschen der Mitteilung",
+ "errorwhileretrievingcontacts": "Fehler beim Abrufen der Kontakte vom Server",
+ "errorwhileretrievingdiscussions": "Fehler beim Abrufen der Themen vom Server",
+ "errorwhileretrievingmessages": "Fehler beim Abrufen der Mitteilungen vom Server",
+ "loadpreviousmessages": "Vorherige Mitteilungen laden",
+ "message": "Mitteilung",
+ "messagenotsent": "Die Mitteilung wurde nicht gesendet. Versuche es später noch einmal.",
+ "messagepreferences": "Mitteilungen",
+ "messages": "Mitteilungen",
+ "mustbeonlinetosendmessages": "Du muss online sein, um Mitteilungen zu senden.",
+ "newmessage": "Neue Mitteilung",
+ "newmessages": "Neue Mitteilungen",
+ "nomessages": "Keine Mitteilungen",
+ "nousersfound": "Keine Nutzer/innen gefunden",
+ "removecontact": "Kontakt entfernen",
+ "removecontactconfirm": "Der Kontakt wird aus deiner Kontaktliste gelöscht.",
+ "send": "Senden",
+ "sendmessage": "Mitteilung senden",
+ "type_blocked": "Blockiert",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Suchergebnisse",
+ "type_strangers": "Weitere Personen",
+ "unblockcontact": "Kontakt aktivieren",
+ "warningmessagenotsent": "Die Mitteilung an {{user}} konnte nicht gesendet werden. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/de.json b/src/addon/messages/lang/de.json
new file mode 100755
index 000000000..b97803d22
--- /dev/null
+++ b/src/addon/messages/lang/de.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Kontakt hinzufügen",
+ "blockcontact": "Kontakt sperren",
+ "blockcontactconfirm": "Möchten Sie von dieser Person keine Mitteilungen mehr empfangen?",
+ "blocknoncontacts": "Mitteilungen nur für Kontakte zulassen",
+ "contactlistempty": "Die Kontaktliste ist leer.",
+ "contactname": "Name",
+ "contacts": "Kontakte",
+ "deletemessage": "Nachricht löschen",
+ "deletemessageconfirmation": "Möchten Sie wirklich diese Nachricht löschen? Die Nachricht wird ausschließlich aus Ihrem Nachrichtenverlauf gelöscht, ist aber weiterhin bei der Person zu sehen, die Ihnen die Nachricht geschickt hat.",
+ "errordeletemessage": "Fehler beim Löschen der Mitteilung",
+ "errorwhileretrievingcontacts": "Fehler beim Abrufen der Kontakte vom Server",
+ "errorwhileretrievingdiscussions": "Fehler beim Abrufen der Themen vom Server",
+ "errorwhileretrievingmessages": "Fehler beim Abrufen der Mitteilungen vom Server",
+ "loadpreviousmessages": "Vorherige Mitteilungen laden",
+ "message": "Mitteilung",
+ "messagenotsent": "Die Mitteilung wurde nicht gesendet. Versuchen Sie es später noch einmal.",
+ "messagepreferences": "Mitteilungen",
+ "messages": "Mitteilungen",
+ "mustbeonlinetosendmessages": "Sie müssen online sein, um Mitteilungen zu senden.",
+ "newmessage": "Neue Mitteilung",
+ "newmessages": "Neue Mitteilungen",
+ "nomessages": "Keine Mitteilungen",
+ "nousersfound": "Keine Personen gefunden",
+ "removecontact": "Kontakt entfernen",
+ "removecontactconfirm": "Der Kontakt wird aus Ihrer Kontaktliste gelöscht.",
+ "send": "Senden",
+ "sendmessage": "Mitteilung senden",
+ "type_blocked": "Blockiert",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Suchergebnisse",
+ "type_strangers": "Weitere Personen",
+ "unblockcontact": "Kontakt aktivieren",
+ "warningmessagenotsent": "Mitteilung an {{user}} konnte nicht gesendet werden. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/el.json b/src/addon/messages/lang/el.json
new file mode 100755
index 000000000..792d12476
--- /dev/null
+++ b/src/addon/messages/lang/el.json
@@ -0,0 +1,34 @@
+{
+ "addcontact": "Προσθήκη επαφής",
+ "blockcontact": "Φραγμός επαφής",
+ "blockcontactconfirm": "Θα σταματήσετε να λαμβάνετε μηνύματα από αυτήν την επαφή.",
+ "blocknoncontacts": "Φραγή όλων των νέων μηνυμάτων που προέρχονται από χρήστες που δεν βρίσκονται στη λίστα επαφών σας.",
+ "contactlistempty": "Η λίστα επαφών είναι κενή",
+ "contactname": "Όνομα επαφής",
+ "contacts": "Επαφές",
+ "errordeletemessage": "Σφάλμα κατά τη διαγραφή του μηνύματος.",
+ "errorwhileretrievingcontacts": "Σφάλμα κατά την ανάκτηση των επαφών από το διακομιστή.",
+ "errorwhileretrievingdiscussions": "Σφάλμα κατά την ανάκτηση των συζητήσεων από το διακομιστή.",
+ "errorwhileretrievingmessages": "Σφάλμα κατά την ανάκτηση των μηνυμάτων από το διακομιστή.",
+ "loadpreviousmessages": "Φορτώστε τα προηγούμενα μηνύματα",
+ "message": "Σώμα μηνύματος",
+ "messagenotsent": "Το μήνυμα δεν στάλθηκε, δοκιμάστε ξανά αργότερα.",
+ "messagepreferences": "Προτιμήσεις μηνύματος",
+ "messages": "Μηνύματα",
+ "mustbeonlinetosendmessages": "Πρέπει να είστε συνδεδεμένοι για να στείλετε μηνύματα",
+ "newmessage": "Νέο μήνυμα",
+ "newmessages": "Νέα μηνύματα",
+ "nomessages": "Δεν υπάρχουν ακόμα μηνύματα",
+ "nousersfound": "Δε βρέθηκαν χρήστες",
+ "removecontact": "Αφαίρεσε την επαφή",
+ "removecontactconfirm": "Η επαφή θα καταργηθεί από τη λίστα επαφών σας.",
+ "send": "Αποστολή",
+ "sendmessage": "Αποστολή μηνύματος",
+ "type_blocked": "Μπλοκαρισμένοι",
+ "type_offline": "Εκτός σύνδεσης",
+ "type_online": "Συνδεδεμένος",
+ "type_search": "Αποτελέσματα αναζήτησης",
+ "type_strangers": "Άλλοι",
+ "unblockcontact": "Ξεμπλόκαρε την επαφή",
+ "warningmessagenotsent": "Το/τα μήνυμα/μηνύματα δεν μπόρεσε/αν να σταλεί/ούν στο χρήστη {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/es-mx.json b/src/addon/messages/lang/es-mx.json
new file mode 100755
index 000000000..db39dcf25
--- /dev/null
+++ b/src/addon/messages/lang/es-mx.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Añadir contacto",
+ "blockcontact": "Bloquear contacto",
+ "blockcontactconfirm": "Usted dejará de recibir mensajes de este contacto.",
+ "blocknoncontacts": "Bloquear mensajes de usuarios que no figuren en mi lista de contactos",
+ "contactlistempty": "La lista de contactos está vacía",
+ "contactname": "Nombre del contacto",
+ "contacts": "Contactos",
+ "deletemessage": "Eliminar mensaje",
+ "deletemessageconfirmation": "¿Está Usted seguro de querer eliminar este mensaje? Solamente será eliminado de su historia de mensajería y todavía será visible por el usuario que lo envió o recibió.",
+ "errordeletemessage": "Error al eliminar el mensaje",
+ "errorwhileretrievingcontacts": "Error al recuperar los contactos del servidor.",
+ "errorwhileretrievingdiscussions": "Error al recuperar las discusiones del servidor.",
+ "errorwhileretrievingmessages": "Error al recuperar mensajes del servidor.",
+ "loadpreviousmessages": "Cargar mensajes anteriores",
+ "message": "Cuerpo del mensaje",
+ "messagenotsent": "El mensaje no fue enviado. Por favor inténtelo nuevamente después.",
+ "messagepreferences": "Preferencias de Mensaje",
+ "messages": "Mensajes",
+ "mustbeonlinetosendmessages": "Usted debe de estar en-linea para enviar mensajes",
+ "newmessage": "Nuevo mensaje",
+ "newmessages": "Nuevos mensajes",
+ "nomessages": "No hay mensajes",
+ "nousersfound": "No se encuentran usuarios",
+ "removecontact": "Eliminar contacto",
+ "removecontactconfirm": "El contacto será quitado de su lista de contactos.",
+ "send": "enviar",
+ "sendmessage": "Enviar mensaje",
+ "type_blocked": "Bloqueado",
+ "type_offline": "Fuera-de-línea",
+ "type_online": "En-línea",
+ "type_search": "Resultados de la búsqueda",
+ "type_strangers": "Otros",
+ "unblockcontact": "Desbloquear contacto",
+ "warningmessagenotsent": "No se pudo enviar mensaje(s) al usuario {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/es.json b/src/addon/messages/lang/es.json
new file mode 100755
index 000000000..b81086eab
--- /dev/null
+++ b/src/addon/messages/lang/es.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Añadir contacto",
+ "blockcontact": "Bloquear contacto",
+ "blockcontactconfirm": "Usted dejará de recibir mensajes de este contacto.",
+ "blocknoncontacts": "Bloquear mensajes de usuarios que no figuren en mi lista de contactos",
+ "contactlistempty": "Lista de contactos vacía",
+ "contactname": "Nombre del contacto",
+ "contacts": "Contactos",
+ "deletemessage": "Eliminar mensaje",
+ "deletemessageconfirmation": "¿Está seguro que quiere eliminar este mensaje? Sólo será eliminado de su historial de mensajes y seguirá siendo visible por el usuario que envió o recibió el mensaje.",
+ "errordeletemessage": "Error borrando el mensaje.",
+ "errorwhileretrievingcontacts": "Error al recuperar los contactos del servidor.",
+ "errorwhileretrievingdiscussions": "Error al recuperar las discusiones del servidor.",
+ "errorwhileretrievingmessages": "Error al recuperar los mensajes del servidor.",
+ "loadpreviousmessages": "Cargar mensajes anteriores",
+ "message": "Cuerpo del mensaje",
+ "messagenotsent": "El mensaje no fue enviado; por favor inténtelo nuevamente después.",
+ "messagepreferences": "Preferencias de mensajes",
+ "messages": "Mensajes",
+ "mustbeonlinetosendmessages": "Debe conectarse para enviar mensajes",
+ "newmessage": "Nuevo mensaje",
+ "newmessages": "Nuevos mensajes",
+ "nomessages": "Aún no hay mensajes",
+ "nousersfound": "No se encuentran usuarios",
+ "removecontact": "Eliminar contacto",
+ "removecontactconfirm": "El contacto se eliminará de su lista de contactos.",
+ "send": "enviar",
+ "sendmessage": "Enviar mensaje",
+ "type_blocked": "Bloqueado",
+ "type_offline": "Desconectado",
+ "type_online": "En línea",
+ "type_search": "Resultados de la búsqueda",
+ "type_strangers": "Otros",
+ "unblockcontact": "Desbloquear contacto",
+ "warningmessagenotsent": "No se pudo enviar mensaje(s) al usuario {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/eu.json b/src/addon/messages/lang/eu.json
new file mode 100755
index 000000000..63496514f
--- /dev/null
+++ b/src/addon/messages/lang/eu.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Gehitu kontaktua",
+ "blockcontact": "Blokeatu kontaktua",
+ "blockcontactconfirm": "Kontaktu honen mezuak jasotzeari utziko diozu.",
+ "blocknoncontacts": "Ez utzi kontaktu ez direnei niri mezuak bidaltzen",
+ "contactlistempty": "Kontaktu zerrenda hutsik dago",
+ "contactname": "Kontaktuaren izena",
+ "contacts": "Kontaktuak",
+ "deletemessage": "Ezabatu mezua",
+ "deletemessageconfirmation": "Ziur zaude mezu hau ezabatu nahi duzula? Soilik zure mezuen historiatik ezabatuko da, eta mezua bidali edo jaso duen erabiltzaileak ikusgai izaten jarraituko du.",
+ "errordeletemessage": "Errorea mezua ezabatzean.",
+ "errorwhileretrievingcontacts": "Errore bat gertatu da kontaktuak zerbitzaritik jasotzean.",
+ "errorwhileretrievingdiscussions": "Errore bat gertatu da elkarrizketak zerbitzaritik jasotzean.",
+ "errorwhileretrievingmessages": "Errore bat gertatu da mezuak zerbitzaritik jasotzean.",
+ "loadpreviousmessages": "Kargatu aurreko mezuak",
+ "message": "Mezuren gurputza",
+ "messagenotsent": "Mezua ez da bidali. Mesedez, saiatu beranduago.",
+ "messagepreferences": "Mezuen hobespenak",
+ "messages": "Mezuak",
+ "mustbeonlinetosendmessages": "On-line egon behar duzu mezuak bidali ahal izateko.",
+ "newmessage": "Mezu berria",
+ "newmessages": "Mezu beriak",
+ "nomessages": "Ez dago mezurik oraindik",
+ "nousersfound": "Ez da erabiltzailerik aurkitu",
+ "removecontact": "Ezabatu kontaktua",
+ "removecontactconfirm": "Kontaktua zure kontaktuen zerrendatik ezabatuko da.",
+ "send": "bidali",
+ "sendmessage": "Mezua bidali",
+ "type_blocked": "Blokeatuta",
+ "type_offline": "Lineaz kanpo",
+ "type_online": "Online",
+ "type_search": "Bilaketaren emaitzak",
+ "type_strangers": "Beste batzuk",
+ "unblockcontact": "Desblokeatu kontaktua",
+ "warningmessagenotsent": "Ezin izan d(ir)a mezua(k) bidali {{user}} erabiltzaileari. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/fa.json b/src/addon/messages/lang/fa.json
new file mode 100755
index 000000000..a6d80f699
--- /dev/null
+++ b/src/addon/messages/lang/fa.json
@@ -0,0 +1,19 @@
+{
+ "addcontact": "افزودن به مخاطبين",
+ "blockcontact": "مسدود کردن مخاطب",
+ "blocknoncontacts": "افرادی که در لیست مخاطبین من نیستند نتوانند برای من پیام بفرستند",
+ "contactlistempty": "لیست مخاطبین شما خالی است",
+ "contactname": "نام مخاطب",
+ "contacts": "مخاطبین",
+ "errorwhileretrievingdiscussions": "خطا در دریافت مباحثهها از کارگزار.",
+ "message": "متن پیام",
+ "messagepreferences": "ترجیحات پیامدهی",
+ "messages": "پیامها",
+ "newmessage": "پیام جدید",
+ "nomessages": "هنوز پیامی گفته نشده است",
+ "nousersfound": "کاربری پیدا نشد",
+ "removecontact": "حذف کردن مخاطب",
+ "send": "فرستادن",
+ "sendmessage": "ارسال پیام",
+ "unblockcontact": "خارج کردن مخاطب از حالت مسدود"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/fi.json b/src/addon/messages/lang/fi.json
new file mode 100755
index 000000000..5deb99834
--- /dev/null
+++ b/src/addon/messages/lang/fi.json
@@ -0,0 +1,32 @@
+{
+ "addcontact": "Lisää kontakti",
+ "blockcontact": "Estä kontakti",
+ "blockcontactconfirm": "Et saa enää viestejä tältä yhteystietohenkilöltä.",
+ "blocknoncontacts": "Estä kaikki viestit, jos lähettäjä ei ole kontaktilistallani",
+ "contactlistempty": "Yhteystietolistasi on tyhjä",
+ "contactname": "Yhteystiedon nimi",
+ "contacts": "Kontaktit",
+ "errordeletemessage": "Viestiä poistettaessa tapahtui virhe.",
+ "errorwhileretrievingcontacts": "Virhe ladattaessa yhteystietoja palvelimelta.",
+ "errorwhileretrievingdiscussions": "Virhe ladattaessa keskusteluja palvelimelta.",
+ "errorwhileretrievingmessages": "Virhe ladattaessa viestejä palvelimelta.",
+ "loadpreviousmessages": "Lataa aiemmat viestit.",
+ "message": "Viesti",
+ "messagenotsent": "Viestiä ei lähetetty. Ole hyvä ja yritä uudelleen myöhemmin.",
+ "messagepreferences": "Viestien asetukset",
+ "messages": "Viestit",
+ "mustbeonlinetosendmessages": "Sinun täytyy olla online-tilassa lähettääksesi viestin.",
+ "newmessage": "Uusi viesti",
+ "newmessages": "Uusia viestejä",
+ "nomessages": "Ei odottavia viestejä",
+ "nousersfound": "Käyttäjiä ei löytynyt",
+ "removecontact": "Poista kontakti",
+ "removecontactconfirm": "Tämä yhteystieto poistetaan yhteystietolistaltasi.",
+ "send": "lähetä",
+ "sendmessage": "Lähetä viesti",
+ "type_blocked": "Estetty",
+ "type_search": "Hakutulokset",
+ "type_strangers": "Muut",
+ "unblockcontact": "Salli kontakti",
+ "warningmessagenotsent": "Ei voitu lähettää viestiä/viestejä käyttäjälle {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/fr.json b/src/addon/messages/lang/fr.json
new file mode 100755
index 000000000..65d22afa7
--- /dev/null
+++ b/src/addon/messages/lang/fr.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Ajouter ce contact",
+ "blockcontact": "Bloquer ce contact",
+ "blockcontactconfirm": "Vous ne recevrez plus de messages de ce contact.",
+ "blocknoncontacts": "Empêcher les utilisateurs hors liste de contacts de m'envoyer des messages personnels",
+ "contactlistempty": "La liste des contacts est vide",
+ "contactname": "Nom du contact",
+ "contacts": "Contacts",
+ "deletemessage": "Supprimer le message",
+ "deletemessageconfirmation": "Voulez-vous vraiment supprimer ce message ? Il ne sera supprimé que de votre historique des messages, mais sera toujours visible pour l'utilisateur qui l'a envoyé ou reçu.",
+ "errordeletemessage": "Erreur lors de la suppression du message.",
+ "errorwhileretrievingcontacts": "Erreur lors de la récupération de contacts depuis le serveur.",
+ "errorwhileretrievingdiscussions": "Erreur lors de la récupération de discussions depuis le serveur.",
+ "errorwhileretrievingmessages": "Erreur lors de la récupération de messages depuis le serveur.",
+ "loadpreviousmessages": "Charger les messages antérieurs",
+ "message": "Corps du message",
+ "messagenotsent": "Ce message n'a pas été envoyé. Veuillez essayer plus tard.",
+ "messagepreferences": "Préférences des messages",
+ "messages": "Messages",
+ "mustbeonlinetosendmessages": "Vous devez être en ligne pour envoyer des messages.",
+ "newmessage": "Nouveau message",
+ "newmessages": "Nouveaux messages",
+ "nomessages": "Pas encore de messages",
+ "nousersfound": "Aucun utilisateur n'a été trouvé",
+ "removecontact": "Supprimer ce contact",
+ "removecontactconfirm": "Le contact sera retiré de votre liste.",
+ "send": "Envoyer",
+ "sendmessage": "Envoyer message",
+ "type_blocked": "Bloqué",
+ "type_offline": "Hors connexion",
+ "type_online": "En ligne",
+ "type_search": "Résultats de recherche",
+ "type_strangers": "Autres",
+ "unblockcontact": "Débloquer ce contact",
+ "warningmessagenotsent": "Impossible d'envoyer de message à l'utilisateur {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/he.json b/src/addon/messages/lang/he.json
new file mode 100755
index 000000000..fb473cf82
--- /dev/null
+++ b/src/addon/messages/lang/he.json
@@ -0,0 +1,30 @@
+{
+ "addcontact": "הוספת איש קשר",
+ "blockcontact": "חסימת איש הקשר",
+ "blocknoncontacts": "חסימת כל המסרים החדשים מאנשים שלא נמצאים ברשימת אנשי הקשר שלי",
+ "contactlistempty": "רשימת אנשי הקשר ריקה",
+ "contactname": "שם איש קשר",
+ "contacts": "אנשי קשר",
+ "deletemessage": "מחיקת מסר",
+ "deletemessageconfirmation": "האם הינך בטוח(ה) כי ברצונך למחוק את המסר? המסר ימחק רק מהיסטורית מסרים שלך ועדיין יהיה ניתן לצפות בו מהמשתמש השני שקיבל או שלח את המסר.",
+ "errorwhileretrievingcontacts": "שגיאה בזמן טעינת אנשי קשר מהשרת.",
+ "errorwhileretrievingdiscussions": "שגיאה בזמן טעינת הדיונים מהשרת.",
+ "errorwhileretrievingmessages": "שגיאה בזמן טעינת המסרים מהשרת.",
+ "message": "גוף ההודעה",
+ "messagenotsent": "מסר זה לא נשלח, אנא נסה שוב מאוחר יותר.",
+ "messagepreferences": "העדפות מסרים",
+ "messages": "הודעות",
+ "mustbeonlinetosendmessages": "עליך להיות מחובר/ת בכדי לשלוח מסר.",
+ "newmessage": "הודעה חדשה",
+ "nomessages": "אין הודעות עדיין",
+ "nousersfound": "לתשומת-לב",
+ "removecontact": "הסרת איש הקשר",
+ "send": "שליחה",
+ "sendmessage": "שליחת הודעה",
+ "type_blocked": "חסומים",
+ "type_offline": "לא מחוברים",
+ "type_online": "מחוברים",
+ "type_search": "תוצאות חיפוש",
+ "type_strangers": "אחרים",
+ "unblockcontact": "ביטול חסימת איש הקשר"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/hr.json b/src/addon/messages/lang/hr.json
new file mode 100755
index 000000000..ef9b4ba2f
--- /dev/null
+++ b/src/addon/messages/lang/hr.json
@@ -0,0 +1,21 @@
+{
+ "addcontact": "Dodaj kontakt",
+ "blockcontact": "Blokiraj kontakt",
+ "blocknoncontacts": "Blokiraj nepoznate korisnike",
+ "contactlistempty": "Vaš adresar je prazan",
+ "contacts": "Kontakti",
+ "message": "Tijelo poruke",
+ "messagepreferences": "Postavke za poruke",
+ "messages": "Poruke",
+ "newmessage": "Nova poruka",
+ "newmessages": "Nove poruke",
+ "nomessages": "Nema poruka (još)",
+ "nousersfound": "Nema korisnika",
+ "removecontact": "Ukloni kontakt",
+ "send": "Pošalji",
+ "sendmessage": "Slanje poruke",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_strangers": "Ostali",
+ "unblockcontact": "Odblokiraj osobu (kontakt)"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/hu.json b/src/addon/messages/lang/hu.json
new file mode 100755
index 000000000..324fe26fe
--- /dev/null
+++ b/src/addon/messages/lang/hu.json
@@ -0,0 +1,20 @@
+{
+ "addcontact": "Kapcsolat hozzáadása",
+ "blockcontact": "Kapcsolat zárolása",
+ "blocknoncontacts": "Ismeretlenek üzeneteit ne kapjam meg",
+ "contactlistempty": "Kapcsolatainak jegyzéke jelenleg üres.",
+ "contactname": "Név a kapcsolattartáshoz",
+ "contacts": "Kapcsolatok",
+ "deletemessage": "Üzenet törlése",
+ "deletemessageconfirmation": "Biztosan törli az üzenetet? Az csak a korábbi üzeneteiből törlődik, az azt küldő vagy fogadó fél továbbra is láthatja.",
+ "message": "Üzenet törzsszövege",
+ "messagepreferences": "Üzenet beállításai",
+ "messages": "Üzenetek",
+ "newmessage": "Új üzenet",
+ "nomessages": "Még nincs üzenet",
+ "nousersfound": "Nincs felhasználó",
+ "removecontact": "Kapcsolat törlése",
+ "send": "Elküld",
+ "sendmessage": "Üzenet küldése",
+ "unblockcontact": "Kapcsolat zárolásának feloldása"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/it.json b/src/addon/messages/lang/it.json
new file mode 100755
index 000000000..cb87a15d2
--- /dev/null
+++ b/src/addon/messages/lang/it.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Aggiungi contatto",
+ "blockcontact": "Blocca contatto",
+ "blockcontactconfirm": "Non riceverai più messaggi da questo contatto.",
+ "blocknoncontacts": "Evita messaggi da parte di utenti che non fanno parte dei miei contatti",
+ "contactlistempty": "L'elenco dei contatti è vuoto",
+ "contactname": "Nome del contatto",
+ "contacts": "Contatti",
+ "deletemessage": "Elimina messaggio",
+ "deletemessageconfirmation": "Sei sicuro di eliminare questo messaggio? Verrà eliminato solamente dalla storico dei tuoi messaggi rimanendo comunque visibile a coloro che lo hanno ricevuto.",
+ "errordeletemessage": "Si è verificato un errore durante l'eliminazione del messaggio.",
+ "errorwhileretrievingcontacts": "Si è verificato un errore durante la ricezione dei contatti dal server.",
+ "errorwhileretrievingdiscussions": "Si è verificato un errore durante la ricezione delle discussioni dal server.",
+ "errorwhileretrievingmessages": "Si è verificato un errore durante la ricezione dei messaggi dal server.",
+ "loadpreviousmessages": "Carica messaggi precedenti",
+ "message": "Corpo del messaggio",
+ "messagenotsent": "Il messaggio non è stato inviato, per favore riprova più tardi.",
+ "messagepreferences": "Preferenze messaggi",
+ "messages": "Messaggi",
+ "mustbeonlinetosendmessages": "Per inviare messaggi devi essere online.",
+ "newmessage": "Nuovo messaggio",
+ "newmessages": "Nuovi messaggi",
+ "nomessages": "Non ci sono ancora messaggi",
+ "nousersfound": "Non trovato alcun utente",
+ "removecontact": "Cancella contatti",
+ "removecontactconfirm": "Il contatto sarà eliminato dalla lista dei contatti.",
+ "send": "invia",
+ "sendmessage": "Invia messaggio",
+ "type_blocked": "Bloccato",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Risultati della ricerca",
+ "type_strangers": "Altri",
+ "unblockcontact": "Sblocca contatto",
+ "warningmessagenotsent": "Non è stato possibile inviare messaggi all'utente {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/ja.json b/src/addon/messages/lang/ja.json
new file mode 100755
index 000000000..545fd8d51
--- /dev/null
+++ b/src/addon/messages/lang/ja.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "コンタクトに追加する",
+ "blockcontact": "受信拒否",
+ "blockcontactconfirm": "この連絡先からのメッセージ受信を停止します。",
+ "blocknoncontacts": "不明なユーザをブロックする",
+ "contactlistempty": "連絡先リストが空",
+ "contactname": "連絡先名称",
+ "contacts": "コンタクト",
+ "deletemessage": "メッセージを削除する",
+ "deletemessageconfirmation": "本当にこのメッセージを削除してもよろしいですか? あなたのメッセージング履歴からのみ削除され、メッセージを送受信したユーザはまだ閲覧することができます。",
+ "errordeletemessage": "メッセージ消去中にエラーが発生しました。",
+ "errorwhileretrievingcontacts": "サーバから連絡先を取得中にエラーが発生しました。",
+ "errorwhileretrievingdiscussions": "サーバからディスカッションを受信中にエラーが発生しました。",
+ "errorwhileretrievingmessages": "サーバからメッセージを受信中にエラーが発生しました。",
+ "loadpreviousmessages": "以前のメッセージを読み込み",
+ "message": "メッセージ本文",
+ "messagenotsent": "メッセージは送信されませんでした。後で再び試みてください。",
+ "messagepreferences": "メッセージプリファレンス",
+ "messages": "メッセージ",
+ "mustbeonlinetosendmessages": "メッセージを送信するにはオンラインでなければなりません。",
+ "newmessage": "新しいメッセージ",
+ "newmessages": "新規メッセージ...",
+ "nomessages": "メッセージはありません。",
+ "nousersfound": "ユーザは見つかりませんでした。",
+ "removecontact": "コンタクトから削除する",
+ "removecontactconfirm": "連絡先はあなたの連絡先リストから削除されます。",
+ "send": "送信",
+ "sendmessage": "メッセージを送信する",
+ "type_blocked": "ブロックされています",
+ "type_offline": "オフライン",
+ "type_online": "オンライン",
+ "type_search": "結果の検索",
+ "type_strangers": "その他",
+ "unblockcontact": "コンタクトの拒否を解除する",
+ "warningmessagenotsent": "ユーザ {{user}} へのメッセージ送信ができませんでした。 {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/ko.json b/src/addon/messages/lang/ko.json
new file mode 100755
index 000000000..0fe6608a0
--- /dev/null
+++ b/src/addon/messages/lang/ko.json
@@ -0,0 +1,32 @@
+{
+ "addcontact": "연락 추가",
+ "blockcontact": "연락 차단",
+ "blockcontactconfirm": "이 연락처의 메시지는 더 이상 수신되지 않습니다.",
+ "blocknoncontacts": "연락처에 없는 사람들이 나에게 메세지 보내는 것 방지",
+ "contactlistempty": "연락처가 비어 있습니다.",
+ "contactname": "연락처 이름",
+ "contacts": "연락처",
+ "errordeletemessage": "메시지를 지우는 중 오류 발생",
+ "errorwhileretrievingcontacts": "서버에서 연락처를 검색하는 동안 오류 발생",
+ "errorwhileretrievingdiscussions": "서버에서 토론을 가져 오는 중에 오류 발생",
+ "errorwhileretrievingmessages": "서버에서 메시지를 검색하는 중 오류 발생",
+ "loadpreviousmessages": "이전 메시지 로드",
+ "message": "메세지 내용",
+ "messagenotsent": "메시지가 전송되지 않았습니다. 다시 시도해 주세요.",
+ "messages": "메시지",
+ "mustbeonlinetosendmessages": "메시지를 전송하기 위해서는 온라인 상태여야 합니다.",
+ "newmessages": "새로운 메시지",
+ "nomessages": "아직 메시지 없음",
+ "nousersfound": "사용자 없음",
+ "removecontact": "연락처 제거",
+ "removecontactconfirm": "연락처가 연락처 목록에서 제거됩니다.",
+ "send": "전송",
+ "sendmessage": "메세지 보내기",
+ "type_blocked": "차단된",
+ "type_offline": "오프라인",
+ "type_online": "온라인",
+ "type_search": "검색 결과",
+ "type_strangers": "기타",
+ "unblockcontact": "차단되지 않은 연락처",
+ "warningmessagenotsent": "{{user}} 사용자에게 메시지를 보낼 수 없습니다. {{오류}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/lt.json b/src/addon/messages/lang/lt.json
new file mode 100755
index 000000000..0f808f5de
--- /dev/null
+++ b/src/addon/messages/lang/lt.json
@@ -0,0 +1,30 @@
+{
+ "addcontact": "Įtraukti kontaktą",
+ "blockcontact": "Blokuoti kontaktą",
+ "blocknoncontacts": "Neleisti neįtrauktiems į kontaktų sąrašą asmenims siųsti man žinutes",
+ "contactlistempty": "Kontaktų sąrašas tuščias",
+ "contactname": "Kontaktas",
+ "contacts": "Kontaktai",
+ "errordeletemessage": "Klaida trinant žinutes.",
+ "errorwhileretrievingcontacts": "Klaida nuskaitant kontaktus iš serverio.",
+ "errorwhileretrievingdiscussions": "Klaida nuskaitant diskusijas iš serverio.",
+ "errorwhileretrievingmessages": "Klaida nuskaitant pranešimus iš serverio.",
+ "message": "Pranešimo tekstas",
+ "messagenotsent": "Žinutė nebuvo išsiųsta, pabandykite vėliau.",
+ "messagepreferences": "Žinučių nuostatos",
+ "messages": "Žinutės",
+ "mustbeonlinetosendmessages": "Norėdamas išsiųsti žinutę, turite prisijungti",
+ "newmessage": "Nauja žinutė",
+ "nomessages": "Nėra žinučių",
+ "nousersfound": "Nerasta naudotojų",
+ "removecontact": "Pašalinti kontaktą",
+ "send": "siųsti",
+ "sendmessage": "Siųsti žinutę",
+ "type_blocked": "Užblokuota",
+ "type_offline": "Neprisjungęs",
+ "type_online": "Prisijungęs",
+ "type_search": "Paieška",
+ "type_strangers": "Kita",
+ "unblockcontact": "Atblokuoti kontaktą",
+ "warningmessagenotsent": "Žinutė {{user}} vartotojui neišsiųsta. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/mr.json b/src/addon/messages/lang/mr.json
new file mode 100755
index 000000000..4746a2507
--- /dev/null
+++ b/src/addon/messages/lang/mr.json
@@ -0,0 +1,31 @@
+{
+ "addcontact": "संपर्क भरा",
+ "blockcontact": "संपर्क थांबवा",
+ "blockcontactconfirm": "आपण या संपर्कातून संदेश प्राप्त करणे थांबवाल.",
+ "blocknoncontacts": "माझ्या संपर्क यादीमध्ये नसलेल्या लोकांकडून येणारे सर्व नविन संदेश थांबवा",
+ "contactlistempty": "संपर्क यादी रिक्त आहे",
+ "contactname": "संपर्क नाव",
+ "contacts": "संपर्क",
+ "errordeletemessage": "संदेश हटवताना त्रुटी.",
+ "errorwhileretrievingcontacts": "सर्व्हरवरून संपर्क पुनर्प्राप्त करताना त्रुटी.",
+ "errorwhileretrievingdiscussions": "सर्व्हरवरून चर्चा पुनर्प्राप्त करताना त्रुटी.",
+ "errorwhileretrievingmessages": "सर्व्हरवरून संदेश पुनर्प्राप्त करताना त्रुटी.",
+ "loadpreviousmessages": "मागील संदेश लोड करा",
+ "message": "संदेश",
+ "messagenotsent": "संदेश पाठविला गेला नाही, कृपया नंतर पुन्हा प्रयत्न करा.",
+ "messages": "संदेश",
+ "mustbeonlinetosendmessages": "आपल्याला संदेश पाठविण्यासाठी ऑनलाइन असणे आवश्यक आहे",
+ "newmessages": "नवीन संदेश",
+ "nomessages": "प्रतीक्षा सुचीमध्ये संदेश नाहीत",
+ "nousersfound": "युजर सापडत नाहीत",
+ "removecontact": "संपर्क काढुन टाका",
+ "removecontactconfirm": "आपल्या संपर्क यादीतून संपर्क काढला जाईल.",
+ "sendmessage": "संदेश पाठवा",
+ "type_blocked": "अवरोधित केले",
+ "type_offline": "ऑफलाइन",
+ "type_online": "ऑनलाइन",
+ "type_search": "शोध परिणाम",
+ "type_strangers": "इतर",
+ "unblockcontact": "संपर्क सुरू करा",
+ "warningmessagenotsent": "वापरकर्ता {{user}} ला संदेश पाठवू शकला नाही. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/nl.json b/src/addon/messages/lang/nl.json
new file mode 100755
index 000000000..a6059a8c5
--- /dev/null
+++ b/src/addon/messages/lang/nl.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Voeg contactpersoon toe",
+ "blockcontact": "Blokkeer contactpersoon",
+ "blockcontactconfirm": "Je zult geen berichten meer krijgen van deze contactpersoon.",
+ "blocknoncontacts": "Blokkeer gebruikers die niet op mijn contactenlijst staan",
+ "contactlistempty": "De contactenlijst is leeg",
+ "contactname": "Naam",
+ "contacts": "Contactpersonen",
+ "deletemessage": "Verwijder bericht",
+ "deletemessageconfirmation": "Weet je zeker dat je dit bericht wil verwijderen? Het zal alleen verwijderd worden van je berichtengeschiedenis. Het zal nog zichtbaar blijven voor de gebruiker die het bericht verstuurd of ontvangen heeft.",
+ "errordeletemessage": "Fout bij het verwijderen van het bericht.",
+ "errorwhileretrievingcontacts": "Fout bij het ophalen van contacten van de server.",
+ "errorwhileretrievingdiscussions": "Fout bij het ophalen van discussies van de server.",
+ "errorwhileretrievingmessages": "Fout bij het ophalen van berichten van de server.",
+ "loadpreviousmessages": "Laad vorige berichten",
+ "message": "Berichtinhoud",
+ "messagenotsent": "Het bericht is niet verzonden. Probeer het later opnieuw.",
+ "messagepreferences": "Berichten voorkeuren",
+ "messages": "Berichten",
+ "mustbeonlinetosendmessages": "Je moet online zijn om berichten te versturen",
+ "newmessage": "Nieuw bericht",
+ "newmessages": "Nieuwe berichten",
+ "nomessages": "Nog geen berichten",
+ "nousersfound": "Geen gebruikers gevonden",
+ "removecontact": "Verwijder contactpersoon",
+ "removecontactconfirm": "Contact zal verwijderd worden van je contactenlijst.",
+ "send": "Stuur",
+ "sendmessage": "Stuur bericht",
+ "type_blocked": "Geblokkeerd",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Zoekresultaten",
+ "type_strangers": "Anderen",
+ "unblockcontact": "deblokkeer deze contactpersoon",
+ "warningmessagenotsent": "Kon bericht(en) niet versturen naar gebruiker {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/no.json b/src/addon/messages/lang/no.json
new file mode 100755
index 000000000..17dc96bf2
--- /dev/null
+++ b/src/addon/messages/lang/no.json
@@ -0,0 +1,34 @@
+{
+ "addcontact": "Legg til kontakt",
+ "blockcontact": "Blokker kontakten",
+ "blockcontactconfirm": "Du vil slutte å motta meldinger fra denne kontakten",
+ "blocknoncontacts": "Blokker alle beskjeder fra folk som ikke er på kontaklisten min",
+ "contactlistempty": "Kontaktlisten er tom",
+ "contactname": "Navn på kontakt",
+ "contacts": "Kontakter",
+ "errordeletemessage": "Feil ved sletting av melding",
+ "errorwhileretrievingcontacts": "Feil ved henting av kontakter fra server",
+ "errorwhileretrievingdiscussions": "Feil ved henting av diskusjoner fra server",
+ "errorwhileretrievingmessages": "Feil ved henting av meldinger fra server",
+ "loadpreviousmessages": "Last forrige meldinger",
+ "message": "Meldingsteksten",
+ "messagenotsent": "Meldingen ble ikke sendt. Prøv igjen senere",
+ "messagepreferences": "Meldingspreferanser",
+ "messages": "Beskjeder",
+ "mustbeonlinetosendmessages": "Du må være på nett for å sende meldinger",
+ "newmessage": "Ny melding",
+ "newmessages": "Nye meldinger",
+ "nomessages": "Ingen beskjeder ennå",
+ "nousersfound": "Ingen brukere funnet",
+ "removecontact": "Fjern kontakt",
+ "removecontactconfirm": "Kontakten vil bli fjernet fra kontaktlisten",
+ "send": "Send",
+ "sendmessage": "Send melding",
+ "type_blocked": "Blokkert",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Søkeresultat",
+ "type_strangers": "Andre",
+ "unblockcontact": "Opphev blokkering av kontakt",
+ "warningmessagenotsent": "Kunne ikke sende melding(er) til {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/pl.json b/src/addon/messages/lang/pl.json
new file mode 100755
index 000000000..a0b20dc95
--- /dev/null
+++ b/src/addon/messages/lang/pl.json
@@ -0,0 +1,20 @@
+{
+ "addcontact": "Dodaj kontakt",
+ "blockcontact": "Blokuj kontakt",
+ "blocknoncontacts": "Blokuj wiadomości od użytkowników spoza listy kontaktów",
+ "contactlistempty": "Lista kontaktów jest pusta",
+ "contactname": "Nazwa kontaktu",
+ "contacts": "Kontakty",
+ "deletemessage": "Usuń wiadomość",
+ "deletemessageconfirmation": "Czy jesteś pewien, że chcesz usunąć tę wiadomość? Zostanie ona usunięta wyłącznie z twojej historii wiadomości, użytkownik który ją wysłał lub odebrał nadal będzie mógł ją wyświetlić.",
+ "message": "Treść wiadomości",
+ "messagepreferences": "Preferencje wiadomości",
+ "messages": "Wiadomości",
+ "newmessage": "Nowa wiadomość",
+ "nomessages": "Brak wiadomości",
+ "nousersfound": "Nie znaleziono użytkowników",
+ "removecontact": "Usuń kontakt",
+ "send": "wyślij",
+ "sendmessage": "Wyślij wiadomość",
+ "unblockcontact": "Odblokuj kontakt"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/pt-br.json b/src/addon/messages/lang/pt-br.json
new file mode 100755
index 000000000..fdebbcdec
--- /dev/null
+++ b/src/addon/messages/lang/pt-br.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Acrescentar Contato",
+ "blockcontact": "Bloquear contato",
+ "blockcontactconfirm": "Você deixará de receber mensagens deste contato.",
+ "blocknoncontacts": "Bloquear todas as mensagens de quem não estiver na minha lista de contatos",
+ "contactlistempty": "A lista de contatos está vaiza",
+ "contactname": "Nome do contato",
+ "contacts": "Contatos",
+ "deletemessage": "Excluir mensagem",
+ "deletemessageconfirmation": "Tem certeza de que deseja excluir esta mensagem? Ela só será excluída do seu histórico de mensagens e ainda poderá ser vista pelo usuário que enviou ou recebeu a mensagem.",
+ "errordeletemessage": "Erro enquanto excluía a mensagem.",
+ "errorwhileretrievingcontacts": "Erro ao recuperar contatos a partir do servidor.",
+ "errorwhileretrievingdiscussions": "Erro ao recuperar discussão do servidor.",
+ "errorwhileretrievingmessages": "Erro ao recuperar as mensagens do servidor.",
+ "loadpreviousmessages": "Carregar mensagens anteriores",
+ "message": "Corpo da mensagem",
+ "messagenotsent": "A mensagem não foi enviada. Por favor tente novamente mais tarde.",
+ "messagepreferences": "Preferências de mensagens",
+ "messages": "Mensagens",
+ "mustbeonlinetosendmessages": "Você precisa estar conectado para enviar mensagens.",
+ "newmessage": "Nova Mensagem",
+ "newmessages": "Novas mensagens",
+ "nomessages": "Sem novas mensagens",
+ "nousersfound": "Nenhum usuário encontrado",
+ "removecontact": "Eliminar contato",
+ "removecontactconfirm": "O contato será removido da sua lista de contatos.",
+ "send": "enviar",
+ "sendmessage": "Enviar mensagem",
+ "type_blocked": "Bloqueado",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Resultados de busca",
+ "type_strangers": "Outros",
+ "unblockcontact": "Desbloquear contato",
+ "warningmessagenotsent": "Não pode enviar mensagem(s) para o usuário {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/pt.json b/src/addon/messages/lang/pt.json
new file mode 100755
index 000000000..71a811502
--- /dev/null
+++ b/src/addon/messages/lang/pt.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Adicionar contacto",
+ "blockcontact": "Bloquear contacto",
+ "blockcontactconfirm": "Não irá receber mais mensagens deste contacto.",
+ "blocknoncontacts": "Bloquear mensagens de pessoas que não estão na minha lista de contactos",
+ "contactlistempty": "A lista de contactos está vazia",
+ "contactname": "Nome do contacto",
+ "contacts": "Contactos",
+ "deletemessage": "Apagar mensagem",
+ "deletemessageconfirmation": "Tem a certeza que deseja apagar esta mensagem? A mesma será apagada apenas do seu histórico de mensagens, continuando visível para o utilizador que a enviou ou que recebeu a mensagem.",
+ "errordeletemessage": "Erro ao eliminar a mensagem.",
+ "errorwhileretrievingcontacts": "Erro ao obter contactos do servidor.",
+ "errorwhileretrievingdiscussions": "Erro ao obter tópicos de discussão do servidor.",
+ "errorwhileretrievingmessages": "Erro ao obter mensagens do servidor.",
+ "loadpreviousmessages": "Carregar mensagens antigas",
+ "message": "Corpo da mensagem",
+ "messagenotsent": "A mensagem não foi enviada. Tente novamente mais tarde.",
+ "messagepreferences": "Preferências das mensagens",
+ "messages": "Mensagens",
+ "mustbeonlinetosendmessages": "Precisa de estar online para enviar mensagens.",
+ "newmessage": "Nova mensagem",
+ "newmessages": "Novas mensagens",
+ "nomessages": "Sem mensagens",
+ "nousersfound": "Nenhum utilizador encontrado",
+ "removecontact": "Remover contacto",
+ "removecontactconfirm": "O contacto será removido da sua lista de contactos.",
+ "send": "Enviar",
+ "sendmessage": "Enviar mensagem",
+ "type_blocked": "Bloqueado",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Resultados da pesquisa",
+ "type_strangers": "Outros",
+ "unblockcontact": "Desbloquear contacto",
+ "warningmessagenotsent": "Não foi possível enviar mensagens ao utilizador {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/ro.json b/src/addon/messages/lang/ro.json
new file mode 100755
index 000000000..551e062e9
--- /dev/null
+++ b/src/addon/messages/lang/ro.json
@@ -0,0 +1,30 @@
+{
+ "addcontact": "Adaugă prieten",
+ "blockcontact": "Blochează această persoană",
+ "blocknoncontacts": "Blochează toate mesajele noi de la persoane care nu se află în lista mea de prieteni",
+ "contactlistempty": "Lista de contacte este goală",
+ "contactname": "Nume contact",
+ "contacts": "Prieteni",
+ "deletemessage": "Șterge mesaj",
+ "deletemessageconfirmation": "Sunteți sigur că doriți să ștergeți acest mesaj? Va fi șters numai din istoricul mesajelor și va fi în continuare vizibil de către utilizatorul care a trimis sau a primit mesajul.",
+ "errordeletemessage": "Eroare la ștergerea mesajului.",
+ "errorwhileretrievingcontacts": "A apărut o eroare în găsirea contactelor pe server.",
+ "errorwhileretrievingdiscussions": "A apărut o eroare în găsirea conversațiilor de pe server.",
+ "errorwhileretrievingmessages": "A apărut o eroare în găsirea mesajelor de pe server.",
+ "message": "Conținut mesaj",
+ "messagenotsent": "Mesajul nu a fost expediat, vă rugăm să încercați mai târziu.",
+ "messages": "Mesaje",
+ "mustbeonlinetosendmessages": "Trebuie să fiți online pentru a putea trimite mesaje",
+ "newmessage": "Mesaj nou",
+ "nomessages": "Nu există mesaje în aşteptare",
+ "nousersfound": "Nu s-au găsit utilizatori",
+ "removecontact": "Şterge prieten din listă",
+ "send": "Trimis",
+ "sendmessage": "Trimite mesaj",
+ "type_blocked": "Blocat",
+ "type_offline": "Deconectat",
+ "type_online": "Conectat",
+ "type_search": "Caută rezultatele",
+ "type_strangers": "Alții",
+ "unblockcontact": "Deblochează utilizator"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/ru.json b/src/addon/messages/lang/ru.json
new file mode 100755
index 000000000..5d4238cfd
--- /dev/null
+++ b/src/addon/messages/lang/ru.json
@@ -0,0 +1,36 @@
+{
+ "addcontact": "Добавить собеседника",
+ "blockcontact": "Блокировать сообщения от этого человека",
+ "blockcontactconfirm": "Вы больше не будете получать сообщения от этого контакта.",
+ "blocknoncontacts": "Не принимать сообщения от людей, которых нет в списке моих собеседников",
+ "contactlistempty": "Список контактов пуст",
+ "contactname": "Имя контакта",
+ "contacts": "Собеседники",
+ "deletemessage": "Удалить сообщение",
+ "deletemessageconfirmation": "Вы уверены, что хотите удалить данное сообщение? Сообщение будет удалено лишь из списка сообщений и будет доступно для просмотра отправителем или получателем.",
+ "errordeletemessage": "Ошибка при удалении сообщения.",
+ "errorwhileretrievingcontacts": "Ошибка при извлечении контактов с сервера.",
+ "errorwhileretrievingdiscussions": "Ошибка при получении обсуждений с сервера.",
+ "errorwhileretrievingmessages": "Ошибка при получении сообщений с сервера.",
+ "loadpreviousmessages": "Загрузить предыдущее сообщение",
+ "message": "Текст сообщения",
+ "messagenotsent": "Сообщение не было отправлено. Пожалуйста, повторите попытку позже.",
+ "messagepreferences": "Настройки сообщений",
+ "messages": "Сообщения",
+ "mustbeonlinetosendmessages": "Вы должны быть подключены к сети, чтобы отправлять сообщения.",
+ "newmessage": "Новое сообщение",
+ "newmessages": "Новые сообщения",
+ "nomessages": "Нет ни одного сообщения",
+ "nousersfound": "Пользователи не найдены",
+ "removecontact": "Удалить собеседника из моего списка",
+ "removecontactconfirm": "Контакт будет удалён из вашего списка контактов.",
+ "send": "Отправить",
+ "sendmessage": "Отправить сообщение",
+ "type_blocked": "Заблокировано",
+ "type_offline": "Вне сайта",
+ "type_online": "На сайте",
+ "type_search": "Результаты поиска",
+ "type_strangers": "Другие",
+ "unblockcontact": "Разблокировать сообщения от этого собеседника",
+ "warningmessagenotsent": "Не получилось отправить сообщение(я) пользователю {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/sr-cr.json b/src/addon/messages/lang/sr-cr.json
new file mode 100755
index 000000000..18a467fa4
--- /dev/null
+++ b/src/addon/messages/lang/sr-cr.json
@@ -0,0 +1,34 @@
+{
+ "addcontact": "Додај контакт",
+ "blockcontact": "Блокирај контакт",
+ "blockcontactconfirm": "Нећете више добијати поруке од ове особе.",
+ "blocknoncontacts": "Блокирај све нове поруке од корисника који нису на мојој листи контаката",
+ "contactlistempty": "Листа контаката је празна",
+ "contactname": "Име особе",
+ "contacts": "Контакти",
+ "errordeletemessage": "Грешка приликом брисања поруке.",
+ "errorwhileretrievingcontacts": "Грешка приликом преузимања контаката са сервера.",
+ "errorwhileretrievingdiscussions": "Грешка приликом преузимања дискусија са сервера.",
+ "errorwhileretrievingmessages": "Грешка приликом преузимања порука са сервера.",
+ "loadpreviousmessages": "Учитај претходне поруке",
+ "message": "Тело поруке",
+ "messagenotsent": "Порука није послата. Молимо, покушајте поново касније.",
+ "messagepreferences": "Параметри порука",
+ "messages": "Поруке",
+ "mustbeonlinetosendmessages": "Морате бити онлајн како бисте слали поруке",
+ "newmessage": "Нове поруке...",
+ "newmessages": "Нове поруке",
+ "nomessages": "Нема порука.",
+ "nousersfound": "Није пронађен ниједан корисник",
+ "removecontact": "Обриши контакт",
+ "removecontactconfirm": "Особа ће бити уклоњена са ваше листе контаката.",
+ "send": "Пошаљи",
+ "sendmessage": "Пошаљи поруку",
+ "type_blocked": "Блокиран",
+ "type_offline": "Офлајн",
+ "type_online": "Онлајн",
+ "type_search": "Резултати претраге",
+ "type_strangers": "Други",
+ "unblockcontact": "Одблокирај контакт",
+ "warningmessagenotsent": "Није могуће послати поруку/е кориснику {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/sr-lt.json b/src/addon/messages/lang/sr-lt.json
new file mode 100755
index 000000000..3d5a353c5
--- /dev/null
+++ b/src/addon/messages/lang/sr-lt.json
@@ -0,0 +1,34 @@
+{
+ "addcontact": "Dodaj kontakt",
+ "blockcontact": "Blokiraj kontakt",
+ "blockcontactconfirm": "Nećete više dobijati poruke od ove osobe.",
+ "blocknoncontacts": "Blokiraj sve nove poruke od korisnika koji nisu na mojoj listi kontakata",
+ "contactlistempty": "Lista kontakata je prazna",
+ "contactname": "Ime osobe",
+ "contacts": "Kontakti",
+ "errordeletemessage": "Greška prilikom brisanja poruke.",
+ "errorwhileretrievingcontacts": "Greška prilikom preuzimanja kontakata sa servera.",
+ "errorwhileretrievingdiscussions": "Greška prilikom preuzimanja diskusija sa servera.",
+ "errorwhileretrievingmessages": "Greška prilikom preuzimanja poruka sa servera.",
+ "loadpreviousmessages": "Učitaj prethodne poruke",
+ "message": "Telo poruke",
+ "messagenotsent": "Poruka nije poslata. Molimo, pokušajte ponovo kasnije.",
+ "messagepreferences": "Parametri poruka",
+ "messages": "Poruke",
+ "mustbeonlinetosendmessages": "Morate biti onlajn kako biste slali poruke",
+ "newmessage": "Nove poruke...",
+ "newmessages": "Nove poruke",
+ "nomessages": "Nema poruka.",
+ "nousersfound": "Nije pronađen nijedan korisnik",
+ "removecontact": "Obriši kontakt",
+ "removecontactconfirm": "Osoba će biti uklonjena sa vaše liste kontakata.",
+ "send": "Pošalji",
+ "sendmessage": "Pošalji poruku",
+ "type_blocked": "Blokiran",
+ "type_offline": "Oflajn",
+ "type_online": "Onlajn",
+ "type_search": "Rezultati pretrage",
+ "type_strangers": "Drugi",
+ "unblockcontact": "Odblokiraj kontakt",
+ "warningmessagenotsent": "Nije moguće poslati poruku/e korisniku {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/sv.json b/src/addon/messages/lang/sv.json
new file mode 100755
index 000000000..46c8195fc
--- /dev/null
+++ b/src/addon/messages/lang/sv.json
@@ -0,0 +1,31 @@
+{
+ "addcontact": "Lägg till kontakt",
+ "blockcontact": "Blockera kontakt",
+ "blocknoncontacts": "Blockera alla nya meddelanden från personer som inte finns med på min kontaktlista.",
+ "contactlistempty": "kontaktlista är tom",
+ "contactname": "Kontakt namn",
+ "contacts": "Kontakter",
+ "deletemessage": "Radera meddelande",
+ "deletemessageconfirmation": "Vill du verkligen radera detta meddelande?\nDet kommer bara att raderas från din egen meddelandehistorik. Användaren som har skickat/fått meddelandet kan fortfarande se det.",
+ "errordeletemessage": "Fel vid borttagning av meddelandet",
+ "errorwhileretrievingcontacts": "Fel vid hämtning av kontakter från servern.",
+ "errorwhileretrievingdiscussions": "Fel vid hämtning av diskussionerna från servern.",
+ "errorwhileretrievingmessages": "Fel vid hämtning meddelanden från servern.",
+ "message": "Meddelandets brödtext",
+ "messagenotsent": "Meddelandet skickades inte, försök igen senare.",
+ "messagepreferences": "Välj inställningar för meddelanden",
+ "messages": "Meddelanden",
+ "mustbeonlinetosendmessages": "Du måste vara online för att skicka meddelanden",
+ "newmessage": "Nytt meddelande",
+ "nomessages": "Inga meddelanden än",
+ "nousersfound": "Det gick inte att hitta några användare",
+ "removecontact": "Ta bort kontakt",
+ "send": "skicka",
+ "sendmessage": "Skicka meddelande",
+ "type_blocked": "blockerad",
+ "type_offline": "Offline",
+ "type_online": "Online",
+ "type_search": "Sökresultat",
+ "type_strangers": "Andra",
+ "unblockcontact": "Ta bort blockering av användare"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/tg.json b/src/addon/messages/lang/tg.json
new file mode 100755
index 000000000..56bdcf78c
--- /dev/null
+++ b/src/addon/messages/lang/tg.json
@@ -0,0 +1,20 @@
+{
+ "addcontact": "Ҳамсӯҳбат илова карда шавад",
+ "blockcontact": "Бастани тамос",
+ "blocknoncontacts": "Мактубчаҳо аз касоне ки дар рӯйхати ҳамсӯҳбатони ман нестанд, қабул карда нашаванд",
+ "contacts": "Ҳамсӯҳбатон",
+ "message": "Мактубча",
+ "messagepreferences": "Хусусиятҳои паём",
+ "messages": "Мактубчаҳо",
+ "newmessage": "Паёми нав",
+ "newmessages": "Паёмҳои нав",
+ "nomessages": "Мактубчаҳои нав нестанд",
+ "nousersfound": "Корбарон ёфт нашудаанд",
+ "removecontact": "Ҳамсӯҳбат аз рӯйхати ман нест карда шавад",
+ "send": "Фиристода шавад",
+ "sendmessage": "Мактубча фиристода шавад",
+ "type_offline": "Офлайн",
+ "type_online": "Онлайн",
+ "type_search": "Натиҷаҳои ҷустуҷӯ",
+ "unblockcontact": "Мактубчаҳо аз ин ҳамсӯҳбат аз масдудкунӣ кушода шаванд"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/tr.json b/src/addon/messages/lang/tr.json
new file mode 100755
index 000000000..05abab807
--- /dev/null
+++ b/src/addon/messages/lang/tr.json
@@ -0,0 +1,25 @@
+{
+ "addcontact": "Kişi ekle",
+ "blockcontact": "Kişiyi engelle",
+ "blocknoncontacts": "Tanımadığım kullanıcıları engelle",
+ "contactlistempty": "Kişi listeniz şu anda boş",
+ "contactname": "Adı",
+ "contacts": "Kişiler",
+ "message": "Mesaj gövdesi",
+ "messagepreferences": "İleti tercihleri",
+ "messages": "Mesajlar",
+ "mustbeonlinetosendmessages": "İleti gönderebilmek için çevrimiçi olmanız gerekir",
+ "newmessage": "Yeni ileti",
+ "newmessages": "Yeni ileti",
+ "nomessages": "Yeni ileti yok",
+ "nousersfound": "Kullanıcı bulunamadı",
+ "removecontact": "Kişiyi sil",
+ "send": "Gönder",
+ "sendmessage": "Mesaj gönder",
+ "type_blocked": "Engellendi",
+ "type_offline": "Çevrimdışı",
+ "type_online": "Çevrimiçi",
+ "type_search": "Arama sonuçları",
+ "type_strangers": "Diğer",
+ "unblockcontact": "Engeli kaldır"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/uk.json b/src/addon/messages/lang/uk.json
new file mode 100755
index 000000000..d562482c2
--- /dev/null
+++ b/src/addon/messages/lang/uk.json
@@ -0,0 +1,33 @@
+{
+ "addcontact": "Додати контакт",
+ "blockcontact": "Заблокувати контакт",
+ "blockcontactconfirm": "Ви не будете отримувати повідомлення від цього контакту.",
+ "blocknoncontacts": "Запобігти повідомленням, що не в моїх контактах",
+ "contactlistempty": "Список контактів порожній",
+ "contactname": "Ім'я контакту",
+ "contacts": "Контакти",
+ "errordeletemessage": "Помилка при видаленні повідомлення.",
+ "errorwhileretrievingcontacts": "Помилка при отриманні контактів з сервера.",
+ "errorwhileretrievingdiscussions": "Помилка при отриманні обговорення з сервера.",
+ "errorwhileretrievingmessages": "Помилка при отриманні повідомлень від сервера.",
+ "loadpreviousmessages": "Завантаження попередніх повідомлень",
+ "message": "Текст повідомлення",
+ "messagenotsent": "Повідомлення не було відправлено, будь ласка, спробуйте ще раз пізніше.",
+ "messages": "Повідомлення",
+ "mustbeonlinetosendmessages": "Ви повинні бути онлайн, щоб відправляти повідомлення",
+ "newmessage": "Нове повідомлення...",
+ "newmessages": "Нові повідомлення",
+ "nomessages": "Ще немає повідомлень",
+ "nousersfound": "Користувачів не знайдено",
+ "removecontact": "Видалити контакт",
+ "removecontactconfirm": "Контакт буде видалено зі списку контактів.",
+ "send": "Відіслати",
+ "sendmessage": "Надіслати повідомлення",
+ "type_blocked": "Заблоковано",
+ "type_offline": "Офлайн",
+ "type_online": "Онлайн",
+ "type_search": "Результати пошуку",
+ "type_strangers": "Інші",
+ "unblockcontact": "Розблокувати контакт",
+ "warningmessagenotsent": "Неможливо відправити повідомлення до {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/zh-cn.json b/src/addon/messages/lang/zh-cn.json
new file mode 100755
index 000000000..fa7d75993
--- /dev/null
+++ b/src/addon/messages/lang/zh-cn.json
@@ -0,0 +1,17 @@
+{
+ "addcontact": "添加联系人",
+ "blockcontact": "屏蔽联系人",
+ "blocknoncontacts": "禁止不在联系人中的用户给我发消息",
+ "contactlistempty": "您的联系人名单是空的",
+ "contactname": "联系人",
+ "contacts": "联系人",
+ "deletemessage": "删除消息",
+ "message": "正文",
+ "messages": "消息",
+ "nomessages": "没有新消息",
+ "nousersfound": "未找到用户",
+ "removecontact": "删除联系人",
+ "send": "发送",
+ "sendmessage": "发送消息",
+ "unblockcontact": "不再阻拦联系人"
+}
\ No newline at end of file
diff --git a/src/addon/messages/lang/zh-tw.json b/src/addon/messages/lang/zh-tw.json
new file mode 100755
index 000000000..60b1bfa8d
--- /dev/null
+++ b/src/addon/messages/lang/zh-tw.json
@@ -0,0 +1,32 @@
+{
+ "addcontact": "增加聯絡人",
+ "blockcontact": "封鎖聯絡人",
+ "blocknoncontacts": "僅接收通訊錄中的使用者所發送的簡訊。(其他都拒收)",
+ "contactlistempty": "聯絡人清單沒有資料",
+ "contactname": "聯絡人名稱",
+ "contacts": "通訊錄",
+ "deletemessage": "刪除簡訊",
+ "deletemessageconfirmation": "你確定要刪除這一簡訊?它只會從你的簡訊歷史紀錄上刪除,但是那發送或接收這一簡訊的用戶仍可以看得到。",
+ "errordeletemessage": "刪除訊息時發生錯誤.",
+ "errorwhileretrievingcontacts": "從伺服器存取聯絡人時出錯",
+ "errorwhileretrievingdiscussions": "從伺服器存取討論區時出錯",
+ "errorwhileretrievingmessages": "從伺服器存取訊息時出錯",
+ "message": "訊息",
+ "messagenotsent": "訊息未發送, 請稍後再試.",
+ "messagepreferences": "簡訊偏好",
+ "messages": "簡訊",
+ "mustbeonlinetosendmessages": "您必須上線才能發送訊息",
+ "newmessage": "新簡訊",
+ "nomessages": "尚無訊息",
+ "nousersfound": "沒有使用者",
+ "removecontact": "刪除聯絡人",
+ "send": "送出",
+ "sendmessage": "傳送簡訊",
+ "type_blocked": "已停止",
+ "type_offline": "離線",
+ "type_online": "上線",
+ "type_search": "搜尋結果",
+ "type_strangers": "其他",
+ "unblockcontact": "不再封鎖聯絡",
+ "warningmessagenotsent": "無法傳送訊息給使用者 {{user}}. {{error}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/ar.json b/src/addon/mod/assign/feedback/comments/lang/ar.json
new file mode 100755
index 000000000..f0050e816
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/ar.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "تعليقات الإفادة"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/bg.json b/src/addon/mod/assign/feedback/comments/lang/bg.json
new file mode 100755
index 000000000..110e5dfdb
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/bg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Обратни коментари"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/ca.json b/src/addon/mod/assign/feedback/comments/lang/ca.json
new file mode 100755
index 000000000..6f6e6f1dc
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/ca.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentaris de la retroacció"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/cs.json b/src/addon/mod/assign/feedback/comments/lang/cs.json
new file mode 100755
index 000000000..99a1394e9
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/cs.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Komentář učitele"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/da.json b/src/addon/mod/assign/feedback/comments/lang/da.json
new file mode 100755
index 000000000..cb890545c
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/da.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Feedback-kommentarer"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/de-du.json b/src/addon/mod/assign/feedback/comments/lang/de-du.json
new file mode 100755
index 000000000..d6c9d21ca
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/de-du.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Feedback als Kommentar"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/de.json b/src/addon/mod/assign/feedback/comments/lang/de.json
new file mode 100755
index 000000000..d6c9d21ca
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/de.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Feedback als Kommentar"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/el.json b/src/addon/mod/assign/feedback/comments/lang/el.json
new file mode 100755
index 000000000..b7ef07e6f
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/el.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Σχόλια ανατροφοδότησης"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/es-mx.json b/src/addon/mod/assign/feedback/comments/lang/es-mx.json
new file mode 100755
index 000000000..39fd0a710
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/es-mx.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentarios de retroalimentación"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/es.json b/src/addon/mod/assign/feedback/comments/lang/es.json
new file mode 100755
index 000000000..39fd0a710
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/es.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentarios de retroalimentación"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/eu.json b/src/addon/mod/assign/feedback/comments/lang/eu.json
new file mode 100755
index 000000000..d2a34216f
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/eu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Feedback-iruzkinak"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/fa.json b/src/addon/mod/assign/feedback/comments/lang/fa.json
new file mode 100755
index 000000000..5b259c315
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/fa.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "بازخورد متنی"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/fi.json b/src/addon/mod/assign/feedback/comments/lang/fi.json
new file mode 100755
index 000000000..f2dceff24
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/fi.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Palaute"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/fr.json b/src/addon/mod/assign/feedback/comments/lang/fr.json
new file mode 100755
index 000000000..18bf1690f
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/fr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Feedback par commentaires"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/he.json b/src/addon/mod/assign/feedback/comments/lang/he.json
new file mode 100755
index 000000000..8d97d3547
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/he.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "משוב מרצה לסטודנטים"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/hr.json b/src/addon/mod/assign/feedback/comments/lang/hr.json
new file mode 100755
index 000000000..751770188
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/hr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Povratna informacija"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/hu.json b/src/addon/mod/assign/feedback/comments/lang/hu.json
new file mode 100755
index 000000000..4fc1aaa1c
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/hu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Visszajelző megjegyzések"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/it.json b/src/addon/mod/assign/feedback/comments/lang/it.json
new file mode 100755
index 000000000..57c6828fe
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/it.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Commenti"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/ja.json b/src/addon/mod/assign/feedback/comments/lang/ja.json
new file mode 100755
index 000000000..65cbbfa67
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/ja.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "フィードバックコメント"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/ko.json b/src/addon/mod/assign/feedback/comments/lang/ko.json
new file mode 100755
index 000000000..4edf1fede
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/ko.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "피드백 코멘트"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/lt.json b/src/addon/mod/assign/feedback/comments/lang/lt.json
new file mode 100755
index 000000000..a4e8223e4
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/lt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Grįžtamojo ryšio komentarai"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/mr.json b/src/addon/mod/assign/feedback/comments/lang/mr.json
new file mode 100755
index 000000000..c031183b2
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/mr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "निवड"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/nl.json b/src/addon/mod/assign/feedback/comments/lang/nl.json
new file mode 100755
index 000000000..6f256721e
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/nl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Feedback"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/no.json b/src/addon/mod/assign/feedback/comments/lang/no.json
new file mode 100755
index 000000000..92aa584da
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/no.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Tilbakemeldinger/kommentarer"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/pl.json b/src/addon/mod/assign/feedback/comments/lang/pl.json
new file mode 100755
index 000000000..c56f3fd60
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/pl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Komentarz zwrotny"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/pt-br.json b/src/addon/mod/assign/feedback/comments/lang/pt-br.json
new file mode 100755
index 000000000..200643616
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/pt-br.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentários de feedback"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/pt.json b/src/addon/mod/assign/feedback/comments/lang/pt.json
new file mode 100755
index 000000000..200643616
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/pt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentários de feedback"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/ro.json b/src/addon/mod/assign/feedback/comments/lang/ro.json
new file mode 100755
index 000000000..960df0745
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/ro.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentarii de feedback"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/ru.json b/src/addon/mod/assign/feedback/comments/lang/ru.json
new file mode 100755
index 000000000..4951ed334
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/ru.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Отзыв в виде комментария"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/sv.json b/src/addon/mod/assign/feedback/comments/lang/sv.json
new file mode 100755
index 000000000..97132a745
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/sv.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Återkoppling/kommentarer"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/tg.json b/src/addon/mod/assign/feedback/comments/lang/tg.json
new file mode 100755
index 000000000..acd63ae42
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/tg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Тафсирҳои тақриз"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/tr.json b/src/addon/mod/assign/feedback/comments/lang/tr.json
new file mode 100755
index 000000000..ac3ce4cf4
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/tr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Geribildirim yorumları"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/comments/lang/uk.json b/src/addon/mod/assign/feedback/comments/lang/uk.json
new file mode 100755
index 000000000..f065ca16a
--- /dev/null
+++ b/src/addon/mod/assign/feedback/comments/lang/uk.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Відгук - коментарем"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/ar.json b/src/addon/mod/assign/feedback/editpdf/lang/ar.json
new file mode 100755
index 000000000..a3611bbf0
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/ar.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "الاختيار"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/bg.json b/src/addon/mod/assign/feedback/editpdf/lang/bg.json
new file mode 100755
index 000000000..8a241b288
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/bg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Избор"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/ca.json b/src/addon/mod/assign/feedback/editpdf/lang/ca.json
new file mode 100755
index 000000000..e5cb04c25
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/ca.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comenta el PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/cs.json b/src/addon/mod/assign/feedback/editpdf/lang/cs.json
new file mode 100755
index 000000000..7d23473f8
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/cs.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "PDF poznámky"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/da.json b/src/addon/mod/assign/feedback/editpdf/lang/da.json
new file mode 100755
index 000000000..99ed850c9
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/da.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Anmærk pdf"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/de-du.json b/src/addon/mod/assign/feedback/editpdf/lang/de-du.json
new file mode 100755
index 000000000..049c90422
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/de-du.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Anmerkungen im PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/de.json b/src/addon/mod/assign/feedback/editpdf/lang/de.json
new file mode 100755
index 000000000..049c90422
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/de.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Anmerkungen im PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/el.json b/src/addon/mod/assign/feedback/editpdf/lang/el.json
new file mode 100755
index 000000000..08da0b026
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/el.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Σχολιασμός PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/es-mx.json b/src/addon/mod/assign/feedback/editpdf/lang/es-mx.json
new file mode 100755
index 000000000..717acc7c5
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/es-mx.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Hacer anotaciones a PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/es.json b/src/addon/mod/assign/feedback/editpdf/lang/es.json
new file mode 100755
index 000000000..bbcd4d771
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/es.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Anotación PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/eu.json b/src/addon/mod/assign/feedback/editpdf/lang/eu.json
new file mode 100755
index 000000000..f75c3af49
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/eu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "PDF oharra"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/fa.json b/src/addon/mod/assign/feedback/editpdf/lang/fa.json
new file mode 100755
index 000000000..eb1f75c84
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/fa.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "یادداشتنویسی روی PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/fi.json b/src/addon/mod/assign/feedback/editpdf/lang/fi.json
new file mode 100755
index 000000000..952fb9496
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/fi.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Kommentoitava PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/fr.json b/src/addon/mod/assign/feedback/editpdf/lang/fr.json
new file mode 100755
index 000000000..c389a81f3
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/fr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Annotation PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/he.json b/src/addon/mod/assign/feedback/editpdf/lang/he.json
new file mode 100755
index 000000000..08369905b
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/he.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "מתן הערות מקוונות למסמך PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/hr.json b/src/addon/mod/assign/feedback/editpdf/lang/hr.json
new file mode 100755
index 000000000..8a11fa9c2
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/hr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Unos bilješki u PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/hu.json b/src/addon/mod/assign/feedback/editpdf/lang/hu.json
new file mode 100755
index 000000000..a6ed3d353
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/hu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "PDF-hez széljegyzet készítése"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/it.json b/src/addon/mod/assign/feedback/editpdf/lang/it.json
new file mode 100755
index 000000000..05afb067a
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/it.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Annotazione PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/ja.json b/src/addon/mod/assign/feedback/editpdf/lang/ja.json
new file mode 100755
index 000000000..bb0658ea8
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/ja.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "PDF注釈"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/ko.json b/src/addon/mod/assign/feedback/editpdf/lang/ko.json
new file mode 100755
index 000000000..a2dee549f
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/ko.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "PDF 주석추가"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/lt.json b/src/addon/mod/assign/feedback/editpdf/lang/lt.json
new file mode 100755
index 000000000..05843630b
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/lt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "PDF komentarai"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/mr.json b/src/addon/mod/assign/feedback/editpdf/lang/mr.json
new file mode 100755
index 000000000..c031183b2
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/mr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "निवड"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/nl.json b/src/addon/mod/assign/feedback/editpdf/lang/nl.json
new file mode 100755
index 000000000..c9385a777
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/nl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Annoteer PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/no.json b/src/addon/mod/assign/feedback/editpdf/lang/no.json
new file mode 100755
index 000000000..99872e7d6
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/no.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Kommenter i PDF-filen."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/pl.json b/src/addon/mod/assign/feedback/editpdf/lang/pl.json
new file mode 100755
index 000000000..49f73a512
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/pl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Adnotacje PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/pt-br.json b/src/addon/mod/assign/feedback/editpdf/lang/pt-br.json
new file mode 100755
index 000000000..ecbfcf228
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/pt-br.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Anotar PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/pt.json b/src/addon/mod/assign/feedback/editpdf/lang/pt.json
new file mode 100755
index 000000000..ecbfcf228
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/pt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Anotar PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/ro.json b/src/addon/mod/assign/feedback/editpdf/lang/ro.json
new file mode 100755
index 000000000..508923021
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/ro.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Adnotați PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/ru.json b/src/addon/mod/assign/feedback/editpdf/lang/ru.json
new file mode 100755
index 000000000..5f6f6cbeb
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/ru.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Аннотирование PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/sv.json b/src/addon/mod/assign/feedback/editpdf/lang/sv.json
new file mode 100755
index 000000000..6689bc966
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/sv.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Kommentera PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/tg.json b/src/addon/mod/assign/feedback/editpdf/lang/tg.json
new file mode 100755
index 000000000..1712095e9
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/tg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "PDF шарҳ дода шавад"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/tr.json b/src/addon/mod/assign/feedback/editpdf/lang/tr.json
new file mode 100755
index 000000000..5c1c32454
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/tr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "PDF ek açıklama"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/feedback/editpdf/lang/uk.json b/src/addon/mod/assign/feedback/editpdf/lang/uk.json
new file mode 100755
index 000000000..5db03a521
--- /dev/null
+++ b/src/addon/mod/assign/feedback/editpdf/lang/uk.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Анотація PDF"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/ar.json b/src/addon/mod/assign/lang/ar.json
new file mode 100755
index 000000000..0fa299978
--- /dev/null
+++ b/src/addon/mod/assign/lang/ar.json
@@ -0,0 +1,49 @@
+{
+ "addattempt": "اسمح بمحاولة أخرى",
+ "addnewattempt": "إضافة محاولة جديدة",
+ "addnewattemptfromprevious": "إضافة محاولة جديدة بناء على التسليم السابق",
+ "addsubmission": "أضف تسليم",
+ "allowsubmissionsanddescriptionfromdatesummary": "ستكون تفاصيل التكليف (المهمة) ونموذج التسليم مُتاح من {{$a}}",
+ "allowsubmissionsfromdate": "اسمح بالتسليم ابتداءّ من",
+ "allowsubmissionsfromdatesummary": "سيبدأ قبول التسليمات لهذا التكليف (المهمة) ابتداءً من {{$a}}",
+ "applytoteam": "تطبيق الدرجات والتغذية الراجعة (الملاحظات) على المجموعة بأكملها",
+ "assignmentisdue": "فات موعد التسليم",
+ "attemptnumber": "رقم المحاولة",
+ "attemptreopenmethod": "تم إعادة فتح المحاولة",
+ "attemptreopenmethod_manual": "يدوياً",
+ "attemptreopenmethod_untilpass": "تلقائياً حتى النجاح",
+ "attemptsettings": "إعدادات المحاولة",
+ "confirmsubmission": "هل أنت متأكد أنك تريد أن تُسلِّم عملك للتصحيح؟ لن تكون قادراً على إجراء أية تغييرات أخرى.",
+ "currentattempt": "هذه المحاولة {{$a}}.",
+ "currentattemptof": "هذه المحاولة رقم{{$a.attemptnumber}} ( {{$a.maxattempts}} محاولات مسموحة ).",
+ "currentgrade": "الدرجة الحالية في",
+ "duedate": "تاريخ تقديم مهمة",
+ "duedateno": "لا يوجد موعد لتقديم المهمة",
+ "editsubmission": "حرر تسليمي",
+ "grade": "درجة",
+ "graded": "تم رصد درجة",
+ "gradeoutof": "الدرجة من {{$a}}",
+ "gradingstatus": "حالة التقييم",
+ "noattempt": "لا توجد محاولات",
+ "notgraded": "لم يتم التقييم",
+ "numberofdraftsubmissions": "مسودات",
+ "numberofparticipants": "المشاركين",
+ "numberofsubmissionsneedgrading": "بحاجة لتقييم",
+ "numberofsubmittedassignments": "مسلمة",
+ "numwords": "{{$a}} كلمات",
+ "outof": "من {{$a}}",
+ "overdue": "فات موعد تسليم الوظيفة بـ: {{$a}}",
+ "savechanges": "حفظ التغييرات",
+ "submission": "تسليم",
+ "submissionslocked": "هذه الوظيفة لا تقبل التسليم الآن",
+ "submissionstatus": "حالة التسليم",
+ "submissionstatus_draft": "مسودة (غير مسلمة)",
+ "submissionstatus_marked": "تم رصد درجة",
+ "submissionstatus_submitted": "مسلمة للتقييم",
+ "submissionstatusheading": "حالة التسليم",
+ "submitassignment": "تقديم مهمة",
+ "submittedearly": "تم تسليم الوظيفة مبكرة بـ{{$a}}",
+ "submittedlate": "تم تسليم الوظيفة متأخرة بـ{{$a}}",
+ "timemodified": "وقت التعديل",
+ "timeremaining": "الزمن المتبقي"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/bg.json b/src/addon/mod/assign/lang/bg.json
new file mode 100755
index 000000000..dd7c067a2
--- /dev/null
+++ b/src/addon/mod/assign/lang/bg.json
@@ -0,0 +1,82 @@
+{
+ "addattempt": "Позволяване на друг опит",
+ "addnewattempt": "Позволяване на нов опит",
+ "addnewattemptfromprevious": "Добавяне на нов опит, основан на предишно предаване",
+ "addsubmission": "Добавяне на задание",
+ "allowsubmissionsanddescriptionfromdatesummary": "Данните за заданието и формулярът за предаване ще бъдат достъпни от {{$a}}",
+ "allowsubmissionsfromdate": "Позволено предаване от",
+ "allowsubmissionsfromdatesummary": "По това задание се приемат работи от {{$a}}",
+ "applytoteam": "Прилагане на оценки и забележки към цялата група",
+ "assignmentisdue": "Заданието е приключило",
+ "attemptnumber": "Брой опити",
+ "attemptreopenmethod": "Отворени отново опити",
+ "attemptreopenmethod_manual": "Ръчно",
+ "attemptreopenmethod_untilpass": "Автоматично до завършване",
+ "attemptsettings": "Настройки на опитите",
+ "confirmsubmission": "Сигурни ли сте, че искате да предадете работата си за оценяване? След това няма да можете да правите никакви промени повече.",
+ "currentattempt": "Този опит {{$a}}.",
+ "currentattemptof": "Това е {{$a.attemptnumber}}-и опит ( от разрешените {{$a.maxattempts}} ).",
+ "currentgrade": "Оценка в дневника за оценки",
+ "cutoffdate": "Дата на отказ",
+ "defaultteam": "Група по подразбиране",
+ "duedate": "Краен срок",
+ "duedateno": "Няма краен срок",
+ "duedatereached": "Крайният срок на това задание сега е изтекъл",
+ "editingstatus": "Състояние на редактиране",
+ "editsubmission": "Редактиране на задание",
+ "extensionduedate": "Крайна дата на отлагането",
+ "grade": "Оценка",
+ "graded": "Оценена",
+ "gradedby": "Оценено от",
+ "gradedon": "Оценено на",
+ "gradeoutof": "Оценка до {{$a}}",
+ "gradingstatus": "Състояние на оценяването",
+ "groupsubmissionsettings": "Настройки за групово предаване",
+ "hiddenuser": "Участник",
+ "latesubmissions": "Закъснели предавания",
+ "latesubmissionsaccepted": "Позволено до {{$a}}",
+ "markingworkflowstate": "Отбелязване на етап на оценяване",
+ "markingworkflowstateinmarking": "В процес на оценяване",
+ "markingworkflowstateinreview": "Преглеждане",
+ "markingworkflowstatenotmarked": "Не оценени",
+ "markingworkflowstatereadyforrelease": "Готово за обявяване",
+ "markingworkflowstatereadyforreview": "Оценяването е завършено",
+ "markingworkflowstatereleased": "Обявено",
+ "multipleteams": "Член на повече от една група",
+ "noattempt": "Няма опити",
+ "nomoresubmissionsaccepted": "Само за участници, получили позволение за отлагане",
+ "noonlinesubmissions": "Това задание не изисква от Вас нищо да качвате онлайн",
+ "nosubmission": "Нищо не е изпратено по това задание",
+ "notgraded": "Неоценена",
+ "numberofdraftsubmissions": "Чернови",
+ "numberofparticipants": "Участници",
+ "numberofsubmissionsneedgrading": "Изискващи оценка",
+ "numberofsubmittedassignments": "Предадени",
+ "numberofteams": "Групи",
+ "numwords": "{{$a}} думи",
+ "outof": "{{$a.current}} от {{$a.total}}",
+ "overdue": "Предаването на работата закъснява с {{$a}} след срока",
+ "savechanges": "Записване на промените",
+ "submission": "Задание",
+ "submissioneditable": "Студентът може да редактира това задание",
+ "submissionnoteditable": "Студентът не може да редактира това задание",
+ "submissionslocked": "Това задание не приема работи за предаване",
+ "submissionstatus": "Състояние на заданието",
+ "submissionstatus_": "Непредадена",
+ "submissionstatus_draft": "Чернова (не е предадена)",
+ "submissionstatus_marked": "Оценена",
+ "submissionstatus_new": "Непредадена",
+ "submissionstatus_reopened": "Отворена отново",
+ "submissionstatus_submitted": "Предадена за оценка",
+ "submissionstatusheading": "Състояние на заданието",
+ "submissionteam": "Група",
+ "submitassignment": "Предаване на задание",
+ "submitassignment_help": "Предадете ли веднъж работата по заданието, Вие няма да можете да я променяте повече.",
+ "submittedearly": "Работата е предадена {{$a}} по-рано",
+ "submittedlate": "Работата по заданието е предадена с {{$a}} закъснение",
+ "timemodified": "Последна промяна",
+ "timeremaining": "Оставащо време",
+ "unlimitedattempts": "Неограничен",
+ "userswhoneedtosubmit": "Потребители, които трябва да предадат: {{$a}}",
+ "viewsubmission": "Преглед на предадена работа"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/ca.json b/src/addon/mod/assign/lang/ca.json
new file mode 100755
index 000000000..9d246a7ff
--- /dev/null
+++ b/src/addon/mod/assign/lang/ca.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Accepteu el compromís de tramesa.",
+ "addattempt": "Permet un altre intent",
+ "addnewattempt": "Afegeix un altre intent",
+ "addnewattemptfromprevious": "Afegeix un intent nou basat en la tramesa anterior",
+ "addsubmission": "Afegeix la tramesa",
+ "allowsubmissionsanddescriptionfromdatesummary": "Els detalls de la tasca i el formulari de la tramesa estaran disponibles des de {{$a}}",
+ "allowsubmissionsfromdate": "Permet trameses des de",
+ "allowsubmissionsfromdatesummary": "Aquesta tasca acceptarà trameses des de {{$a}}",
+ "applytoteam": "Aplica les qualificacions i la retroacció al grup sencer",
+ "assignmentisdue": "La tasca ha vençut",
+ "attemptnumber": "Número d'intent",
+ "attemptreopenmethod": "Intents reoberts",
+ "attemptreopenmethod_manual": "Manualment",
+ "attemptreopenmethod_untilpass": "Automàticament fins superació",
+ "attemptsettings": "Configuració dels intents",
+ "cannoteditduetostatementsubmission": "No podeu afegir o editar la tramesa en l'aplicació perquè no s'ha pogut recuperar el compromís de tramesa del lloc.",
+ "cannotgradefromapp": "Alguns mètodes de qualificació no estan encara suportats per l'aplicació i no es poden modificar.",
+ "cannotsubmitduetostatementsubmission": "No podeu enviar la tramesa a qualificar en l'aplicació perquè no s'ha pogut recuperar el compromís de tramesa del lloc.",
+ "confirmsubmission": "Segur que voleu trametre el vostre treball per a qualificar? Ja no podreu realitzar més canvis.",
+ "currentattempt": "Aquest és l'intent {{$a}}.",
+ "currentattemptof": "Aquest és l'intent {{$a.attemptnumber}} ( {{$a.maxattempts}} intents permesos ).",
+ "currentgrade": "Qualificació actual en el llibre de qualificacions",
+ "cutoffdate": "Data límit",
+ "defaultteam": "Grup per omissió",
+ "duedate": "Data de venciment",
+ "duedateno": "Sense data de venciment",
+ "duedatereached": "La data de venciment de la tasca ja ha passat",
+ "editingstatus": "S'està editant l'estat",
+ "editsubmission": "Edita la tramesa",
+ "erroreditpluginsnotsupported": "No podeu afegir o editar una tramesa en l'aplicació perquè alguns connectors no s'admeten per editar:",
+ "errorshowinginformation": "No es pot mostrar la informació de la tramesa",
+ "extensionduedate": "Data de venciment de la pròrroga",
+ "feedbacknotsupported": "Aquesta retroacció no està admesa per l'aplicació i podria no contenir tota la informació",
+ "grade": "Qualifica",
+ "graded": "Qualificada",
+ "gradedby": "Qualificat per",
+ "gradedon": "Qualificat el",
+ "gradenotsynced": "La puntuació no està sincronitzada",
+ "gradeoutof": "Qualificació sobre {{$a}}",
+ "gradingstatus": "Estat de la qualificació",
+ "groupsubmissionsettings": "Paràmetres de la tramesa en grup",
+ "hiddenuser": "Participant",
+ "latesubmissions": "Trameses fora de termini",
+ "latesubmissionsaccepted": "Permès fins {{$a}}",
+ "markingworkflowstate": "Estat del flux d'avaluació",
+ "markingworkflowstateinmarking": "Avaluant-se",
+ "markingworkflowstateinreview": "En revisió",
+ "markingworkflowstatenotmarked": "No avaluada",
+ "markingworkflowstatereadyforrelease": "A punt per publicar",
+ "markingworkflowstatereadyforreview": "Avaluació completada",
+ "markingworkflowstatereleased": "Publicada",
+ "multipleteams": "Membre de més d'un grup",
+ "noattempt": "Cap intent",
+ "nomoresubmissionsaccepted": "Sols és permès per als participants que tenen concedida una pròrroga.",
+ "noonlinesubmissions": "Aquesta tasca no requereix que trameteu res en línia.",
+ "nosubmission": "No s'ha tramès res per a aquesta tasca",
+ "notallparticipantsareshown": "Els participants que no tinguin cap tramesa no es mostren",
+ "noteam": "No és membre de cap grup",
+ "notgraded": "Sense qualificació",
+ "numberofdraftsubmissions": "Esborranys",
+ "numberofparticipants": "Participants",
+ "numberofsubmissionsneedgrading": "Necessiten qualificació",
+ "numberofsubmittedassignments": "S'han tramès",
+ "numberofteams": "Grups",
+ "numwords": "{{$a}} paraules",
+ "outof": "{{$a.current}} de {{$a.total}}",
+ "overdue": "La tasca ha vençut fa: {{$a}}",
+ "savechanges": "Desa els canvis",
+ "submission": "Tramesa",
+ "submissioneditable": "L'estudiant pot editar aquesta tramesa",
+ "submissionnoteditable": "L'estudiant no pot editar aquesta tramesa",
+ "submissionnotsupported": "Aquesta tramesa no està admesa per l'aplicació i podria no contenir tota la informació",
+ "submissionslocked": "Aquesta tasca no accepta trameses",
+ "submissionstatus": "Estat de la tramesa",
+ "submissionstatus_": "No s'ha tramès",
+ "submissionstatus_draft": "Esborrany (no s'ha tramès la versió definitiva)",
+ "submissionstatus_marked": "Qualificada",
+ "submissionstatus_new": "No s'ha tramès",
+ "submissionstatus_reopened": "Reoberta",
+ "submissionstatus_submitted": "S'ha tramès per a qualificar",
+ "submissionstatusheading": "Estat de la tramesa",
+ "submissionteam": "Grup",
+ "submitassignment": "Trametre tasca",
+ "submitassignment_help": "Un cop s'hagi tramès la tasca no podreu fer més canvis",
+ "submittedearly": "La tasca s'ha tramès {{$a}} abans del límit",
+ "submittedlate": "La tasca s'ha tramès {{$a}} tard",
+ "timemodified": "Darrera modificació",
+ "timeremaining": "Temps restant",
+ "ungroupedusers": "El paràmetre «Cal formar part d'un grup per fer una tramesa» està activat, i alguns usuaris o no són membres de cap grup o són membres de més d'un grup, per la qual cosa no poden fer trameses.",
+ "unlimitedattempts": "Il·limitats",
+ "userswhoneedtosubmit": "Usuaris que manquen per trametre: {{$a}}",
+ "userwithid": "Usuari amb Id {{id}}",
+ "viewsubmission": "Visualitza la tramesa",
+ "warningsubmissiongrademodified": "S'ha modificat la qualificació de la tramesa a la web.",
+ "warningsubmissionmodified": "La tramesa de l'usuari s'ha modificat a la web."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/cs.json b/src/addon/mod/assign/lang/cs.json
new file mode 100755
index 000000000..0e7d8aff5
--- /dev/null
+++ b/src/addon/mod/assign/lang/cs.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Přijměte prohlášení prosím.",
+ "addattempt": "Povolit další pokus",
+ "addnewattempt": "Přidat nový pokus",
+ "addnewattemptfromprevious": "Přidat nový pokus na základě posledního odevzdání",
+ "addsubmission": "Přidat řešení úkolu",
+ "allowsubmissionsanddescriptionfromdatesummary": "Detaily úkolu a formulář pro odevzdání bude dostupný od {{$a}}",
+ "allowsubmissionsfromdate": "Povolit odevzdání úkolů od",
+ "allowsubmissionsfromdatesummary": "Odevzdat úkol bude možné od {{$a}}",
+ "applytoteam": "Použít hodnocení pro celou skupinu",
+ "assignmentisdue": "Úkol je zpožděn",
+ "attemptnumber": "Číslo pokusu",
+ "attemptreopenmethod": "Opětovné otevření pokusů",
+ "attemptreopenmethod_manual": "Ručně",
+ "attemptreopenmethod_untilpass": "Automaticky dokud neuspěje",
+ "attemptsettings": "Nastavení pokusů",
+ "cannoteditduetostatementsubmission": "V aplikaci nemůžete přidat nebo upravit řešení úkolu, protože jsme nemohli získat stav řešení z webu.",
+ "cannotgradefromapp": "Některé metody známkování zatím nejsou aplikací podporovány a nemohou být změněny.",
+ "cannotsubmitduetostatementsubmission": "V aplikaci nemůžete odeslat známku úkolu, protože jsme nemohli získat stav řešení z webu.",
+ "confirmsubmission": "Jste si jisti, že chcete odeslat svou práci k hodnocení? Nebudete moci provádět žádné další změny.",
+ "currentattempt": "Toto je pokus č. {{$a}}.",
+ "currentattemptof": "Toto je pokus č. {{$a.attemptnumber}} (celkem je povoleno {{$a.maxattempts}} pokusů).",
+ "currentgrade": "Momentální známka v klasifikaci kurzu",
+ "cutoffdate": "Datum ukončení",
+ "defaultteam": "Výchozí skupina",
+ "duedate": "Termín odevzdání",
+ "duedateno": "Bez termínu odevzdání",
+ "duedatereached": "Termín pro odevzdání tohoto úkolu vypršel",
+ "editingstatus": "Stav úprav",
+ "editsubmission": "Upravit řešení úkolu",
+ "erroreditpluginsnotsupported": "V aplikaci nemůžete přidat nebo upravit řešení úkolu, protože některé doplňky nepodporují úpravy.",
+ "errorshowinginformation": "Nelze zobrazit informace o řešení úkolu.",
+ "extensionduedate": "Prodloužený termín odevzdání",
+ "feedbacknotsupported": "Tento komentář aplikace nepodporuje a nemusí obsahovat všechny informace.",
+ "grade": "Známka",
+ "graded": "Udělena známka",
+ "gradedby": "Hodnoceno",
+ "gradedon": "Hodnoceno na",
+ "gradenotsynced": "Známky nejsou synchronizovány",
+ "gradeoutof": "Hodnoceno z {{$a}}",
+ "gradingstatus": "Stav hodnocení",
+ "groupsubmissionsettings": "Nastavení skupinového řešení",
+ "hiddenuser": "Účastník",
+ "latesubmissions": "Zpožděné odevzdané úkoly",
+ "latesubmissionsaccepted": "Povoleno do {{$a}}",
+ "markingworkflowstate": "Stav postupu známkování",
+ "markingworkflowstateinmarking": "Známkováno",
+ "markingworkflowstateinreview": "Revidováno",
+ "markingworkflowstatenotmarked": "Bez známky",
+ "markingworkflowstatereadyforrelease": "Připraveno ke zveřejnění",
+ "markingworkflowstatereadyforreview": "Známkování dokončeno",
+ "markingworkflowstatereleased": "Zveřejněno",
+ "multipleteams": "Člen více než jedné skupiny",
+ "noattempt": "Neodevzdáno",
+ "nomoresubmissionsaccepted": "Povoleny pouze pro účastníky, kterým byl prodloužen termín",
+ "noonlinesubmissions": "Tento úkol nevyžaduje odpověď online",
+ "nosubmission": "K tomuto úkolu nebylo nic odevzdáno",
+ "notallparticipantsareshown": "Nejsou zobrazeni účastníci bez odevzdaného řešení úkolu.",
+ "noteam": "Není členem žádné skupiny",
+ "notgraded": "Nehodnoceno",
+ "numberofdraftsubmissions": "Návrhy",
+ "numberofparticipants": "Účastníci",
+ "numberofsubmissionsneedgrading": "Nutno ohodnotit",
+ "numberofsubmittedassignments": "Odevzdáno",
+ "numberofteams": "Skupiny",
+ "numwords": "{{$a}} slov",
+ "outof": "{{$a.current}} ze {{$a.total}}",
+ "overdue": "Úkol má zpoždění: {{$a}}",
+ "savechanges": "Uložit změny",
+ "submission": "Odevzdané úkoly",
+ "submissioneditable": "Student může upravit tento úkol",
+ "submissionnoteditable": "Student nemůže upravit tento úkol",
+ "submissionnotsupported": "Tento formát řešení úkolu aplikace nepodporuje a nemusí obsahovat všechny informace.",
+ "submissionslocked": "V tomto úkolu nelze odevzdat práci",
+ "submissionstatus": "Stav odevzdání úkolu",
+ "submissionstatus_": "Neodesláno",
+ "submissionstatus_draft": "Návrh (neodesláno)",
+ "submissionstatus_marked": "Udělena známka",
+ "submissionstatus_new": "Žádné řešení úkolu",
+ "submissionstatus_reopened": "Znovu otevřeno",
+ "submissionstatus_submitted": "Odesláno k hodnocení",
+ "submissionstatusheading": "Stav odevzdání úkolu",
+ "submissionteam": "Skupina",
+ "submitassignment": "Odevzdat úkol",
+ "submitassignment_help": "Po odevzdání úkolu nebudete moci provádět žádné změny.",
+ "submittedearly": "Úkoly byly odevzdány {{$a}} včas",
+ "submittedlate": "Úkoly byly odevzdány {{$a}} po termínu",
+ "timemodified": "Naposledy změněno",
+ "timeremaining": "Zbývá",
+ "ungroupedusers": "Nastavení \"Vyžadovat zařazení do skupiny\" je zapnuto a někteří uživatelé nejsou zařazeni do skupiny, bude jim to bránit v odevzdání úkolu.",
+ "unlimitedattempts": "Bez omezení",
+ "userswhoneedtosubmit": "Uživatelé, kteří potřebují odevzdat úkol: {{$a}}",
+ "userwithid": "Uživatel s ID {{id}}",
+ "viewsubmission": "Zobrazit odevzdané úkoly",
+ "warningsubmissiongrademodified": "Známka úkolu byla na webu upravena.",
+ "warningsubmissionmodified": "Řešení úkolu bylo na webu upraveno."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/da.json b/src/addon/mod/assign/lang/da.json
new file mode 100755
index 000000000..63c6eff18
--- /dev/null
+++ b/src/addon/mod/assign/lang/da.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Du skal acceptere afleveringserklæringen.",
+ "addattempt": "Tillad endnu et forsøg på besvarelse",
+ "addnewattempt": "Tillad et nyt forsøg på besvarelse",
+ "addnewattemptfromprevious": "Tilføj et nyt forsøg baseret på tidligere aflevering",
+ "addsubmission": "Besvar opgaven",
+ "allowsubmissionsanddescriptionfromdatesummary": "Opgaveinformationer og afleveringsblanket er tilgængelig fra {{$a}}",
+ "allowsubmissionsfromdate": "Tillad aflevering fra",
+ "allowsubmissionsfromdatesummary": "Denne opgave accepterer afleveringer fra {{$a}}",
+ "applytoteam": "Anvend karakterer og feedback til hele gruppen",
+ "assignmentisdue": "Afleveringsfristen er overskredet",
+ "attemptnumber": "Antal forsøg på besvarelse",
+ "attemptreopenmethod": "Genåbning af opgaver",
+ "attemptreopenmethod_manual": "Manuelt",
+ "attemptreopenmethod_untilpass": "Automatisk indtil bestået",
+ "attemptsettings": "Indstillinger for besvarelsesforsøg",
+ "cannoteditduetostatementsubmission": "Du kan ikke tilføje eller redigere en opgaveaflevering i appen, da vi kunne ikke modtage afleveringserklæringen fra websiden.",
+ "cannotgradefromapp": "Nogle karaktergivningsmetoder understøttes endnu ikke i appen og kan ikke ændres.",
+ "cannotsubmitduetostatementsubmission": "Du kan ikke aflevere til bedømmelse i appen da vi ikke kunne modtage afleveringserklæringen fra websiden.",
+ "confirmsubmission": "Er du sikker på at du vil aflevere opgaven til bedømmelse nu? Bagefter vil du ikke kunne ændre den",
+ "currentattempt": "Dette er besvarelsesforsøg {{$a}}.",
+ "currentattemptof": "Dette er besvarelsesforsøg {{$a.attemptnumber}} ({{$a.maxattempts}} tilladte).",
+ "currentgrade": "Aktuelle karakter i karakterbogen",
+ "cutoffdate": "Skæringsdato",
+ "defaultteam": "Standardgruppe",
+ "duedate": "Afleveringsdato",
+ "duedateno": "Ingen afleveringsfrist",
+ "duedatereached": "Afleveringsfristen er overskredet",
+ "editingstatus": "Redigeringsstatus",
+ "editsubmission": "Rediger opgavebesvarelse",
+ "erroreditpluginsnotsupported": "Du kan ikke tilføje eller redigere en opgaveaflevering i appen, nogle plugins understøtter ikke redigering:",
+ "errorshowinginformation": "Vi kan ikke vise information om aflevering",
+ "extensionduedate": "Afleveringsfrist forlænget",
+ "feedbacknotsupported": "Denne Feedback understøttes ikke af appen og indeholder nok ikke alle informationer",
+ "grade": "Karakter",
+ "graded": "Bedømt",
+ "gradedby": "Bedømt af",
+ "gradedon": "Bedømt",
+ "gradenotsynced": "Karakterer ikke synkroniseret",
+ "gradeoutof": "Bedømmelse af {{$a}}",
+ "gradingstatus": "Vurderingsstatus",
+ "groupsubmissionsettings": "Indstillinger for gruppeaflevering",
+ "hiddenuser": "Deltager",
+ "latesubmissions": "Forsinkede opgaveafleveringer",
+ "latesubmissionsaccepted": "Tilladt indtil {{$a}}",
+ "markingworkflowstate": "Status på bedømmelsesfase",
+ "markingworkflowstateinmarking": "Bedømmelse i gang",
+ "markingworkflowstateinreview": "Gennemgås",
+ "markingworkflowstatenotmarked": "Ikke bedømt",
+ "markingworkflowstatereadyforrelease": "Klar til udgivelse",
+ "markingworkflowstatereadyforreview": "Bedømmelse fuldført",
+ "markingworkflowstatereleased": "Udgivet",
+ "multipleteams": "Medlem af mere end en gruppe",
+ "noattempt": "Intet besvarelsesforsøg",
+ "nomoresubmissionsaccepted": "Kun tilladt for deltagere, der har fået udsættelse",
+ "noonlinesubmissions": "Denne opgave kræver ikke at du afleverer noget online",
+ "nosubmission": "Der er endnu ikke afleveret noget til denne opgave",
+ "notallparticipantsareshown": "Deltagere uden afleveringer vises ikke",
+ "noteam": "Ikke medlem af nogen grupper",
+ "notgraded": "Ikke bedømt",
+ "numberofdraftsubmissions": "Kladder",
+ "numberofparticipants": "Deltagere",
+ "numberofsubmissionsneedgrading": "Mangler bedømmelse",
+ "numberofsubmittedassignments": "Afleveret",
+ "numberofteams": "Grupper",
+ "numwords": "{{$a}} ord",
+ "outof": "{{$a.current}} ud af {{$a.total}}",
+ "overdue": "Afleveringsdatoen er overskredet med {{$a}}",
+ "savechanges": "Gem ændringer",
+ "submission": "Aflevering",
+ "submissioneditable": "Den studerende kan redigere opgaven.",
+ "submissionnoteditable": "Den studerende kan ikke redigere denne opgave",
+ "submissionnotsupported": "Denne aflevering understøttes ikke af appen og indeholder nok ikke alle informationer",
+ "submissionslocked": "Denne opgave accepterer ikke afleveringer",
+ "submissionstatus": "Afleveringsstatus",
+ "submissionstatus_": "Ingen opgavebesvarelse",
+ "submissionstatus_draft": "Kladde (ikke afleveret)",
+ "submissionstatus_marked": "Bedømt",
+ "submissionstatus_new": "Ingen aflevering",
+ "submissionstatus_reopened": "Genåbnet",
+ "submissionstatus_submitted": "Afleveret til bedømmelse",
+ "submissionstatusheading": "Afleveringsstatus",
+ "submissionteam": "Gruppe",
+ "submitassignment": "Aflever",
+ "submitassignment_help": "Når opgaven er afleveret kan du ikke længere foretage ændringer i den.",
+ "submittedearly": "Opgaven blev afleveret {{$a}} inden fristens udløb.",
+ "submittedlate": "Opgaven blev afleveret {{$a}} for sent",
+ "timemodified": "Seneste ændring",
+ "timeremaining": "Resterende tid",
+ "ungroupedusers": "Indstillingen 'Kræv gruppeaflevering' er slået til, og nogle brugere er forhindret i at aflevere opgaver da de ikke er med i en gruppe eller er medlem af mere end en gruppe.",
+ "unlimitedattempts": "Ubegrænset",
+ "userswhoneedtosubmit": "Brugere, der skal aflevere: {{$a}}",
+ "userwithid": "Bruger med Id {{id}}",
+ "viewsubmission": "Vis aflevering",
+ "warningsubmissiongrademodified": "Karakter for opgaven er ændret på websiden.",
+ "warningsubmissionmodified": "Opgavebesvarelsen er ændret på websiden."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/de-du.json b/src/addon/mod/assign/lang/de-du.json
new file mode 100755
index 000000000..502d58ed0
--- /dev/null
+++ b/src/addon/mod/assign/lang/de-du.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Bestätige das Abgabestatement zur Eigenständigkeit.",
+ "addattempt": "Einen weiteren Versuch zulassen",
+ "addnewattempt": "Neuen Versuch hinzufügen",
+ "addnewattemptfromprevious": "Neuen Versuch auf Grundlage der vorherigen Lösung abgeben",
+ "addsubmission": "Abgabe hinzufügen",
+ "allowsubmissionsanddescriptionfromdatesummary": "Die Aufgabendetails und die Lösungsabgabe stehen zur Verfügung ab {{$a}}",
+ "allowsubmissionsfromdate": "Abgabebeginn",
+ "allowsubmissionsfromdatesummary": "Abgabe möglich ab {{$a}}",
+ "applytoteam": "Bewertungen und Feedback der gesamten Gruppe zuweisen.",
+ "assignmentisdue": "Das Abgabeende ist vorbei",
+ "attemptnumber": "Nummer des Versuchs",
+ "attemptreopenmethod": "Versuche erneut bearbeitbar",
+ "attemptreopenmethod_manual": "Manuell",
+ "attemptreopenmethod_untilpass": "Automatisch bis zum Bestehen",
+ "attemptsettings": "Einstellungen für Versuche",
+ "cannoteditduetostatementsubmission": "Du kannst in der App keine Abgabe hinzufügen oder bearbeiten, weil kein Abgabestatement von der Website abgerufen werden konnte.",
+ "cannotgradefromapp": "Manche Bewertungsmethoden werden von der App bisher nicht unterstützt und können nicht verändert werden.",
+ "cannotsubmitduetostatementsubmission": "Du kannst in der App keine Abgabe machen, weil von der Website kein Abgabestatement abgerufen werden konnte.",
+ "confirmsubmission": "Wenn Sie nun Ihre Lösung zur Bewertung einreichen, können Sie keine Änderungen mehr vornehmen. Sind Sie sich sicher?",
+ "currentattempt": "Dies ist Versuch {{$a}}",
+ "currentattemptof": "Versuch {{$a.attemptnumber}} (mögliche Versuche {{$a.maxattempts}})",
+ "currentgrade": "Aktuelle Bewertung",
+ "cutoffdate": "Letzte Abgabemöglichkeit",
+ "defaultteam": "Standard-Gruppe",
+ "duedate": "Fälligkeitsdatum",
+ "duedateno": "Kein Fälligkeitsdatum",
+ "duedatereached": "Das Fälligkeitsdatum für diese Aufgabe ist vorbei.",
+ "editingstatus": "Bearbeitungsstatus",
+ "editsubmission": "Lösung bearbeiten",
+ "erroreditpluginsnotsupported": "Du kannst in der App keine Abgabe hinzufügen oder bearbeiten, weil manche Plugins bisher keine Bearbeitung zulassen:",
+ "errorshowinginformation": "Die Abgabeinformationen können nicht angezeigt werden.",
+ "extensionduedate": "Verlängerung des Fälligkeitsdatums",
+ "feedbacknotsupported": "Dieses Feedback wird von der App nicht unterstützt, so dass Informationen fehlen könnten.",
+ "grade": "Bewertung",
+ "graded": "Bewertet",
+ "gradedby": "Bewertet von",
+ "gradedon": "Bewertet am",
+ "gradenotsynced": "Bewertung nicht synchronisiert",
+ "gradeoutof": "Bewertung (max. {{$a}})",
+ "gradingstatus": "Bewertungsstatus",
+ "groupsubmissionsettings": "Einstellungen für Gruppeneinreichungen",
+ "hiddenuser": "Teilnehmer/in",
+ "latesubmissions": "Verspätete Abgaben",
+ "latesubmissionsaccepted": "Erlaubt bis {{$a}}",
+ "markingworkflowstate": "Status des Bewertungsworkflows",
+ "markingworkflowstateinmarking": "In Bewertung",
+ "markingworkflowstateinreview": "Wird überprüft",
+ "markingworkflowstatenotmarked": "Unbewertet",
+ "markingworkflowstatereadyforrelease": "Fertig zur Freigabe",
+ "markingworkflowstatereadyforreview": "Bewertung abgeschlossen",
+ "markingworkflowstatereleased": "Freigegeben",
+ "multipleteams": "Mitglied in mehreren Gruppen",
+ "noattempt": "Kein Versuch",
+ "nomoresubmissionsaccepted": "Weitere Abgaben sind nur zugelassen, wenn der Abgabezeitraum verlängert wurde.",
+ "noonlinesubmissions": "Diese Aufgabe benötigt keine Online-Abgabe",
+ "nosubmission": "Für diese Aufgabe wurde nichts abgegeben",
+ "notallparticipantsareshown": "Teilnehmer/innen ohne Abgaben werden nicht angezeigt.",
+ "noteam": "Nicht Mitglied einer Gruppe",
+ "notgraded": "Nicht bewertet",
+ "numberofdraftsubmissions": "Entwürfe",
+ "numberofparticipants": "Teilnehmer/innen",
+ "numberofsubmissionsneedgrading": "Bewertung erwartet",
+ "numberofsubmittedassignments": "Abgegeben",
+ "numberofteams": "Gruppen",
+ "numwords": "{{$a}} Wörter",
+ "outof": "{{$a.current}} von {{$a.total}}",
+ "overdue": "Abgabeende überschritten seit: {{$a}}",
+ "savechanges": "Änderungen sichern",
+ "submission": "Abgabe",
+ "submissioneditable": "Teilnehmer/innen können eingereichte Lösung bearbeiten",
+ "submissionnoteditable": "Teilnehmer/innen können eingereichte Lösung nicht bearbeiten",
+ "submissionnotsupported": "Diese Abgabe wird von der App nicht unterstützt, so dass Informationen fehlen könnten.",
+ "submissionslocked": "Bei dieser Aufgabe können derzeit keine Lösungen abgeben werden.",
+ "submissionstatus": "Abgabestatus",
+ "submissionstatus_": "Keine Abgabe",
+ "submissionstatus_draft": "Entwurf (nicht abgegeben)",
+ "submissionstatus_marked": "Bewertet",
+ "submissionstatus_new": "Keine Abgabe",
+ "submissionstatus_reopened": "Erneut geöffnet",
+ "submissionstatus_submitted": "Zur Bewertung abgegeben",
+ "submissionstatusheading": "Abgabestatus",
+ "submissionteam": "Gruppe",
+ "submitassignment": "Aufgabe abgeben",
+ "submitassignment_help": "Sobald diese Aufgabe abgegeben wird, sind keine weiteren Änderungen mehr möglich",
+ "submittedearly": "Aufgabe wurde {{$a}} vor dem Abgabeende abgegeben",
+ "submittedlate": "Aufgabe wurde {{$a}} verspätet abgegeben",
+ "timemodified": "Zuletzt geändert",
+ "timeremaining": "Verbleibende Zeit",
+ "ungroupedusers": "Die Option 'Gruppe notwendig, um etwas abgeben zu können' ist aktiviert. Es gibt Personen ohne Gruppe oder Personen mit mehreren Gruppen, die deshalb nichts abgeben können.",
+ "unlimitedattempts": "Unbegrenzt",
+ "userswhoneedtosubmit": "Nutzer/innen, die noch nicht abgegeben haben: {{$a}}",
+ "userwithid": "Nutzer/in mit ID {{id}}",
+ "viewsubmission": "Abgabe anzeigen",
+ "warningsubmissiongrademodified": "Die Abgabebewertung wurde auf der Website geändert.",
+ "warningsubmissionmodified": "Die Abgabe wurde auf der Website geändert."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/de.json b/src/addon/mod/assign/lang/de.json
new file mode 100755
index 000000000..82f9ed9a8
--- /dev/null
+++ b/src/addon/mod/assign/lang/de.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Bestätigen Sie das Abgabestatement zur Eigenständigkeit.",
+ "addattempt": "Einen weiteren Versuch zulassen",
+ "addnewattempt": "Neuen Versuch hinzufügen",
+ "addnewattemptfromprevious": "Neuen Versuch auf Grundlage der vorherigen Lösung abgeben",
+ "addsubmission": "Abgabe hinzufügen",
+ "allowsubmissionsanddescriptionfromdatesummary": "Die Aufgabendetails und die Lösungsabgabe stehen zur Verfügung ab {{$a}}",
+ "allowsubmissionsfromdate": "Abgabebeginn",
+ "allowsubmissionsfromdatesummary": "Abgabe möglich ab {{$a}}",
+ "applytoteam": "Bewertungen und Feedback der gesamten Gruppe zuweisen.",
+ "assignmentisdue": "Das Abgabeende ist vorbei",
+ "attemptnumber": "Nummer des Versuchs",
+ "attemptreopenmethod": "Versuche erneut bearbeitbar",
+ "attemptreopenmethod_manual": "Manuell",
+ "attemptreopenmethod_untilpass": "Automatisch bis zum Bestehen",
+ "attemptsettings": "Einstellungen für Versuche",
+ "cannoteditduetostatementsubmission": "Sie können in der App keine Abgabe hinzufügen oder bearbeiten, weil kein Abgabestatement von der Website abgerufen werden konnte.",
+ "cannotgradefromapp": "Manche Bewertungsmethoden werden von der App bisher nicht unterstützt und können nicht verändert werden.",
+ "cannotsubmitduetostatementsubmission": "Sie können in der App keine Abgabe machen, weil von der Website kein Abgabestatement abgerufen werden konnte.",
+ "confirmsubmission": "Wenn Sie nun Ihre Lösung zur Bewertung einreichen, können Sie keine Änderungen mehr vornehmen. Sind Sie sich sicher?",
+ "currentattempt": "Dies ist Versuch {{$a}}",
+ "currentattemptof": "Versuch {{$a.attemptnumber}} (mögliche Versuche {{$a.maxattempts}})",
+ "currentgrade": "Aktuelle Bewertung",
+ "cutoffdate": "Letzte Abgabemöglichkeit",
+ "defaultteam": "Standard-Gruppe",
+ "duedate": "Fälligkeitsdatum",
+ "duedateno": "Kein Fälligkeitsdatum",
+ "duedatereached": "Das Fälligkeitsdatum für diese Aufgabe ist vorbei.",
+ "editingstatus": "Bearbeitungsstatus",
+ "editsubmission": "Lösung bearbeiten",
+ "erroreditpluginsnotsupported": "Sie können in der App keine Abgabe hinzufügen oder bearbeiten, weil manche Plugins bisher keine Bearbeitung erlauben:",
+ "errorshowinginformation": "Die Abgabeinformationen können nicht angezeigt werden.",
+ "extensionduedate": "Verlängerung des Fälligkeitsdatums",
+ "feedbacknotsupported": "Dieses Feedback wird von der App nicht unterstützt, so dass Informationen fehlen könnten.",
+ "grade": "Relative Bewertung",
+ "graded": "Bewertet",
+ "gradedby": "Bewertet von",
+ "gradedon": "Bewertet am",
+ "gradenotsynced": "Bewertung nicht synchronisiert",
+ "gradeoutof": "Bewertung (max. {{$a}})",
+ "gradingstatus": "Bewertungsstatus",
+ "groupsubmissionsettings": "Einstellungen für Gruppeneinreichungen",
+ "hiddenuser": "Teilnehmer/in",
+ "latesubmissions": "Verspätete Abgaben",
+ "latesubmissionsaccepted": "Erlaubt bis {{$a}}",
+ "markingworkflowstate": "Status des Bewertungsworkflows",
+ "markingworkflowstateinmarking": "In Bewertung",
+ "markingworkflowstateinreview": "Wird überprüft",
+ "markingworkflowstatenotmarked": "Unbewertet",
+ "markingworkflowstatereadyforrelease": "Fertig zur Freigabe",
+ "markingworkflowstatereadyforreview": "Bewertung abgeschlossen",
+ "markingworkflowstatereleased": "Freigegeben",
+ "multipleteams": "Mitglied in mehreren Gruppen",
+ "noattempt": "Kein Versuch",
+ "nomoresubmissionsaccepted": "Weitere Abgaben sind nur zugelassen, wenn der Abgabezeitraum verlängert wurde.",
+ "noonlinesubmissions": "Diese Aufgabe benötigt keine Online-Abgabe",
+ "nosubmission": "Für diese Aufgabe wurde nichts abgegeben",
+ "notallparticipantsareshown": "Teilnehmer/innen ohne Abgaben werden nicht angezeigt.",
+ "noteam": "Nicht Mitglied einer Gruppe",
+ "notgraded": "Nicht bewertet",
+ "numberofdraftsubmissions": "Entwürfe",
+ "numberofparticipants": "Teilnehmer/innen",
+ "numberofsubmissionsneedgrading": "Bewertung erwartet",
+ "numberofsubmittedassignments": "Abgegeben",
+ "numberofteams": "Gruppen",
+ "numwords": "{{$a}} Wörter",
+ "outof": "{{$a.current}} von {{$a.total}}",
+ "overdue": "Abgabeende überschritten seit: {{$a}}",
+ "savechanges": "Änderungen sichern",
+ "submission": "Abgabe",
+ "submissioneditable": "Teilnehmer/innen können eingereichte Lösung bearbeiten",
+ "submissionnoteditable": "Teilnehmer/innen können eingereichte Lösung nicht bearbeiten",
+ "submissionnotsupported": "Diese Abgabe wird von der App nicht unterstützt, so dass Informationen fehlen könnten.",
+ "submissionslocked": "Bei dieser Aufgabe können derzeit keine Lösungen abgeben werden.",
+ "submissionstatus": "Abgabestatus",
+ "submissionstatus_": "Keine Abgabe",
+ "submissionstatus_draft": "Entwurf (nicht abgegeben)",
+ "submissionstatus_marked": "Bewertet",
+ "submissionstatus_new": "Keine Abgabe",
+ "submissionstatus_reopened": "Erneut geöffnet",
+ "submissionstatus_submitted": "Zur Bewertung abgegeben",
+ "submissionstatusheading": "Abgabestatus",
+ "submissionteam": "Gruppe",
+ "submitassignment": "Aufgabe abgeben",
+ "submitassignment_help": "Sobald diese Aufgabe abgegeben wird, sind keine weiteren Änderungen mehr möglich",
+ "submittedearly": "Aufgabe wurde {{$a}} vor dem Abgabeende abgegeben",
+ "submittedlate": "Aufgabe wurde {{$a}} verspätet abgegeben",
+ "timemodified": "Zuletzt geändert",
+ "timeremaining": "Verbleibende Zeit",
+ "ungroupedusers": "Die Option 'Gruppe notwendig, um etwas abgeben zu können' ist aktiviert. Es gibt Personen ohne Gruppe oder Personen mit mehreren Gruppen, die deshalb nichts abgeben können.",
+ "unlimitedattempts": "Unbegrenzt",
+ "userswhoneedtosubmit": "Nutzer/innen, die noch nicht abgegeben haben: {{$a}}",
+ "userwithid": "Nutzer/in mit ID {{id}}",
+ "viewsubmission": "Abgabe anzeigen",
+ "warningsubmissiongrademodified": "Die Abgabebewertung wurde auf der Website geändert.",
+ "warningsubmissionmodified": "Die Abgabe wurde auf der Website geändert."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/el.json b/src/addon/mod/assign/lang/el.json
new file mode 100755
index 000000000..094fe4898
--- /dev/null
+++ b/src/addon/mod/assign/lang/el.json
@@ -0,0 +1,73 @@
+{
+ "acceptsubmissionstatement": "Παρακαλώ δεχθείτε τη δήλωση υποβολής.",
+ "addattempt": "Επέτρεψε και άλλη προσπάθεια",
+ "addnewattempt": "Πρόσθεσε μία νέα προσπάθεια",
+ "addnewattemptfromprevious": "Πρόσθεσε μία νέα προσπάθεια βασισμένη σε προηγούμενη υποβολή",
+ "addsubmission": "Υποβολή",
+ "allowsubmissionsfromdate": "Επέτρεψε υποβολές από",
+ "assignmentisdue": "Η προθεσμία έχει λήξει",
+ "attemptnumber": "Αριθμός προσπάθειας",
+ "attemptreopenmethod": "Να ξανανοίξουν οι προσπάθειες",
+ "attemptreopenmethod_manual": "Χειροκίνητα",
+ "attemptsettings": "Ρυθμίσεις προσπάθειας",
+ "cannoteditduetostatementsubmission": "Δεν μπορείτε να προσθέσετε ή να επεξεργαστείτε μια υποβολή στην εφαρμογή, γιατί δεν κατέστη δυνατό να ανακτηθεί η δήλωση υποβολής από το site.",
+ "cannotgradefromapp": "Μερικές μέθοδοι ταξινόμησης δεν υποστηρίζονται ακόμα από την εφαρμογή και δεν μπορεί να τροποποιηθεί.",
+ "cannotsubmitduetostatementsubmission": "Δεν μπορείτε να υποβάλετε για βαθμολόγηση στην εφαρμογή, γιατί δεν κατέστη δυνατό να ανακτηθεί η δήλωση υποβολής από το site.",
+ "confirmsubmission": "Σίγουρα θέλετε να υποβάλετε την εργασία σας προς βαθμολόγηση; Δε θα μπορείτε να κάνετε περαιτέρω αλλαγές.",
+ "currentattempt": "Αυτή είναι η {{$a}} προσπάθεια.",
+ "currentattemptof": "Αυτή είναι η {{$a.attemptnumber}} προσπάθεια ( {{$a.maxattempts}} προσπάθειες επιτρέπονται).",
+ "currentgrade": "Τωρινός βαθμός στο βαθμολόγιο",
+ "defaultteam": "Προεπιλεγμένη ομάδα",
+ "duedate": "Καταληκτική ημερομηνία",
+ "duedateno": "Χωρίς καταληκτική ημερομηνία",
+ "editingstatus": "Επεξεργασία κατάστασης",
+ "editsubmission": "Τροποποίηση της υποβολής μου",
+ "erroreditpluginsnotsupported": "Δεν μπορείτε να προσθέσετε ή να επεξεργαστείτε μια υποβολή στην εφαρμογή επειδή ορισμένα plugins δεν υποστηρίζονται για επεξεργασία:",
+ "errorshowinginformation": "Δεν μπορούν να εμφανιστούν οι πληροφορίες υποβολής",
+ "feedbacknotsupported": "Αυτό το σχόλιο δεν υποστηρίζεται από την εφαρμογή και μπορεί να μην περιέχει όλες τις πληροφορίες",
+ "grade": "Βαθμός",
+ "graded": "Βαθμολογήθηκε",
+ "gradedby": "Βαθμολογήθηκε από",
+ "gradedon": "Βαθμολογήθηκε στις",
+ "gradenotsynced": "Η βαθμολογία δεν συγχρονίστηκε",
+ "gradingstatus": "Κατάσταση Βαθμολόγησης",
+ "groupsubmissionsettings": "Ρυθμίσεις ομαδικής υποβολής",
+ "hiddenuser": "Συμμέτοχος",
+ "latesubmissions": "Εκπρόθεσμες υποβολές",
+ "noattempt": "Καμία προσπάθεια",
+ "nomoresubmissionsaccepted": "Επιτρέπονται μόνο στους συμμετέχοντες που τους έχει χορηγηθεί παράταση",
+ "noonlinesubmissions": "Δεν απαιτείται κάποια υποβολή",
+ "nosubmission": "Δεν έχει υποβληθεί τίποτα για την εργασία αυτή",
+ "notallparticipantsareshown": "Συμμετέχοντες χωρίς υποβολές δεν προβάλλονται",
+ "notgraded": "Χωρίς βαθμό",
+ "numberofdraftsubmissions": "Προσχέδια",
+ "numberofparticipants": "Συμμετέχοντες",
+ "numberofsubmissionsneedgrading": "Απαιτείται βαθμολόγηση",
+ "numberofsubmittedassignments": "Υποβλήθηκε",
+ "numberofteams": "Ομάδες",
+ "numwords": "{{$a}} λέξεις",
+ "outof": "Από τα {{$a}}",
+ "overdue": "Η εργασία είναι εκπρόθεσμη για: {{$a}}",
+ "savechanges": "Αποθήκευση αλλαγών",
+ "submission": "Υποβολή",
+ "submissionnoteditable": "Δε μπορεί να γίνει επεξεργασία της υποβολής",
+ "submissionnotsupported": "Η υποβολή αυτή δεν υποστηρίζεται από την εφαρμογή και δεν μπορεί να περιέχει όλα τα στοιχεία που",
+ "submissionstatus": "Κατάσταση Υποβολής",
+ "submissionstatus_": "Καμία υποβολή",
+ "submissionstatus_draft": "Πρόχειρο (δεν υποβλήθηκε)",
+ "submissionstatus_marked": "Βαθμολογήθηκε",
+ "submissionstatus_new": "Καμία υποβολή",
+ "submissionstatus_submitted": "Υποβλήθηκε για βαθμολόγηση",
+ "submissionstatusheading": "Κατάσταση Υποβολής",
+ "submissionteam": "Ομάδα",
+ "submitassignment": "Υποβολή εργασίας",
+ "submitassignment_help": "Από τη στιγμή που θα υποβληθεί η εργασία δεν θα μπορείτε να κάνετε οποιαδήποτε αλλαγή.",
+ "submittedearly": "Η εργασία υποβλήθηκε νωρίτερα κατά {{$a}}",
+ "submittedlate": "Η εργασία υποβλήθηκε {{$a}} αργότερα",
+ "timemodified": "Τελευταία Τροποποίηση",
+ "timeremaining": "Υπολειπόμενος χρόνος",
+ "userwithid": "Ο χρήστης με id {{id}}",
+ "viewsubmission": "Προβολή υποβολής",
+ "warningsubmissiongrademodified": "Ο βαθμός υποβολής τροποποιήθηκε στο site.",
+ "warningsubmissionmodified": "Η υποβολή του χρήστη τροποποιήθηκε στο site."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/es-mx.json b/src/addon/mod/assign/lang/es-mx.json
new file mode 100755
index 000000000..e6751ad40
--- /dev/null
+++ b/src/addon/mod/assign/lang/es-mx.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Por favor acepte la declaratoria de envío.",
+ "addattempt": "Permitir otro intento",
+ "addnewattempt": "Añadir un nuevo intento",
+ "addnewattemptfromprevious": "Añadir un nuevo intento basado en un envío anterior",
+ "addsubmission": "Añadir envío",
+ "allowsubmissionsanddescriptionfromdatesummary": "Los detalles de la tarea y el formato de entrega estarán disponibles en {{$a}}",
+ "allowsubmissionsfromdate": "Permitir envíos desde",
+ "allowsubmissionsfromdatesummary": "Esta tarea aceptará entregas de {{$a}}",
+ "applytoteam": "Aplicar calificaciones y retroalimentación a todo el equipo",
+ "assignmentisdue": "La tarea ha vencido",
+ "attemptnumber": "Número de intento",
+ "attemptreopenmethod": "Intentos reabiertos",
+ "attemptreopenmethod_manual": "Manualmente",
+ "attemptreopenmethod_untilpass": "Automáticamente hasta pasar",
+ "attemptsettings": "Configuraciones del intento",
+ "cannoteditduetostatementsubmission": "Usted no puede añadir o editar un envío en la App porque no pudimos recuperar la declaratoria de envío del sitio.",
+ "cannotgradefromapp": "Algunos métodos para calificar aun no están soportados por la App y no pueden ser modificados.",
+ "cannotsubmitduetostatementsubmission": "Usted no puede hacer un envío en la App porque no pudimos recuperar la declaratoria de envío del sitio.",
+ "confirmsubmission": "¿Está Usted seguro de querer enviar su trabajo para que sea calificado? Usted ya no le podrá hacer más cambios",
+ "currentattempt": "Éste es el intento {{$a}}.",
+ "currentattemptof": "Éste es el intento {{$a.attemptnumber}} ( {{$a.maxattempts}} intentos permitidos ).",
+ "currentgrade": "Calificación actual en el libro",
+ "cutoffdate": "Fecha de corte",
+ "defaultteam": "Grupo por defecto",
+ "duedate": "Fecha de entrega",
+ "duedateno": "No hay fecha de entrega",
+ "duedatereached": "La fecha de vencimiento de esta tarea ya ha pasado",
+ "editingstatus": "Estatus de edición",
+ "editsubmission": "Editar envío",
+ "erroreditpluginsnotsupported": "Usted no puede añadir o editar un envío en la App porque algunos plugins aun no están soportados para editar.",
+ "errorshowinginformation": "No se puede mostrar la información del envío.",
+ "extensionduedate": "Fecha de entrega extendida",
+ "feedbacknotsupported": "La retroalimentación no está soportada por la App y es posible que no contenga toda la información.",
+ "grade": "Calificación",
+ "graded": "Calificado",
+ "gradedby": "Calificado por",
+ "gradedon": "Calificado en",
+ "gradenotsynced": "Calificación no sincronizada",
+ "gradeoutof": "Calificación sobre {{$a}}",
+ "gradingstatus": "Estatus de calificación",
+ "groupsubmissionsettings": "Configuraciones de envío de grupo",
+ "hiddenuser": "Participante",
+ "latesubmissions": "Envíos retrasados",
+ "latesubmissionsaccepted": "Permitido hasta {{$a}}",
+ "markingworkflowstate": "Estado del flujograma calificador",
+ "markingworkflowstateinmarking": "En calificación",
+ "markingworkflowstateinreview": "En revisión",
+ "markingworkflowstatenotmarked": "No calificado",
+ "markingworkflowstatereadyforrelease": "Listo para liberar",
+ "markingworkflowstatereadyforreview": "Calificación completada",
+ "markingworkflowstatereleased": "Liberada",
+ "multipleteams": "Miembro de más de un grupo",
+ "noattempt": "Sin intento",
+ "nomoresubmissionsaccepted": "Solamente permitido para participantes que hayan recibido una extensión",
+ "noonlinesubmissions": "Esta tarea no requiere que usted envíe nada de forma online",
+ "nosubmission": "No se ha enviado nada en esta tarea",
+ "notallparticipantsareshown": "Los participantes que no hayan hecho un envío no son mostrados.",
+ "noteam": "No es miembro de ningún grupo",
+ "notgraded": "No calificado",
+ "numberofdraftsubmissions": "Borradores",
+ "numberofparticipants": "Participantes",
+ "numberofsubmissionsneedgrading": "Necesita calificarse",
+ "numberofsubmittedassignments": "Enviados",
+ "numberofteams": "Grupos",
+ "numwords": "{{$a}} palabras",
+ "outof": "{{$a.current}} de un total de {{$a.total}}",
+ "overdue": "La Tarea está retrasada por: {{$a}}",
+ "savechanges": "Guardar cambios",
+ "submission": "Entrega",
+ "submissioneditable": "Los estudiantes pueden editar este envío",
+ "submissionnoteditable": "Los estudiantes no pueden editar este envío",
+ "submissionnotsupported": "Este envío no es soportado por la App y es posible que no contenga toda la información",
+ "submissionslocked": "Esta tarea no acepta entregas",
+ "submissionstatus": "Estatus de la entrega",
+ "submissionstatus_": "Sin entrega",
+ "submissionstatus_draft": "Borrador (no enviado)",
+ "submissionstatus_marked": "Calificado",
+ "submissionstatus_new": "Sin envío",
+ "submissionstatus_reopened": "Reabierto",
+ "submissionstatus_submitted": "Enviado para calificar",
+ "submissionstatusheading": "Estatus de la entrega",
+ "submissionteam": "Grupo",
+ "submitassignment": "Enviar tarea",
+ "submitassignment_help": "Una vez que esta tarea se haya enviado, usted no podrá hacerle más cambios",
+ "submittedearly": "La tarea fue enviada {{$a}} antes",
+ "submittedlate": "La tarea fue enviada {{$a}} después",
+ "timemodified": "Última modificación",
+ "timeremaining": "Tiempo restante",
+ "ungroupedusers": "La configuración de 'Requerir grupo para hacer envío' está activada y algunos usuarios, o no son miembros de ningún grupo, o son miembros de más de un grupo, por lo que no pueden hacer envíos.",
+ "unlimitedattempts": "Ilimitados",
+ "userswhoneedtosubmit": "Usuarios que necesitan enviar: {{$a}}",
+ "userwithid": "Usuario con ID {{id}}",
+ "viewsubmission": "Ver entrega",
+ "warningsubmissiongrademodified": "La calificación por el envío fue modificada en el sitio.",
+ "warningsubmissionmodified": "El envío del usuario fue modificado en el sitio."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/es.json b/src/addon/mod/assign/lang/es.json
new file mode 100755
index 000000000..98ed39de0
--- /dev/null
+++ b/src/addon/mod/assign/lang/es.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Por favor acepte las condiciones de envío.",
+ "addattempt": "Permitir otro intento",
+ "addnewattempt": "Añadir una nueva entrega",
+ "addnewattemptfromprevious": "Añadir un nuevo intento basado en el envío anterior",
+ "addsubmission": "Agregar entrega",
+ "allowsubmissionsanddescriptionfromdatesummary": "Los detalles de la tarea y el formulario de entregas estarán disponibles en {{$a}}",
+ "allowsubmissionsfromdate": "Permitir entregas desde",
+ "allowsubmissionsfromdatesummary": "Esta tarea aceptará entregas desde el {{$a}}",
+ "applytoteam": "Aplicar las mismas calificaciones y comentarios al grupo completo",
+ "assignmentisdue": "La tarea ha vencido",
+ "attemptnumber": "Número del intento",
+ "attemptreopenmethod": "Permitir reapertura",
+ "attemptreopenmethod_manual": "Manual",
+ "attemptreopenmethod_untilpass": "Automática hasta aprobar",
+ "attemptsettings": "Configuración de intentos",
+ "cannoteditduetostatementsubmission": "No puede añadir o editar un envío en la app porque no pudimos recuperar las condiciones de envío del sitio.",
+ "cannotgradefromapp": "Algunos métodos de calificación no son compatibles aún con la aplicación y no se pueden modificar.",
+ "cannotsubmitduetostatementsubmission": "No puede enviar para calificar en la app porque no pudimos recuperar las condiciones de envío del sitio.",
+ "confirmsubmission": "¿Está seguro que quiere enviar su trabajo para que sea evaluado? Una vez enviado ya no podrá realizar modificaciones.",
+ "currentattempt": "Este es el intento {{$a}}.",
+ "currentattemptof": "Este es el intento {{$a.attemptnumber}} ( {{$a.maxattempts}} intentos permitidos ).",
+ "currentgrade": "Calificación actual en el libro de calificaciones",
+ "cutoffdate": "Fecha límite",
+ "defaultteam": "Grupo predeterminado",
+ "duedate": "Fecha de entrega",
+ "duedateno": "No hay fecha de entrega",
+ "duedatereached": "La fecha de vencimiento de esta tarea ya ha pasado",
+ "editingstatus": "Edición de estado",
+ "editsubmission": "Editar entrega",
+ "erroreditpluginsnotsupported": "No puede añadir o editar un envío en la app porque algunos plugins no tienen soporte para editar:",
+ "errorshowinginformation": "No se puede mostrar la información del envío",
+ "extensionduedate": "Ampliar plazo",
+ "feedbacknotsupported": "La retroalimentación no está soportada por la app y podría no mostrar la información completa",
+ "grade": "Calificación",
+ "graded": "Calificado",
+ "gradedby": "Calificado por",
+ "gradedon": "Calificado sobre",
+ "gradenotsynced": "Calificación no sincronizada",
+ "gradeoutof": "Calificación sobre {{$a}}",
+ "gradingstatus": "Estado de la calificación",
+ "groupsubmissionsettings": "Configuración de entrega por grupo",
+ "hiddenuser": "Participante",
+ "latesubmissions": "Entrega fuera de plazo",
+ "latesubmissionsaccepted": "Permitdo hasta {{$a}}",
+ "markingworkflowstate": "Estado del workflow de marcas",
+ "markingworkflowstateinmarking": "Marcando",
+ "markingworkflowstateinreview": "En revisión",
+ "markingworkflowstatenotmarked": "No marcada",
+ "markingworkflowstatereadyforrelease": "Lista para entregar",
+ "markingworkflowstatereadyforreview": "Marcado completo",
+ "markingworkflowstatereleased": "Entregada",
+ "multipleteams": "Miembro de más de un grupo.",
+ "noattempt": "No entregado",
+ "nomoresubmissionsaccepted": "No se aceptan más entregas",
+ "noonlinesubmissions": "Esta tarea no requiere que usted envíe nada de forma online",
+ "nosubmission": "No se ha enviado nada en esta tarea",
+ "notallparticipantsareshown": "Los participantes sin envíos no se muestran",
+ "noteam": "No perteneces a ningún grupo.",
+ "notgraded": "Sin calificar",
+ "numberofdraftsubmissions": "Borradores",
+ "numberofparticipants": "Participantes",
+ "numberofsubmissionsneedgrading": "Pendientes por calificar",
+ "numberofsubmittedassignments": "Enviados",
+ "numberofteams": "Grupos",
+ "numwords": "{{$a}} palabras",
+ "outof": "{{$a.current}} de {{$a.total}}",
+ "overdue": "La Tarea está retrasada por: {{$a}}",
+ "savechanges": "Guardar cambios",
+ "submission": "Entrega",
+ "submissioneditable": "El estudiante puede editar esta entrega",
+ "submissionnoteditable": "El estudiante no puede editar esta entrega",
+ "submissionnotsupported": "Este envío no está soportada por la app y es posible que no muestre la información completa",
+ "submissionslocked": "Esta tarea no acepta entregas",
+ "submissionstatus": "Estado de la entrega",
+ "submissionstatus_": "Sin entrega",
+ "submissionstatus_draft": "Borrador (no enviado)",
+ "submissionstatus_marked": "Calificado",
+ "submissionstatus_new": "No entregado",
+ "submissionstatus_reopened": "Reabierto",
+ "submissionstatus_submitted": "Enviado para calificar",
+ "submissionstatusheading": "Estado de la entrega",
+ "submissionteam": "Grupo",
+ "submitassignment": "Enviar tarea",
+ "submitassignment_help": "Una vez que esta tarea se haya enviado usted no podrá hacer más cambios.",
+ "submittedearly": "La tarea fue enviada {{$a}} antes",
+ "submittedlate": "La tarea fue enviada {{$a}} después",
+ "timemodified": "Última modificación",
+ "timeremaining": "Tiempo restante",
+ "ungroupedusers": "Si se activa la configuración \"se requiere formar parte de un grupo para realizar la entrega\" se evitará que los usuarios no asignados a los grupos realicen entregas.",
+ "unlimitedattempts": "Ilimitado",
+ "userswhoneedtosubmit": "Componentes del equipo pendientes de entrega: {{$a}}",
+ "userwithid": "Usuario con ID {{id}}",
+ "viewsubmission": "Ver entrega",
+ "warningsubmissiongrademodified": "La calificación del envío se modificó en el sitio.",
+ "warningsubmissionmodified": "El envío del usuario fue modificado en el sitio."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/eu.json b/src/addon/mod/assign/lang/eu.json
new file mode 100755
index 000000000..fb31680bd
--- /dev/null
+++ b/src/addon/mod/assign/lang/eu.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Mesedez onartu bidalketa-sententzia.",
+ "addattempt": "Baimendu beste saiakera bat",
+ "addnewattempt": "Gehitu beste saiakera bat",
+ "addnewattemptfromprevious": "Gehitu aurreko bidalketan oinarritutako saiakera bat",
+ "addsubmission": "Gehitu bidalketa",
+ "allowsubmissionsanddescriptionfromdatesummary": "Zereginaren nondik norakoak eta bidalketarako formularioa eskuragarri izango dituzu {{$a}}-tik aurrera",
+ "allowsubmissionsfromdate": "Baimendu bidalketak hemendik:",
+ "allowsubmissionsfromdatesummary": "Zeregin honetan bidalketak onartuko dira {{$a}}-tik aurrera",
+ "applytoteam": "Kalifikazioak eta feedbackak talde osoari aplikatu",
+ "assignmentisdue": "Epea bukatu da",
+ "attemptnumber": "Saiakera-kopurua",
+ "attemptreopenmethod": "Saiakerak berriro ireki dira",
+ "attemptreopenmethod_manual": "Eskuz",
+ "attemptreopenmethod_untilpass": "Automatikoki gainditu arte",
+ "attemptsettings": "Saiakeren ezarpenak",
+ "cannoteditduetostatementsubmission": "Ezin duzu bidalketa app-an gehitu edo editatu ezin izan dugulako guneko bidalketa-sententzia berreskuratu.",
+ "cannotgradefromapp": "Kalifikazio-metodo batzuk oraindik ez daude app-an onartuta eta ezin dira aldatu .",
+ "cannotsubmitduetostatementsubmission": "Ezin duzu app-an bidalketa bat egin ezin izan dugulako guneko bidalketa-sententzia berreskuratu.",
+ "confirmsubmission": "Ziur al zaude zure lana bidali nahi duzula kalifikatzeko? Ezin izango duzu aldaketarik egin.",
+ "currentattempt": "Hau da {{$a}} saiakera.",
+ "currentattemptof": "Hau {{$a.attemptnumber}}. saiakera da ( {{$a.maxattempts}} saiakera onartzen dira ).",
+ "currentgrade": "Oraingo kalifikazioa kalifikazio-liburuan",
+ "cutoffdate": "Itxiera-data",
+ "defaultteam": "Berezko taldea",
+ "duedate": "Entregatze-data",
+ "duedateno": "Entregatze-datarik ez",
+ "duedatereached": "Zeregin hau bidaltzeko epea amaitu da",
+ "editingstatus": "Editatzen egoera",
+ "editsubmission": "Editatu bidalketa",
+ "erroreditpluginsnotsupported": "Ezin duzu bidalketa app-an gehitu edo editatu gehigarri batzuk ez dutelako editatatzea onartzen.",
+ "errorshowinginformation": "Ezin da bidalketaren informazioa erakutsi.",
+ "extensionduedate": "Luzapenaren entregatze-data",
+ "feedbacknotsupported": "Feedback hau ez da app-an onartzen eta baliteke informazio guztia jasota ez egotea.",
+ "grade": "Nota",
+ "graded": "Kalifikatua",
+ "gradedby": "Nork kalifikatua",
+ "gradedon": "Noiz kalifikatua",
+ "gradenotsynced": "Kalifikazioa ez da sinkronizatu",
+ "gradeoutof": "Kalifikazioa ({{$a}}-(e)ra arte)",
+ "gradingstatus": "Kalifikazioaren egoera",
+ "groupsubmissionsettings": "Taldeko bidalketen ezarpenak",
+ "hiddenuser": "Partaidea",
+ "latesubmissions": "Epez kanpoko bidalketak",
+ "latesubmissionsaccepted": "Noiz arte baimendua: {{$a}}",
+ "markingworkflowstate": "Kalifikazio lan-fluxuaren egoera",
+ "markingworkflowstateinmarking": "Kalifikatzen",
+ "markingworkflowstateinreview": "Berrikusten",
+ "markingworkflowstatenotmarked": "Kalifikatu gabe",
+ "markingworkflowstatereadyforrelease": "Ikusgai jartzeko prest",
+ "markingworkflowstatereadyforreview": "Kalifikazioa osatua",
+ "markingworkflowstatereleased": "Ikusgai",
+ "multipleteams": "Talde bateko baino gehiagoko partaidea",
+ "noattempt": "Saiakerarik ez",
+ "nomoresubmissionsaccepted": "Soilik epearen luzapena jaso duten kideei baimenduta.",
+ "noonlinesubmissions": "Zeregin honek ez du ezer on-line aurkezteko eskatzen",
+ "nosubmission": "Ez dago bildalketarik zeregin honetan",
+ "notallparticipantsareshown": "Bidalketarik egin ez duten ikasleak ez dira erakusten.",
+ "noteam": "Ez zara inongo taldetako kide",
+ "notgraded": "Kalifikatu gabea",
+ "numberofdraftsubmissions": "Zirriborroak",
+ "numberofparticipants": "Partaideak",
+ "numberofsubmissionsneedgrading": "Kalifikatu beharrekoak",
+ "numberofsubmittedassignments": "Bidalita",
+ "numberofteams": "Taldeak",
+ "numwords": "{{$a}} hitz",
+ "outof": "{{$a.current}}.a {{$a.total}}-tik",
+ "overdue": "Zeregina bidaltzeko epea amaitu da orain dela {{$a}}",
+ "savechanges": "Gorde aldaketak",
+ "submission": "Bidalketa",
+ "submissioneditable": "Ikasleak bere bidalketa edita dezake",
+ "submissionnoteditable": "Ikasleak ezin du editatu bidalketa hau",
+ "submissionnotsupported": "Bidalketa hau ez da app-an onartzen eta baliteke informazio guztia jasota ez egotea.",
+ "submissionslocked": "Zeregin honek ez du bidalketarik onartzen",
+ "submissionstatus": "Bidalketaren egoera",
+ "submissionstatus_": "Ez dago bidalketarik",
+ "submissionstatus_draft": "Zirriborroa (bidali gabea)",
+ "submissionstatus_marked": "Kalifikatua",
+ "submissionstatus_new": "Bidalketarik ez",
+ "submissionstatus_reopened": "Berrirekita",
+ "submissionstatus_submitted": "Kalifikatzeko bidalia",
+ "submissionstatusheading": "Bidalketen egoera",
+ "submissionteam": "Taldea",
+ "submitassignment": "Bidali zeregina",
+ "submitassignment_help": "Behin zeregina bidalita, ezin izango duzu aldaketarik egin.",
+ "submittedearly": "Bidalketagaraiz bidali zen: {{$a}}",
+ "submittedlate": "Zeregina berandu bidali zen: {{$a}}",
+ "timemodified": "Azken aldaketa",
+ "timeremaining": "Geratzen den denbora",
+ "ungroupedusers": "'Taldeko kidea izatea behartu' ezarpena gaituta dago eta erabiltzaile batzuk ez dira inongo taldeko kide edo talde bat baino gehiagoko kideak dira, eta honek erabiltzaile horiek bidalketak egitea ekidingo du.",
+ "unlimitedattempts": "Mugarik gabea",
+ "userswhoneedtosubmit": "Bidalketa egin behar duten erabiltzaileak: {{$a}}",
+ "userwithid": "{{id}} IDa duen erabiltzailea",
+ "viewsubmission": "Ikusi bidalketa",
+ "warningsubmissiongrademodified": "Bidalketaren kalifikazioa gunean aldatua izan da.",
+ "warningsubmissionmodified": "Erabiltzailearen bidalketa gunean aldatua izan da."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/fa.json b/src/addon/mod/assign/lang/fa.json
new file mode 100755
index 000000000..42272851e
--- /dev/null
+++ b/src/addon/mod/assign/lang/fa.json
@@ -0,0 +1,74 @@
+{
+ "addattempt": "اجازهدادن یک بار تلاش دیگر",
+ "addnewattempt": "اضافهکردن یک تلاش جدید",
+ "addnewattemptfromprevious": "اضافهکردن یک تلاش جدید بر اساس ارسال قبلی",
+ "addsubmission": "تحویل تکلیف",
+ "allowsubmissionsfromdate": "مجاز بودن تحویل از",
+ "applytoteam": "اعمال نمره و بازخورد به کل گروه",
+ "assignmentisdue": "موعد تحویل گذشته است",
+ "attemptnumber": "تلاش",
+ "attemptreopenmethod": "مجاز شدن تلاش مجدد",
+ "attemptreopenmethod_manual": "دستی",
+ "attemptreopenmethod_untilpass": "بهطور خودکار تا قبول شدن",
+ "confirmsubmission": "آیا مطمئن هستید که میخواهید تکلیفتان را برای تصحیح تحویل دهید؟ پس از تحویل قادر به ایجاد تغییر در تکلیف نخواهید بود.",
+ "currentattempt": "این تلاش {{$a}} ام است.",
+ "currentattemptof": "این تلاش {{$a.attemptnumber}} ام است (در کل {{$a.maxattempts}} تلاش مجاز است).",
+ "currentgrade": "نمرهٔ فعلی در دفتر نمره",
+ "cutoffdate": "تاریخ عدم پذیرش",
+ "defaultteam": "گروه پیشفرض",
+ "duedate": "مهلت تحویل",
+ "duedateno": "بدون موعد",
+ "editingstatus": "وضعیت ویرایش",
+ "editsubmission": "ویرایش پاسخ",
+ "extensionduedate": "مهلت تمدید شده",
+ "grade": "نمره",
+ "graded": "نمره داده شده است",
+ "gradedby": "نمره دهنده",
+ "gradedon": "تاریخ ثبت نمره",
+ "gradeoutof": "نمره از {{$a}}",
+ "gradingstatus": "وضعیت تصحیح",
+ "groupsubmissionsettings": "تنظیمات تحویل گروهی",
+ "hiddenuser": "شاگرد شماره",
+ "latesubmissions": "تحویل با تاخیر",
+ "markingworkflowstate": "وضعیت گردشکار تصحیح",
+ "markingworkflowstateinmarking": "درحال تصحیح",
+ "markingworkflowstateinreview": "درحال بازبینی",
+ "markingworkflowstatenotmarked": "نمره داده نشده",
+ "markingworkflowstatereadyforrelease": "آمادهٔ انتشار",
+ "markingworkflowstatereadyforreview": "نمرهدهی کامل شده",
+ "markingworkflowstatereleased": "منتشرشده",
+ "noattempt": "هیچ چیزی تحویل داده نشده است",
+ "nosubmission": "هیچ چیزی برای این تکلیف تحویل داده نشده است",
+ "notgraded": "نمره داده نشده است",
+ "numberofdraftsubmissions": "پیشنویسها",
+ "numberofparticipants": "شرکت کنندگان",
+ "numberofsubmissionsneedgrading": "نیازمند نمرهدهی",
+ "numberofsubmittedassignments": "تحویل داده شده",
+ "numberofteams": "تعداد گروهها",
+ "numwords": "{{$a}} کلمه",
+ "outof": "{{$a.current}} از {{$a.total}}",
+ "overdue": "از موعد تحویل تکلیف {{$a}} گذشته است",
+ "savechanges": "ذخیره تغییرات",
+ "submission": "پاسخ ارسالی",
+ "submissioneditable": "شاگرد میتواند این تکلیف تحویل داده شده را ویرایش کند",
+ "submissionnoteditable": "شاگرد نمیتواند این تکلیف را ویرایش کند",
+ "submissionslocked": "این تکلیف، تحویل جدیدی را نمیپذیرد",
+ "submissionstatus": "وضعیت تحویل",
+ "submissionstatus_": "تحویل نداده است",
+ "submissionstatus_draft": "پیشنویس (تحویل داده نشده است)",
+ "submissionstatus_marked": "تصحیح شده",
+ "submissionstatus_reopened": "دوباره بازشده",
+ "submissionstatus_submitted": "برای تصحیح تحویل داده شده است",
+ "submissionstatusheading": "وضعیت تحویل",
+ "submissionteam": "گروه",
+ "submitassignment": "تحویل تکلیف",
+ "submitassignment_help": "بعد از اینکه این تکلیف تحویل داده شد دیگر قادر به تغییر دادن آن نخواهید بود",
+ "submittedearly": "تکلیف {{$a}} زود تحویل داده شد",
+ "submittedlate": "تکلیف {{$a}} با تأخیر تحویل داده شد",
+ "timemodified": "آخرین تغییر",
+ "timeremaining": "زمان باقیمانده",
+ "ungroupedusers": "تنظیم «نیازمند گروه برای تحویلدادن» فعال است و بعضی از کاربران یا عضو هیچ گروهی نیستند، یا عضو بیش از یک گروه هستند. در نتیجه نمیتوانند تکلیف را تحویل دهند.",
+ "unlimitedattempts": "نامحدود",
+ "userswhoneedtosubmit": "کاربرانی که باید تحویل دهند: {{$a}}",
+ "viewsubmission": "مشاهدهٔ تحویل"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/fi.json b/src/addon/mod/assign/lang/fi.json
new file mode 100755
index 000000000..4f368f5eb
--- /dev/null
+++ b/src/addon/mod/assign/lang/fi.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Ole hyvä ja hyväksy vakuutus oman työn osuudesta.",
+ "addattempt": "Anna toinen suorituskerta",
+ "addnewattempt": "Anna uusi suorituskerta",
+ "addnewattemptfromprevious": "Lisää uusi suorituskerta, joka perustuu aiempaan palautukseen",
+ "addsubmission": "Lisää palautus",
+ "allowsubmissionsanddescriptionfromdatesummary": "Tehtävän yksityiskohdat ja palautuslomake tulevat näkyville {{$a}}",
+ "allowsubmissionsfromdate": "Palautettavissa alkaen",
+ "allowsubmissionsfromdatesummary": "Tämän tehtävän voi palauttaa aikaisintaan {{$a}}",
+ "applytoteam": "Anna sama arvosana ja palaute koko ryhmälle",
+ "assignmentisdue": "Palautusaika on päättynyt",
+ "attemptnumber": "Suorituskerran numero",
+ "attemptreopenmethod": "Milloin palautukset avataan opiskelijoiden muokattaviksi",
+ "attemptreopenmethod_manual": "Opettaja",
+ "attemptreopenmethod_untilpass": "Automaattisesti kunnes läpäisee",
+ "attemptsettings": "Suorituskertojen asetukset",
+ "cannoteditduetostatementsubmission": "Et voi lisätä tai muokata palautustasi mobiilisovelluksessa, koska järjestelmä ei pystynyt lataamaan vakuutusta oman työn osuudesta.",
+ "cannotgradefromapp": "Kaikkia arviointitapoja ei vielä tueta mobiilisovelluksessa, eikä niitä voi myöskään muokata.",
+ "cannotsubmitduetostatementsubmission": "Et voi lähettää palautustasi arvioitavaksi mobiilisovelluksessa, koska järjestelmä ei pystynyt lataamaan vakuutusta oman työn osuudesta.",
+ "confirmsubmission": "Oletko varma, että haluat palauttaa työsi arvioitavaksi? Sen jälkeen et voi enää tehdä muutoksia.",
+ "currentattempt": "Tämä on suorituskerta {{$a}}",
+ "currentattemptof": "Tämä on suorituskerta {{$a.attemptnumber}} (suorituskertoja sallitaan enintään {{$a.maxattempts}}).",
+ "currentgrade": "Nykyinen arvosana",
+ "cutoffdate": "Ehdoton takaraja palautukselle",
+ "defaultteam": "Oletusryhmä",
+ "duedate": "Palautettava viimeistään",
+ "duedateno": "Ei palautusten päättymisaikaa",
+ "duedatereached": "Tehtävän palautusten päättymisaika on mennyt",
+ "editingstatus": "Muokataan tilaa",
+ "editsubmission": "Muokkaa palautusta",
+ "erroreditpluginsnotsupported": "Et voi lisätä tai muokata palautustasi mobiilisovelluksessa, koska tietyt lisäosat eivät tue muokkausta.",
+ "errorshowinginformation": "Palautteen tietoja ei voida näyttää.",
+ "extensionduedate": "Lisäajan päättymisaika",
+ "feedbacknotsupported": "Palautetta ei tueta mobiilisovelluksessa, eikä se välttämättä sisällä kaikkia tietoja.",
+ "grade": "Arvosana",
+ "graded": "Arvioitu",
+ "gradedby": "Arvioija",
+ "gradedon": "Arviointipäivä",
+ "gradenotsynced": "Arvosanaa ei ole synkronoitu",
+ "gradeoutof": "Arvosana (0 - {{$a}})",
+ "gradingstatus": "Arvioinnin tila",
+ "groupsubmissionsettings": "Ryhmäpalautuksen asetukset",
+ "hiddenuser": "Opiskelija",
+ "latesubmissions": "Myöhässä tulleet palautukset",
+ "latesubmissionsaccepted": "Sallittu {{$a}} asti",
+ "markingworkflowstate": "Arviointiprosessin vaihe",
+ "markingworkflowstateinmarking": "Arvioinnissa",
+ "markingworkflowstateinreview": "Tarkastuskierroksella",
+ "markingworkflowstatenotmarked": "Ei arvioitu",
+ "markingworkflowstatereadyforrelease": "Valmis julkaistavaksi",
+ "markingworkflowstatereadyforreview": "Arviointi tehty",
+ "markingworkflowstatereleased": "Julkaistu",
+ "multipleteams": "Useamman kuin yhden ryhmän jäsen",
+ "noattempt": "Ei suorituskertoja",
+ "nomoresubmissionsaccepted": "Vain opiskelijat, joille on annettu lisäaikaa, voivat enää palauttaa vastauksensa.",
+ "noonlinesubmissions": "Tähän tehtävään ei vastata Moodlessa",
+ "nosubmission": "Tähän tehtävään ei ole vielä vastattu",
+ "notallparticipantsareshown": "Opiskelijoita, joilla ei ole palautuksia, ei näytetä.",
+ "noteam": "Ei yhdenkään ryhmän jäsen",
+ "notgraded": "Ei arvioitu",
+ "numberofdraftsubmissions": "Keskeneräiset",
+ "numberofparticipants": "Opiskelijoita",
+ "numberofsubmissionsneedgrading": "Odottaa arviointia",
+ "numberofsubmittedassignments": "Palautuksia",
+ "numberofteams": "Ryhmät",
+ "numwords": "{{$a}} sanaa",
+ "outof": "{{$a.current}} enimmäismäärästä {{$a.total}}",
+ "overdue": "Tehtävän viimeinen palautusaika oli {{$a}} sitten",
+ "savechanges": "Tallenna muutokset",
+ "submission": "Palautus",
+ "submissioneditable": "Opiskelija saa muokata tätä palautusta",
+ "submissionnoteditable": "Opiskelija ei voi muokata tätä palautusta",
+ "submissionnotsupported": "Tätä palautusta ei tueta mobiilisovelluksessa, eikä se välttämättä sisällä kaikkia tietoja.",
+ "submissionslocked": "Tähän tehtävään ei voi vastata",
+ "submissionstatus": "Palautuksen tila",
+ "submissionstatus_": "Ei palautusta",
+ "submissionstatus_draft": "Keskeneräinen (ei lähetetty arvioitavaksi)",
+ "submissionstatus_marked": "Arvioitu",
+ "submissionstatus_new": "Ei palautusta",
+ "submissionstatus_reopened": "Avattu uudelleen",
+ "submissionstatus_submitted": "Lähetetty arvioitavaksi",
+ "submissionstatusheading": "Palautuksen tila",
+ "submissionteam": "Ryhmä",
+ "submitassignment": "Lähetä arvioitavaksi",
+ "submitassignment_help": "Palautettuasi tehtävän et voi enää muokata sitä.",
+ "submittedearly": "Palautus tehtiin {{$a}} ennen määräaikaa",
+ "submittedlate": "Palautus tehtiin myöhässä {{$a}} määräajan jälkeen",
+ "timemodified": "Viimeksi muokattu",
+ "timeremaining": "Palautusaikaa jäljellä",
+ "ungroupedusers": "Asetus \"Opiskelijan pitää olla ryhmän jäsen voidakseen palauttaa\" on käytössä, ja osaa opiskelijoista ei ole jaettu ryhmiin. Huomaa, että tämä estää heitä palauttamasta tehtävää.",
+ "unlimitedattempts": "Rajoittamaton",
+ "userswhoneedtosubmit": "Opiskelijat, joilla on palautettavaa: {{$a}}",
+ "userwithid": "Käyttäjä, jonka ID on {{id}}",
+ "viewsubmission": "Näytä palautus",
+ "warningsubmissiongrademodified": "Palautuksen arvosanaa muokattiin sivustolla.",
+ "warningsubmissionmodified": "Käyttäjän palautusta muokattiin sivustolla."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/fr.json b/src/addon/mod/assign/lang/fr.json
new file mode 100755
index 000000000..b00a6151d
--- /dev/null
+++ b/src/addon/mod/assign/lang/fr.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Veuillez accepter les conditions d'envoi.",
+ "addattempt": "Autoriser une autre tentative",
+ "addnewattempt": "Ajouter une tentative",
+ "addnewattemptfromprevious": "Ajouter une tentative basée sur le travail remis précédemment",
+ "addsubmission": "Ajouter un travail",
+ "allowsubmissionsanddescriptionfromdatesummary": "Les détails du devoir et le formulaire de remise de document seront disponibles dès le {{$a}}",
+ "allowsubmissionsfromdate": "Autoriser la remise dès le",
+ "allowsubmissionsfromdatesummary": "Ce devoir acceptera la remise de documents dès le {{$a}}",
+ "applytoteam": "Appliquer les notes et le feedback à tout le groupe",
+ "assignmentisdue": "Devoir à effectuer",
+ "attemptnumber": "Numéro de tentative",
+ "attemptreopenmethod": "Réouverture des travaux remis",
+ "attemptreopenmethod_manual": "Manuellement",
+ "attemptreopenmethod_untilpass": "Automatiquement jusqu'à réussite",
+ "attemptsettings": "Réglages de tentative",
+ "cannoteditduetostatementsubmission": "Vous ne pouvez ni ajouter ni modifier de données dans l'app, car la déclaration de remise n'a pas pu être récupérée depuis le site.",
+ "cannotgradefromapp": "Certaines méthodes d'évaluations ne sont pas encore supportées par l'app et ne peuvent pas être modifiées.",
+ "cannotsubmitduetostatementsubmission": "Vous ne pouvez pas déposer de travail à évaluer dans l'app, car il n'est actuellement pas possible de récupérer la déclaration de remise.",
+ "confirmsubmission": "Voulez-vous vraiment remettre votre travail pour évaluation ? Vous ne pourrez plus effectuer de changement.",
+ "currentattempt": "Ceci est la tentative {{$a}}.",
+ "currentattemptof": "Ceci est la tentative {{$a.attemptnumber}} ({{$a.maxattempts}} tentatives autorisées).",
+ "currentgrade": "Note actuelle dans le carnet de notes",
+ "cutoffdate": "Date limite",
+ "defaultteam": "Groupe par défaut",
+ "duedate": "Date de remise",
+ "duedateno": "Pas de date de remise",
+ "duedatereached": "La date de remise de ce devoir est passée",
+ "editingstatus": "Statut d'édition",
+ "editsubmission": "Modifier le travail",
+ "erroreditpluginsnotsupported": "Vous ne pouvez ni ajouter ni modifier de données dans l'app, car certains plugins ne permettent pas la modification.",
+ "errorshowinginformation": "Il n'est pas possible d'afficher les informations de remise.",
+ "extensionduedate": "Date de prolongation",
+ "feedbacknotsupported": "Le feedback n'est pas supporté par l'app et pourrait ne pas contenir la totalité des informations.",
+ "grade": "Note",
+ "graded": "Noté",
+ "gradedby": "Évalué par",
+ "gradedon": "Évalué le",
+ "gradenotsynced": "Note non synchronisée",
+ "gradeoutof": "Note sur {{$a}}",
+ "gradingstatus": "Statut de l'évaluation",
+ "groupsubmissionsettings": "Réglages de remises en groupe",
+ "hiddenuser": "Participant",
+ "latesubmissions": "Devoirs en retard",
+ "latesubmissionsaccepted": "Permis jusqu'au {{$a}}",
+ "markingworkflowstate": "Statut du flux d'évaluation",
+ "markingworkflowstateinmarking": "En cours d'évaluation",
+ "markingworkflowstateinreview": "En relecture",
+ "markingworkflowstatenotmarked": "Non évalué",
+ "markingworkflowstatereadyforrelease": "Prêt pour publication",
+ "markingworkflowstatereadyforreview": "Évaluation terminée",
+ "markingworkflowstatereleased": "Publié",
+ "multipleteams": "Membre de plusieurs groupes",
+ "noattempt": "Aucune tentative",
+ "nomoresubmissionsaccepted": "Permis uniquement pour les participants ayant obtenu une prolongation",
+ "noonlinesubmissions": "Ce devoir ne requiert pas de fichier à remettre de votre part",
+ "nosubmission": "Rien n'a été déposé pour ce devoir",
+ "notallparticipantsareshown": "Les participants qui n'ont pas encore remis de travail ne sont pas affichés.",
+ "noteam": "Membre d'aucun groupe",
+ "notgraded": "Non évalué",
+ "numberofdraftsubmissions": "Brouillons",
+ "numberofparticipants": "Participants",
+ "numberofsubmissionsneedgrading": "Nécessitant évaluation",
+ "numberofsubmittedassignments": "Remis",
+ "numberofteams": "Groupes",
+ "numwords": "{{$a}} mots",
+ "outof": "{{$a.current}} de {{$a.total}}",
+ "overdue": "Le devoir est en retard de {{$a}}",
+ "savechanges": "Enregistrer",
+ "submission": "Devoir rendu",
+ "submissioneditable": "L'étudiant peut modifier ce travail remis",
+ "submissionnoteditable": "L'étudiant ne peut pas modifier ce travail remis",
+ "submissionnotsupported": "Le remise de documents n'est pas supportée par l'app et pourrait ne pas contenir la totalité des informations.",
+ "submissionslocked": "L'ajout, la modification et la suppression de travaux ont été bloqués",
+ "submissionstatus": "Statut des travaux remis",
+ "submissionstatus_": "Pas de travail remis",
+ "submissionstatus_draft": "Brouillon (non remis)",
+ "submissionstatus_marked": "Noté",
+ "submissionstatus_new": "Non remis",
+ "submissionstatus_reopened": "Rouvert",
+ "submissionstatus_submitted": "Remis pour évaluation",
+ "submissionstatusheading": "Statut de remise",
+ "submissionteam": "Groupe",
+ "submitassignment": "Envoyer le devoir",
+ "submitassignment_help": "Une fois ce devoir envoyé, vous ne pourrez plus y effectuer de modification.",
+ "submittedearly": "Le travail a été remis en avance de {{$a}}",
+ "submittedlate": "Le travail a été remis en retard de {{$a}}",
+ "timemodified": "Dernière modification",
+ "timeremaining": "Temps restant",
+ "ungroupedusers": "Le réglage « Requiert un groupe pour remettre un devoir » est activé et certains utilisateurs ne sont membres d'aucun groupe ou membres de plusieurs groupes. Cette situation les empêchera de remettre un travail.",
+ "unlimitedattempts": "Illimité",
+ "userswhoneedtosubmit": "Utilisateurs devant valider l'envoi du devoir : {{$a}}",
+ "userwithid": "Utilisateur d'ID {{id}}",
+ "viewsubmission": "Afficher le travail remis",
+ "warningsubmissiongrademodified": "La note a été modifiée sur le site.",
+ "warningsubmissionmodified": "Le travail remis par l'utilisateur a été modifié sur le site."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/he.json b/src/addon/mod/assign/lang/he.json
new file mode 100755
index 000000000..634624ece
--- /dev/null
+++ b/src/addon/mod/assign/lang/he.json
@@ -0,0 +1,85 @@
+{
+ "addattempt": "אפשר נסיון נוסף",
+ "addnewattempt": "הוספת נסיון חדש",
+ "addnewattemptfromprevious": "הוספת נסיון נוסף המבוסס על ההגשה האחרונה",
+ "addsubmission": "הוספת הגשה",
+ "allowsubmissionsanddescriptionfromdatesummary": "פרטי טופס המטלה וההגשה יהיו זמינים מ-\n{{$a}}",
+ "allowsubmissionsfromdate": "אפשר הגשות מ",
+ "allowsubmissionsfromdatesummary": "מטלה זו תאפשר הגשות החל מ- {{$a}}",
+ "applytoteam": "החל ציונים ומשוב לכל הקבוצה",
+ "assignmentisdue": "מועד ההגשה הסתיים",
+ "attemptnumber": "נסיון מספר",
+ "attemptreopenmethod": "מנגנון הגשה חוזרת",
+ "attemptreopenmethod_manual": "ידני",
+ "attemptreopenmethod_untilpass": "אוטומטית עד ציון עובר",
+ "attemptsettings": "הגדרות הנסיון",
+ "confirmsubmission": "האם ברצונך להגיש את העבודה שלך עבור מתן ציון? לאחר ההגשה, לא ניתן יהיה לערוך שינויים נוספים.",
+ "currentattempt": "זהו נסיון {{$a}}.",
+ "currentattemptof": "זהו נסיון מספר {{$a.attemptnumber}} ( {{$a.maxattempts}} מנסיונות שאופשרו.",
+ "currentgrade": "הציון הנוכחי בגליון הציונים",
+ "cutoffdate": "מועד הגשה סופי",
+ "defaultteam": "קבוצת בררת־המחדל",
+ "duedate": "עד לתאריך",
+ "duedateno": "אין תאריך הגשה",
+ "duedatereached": "משך הזמן שהוגדר עבור מטלה זו חלף",
+ "editingstatus": "מצב עריכה",
+ "editsubmission": "עריכת ההגשה",
+ "extensionduedate": "הארכת מועד הגשה",
+ "grade": "ציונים",
+ "graded": "נבדק",
+ "gradedby": "נבדק על-ידי",
+ "gradedon": "הציון ניתן על",
+ "gradeoutof": "ציון מתוך {{$a}}",
+ "gradingstatus": "מצב מתן הציון",
+ "groupsubmissionsettings": "הגדרות הגשה בקבוצות",
+ "hiddenuser": "משתתף:",
+ "latesubmissions": "הגשות באיחור",
+ "latesubmissionsaccepted": "סטודנטים שנתנה להם הרשאה להארכה יכולים עדיין להגיש עד {{$a}}",
+ "markingworkflowstate": "מצב מנגנון בדיקה מתקדם",
+ "markingworkflowstateinmarking": "בתהליך בדיקה",
+ "markingworkflowstateinreview": "בבדיקת המרצה",
+ "markingworkflowstatenotmarked": "טרם נבדק",
+ "markingworkflowstatereadyforrelease": "הניקוד ממתין להפצה",
+ "markingworkflowstatereadyforreview": "בדיקה ראשונית הסתיימה",
+ "markingworkflowstatereleased": "הניקוד זמין לסטודנט",
+ "multipleteams": "חבר ביותר מקבוצה אחת",
+ "noattempt": "אין נסיונות",
+ "nomoresubmissionsaccepted": "מורשה רק למשתתפים שניתנה להם האפשרות להגשה מאוחרת",
+ "noonlinesubmissions": "מטלה זו לא דורשת ממך להגיש דבר באופן מקוון",
+ "nosubmission": "לא הוגש שום דבר עבור מטלה זו.",
+ "noteam": "אינך חבר באף קבוצה, אנא פנה למורה.",
+ "notgraded": "לא ניתן ציון",
+ "numberofdraftsubmissions": "טיוטות",
+ "numberofparticipants": "משתתפים",
+ "numberofsubmissionsneedgrading": "דורש מתן ציון",
+ "numberofsubmittedassignments": "הוגש",
+ "numberofteams": "קבוצות",
+ "numwords": "{{$a}} מילים",
+ "outof": "{{$a.current}} מתוך ס\"ה {{$a.total}}",
+ "overdue": "\nהמטלה באיחור של:\n{{$a}}",
+ "savechanges": "שמירת שינויים",
+ "submission": "הגשה",
+ "submissioneditable": "סטודנטים יכולים לערוך הגשה זו",
+ "submissionnoteditable": "סטודנטים אינם יכולים לערוך הגשה זו",
+ "submissionslocked": "מטלה זו אינה מאפשרת הגשות",
+ "submissionstatus": "מצב ההגשה",
+ "submissionstatus_": "אין הגשה",
+ "submissionstatus_draft": "מצב טיוטה ( לא הוגש)",
+ "submissionstatus_marked": "נבדק",
+ "submissionstatus_new": "אין הגשה",
+ "submissionstatus_reopened": "נפתח מחדש",
+ "submissionstatus_submitted": "הוגש למתן ציון",
+ "submissionstatusheading": "מצב הגשה",
+ "submissionteam": "קבוצה",
+ "submitassignment": "הגשת מטלה",
+ "submitassignment_help": "ברגע שהמטלה תוגש, לא ניתן יהיה לערוך שינויים נוספים",
+ "submittedearly": "המטלה הוגשה {{$a}} לפני תאריך ההגשה הסופי.",
+ "submittedlate": "המטלה הוגשה באחור של {{$a}}",
+ "timemodified": "עדכון אחרון",
+ "timeremaining": "זמן ההגשה (הראשוני)",
+ "ungroupedusers": "ההגדרה \"יש להיות חבר בקבוצה בכדי להגיש\" פעילה אך כמה משתמשים לא מוקצים לקבוצות, הדבר ימנע מהם מלהגיש את המטלות.",
+ "unlimitedattempts": "לא מוגבל",
+ "userswhoneedtosubmit": "משתמשים שצריכים להגיש: {{$a}}",
+ "userwithid": "משתמש עם מספר-זיהוי {{id}}",
+ "viewsubmission": "צפיה בהגשה"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/hr.json b/src/addon/mod/assign/lang/hr.json
new file mode 100755
index 000000000..29d04e274
--- /dev/null
+++ b/src/addon/mod/assign/lang/hr.json
@@ -0,0 +1,81 @@
+{
+ "addattempt": "Predajte drugu zadaću",
+ "addnewattempt": "Predajte novu zadaću",
+ "addnewattemptfromprevious": "Dopusti novi pokušaj zasnovan na prethodno predanoj zadaći",
+ "addsubmission": "Predajte zadaću",
+ "allowsubmissionsanddescriptionfromdatesummary": "Detaljnije informacije o zadaći i obrazac za predaju zadaće bit će dostupni od {{$a}}",
+ "allowsubmissionsfromdate": "Dopusti predavanje zadaće od",
+ "allowsubmissionsfromdatesummary": "Ova zadaća dopušta predavanje vaših radova od {{$a}}",
+ "applytoteam": "Primijeni ocjene i povratnu informaciju na cijelu grupu",
+ "assignmentisdue": "Rok za predaju zadaće",
+ "attemptnumber": "Broj predanih zadaća",
+ "attemptreopenmethod": "Ponovno otvoreni pokušaji",
+ "attemptreopenmethod_manual": "Ručno",
+ "attemptreopenmethod_untilpass": "Automatski do prolazne",
+ "attemptsettings": "Postavke predavanja zadaće",
+ "confirmsubmission": "Želite li uistinu predati vašu zadaću na ocjenjivanje? Više nećete moći raditi ikakve izmjene nad zadaćom.",
+ "currentattempt": "Ovo je predana zadaća broj {{$a}}.",
+ "currentattemptof": "Ovo je predana zadaća broj {{$a.attemptnumber}} (od dopuštenih {{$a.maxattempts}}).",
+ "currentgrade": "Trenutačno pohranjena ocjena",
+ "cutoffdate": "Krajnji rok predaje",
+ "defaultteam": "Zadana grupa",
+ "duedate": "Rok predaje",
+ "duedateno": "Bez roka predaje",
+ "duedatereached": "Rok za predaju ove zadaće je istekao",
+ "editingstatus": "Status uređivanja",
+ "editsubmission": "Uredi moju zadaću",
+ "extensionduedate": "Produljeni krajnji rok",
+ "grade": "Ocjena",
+ "graded": "Ocijenjeno",
+ "gradedby": "Ocijenjeno od",
+ "gradedon": "Datum ocjene",
+ "gradeoutof": "Ocjena od ukupno {{$a}}",
+ "gradingstatus": "Ocjena",
+ "groupsubmissionsettings": "Postavke za grupnu predaju zadaće",
+ "hiddenuser": "Sudionik",
+ "latesubmissions": "Kasnija predaja zadaće",
+ "latesubmissionsaccepted": "Zadaću mogu predati samo oni studenti koji imaju dopuštenje za produljenje roka",
+ "markingworkflowstate": "Stanje procedure za ocjenjivanje",
+ "markingworkflowstateinmarking": "U postupku ocjenjivanja",
+ "markingworkflowstateinreview": "U postupku pregledavanja",
+ "markingworkflowstatenotmarked": "Nije ocijenjeno",
+ "markingworkflowstatereadyforrelease": "Spremno za objavu",
+ "markingworkflowstatereadyforreview": "Ocjenjivanje dovršeno",
+ "markingworkflowstatereleased": "Objavljeno",
+ "noattempt": "Zadaća nije predana",
+ "nomoresubmissionsaccepted": "Daljnja predaja zadaća nije dopuštena",
+ "noonlinesubmissions": "Za ovu zadaću ne morate ništa predavati online",
+ "nosubmission": "Nije predana nijedna zadaća",
+ "notgraded": "Nije ocijenjeno",
+ "numberofdraftsubmissions": "Nacrti",
+ "numberofparticipants": "Sudionici",
+ "numberofsubmissionsneedgrading": "Potrebno ocijeniti",
+ "numberofsubmittedassignments": "Predano",
+ "numberofteams": "Grupe",
+ "numwords": "{{$a}} riječi",
+ "outof": "{{$a.current}} od {{$a.total}}",
+ "overdue": "Zadaća je predana prekasno za: {{$a}}",
+ "savechanges": "Pohrani promjene",
+ "submission": "Predaja",
+ "submissioneditable": "Studenti mogu nadograđivati zadaću",
+ "submissionnoteditable": "Studenti ne mogu nadograđivati zadaću",
+ "submissionslocked": "Ova zadaća ne dopušta predavanje rada",
+ "submissionstatus": "Stanje predane zadaće",
+ "submissionstatus_": "Nema predanih zadaća",
+ "submissionstatus_draft": "Nacrt (nije predano)",
+ "submissionstatus_marked": "Ocijenjeno",
+ "submissionstatus_new": "Nema predanih zadaća",
+ "submissionstatus_reopened": "Ponovno otvoreno",
+ "submissionstatus_submitted": "Predano na ocjenjivanje",
+ "submissionstatusheading": "Stanje predane zadaće",
+ "submissionteam": "Grupa",
+ "submitassignment": "Predaj zadaću",
+ "submitassignment_help": "Jednom kada predate zadaću, daljnje izmjene nisu moguće",
+ "submittedearly": "Ranija predaja zadaće: {{$a}}",
+ "submittedlate": "Zakašnjela predaja zadaće: {{$a}}",
+ "timemodified": "Posljednja izmjena",
+ "timeremaining": "Preostalo vrijeme",
+ "unlimitedattempts": "Neograničeno",
+ "userswhoneedtosubmit": "Korisnici koji moraju predati zadaću: {{$a}}",
+ "viewsubmission": "Prikaz predane zadaće"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/hu.json b/src/addon/mod/assign/lang/hu.json
new file mode 100755
index 000000000..b7d94fa14
--- /dev/null
+++ b/src/addon/mod/assign/lang/hu.json
@@ -0,0 +1,84 @@
+{
+ "addattempt": "Újabb próbálkozás engedélyezése",
+ "addnewattempt": "Új próbálkozás hozzáadása",
+ "addnewattemptfromprevious": "Új próbálkozás hozzáadása az előző leadás alapján",
+ "addsubmission": "Leadott munka hozzáadása",
+ "allowsubmissionsanddescriptionfromdatesummary": "A feladat részletei és a leadási űrlap {{$a}} időponttól lesznek elérhetők.",
+ "allowsubmissionsfromdate": "Leadások engedélyezése ekkortól",
+ "allowsubmissionsfromdatesummary": "A feladathoz {{$a}} időponttól lehet leadni munkát.",
+ "applytoteam": "Osztályzatok és visszajelzés az egész csoportra kiterjesztve",
+ "assignmentisdue": "A feladat teljesítendő",
+ "attemptnumber": "Próbálkozás száma",
+ "attemptreopenmethod": "Újból megnyitott próbálkozások",
+ "attemptreopenmethod_manual": "Kézileg",
+ "attemptreopenmethod_untilpass": "Automatikusan a teljesítésig",
+ "attemptsettings": "Próbálkozás beállításai",
+ "confirmsubmission": "Biztosan leadja munkáját osztályozásra? További módosításokra nem lesz lehetősége.",
+ "currentattempt": "Ez a(z) {{$a}}. próbálkozás",
+ "currentattemptof": "Ez a lehetséges {{$a.maxattempts}} közül a(z) {{$a.attemptnumber}}. próbálkozás",
+ "currentgrade": "Aktuális osztályzat az osztályozónaplóban",
+ "cutoffdate": "Lezárás időpontja",
+ "defaultteam": "Alapcsoport",
+ "duedate": "Határidő",
+ "duedateno": "Nincs határidő",
+ "duedatereached": "A feladat teljesítésének határideje lejárt.",
+ "editingstatus": "Szerkesztés állapota",
+ "editsubmission": "Leadott munkám szerkesztése",
+ "extensionduedate": "Meghosszabbítás lejárata",
+ "grade": "Pont",
+ "graded": "Pontozott",
+ "gradedby": "Osztályozta",
+ "gradedon": "Osztályozás időpontja",
+ "gradeoutof": "{{$a}} pontból",
+ "gradingstatus": "Osztályozás állapota",
+ "groupsubmissionsettings": "Csoportos leadás beállításai",
+ "hiddenuser": "Résztvevő",
+ "latesubmissions": "Későn leadott munkák",
+ "latesubmissionsaccepted": "Csak {{$a}} időpontig engedélyezett",
+ "markingworkflowstate": "Értékelési folyamat állapota",
+ "markingworkflowstateinmarking": "Értékelés alatt",
+ "markingworkflowstateinreview": "Ellenőrzés alatt",
+ "markingworkflowstatenotmarked": "Nincs értékelve",
+ "markingworkflowstatereadyforrelease": "Közzétételre kész",
+ "markingworkflowstatereadyforreview": "Az értékelés véget ért.",
+ "markingworkflowstatereleased": "Közzétéve",
+ "multipleteams": "Több csoportnak is tagja",
+ "noattempt": "Nincs próbálkozás",
+ "nomoresubmissionsaccepted": "Csak a halasztást kapók számára engedélyezett",
+ "noonlinesubmissions": "Ehhez a feladathoz semmit nem kell neten keresztül leadnia.",
+ "nosubmission": "A feladathoz nem érkezett leadott munka.",
+ "noteam": "Ön egyik csoportnak sem tagja",
+ "notgraded": "Nincs osztályozva",
+ "numberofdraftsubmissions": "Piszkozatok",
+ "numberofparticipants": "Résztvevők",
+ "numberofsubmissionsneedgrading": "Osztályozandó",
+ "numberofsubmittedassignments": "Leadva",
+ "numberofteams": "Csoportok",
+ "numwords": "{{$a}} szó",
+ "outof": "{{$a.current}} / {{$a.total}}",
+ "overdue": "A feladat lejárt: {{$a}}",
+ "savechanges": "Módosítások mentése",
+ "submission": "Leadott munka",
+ "submissioneditable": "A tanuló a leadandót szerkesztheti.",
+ "submissionnoteditable": "A tanuló a leadandót nem szerkesztheti.",
+ "submissionslocked": "A feladathoz nem lehet munkát leadni.",
+ "submissionstatus": "Leadás állapota",
+ "submissionstatus_": "Nincs leadott munka",
+ "submissionstatus_draft": "Piszkozat (nincs leadva)",
+ "submissionstatus_marked": "Pontozott",
+ "submissionstatus_new": "Nincs leadott munka",
+ "submissionstatus_reopened": "Újból megnyitva",
+ "submissionstatus_submitted": "Osztályozásra leadva",
+ "submissionstatusheading": "Leadás állapota",
+ "submissionteam": "Csoport",
+ "submitassignment": "Feladat leadása",
+ "submitassignment_help": "A feladat leadás után nem módosítható.",
+ "submittedearly": "Feladat {{$a}} idővel korábban leadva",
+ "submittedlate": "Feladat {{$a}} idővel később leadva",
+ "timemodified": "Utolsó módosítás",
+ "timeremaining": "Hátralévő idő",
+ "ungroupedusers": "A Csoport számára leadás előírása be van kapcsolva és egyes felhasználók nincsenek csoporthoz - vagy több csoporthoz vannak - hozzárendelve, így nem adhatnak le munkát.",
+ "unlimitedattempts": "Korlátlan",
+ "userswhoneedtosubmit": "Leadásra kötelezett tanulók: {{$a}}",
+ "viewsubmission": "Leadott munka megtekintése"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/it.json b/src/addon/mod/assign/lang/it.json
new file mode 100755
index 000000000..c25d659a2
--- /dev/null
+++ b/src/addon/mod/assign/lang/it.json
@@ -0,0 +1,91 @@
+{
+ "addattempt": "Consenti tentativo ulteriore",
+ "addnewattempt": "Aggiungi tentativo",
+ "addnewattemptfromprevious": "Aggiungi tentativo sulla base della consegna precedente",
+ "addsubmission": "Aggiungi consegna",
+ "allowsubmissionsanddescriptionfromdatesummary": "I dettagli del compito ed il form di consegna saranno disponibili a partire dal {{$a}}",
+ "allowsubmissionsfromdate": "Inizio consegne",
+ "allowsubmissionsfromdatesummary": "Questo compito accetta consegne a partire dal {{$a}}",
+ "applytoteam": "Usa lo stesso feedback e la stessa valutazione per tutto il gruppo",
+ "assignmentisdue": "Consegna compito",
+ "attemptnumber": "Numero tentativo",
+ "attemptreopenmethod": "Riapertura tentativo",
+ "attemptreopenmethod_manual": "Manualmente",
+ "attemptreopenmethod_untilpass": "Automaticamente fino al superamento",
+ "attemptsettings": "Impostazioni tentativo",
+ "confirmsubmission": "Sei sicuro di voler consegnare il tuo lavoro per farlo valutare? La consegna non potrà più essere modificata.",
+ "currentattempt": "Tentativo {{$a}}.",
+ "currentattemptof": "Tentativo {{$a.attemptnumber}} (Tentativi consentiti: {{$a.maxattempts}}).",
+ "currentgrade": "Voto nel Registro delle valutazioni",
+ "cutoffdate": "Data limite",
+ "defaultteam": "Gruppo di default",
+ "duedate": "Termine consegne",
+ "duedateno": "Senza termine consegne",
+ "duedatereached": "La data di scadenza del compito è già trascorsa",
+ "editingstatus": "Possibilità di modifica",
+ "editsubmission": "Modifica consegna",
+ "extensionduedate": "Data scadenza proroga",
+ "feedbacknotsupported": "Questo feedback non è supportato dalla app e può non contenere tutte le informazioni.",
+ "grade": "Punteggio",
+ "graded": "Valutata",
+ "gradedby": "Valutatore",
+ "gradedon": "Data di valutazione",
+ "gradenotsynced": "Valutazione non sincronizzata",
+ "gradeoutof": "Punteggio (su {{$a}})",
+ "gradingstatus": "Stato valutazione",
+ "groupsubmissionsettings": "Impostazioni consegna di gruppo",
+ "hiddenuser": "Partecipante",
+ "latesubmissions": "Consegne in ritardo",
+ "latesubmissionsaccepted": "Consentito fino al {{$a}}",
+ "markingworkflowstate": "Stato del flusso di lavoro della valutazione",
+ "markingworkflowstateinmarking": "In valutazione",
+ "markingworkflowstateinreview": "In revisione",
+ "markingworkflowstatenotmarked": "Non valutata",
+ "markingworkflowstatereadyforrelease": "Pronta per il rilascio",
+ "markingworkflowstatereadyforreview": "Valutazione completata",
+ "markingworkflowstatereleased": "Rilasciata",
+ "multipleteams": "Appartieni a più gruppi",
+ "noattempt": "Nessun tentativo",
+ "nomoresubmissionsaccepted": "Consentito solamente ai partecipanti ai quali è stata concessa una proroga",
+ "noonlinesubmissions": "Questo compito non richiede consegne online",
+ "nosubmission": "Non sono presenti consegne da valutare",
+ "notallparticipantsareshown": "I partecipanti che non hanno consegnato non sono visualizzati.",
+ "noteam": "Non appartieni a nessun gruppo",
+ "notgraded": "Non valutata",
+ "numberofdraftsubmissions": "Bozze",
+ "numberofparticipants": "Partecipanti",
+ "numberofsubmissionsneedgrading": "In attesa di valutazione",
+ "numberofsubmittedassignments": "Consegne",
+ "numberofteams": "Gruppi",
+ "numwords": "{{$a}} parole",
+ "outof": "{{$a.current}} su {{$a.total}}",
+ "overdue": "Consegna in ritardo da: {{$a}}",
+ "savechanges": "Salva modifiche",
+ "submission": "Consegna",
+ "submissioneditable": "Lo studente può modificare la consegna",
+ "submissionnoteditable": "Gli studenti non possono modificare questa consegna",
+ "submissionnotsupported": "Questa consegna non è supportata dalla app e può non contenere tutte le informazioni.",
+ "submissionslocked": "Il compito non accetta consegne",
+ "submissionstatus": "Stato consegna",
+ "submissionstatus_": "Nessuna consegna",
+ "submissionstatus_draft": "Bozza (non consegnato)",
+ "submissionstatus_marked": "Valutato",
+ "submissionstatus_new": "Nessuna consegna",
+ "submissionstatus_reopened": "Riaperto",
+ "submissionstatus_submitted": "Consegnato per la valutazione",
+ "submissionstatusheading": "Stato consegna",
+ "submissionteam": "Gruppo",
+ "submitassignment": "Consegna compito",
+ "submitassignment_help": "Dopo aver consegnato il compito non potrai più modificarlo",
+ "submittedearly": "Il compito è stato consegnato {{$a}} in anticipo",
+ "submittedlate": "Il compito è stato consegnato {{$a}} in ritardo",
+ "timemodified": "Ultima modifica",
+ "timeremaining": "Tempo rimasto",
+ "ungroupedusers": "L'impostazione 'Consegna di gruppo obbligatoria' è abilitata ma alcuni utenti non fanno parte di gruppi o fanno parte di più gruppi e pertanto non potranno effettuare consegne.",
+ "unlimitedattempts": "Illimitati",
+ "userswhoneedtosubmit": "Utenti che non hanno consegnato: {{$a}}",
+ "userwithid": "Utente con ID {{id}}",
+ "viewsubmission": "Visualizza consegne",
+ "warningsubmissiongrademodified": "La valutazione dell'utente è stata modificata sul sito.",
+ "warningsubmissionmodified": "La consegna dell'utente è stata modificata sul sito."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/ja.json b/src/addon/mod/assign/lang/ja.json
new file mode 100755
index 000000000..7d36b4305
--- /dev/null
+++ b/src/addon/mod/assign/lang/ja.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "提出時宣誓文を受諾してください。",
+ "addattempt": "別の提出を許可する",
+ "addnewattempt": "新しい提出を追加する",
+ "addnewattemptfromprevious": "前回の提出をもとに新しい提出を追加する",
+ "addsubmission": "課題を追加する",
+ "allowsubmissionsanddescriptionfromdatesummary": "課題詳細および提出フォームは {{$a}} から利用できます。",
+ "allowsubmissionsfromdate": "開始日時",
+ "allowsubmissionsfromdatesummary": "この課題は {{$a}} から提出を受け付けます。",
+ "applytoteam": "グループ全体に評定およびフィードバックを提供する",
+ "assignmentisdue": "課題の提出期限が到来しました。",
+ "attemptnumber": "提出回数",
+ "attemptreopenmethod": "提出再オープン",
+ "attemptreopenmethod_manual": "手動",
+ "attemptreopenmethod_untilpass": "合格するまで自動",
+ "attemptsettings": "受験設定",
+ "cannoteditduetostatementsubmission": "サイトから提出時宣誓文を取得することができなかったため、アプリでは提出物の追加や編集ができません。",
+ "cannotgradefromapp": "評定方法にアプリでは未サポートあるいは変更できないものがあります。",
+ "cannotsubmitduetostatementsubmission": "サイトから提出時宣誓文が取得できなかったため、アプリから評定を提出することができませんでした。",
+ "confirmsubmission": "本当にあなたの作業を評定のために提出してもよろしいですか? これ以上、あなたは変更できないようになります。",
+ "currentattempt": "これは {{$a}} 回目の提出です。",
+ "currentattemptof": "これは {{$a.attemptnumber}} 回目の提出です ( {{$a.maxattempts}} 回の提出が許可されています)。",
+ "currentgrade": "評定表内の現在の評定",
+ "cutoffdate": "遮断日時",
+ "defaultteam": "デフォルトグループ",
+ "duedate": "終了日時",
+ "duedateno": "提出期限なし",
+ "duedatereached": "この課題の提出期限を過ぎました。",
+ "editingstatus": "編集ステータス",
+ "editsubmission": "提出を編集する",
+ "erroreditpluginsnotsupported": "提出物の編集がサポートされていないプラグインがあるため、アプリから提出物の追加や編集ができませんでした。",
+ "errorshowinginformation": "提出物の情報を表示できません。",
+ "extensionduedate": "延長提出期限",
+ "feedbacknotsupported": "このフィードバックはアプリでは未サポートのため、すべての情報が含まれていない可能性があります",
+ "grade": "評点",
+ "graded": "評定済み",
+ "gradedby": "評定者",
+ "gradedon": "評定日時",
+ "gradenotsynced": "評定が同期できませんでした",
+ "gradeoutof": "{{$a}} 点中の評点",
+ "gradingstatus": "評定ステータス",
+ "groupsubmissionsettings": "グループ提出設定",
+ "hiddenuser": "参加者",
+ "latesubmissions": "提出期限後の提出",
+ "latesubmissionsaccepted": "{{$a}} まで許可されます。",
+ "markingworkflowstate": "採点ワークフローステータス",
+ "markingworkflowstateinmarking": "採点中",
+ "markingworkflowstateinreview": "レビュー中",
+ "markingworkflowstatenotmarked": "未採点",
+ "markingworkflowstatereadyforrelease": "リリース準備完了",
+ "markingworkflowstatereadyforreview": "採点完了",
+ "markingworkflowstatereleased": "リリース済み",
+ "multipleteams": "2つ以上のグループのメンバー",
+ "noattempt": "未提出",
+ "nomoresubmissionsaccepted": "延長を許可された参加者のみ許可されます。",
+ "noonlinesubmissions": "この課題においてあなたがオンラインで提出するものはありません。",
+ "nosubmission": "この課題に関して提出されているものはありません。",
+ "notallparticipantsareshown": "提出物のない参加者は表示されていません",
+ "noteam": "どのグループのメンバーでもない",
+ "notgraded": "未評定",
+ "numberofdraftsubmissions": "下書き",
+ "numberofparticipants": "参加者",
+ "numberofsubmissionsneedgrading": "要評定",
+ "numberofsubmittedassignments": "提出",
+ "numberofteams": "グループ",
+ "numwords": "{{$a}} 語",
+ "outof": "{{$a.current}} / {{$a.total}}",
+ "overdue": "課題は次の時間を超過しています: {{$a}}",
+ "savechanges": "変更を保存する",
+ "submission": "提出課題",
+ "submissioneditable": "学生はこの提出を編集できます。",
+ "submissionnoteditable": "学生はこの提出を編集できません。",
+ "submissionnotsupported": "この提出物はアプリでは未サポートのため、すべての情報が含まれていない可能性があります",
+ "submissionslocked": "この課題は提出を受け付けていません。",
+ "submissionstatus": "提出ステータス",
+ "submissionstatus_": "提出なし",
+ "submissionstatus_draft": "下書き (未提出)",
+ "submissionstatus_marked": "評定済み",
+ "submissionstatus_new": "提出なし",
+ "submissionstatus_reopened": "再オープン",
+ "submissionstatus_submitted": "評定のために提出済み",
+ "submissionstatusheading": "提出ステータス",
+ "submissionteam": "グループ",
+ "submitassignment": "課題を提出する",
+ "submitassignment_help": "この課題を提出した時点であなたはこれ以上変更できないようになります。",
+ "submittedearly": "課題は {{$a}} 早く提出されました。",
+ "submittedlate": "課題は {{$a}} 遅く提出されました。",
+ "timemodified": "最終更新日時",
+ "timeremaining": "残り時間",
+ "ungroupedusers": "設定「提出にグループを必要とする」が有効にされているため、そして何名かのユーザがグループのメンバーではないため、または2つ以上のグループメンバーであるため、提出することはできません。",
+ "unlimitedattempts": "無制限",
+ "userswhoneedtosubmit": "提出が必要なユーザ: {{$a}}",
+ "userwithid": "ID {{id}} を持つユーザ",
+ "viewsubmission": "提出を表示する",
+ "warningsubmissiongrademodified": "提出物の評定がサイト上で変更されました。",
+ "warningsubmissionmodified": "ユーザの提出物がサイト上で変更されました。"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/ko.json b/src/addon/mod/assign/lang/ko.json
new file mode 100755
index 000000000..fa33c4303
--- /dev/null
+++ b/src/addon/mod/assign/lang/ko.json
@@ -0,0 +1,76 @@
+{
+ "addattempt": "또 다른 시도 추가",
+ "addnewattempt": "새 시도 추가",
+ "addnewattemptfromprevious": "이전 제출에 기반한 새 시도 추가",
+ "addsubmission": "제출 추가",
+ "allowsubmissionsanddescriptionfromdatesummary": "과제 세부사항과 제출 양식이 {{$a}} 부터 사용가능합니다.",
+ "allowsubmissionsfromdate": "제출 시작일:",
+ "allowsubmissionsfromdatesummary": "이 과제는 {{$a}}부터 제출이 가능합니다.",
+ "applytoteam": "모둠 전체에 성적과 피드백 적용",
+ "assignmentisdue": "과제 제출 마감 시한",
+ "attemptnumber": "시도 수",
+ "attemptreopenmethod": "시도 재개",
+ "attemptreopenmethod_manual": "수동으로",
+ "attemptreopenmethod_untilpass": "통과할때까지 자동으로",
+ "attemptsettings": "시도 설정",
+ "confirmsubmission": "채점을 위해 과제를 제출 하시겠습니까? 제출하면 이상 변경할 수 없습니다.",
+ "currentattempt": "시도 {{$a}}입니다.",
+ "currentattemptof": "시도 {{$a.attemptnumber}} ({{$a.maxattempts}} 시도가 허용됩니다.)",
+ "currentgrade": "성적부에서 현재 성적",
+ "cutoffdate": "최종 마감일",
+ "defaultteam": "기본 모둠",
+ "duedate": "마감 일시",
+ "duedateno": "무기한",
+ "duedatereached": "이 과제 제출 마감일이 지났습니다.",
+ "editingstatus": "상태 편집",
+ "editsubmission": "제출물 편집",
+ "extensionduedate": "제출일 연장",
+ "grade": "성적",
+ "graded": "채점됨",
+ "gradedby": "채점자:",
+ "gradedon": "채점일:",
+ "gradenotsynced": "성적이 동기화 안됨",
+ "gradeoutof": "{{$a}} 중 채점",
+ "gradingstatus": "채점 상태",
+ "groupsubmissionsettings": "모둠 제출 설정",
+ "hiddenuser": "참가자",
+ "latesubmissions": "늦은 제출",
+ "latesubmissionsaccepted": "연장 허가를 받은 학생들만 아직 과제를 제출할 수 있습니다",
+ "noattempt": "시도 없음",
+ "nomoresubmissionsaccepted": "더 이상 제출을 받지 않습니다",
+ "noonlinesubmissions": "이 과제는 온라인으로 제출하는 것을 요구하지 않습니다.",
+ "nosubmission": "이 과제에 대해 제출된 것이 없습니다.",
+ "notgraded": "채점되지 않음",
+ "numberofdraftsubmissions": "초안",
+ "numberofparticipants": "참가자",
+ "numberofsubmissionsneedgrading": "채점이 필요합니다.",
+ "numberofsubmittedassignments": "제출함",
+ "numberofteams": "모둠",
+ "numwords": "{{$a}} 단어",
+ "outof": "{{$a.total}}중 {{$a.current}}",
+ "overdue": "과제 제출 기한이 {{$a}} 지났습니다, ",
+ "savechanges": "변경사항 저장",
+ "submission": "제출",
+ "submissioneditable": "학생들은 이 제출을 편집할 수 있습니다.",
+ "submissionnoteditable": "학생들은 이 제출을 편집할 수 없습니다.",
+ "submissionslocked": "이 과제는 제출을 받지 않습니다.",
+ "submissionstatus": "제출 상태",
+ "submissionstatus_": "제출이 없습니다.",
+ "submissionstatus_draft": "초안(제출 되지 않았음)",
+ "submissionstatus_marked": "채점됨",
+ "submissionstatus_new": "새 제출",
+ "submissionstatus_reopened": "다시 오픈됨",
+ "submissionstatus_submitted": "채점을 위해 제출되었습니다.",
+ "submissionstatusheading": "제출 상태",
+ "submissionteam": "모둠",
+ "submitassignment": "과제 제출",
+ "submitassignment_help": "과제가 제출되면 더 이상 변경할 수 없습니다.",
+ "submittedearly": "과제가 {{$a}} 일찍 제출되었습니다.",
+ "submittedlate": "과제가 {{$a}} 늦게 제출되었습니다.",
+ "timemodified": "마지막 수정",
+ "timeremaining": "남은 시간",
+ "unlimitedattempts": "무제한",
+ "userswhoneedtosubmit": "제출이 필요한 사용자 : {{$a}}",
+ "userwithid": "ID가 {{id}} 인 사용자",
+ "viewsubmission": "제출 보기"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/lt.json b/src/addon/mod/assign/lang/lt.json
new file mode 100755
index 000000000..e35c8f65b
--- /dev/null
+++ b/src/addon/mod/assign/lang/lt.json
@@ -0,0 +1,95 @@
+{
+ "acceptsubmissionstatement": "Priimkite pateiktą pranešimą.",
+ "addattempt": "Leisti dar vieną bandymą",
+ "addnewattempt": "Pridėti naują bandymą",
+ "addnewattemptfromprevious": "Pridėti naują bandymą remiantis ankstesniu pateikimu",
+ "addsubmission": "Įkelti darbus",
+ "allowsubmissionsanddescriptionfromdatesummary": "Užduoties detalės ir darbo įkėlimo forma bus galima nuo {{$a}}",
+ "allowsubmissionsfromdate": "Leisti įkelti darbus nuo",
+ "allowsubmissionsfromdatesummary": "Užduotis priims darbus nuo {{$a}}",
+ "applytoteam": "Patvirtinti įvertinimus ir atsaką visai grupei",
+ "assignmentisdue": "Užduoties atlikimo laikas baigės",
+ "attemptnumber": "Bandymo numeris",
+ "attemptreopenmethod": "Pateikimų pakartotinis atidarymas",
+ "attemptreopenmethod_manual": "Rankiniu būdu",
+ "attemptreopenmethod_untilpass": "Automatiškai, kol negaunamas teigiamas įvertinimas",
+ "attemptsettings": "Bandymo nustatymai",
+ "cannoteditduetostatementsubmission": "Negalite pridėti ar redaguoti pateikiamos programėlės, nes negavome svetainės patvirtinimo.",
+ "cannotgradefromapp": "Keli vertinimo metodai nėra palaikomi ir negali būti pakeisti programėlėje.",
+ "cannotsubmitduetostatementsubmission": "Negalima pradėti vertinti, nes negautas pareiškimas dėl pateikimo .",
+ "confirmsubmission": "Ar Jūs tikrai norite pateikti darbą vertinimui? Jūs nebegalėsite atlikti jokių pakeitimų.",
+ "currentattempt": "Čia yra {{$a}} bandymas.",
+ "currentattemptof": "Čia yra bandymas {{$a.attemptnumber}} ( {{$a.maxattempts}} attempts allowed ).",
+ "currentgrade": "Dabartinis įvertis įverčių knygelėje",
+ "cutoffdate": "Paskutinė diena pristatymui",
+ "defaultteam": "Numatyta grupė",
+ "duedate": "Data pristatymui",
+ "duedateno": "Nėra termino",
+ "duedatereached": "Vėliausia įkėlimo data šiai užduočiai jau praėjo.",
+ "editingstatus": "Darbo keitimo galimybė",
+ "editsubmission": "Keisti įkeltus darbus",
+ "erroreditpluginsnotsupported": "Programėlėje pateikimo negalima pridėti ar redaguoti, nes redagavimo papildiniai nėra palaikomi:",
+ "errorshowinginformation": "Pateikta informacija negali būti rodoma",
+ "extensionduedate": "Pratęsta iki",
+ "feedbacknotsupported": "Programėlė grįžtamojo ryšio nepalaiko ir negali pateikti visos informacijos",
+ "grade": "Įvertis",
+ "graded": "Įvertinta",
+ "gradedby": "Įvertino",
+ "gradedon": "Įvertinta",
+ "gradeoutof": "Įvertinimas (iš galimų {{$a}})",
+ "gradingstatus": "Vertinimo būsena",
+ "groupsubmissionsettings": "Grupinio pateikimo nustatymai",
+ "hiddenuser": "Dalyvis",
+ "latesubmissions": "Vėluojantys įkelti darbus",
+ "latesubmissionsaccepted": "Leidžiama iki {{$a}}",
+ "markingworkflowstate": "Vertinimo būsena",
+ "markingworkflowstateinmarking": "Vertinama",
+ "markingworkflowstateinreview": "Peržiūrima",
+ "markingworkflowstatenotmarked": "Neįvertinta",
+ "markingworkflowstatereadyforrelease": "Paruošta pateikimui",
+ "markingworkflowstatereadyforreview": "Vertinimas baigtas",
+ "markingworkflowstatereleased": "Pateikta",
+ "noattempt": "Nebandyta",
+ "nomoresubmissionsaccepted": "Tik besimokantieji, kuriems pratęstas įkėlimas vis dar gali įkelti savo darbus",
+ "noonlinesubmissions": "Ši užduotis nereikalauja nieko įkelti į svetainę",
+ "nosubmission": "Nebuvo pateikta darbų šiai užduočiai",
+ "notallparticipantsareshown": "Negalima rodyti nepatvirtintų dalyvių",
+ "noteam": "Nesate jokios grupės narys",
+ "notgraded": "Neįvertinta",
+ "numberofdraftsubmissions": "Juodraščiai",
+ "numberofparticipants": "Dalyviai",
+ "numberofsubmissionsneedgrading": "Reikia įvertinti",
+ "numberofsubmittedassignments": "Pateikta",
+ "numberofteams": "Grupės",
+ "numwords": "Žodžių: {{$a}}",
+ "outof": "{{$a.current}} iš {{$a.total}}",
+ "overdue": "Vėluojama įkelti darbą: {{$a}}",
+ "savechanges": "Išsaugoti pakeitimus",
+ "submission": "Įkeltas darbas",
+ "submissioneditable": "Besimokantysis gali keisti savo darbą",
+ "submissionnoteditable": "Besimokantysis negali keisti šio įkelto darbo",
+ "submissionnotsupported": "Programėlė negali patvirtinti ir pateikti visos informacijos",
+ "submissionslocked": "Užduotis nebeleidžia įkelti darbų",
+ "submissionstatus": "Įkelto darbo būsena",
+ "submissionstatus_": "Nėra darbų",
+ "submissionstatus_draft": "Juodraštis (nepateiktas)",
+ "submissionstatus_marked": "Įvertinta",
+ "submissionstatus_new": "Nėra pateikimo",
+ "submissionstatus_reopened": "Vėl atidarytas",
+ "submissionstatus_submitted": "Pateikta vertinimui",
+ "submissionstatusheading": "Vertinimo būsena",
+ "submissionteam": "Grupė",
+ "submitassignment": "Pateikti darbą",
+ "submitassignment_help": "Kai darbas bus pateiktas, Jūs negalėsite padaryti jokių pakeitimų.",
+ "submittedearly": "Užduotis buvo įkelta {{$a}} anksčiau",
+ "submittedlate": "Užduotis buvo įkelta vėluojant {{$a}}",
+ "timemodified": "Paskutinį kartą keista",
+ "timeremaining": "Liko laiko",
+ "ungroupedusers": "Nuostata \"Reikalinga grupė, kad pateikti darbus\" yra įjungta, tačiau kai kurie dalyviai nėra grupės nariai ar priklauso daugiau nei vienai grupei, todėl jie negali pateikti savo pateikimo.",
+ "unlimitedattempts": "Neribotai",
+ "userswhoneedtosubmit": "Naudotojai, kurie turi pateikti darbą: {{$a}}",
+ "userwithid": "Naudotojas su ID {{id}}",
+ "viewsubmission": "Peržiūrėti darbą",
+ "warningsubmissiongrademodified": "Pakeistas vertinimas.",
+ "warningsubmissionmodified": "Pakeistas vartotojo pateikimas."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/mr.json b/src/addon/mod/assign/lang/mr.json
new file mode 100755
index 000000000..bd00c152f
--- /dev/null
+++ b/src/addon/mod/assign/lang/mr.json
@@ -0,0 +1,20 @@
+{
+ "acceptsubmissionstatement": "सबमिशन स्टेटमेंट स्वीकार करा.",
+ "cannoteditduetostatementsubmission": "आपण अनुप्रयोगामध्ये एक सबमिशन जोडू किंवा संपादित करू शकत नाही कारण आम्ही साइटवरून सबमिशन स्टेटमेंट पुनर्प्राप्त करू शकलो नाही.",
+ "cannotgradefromapp": "अॅपद्वारे काही ग्रेडिंग पद्धती अद्याप समर्थित नाहीत आणि सुधारल्या जाऊ शकत नाहीत.",
+ "cannotsubmitduetostatementsubmission": "आपण अनुप्रयोगामध्ये ग्रेडिंगसाठी सबमिट करू शकत नाही कारण आम्ही साइटवरून सबमिशन स्टेटमेंट पुनर्प्राप्त करू शकलो नाही.",
+ "erroreditpluginsnotsupported": "आपण अॅपमध्ये सबमिशन जोडू किंवा संपादित करू शकत नाही कारण काही प्लगिन संपादनासाठी समर्थित नाहीत:",
+ "errorshowinginformation": "आम्ही सबमिशन माहिती प्रदर्शित करू शकत नाही",
+ "feedbacknotsupported": "हा अभिप्राय अॅप्सद्वारे समर्थित नाही आणि यात सर्व माहिती असू शकत नाही",
+ "grade": "श्रेणी",
+ "gradenotsynced": "ग्रेड संकलित नाही",
+ "notallparticipantsareshown": "सबमिशनशिवाय सहभागी नाहीत दर्शविलेले नाहीत",
+ "overdue": "थकलेले",
+ "savechanges": "बदल साठवून ठेवा",
+ "submissionnotsupported": "हे सबमिशन अॅपद्वारे समर्थित नाही आणि यात सर्व माहिती असू शकत नाही",
+ "timemodified": "वेळेला दुरुस्त करा",
+ "timeremaining": "शिल्लक वेळ",
+ "userwithid": "आयडी वापरकर्ता {{id}}",
+ "warningsubmissiongrademodified": "सबमिशन ग्रेड साइटवर सुधारित करण्यात आली.",
+ "warningsubmissionmodified": "वापरकर्ता सबमिशन साइटवर सुधारित करण्यात आली."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/nl.json b/src/addon/mod/assign/lang/nl.json
new file mode 100755
index 000000000..b1840d5ee
--- /dev/null
+++ b/src/addon/mod/assign/lang/nl.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Accepteer de uploadvoorwaarden.",
+ "addattempt": "Nog een poging toestaan",
+ "addnewattempt": "Een nieuwe poging toevoegen",
+ "addnewattemptfromprevious": "Een nieuwe poging toevoegen, gebaseerd op de vorige inzending",
+ "addsubmission": "Inzending toevoegen",
+ "allowsubmissionsanddescriptionfromdatesummary": "De opdrachtdetails en het instuurformulier zullen beschikbaar zijn vanaf {{$a}}",
+ "allowsubmissionsfromdate": "Insturen toestaan vanaf",
+ "allowsubmissionsfromdatesummary": "Deze opdracht zal inzendingen ontvangen vanaf {{$a}}",
+ "applytoteam": "Cijfers en feedback aan de hele groep geven",
+ "assignmentisdue": "Opdracht moet worden ingeleverd",
+ "attemptnumber": "Pogingnummer",
+ "attemptreopenmethod": "Heropende pogingen",
+ "attemptreopenmethod_manual": "Manueel",
+ "attemptreopenmethod_untilpass": "Automatisch tot geslaagd",
+ "attemptsettings": "Poginginstellingen",
+ "cannoteditduetostatementsubmission": "Je kunt geen inzending toevoegen of bewerken in de app, omdat we de uploadvoorwaarden niet konden ophalen van de site.",
+ "cannotgradefromapp": "Some beoordelingsmethodes worden nog niet door de app ondersteund en kunnen niet worden aangepast.",
+ "cannotsubmitduetostatementsubmission": "Je kunt niet insturen voor beoordeling omdat we de uploadvoorwaarden niet konden ophalen van de site.",
+ "confirmsubmission": "Weet je zeker dat je je werk wil insturen voor beoordeling? Je zult geen wijzigingen meer kunnen aanbrengen.",
+ "currentattempt": "Deze poging {{$a}}",
+ "currentattemptof": "Dit is poging {{$a.attemptnumber}} ({{$a.maxattempts}} pogingen zijn toegestaan).",
+ "currentgrade": "Huidig cijfer in de cijferlijst",
+ "cutoffdate": "Afsluitdatum",
+ "defaultteam": "Standaard groep",
+ "duedate": "Uiterste inleverdatum",
+ "duedateno": "Geen uiterste inleverdatum",
+ "duedatereached": "De datum waarop deze opdracht moest afgegeven worden is nu voorbij.",
+ "editingstatus": "Status bewerken",
+ "editsubmission": "Bewerk inzending",
+ "erroreditpluginsnotsupported": "Je kunt geen inzending toesturen of bewerken in de app omdat sommige plugins bewerken nog niet ondersteunen.",
+ "errorshowinginformation": "We kunnen de instuurinformatie niet tonen.",
+ "extensionduedate": "Extra tijd einddatum",
+ "feedbacknotsupported": "Deze feedback wordt niet ondersteund door de app en daarom is de informatie mogelijk onvolledig.",
+ "grade": "Cijfer",
+ "graded": "Beoordeeld",
+ "gradedby": "Beoordeeld door",
+ "gradedon": "Beoordeeld op",
+ "gradenotsynced": "Cijfer niet gesynchroniseerd",
+ "gradeoutof": "Cijfer op {{$a}}",
+ "gradingstatus": "Beoordelingsstatus",
+ "groupsubmissionsettings": "Instellingen groepswerk",
+ "hiddenuser": "Deelnemer",
+ "latesubmissions": "Te late inzendingen",
+ "latesubmissionsaccepted": "Toegestaan tot {{$a}}",
+ "markingworkflowstate": "Status van de beoordelings-workflow",
+ "markingworkflowstateinmarking": "Wordt beoordeeld",
+ "markingworkflowstateinreview": "Wordt nagelezen",
+ "markingworkflowstatenotmarked": "Niet beoordeeld",
+ "markingworkflowstatereadyforrelease": "Klaar om vrijgegeven te worden",
+ "markingworkflowstatereadyforreview": "Beoordeling klaar",
+ "markingworkflowstatereleased": "Vrijgegeven",
+ "multipleteams": "Lid van meer dan één groep",
+ "noattempt": "Geen poging",
+ "nomoresubmissionsaccepted": "Enkel toegestaan voor deelnemers die extra tijd gekregen hebben.",
+ "noonlinesubmissions": "Voor deze opdracht hoef je niets online in te dienen",
+ "nosubmission": "Er is nog niets ingestuurd voor deze opdracht",
+ "notallparticipantsareshown": "Deelnemers die niet ingestuurd hebben worden niet getoond.",
+ "noteam": "Lid van geen enkele groep",
+ "notgraded": "Niet beoordeeld",
+ "numberofdraftsubmissions": "Kladwerken",
+ "numberofparticipants": "Deelnemers",
+ "numberofsubmissionsneedgrading": "Beoordeling nodig",
+ "numberofsubmittedassignments": "Ingestuurd",
+ "numberofteams": "Groepen",
+ "numwords": "{{$a}} woorden",
+ "outof": "{{$a.current}} van {{$a.total}}",
+ "overdue": "Opdracht {{$a}} te laat ingestuurd",
+ "savechanges": "Bewaar de wijzigingen",
+ "submission": "Ingestuurde opdracht",
+ "submissioneditable": "Leerling kan zijn ingestuurde opdracht bewerken",
+ "submissionnoteditable": "Leerling kan ingestuurde opdracht niet bewerken",
+ "submissionnotsupported": "Deze ingestuurde opdracht wordt niet ondersteund door de app en bevat mogelijk niet alle informatie.",
+ "submissionslocked": "Voor deze opdracht kan nu niets ingestuurd worden.",
+ "submissionstatus": "Status ingestuurde opdracht",
+ "submissionstatus_": "Geen ingestuurde opdracht",
+ "submissionstatus_draft": "Kladwerk (nog niet ingestuurd)",
+ "submissionstatus_marked": "Beoordeeld",
+ "submissionstatus_new": "Geen inzending",
+ "submissionstatus_reopened": "Heropend",
+ "submissionstatus_submitted": "Opdracht ingestuurd om te beoordelen",
+ "submissionstatusheading": "Status ingestuurde opdracht",
+ "submissionteam": "Groep",
+ "submitassignment": "Stuur opdracht in",
+ "submitassignment_help": "Als je deze opdracht hebt ingestuurd, dan zul je geen wijzigingen meer kunnen aanbrengen.",
+ "submittedearly": "Opdracht was {{$a}} te vroeg ingestuurd",
+ "submittedlate": "Opdracht was {{$a}} te laat ingestuurd",
+ "timemodified": "Laatst gewijzigd",
+ "timeremaining": "Resterende tijd",
+ "ungroupedusers": "De insteling \"Groeplidmaatschap vereist om een inzending te maken\" is ingeschakeld en sommige gebruikers zijn niet toegewezen aan een groep of zijn lid van meerdere groepen. Dit zal het hen onmogelijk maken om hun opdracht in te sturen.",
+ "unlimitedattempts": "Onbeperkt",
+ "userswhoneedtosubmit": "Leerlingen die nog moeten insturen: {{$a}}",
+ "userwithid": "Gebruiker met Id {{id}}",
+ "viewsubmission": "Bekijk ingestuurde opdracht",
+ "warningsubmissiongrademodified": "Het cijfer van je ingeleverde opdracht is op de site gewijzigd.",
+ "warningsubmissionmodified": "Het door de gebruiker ingestuurde bestand is gewijzigd op de site."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/no.json b/src/addon/mod/assign/lang/no.json
new file mode 100755
index 000000000..d6a462fbe
--- /dev/null
+++ b/src/addon/mod/assign/lang/no.json
@@ -0,0 +1,88 @@
+{
+ "acceptsubmissionstatement": "Bekreft betingelsene",
+ "addattempt": "Tillat et nytt forsøk",
+ "addnewattempt": "Legg til et nytt forsøk",
+ "addnewattemptfromprevious": "Legg til et nytt forsøk basert på forrige innlevering",
+ "addsubmission": "Legg til innlevering",
+ "allowsubmissionsanddescriptionfromdatesummary": "Informasjon om innleveringen og innsendingsskjemaet finner du her: {{$a}}",
+ "allowsubmissionsfromdate": "Tillat innsending fra",
+ "allowsubmissionsfromdatesummary": "Denne innleveringsoppgaven godtar innleveringer som er sendt inn fra {{$a}}",
+ "applytoteam": "Gjør karakterer og tilbakemeldinger gjeldende for helle gruppen",
+ "assignmentisdue": "Frist for innlevering",
+ "attemptnumber": "Forsøk nummer",
+ "attemptreopenmethod": "Forsøk gjenåpnet",
+ "attemptreopenmethod_manual": "Manuelt",
+ "attemptreopenmethod_untilpass": "Tillat nytt forsøk helt til innleveringen er bestått",
+ "attemptsettings": "Forsøksinnstillinger",
+ "cannoteditduetostatementsubmission": "Du kan ikke redigere et bidrag fordi vi ikke kunne hente betingelsene fra siden",
+ "cannotgradefromapp": "Noen karaktermetoder er ikke støttet av appen og kan ikke endres",
+ "confirmsubmission": "Er du sikker på at du vil levere inn arbeidet ditt til vurdering? Da kan du ikke gjøre flere endringer.",
+ "currentattempt": "Dette er forsøk {{$a}}.",
+ "currentattemptof": "Dette er forsøk {{$a.attemptnumber}} ( {{$a.maxattempts}} forsøk tillatt ).",
+ "currentgrade": "Nåværende karakter i karakterboka",
+ "cutoffdate": "Siste dato for innlevering",
+ "defaultteam": "Standardgruppe",
+ "duedate": "Innleveringsfrist",
+ "duedateno": "Ingen innleveringsfrist",
+ "duedatereached": "Fristen for denne innleveringen har passert.",
+ "editingstatus": "Redigerer status",
+ "editsubmission": "Rediger innleveringen",
+ "erroreditpluginsnotsupported": "Du kan ikke legge til eller endre bidrag i appen fordi noen plugins ikke støtter redigering:",
+ "extensionduedate": "Frist for forlengelse",
+ "grade": "Karakter",
+ "graded": "Karaktersatt",
+ "gradedby": "Vurdert av",
+ "gradedon": "Vurdert den",
+ "gradeoutof": "Karakter av {{$a}} mulige.",
+ "gradingstatus": "Karaktersettingsstatus",
+ "groupsubmissionsettings": "Innstillinger for gruppeinnleveringer",
+ "hiddenuser": "Deltaker",
+ "latesubmissions": "Sene innleveringer",
+ "latesubmissionsaccepted": "Tillat inntil {{$a}}",
+ "markingworkflowstate": "Status for arbeidsflyt",
+ "markingworkflowstateinmarking": "Under retting",
+ "markingworkflowstateinreview": "Blir vurdert",
+ "markingworkflowstatenotmarked": "Ikke vurdert",
+ "markingworkflowstatereadyforrelease": "Klar for publisering",
+ "markingworkflowstatereadyforreview": "Karaktersetting fullført",
+ "markingworkflowstatereleased": "Publisert",
+ "multipleteams": "Medlem av mer enn en gruppe",
+ "noattempt": "Ingen forsøk",
+ "nomoresubmissionsaccepted": "Kun for deltakere som har fått innvilget en utsettelse",
+ "noonlinesubmissions": "Denne innleveringen krever ikke at du skal levere inn noe på nett.",
+ "nosubmission": "Ingenting har blitt levert inn til denne innleveringen.",
+ "noteam": "Ikke medlem av noen grupper.",
+ "notgraded": "Ikke vurdert",
+ "numberofdraftsubmissions": "Utkast",
+ "numberofparticipants": "Deltakere",
+ "numberofsubmissionsneedgrading": "Må vurderes",
+ "numberofsubmittedassignments": "Levert",
+ "numberofteams": "Grupper",
+ "numwords": "{{$a}} ord",
+ "outof": "{{$a.current}} av {{$a.total}}",
+ "overdue": "Innleveringen er forsinket med: {{$a}}",
+ "savechanges": "Lagre endringer",
+ "submission": "Innlevering",
+ "submissioneditable": "Studenter kan redigere denne innleveringen",
+ "submissionnoteditable": "Studenter kan ikke redigere denne innleveringen",
+ "submissionslocked": "Denne innleveringen tar ikke imot innleveringer",
+ "submissionstatus": "Status på innlevering",
+ "submissionstatus_": "Ingen innlevering",
+ "submissionstatus_draft": "Utkast (ikke levert)",
+ "submissionstatus_marked": "Karaktersatt",
+ "submissionstatus_new": "Ingen innlevering",
+ "submissionstatus_reopened": "Gjenåpnet",
+ "submissionstatus_submitted": "Levert til vurdering",
+ "submissionstatusheading": "Status på innlevering",
+ "submissionteam": "Gruppe",
+ "submitassignment": "Send inn oppgavesvaret",
+ "submitassignment_help": "Når du har levert denne oppgavebesvarelsen, vil du ikke kunne gjøre flere endringer.",
+ "submittedearly": "Oppgavebesvarelsen ble levert {{$a}} for tidlig.",
+ "submittedlate": "Oppgavebesvarelsen ble levert {{$a}} for sent.",
+ "timemodified": "Sist endret",
+ "timeremaining": "Tid som gjenstår",
+ "ungroupedusers": "Innstillingen 'Krev gruppe for å levere' er slått på, men noen brukere er enten ikke medlem av noen grupper eller medlem i flere grupper. Dette vil forhindre dem fra å levere inn noe.",
+ "unlimitedattempts": "Ubegrenset",
+ "userswhoneedtosubmit": "Brukere som må levere: {{$a}}",
+ "viewsubmission": "Vis innlevering"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/pl.json b/src/addon/mod/assign/lang/pl.json
new file mode 100755
index 000000000..e86e6a783
--- /dev/null
+++ b/src/addon/mod/assign/lang/pl.json
@@ -0,0 +1,83 @@
+{
+ "addattempt": "Zezwalaj na inną próbę",
+ "addnewattempt": "Dodaj nową wersję pracy",
+ "addnewattemptfromprevious": "Dodaj nową wersję pracy na podstawie pracy przesłanej poprzednio",
+ "addsubmission": "Dodaj zadanie",
+ "allowsubmissionsanddescriptionfromdatesummary": "Szczegóły zadania oraz możliwość rozwiązania będzie dostępna od {{$a}}",
+ "allowsubmissionsfromdate": "Zezwól na przesyłanie rozwiązań od",
+ "allowsubmissionsfromdatesummary": "Rozwiązania tego zadania będzie można przesyłać od {{$a}}",
+ "applytoteam": "Zastosuj oceny i informacje zwrotne dla całej grupy",
+ "assignmentisdue": "Zadanie jest zaległe",
+ "attemptnumber": "Numer próby",
+ "attemptreopenmethod": "Ponowne otwieranie prób",
+ "attemptreopenmethod_manual": "Ręcznie",
+ "attemptreopenmethod_untilpass": "Automatycznie, aż przejdą",
+ "attemptsettings": "Ustawienia próby",
+ "confirmsubmission": "Czy na pewno chcesz wysłać swoje zadanie do oceny? Nie będziesz mógł po tej operacji dokonać żadnych zmian.",
+ "currentattempt": "To jest próba nr {{$a}}.",
+ "currentattemptof": "To jest próba nr {{$a.attemptnumber}} ( liczba dozwolonych prób: {{$a.maxattempts}} ).",
+ "currentgrade": "Bieżąca ocena w dzienniku ocen",
+ "cutoffdate": "Ostateczny termin",
+ "defaultteam": "Domyślna grupa",
+ "duedate": "Termin oddania",
+ "duedateno": "Brak terminu oddania",
+ "duedatereached": "Minął termin oddania tego zadania",
+ "editingstatus": "Edycja statusu",
+ "editsubmission": "Edytuj zadanie",
+ "extensionduedate": "Termin przedłużenia",
+ "grade": "Ocena",
+ "graded": "Ocenione",
+ "gradedby": "Ocenione przez",
+ "gradedon": "Ocenione dnia",
+ "gradeoutof": "Ocena z max. {{$a}}",
+ "gradingstatus": "Stan oceniania",
+ "groupsubmissionsettings": "Ustawienia zadań grupowych",
+ "hiddenuser": "Uczestnik",
+ "latesubmissions": "Zadania oddane po terminie",
+ "latesubmissionsaccepted": "Dozwolone aż do {{$a}}",
+ "markingworkflowstate": "Stan przepływu pracy w ocenianiu",
+ "markingworkflowstateinmarking": "W trakcie oceniania",
+ "markingworkflowstateinreview": "W trakcie przeglądu",
+ "markingworkflowstatenotmarked": "Nie ocenione",
+ "markingworkflowstatereadyforrelease": "Gotowe do publikacji",
+ "markingworkflowstatereadyforreview": "Ocenianie zakończone",
+ "markingworkflowstatereleased": "Ocena opublikowana",
+ "multipleteams": "Członek więcej niż jednej grupy",
+ "noattempt": "Nie próbowano",
+ "nomoresubmissionsaccepted": "Żadne rozwiązania nie będą akceptowane",
+ "noonlinesubmissions": "To zadanie nie wymaga wysyłania niczego online",
+ "nosubmission": "Żadne rozwiązanie nie zostało przesłane do tego zadania",
+ "noteam": "Nie jesteś członkiem żadnej grupy",
+ "notgraded": "Nie ocenione",
+ "numberofdraftsubmissions": "Wersja robocza",
+ "numberofparticipants": "Uczestnicy",
+ "numberofsubmissionsneedgrading": "Wymaga oceny",
+ "numberofsubmittedassignments": "Nadesłane",
+ "numberofteams": "Grupy",
+ "numwords": "{{$a}} słów",
+ "outof": "{{$a.current}} z {{$a.total}}",
+ "overdue": "Opóźnienie w przesłaniu: {{$a}}",
+ "savechanges": "Zapisz zmiany",
+ "submission": "Oddane zadanie",
+ "submissioneditable": "Student może edytować to zadanie",
+ "submissionnoteditable": "Student nie może edytować tego zadania",
+ "submissionslocked": "To zadanie nie akceptuje przesyłania rozwiązań",
+ "submissionstatus": "Status przesłanego zadania",
+ "submissionstatus_": "Brak przesłanego zadania",
+ "submissionstatus_draft": "Wersja robocza",
+ "submissionstatus_marked": "Ocenione",
+ "submissionstatus_new": "Brak zadania",
+ "submissionstatus_reopened": "Ponownie otwarte",
+ "submissionstatus_submitted": "Przesłane do oceny",
+ "submissionstatusheading": "Status przesłanego zadania",
+ "submissionteam": "Grupa",
+ "submitassignment": "Zgłoś zadanie",
+ "submitassignment_help": "Po zgłoszeniu tego zadania, nie będzie można wprowadzić zmian.",
+ "submittedearly": "Zadanie zostało złożone {{$a}} przed terminem",
+ "submittedlate": "Zadanie zostało złożone {{$a}} po terminie",
+ "timemodified": "Ostatnio modyfikowane",
+ "timeremaining": "Pozostały czas",
+ "unlimitedattempts": "Nieograniczony",
+ "userswhoneedtosubmit": "Użytkownicy, którzy muszą przesłać zadanie: {{$a}}",
+ "viewsubmission": "Wyświetl pracę domową"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/pt-br.json b/src/addon/mod/assign/lang/pt-br.json
new file mode 100755
index 000000000..96c28d0ce
--- /dev/null
+++ b/src/addon/mod/assign/lang/pt-br.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Por favor aceite a declaração do envio.",
+ "addattempt": "Permitir outra tentativa",
+ "addnewattempt": "Adicionar uma nova tentativa",
+ "addnewattemptfromprevious": "Adicionar uma nova tentativa baseada na tentativa anterior",
+ "addsubmission": "Adicionar tarefa",
+ "allowsubmissionsanddescriptionfromdatesummary": "Os detalhes da tarefa e formulário de envio ficarão disponíveis a partir de {{$a}}",
+ "allowsubmissionsfromdate": "Permite envios a partir de",
+ "allowsubmissionsfromdatesummary": "Esta tarefa aceitará envios a partir de {{$a}}",
+ "applytoteam": "Habilitar notas e feedback para todo grupo",
+ "assignmentisdue": "Tarefa encerrada",
+ "attemptnumber": "Número da tentativa",
+ "attemptreopenmethod": "Tentativas reabertas",
+ "attemptreopenmethod_manual": "Manualmente",
+ "attemptreopenmethod_untilpass": "Automaticamente até que passe",
+ "attemptsettings": "Configurações de tentativa",
+ "cannoteditduetostatementsubmission": "Você não pode adicionar ou editar um envio no aplicativo porque nós não conseguimos receber a declaração de envio do site.",
+ "cannotgradefromapp": "Alguns métodos de avaliação ainda não são suportadas pelo aplicativo e não podem ser modificadas.",
+ "cannotsubmitduetostatementsubmission": "Você não pode enviar para avaliação pelo aplicativo porque nós não conseguimos receber a declaração de envio do site.",
+ "confirmsubmission": "Tem certeza de que deseja enviar seu trabalho para a classificação? Você não será capaz de fazer mais modificações.",
+ "currentattempt": "Esta é a tentativa {{$a}} .",
+ "currentattemptof": "Esta é a tentativa {{$a.attemptnumber}} ({{$a.maxattempts}} tentativas permitidas).",
+ "currentgrade": "Nota atual no livro de notas",
+ "cutoffdate": "Data limite",
+ "defaultteam": "Grupo padrão",
+ "duedate": "Data de entrega",
+ "duedateno": "Nenhuma data de entrega",
+ "duedatereached": "A data de encerramento para essa tarefa já foi atingida",
+ "editingstatus": "Editar estado",
+ "editsubmission": "Editar envio",
+ "erroreditpluginsnotsupported": "Você não pode adicionar ou editar um envio no aplicativo por causa que alguns plugins não são suportados para edição:",
+ "errorshowinginformation": "Nós não podemos exibir as informações do envio",
+ "extensionduedate": "Extensão do prazo de entrega",
+ "feedbacknotsupported": "Esse feedback não é suportado pelo aplicativo e pode não conter todas as informações",
+ "grade": "Avaliação",
+ "graded": "Avaliado",
+ "gradedby": "Avaliado por",
+ "gradedon": "Avaliado em",
+ "gradenotsynced": "Avaliação não sincronizada",
+ "gradeoutof": "Nota até {{$a}}",
+ "gradingstatus": "Status da avaliação",
+ "groupsubmissionsettings": "Configurações de envio em grupo",
+ "hiddenuser": "Participante",
+ "latesubmissions": "Submissões atrasadas",
+ "latesubmissionsaccepted": "Permitido até {{$a}}",
+ "markingworkflowstate": "Estado do fluxo de avaliação",
+ "markingworkflowstateinmarking": "Em avaliação",
+ "markingworkflowstateinreview": "Em revisão",
+ "markingworkflowstatenotmarked": "Não avaliado",
+ "markingworkflowstatereadyforrelease": "Pronto para publicação",
+ "markingworkflowstatereadyforreview": "Avaliação concluída",
+ "markingworkflowstatereleased": "Publicado",
+ "multipleteams": "Membro de mais de um grupo",
+ "noattempt": "Nenhuma tentativa",
+ "nomoresubmissionsaccepted": "Só é permitido para os participantes que tenham beneficiado de uma extensão",
+ "noonlinesubmissions": "Esta tarefa não requer o envio online",
+ "nosubmission": "Nada foi enviado para esta tarefa",
+ "notallparticipantsareshown": "Participantes sem permissão não são exibidos",
+ "noteam": "Você não é membro de nenhum grupo.",
+ "notgraded": "Não há notas",
+ "numberofdraftsubmissions": "Rascunhos",
+ "numberofparticipants": "Participantes",
+ "numberofsubmissionsneedgrading": "Precisa de avaliação",
+ "numberofsubmittedassignments": "Enviado",
+ "numberofteams": "Grupos",
+ "numwords": "{{$a}} palavras",
+ "outof": "{{$a.current}} de {{$a.total}}",
+ "overdue": "A tarefa está atrasada há: {{$a}}",
+ "savechanges": "Salvar mudanças",
+ "submission": "Envio de tarefas",
+ "submissioneditable": "Estudantes podem editar essa submissão",
+ "submissionnoteditable": "Estudante não pode editar este envio",
+ "submissionnotsupported": "Esse envio não é suportado pelo aplicativo e pode não conter todas as informações",
+ "submissionslocked": "A tarefa não está aceitando envios",
+ "submissionstatus": "Status de envio",
+ "submissionstatus_": "Nenhum envio",
+ "submissionstatus_draft": "Rascunho (não enviado)",
+ "submissionstatus_marked": "Avaliado",
+ "submissionstatus_new": "Nenhum envio",
+ "submissionstatus_reopened": "Reaberto",
+ "submissionstatus_submitted": "Enviado para avaliação",
+ "submissionstatusheading": "Status de envio",
+ "submissionteam": "Grupo",
+ "submitassignment": "Enviar tarefa em definitivo",
+ "submitassignment_help": "Uma vez que a tarefa for enviada você não poderá mais fazer alterações.",
+ "submittedearly": "A tarefa foi enviada {{$a}} adiantado",
+ "submittedlate": "A tarefa foi enviada {{$a}} atrasada",
+ "timemodified": "Última modificação",
+ "timeremaining": "Tempo restante",
+ "ungroupedusers": "A configuração \"Somente membros de grupo podem fazer envio\" está habilitada e alguns usuários não são membros de nenhum grupo ou são membros de mais de um grupo, portanto, não conseguem fazer envios.",
+ "unlimitedattempts": "Ilimitado",
+ "userswhoneedtosubmit": "Usuários que precisam enviar: {{$a}}",
+ "userwithid": "Usuário com id {{id}}",
+ "viewsubmission": "Ver envio",
+ "warningsubmissiongrademodified": "A nota do envio foi modificada no site.",
+ "warningsubmissionmodified": "O envio do usuário foi modificado no site."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/pt.json b/src/addon/mod/assign/lang/pt.json
new file mode 100755
index 000000000..a3e2d08c8
--- /dev/null
+++ b/src/addon/mod/assign/lang/pt.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Por favor, aceite a declaração de submissão.",
+ "addattempt": "Permitir nova tentativa",
+ "addnewattempt": "Adicionar nova tentativa",
+ "addnewattemptfromprevious": "Adicionar nova tentativa baseada na submissão anterior",
+ "addsubmission": "Enviar trabalho",
+ "allowsubmissionsanddescriptionfromdatesummary": "O enunciado do trabalho apenas estará disponível a partir de {{$a}}",
+ "allowsubmissionsfromdate": "Aceitar trabalhos a partir de",
+ "allowsubmissionsfromdatesummary": "Pode submeter o trabalho a partir de {{$a}}",
+ "applytoteam": "Atribuir notas e comentários a todo o grupo",
+ "assignmentisdue": "Já terminou o prazo para submeter o trabalho",
+ "attemptnumber": "Número da tentativa",
+ "attemptreopenmethod": "Tentativas reabertas",
+ "attemptreopenmethod_manual": "Manualmente",
+ "attemptreopenmethod_untilpass": "Automaticamente até obter aproveitamento",
+ "attemptsettings": "Configurações da tentativa",
+ "cannoteditduetostatementsubmission": "Não pode adicionar ou editar uma submissão na aplicação porque não foi possível recuperar a declaração de submissão desde o site.",
+ "cannotgradefromapp": "Alguns métodos de avaliação ainda não são suportados pela aplicação e não podem ser modificados.",
+ "cannotsubmitduetostatementsubmission": "Não pode submeter o trabalho na aplicação porque não foi possível obter a declaração de submissão desde o site.",
+ "confirmsubmission": "Tem a certeza de que pretende submeter o seu trabalho para avaliação? Não poderá realizar mais alterações.",
+ "currentattempt": "Esta é a tentativa {{$a}}.",
+ "currentattemptof": "Esta é a {{$a.attemptnumber}}ª tentativa (em {{$a.maxattempts}} tentativa(s) permitida(s)).",
+ "currentgrade": "Nota atual na pauta",
+ "cutoffdate": "Data de fecho",
+ "defaultteam": "Grupo predefinido",
+ "duedate": "Data limite para submeter trabalhos",
+ "duedateno": "Sem data limite",
+ "duedatereached": "A data limite de submissão deste trabalho já foi ultrapassada.",
+ "editingstatus": "Editar o estado",
+ "editsubmission": "Editar submissão",
+ "erroreditpluginsnotsupported": "Não pode adicionar ou editar uma submissão na aplicação porque alguns módulos ainda não são suportados para edição.",
+ "errorshowinginformation": "Não é possível mostrar informações da submissão",
+ "extensionduedate": "Prolongamento da data limite",
+ "feedbacknotsupported": "Este feedback não é suportado pela aplicação e pode não conter toda a informação.",
+ "grade": "Avaliação",
+ "graded": "Avaliado",
+ "gradedby": "Avaliado por",
+ "gradedon": "Avaliado em",
+ "gradenotsynced": "Nota não está sincronizada",
+ "gradeoutof": "Nota (de 0 a {{$a}})",
+ "gradingstatus": "Estado da avaliação",
+ "groupsubmissionsettings": "Configurações das submissões em grupo",
+ "hiddenuser": "Participante",
+ "latesubmissions": "Submissões com atraso",
+ "latesubmissionsaccepted": "Disponível até {{$a}}",
+ "markingworkflowstate": "Estado do processo de avaliação",
+ "markingworkflowstateinmarking": "Em avaliação",
+ "markingworkflowstateinreview": "Em validação",
+ "markingworkflowstatenotmarked": "Não avaliado",
+ "markingworkflowstatereadyforrelease": "Avaliação validada",
+ "markingworkflowstatereadyforreview": "Avaliação concluída",
+ "markingworkflowstatereleased": "Avaliação publicada",
+ "multipleteams": "Inscrito em mais do que um grupo",
+ "noattempt": "Nenhuma tentativa",
+ "nomoresubmissionsaccepted": "Apenas disponível aos alunos a quem tenha sido concedida uma extensão do prazo.",
+ "noonlinesubmissions": "Este trabalho não requer que submeta nada online.",
+ "nosubmission": "Ainda não foi submetido nada neste Trabalho",
+ "notallparticipantsareshown": "Não são mostrados os participantes sem submissão.",
+ "noteam": "Não está inscrito em nenhum grupo",
+ "notgraded": "Sem avaliação",
+ "numberofdraftsubmissions": "Trabalhos em curso",
+ "numberofparticipants": "Número de alunos",
+ "numberofsubmissionsneedgrading": "Requerem avaliação",
+ "numberofsubmittedassignments": "Número de trabalhos submetidos",
+ "numberofteams": "Grupos",
+ "numwords": "{{$a}} palavra(s)",
+ "outof": "{{$a.current}} de {{$a.total}}",
+ "overdue": "Trabalho entregue com atraso de {{$a}}",
+ "savechanges": "Gravar alterações",
+ "submission": "Trabalho",
+ "submissioneditable": "Os alunos podem editar esta submissão",
+ "submissionnoteditable": "O aluno não pode editar esta submissão",
+ "submissionnotsupported": "Esta submissão não é suportada pela aplicação e pode não conter toda a informação.",
+ "submissionslocked": "Este trabalho não está a aceitar submissões",
+ "submissionstatus": "Estado da submissão",
+ "submissionstatus_": "Não submetido",
+ "submissionstatus_draft": "Trabalho em curso (não submetido)",
+ "submissionstatus_marked": "Avaliado",
+ "submissionstatus_new": "Nenhuma submissão",
+ "submissionstatus_reopened": "Reaberta",
+ "submissionstatus_submitted": "Submetido para avaliação",
+ "submissionstatusheading": "Estado do trabalho",
+ "submissionteam": "Grupo",
+ "submitassignment": "Submeter o trabalho",
+ "submitassignment_help": "Assim que este trabalho for submetido não poderá fazer mais alterações.",
+ "submittedearly": "O trabalho foi submetido '{{$a}}' antes do fim do prazo",
+ "submittedlate": "O trabalho foi submetido {{$a}} depois do prazo",
+ "timemodified": "Última alteração",
+ "timeremaining": "Tempo restante",
+ "ungroupedusers": "A configuração 'Requer grupo para submeter trabalho' está ativa e existem utilizadores que não pertencem a nenhum grupo, ou que se encontram inscritos em mais do que um, o que fará com que estes fiquem impossibilitados de submeter os seus trabalhos.",
+ "unlimitedattempts": "Ilimitado",
+ "userswhoneedtosubmit": "Utilizadores que têm de submeter: {{$a}}",
+ "userwithid": "Utilizador com ID {{id}}",
+ "viewsubmission": "Ver trabalho",
+ "warningsubmissiongrademodified": "A nota da submissão foi modificada no site.",
+ "warningsubmissionmodified": "A submissão do utilizador foi modificada no site."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/ro.json b/src/addon/mod/assign/lang/ro.json
new file mode 100755
index 000000000..00faa4cbb
--- /dev/null
+++ b/src/addon/mod/assign/lang/ro.json
@@ -0,0 +1,66 @@
+{
+ "addattempt": "Permite altă încercare",
+ "addnewattempt": "Adaugă o nouă încercare",
+ "addsubmission": "Adaugă lucrare",
+ "allowsubmissionsfromdate": "Acceptați lucrări de la",
+ "allowsubmissionsfromdatesummary": "Se acceptă lucrări de la {{$a}}",
+ "applytoteam": "Aplică notele și feedback-ul întregului grup",
+ "assignmentisdue": "Data predării",
+ "attemptnumber": "Numărul încercării",
+ "attemptreopenmethod": "Încercările sunt disponibile din nou",
+ "attemptreopenmethod_manual": "Manual",
+ "attemptsettings": "Setări încerecre",
+ "currentattempt": "Aceasta este încercarea {{$a}}.",
+ "currentattemptof": "Aceasta este încercarea {{$a.attemptnumber}} ( {{$a.maxattempts}} încercări permise ).",
+ "currentgrade": "Nota actuală în catalog",
+ "defaultteam": "Grup implicit",
+ "duedate": "Termen de predare",
+ "duedateno": "Fără termen de predare",
+ "duedatereached": "Data predării acestei lucrări este depășită",
+ "editingstatus": "Se editează statusul",
+ "editsubmission": "Editare temă trimisă",
+ "extensionduedate": "Termen de predare extins",
+ "grade": "Notează",
+ "graded": "Notat",
+ "gradedby": "Notat de",
+ "gradedon": "Notat în data de",
+ "gradeoutof": "O notă din {{$a}}",
+ "hiddenuser": "Participant",
+ "latesubmissionsaccepted": "Permis până în {{$a}}",
+ "markingworkflowstateinmarking": "Se notează",
+ "markingworkflowstateinreview": "Se revizuiește",
+ "markingworkflowstatenotmarked": "Nu este notat",
+ "markingworkflowstatereadyforrelease": "Gata de lansare",
+ "markingworkflowstatereadyforreview": "Notare completă",
+ "markingworkflowstatereleased": "Lansat",
+ "multipleteams": "Membru al mai mult de un grup",
+ "noattempt": "Fără încercare",
+ "nosubmission": "Nu s-a primit răspuns la această sarcină de lucru",
+ "noteam": "Nu este un membru al unui grup",
+ "notgraded": "Fără notă",
+ "numberofdraftsubmissions": "Draft-uri",
+ "numberofparticipants": "Participanți",
+ "numberofsubmissionsneedgrading": "Trebuie să fie notat",
+ "numberofsubmittedassignments": "Trimis",
+ "numberofteams": "Grupuri",
+ "numwords": "{{$a}} cuvinte",
+ "outof": "{{$a.current}} din {{$a.total}}",
+ "savechanges": "Salvează modificări",
+ "submission": "Temă trimisă",
+ "submissioneditable": "Cursanții își pot edita lucrările trimise",
+ "submissionnoteditable": "Cursanții nu pot să editeze aceastpă lucrare",
+ "submissionstatus_": "Nu există răspunsuri",
+ "submissionstatus_draft": "Draft (netrimis)",
+ "submissionstatus_marked": "Notat",
+ "submissionstatus_new": "nu există răspunsuri",
+ "submissionstatus_reopened": "Redeschis",
+ "submissionteam": "Grup",
+ "submitassignment": "Trimite răspuns corespunzător sarcinii de lucru",
+ "submittedearly": "Sarcina de lucru a fost rezolvată {{$a}} mai repede",
+ "submittedlate": "Sarcina de lucru a fost rezolvată {{$a}} mai târziu",
+ "timemodified": "Ora la care a fost modificat",
+ "timeremaining": "Timp rămas",
+ "unlimitedattempts": "Nelimitat",
+ "userwithid": "Utilizatorul cu ID-ul {{id}}",
+ "viewsubmission": "Vezi răspunsurile"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/ru.json b/src/addon/mod/assign/lang/ru.json
new file mode 100755
index 000000000..16cdb882d
--- /dev/null
+++ b/src/addon/mod/assign/lang/ru.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Пожалуйста, примите заявление к предоставляемому ответу.",
+ "addattempt": "Разрешить еще одну попытку",
+ "addnewattempt": "Добавить новую попытку",
+ "addnewattemptfromprevious": "Добавить новую попытку на основе предыдущего представления",
+ "addsubmission": "Добавить ответ на задание",
+ "allowsubmissionsanddescriptionfromdatesummary": "Описание задания и возможность отправлять ответов доступны с {{$a}}",
+ "allowsubmissionsfromdate": "Разрешить выполнение задания с",
+ "allowsubmissionsfromdatesummary": "Это назначение будет приниматься с {{$a}}",
+ "applytoteam": "Применить оценки и отзывы для всей группы.",
+ "assignmentisdue": "Задание сдано",
+ "attemptnumber": "Номер попытки",
+ "attemptreopenmethod": "Разрешать новые попытки",
+ "attemptreopenmethod_manual": "Вручную",
+ "attemptreopenmethod_untilpass": "Автоматически (до проходной оценки)",
+ "attemptsettings": "Настройки попытки",
+ "cannoteditduetostatementsubmission": "Вы не можете добавить или отредактировать ответ в приложении, потому что не удалось получить с сайта заявление к предоставляемому ответу.",
+ "cannotgradefromapp": "Определённые методы оценки ещё не поддерживаются приложением и не могут быть изменены.",
+ "cannotsubmitduetostatementsubmission": "Вы не можете ответить в приложении, потому что не удалось получить с сайта заявление к предоставляемому ответу.",
+ "confirmsubmission": "Вы уверены, что хотите представить свою работу для оценивания? Вы больше не сможете изменить свой ответ.",
+ "currentattempt": "Попытка {{$a}}.",
+ "currentattemptof": "Номер этой попытки - {{$a.attemptnumber}}. (Разрешено попыток - {{$a.maxattempts}})",
+ "currentgrade": "Текущая оценка в журнале",
+ "cutoffdate": "Запретить отправку с",
+ "defaultteam": "Группа по умолчанию",
+ "duedate": "Последний срок сдачи",
+ "duedateno": "Срок сдачи не ограничен",
+ "duedatereached": "Срок сдачи этого задания уже истек",
+ "editingstatus": "Изменение статуса",
+ "editsubmission": "Редактировать ответ",
+ "erroreditpluginsnotsupported": "Вы не можете добавлять или изменять ответ в приложении, потому что определённые плагины пока не поддерживают редактирование.",
+ "errorshowinginformation": "Информация об ответе не может быть отображена.",
+ "extensionduedate": "Срок продления",
+ "feedbacknotsupported": "Эта обратная связь не поддерживается приложением и может содержать не всю информацию.",
+ "grade": "Оценка",
+ "graded": "Оценено",
+ "gradedby": "Оценено",
+ "gradedon": "Оценено в",
+ "gradenotsynced": "Оценка не синхронизирована",
+ "gradeoutof": "Оценка из {{$a}}",
+ "gradingstatus": "Состояние оценивания",
+ "groupsubmissionsettings": "Настройки представления работ группы",
+ "hiddenuser": "Участник",
+ "latesubmissions": "Поступившие представления",
+ "latesubmissionsaccepted": "Разрешено до {{$a}}",
+ "markingworkflowstate": "Этап процесса оценивания",
+ "markingworkflowstateinmarking": "Оценивается",
+ "markingworkflowstateinreview": "Проверяется",
+ "markingworkflowstatenotmarked": "Еще не оценивалось",
+ "markingworkflowstatereadyforrelease": "Готово к публикации",
+ "markingworkflowstatereadyforreview": "Оценивание завершено",
+ "markingworkflowstatereleased": "Опубликовано",
+ "multipleteams": "Член нескольких групп",
+ "noattempt": "Ни одной попытки",
+ "nomoresubmissionsaccepted": "Разрешено только для участников, которым было предоставлено продление срока.",
+ "noonlinesubmissions": "Ответ на задание должен быть представлен вне сайта",
+ "nosubmission": "Ничего не было представлено",
+ "notallparticipantsareshown": "Участники, которые не дали ответ, не показаны.",
+ "noteam": "Не является членом какой-либо группы",
+ "notgraded": "Не оценено",
+ "numberofdraftsubmissions": "Черновик",
+ "numberofparticipants": "Участники",
+ "numberofsubmissionsneedgrading": "Требуют оценки",
+ "numberofsubmittedassignments": "Ответы",
+ "numberofteams": "Группы",
+ "numwords": "всего слов - {{$a}}",
+ "outof": "{{$a.current}} из {{$a.total}}",
+ "overdue": "Задание просрочено на: {{$a}}",
+ "savechanges": "Сохранить",
+ "submission": "Ответ",
+ "submissioneditable": "Студент может править свой ответ",
+ "submissionnoteditable": "Студент не может исправлять этот ответ",
+ "submissionnotsupported": "Этот ответ не поддерживается приложением и может содержать не всю информацию.",
+ "submissionslocked": "Ответы на это задание не принимаются",
+ "submissionstatus": "Состояние ответа на задание",
+ "submissionstatus_": "Нет ответа на задание",
+ "submissionstatus_draft": "Черновик (не представлен)",
+ "submissionstatus_marked": "Оценено",
+ "submissionstatus_new": "Ответ не представлен",
+ "submissionstatus_reopened": "Возобновлено",
+ "submissionstatus_submitted": "Отправлено для оценивания",
+ "submissionstatusheading": "Состояние ответа",
+ "submissionteam": "Группы",
+ "submitassignment": "Отправить на проверку",
+ "submitassignment_help": "Однажды представив ответ на это задание Вы больше не сможете изменить его.",
+ "submittedearly": "Задание представлено заранее - {{$a}}",
+ "submittedlate": "Задание представлено с опозданием - {{$a}}",
+ "timemodified": "Последнее изменение",
+ "timeremaining": "Оставшееся время",
+ "ungroupedusers": "Включен параметр «Нужно быть в группе для отправки ответа». Некоторые пользователи не являются членами групп или являются членами нескольких групп, эти пользователи не смогут отправить ответы на задание.",
+ "unlimitedattempts": "Неограничено",
+ "userswhoneedtosubmit": "Пользователи, которые должны представить ответ: {{$a}}",
+ "userwithid": "Пользователь с ID {{id}}",
+ "viewsubmission": "Просмотр ответов",
+ "warningsubmissiongrademodified": "Оценка ответа была изменена на сайте.",
+ "warningsubmissionmodified": "Ответ пользователя был изменён на сайте."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/sr-cr.json b/src/addon/mod/assign/lang/sr-cr.json
new file mode 100755
index 000000000..3d0bf6182
--- /dev/null
+++ b/src/addon/mod/assign/lang/sr-cr.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Молимо вас да прихватите изјаву о предаји рада.",
+ "addattempt": "Дозволи други покушај",
+ "addnewattempt": "Додај нови покушај",
+ "addnewattemptfromprevious": "Додај нови покушај на основу претходно предатог рада",
+ "addsubmission": "Додај рад",
+ "allowsubmissionsanddescriptionfromdatesummary": "Детаљније информације о задатку и образац за предају радова биће доступни од {{$a}}",
+ "allowsubmissionsfromdate": "Дозволи предају од",
+ "allowsubmissionsfromdatesummary": "Овај задатак ће прихватити предају рада од {{$a}}",
+ "applytoteam": "Примените оцене и повратне информације на целу групу",
+ "assignmentisdue": "Крајњи рок за предају је истекао",
+ "attemptnumber": "Број покушаја",
+ "attemptreopenmethod": "Поновно отварање рада",
+ "attemptreopenmethod_manual": "Ручно",
+ "attemptreopenmethod_untilpass": "Аутоматски док не добије прелазну оцену",
+ "attemptsettings": "Подешавања покушаја",
+ "cannoteditduetostatementsubmission": "Не можете да додате или мењате рад у апликацији јер нисмо могли да преузмемо са сајта изјаву о предаји рада.",
+ "cannotgradefromapp": "Апликације још увек не подржава неке методе оцењивања и оне не могу да се мењају.",
+ "cannotsubmitduetostatementsubmission": "Не можете да предате рад на оцењивање у апликацији јер нисмо могли да преузмемо са сајта изјаву о предаји рада.",
+ "confirmsubmission": "Да ли сте сигурни да желите да предате свој рад на оцењивање? Више нећете моћи да га мењате.",
+ "currentattempt": "Ово је покушај {{$a}}.",
+ "currentattemptof": "Ово је покушај {{$a.attemptnumber}} ( {{$a.maxattempts}} дозвољена/их покушаја ).",
+ "currentgrade": "Тренутна оцена у књизи оцена",
+ "cutoffdate": "Дефинитивни рок",
+ "defaultteam": "Подразумевана група",
+ "duedate": "Крајњи рок",
+ "duedateno": "Нема крајњег рока",
+ "duedatereached": "Крајњи рок за овај задатак је сада истекао",
+ "editingstatus": "Статус уређивања",
+ "editsubmission": "Уреди рад",
+ "erroreditpluginsnotsupported": "Не можете да додате или мењате рад у апликацији јер неки додаци немају подршку за уређивање:",
+ "errorshowinginformation": "Не можемо да прикажемо информације о предатом раду",
+ "extensionduedate": "Продужени рок",
+ "feedbacknotsupported": "Аплликација не подржава ову повратну информацију. Могуће је да она не садржи све информације.",
+ "grade": "Оцена",
+ "graded": "Оцењено",
+ "gradedby": "Оценио/ла",
+ "gradedon": "Оцењено",
+ "gradenotsynced": "Оцена није синхронизована",
+ "gradeoutof": "Оцена од {{$a}}",
+ "gradingstatus": "Статус оцењивања",
+ "groupsubmissionsettings": "Подешавања за групну предају рада",
+ "hiddenuser": "Учесник",
+ "latesubmissions": "Касно предати радови",
+ "latesubmissionsaccepted": "Дозвољено до {{$a}}",
+ "markingworkflowstate": "Стање тока оцењивања",
+ "markingworkflowstateinmarking": "Оцењује се",
+ "markingworkflowstateinreview": "На прегледу",
+ "markingworkflowstatenotmarked": "Није оцењено",
+ "markingworkflowstatereadyforrelease": "Спремно за објаву",
+ "markingworkflowstatereadyforreview": "Оцењивање завршено",
+ "markingworkflowstatereleased": "Објављено",
+ "multipleteams": "Члан више од једне групе",
+ "noattempt": "Нема покушаја",
+ "nomoresubmissionsaccepted": "Дозвољено само полазницима којима је одобрен продужетак",
+ "noonlinesubmissions": "Овај задатак не тражи од вас да било штa предате онлајн",
+ "nosubmission": "За овај задатак још ништа није предато",
+ "notallparticipantsareshown": "Учесници који нису предали рад се не приказују",
+ "noteam": "Није члан ниједне групе.",
+ "notgraded": "Није оцењено",
+ "numberofdraftsubmissions": "Нацрти",
+ "numberofparticipants": "Учесници",
+ "numberofsubmissionsneedgrading": "Тражи оцењивање",
+ "numberofsubmittedassignments": "Предато",
+ "numberofteams": "Групе",
+ "numwords": "{{$a}} реч(и)",
+ "outof": "{{$a.current}} од {{$a.total}}",
+ "overdue": "Крајњи рок за предају рада је истекао пре: {{$a}}",
+ "savechanges": "Сачувај промене",
+ "submission": "Предати рад",
+ "submissioneditable": "Полазници могу да уређују овај задатак",
+ "submissionnoteditable": "Полазници не могу да уређују овај задатак",
+ "submissionnotsupported": "Апликација не подржава овај предати рад. Могуће је да рад не садржи све информације.",
+ "submissionslocked": "Овај задатак не прихвата предају радова",
+ "submissionstatus": "Статус предатог рада",
+ "submissionstatus_": "Нема предатих радова",
+ "submissionstatus_draft": "Нацрт рада (није предато)",
+ "submissionstatus_marked": "Оцењено",
+ "submissionstatus_new": "Нови предати рад",
+ "submissionstatus_reopened": "Поново отворено",
+ "submissionstatus_submitted": "Предато за оцењивање",
+ "submissionstatusheading": "Статус предатог рада",
+ "submissionteam": "Група",
+ "submitassignment": "Predaj rad",
+ "submitassignment_help": "Оног тренутка када предате овај рад више нећете моћи да га мењате.",
+ "submittedearly": "Задатак је предат {{$a}} раније",
+ "submittedlate": "Задатак је предат {{$a}} касније",
+ "timemodified": "Последње измене",
+ "timeremaining": "Преостало време",
+ "ungroupedusers": "Подешавање 'Неопходна је група за предају рада' је омогућено, али неки корисници нису чланови ниједне групе, или су чланови више од једне групе, тако да не могу да предају рад.",
+ "unlimitedattempts": "Неограничено",
+ "userswhoneedtosubmit": "Корисници који треба да предају решење: {{$a}}",
+ "userwithid": "Корисник са ID ознаком {{id}}",
+ "viewsubmission": "Погледај предати рад",
+ "warningsubmissiongrademodified": "Оцена предатог рада је измењена на сајту.",
+ "warningsubmissionmodified": "Предати рад корисника је измењен на сајту."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/sr-lt.json b/src/addon/mod/assign/lang/sr-lt.json
new file mode 100755
index 000000000..ee08bd633
--- /dev/null
+++ b/src/addon/mod/assign/lang/sr-lt.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Molimo vas da prihvatite izjavu o predaji rada.",
+ "addattempt": "Dozvoli drugi pokušaj",
+ "addnewattempt": "Dodaj novi pokušaj",
+ "addnewattemptfromprevious": "Dodaj novi pokušaj na osnovu prethodno predatog rada",
+ "addsubmission": "Dodaj rad",
+ "allowsubmissionsanddescriptionfromdatesummary": "Detaljnije informacije o zadatku i obrazac za predaju radova biće dostupni od {{$a}}",
+ "allowsubmissionsfromdate": "Dozvoli predaju od",
+ "allowsubmissionsfromdatesummary": "Ovaj zadatak će prihvatiti predaju rada od {{$a}}",
+ "applytoteam": "Primenite ocene i povratne informacije na celu grupu",
+ "assignmentisdue": "Krajnji rok za predaju je istekao",
+ "attemptnumber": "Broj pokušaja",
+ "attemptreopenmethod": "Ponovno otvaranje rada",
+ "attemptreopenmethod_manual": "Ručno",
+ "attemptreopenmethod_untilpass": "Automatski dok ne dobije prelaznu ocenu",
+ "attemptsettings": "Podešavanja pokušaja",
+ "cannoteditduetostatementsubmission": "Ne možete da dodate ili menjate rad u aplikaciji jer nismo mogli da preuzmemo sa sajta izjavu o predaji rada.",
+ "cannotgradefromapp": "Aplikacije ne podržava neke metode ocenjivanja i one ne mogu da se menjaju.",
+ "cannotsubmitduetostatementsubmission": "Ne možete da predate rad na ocenjivanje u aplikaciji jer nismo mogli da preuzmemo sa sajta izjavu o predaji rada.",
+ "confirmsubmission": "Da li ste sigurni da želite da predate svoj rad na ocenjivanje? Više nećete moći da ga menjate.",
+ "currentattempt": "Ovo je pokušaj {{$a}}.",
+ "currentattemptof": "Ovo je pokušaj {{$a.attemptnumber}} ( {{$a.maxattempts}} dozvoljena/ih pokušaja ).",
+ "currentgrade": "Trenutna ocena u knjizi ocena",
+ "cutoffdate": "Definitivni rok",
+ "defaultteam": "Podrazumevana grupa",
+ "duedate": "Krajnji rok",
+ "duedateno": "Nema krajnjeg roka",
+ "duedatereached": "Krajnji rok za ovaj zadatak je sada istekao",
+ "editingstatus": "Status uređivanja",
+ "editsubmission": "Uredi rad",
+ "erroreditpluginsnotsupported": "Ne možete da dodate ili menjate rad u aplikaciji jer neki dodaci nemaju podršku za uređivanje:",
+ "errorshowinginformation": "Ne možemo da prikažemo informacije o predatom radu",
+ "extensionduedate": "Produženi rok",
+ "feedbacknotsupported": "Apllikacija ne podržava ovu povratnu informaciju. Moguće je da ona ne sadrži sve informacije.",
+ "grade": "Ocena",
+ "graded": "Ocenjeno",
+ "gradedby": "Ocenio/la",
+ "gradedon": "Ocenjeno",
+ "gradenotsynced": "Ocena nije sinhronizovana",
+ "gradeoutof": "Ocena od {{$a}}",
+ "gradingstatus": "Status ocenjivanja",
+ "groupsubmissionsettings": "Podešavanja za grupnu predaju rada",
+ "hiddenuser": "Učesnik",
+ "latesubmissions": "Kasno predati radovi",
+ "latesubmissionsaccepted": "Dozvoljeno do {{$a}}",
+ "markingworkflowstate": "Stanje toka ocenjivanja",
+ "markingworkflowstateinmarking": "Ocenjuje se",
+ "markingworkflowstateinreview": "Na pregledu",
+ "markingworkflowstatenotmarked": "Nije ocenjeno",
+ "markingworkflowstatereadyforrelease": "Spremno za objavu",
+ "markingworkflowstatereadyforreview": "Ocenjivanje završeno",
+ "markingworkflowstatereleased": "Objavljeno",
+ "multipleteams": "Član više od jedne grupe",
+ "noattempt": "Nema pokušaja",
+ "nomoresubmissionsaccepted": "Dozvoljeno samo polaznicima kojima je odobren produžetak",
+ "noonlinesubmissions": "Ovaj zadatak ne traži od vas da bilo šta predate onlajn",
+ "nosubmission": "Za ovaj zadatak još ništa nije predato",
+ "notallparticipantsareshown": "Učesnici koji nisu predali rad se ne prikazuju",
+ "noteam": "Nije član nijedne grupe.",
+ "notgraded": "Nije ocenjeno",
+ "numberofdraftsubmissions": "Nacrti",
+ "numberofparticipants": "Učesnici",
+ "numberofsubmissionsneedgrading": "Traži ocenjivanje",
+ "numberofsubmittedassignments": "Predato",
+ "numberofteams": "Grupe",
+ "numwords": "{{$a}} reč(i)",
+ "outof": "{{$a.current}} od {{$a.total}}",
+ "overdue": "Krajnji rok za predaju rada je istekao pre: {{$a}}",
+ "savechanges": "Sačuvaj promene",
+ "submission": "Predati rad",
+ "submissioneditable": "Polaznici mogu da uređuju ovaj zadatak",
+ "submissionnoteditable": "Polaznici ne mogu da uređuju ovaj zadatak",
+ "submissionnotsupported": "Aplikacija ne podržava ovaj predati rad. Moguće je da rad ne sadrži sve informacije.",
+ "submissionslocked": "Ovaj zadatak ne prihvata predaju radova",
+ "submissionstatus": "Status predatog rada",
+ "submissionstatus_": "Nema predatih radova",
+ "submissionstatus_draft": "Nacrt rada (nije predato)",
+ "submissionstatus_marked": "Ocenjeno",
+ "submissionstatus_new": "Novi predati rad",
+ "submissionstatus_reopened": "Ponovo otvoreno",
+ "submissionstatus_submitted": "Predato za ocenjivanje",
+ "submissionstatusheading": "Status predatog rada",
+ "submissionteam": "Grupa",
+ "submitassignment": "Predaj zadatak",
+ "submitassignment_help": "Onog trenutka kada predate ovaj rad više nećete moći da ga menjate.",
+ "submittedearly": "Zadatak je predat {{$a}} ranije",
+ "submittedlate": "Zadatak je predat {{$a}} kasnije",
+ "timemodified": "Poslednje izmene",
+ "timeremaining": "Preostalo vreme",
+ "ungroupedusers": "Podešavanje 'Neophodna je grupa za predaju rada' je omogućeno, ali neki korisnici nisu članovi nijedne grupe, ili su članovi više od jedne grupe, tako da ne mogu da predaju rad.",
+ "unlimitedattempts": "Neograničeno",
+ "userswhoneedtosubmit": "Korisnici koji treba da predaju rešenje: {{$a}}",
+ "userwithid": "Korisnik sa ID oznakom {{id}}",
+ "viewsubmission": "Pogledaj predati rad",
+ "warningsubmissiongrademodified": "Ocena predatog rada je izmenjena na sajtu.",
+ "warningsubmissionmodified": "Predati rad korisnika je izmenjen na sajtu."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/sv.json b/src/addon/mod/assign/lang/sv.json
new file mode 100755
index 000000000..674db9700
--- /dev/null
+++ b/src/addon/mod/assign/lang/sv.json
@@ -0,0 +1,84 @@
+{
+ "addattempt": "Tillåt ett nytt försök",
+ "addnewattempt": "Lägg till ett nytt försök",
+ "addnewattemptfromprevious": "Lägg till ett nytt försök baserat på tidigare inlämning",
+ "addsubmission": "Lägg till inskickat bidrag",
+ "allowsubmissionsanddescriptionfromdatesummary": "Detaljer om inlämningsuppgiften samt inlämningsformuläret kommer att vara tillgängligt från {{$a}}",
+ "allowsubmissionsfromdate": "Tillåt inlämning från",
+ "allowsubmissionsfromdatesummary": "Denna inlämningsuppgift kommer att tillåta inlämning från {{$a}}",
+ "applytoteam": "Tillämpa betyg och återkoppling för hela gruppen",
+ "assignmentisdue": "Inlämningstiden har gått ut.",
+ "attemptnumber": "Försök nummer",
+ "attemptreopenmethod": "Försök återupptas",
+ "attemptreopenmethod_manual": "Manuellt",
+ "attemptreopenmethod_untilpass": "Automatiskt tills passerat",
+ "attemptsettings": "Inställningar försök",
+ "confirmsubmission": "Är du säker på att du vill lämna in ditt arbete för betygssättning? Du kommer inte längre att kunna göra några förändringar",
+ "currentattempt": "Detta är försök {{$a}}.",
+ "currentattemptof": "Detta är försök {{$a.attemptnumber}} ( {{$a.maxattempts}} försök tillåten).",
+ "currentgrade": "Aktuellt betyg/omdöme i betygskatalogen",
+ "cutoffdate": "Avstängningsdatum",
+ "defaultteam": "Förvald grupp",
+ "duedate": "Stoppdatum/tid",
+ "duedateno": "Inget stoppdatum/tid",
+ "duedatereached": "Stoppdatum för denna inlämningsuppgift har nu passerat",
+ "editingstatus": "Redigerar status",
+ "editsubmission": "Redigera min inskickade uppgiftslösning",
+ "extensionduedate": "Förlängning av stoppdatum",
+ "grade": "Betyg/omdöme",
+ "graded": "Betygssatt",
+ "gradedby": "Betygssatt av",
+ "gradedon": "Betygssatt den",
+ "gradeoutof": "Betyg ur {{$a}}",
+ "gradingstatus": "Betygssättningsstatus",
+ "groupsubmissionsettings": "Gruppinlämning inställningar",
+ "hiddenuser": "Deltagare",
+ "latesubmissions": "Sen inlämning",
+ "latesubmissionsaccepted": "Endast elev(er) som har beviljats förlängd inlämningstid kan fortfarande lämna in uppgifter",
+ "markingworkflowstate": "Markera status för arbetsflöde",
+ "markingworkflowstateinmarking": "Under bedömning",
+ "markingworkflowstateinreview": "Under granskning",
+ "markingworkflowstatenotmarked": "Inte bedömnd",
+ "markingworkflowstatereadyforrelease": "Redo för",
+ "markingworkflowstatereadyforreview": "Bedöming färdig",
+ "markingworkflowstatereleased": "Released",
+ "multipleteams": "Medlem av mer än en grupp",
+ "noattempt": "Inga försök",
+ "nomoresubmissionsaccepted": "Inga fler inlämningar accepteras",
+ "noonlinesubmissions": "Denna inlämningsuppgift kräver inte att du lämnar in något online.",
+ "nosubmission": "Inget har lämnats in för denna inlämningsuppgift",
+ "noteam": "Inte medlem i någon grupp",
+ "notgraded": "Ej betygssatt",
+ "numberofdraftsubmissions": "Utkast",
+ "numberofparticipants": "Deltagare",
+ "numberofsubmissionsneedgrading": "Behöver betygssättas",
+ "numberofsubmittedassignments": "Inlämnad",
+ "numberofteams": "Grupper",
+ "numwords": "{{$a}} ord",
+ "outof": "{{$a.current}} av totalt {{$a.total}}",
+ "overdue": "Inlämningsuppgiften är försenad med: {{$a}}",
+ "savechanges": "Spara ändringar.",
+ "submission": "Inskickad uppgift",
+ "submissioneditable": "Elev kan ändra denna inlämning",
+ "submissionnoteditable": "Elev kan inte ändra denna inlämning",
+ "submissionslocked": "Denna inlämningsuppgift accepterar inte inlämningar",
+ "submissionstatus": "Status för inlämning",
+ "submissionstatus_": "Ingen inlämning",
+ "submissionstatus_draft": "Utkast (ej inlämnad)",
+ "submissionstatus_marked": "Betygssatt",
+ "submissionstatus_new": "Ingen inlämning",
+ "submissionstatus_reopened": "Återöppnad",
+ "submissionstatus_submitted": "Inlämnad för betygssättning",
+ "submissionstatusheading": "Status för inlämning",
+ "submissionteam": "Grupp",
+ "submitassignment": "Skicka in uppgift",
+ "submitassignment_help": "När du har lämnat in din uppgift kommer du inte längre att kunna göra ändringar i den.",
+ "submittedearly": "Inlämningsuppgift lämnades in {{$a}} tidigt",
+ "submittedlate": "Inlämningsuppgift lämnades in {{$a}} sent",
+ "timemodified": "Senast ändrad",
+ "timeremaining": "Återstående tid",
+ "unlimitedattempts": "Obegränsad",
+ "userswhoneedtosubmit": "Användare som behöver lämna in: {{$a}}",
+ "userwithid": "Användare men Id {{id}}",
+ "viewsubmission": "Visa inlämning"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/tg.json b/src/addon/mod/assign/lang/tg.json
new file mode 100755
index 000000000..6007cd3eb
--- /dev/null
+++ b/src/addon/mod/assign/lang/tg.json
@@ -0,0 +1,64 @@
+{
+ "addattempt": "Ба дигар кӯшиш иҷозат дода шавад",
+ "addnewattempt": "Кӯшиши нав илова карда шавад",
+ "addnewattemptfromprevious": "Илова кардани кӯшиши нав дар асоси пешниҳоди пешина",
+ "addsubmission": "Илова кардани пешниҳод",
+ "allowsubmissionsanddescriptionfromdatesummary": "Тафсилоти супориш ва пешниҳодҳо аз {{$a}} дастрас аст",
+ "allowsubmissionsfromdate": "Иҷрои супориш иҷозат дода шавад аз вақти",
+ "allowsubmissionsfromdatesummary": "Ин супориш пешниҳодҳоро то {{$a}} қабул мекунад",
+ "applytoteam": "Баҳоҳо ва тақризҳо барои ҳаммаи гурӯҳо тасдиқ карда шаванд",
+ "assignmentisdue": "Супориш вобаста аст",
+ "attemptnumber": "Шумораи кӯшиш",
+ "attemptreopenmethod": "Кӯшишҳо аз нав кушода шудаанд",
+ "attemptreopenmethod_manual": "Дастӣ",
+ "attemptreopenmethod_untilpass": "Автоматӣ пас аз гузариш",
+ "attemptsettings": "Танзими кӯшиш",
+ "currentgrade": "Баҳодиҳии ҷорӣ дар журнал",
+ "cutoffdate": "Мӯҳлати ниҳоии қабул",
+ "defaultteam": "Гурғ",
+ "duedate": "Мӯҳлати охирини супурдан",
+ "duedateno": "Мӯҳлати супурдан маҳдуд нашудааст",
+ "duedatereached": "Мӯҳлати охирин барои иҷрои ин супориш акнун гузашт",
+ "editingstatus": "Таҳрири ҳолат",
+ "editsubmission": "Пешниҳод таҳрир карда шавад",
+ "extensionduedate": "Тамдиди мӯҳлат",
+ "grade": "Баҳо",
+ "graded": "Баҳо дода шуд",
+ "gradedby": "Баҳо дода шуд аз ҷониби",
+ "gradedon": "Баҳо барои",
+ "gradingstatus": "Ҳолати баҳодиҳӣ",
+ "hiddenuser": "Иштирокчӣ",
+ "latesubmissions": "Корҳои дер фиристодашуда",
+ "markingworkflowstateinmarking": "Дар раванди баҳогузорӣ аст",
+ "markingworkflowstateinreview": "Дар баррасӣ қарор дорад",
+ "markingworkflowstatenotmarked": "Қайд нашудааст",
+ "markingworkflowstatereadyforrelease": "Тайер барои татбиқ",
+ "noattempt": "Кӯшиш нест",
+ "notgraded": "Баҳогузорӣ нашудааст",
+ "numberofdraftsubmissions": "Сиёҳнависҳо",
+ "numberofparticipants": "Иштирокчиён",
+ "numberofsubmissionsneedgrading": "Баҳогузорӣ лозим аст",
+ "numberofsubmittedassignments": "Қабулушуда",
+ "numberofteams": "Гурӯҳҳо",
+ "numwords": "Ҳамагӣ калимаҳо - {{$a}}",
+ "outof": "{{$a.current}} берун аз {{$a.total}}",
+ "overdue": "Мӯҳлати супориш гузаштааст: {{$a}}",
+ "savechanges": "Нигоҳ дошта шавад",
+ "submission": "Ҷавоб",
+ "submissioneditable": "Донишҷӯён метавонанд ин ҷавобро таҳрир кунанд",
+ "submissionnoteditable": "Донишҷӯ ин ҷавобро таҳрир карда наметавонад",
+ "submissionslocked": "Супориш ҷавобҳоро қабул намекунад",
+ "submissionstatus": "Ҳолати супориш",
+ "submissionstatus_": "Ҷавоб ба супориш нест",
+ "submissionstatus_marked": "Баҳо дода шуд",
+ "submissionstatus_new": "Ҷавоб ба супориш нест",
+ "submissionstatus_reopened": "Аз нав кушода шудааст",
+ "submissionstatusheading": "Ҳолати супориш",
+ "submitassignment": "Фиристодани супориш",
+ "submittedearly": "Супориш пешакӣ супурда шудааст - {{$a}}",
+ "submittedlate": "Супориш бо таъхир супурда шудааст - {{$a}}",
+ "timemodified": "Охирин дигаргунӣ",
+ "timeremaining": "Вақти боқимонда",
+ "unlimitedattempts": "Бемаҳдуд",
+ "viewsubmission": "Дидани ҷавобҳо"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/tr.json b/src/addon/mod/assign/lang/tr.json
new file mode 100755
index 000000000..72b0e0a20
--- /dev/null
+++ b/src/addon/mod/assign/lang/tr.json
@@ -0,0 +1,83 @@
+{
+ "addattempt": "Yeniden denemeye izin ver",
+ "addnewattempt": "Yeni bir deneme ekle",
+ "addnewattemptfromprevious": "Önceki gönderim üzerinden yeni bir denemeye izin ver",
+ "addsubmission": "Gönderim ekle",
+ "allowsubmissionsanddescriptionfromdatesummary": "Ödev ayrıntıları ve başvuru formu {{$a}} adresinde ulaşılabilir olacak.",
+ "allowsubmissionsfromdate": "Başvuru izni başlangıcı",
+ "allowsubmissionsfromdatesummary": "Ödev başvuruları {{$a}} adresinden kabul edilecek.",
+ "applytoteam": "Notları onayla ve tüm gruba geri bildirimde bulun",
+ "assignmentisdue": "Ödevin teslim süresi dolmuş",
+ "attemptnumber": "Deneme numarası",
+ "attemptreopenmethod": "Denemeler tekrar açıldı",
+ "attemptreopenmethod_manual": "El ile",
+ "attemptreopenmethod_untilpass": "Geçene kadar otomatik",
+ "attemptsettings": "Deneme ayarları",
+ "confirmsubmission": "Çalışmanızı notlandırılması için göndermek istediğinize emin misiniz? Bundan sonra değişiklik yapamayacaksınız.",
+ "currentattempt": "{{$a}}. deneme",
+ "currentattemptof": "Bu, {{$a.attemptnumber}} ({{$a.maxattempts}} deneme izinli) denemesi.",
+ "currentgrade": "Notdefterindeki şuanki notu",
+ "cutoffdate": "Kesilme tarihi",
+ "defaultteam": "Varsayılan grup",
+ "duedate": "Son teslim tarihi",
+ "duedateno": "Süresiz",
+ "duedatereached": "Bu ödevin teslim tarihi geçmiş",
+ "editingstatus": "Durumu düzenleme",
+ "editsubmission": "Gönderimi düzenle",
+ "extensionduedate": "Ek sürenin bitiş tarihi",
+ "grade": "Not",
+ "graded": "Notlandırıldı",
+ "gradedon": "Not verildi",
+ "gradeoutof": "{{$a}} Dışarıdan notu",
+ "gradingstatus": "Puan durumu",
+ "groupsubmissionsettings": "Grup gönderimleri ayarları",
+ "hiddenuser": "Katılımcı",
+ "latesubmissions": "Gecikmiş gönderimler",
+ "latesubmissionsaccepted": "Sadece ek süre tanınmış olan öğrenciler ödev göndermeye devam edebilir.",
+ "markingworkflowstate": "İş akış durumunu işaretleme",
+ "markingworkflowstateinmarking": "İşaretlemede",
+ "markingworkflowstateinreview": "İncelemede",
+ "markingworkflowstatenotmarked": "İşaretli değil",
+ "markingworkflowstatereadyforrelease": "Yayımlamak için hazır",
+ "markingworkflowstatereadyforreview": "İşaretleme tamamlandı",
+ "markingworkflowstatereleased": "Yayımlandı",
+ "multipleteams": "Birden fazla grubun üyesi",
+ "noattempt": "Deneme yok",
+ "nomoresubmissionsaccepted": "Artık gönderim kabul edilmiyor",
+ "noonlinesubmissions": "Bu ödev için online gönderimde bulunmanız gerekmiyor.",
+ "nosubmission": "Bu ödev için gönderimde bulunulmamış.",
+ "noteam": "Herhangi bir grubun üyesi değil",
+ "notgraded": "Puanlanmamış",
+ "numberofdraftsubmissions": "Taslaklar",
+ "numberofparticipants": "Katılımcılar",
+ "numberofsubmissionsneedgrading": "Notlandırılması gereken",
+ "numberofsubmittedassignments": "Gönderilen",
+ "numberofteams": "Gruplar",
+ "numwords": "{{$a}} kelime",
+ "outof": "{{$a.current}} dışında {{$a.total}}",
+ "overdue": "Tarafından göderilen geç kalmış ödev{{$a}}",
+ "savechanges": "Değişiklikleri kaydet",
+ "submission": "Gönderim",
+ "submissioneditable": "Öğrenci bu gönderimi düzenleyebilir",
+ "submissionnoteditable": "Öğrenci bu gönderimi düzenleneyemez",
+ "submissionslocked": "Bu ödev gönderim kabul etmemektedir",
+ "submissionstatus": "Gönderim durumu",
+ "submissionstatus_": "Gönderim yok",
+ "submissionstatus_draft": "Taslak (gönderilmemiş)",
+ "submissionstatus_marked": "Notlandırıldı",
+ "submissionstatus_new": "Yeni gönderim",
+ "submissionstatus_reopened": "Tekrar açıldı",
+ "submissionstatus_submitted": "Notlandırılması için gönderildi",
+ "submissionstatusheading": "Gönderim durumu",
+ "submissionteam": "Grup",
+ "submitassignment": "Ödevi gönder",
+ "submitassignment_help": "Ödevinizi gönderdiğinizde, üzerinde değişiklik yapmanız mümkün olmayacak.",
+ "submittedearly": "Ödev {{$a}} erken teslim edildi",
+ "submittedlate": "Ödev {{$a}} geç teslim edildi",
+ "timemodified": "Son düzenleme",
+ "timeremaining": "Kalan süre",
+ "ungroupedusers": "'Gönderim yapmak için grup gerekli' ayarı etkindir ve bazı kullanıcılar herhangi bir gruba üye değildir veya birden fazla gruba üye olduğundan, gönderim yapamazlar.",
+ "unlimitedattempts": "Sınırsız",
+ "userswhoneedtosubmit": "Gönderim yapması gereken kullanıcı: {{$a}}",
+ "viewsubmission": "Gönderimi görüntüle"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/uk.json b/src/addon/mod/assign/lang/uk.json
new file mode 100755
index 000000000..96c4002f1
--- /dev/null
+++ b/src/addon/mod/assign/lang/uk.json
@@ -0,0 +1,97 @@
+{
+ "acceptsubmissionstatement": "Будь ласка, прийміть заяву-згоду.",
+ "addattempt": "Дозволити іншу спробу",
+ "addnewattempt": "Додати нову спробу",
+ "addnewattemptfromprevious": "Додати нову спробу на основі попередньої",
+ "addsubmission": "Здати роботу",
+ "allowsubmissionsanddescriptionfromdatesummary": "Деталі завдання та можливість здачі робіт будуть відкрити з {{$a}}",
+ "allowsubmissionsfromdate": "Відповіді приймаються з",
+ "allowsubmissionsfromdatesummary": "Прийом робіт з цього завдання буде відкрито з {{$a}}",
+ "applytoteam": "Застосувати оцінки та відгуки для всієї групи",
+ "assignmentisdue": "Прийом робіт закінчено",
+ "attemptnumber": "Спроба номер",
+ "attemptreopenmethod": "Можливість перездачі",
+ "attemptreopenmethod_manual": "Вручну",
+ "attemptreopenmethod_untilpass": "Автоматично до виконання",
+ "attemptsettings": "Налаштування спроби",
+ "cannoteditduetostatementsubmission": "Ви не можете додати або змінити представлення в додатку, тому що ми не могли отримати заяву з сайту.",
+ "cannotgradefromapp": "Деякі методи класифікації поки не підтримуються додатком і не можуть бути змінені.",
+ "cannotsubmitduetostatementsubmission": "Ви не можете подати запит для сортування в додатку, тому що ми не могли отримати заява представлення з сайту.",
+ "confirmsubmission": "Відправити вашу роботу на перевірку? Після цього ви не зможете робити в ній ніяких змін.",
+ "currentattempt": "Це спроба {{$a}}.",
+ "currentattemptof": "Це спроба {{$a.attemptnumber}} (дозволено спроб - {{$a.maxattempts}}).",
+ "currentgrade": "Поточна оцінка в журналі",
+ "cutoffdate": "Термін неприйняття здачі",
+ "defaultteam": "Типова група",
+ "duedate": "Кінцевий термін здачі",
+ "duedateno": "Термін здачі не обмежено",
+ "duedatereached": "Термін для здачі робіт цього завдання вже минув",
+ "editingstatus": "Зміна статусу",
+ "editsubmission": "Редагувати мою відповідь",
+ "erroreditpluginsnotsupported": "Ви не можете додати або змінити представлення в додатку, тому що деякі плагіни не підтримуються для редагування:",
+ "errorshowinginformation": "Ми не можемо відобразити інформацію представлення",
+ "extensionduedate": "Відстрочений кінцевий термін",
+ "feedbacknotsupported": "Цей зворотний зв'язок не підтримується програмою і не може містити всю інформацію",
+ "grade": "Оцінка",
+ "graded": "Оцінено",
+ "gradedby": "Оцінив",
+ "gradedon": "Оцінено на",
+ "gradenotsynced": "Оцінки не синхронізовані",
+ "gradeoutof": "Оцінка (макс. {{$a}})",
+ "gradingstatus": "Статус оцінення",
+ "groupsubmissionsettings": "Налаштування групової здачі",
+ "hiddenuser": "Учасник",
+ "latesubmissions": "Прострочені завдання",
+ "latesubmissionsaccepted": "Дозволено до {{$a}}",
+ "markingworkflowstate": "Стан оцінювання",
+ "markingworkflowstateinmarking": "В оцінюванні",
+ "markingworkflowstateinreview": "В перегляді",
+ "markingworkflowstatenotmarked": "Не оцінено",
+ "markingworkflowstatereadyforrelease": "Готово до показу",
+ "markingworkflowstatereadyforreview": "Оцінено",
+ "markingworkflowstatereleased": "Показано",
+ "multipleteams": "Учасник кількох груп",
+ "noattempt": "Немає спроб",
+ "nomoresubmissionsaccepted": "Дозволено лише для учасників, яким продовжено термін виконання",
+ "noonlinesubmissions": "Завдання не вимагає нічого здавати в онлайні",
+ "nosubmission": "Нічого не відправлялося",
+ "notallparticipantsareshown": "Учасники без представлення не показуються",
+ "noteam": "Ви не включені до жодної групи, зверніться, будь ласка, до викладача.",
+ "notgraded": "Не оцінено",
+ "numberofdraftsubmissions": "Чорновики",
+ "numberofparticipants": "Учасники",
+ "numberofsubmissionsneedgrading": "Потрібно оцінити",
+ "numberofsubmittedassignments": "Здано",
+ "numberofteams": "Групи",
+ "numwords": "{{$a}} слів",
+ "outof": "{{$a.current}} з {{$a.total}}",
+ "overdue": "Термін здачі прострочено на: {{$a}}",
+ "savechanges": "Зберегти",
+ "submission": "Прийнято відповідей",
+ "submissioneditable": "Студент може редагувати свою роботу",
+ "submissionnoteditable": "Студент не може редагувати свою роботу",
+ "submissionnotsupported": "Це подання не підтримується програмою і не може містити всю інформацію",
+ "submissionslocked": "Це завдання не приймає робіт",
+ "submissionstatus": "Статус роботи",
+ "submissionstatus_": "Не здано",
+ "submissionstatus_draft": "Чорновик (не здано)",
+ "submissionstatus_marked": "Оцінено",
+ "submissionstatus_new": "Немає відповіді",
+ "submissionstatus_reopened": "Дозволено перездати",
+ "submissionstatus_submitted": "Здано на оцінення",
+ "submissionstatusheading": "Статус роботи",
+ "submissionteam": "Група",
+ "submitassignment": "Відправити на оцінення",
+ "submitassignment_help": "Як тільки ви відішлете роботу на оцінення, ви не зможете зробити в ній ніяких змін",
+ "submittedearly": "Завдання здано раніше на {{$a}}",
+ "submittedlate": "Завдання здано пізніше на {{$a}}",
+ "timemodified": "Востаннє змінено",
+ "timeremaining": "Залишилося часу",
+ "ungroupedusers": "Включено параметр \"Необхідна група щоб здати роботу\" але деякі студенти не записані у жодну групу, це означає, що вони не зможуть здати роботу в цьому завданні.",
+ "unlimitedattempts": "Необмежено",
+ "userswhoneedtosubmit": "Користувачі, яким потрібно здати: {{$a}}",
+ "userwithid": "Користувач з Id {{id}}",
+ "viewsubmission": "Переглянути роботу",
+ "warningsubmissiongrademodified": "Ступінь представлення була змінена на сайті.",
+ "warningsubmissionmodified": "Представлення користувача було змінено на сайті."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/zh-cn.json b/src/addon/mod/assign/lang/zh-cn.json
new file mode 100755
index 000000000..0b6a1d8aa
--- /dev/null
+++ b/src/addon/mod/assign/lang/zh-cn.json
@@ -0,0 +1,84 @@
+{
+ "addattempt": "允许重做",
+ "addnewattempt": "添加新的尝试",
+ "addnewattemptfromprevious": "基于上次提交的新尝试",
+ "addsubmission": "添加提交",
+ "allowsubmissionsanddescriptionfromdatesummary": "作业细节和提交表格将在 {{$a}} 可用",
+ "allowsubmissionsfromdate": "开启时间",
+ "allowsubmissionsfromdatesummary": "本作业将从{{$a}}起接受提交",
+ "applytoteam": "将分数和反馈意见应用到整个组",
+ "assignmentisdue": "作业截止",
+ "attemptnumber": "作业提交次数",
+ "attemptreopenmethod": "重试开启",
+ "attemptreopenmethod_manual": "手工开启",
+ "attemptreopenmethod_untilpass": "自动开启直到通过",
+ "attemptsettings": "提交设置",
+ "confirmsubmission": "您确定要提交作业以评分吗?提交后,不可再进行任何修改。",
+ "currentattempt": "这是第{{$a}}次提交",
+ "currentattemptof": "这是第{{$a.attemptnumber}}次提交(允许提交 {{$a.maxattempts}} 次)",
+ "currentgrade": "成绩单中的当前成绩",
+ "cutoffdate": "提交截止时间",
+ "defaultteam": "默认分组",
+ "duedate": "截止时间",
+ "duedateno": "无截止时间",
+ "duedatereached": "此作业的截止日期已经过了",
+ "editingstatus": "编辑状态",
+ "editsubmission": "编辑提交的作业",
+ "extensionduedate": "宽限时间",
+ "grade": "成绩",
+ "graded": "已评分",
+ "gradedby": "评分人",
+ "gradedon": "评分时间",
+ "gradeoutof": "成绩(满分 {{$a}} )",
+ "gradingstatus": "评分状态",
+ "groupsubmissionsettings": "分组提交设置",
+ "hiddenuser": "参与者",
+ "latesubmissions": "迟交的作业",
+ "latesubmissionsaccepted": "宽限迟交直到{{$a}}",
+ "markingworkflowstate": "评分工作流程状态",
+ "markingworkflowstateinmarking": "正在评分中",
+ "markingworkflowstateinreview": "正在检查评分结果",
+ "markingworkflowstatenotmarked": "没被评分的",
+ "markingworkflowstatereadyforrelease": "已准备公布",
+ "markingworkflowstatereadyforreview": "评分已完成",
+ "markingworkflowstatereleased": "已经公布",
+ "multipleteams": "你同时属于不同群组的成员",
+ "noattempt": "没有提交作业",
+ "nomoresubmissionsaccepted": "只接受已被宽延期限的学生提交作业",
+ "noonlinesubmissions": "这个作业不需要您在网上提交任何东西",
+ "nosubmission": "这个作业还没有任何提交",
+ "noteam": "你不是任何一个群组的成员,请联系你的老师。",
+ "notgraded": "未评分",
+ "numberofdraftsubmissions": "草稿",
+ "numberofparticipants": "参与人数",
+ "numberofsubmissionsneedgrading": "需要评分",
+ "numberofsubmittedassignments": "提交",
+ "numberofteams": "群组",
+ "numwords": "{{$a}}单词",
+ "outof": "{{$a.current}},共有{{$a.total}}",
+ "overdue": "作业截止日期:{{$a}}",
+ "savechanges": "保存更改",
+ "submission": "提交的作业",
+ "submissioneditable": "学生可以编辑提交的作业",
+ "submissionnoteditable": "学生不能编辑提交的作业",
+ "submissionslocked": "此作业不接受提交",
+ "submissionstatus": "提交状态",
+ "submissionstatus_": "未提交",
+ "submissionstatus_draft": "草稿(未提交)",
+ "submissionstatus_marked": "已评分",
+ "submissionstatus_new": "没有提交的作业",
+ "submissionstatus_reopened": "已开启重交",
+ "submissionstatus_submitted": "已经提交",
+ "submissionstatusheading": "作业提交状态",
+ "submissionteam": "群组",
+ "submitassignment": "提交作业",
+ "submitassignment_help": "提交作业后,您将不能再做任何修改。",
+ "submittedearly": "提早{{$a}}提交作业",
+ "submittedlate": "过期{{$a}}才提交作业",
+ "timemodified": "最后修改",
+ "timeremaining": "剩余时间",
+ "ungroupedusers": "“需要小组合作完成的作业”的设置已经启用,某些用户未分配小组或者加入多个小组,将不能完成作业。",
+ "unlimitedattempts": "不限",
+ "userswhoneedtosubmit": "需要提交作业的用户:{{$a}}",
+ "viewsubmission": "查看提交"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/lang/zh-tw.json b/src/addon/mod/assign/lang/zh-tw.json
new file mode 100755
index 000000000..674e767ee
--- /dev/null
+++ b/src/addon/mod/assign/lang/zh-tw.json
@@ -0,0 +1,96 @@
+{
+ "acceptsubmissionstatement": "請接受提交聲明.",
+ "addattempt": "允許另一次的繳交",
+ "addnewattempt": "新增一個繳交管道",
+ "addnewattemptfromprevious": "依據先前的作業新增一個繳交管道",
+ "addsubmission": "繳交作業",
+ "allowsubmissionsanddescriptionfromdatesummary": "作業的詳細說明和繳交的表單將從 {{$a}} strong>開始可以使用",
+ "allowsubmissionsfromdate": "開始繳交時間",
+ "allowsubmissionsfromdatesummary": "這個作業將從 {{$a}} strong>開始可以繳交",
+ "applytoteam": "將分數和回饋套用到整個群組",
+ "assignmentisdue": "作業繳交已截止",
+ "attemptnumber": "作業提交次數",
+ "attemptreopenmethod": "重新開啟作業提交",
+ "attemptreopenmethod_manual": "手動的",
+ "attemptreopenmethod_untilpass": "自動的,直到通過",
+ "attemptsettings": "繳交設定",
+ "cannoteditduetostatementsubmission": "您無法在應用程式中新增或編輯提交內容, 因為我們無法從該網站擷取提交內容.",
+ "cannotgradefromapp": "應用程式尚未支援部分評分方式, 無法修改.",
+ "cannotsubmitduetostatementsubmission": "您無法在應用程式中提交評分, 因為我們無法從網站存取提交聲明",
+ "confirmsubmission": "您確定要繳交作業並請求評分嗎?一旦這麼做,您將不能再修改作業。",
+ "currentattempt": "這是第{{$a}}次繳交",
+ "currentattemptof": "這是第{{$a.attemptnumber}}次繳交(允許繳交 {{$a.maxattempts}} 次)",
+ "currentgrade": "目前成績單中的分數",
+ "cutoffdate": "拒收作業時間",
+ "defaultteam": "預設群組",
+ "duedate": "規定繳交時間",
+ "duedateno": "沒有規定繳交時間",
+ "duedatereached": "此作業的規定繳交時間已經過了",
+ "editingstatus": "編修狀態",
+ "editsubmission": "修改我已繳交的作業",
+ "erroreditpluginsnotsupported": "您無法在應用程式中新增或修改提交, 因為某些外掛不支援編輯:",
+ "errorshowinginformation": "我們無法顯示提交資訊",
+ "extensionduedate": "展延到期日",
+ "feedbacknotsupported": "該應用程式不支援此回饋, 並且可能不包含所有資訊",
+ "grade": "成績",
+ "graded": "已評分",
+ "gradedby": "已評分由",
+ "gradedon": "評分標準",
+ "gradeoutof": "得分(配分{{$a}})",
+ "gradingstatus": "評分狀態",
+ "groupsubmissionsettings": "群組繳交作業設定",
+ "hiddenuser": "參與者",
+ "latesubmissions": "遲交的作業",
+ "latesubmissionsaccepted": "寬延繳交直到 {{$a}}",
+ "markingworkflowstate": "評分工作流程狀態",
+ "markingworkflowstateinmarking": "正在評分中",
+ "markingworkflowstateinreview": "正在檢查評分結果",
+ "markingworkflowstatenotmarked": "沒被評分的",
+ "markingworkflowstatereadyforrelease": "已準備好公布",
+ "markingworkflowstatereadyforreview": "評分已完成",
+ "markingworkflowstatereleased": "已經公布",
+ "multipleteams": "你同時是屬於不同的群組的成員",
+ "noattempt": "沒有繳交作業",
+ "nomoresubmissionsaccepted": "只接受已被寬延期限的學生的繳交作業",
+ "noonlinesubmissions": "這個作業不需要您在網上繳交任何東西",
+ "nosubmission": "這個作業還沒人繳交",
+ "notallparticipantsareshown": "沒有提交的參與者不會被顯示出來",
+ "noteam": "不屬於任何群組",
+ "notgraded": "尚未評分",
+ "numberofdraftsubmissions": "草稿",
+ "numberofparticipants": "參與者",
+ "numberofsubmissionsneedgrading": "需要評分",
+ "numberofsubmittedassignments": "已繳交",
+ "numberofteams": "群組",
+ "numwords": "{{$a}}字數",
+ "outof": "{{$a.current}},共有{{$a.total}}",
+ "overdue": "已經超過應繳交時間: {{$a}}",
+ "savechanges": "儲存更改",
+ "submission": "繳交作業",
+ "submissioneditable": "學生可以編編輯這一繳交的作業",
+ "submissionnoteditable": "學生不能編輯這一繳交的作業",
+ "submissionnotsupported": "該應用程式不支援此提交, 並且可能不包含所有資訊",
+ "submissionslocked": "此作業不接受繳交",
+ "submissionstatus": "繳交狀態",
+ "submissionstatus_": "未繳交",
+ "submissionstatus_draft": "草稿(尚未繳交)",
+ "submissionstatus_marked": "已評分",
+ "submissionstatus_new": "沒有繳交的作業",
+ "submissionstatus_reopened": "已經重新開啟",
+ "submissionstatus_submitted": "已繳交,等待評分中",
+ "submissionstatusheading": "繳交狀態",
+ "submissionteam": "群組",
+ "submitassignment": "繳交作業",
+ "submitassignment_help": "當這項作業繳交後,您將不能再做任何修改。",
+ "submittedearly": "提早{{$a}}就繳交作業",
+ "submittedlate": "過期{{$a}}才繳交作業",
+ "timemodified": "最後修改",
+ "timeremaining": "剩餘時間",
+ "ungroupedusers": "\"需要以群組方式提交作業\"的設定已經被啟動,但是仍有某些用戶沒有被指派到群組中,或者同一個人屬於多個群組,因此無法提交作業。",
+ "unlimitedattempts": "無限制的",
+ "userswhoneedtosubmit": "需要提交作業的用戶:{{$a}}",
+ "userwithid": "ID為{{id}}的使用者",
+ "viewsubmission": "檢視繳交的作業",
+ "warningsubmissiongrademodified": "在網站上修改了提交成績.",
+ "warningsubmissionmodified": "使用者的提交已在網站中修改."
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/ar.json b/src/addon/mod/assign/submission/comments/lang/ar.json
new file mode 100755
index 000000000..5e26c93b6
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/ar.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "محادثة"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/bg.json b/src/addon/mod/assign/submission/comments/lang/bg.json
new file mode 100755
index 000000000..40cca84d1
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/bg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Коментари към заданието"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/ca.json b/src/addon/mod/assign/submission/comments/lang/ca.json
new file mode 100755
index 000000000..ba81b103b
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/ca.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentaris de la tramesa"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/cs.json b/src/addon/mod/assign/submission/comments/lang/cs.json
new file mode 100755
index 000000000..63684392a
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/cs.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Komentář studenta"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/da.json b/src/addon/mod/assign/submission/comments/lang/da.json
new file mode 100755
index 000000000..04546a60a
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/da.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Kommentarer til afleverede opgaver"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/de-du.json b/src/addon/mod/assign/submission/comments/lang/de-du.json
new file mode 100755
index 000000000..64107a96e
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/de-du.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Abgabekommentare"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/de.json b/src/addon/mod/assign/submission/comments/lang/de.json
new file mode 100755
index 000000000..64107a96e
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/de.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Abgabekommentare"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/el.json b/src/addon/mod/assign/submission/comments/lang/el.json
new file mode 100755
index 000000000..9f53eba02
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/el.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Υποβολή σχολίων"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/es-mx.json b/src/addon/mod/assign/submission/comments/lang/es-mx.json
new file mode 100755
index 000000000..2428f80f1
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/es-mx.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentarios al envío"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/es.json b/src/addon/mod/assign/submission/comments/lang/es.json
new file mode 100755
index 000000000..06a80560e
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/es.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentarios de la entrega"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/eu.json b/src/addon/mod/assign/submission/comments/lang/eu.json
new file mode 100755
index 000000000..bf00d62b8
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/eu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Bidalketaren iruzkinak"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/fa.json b/src/addon/mod/assign/submission/comments/lang/fa.json
new file mode 100755
index 000000000..0d29cde8e
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/fa.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "توضیحات برای تحویل"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/fi.json b/src/addon/mod/assign/submission/comments/lang/fi.json
new file mode 100755
index 000000000..13e656085
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/fi.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Palautuksen lisätiedot"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/fr.json b/src/addon/mod/assign/submission/comments/lang/fr.json
new file mode 100755
index 000000000..68be0a045
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/fr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Commentaires"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/he.json b/src/addon/mod/assign/submission/comments/lang/he.json
new file mode 100755
index 000000000..4ced34a07
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/he.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "הערות להגשה"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/hr.json b/src/addon/mod/assign/submission/comments/lang/hr.json
new file mode 100755
index 000000000..0253cd9d1
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/hr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Napomene uz zadaću"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/hu.json b/src/addon/mod/assign/submission/comments/lang/hu.json
new file mode 100755
index 000000000..0afa4f191
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/hu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Leadáshoz fűzött megjegyzések"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/it.json b/src/addon/mod/assign/submission/comments/lang/it.json
new file mode 100755
index 000000000..56dda2a87
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/it.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Commenti alle consegne"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/ja.json b/src/addon/mod/assign/submission/comments/lang/ja.json
new file mode 100755
index 000000000..020830b48
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/ja.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "提出コメント"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/ko.json b/src/addon/mod/assign/submission/comments/lang/ko.json
new file mode 100755
index 000000000..3e3ba79cf
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/ko.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "제출 코멘트"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/lt.json b/src/addon/mod/assign/submission/comments/lang/lt.json
new file mode 100755
index 000000000..3c755c438
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/lt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Pateikimo komentarai"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/mr.json b/src/addon/mod/assign/submission/comments/lang/mr.json
new file mode 100755
index 000000000..86dcff053
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/mr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "संभाषण"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/nl.json b/src/addon/mod/assign/submission/comments/lang/nl.json
new file mode 100755
index 000000000..72b5bf06c
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/nl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Opmerkingen bij ingestuurde opdrachten"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/no.json b/src/addon/mod/assign/submission/comments/lang/no.json
new file mode 100755
index 000000000..d8f6e32f3
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/no.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Kommentarer til innleveringen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/pl.json b/src/addon/mod/assign/submission/comments/lang/pl.json
new file mode 100755
index 000000000..10f99e8dc
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/pl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Komentarz do przesłanego zadania"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/pt-br.json b/src/addon/mod/assign/submission/comments/lang/pt-br.json
new file mode 100755
index 000000000..d23fe38f9
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/pt-br.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentários ao envio"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/pt.json b/src/addon/mod/assign/submission/comments/lang/pt.json
new file mode 100755
index 000000000..fa8c4333c
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/pt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentários à submissão"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/ro.json b/src/addon/mod/assign/submission/comments/lang/ro.json
new file mode 100755
index 000000000..a162254b1
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/ro.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Comentarii la lucrare"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/ru.json b/src/addon/mod/assign/submission/comments/lang/ru.json
new file mode 100755
index 000000000..64dff3f9e
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/ru.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Комментарии к ответу"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/sv.json b/src/addon/mod/assign/submission/comments/lang/sv.json
new file mode 100755
index 000000000..c0282b4f6
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/sv.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Inlämningskommentarer"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/tg.json b/src/addon/mod/assign/submission/comments/lang/tg.json
new file mode 100755
index 000000000..c81014ebe
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/tg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Чат"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/tr.json b/src/addon/mod/assign/submission/comments/lang/tr.json
new file mode 100755
index 000000000..b12124e4a
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/tr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Gönderim yorumları"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/comments/lang/uk.json b/src/addon/mod/assign/submission/comments/lang/uk.json
new file mode 100755
index 000000000..e2fe499b9
--- /dev/null
+++ b/src/addon/mod/assign/submission/comments/lang/uk.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Коментарі до відповідей"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/ar.json b/src/addon/mod/assign/submission/file/lang/ar.json
new file mode 100755
index 000000000..6a12286fe
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/ar.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "الملف المسلم"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/bg.json b/src/addon/mod/assign/submission/file/lang/bg.json
new file mode 100755
index 000000000..8651a7cc1
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/bg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Качване на файлове"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/ca.json b/src/addon/mod/assign/submission/file/lang/ca.json
new file mode 100755
index 000000000..3523db919
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/ca.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Fitxers de la tramesa"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/cs.json b/src/addon/mod/assign/submission/file/lang/cs.json
new file mode 100755
index 000000000..a6b5a73c2
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/cs.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Odevzdat soubor(y)"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/da.json b/src/addon/mod/assign/submission/file/lang/da.json
new file mode 100755
index 000000000..ba88c3668
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/da.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Filafleveringer"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/de-du.json b/src/addon/mod/assign/submission/file/lang/de-du.json
new file mode 100755
index 000000000..7f5c2a627
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/de-du.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Dateiabgabe"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/de.json b/src/addon/mod/assign/submission/file/lang/de.json
new file mode 100755
index 000000000..7f5c2a627
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/de.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Dateiabgabe"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/el.json b/src/addon/mod/assign/submission/file/lang/el.json
new file mode 100755
index 000000000..2c51a9222
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/el.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Υποβολές αρχείων"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/es-mx.json b/src/addon/mod/assign/submission/file/lang/es-mx.json
new file mode 100755
index 000000000..583198243
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/es-mx.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Envíos de archivo"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/es.json b/src/addon/mod/assign/submission/file/lang/es.json
new file mode 100755
index 000000000..3c8f10388
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/es.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Archivos enviados"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/eu.json b/src/addon/mod/assign/submission/file/lang/eu.json
new file mode 100755
index 000000000..9e0e3a4c8
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/eu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Fitxategi-bidalketak"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/fa.json b/src/addon/mod/assign/submission/file/lang/fa.json
new file mode 100755
index 000000000..9ce580bb7
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/fa.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "تحویل فایل"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/fi.json b/src/addon/mod/assign/submission/file/lang/fi.json
new file mode 100755
index 000000000..912b81179
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/fi.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Tiedostojen palautus"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/fr.json b/src/addon/mod/assign/submission/file/lang/fr.json
new file mode 100755
index 000000000..0da7e6299
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/fr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Remises de fichiers"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/he.json b/src/addon/mod/assign/submission/file/lang/he.json
new file mode 100755
index 000000000..318c41e7b
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/he.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "הגשות קובץ"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/hr.json b/src/addon/mod/assign/submission/file/lang/hr.json
new file mode 100755
index 000000000..aed6336e9
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/hr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Postavljanje datoteke"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/hu.json b/src/addon/mod/assign/submission/file/lang/hu.json
new file mode 100755
index 000000000..1c71cdaff
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/hu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Leadás állományban"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/it.json b/src/addon/mod/assign/submission/file/lang/it.json
new file mode 100755
index 000000000..5865dd548
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/it.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Consegna file"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/ja.json b/src/addon/mod/assign/submission/file/lang/ja.json
new file mode 100755
index 000000000..031d22a6a
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/ja.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "ファイル提出"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/ko.json b/src/addon/mod/assign/submission/file/lang/ko.json
new file mode 100755
index 000000000..b6efe1210
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/ko.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "파일 제출"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/lt.json b/src/addon/mod/assign/submission/file/lang/lt.json
new file mode 100755
index 000000000..b8faa24ea
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/lt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Failų pateikimai"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/mr.json b/src/addon/mod/assign/submission/file/lang/mr.json
new file mode 100755
index 000000000..86dcff053
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/mr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "संभाषण"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/nl.json b/src/addon/mod/assign/submission/file/lang/nl.json
new file mode 100755
index 000000000..73ffdb16b
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/nl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Bestanden insturen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/no.json b/src/addon/mod/assign/submission/file/lang/no.json
new file mode 100755
index 000000000..a688574f6
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/no.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Filinnleveringer"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/pl.json b/src/addon/mod/assign/submission/file/lang/pl.json
new file mode 100755
index 000000000..5d8a8e776
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/pl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Przesyłane pliki"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/pt-br.json b/src/addon/mod/assign/submission/file/lang/pt-br.json
new file mode 100755
index 000000000..ca5709a41
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/pt-br.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Envio de arquivos"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/pt.json b/src/addon/mod/assign/submission/file/lang/pt.json
new file mode 100755
index 000000000..ce6f34cc6
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/pt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Submissão de ficheiros"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/ro.json b/src/addon/mod/assign/submission/file/lang/ro.json
new file mode 100755
index 000000000..0863067cd
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/ro.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Fișier aplicare"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/ru.json b/src/addon/mod/assign/submission/file/lang/ru.json
new file mode 100755
index 000000000..5076056a2
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/ru.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Ответ в виде файла"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/sv.json b/src/addon/mod/assign/submission/file/lang/sv.json
new file mode 100755
index 000000000..c83971011
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/sv.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Filinlämningar"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/tg.json b/src/addon/mod/assign/submission/file/lang/tg.json
new file mode 100755
index 000000000..fcd0e4cf7
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/tg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Пешниҳодҳои файл"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/tr.json b/src/addon/mod/assign/submission/file/lang/tr.json
new file mode 100755
index 000000000..a774fddf7
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/tr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Dosya gönderimleri"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/file/lang/uk.json b/src/addon/mod/assign/submission/file/lang/uk.json
new file mode 100755
index 000000000..01c1c36c2
--- /dev/null
+++ b/src/addon/mod/assign/submission/file/lang/uk.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Завантаження файлу"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/ar.json b/src/addon/mod/assign/submission/onlinetext/lang/ar.json
new file mode 100755
index 000000000..5e26c93b6
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/ar.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "محادثة"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/bg.json b/src/addon/mod/assign/submission/onlinetext/lang/bg.json
new file mode 100755
index 000000000..c81014ebe
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/bg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Чат"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/ca.json b/src/addon/mod/assign/submission/onlinetext/lang/ca.json
new file mode 100755
index 000000000..73899244b
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/ca.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Nom del connector de repositori"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/cs.json b/src/addon/mod/assign/submission/onlinetext/lang/cs.json
new file mode 100755
index 000000000..338d52fb9
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/cs.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Chat"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/da.json b/src/addon/mod/assign/submission/onlinetext/lang/da.json
new file mode 100755
index 000000000..06823ea17
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/da.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Navn på filarkiv-plugin"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/de-du.json b/src/addon/mod/assign/submission/onlinetext/lang/de-du.json
new file mode 100755
index 000000000..b681ebe0f
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/de-du.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Name des Plugins"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/de.json b/src/addon/mod/assign/submission/onlinetext/lang/de.json
new file mode 100755
index 000000000..b681ebe0f
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/de.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Name des Plugins"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/el.json b/src/addon/mod/assign/submission/onlinetext/lang/el.json
new file mode 100755
index 000000000..f8f9520bf
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/el.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Όνομα πρόσθετης λειτουργίας χώρου αποθήκευσης"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/es-mx.json b/src/addon/mod/assign/submission/onlinetext/lang/es-mx.json
new file mode 100755
index 000000000..6652f4e39
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/es-mx.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Nombre del plugin del repositorio"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/es.json b/src/addon/mod/assign/submission/onlinetext/lang/es.json
new file mode 100755
index 000000000..7ce7d44b8
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/es.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Nombre de la extensión de repositorio"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/eu.json b/src/addon/mod/assign/submission/onlinetext/lang/eu.json
new file mode 100755
index 000000000..e1bda956c
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/eu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Biltegi-pluginaren izena"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/fa.json b/src/addon/mod/assign/submission/onlinetext/lang/fa.json
new file mode 100755
index 000000000..bae6ca29c
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/fa.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "نام پلاگین انباره"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/fi.json b/src/addon/mod/assign/submission/onlinetext/lang/fi.json
new file mode 100755
index 000000000..f9abee8d0
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/fi.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Tiedostopankkipluginin nimi"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/fr.json b/src/addon/mod/assign/submission/onlinetext/lang/fr.json
new file mode 100755
index 000000000..45d3658b7
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/fr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Nom du plugin de dépôt"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/he.json b/src/addon/mod/assign/submission/onlinetext/lang/he.json
new file mode 100755
index 000000000..02f0f6ed5
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/he.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "שם תוסף המאגר"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/hr.json b/src/addon/mod/assign/submission/onlinetext/lang/hr.json
new file mode 100755
index 000000000..3df5b84be
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/hr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Naziv dodatka (plugina) repozitorija"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/hu.json b/src/addon/mod/assign/submission/onlinetext/lang/hu.json
new file mode 100755
index 000000000..54cc715e9
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/hu.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Az adattár-segédprogram neve"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/it.json b/src/addon/mod/assign/submission/onlinetext/lang/it.json
new file mode 100755
index 000000000..c09cb2587
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/it.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Nome plugin repository"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/ja.json b/src/addon/mod/assign/submission/onlinetext/lang/ja.json
new file mode 100755
index 000000000..4f4b46184
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/ja.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "リポジトリプラグイン名"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/ko.json b/src/addon/mod/assign/submission/onlinetext/lang/ko.json
new file mode 100755
index 000000000..3b87d4c7c
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/ko.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "저장소 플러그인 명칭"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/lt.json b/src/addon/mod/assign/submission/onlinetext/lang/lt.json
new file mode 100755
index 000000000..6ff00c34d
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/lt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Saugyklos priedo pavadinimas"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/mr.json b/src/addon/mod/assign/submission/onlinetext/lang/mr.json
new file mode 100755
index 000000000..86dcff053
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/mr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "संभाषण"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/nl.json b/src/addon/mod/assign/submission/onlinetext/lang/nl.json
new file mode 100755
index 000000000..0262a2b68
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/nl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Opslagruimte plugin naam"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/no.json b/src/addon/mod/assign/submission/onlinetext/lang/no.json
new file mode 100755
index 000000000..0727c1aaa
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/no.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Filområdets modulnavn"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/pl.json b/src/addon/mod/assign/submission/onlinetext/lang/pl.json
new file mode 100755
index 000000000..81509b39f
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/pl.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Nazwa wtyczki repozytorium"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/pt-br.json b/src/addon/mod/assign/submission/onlinetext/lang/pt-br.json
new file mode 100755
index 000000000..a70b13d60
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/pt-br.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Nome do plugin de repositório"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/pt.json b/src/addon/mod/assign/submission/onlinetext/lang/pt.json
new file mode 100755
index 000000000..5bba250e0
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/pt.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Nome do módulo de repositório"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/ro.json b/src/addon/mod/assign/submission/onlinetext/lang/ro.json
new file mode 100755
index 000000000..fae6b7223
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/ro.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Numele plugin-ului depozitului"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/ru.json b/src/addon/mod/assign/submission/onlinetext/lang/ru.json
new file mode 100755
index 000000000..dd5953f97
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/ru.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Имя плагина хранилища"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/sv.json b/src/addon/mod/assign/submission/onlinetext/lang/sv.json
new file mode 100755
index 000000000..317785c3a
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/sv.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Namn på plugin-program för arkiv"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/tg.json b/src/addon/mod/assign/submission/onlinetext/lang/tg.json
new file mode 100755
index 000000000..c81014ebe
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/tg.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Чат"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/tr.json b/src/addon/mod/assign/submission/onlinetext/lang/tr.json
new file mode 100755
index 000000000..ed500d53d
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/tr.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Depo eklenti adı"
+}
\ No newline at end of file
diff --git a/src/addon/mod/assign/submission/onlinetext/lang/uk.json b/src/addon/mod/assign/submission/onlinetext/lang/uk.json
new file mode 100755
index 000000000..204fec78c
--- /dev/null
+++ b/src/addon/mod/assign/submission/onlinetext/lang/uk.json
@@ -0,0 +1,3 @@
+{
+ "pluginname": "Назва модуля сховища"
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/ar.json b/src/addon/mod/book/lang/ar.json
new file mode 100755
index 000000000..0637a088a
--- /dev/null
+++ b/src/addon/mod/book/lang/ar.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/bg.json b/src/addon/mod/book/lang/bg.json
new file mode 100755
index 000000000..285b486c4
--- /dev/null
+++ b/src/addon/mod/book/lang/bg.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Грешка при четене на глава от книга."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/ca.json b/src/addon/mod/book/lang/ca.json
new file mode 100755
index 000000000..791a590cc
--- /dev/null
+++ b/src/addon/mod/book/lang/ca.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "S'ha produït un error llegint el capítol del llibre."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/cs.json b/src/addon/mod/book/lang/cs.json
new file mode 100755
index 000000000..e038eb9f8
--- /dev/null
+++ b/src/addon/mod/book/lang/cs.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Chyba při čtení kapitoly knihy."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/de.json b/src/addon/mod/book/lang/de.json
new file mode 100755
index 000000000..95cc518a7
--- /dev/null
+++ b/src/addon/mod/book/lang/de.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Fehler beim Lesen des Buchkapitels"
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/es-mx.json b/src/addon/mod/book/lang/es-mx.json
new file mode 100755
index 000000000..70aa6efb5
--- /dev/null
+++ b/src/addon/mod/book/lang/es-mx.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Error al leer capítulo de libro."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/es.json b/src/addon/mod/book/lang/es.json
new file mode 100755
index 000000000..6d996a7c0
--- /dev/null
+++ b/src/addon/mod/book/lang/es.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Error al leer el capítulo del libro."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/eu.json b/src/addon/mod/book/lang/eu.json
new file mode 100755
index 000000000..0d33b870e
--- /dev/null
+++ b/src/addon/mod/book/lang/eu.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Errorea liburuaren atala irakurtzean."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/fa.json b/src/addon/mod/book/lang/fa.json
new file mode 100755
index 000000000..0637a088a
--- /dev/null
+++ b/src/addon/mod/book/lang/fa.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/fr.json b/src/addon/mod/book/lang/fr.json
new file mode 100755
index 000000000..7cfc8f2d6
--- /dev/null
+++ b/src/addon/mod/book/lang/fr.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Erreur de lecture du chapitre du livre."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/he.json b/src/addon/mod/book/lang/he.json
new file mode 100755
index 000000000..bf41925aa
--- /dev/null
+++ b/src/addon/mod/book/lang/he.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "שגיאה בקריאת פרק בספר."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/hu.json b/src/addon/mod/book/lang/hu.json
new file mode 100755
index 000000000..300cf8e03
--- /dev/null
+++ b/src/addon/mod/book/lang/hu.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Hiba a fejezet olvasása közben."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/it.json b/src/addon/mod/book/lang/it.json
new file mode 100755
index 000000000..2ed5a46fe
--- /dev/null
+++ b/src/addon/mod/book/lang/it.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Si è verificato un errore durante la lettura del capitolo del libro."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/ja.json b/src/addon/mod/book/lang/ja.json
new file mode 100755
index 000000000..6b17a5ef8
--- /dev/null
+++ b/src/addon/mod/book/lang/ja.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "ブックの章の読み込み中にエラーが発生しました。"
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/nl.json b/src/addon/mod/book/lang/nl.json
new file mode 100755
index 000000000..5daa9560e
--- /dev/null
+++ b/src/addon/mod/book/lang/nl.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Fout bij het lezen van hoofdstuk."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/pl.json b/src/addon/mod/book/lang/pl.json
new file mode 100755
index 000000000..37dcac1d2
--- /dev/null
+++ b/src/addon/mod/book/lang/pl.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Błąd podczas odczytu książki"
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/pt-br.json b/src/addon/mod/book/lang/pt-br.json
new file mode 100755
index 000000000..26c82f0a0
--- /dev/null
+++ b/src/addon/mod/book/lang/pt-br.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Erro ao ler capítulo de livro"
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/ru.json b/src/addon/mod/book/lang/ru.json
new file mode 100755
index 000000000..db9880027
--- /dev/null
+++ b/src/addon/mod/book/lang/ru.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Ошибка при чтении главы из книги"
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/sv.json b/src/addon/mod/book/lang/sv.json
new file mode 100755
index 000000000..4d5f7ef3b
--- /dev/null
+++ b/src/addon/mod/book/lang/sv.json
@@ -0,0 +1,3 @@
+{
+ "errorchapter": "Fel vid läsning av kapitel i boken."
+}
\ No newline at end of file
diff --git a/src/addon/mod/book/lang/tr.json b/src/addon/mod/book/lang/tr.json
new file mode 100755
index 000000000..0637a088a
--- /dev/null
+++ b/src/addon/mod/book/lang/tr.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/ar.json b/src/addon/mod/chat/lang/ar.json
new file mode 100755
index 000000000..578e593e6
--- /dev/null
+++ b/src/addon/mod/chat/lang/ar.json
@@ -0,0 +1,18 @@
+{
+ "beep": "نغمة",
+ "currentusers": "المستخدمين الحاليين",
+ "enterchat": "أضغط هناء للدخول إلى المحادثة",
+ "entermessage": "أدخل رسالتك",
+ "errorwhileconnecting": "خطأ عند الاتصال بالدردشة",
+ "errorwhilegettingchatdata": "خطأ عند الحصول على معلومات الدردشة",
+ "errorwhilegettingchatusers": "خطأ عند الحصول على مستخدمي الدردشة",
+ "errorwhileretrievingmessages": "خطأ عند استرجاع الرسائل من الخادم",
+ "errorwhilesendingmessage": "خطأ عند إرسال الرسالة",
+ "messagebeepsyou": "{{$a}} أرسل نغمة لك!",
+ "messageenter": "{{$a}} دخل غرفة محادثة",
+ "messageexit": "{{$a}} خرج من غرفة محادثة",
+ "nomessages": "لا توجد رسائل بعد",
+ "send": "إرسل",
+ "sessionstart": "ي {{$a.date}}, ({{$a.fromnow}} وسوف تبدأ جلسة الدردشة القادمة في من الآن",
+ "talk": "حديث"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/bg.json b/src/addon/mod/chat/lang/bg.json
new file mode 100755
index 000000000..dd7f6963f
--- /dev/null
+++ b/src/addon/mod/chat/lang/bg.json
@@ -0,0 +1,14 @@
+{
+ "beep": "Биип",
+ "currentusers": "Текущи потребители",
+ "enterchat": "Влизане в чата сега",
+ "entermessage": "Въведете Вашето съобщение",
+ "errorwhilesendingmessage": "Възникна грешка по време на изпращане на съобщение; моля, опитайте отново по-късно.",
+ "messagebeepsyou": "{{$a}} току що Ви бибитна!",
+ "messageenter": "{{$a}} току що влезе в този чат",
+ "messageexit": "{{$a}} напусна този чат",
+ "nomessages": "Още няма съобщения",
+ "send": "Изпращане",
+ "sessionstart": "Следващата чат сесия ще започне след: {{$a}}",
+ "talk": "Разговор"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/ca.json b/src/addon/mod/chat/lang/ca.json
new file mode 100755
index 000000000..40e71c227
--- /dev/null
+++ b/src/addon/mod/chat/lang/ca.json
@@ -0,0 +1,19 @@
+{
+ "beep": "bip",
+ "currentusers": "Usuaris actuals",
+ "enterchat": "Feu clic aquí per entrar al xat",
+ "entermessage": "Escriviu el vostre missatge",
+ "errorwhileconnecting": "S'ha produït un error durant la connexió al xat.",
+ "errorwhilegettingchatdata": "S'ha produït un error mentre es recuperaven les dades del xat.",
+ "errorwhilegettingchatusers": "S'ha produït un error mentre es recuperaven els usuaris del xat.",
+ "errorwhileretrievingmessages": "S'ha produït un error mentre es recuperaven els missatges del servidor.",
+ "errorwhilesendingmessage": "S'ha produït un error mentre s'enviava el missatge.",
+ "messagebeepsyou": "{{$a}} t'acaba de fer bip!",
+ "messageenter": "{{$a}} acaba d'entrar en aquest xat",
+ "messageexit": "{{$a}} ha abandonat aquest xat",
+ "mustbeonlinetosendmessages": "Heu d'estar connectat per poder enviar missatges",
+ "nomessages": "No hi ha missatges encara",
+ "send": "Envia",
+ "sessionstart": "La propera sessió de xat començarà el: {{$a.date}}, (d'aquí a {{$a.fromnow}})",
+ "talk": "Parla"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/cs.json b/src/addon/mod/chat/lang/cs.json
new file mode 100755
index 000000000..a0e6fc3cd
--- /dev/null
+++ b/src/addon/mod/chat/lang/cs.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Prozvonit",
+ "currentusers": "Stávající uživatelé",
+ "enterchat": "Klikněte zde pro vstup do chatu",
+ "entermessage": "Vložte svou zprávu",
+ "errorwhileconnecting": "Chyba při připojování k chatu.",
+ "errorwhilegettingchatdata": "Chyba při načítání dat chatu.",
+ "errorwhilegettingchatusers": "Chyba při načítání uživatelů chatu.",
+ "errorwhileretrievingmessages": "Chyba při načítání zpráv ze serveru.",
+ "errorwhilesendingmessage": "Chyba při odeslání zprávy.",
+ "messagebeepsyou": "{{$a}} vás prozvání!",
+ "messageenter": "{{$a}} právě vstoupil(a) do tohoto chatu",
+ "messageexit": "{{$a}} opustil(a) tento chat",
+ "mustbeonlinetosendmessages": "Pro odesílání zpráv musíte být online",
+ "nomessages": "Zatím žádné zprávy",
+ "send": "Odeslat",
+ "sessionstart": "Další chatování začne v: {{$a.date}} (tj. za {{$a.fromnow}})",
+ "talk": "Diskuse"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/da.json b/src/addon/mod/chat/lang/da.json
new file mode 100755
index 000000000..904a47e23
--- /dev/null
+++ b/src/addon/mod/chat/lang/da.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Bip",
+ "currentusers": "Er i chatten nu:",
+ "enterchat": "Tryk her for at gå ind i chatten nu.",
+ "entermessage": "Skriv din besked",
+ "errorwhileconnecting": "Fejl ved tilkobling til chatten.",
+ "errorwhilegettingchatdata": "Fejl ved hentning af chatdata.",
+ "errorwhilegettingchatusers": "Fejl ved hentning af chatbrugere.",
+ "errorwhileretrievingmessages": "Fejl ved hentning af beskeder fra serveren.",
+ "errorwhilesendingmessage": "Fejl ved afsendelse af besked.",
+ "messagebeepsyou": "{{$a}} har lige bippet dig!",
+ "messageenter": "{{$a}} er lige kommet til",
+ "messageexit": "{{$a}} har forladt chatten",
+ "mustbeonlinetosendmessages": "Du skal være online for at sende beskeder",
+ "nomessages": "Ingen beskeder endnu",
+ "send": "Send",
+ "sessionstart": "Næste chat starter {{$a.date}}, ({{$a.fromnow}} fra nu af)",
+ "talk": "Tal"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/de-du.json b/src/addon/mod/chat/lang/de-du.json
new file mode 100755
index 000000000..5308feecd
--- /dev/null
+++ b/src/addon/mod/chat/lang/de-du.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Beep",
+ "currentusers": "Aktuelle Nutzer/innen",
+ "enterchat": "Willst du den Chat starten? Klick hier.",
+ "entermessage": "Schreiben Sie Ihre Nachricht.",
+ "errorwhileconnecting": "Fehler beim Verbinden zum Chat",
+ "errorwhilegettingchatdata": "Fehler beim Abrufen des Chats",
+ "errorwhilegettingchatusers": "Fehler beim Anzeigen der Personen im Chat",
+ "errorwhileretrievingmessages": "Fehler beim Abrufen der Mitteilungen vom Server",
+ "errorwhilesendingmessage": "Fehler beim Senden der Mitteilung",
+ "messagebeepsyou": "{{$a}} hat dich angepiepst!",
+ "messageenter": "{{$a}} hat den Chat gerade betreten",
+ "messageexit": "{{$a}} hat den Chat verlassen",
+ "mustbeonlinetosendmessages": "Du musst online sein, um Mitteilungen zu senden.",
+ "nomessages": "Keine Mitteilungen",
+ "send": "Senden",
+ "sessionstart": "Nächster Chat beginnt {{$a.date}}, (also in {{$a.fromnow}})",
+ "talk": "Sprechen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/de.json b/src/addon/mod/chat/lang/de.json
new file mode 100755
index 000000000..fa9cafbd0
--- /dev/null
+++ b/src/addon/mod/chat/lang/de.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Beep",
+ "currentusers": "Aktuelle Nutzer/innen",
+ "enterchat": "Chat betreten",
+ "entermessage": "Schreiben Sie Ihre Nachricht.",
+ "errorwhileconnecting": "Fehler beim Verbinden zum Chat",
+ "errorwhilegettingchatdata": "Fehler beim Abrufen des Chats",
+ "errorwhilegettingchatusers": "Fehler beim Anzeigen der Personen im Chat",
+ "errorwhileretrievingmessages": "Fehler beim Abrufen der Mitteilungen vom Server",
+ "errorwhilesendingmessage": "Fehler beim Senden der Mitteilung",
+ "messagebeepsyou": "{{$a}} hat Sie angepiepst!",
+ "messageenter": "{{$a}} hat den Chat gerade betreten",
+ "messageexit": "{{$a}} hat den Chat verlassen",
+ "mustbeonlinetosendmessages": "Sie müssen online sein, um Mitteilungen zu senden.",
+ "nomessages": "Keine Mitteilungen",
+ "send": "Senden",
+ "sessionstart": "Nächster Chat beginnt {{$a.date}}, (also in {{$a.fromnow}})",
+ "talk": "Sprechen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/el.json b/src/addon/mod/chat/lang/el.json
new file mode 100755
index 000000000..eb3c09108
--- /dev/null
+++ b/src/addon/mod/chat/lang/el.json
@@ -0,0 +1,18 @@
+{
+ "beep": "Ηχητικό σήμα",
+ "currentusers": "Τρέχοντες χρήστες",
+ "enterchat": "Κάντε κλικ εδώ για να μπείτε στη συζήτηση τώρα",
+ "entermessage": "Πληκτρολογήστε το μήνυμά σας",
+ "errorwhileconnecting": "Σφάλμα κατά τη σύνδεση στο chat.",
+ "errorwhilegettingchatdata": "Σφάλμα κατά την ανάκτηση των δεδομένων του chat.",
+ "errorwhilegettingchatusers": "Σφάλμα κατά την ανάκτηση των χρηστών του chat.",
+ "errorwhileretrievingmessages": "Σφάλμα κατά την ανάκτηση των μηνυμάτων από το διακομιστή.",
+ "errorwhilesendingmessage": "Σφάλμα κατά την αποστολή του μηνύματος.",
+ "messagebeepsyou": "{{$a}} μόλις σας ειδοποίησε!",
+ "messageenter": "{{$a}} έχει μπει σ' αυτή το συζήτηση",
+ "messageexit": "{{$a}} έχει φύγει από αυτή το συζήτηση",
+ "mustbeonlinetosendmessages": "Πρέπει να είστε συνδεδεμένοι για να στείλετε μηνύματα",
+ "nomessages": "Δεν υπάρχουν ακόμα μηνύματα",
+ "send": "Αποστολή",
+ "sessionstart": "Η επόμενη συνεδρία τσάτ θα αρχίσει στις {{$a.date}}, ({{$a.fromnow}} από τώρα)"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/es-mx.json b/src/addon/mod/chat/lang/es-mx.json
new file mode 100755
index 000000000..41893fb26
--- /dev/null
+++ b/src/addon/mod/chat/lang/es-mx.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Bip",
+ "currentusers": "Usuarios",
+ "enterchat": "Entrar a la sala",
+ "entermessage": "Escriba su mensaje",
+ "errorwhileconnecting": "Error al conectarse al chat",
+ "errorwhilegettingchatdata": "Error al obtener datos del chat.",
+ "errorwhilegettingchatusers": "Error al obtener usuarios del chat.",
+ "errorwhileretrievingmessages": "Error al recuperar mensajes del servidor.",
+ "errorwhilesendingmessage": "Error al enviar el mensaje.",
+ "messagebeepsyou": "{{$a}} le acaba de enviar un beep",
+ "messageenter": "{{$a}} entró a la sala",
+ "messageexit": "{{$a}} salió de la sala",
+ "mustbeonlinetosendmessages": "Usted debe de estar en-línea para enviar mensajes.",
+ "nomessages": "Aún no hay mensajes",
+ "send": "Enviar",
+ "sessionstart": "La siguiente sesión de chat comenzará en {{$a.date}}, dentro de ({{$a.fromnow}} a partir de ahora)",
+ "talk": "Charla"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/es.json b/src/addon/mod/chat/lang/es.json
new file mode 100755
index 000000000..5b44e523f
--- /dev/null
+++ b/src/addon/mod/chat/lang/es.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Beep",
+ "currentusers": "Usuarios",
+ "enterchat": "Entrar a la sala",
+ "entermessage": "Inserta tu mensaje",
+ "errorwhileconnecting": "Se ha producido un error conectando al chat.",
+ "errorwhilegettingchatdata": "Se ha producido un error recuperando los datos del chat.",
+ "errorwhilegettingchatusers": "Se ha producido un error recuperando los usuarios del chat.",
+ "errorwhileretrievingmessages": "Error al recuperar los mensajes del servidor.",
+ "errorwhilesendingmessage": "Se ha producido un error al enviar el mensaje.",
+ "messagebeepsyou": "{{$a}} le acaba de enviar un beep",
+ "messageenter": "{{$a}} entró a la sala",
+ "messageexit": "{{$a}} salió de la sala",
+ "mustbeonlinetosendmessages": "Usted debe de estar conectado a Internet para enviar mensajes",
+ "nomessages": "Aún no hay mensajes",
+ "send": "Enviar",
+ "sessionstart": "La próxima sesión de chat empezará el {{$a.date}}, (dentro de {{$a.fromnow}})",
+ "talk": "Charla"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/eu.json b/src/addon/mod/chat/lang/eu.json
new file mode 100755
index 000000000..2fa11a16e
--- /dev/null
+++ b/src/addon/mod/chat/lang/eu.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Abisua",
+ "currentusers": "Oraingo erabiltzaileak",
+ "enterchat": "Sakatu hemen txat-gelara sartzeko",
+ "entermessage": "Idatzi zure mezua",
+ "errorwhileconnecting": "Errorea txatera konektatzean.",
+ "errorwhilegettingchatdata": "Errorea txataren datuak eskuratzean.",
+ "errorwhilegettingchatusers": "Errorea txataren erabiltzaileak eskuratzean.",
+ "errorwhileretrievingmessages": "Errore bat gertatu da zerbitzaritik mezuak ekartzean.",
+ "errorwhilesendingmessage": "Errorea mezua bidaltzean.",
+ "messagebeepsyou": "{{$a}}-(e)k dio: Aizu! Hemen nago!",
+ "messageenter": "{{$a}} oraintxe sartu da gelan",
+ "messageexit": "{{$a}} irten egin da gelatik",
+ "mustbeonlinetosendmessages": "Online egon behar zara mezuak bidali ahal izateko.",
+ "nomessages": "Ez dago mezurik oraindik",
+ "send": "Bidali",
+ "sessionstart": "Txat-saioa {{$a.date}}-(e)tan hasiko da, (hemendik {{$a.fromnow}}-(e)ra)",
+ "talk": "Hitz egin"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/fa.json b/src/addon/mod/chat/lang/fa.json
new file mode 100755
index 000000000..35925c4ea
--- /dev/null
+++ b/src/addon/mod/chat/lang/fa.json
@@ -0,0 +1,12 @@
+{
+ "beep": "بوق",
+ "currentusers": "کاربران حاضر",
+ "enterchat": "برای ورود به اتاق گفتگو اینجا کلیک کنید",
+ "messagebeepsyou": "{{$a}} برای شما بوق فرستاد!",
+ "messageenter": "{{$a}} وارد اتاق گفتگو شد",
+ "messageexit": "{{$a}} اتاق گفتگو را ترک کرد",
+ "nomessages": "هنوز پیامی گفته نشده است",
+ "send": "ارسال",
+ "sessionstart": "جلسهٔ بعدی گفتگو {{$a.date}} شروع خواهد شد ({{$a.fromnow}} دیگر)",
+ "talk": "صحبت"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/fi.json b/src/addon/mod/chat/lang/fi.json
new file mode 100755
index 000000000..75ede6b9d
--- /dev/null
+++ b/src/addon/mod/chat/lang/fi.json
@@ -0,0 +1,19 @@
+{
+ "beep": "kutsu",
+ "currentusers": "Tämänhetkiset osallistujat",
+ "enterchat": "Napsauta tästä päästäksesi mukaan chattiin",
+ "entermessage": "Kirjoita viesti",
+ "errorwhileconnecting": "Virhe yhdistettäessä chattiin",
+ "errorwhilegettingchatdata": "Käyttäjän chat-tietoja haettaessa tapahtui virhe.",
+ "errorwhilegettingchatusers": "Chatin osallistujia haettaessa tapahtui virhe.",
+ "errorwhileretrievingmessages": "Virhe ladattaessa viestejä palvelimelta.",
+ "errorwhilesendingmessage": "Virhe viestinlähetyksessä.",
+ "messagebeepsyou": "{{$a}} on juuri kutsunut sinua!",
+ "messageenter": "{{$a}} on juuri tullut mukaan chattiin",
+ "messageexit": "{{$a}} on lopettanut chatin",
+ "mustbeonlinetosendmessages": "Sinun on oltava online-tilassa lähettääksesi viestejä.",
+ "nomessages": "Ei viestejä",
+ "send": "Lähetä",
+ "sessionstart": "Keskustelun aloitusaika: {{$a}}",
+ "talk": "Puhu"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/fr.json b/src/addon/mod/chat/lang/fr.json
new file mode 100755
index 000000000..2c48a78d0
--- /dev/null
+++ b/src/addon/mod/chat/lang/fr.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Bip",
+ "currentusers": "Utilisateurs en ligne",
+ "enterchat": "Cliquer ici pour participer au chat",
+ "entermessage": "Saisissez votre message",
+ "errorwhileconnecting": "Erreur lors de la connexion au chat.",
+ "errorwhilegettingchatdata": "Erreur lors de l'obtention des données de chat.",
+ "errorwhilegettingchatusers": "Erreur lors de l'obtention des usagers du chat.",
+ "errorwhileretrievingmessages": "Erreur lors de la récupération de messages sur le serveur.",
+ "errorwhilesendingmessage": "Erreur lors de l'envoi du message.",
+ "messagebeepsyou": "{{$a}} vient de vous biper !",
+ "messageenter": "{{$a}} vient d'entrer",
+ "messageexit": "{{$a}} a quitté ce chat",
+ "mustbeonlinetosendmessages": "Vous devez être en ligne pour envoyer des messages.",
+ "nomessages": "Pas encore de messages",
+ "send": "Envoyer",
+ "sessionstart": "La prochaine session de chat commencera le {{$a.date}}, (dans {{$a.fromnow}})",
+ "talk": "Parler"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/he.json b/src/addon/mod/chat/lang/he.json
new file mode 100755
index 000000000..129855c2b
--- /dev/null
+++ b/src/addon/mod/chat/lang/he.json
@@ -0,0 +1,15 @@
+{
+ "beep": "ציפצוף",
+ "currentusers": "משתמשים נוכחיים",
+ "enterchat": "הקליקו כאן כדי להיכנס לרב-שיח הנוכחי",
+ "entermessage": "הזנת ההודעה שלך",
+ "errorwhilesendingmessage": "שגיאה התרחשה בעת שליחת המסר, יש לנסות שוב מאוחר יותר.",
+ "messagebeepsyou": "{{$a}} ציפצף לך הרגע!",
+ "messageenter": "{{$a}} נכנס/ה לרב-שיח זה",
+ "messageexit": "{{$a}} עזב/ה רב-שיח זה",
+ "mustbeonlinetosendmessages": "עליך להיות מחובר בכדי לשלוח הודעות.",
+ "nomessages": "אין הודעות עדיין",
+ "send": "שליחה",
+ "sessionstart": "מפגש הרב-שיח הבא יתחיל ב: {{$a.date}}, ({{$a.fromnow}} מעכשיו)",
+ "talk": "דברו"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/hr.json b/src/addon/mod/chat/lang/hr.json
new file mode 100755
index 000000000..4051052e5
--- /dev/null
+++ b/src/addon/mod/chat/lang/hr.json
@@ -0,0 +1,13 @@
+{
+ "beep": "Bocni",
+ "currentusers": "Trenutačno prijavljeni korisnici",
+ "enterchat": "Kliknite ovdje za pristup chatu",
+ "entermessage": "Upišite svoju poruku",
+ "messagebeepsyou": "{{$a}} vas je upravo bocnuo!",
+ "messageenter": "Korisnik {{$a}} je došao na chat",
+ "messageexit": "Korisnik {{$a}} je otišao s chata",
+ "nomessages": "Nema poruka (još)",
+ "send": "Pošalji",
+ "sessionstart": "Sljedeća chat sesija će biti pokrenuta u: {{$a}}",
+ "talk": "Pričaj"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/hu.json b/src/addon/mod/chat/lang/hu.json
new file mode 100755
index 000000000..4200be147
--- /dev/null
+++ b/src/addon/mod/chat/lang/hu.json
@@ -0,0 +1,14 @@
+{
+ "beep": "Hangjelzés",
+ "currentusers": "Mostani felhasználók",
+ "enterchat": "Kattintson ide a csevegésbe való bekapcsolódáshoz",
+ "entermessage": "Írja be az üzenetet",
+ "errorwhilesendingmessage": "HIba történt az üzenet küldése közben. Próbálja meg később!",
+ "messagebeepsyou": "{{$a}} most csöngetett Önnek!",
+ "messageenter": "{{$a}} most lépett be a csevegésbe",
+ "messageexit": "{{$a}} most lépett ki a csevegésből",
+ "nomessages": "Még nincs üzenet",
+ "send": "Elküld",
+ "sessionstart": "A következő csevegés kezdete {{$a.date}}, (mostantól {{$a.fromnow}})",
+ "talk": "Beszéljen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/it.json b/src/addon/mod/chat/lang/it.json
new file mode 100755
index 000000000..af86798df
--- /dev/null
+++ b/src/addon/mod/chat/lang/it.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Beep",
+ "currentusers": "Utenti attivi",
+ "enterchat": "Entra nella chat",
+ "entermessage": "Inserisci il tuo messaggio",
+ "errorwhileconnecting": "Si è verificato un errore durante il collegamento alla chat.",
+ "errorwhilegettingchatdata": "Si è verificato un errore durante la ricezione dei dati della chat.",
+ "errorwhilegettingchatusers": "Si è verificato un errore durante la ricezione degli utenti della chat.",
+ "errorwhileretrievingmessages": "Si è verificato un errore durante la ricezione dei messaggi dal server.",
+ "errorwhilesendingmessage": "Si è verificato un errore durante l'invio del messaggio.",
+ "messagebeepsyou": "{{$a}} ti ha richiamato!",
+ "messageenter": "{{$a}} è entrato nella chat",
+ "messageexit": "{{$a}} ha lasciato la chat",
+ "mustbeonlinetosendmessages": "Per inviare messaggi devi essere online.",
+ "nomessages": "Non ci sono ancora messaggi",
+ "send": "Invia",
+ "sessionstart": "La prossima sessione di chat inizierà il {{$a}}, ({{$a.fromnow}} da adesso)",
+ "talk": "Parla"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/ja.json b/src/addon/mod/chat/lang/ja.json
new file mode 100755
index 000000000..37dd5b016
--- /dev/null
+++ b/src/addon/mod/chat/lang/ja.json
@@ -0,0 +1,19 @@
+{
+ "beep": "ビープ",
+ "currentusers": "現在のユーザ",
+ "enterchat": "ここをクリックしてチャットルームに入室する",
+ "entermessage": "あなたのメッセージを入力してください。",
+ "errorwhileconnecting": "チャットに接続する際にエラーが発生しました。",
+ "errorwhilegettingchatdata": "チャットのデータを取得中にエラーが発生しました。",
+ "errorwhilegettingchatusers": "チャットのユーザを取得中にエラーが発生しました。",
+ "errorwhileretrievingmessages": "サーバからメッセージを取得中にエラーが発生しました。",
+ "errorwhilesendingmessage": "メッセージ送信中にエラーが発生しました。",
+ "messagebeepsyou": "{{$a}} があなたにビープしました!",
+ "messageenter": "このチャットに {{$a}} が入室しました。",
+ "messageexit": "このチャットから {{$a}} が退室しました。",
+ "mustbeonlinetosendmessages": "メッセージを送信するにはオンラインでなければなりません。",
+ "nomessages": "メッセージがありません。",
+ "send": "送信",
+ "sessionstart": "次のチャットセッションは {{$a.date}} に開始されます (現在から {{$a.fromnow}} 後)。",
+ "talk": "会話"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/ko.json b/src/addon/mod/chat/lang/ko.json
new file mode 100755
index 000000000..18b5595fd
--- /dev/null
+++ b/src/addon/mod/chat/lang/ko.json
@@ -0,0 +1,13 @@
+{
+ "beep": "호출",
+ "currentusers": "현재 참여자",
+ "enterchat": "대화에 참여하려면 여기를 클릭!",
+ "entermessage": "메세지를 입력하세요.",
+ "messagebeepsyou": "{{$a}}가 나를 호출했음!",
+ "messageenter": "{{$a}} 대화방에 들어옴",
+ "messageexit": "{{$a}} 대화방을 나감",
+ "nomessages": "아직 메시지 없음",
+ "send": "전송",
+ "sessionstart": "대화방 세션이 {{$a}} 에 시작할 것입니다.",
+ "talk": "말하기"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/lt.json b/src/addon/mod/chat/lang/lt.json
new file mode 100755
index 000000000..b71c2b820
--- /dev/null
+++ b/src/addon/mod/chat/lang/lt.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Pyp",
+ "currentusers": "Dabartiniai naudotojai",
+ "enterchat": "Spustelėkite čia, kad prisijungtumėte prie pokalbio dabar",
+ "entermessage": "Įveskite savo žinutę",
+ "errorwhileconnecting": "Įvyko klaida jungiantis prie pokalbio.",
+ "errorwhilegettingchatdata": "Klaida gaunant pokalbio duomenis.",
+ "errorwhilegettingchatusers": "Klaida gaunant pokalbio dalyvių informaciją.",
+ "errorwhileretrievingmessages": "Klaida gaunant žinutes iš serverio.",
+ "errorwhilesendingmessage": "Klaida siunčiant žinutę.",
+ "messagebeepsyou": "{{$a}} ką tik pyptelėjo jums!",
+ "messageenter": "{{$a}} ką tik prisijungė prie šio pokalbio",
+ "messageexit": "{{$a}} ką tik paliko šį pokalbį",
+ "mustbeonlinetosendmessages": "Norėdamas išsiųsti žinutę, turite būti prisijungęs.",
+ "nomessages": "Žinučių dar nėra",
+ "send": "Siųsti",
+ "sessionstart": "Kitas pokalbio seansas prasidės {{$a.date}}, ({{$a.fromnow}} nuo dabar)",
+ "talk": "Kalbėti"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/mr.json b/src/addon/mod/chat/lang/mr.json
new file mode 100755
index 000000000..3f849e5af
--- /dev/null
+++ b/src/addon/mod/chat/lang/mr.json
@@ -0,0 +1,12 @@
+{
+ "beep": "आवाज",
+ "currentusers": "सध्याचा उपभोक्ता",
+ "enterchat": "संभाषणासाठी प्रवेश करा",
+ "errorwhileconnecting": "चॅटशी कनेक्ट करताना त्रुटी.",
+ "errorwhilegettingchatdata": "गप्पा डेटा मिळवताना त्रुटी",
+ "errorwhilegettingchatusers": "गप्पा वापरकर्ते मिळविताना त्रुटी.",
+ "errorwhileretrievingmessages": "सर्व्हरवरून संदेश पुनर्प्राप्त करताना त्रुटी.",
+ "errorwhilesendingmessage": "संदेश पाठवताना त्रुटी.",
+ "mustbeonlinetosendmessages": "आपल्याला संदेश पाठविण्यासाठी ऑनलाइन असणे आवश्यक आहे",
+ "nomessages": "आजुन पर्यत संदेश नाही"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/nl.json b/src/addon/mod/chat/lang/nl.json
new file mode 100755
index 000000000..5249f46bb
--- /dev/null
+++ b/src/addon/mod/chat/lang/nl.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Piep",
+ "currentusers": "Huidige gebruikers",
+ "enterchat": "Klik hier om de chat nu binnen te gaan",
+ "entermessage": "Geef je bericht",
+ "errorwhileconnecting": "Fout bij het verbinden met de chat.",
+ "errorwhilegettingchatdata": "Fout bij het ophalen van de chatgegevens.",
+ "errorwhilegettingchatusers": "Fout bij het ophalen van de chatgebruikers.",
+ "errorwhileretrievingmessages": "Fout bij het ophalen van de berichten van de server.",
+ "errorwhilesendingmessage": "Fout tijdens het versturen van het bericht.",
+ "messagebeepsyou": "{{$a}} heeft je net gepiept!",
+ "messageenter": "{{$a}} is net deze chat binnen gekomen",
+ "messageexit": "{{$a}} heeft deze chat verlaten",
+ "mustbeonlinetosendmessages": "Je moet online zijn om berichten te versturen.",
+ "nomessages": "Nog geen berichten",
+ "send": "Stuur",
+ "sessionstart": "De volgende chatsessie zal beginnen op {{$a.date}}, ({{$a.fromnow}} vanaf nu)",
+ "talk": "Spreek"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/no.json b/src/addon/mod/chat/lang/no.json
new file mode 100755
index 000000000..9dfd2ca43
--- /dev/null
+++ b/src/addon/mod/chat/lang/no.json
@@ -0,0 +1,16 @@
+{
+ "beep": "tut",
+ "currentusers": "Nåværende brukere",
+ "enterchat": "Start praten",
+ "entermessage": "Skriv inn din melding",
+ "errorwhileretrievingmessages": "Feil ved henting av melding fra server.",
+ "errorwhilesendingmessage": "Melding kunne ikke sendes.",
+ "messagebeepsyou": "{{$a}} har tutet på deg",
+ "messageenter": "{{$a}} har akkurat kommet",
+ "messageexit": "{{$a}} har forlatt denne praten",
+ "mustbeonlinetosendmessages": "Du må være på nett for å sende meldinger.",
+ "nomessages": "Ingen beskjeder ennå",
+ "send": "Send",
+ "sessionstart": "Prateøkten vil starte: {{$a.date}}, ({{$a.fromnow}} fra nå)",
+ "talk": "Snakk"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/pl.json b/src/addon/mod/chat/lang/pl.json
new file mode 100755
index 000000000..b1a54b073
--- /dev/null
+++ b/src/addon/mod/chat/lang/pl.json
@@ -0,0 +1,14 @@
+{
+ "beep": "rozmawia",
+ "currentusers": "Bieżący użytkownicy",
+ "enterchat": "Naciśnij tu, aby wejść na czat",
+ "entermessage": "Wprowadź wiadomość",
+ "errorwhilesendingmessage": "Wystąpił błąd podczas wysyłania wiadomości, proszę spróbować później,",
+ "messagebeepsyou": "{{$a}} właśnie do Ciebie napisał",
+ "messageenter": "{{$a}} właśnie wszedł na czat",
+ "messageexit": "{{$a}} opuścił czat",
+ "nomessages": "Brak wiadomości",
+ "send": "Wyślij",
+ "sessionstart": "Sesja czatu rozpocznie się za: {$ a}}",
+ "talk": "Dyskusja"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/pt-br.json b/src/addon/mod/chat/lang/pt-br.json
new file mode 100755
index 000000000..eca3a53a9
--- /dev/null
+++ b/src/addon/mod/chat/lang/pt-br.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Bip",
+ "currentusers": "Usuários atuais",
+ "enterchat": "Clique aqui para entrar no chat agora",
+ "entermessage": "Digite sua mensagem",
+ "errorwhileconnecting": "Erro ao se conectar.",
+ "errorwhilegettingchatdata": "Erro ao se conectar ao chat.",
+ "errorwhilegettingchatusers": "Erro ao obter os usuários de bate-papo.",
+ "errorwhileretrievingmessages": "Erro ao recuperar as mensagens do servidor.",
+ "errorwhilesendingmessage": "Erro ao enviar a mensagem.",
+ "messagebeepsyou": "{{$a}} está bipando você!",
+ "messageenter": "{{$a}} entrou no chat",
+ "messageexit": "{{$a}} abandonou este chat",
+ "mustbeonlinetosendmessages": "Você deve estar online para enviar mensagens",
+ "nomessages": "Nenhuma mensagem ainda",
+ "send": "Enviar",
+ "sessionstart": "A próxima sessão de chat irá começar em {{$a.date}}, ({{$a.fromnow}} a partir de agora)",
+ "talk": "Falar"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/pt.json b/src/addon/mod/chat/lang/pt.json
new file mode 100755
index 000000000..880e0fad8
--- /dev/null
+++ b/src/addon/mod/chat/lang/pt.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Chamar",
+ "currentusers": "Utilizadores no chat",
+ "enterchat": "Clique aqui para entrar no chat",
+ "entermessage": "Introduza a sua mensagem",
+ "errorwhileconnecting": "Erro ao entrar no chat.",
+ "errorwhilegettingchatdata": "Erro ao obter os dados do chat.",
+ "errorwhilegettingchatusers": "Erro ao obter os utilizadores do chat.",
+ "errorwhileretrievingmessages": "Erro ao obter mensagens do servidor.",
+ "errorwhilesendingmessage": "Erro ao enviar a mensagem.",
+ "messagebeepsyou": "{{$a}} acabou de o chamar!",
+ "messageenter": "{{$a}} acabou de entrar neste chat",
+ "messageexit": "{{$a}} acabou de sair deste chat",
+ "mustbeonlinetosendmessages": "Tem de estar online para poder enviar mensagens.",
+ "nomessages": "Ainda não há mensagens",
+ "send": "Enviar",
+ "sessionstart": "A próxima sessão de chat irá iniciar em {{$a.date}}, ({{$a.fromnow}} a partir de agora)",
+ "talk": "Falar"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/ro.json b/src/addon/mod/chat/lang/ro.json
new file mode 100755
index 000000000..71520bed6
--- /dev/null
+++ b/src/addon/mod/chat/lang/ro.json
@@ -0,0 +1,18 @@
+{
+ "beep": "beep",
+ "currentusers": "Utilizatori logaţi",
+ "enterchat": "Clic pentru a intra în conversaţie",
+ "entermessage": "Inserați mesajul dumneavoastră",
+ "errorwhileconnecting": "A apărut o eroare la conectarea în chat.",
+ "errorwhilegettingchatdata": "A apărut o eroare la primirea de informații din chat.",
+ "errorwhilegettingchatusers": "A apărut o eroare la obținerea listei cu utilizatorii din chat.",
+ "errorwhileretrievingmessages": "A apărut o eroare la primirea mesajelor de pe server.",
+ "errorwhilesendingmessage": "A apărut o eroare la trimiterea mesajului.",
+ "messagebeepsyou": "{{$a}} v-a trimis o atenţionare!",
+ "messageenter": "{{$a}} a intrat în această cameră de discuţii",
+ "messageexit": "{{$a}} a ieşit din această cameră de discuţii",
+ "mustbeonlinetosendmessages": "Trebuie să fiți conectat pentru a trimite mesaje",
+ "nomessages": "Nu a fost trimis încă niciun mesaj",
+ "send": "Trimis",
+ "sessionstart": "Următoarea sesiune de chat va începe în {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/ru.json b/src/addon/mod/chat/lang/ru.json
new file mode 100755
index 000000000..71e755070
--- /dev/null
+++ b/src/addon/mod/chat/lang/ru.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Сигнал",
+ "currentusers": "Текущие пользователи",
+ "enterchat": "Войти в чат",
+ "entermessage": "Введите свое сообщение",
+ "errorwhileconnecting": "Ошибка при подключении к чату",
+ "errorwhilegettingchatdata": "Ошибка при получении данных из чата",
+ "errorwhilegettingchatusers": "Ошибка при получении пользователей чата",
+ "errorwhileretrievingmessages": "Ошибка при получении сообщения от сервера.",
+ "errorwhilesendingmessage": "Ошибка при отправке сообщения",
+ "messagebeepsyou": "{{$a}} отправил Вам сигнал!",
+ "messageenter": "{{$a}} появился в чате",
+ "messageexit": "{{$a}} ушел из чата",
+ "mustbeonlinetosendmessages": "Вы должны быть в сети, чтобы отправлять сообщения.",
+ "nomessages": "Нет ни одного сообщения",
+ "send": "Отправить",
+ "sessionstart": "Следующий сеанс чата начнётся: {{$a.date}}, (через {{$a.fromnow}})",
+ "talk": "Разговор"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/sr-cr.json b/src/addon/mod/chat/lang/sr-cr.json
new file mode 100755
index 000000000..be3c293d9
--- /dev/null
+++ b/src/addon/mod/chat/lang/sr-cr.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Звучни сигнал",
+ "currentusers": "Тренутни корисници",
+ "enterchat": "Кликните овде за улазак у причаоницу",
+ "entermessage": "Унесите вашу поруку",
+ "errorwhileconnecting": "Грешка приликом повезивања са причаоницом.",
+ "errorwhilegettingchatdata": "Грешка приликом преузимања података за 'Причаоницу'.",
+ "errorwhilegettingchatusers": "Грешка приликом преузимања корисника причаонице.",
+ "errorwhileretrievingmessages": "Грешка приликом преузимања порука са сервера.",
+ "errorwhilesendingmessage": "Грешка приликом слања поруке.",
+ "messagebeepsyou": "{{$a}} вас је управо поздравио/ла звучним сигналом!",
+ "messageenter": "Учесник {{$a}} управо улази у причаоницу",
+ "messageexit": "Учесник {{$a}} управо напушта причаоницу",
+ "mustbeonlinetosendmessages": "Морате бити онлајн како бисте слали поруке.",
+ "nomessages": "Још нема порука",
+ "send": "Пошаљи",
+ "sessionstart": "Следећа сесија ће почети дана {{$a.date}}, ({{$a.fromnow}} од сада)",
+ "talk": "Причај"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/sr-lt.json b/src/addon/mod/chat/lang/sr-lt.json
new file mode 100755
index 000000000..dca8b6cbd
--- /dev/null
+++ b/src/addon/mod/chat/lang/sr-lt.json
@@ -0,0 +1,19 @@
+{
+ "beep": "Zvučni signal",
+ "currentusers": "Trenutni korisnici",
+ "enterchat": "Kliknite ovde za ulazak u pričaonicu",
+ "entermessage": "Unesite vašu poruku",
+ "errorwhileconnecting": "Greška prilikom povezivanja sa pričaonicom.",
+ "errorwhilegettingchatdata": "Greška prilikom preuzimanja podataka za 'Pričaonicu'.",
+ "errorwhilegettingchatusers": "Greška prilikom preuzimanja korisnika pričaonice.",
+ "errorwhileretrievingmessages": "Greška prilikom preuzimanja poruka sa servera.",
+ "errorwhilesendingmessage": "Greška prilikom slanja poruke.",
+ "messagebeepsyou": "{{$a}} vas je upravo pozdravio/la zvučnim signalom!",
+ "messageenter": "Učesnik {{$a}} upravo ulazi u pričaonicu",
+ "messageexit": "Učesnik {{$a}} upravo napušta pričaonicu",
+ "mustbeonlinetosendmessages": "Morate biti onlajn kako biste slali poruke.",
+ "nomessages": "Još nema poruka",
+ "send": "Pošalji",
+ "sessionstart": "Sledeća sesija će početi dana {{$a.date}}, ({{$a.fromnow}} od sada)",
+ "talk": "Pričaj"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/sv.json b/src/addon/mod/chat/lang/sv.json
new file mode 100755
index 000000000..cc26779e5
--- /dev/null
+++ b/src/addon/mod/chat/lang/sv.json
@@ -0,0 +1,19 @@
+{
+ "beep": "pipsignal",
+ "currentusers": "Aktuella användare",
+ "enterchat": "Klicka här för att gå in i direktsamtalet nu",
+ "entermessage": "Sriv ditt meddelande",
+ "errorwhileconnecting": "Fel vid anslutning till chatten",
+ "errorwhilegettingchatdata": "Fel vid vid hämtning av chattdata",
+ "errorwhilegettingchatusers": "Fel vid vid hämtning av chattanvändare",
+ "errorwhileretrievingmessages": "Fel vid hämtning av meddelanden från servern",
+ "errorwhilesendingmessage": "Fel när meddelandet skickades",
+ "messagebeepsyou": "{{$a}} har just skickat en pipsignal till Dig",
+ "messageenter": "{{$a}} har precis kommit in i detta direktsamtal",
+ "messageexit": "{{$a}} har lämnat det här direktsamtalet",
+ "mustbeonlinetosendmessages": "Du måste vara online för att skicka meddelanden",
+ "nomessages": "Inga meddelanden än",
+ "send": "Skicka",
+ "sessionstart": "Sessionen för direktsamtal kommer att starta inom: {{$a}}",
+ "talk": "Tala"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/tg.json b/src/addon/mod/chat/lang/tg.json
new file mode 100755
index 000000000..1eb1cda5d
--- /dev/null
+++ b/src/addon/mod/chat/lang/tg.json
@@ -0,0 +1,13 @@
+{
+ "beep": "сигнал",
+ "currentusers": "Истифодабарандагони ҳозира",
+ "enterchat": "Ба чат даромадан",
+ "entermessage": "Паёми худро ворид созед",
+ "messagebeepsyou": "{{$a}} ба Шумо сигнал фиристод!",
+ "messageenter": "{{$a}} дар чат намоён шуд",
+ "messageexit": "{{$a}} аз чат рафт",
+ "nomessages": "Ҳеҷ як мактубча нест",
+ "send": "Фиристода шавад",
+ "sessionstart": "Сессияи чат сар мешавад: {{$a}}",
+ "talk": "Гуфтугӯ"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/tr.json b/src/addon/mod/chat/lang/tr.json
new file mode 100755
index 000000000..f3deef5d5
--- /dev/null
+++ b/src/addon/mod/chat/lang/tr.json
@@ -0,0 +1,13 @@
+{
+ "beep": "biip",
+ "currentusers": "Aktif kullanıcılar",
+ "enterchat": "Şimdi sohbete katıl",
+ "entermessage": "Mesajınızı buraya girin",
+ "messagebeepsyou": "{{$a}} size sesleniyor!",
+ "messageenter": "{{$a}} odaya girdi",
+ "messageexit": "{{$a}} odadan ayrıldı",
+ "nomessages": "Henüz mesaj yok",
+ "send": "Gönder",
+ "sessionstart": "Bir sonraki görüşme oturumu {{$a.date}}, ({{$a.fromnow}} şu andan itibaren)",
+ "talk": "Sohbet et"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/uk.json b/src/addon/mod/chat/lang/uk.json
new file mode 100755
index 000000000..ab756410d
--- /dev/null
+++ b/src/addon/mod/chat/lang/uk.json
@@ -0,0 +1,19 @@
+{
+ "beep": "сигнал",
+ "currentusers": "Поточні користувачі",
+ "enterchat": "Увійти в чат",
+ "entermessage": "Введіть ваше повідомлення",
+ "errorwhileconnecting": "Помилка при підключенні до чату.",
+ "errorwhilegettingchatdata": "Помилка отримання даних чату.",
+ "errorwhilegettingchatusers": "Помилка отримання користувачів чату.",
+ "errorwhileretrievingmessages": "Помилка отримання повідомлень з серверу.",
+ "errorwhilesendingmessage": "Помилка відправки повідомлення.",
+ "messagebeepsyou": "{{$a}} відправив Вам сигнал!",
+ "messageenter": "{{$a}} з'явився в чаті",
+ "messageexit": "{{$a}} пішов із чату",
+ "mustbeonlinetosendmessages": "Ви повинні бути онлайн для відправки повідомлення",
+ "nomessages": "Ще немає повідомлень",
+ "send": "Відіслати",
+ "sessionstart": "Чат-сесію буде розпочато: {{$a}}",
+ "talk": "Розмова"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/zh-cn.json b/src/addon/mod/chat/lang/zh-cn.json
new file mode 100755
index 000000000..4f3bd2fee
--- /dev/null
+++ b/src/addon/mod/chat/lang/zh-cn.json
@@ -0,0 +1,14 @@
+{
+ "beep": "呼叫",
+ "currentusers": "当前用户",
+ "enterchat": "进入聊天室",
+ "entermessage": "输入您的信息",
+ "errorwhilesendingmessage": "发送消息时发生错误,请稍后再试。",
+ "messagebeepsyou": "{{$a}}刚刚呼叫您!",
+ "messageenter": "{{$a}}刚刚进入聊天室",
+ "messageexit": "{{$a}}已退出聊天室",
+ "nomessages": "无消息",
+ "send": "发送",
+ "sessionstart": "聊天会话开始时间:{{$a}}",
+ "talk": "交谈"
+}
\ No newline at end of file
diff --git a/src/addon/mod/chat/lang/zh-tw.json b/src/addon/mod/chat/lang/zh-tw.json
new file mode 100755
index 000000000..193467d9f
--- /dev/null
+++ b/src/addon/mod/chat/lang/zh-tw.json
@@ -0,0 +1,19 @@
+{
+ "beep": "呼叫",
+ "currentusers": "當前用戶",
+ "enterchat": "點選這裡進入聊天室",
+ "entermessage": "輸入您的訊息",
+ "errorwhileconnecting": "連接到聊天時出錯.",
+ "errorwhilegettingchatdata": "取得聊天資料時發生錯誤.",
+ "errorwhilegettingchatusers": "取得聊天使用者時發生錯誤.",
+ "errorwhileretrievingmessages": "從伺服器存取訊息時發生錯誤",
+ "errorwhilesendingmessage": "當傳送訊息時發生錯誤",
+ "messagebeepsyou": "{{$a}} 呼叫您",
+ "messageenter": "{{$a}} 剛加入這次聊天",
+ "messageexit": "{{$a}} 已退出這次聊天",
+ "mustbeonlinetosendmessages": "您必須上線才能傳送訊息",
+ "nomessages": "尚無訊息",
+ "send": "傳送",
+ "sessionstart": "下一個聊天時段即將在{{$a.date}}開始,(離現在{{$a.fromnow}} )",
+ "talk": "交談"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/ar.json b/src/addon/mod/choice/lang/ar.json
new file mode 100755
index 000000000..60ff70d91
--- /dev/null
+++ b/src/addon/mod/choice/lang/ar.json
@@ -0,0 +1,15 @@
+{
+ "choiceoptions": "خيارات الاختيار",
+ "expired": "عذراً، تم إغلاق هذا النشاط في {{$a}} وهو غير متوفر الآن.",
+ "full": "(كامل)",
+ "noresultsviewable": "حالياً لا يمكن معاينة النتائج",
+ "notopenyet": "عذرا، هذا النشاط سيكون متوفر في {{$a}}",
+ "numberofuser": "عدد المستخدمين",
+ "numberofuserinpercentage": "عدد المستخدمين كنسبة",
+ "removemychoice": "استبعد خياري",
+ "responses": "إجابات",
+ "responsesresultgraphheader": "عرض كمنحني",
+ "savemychoice": "حفظ الاختيار",
+ "userchoosethisoption": "المستخدمين الذين اختاروا هذا الخيار",
+ "yourselection": "أختيارك"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/bg.json b/src/addon/mod/choice/lang/bg.json
new file mode 100755
index 000000000..8d68c6256
--- /dev/null
+++ b/src/addon/mod/choice/lang/bg.json
@@ -0,0 +1,15 @@
+{
+ "choiceoptions": "Възможности за избиране",
+ "expired": "За съжаление тази дейност е затворена от {{$a}} и вече не е достъпна",
+ "full": "(Пълен)",
+ "noresultsviewable": "В момента резултатите не са за показване.",
+ "notopenyet": "За съжаление тази дейност не е достъпна до {{$a}}",
+ "numberofuser": "Брой участници",
+ "numberofuserinpercentage": "Процент потребители",
+ "removemychoice": "Изтриване на моя избор",
+ "responses": "Отговори",
+ "responsesresultgraphheader": "Показване на графика",
+ "savemychoice": "Запис на моя избор",
+ "userchoosethisoption": "Потребители, избрали възможността",
+ "yourselection": "Вашият избор"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/ca.json b/src/addon/mod/choice/lang/ca.json
new file mode 100755
index 000000000..c0a93b721
--- /dev/null
+++ b/src/addon/mod/choice/lang/ca.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Hi ha hagut un problema en la tramesa de la vostra resposta. Torneu-ho a intentar.",
+ "choiceoptions": "Opcions de la tria",
+ "errorgetchoice": "S'ha produït un error en recuperar les dades de la consulta.",
+ "expired": "Aquesta activitat es va tancar el dia {{$a}} i ja no està disponible.",
+ "full": "(Complet)",
+ "noresultsviewable": "A hores d'ara no es poden veure els resultats",
+ "notopenyet": "Aquesta activitat no estarà disponible fins al dia {{$a}}",
+ "numberofuser": "Nombre de respostes",
+ "numberofuserinpercentage": "Percentatge de respostes (%)",
+ "previewonly": "Això és sols una vista prèvia de les opcions disponibles en aquesta activitat. No esteu habilitat per enviar consultes fins {{$a}}.",
+ "removemychoice": "Suprimeix la meva resposta",
+ "responses": "Respostes",
+ "responsesresultgraphdescription": "{{number}}% dels usuaris han escollit l'opció: {{text}}.",
+ "responsesresultgraphheader": "Mostra la gràfica",
+ "resultsnotsynced": "Els resultats no inclouen la vostra darrera resposta. Sincronitzeu per actualitzar-los.",
+ "savemychoice": "Desa la meva resposta",
+ "userchoosethisoption": "Usuaris que han escollit aquesta opció",
+ "yourselection": "La vostra selecció"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/cs.json b/src/addon/mod/choice/lang/cs.json
new file mode 100755
index 000000000..d86ef9605
--- /dev/null
+++ b/src/addon/mod/choice/lang/cs.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Omlouváme se, nastal problém odesláním vaší odpovědi. Zkuste to prosím znovu.",
+ "choiceoptions": "Možné odpovědi na anketu",
+ "errorgetchoice": "Chyba při načítání dat ankety.",
+ "expired": "Je nám líto, tato činnost byla uzavřena {{$a}} a není nadále dostupná",
+ "full": "(Obsazeno)",
+ "noresultsviewable": "Výsledky nejsou momentálně k dispozici",
+ "notopenyet": "Je nám líto, tato činnost není až do {{$a}} dostupná.",
+ "numberofuser": "Počet odpovědí",
+ "numberofuserinpercentage": "Počet odpovědí v procentech",
+ "previewonly": "Toto je náhled dostupných možností v této anketě. Hlasovat budete moci od {{$a}}.",
+ "removemychoice": "Odstranit mou volbu",
+ "responses": "Odpovědi",
+ "responsesresultgraphdescription": "{{number}}% uživatelů zvolilo možnost: {{text}}.",
+ "responsesresultgraphheader": "Graf",
+ "resultsnotsynced": "Vaše poslední odpověď musí být synchronizována předtím, než je zahrnuta do výsledků.",
+ "savemychoice": "Uložit mou volbu",
+ "userchoosethisoption": "Uživatelé, kteří si vybrali tuto alternativu",
+ "yourselection": "Vaše volba"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/da.json b/src/addon/mod/choice/lang/da.json
new file mode 100755
index 000000000..2ac4692ff
--- /dev/null
+++ b/src/addon/mod/choice/lang/da.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Der var desværre problemer med at indsende dit valg. Prøv igen.",
+ "choiceoptions": "Valgmuligheder",
+ "errorgetchoice": "Fejl ved hentning af valgte data",
+ "expired": "Beklager, denne aktivitet er lukket d. {{$a}} og er ikke længere tilgængelig",
+ "full": "(Fuld)",
+ "noresultsviewable": "Resultaterne er ikke tilgængelige på nuværende tidspunkt.",
+ "notopenyet": "Denne aktivitet er tilgængelig fra {{$a}}",
+ "numberofuser": "Antal svar",
+ "numberofuserinpercentage": "Antal svar i procent",
+ "previewonly": "Dette er en forhåndsvisning af de tilgængelige valgmuligheder i denne afstemning. Du kan ikke indsende dine valg før {{$a}}.",
+ "removemychoice": "Slet mit valg",
+ "responses": "Besvarelser",
+ "responsesresultgraphdescription": "{{number}}% af brugerne vælger denne mulighed: {{test}}",
+ "responsesresultgraphheader": "Grafisk visning",
+ "resultsnotsynced": "Resultater medtager ikke dine seneste svar. Synkroniser for at opdatere dem.",
+ "savemychoice": "Gem",
+ "userchoosethisoption": "Brugerfordeling på svar",
+ "yourselection": "Dine valg"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/de-du.json b/src/addon/mod/choice/lang/de-du.json
new file mode 100755
index 000000000..ab3f42aa2
--- /dev/null
+++ b/src/addon/mod/choice/lang/de-du.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Ihre Auswahl konnte nicht gespeichert werden. Versuchen Sie es bitte noch einmal.",
+ "choiceoptions": "Abstimmoptionen",
+ "errorgetchoice": "Fehler beim Laden der Abstimmung",
+ "expired": "Diese Abstimmung ist seit {{$a}} beendet. Eine Auswahl ist nicht mehr möglich.",
+ "full": "(Nicht verfügbar)",
+ "noresultsviewable": "Ergebnisse sind aktuell nicht sichtbar.",
+ "notopenyet": "Die Aktivität ist nicht verfügbar bis {{$a}}.",
+ "numberofuser": "Anzahl der Antworten",
+ "numberofuserinpercentage": "Prozent der Antworten",
+ "previewonly": "Diese Vorschau zeigt die verfügbaren Optionen für diese Aktivität. Sie können Ihre Wahl nicht vor {{$a}} einreichen.",
+ "removemychoice": "Meine Auswahl löschen",
+ "responses": "Stimmabgaben",
+ "responsesresultgraphdescription": "{{number}}% der Teilnehmer/innen haben die Option gewählt: {{text}}.",
+ "responsesresultgraphheader": "Grafische Darstellung",
+ "resultsnotsynced": "Deine letzte Antwort ist in den Ergebnissen noch nicht enthalten. Synchronisiere die Daten.",
+ "savemychoice": "Meine Auswahl speichern",
+ "userchoosethisoption": "Teilnehmer/innen mit dieser Auswahl",
+ "yourselection": "Deine Auswahl"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/de.json b/src/addon/mod/choice/lang/de.json
new file mode 100755
index 000000000..0c5b136cc
--- /dev/null
+++ b/src/addon/mod/choice/lang/de.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Ihre Auswahl konnte nicht gespeichert werden. Versuchen Sie es bitte noch einmal.",
+ "choiceoptions": "Abstimmoptionen",
+ "errorgetchoice": "Fehler beim Laden der Abstimmung",
+ "expired": "Diese Abstimmung ist seit {{$a}} beendet. Eine Auswahl ist nicht mehr möglich.",
+ "full": "(Nicht verfügbar)",
+ "noresultsviewable": "Ergebnisse sind aktuell nicht sichtbar.",
+ "notopenyet": "Die Aktivität ist nicht verfügbar bis {{$a}}.",
+ "numberofuser": "Anzahl der Antworten",
+ "numberofuserinpercentage": "Prozent der Antworten",
+ "previewonly": "Diese Vorschau zeigt die verfügbaren Optionen für diese Aktivität. Sie können Ihre Wahl nicht vor {{$a}} einreichen.",
+ "removemychoice": "Meine Auswahl löschen",
+ "responses": "Stimmabgaben",
+ "responsesresultgraphdescription": "{{number}}% der Teilnehmer/innen haben die Option gewählt: {{text}}.",
+ "responsesresultgraphheader": "Grafische Darstellung",
+ "resultsnotsynced": "Ihre letzte Antwort ist in den Ergebnissen noch nicht enthalten. Synchronisieren Sie die Daten.",
+ "savemychoice": "Meine Auswahl speichern",
+ "userchoosethisoption": "Teilnehmer/innen mit dieser Auswahl",
+ "yourselection": "Ihre Auswahl"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/el.json b/src/addon/mod/choice/lang/el.json
new file mode 100755
index 000000000..4b17c064e
--- /dev/null
+++ b/src/addon/mod/choice/lang/el.json
@@ -0,0 +1,16 @@
+{
+ "errorgetchoice": "Σφάλμα κατά τη λήψη των επιλεγμένων δεδομένων.",
+ "expired": "Η δραστηριότητα αυτή έκλεισε στις {{$a}} και δεν είναι πλέον διαθέσιμη",
+ "full": "(Πλήρες)",
+ "noresultsviewable": "Τα αποτελέσματα δεν είναι ορατά προς το παρόν.",
+ "notopenyet": "Συγνώμη, αυτή η δραστηριότητα δεν είναι διαθέσιμη μέχρι {{$a}}",
+ "numberofuser": "Αριθμός απαντήσεων",
+ "numberofuserinpercentage": "Ποσοστό απαντήσεων",
+ "removemychoice": "Διαγραφή της επιλογής μου",
+ "responses": "Απαντήσεις",
+ "responsesresultgraphdescription": "{{number}}% των χρηστών επέλεξε: {{text}}.",
+ "responsesresultgraphheader": "Εμφάνιση γραφήματος",
+ "resultsnotsynced": "Τα αποτελέσματα δεν περιλαμβάνουν την τελευταία απάντησή σας. Παρακαλώ, συγχρονίστε την εφαρμογή για να τα ενημερώσετε.",
+ "savemychoice": "Αποθήκευση επιλογής",
+ "yourselection": "Η επιλογή σας"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/es-mx.json b/src/addon/mod/choice/lang/es-mx.json
new file mode 100755
index 000000000..07235f13e
--- /dev/null
+++ b/src/addon/mod/choice/lang/es-mx.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Lo sentimos, hubo un problema al enviar su eleccción. Por favor, inténtelo de nuevo.",
+ "choiceoptions": "Opciones de la elección",
+ "errorgetchoice": "Error al obtener datos de elección.",
+ "expired": "Lo sentimos, esta actividad se cerró el {{$a}} y ya no está disponible",
+ "full": "(Lleno)",
+ "noresultsviewable": "Los resultados no pueden verse en este momento.",
+ "notopenyet": "Lo sentimos, esta actividad no estará disponible hasta {{$a}}",
+ "numberofuser": "Número de respuestas",
+ "numberofuserinpercentage": "Porcentaje de respuestas",
+ "previewonly": "Esto es solamente una vista previa de las opciones disponibles para esta actividad. Usted no podrá enviar su elección hasta {{$a}}.",
+ "removemychoice": "Eliminar mi elección",
+ "responses": "Respuestas",
+ "responsesresultgraphdescription": "{{number}}% de los usuarios eligió la opción: {{text}}.",
+ "responsesresultgraphheader": "Vista de Gráfica",
+ "resultsnotsynced": "Su última respuesta debe ser sincronizada antes de que sea incluida en los resultados.",
+ "savemychoice": "Guardar mi elección",
+ "userchoosethisoption": "Usuarios que eligen esta opción",
+ "yourselection": "Su selección"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/es.json b/src/addon/mod/choice/lang/es.json
new file mode 100755
index 000000000..74076baa7
--- /dev/null
+++ b/src/addon/mod/choice/lang/es.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Lo lamentamos, se ha producido un error con el envío de su respuesta. Por favor inténtelo de nuevo.",
+ "choiceoptions": "Opciones de la Consulta",
+ "errorgetchoice": "Se ha producido un error recuperando los datos de la consulta.",
+ "expired": "Lo sentimos, esta actividad se cerró el {{$a}} y ya no está disponible",
+ "full": "(Lleno)",
+ "noresultsviewable": "Los resultados no pueden verse en este momento.",
+ "notopenyet": "Lo sentimos, esta actividad no estará disponible hasta {{$a}}",
+ "numberofuser": "Número de respuestas",
+ "numberofuserinpercentage": "Porcentaje de respuestas",
+ "previewonly": "Esta es solamente una previsualización de las opciones disponibles para esta actividad. No podrá enviar su respuesta a la consulta hasta el {{$a}}.",
+ "removemychoice": "Eliminar mi elección",
+ "responses": "Respuestas",
+ "responsesresultgraphdescription": "{{number}}% de los usuarios han escogido la opción: {{text}}.",
+ "responsesresultgraphheader": "Vista de gráfica",
+ "resultsnotsynced": "Los resultados no incluyen su última respuesta. Por favor, sincronícelos para actualizarlos.",
+ "savemychoice": "Guardar mi elección",
+ "userchoosethisoption": "Usuarios que eligieron esta opción",
+ "yourselection": "Su elección"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/eu.json b/src/addon/mod/choice/lang/eu.json
new file mode 100755
index 000000000..e87df3274
--- /dev/null
+++ b/src/addon/mod/choice/lang/eu.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Sentitzen dugu, arazoa gertatu da zure aukera bidaltzean. Mesedez, saiatu berriz.",
+ "choiceoptions": "Kontsultaren aukerak",
+ "errorgetchoice": "Errorea kontsultaren datuak eskuratzean.",
+ "expired": "Sentitzen dugu, jarduera hau {{$a}}(e)an itxi zen eta dagoeneko ez dago eskuragarri.",
+ "full": "(Beteta)",
+ "noresultsviewable": "Emaitzak ezin dira orain ikusi",
+ "notopenyet": "Sentitzen dugu, baina jarduera hau ez dago erabiltzeko moduan {{$a}} arte.",
+ "numberofuser": "Erantzun-kopurua",
+ "numberofuserinpercentage": "Erantzunen portzentajea",
+ "previewonly": "Hau jarduera honetan eskuragarri dauden aukeren aurrebista besterik ez da. Ezingo duzu zure erantzuna bidali {{$a}}-(e)ra arte.",
+ "removemychoice": "Ezabatu nire aukera",
+ "responses": "Erantzunak",
+ "responsesresultgraphdescription": "Erabiltzaileen %{{number}}-ak aukera hau aukeratu zuten: {{text}}.",
+ "responsesresultgraphheader": "Erakutsi grafikoa",
+ "resultsnotsynced": "Zure azken erantzuna sinkronizatu behar da emaitzetan kontuan hartu ahal izateko.",
+ "savemychoice": "Gorde nire aukera",
+ "userchoosethisoption": "Aukera hau hautatu duten erabiltzaileak",
+ "yourselection": "Zure aukera"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/fa.json b/src/addon/mod/choice/lang/fa.json
new file mode 100755
index 000000000..ccf5b0367
--- /dev/null
+++ b/src/addon/mod/choice/lang/fa.json
@@ -0,0 +1,15 @@
+{
+ "choiceoptions": "گزینههای انتخابی",
+ "expired": "با عرض پوزش، این فعالیت در {{$a}} بسته شد و دیگر در دسترس نیست",
+ "full": "(پر)",
+ "noresultsviewable": "نتایج در این لحظه قابل دیدن نیستند.",
+ "notopenyet": "با عرض معذرت، این فعالیت تا قبل از {{$a}} در دسترس نیست",
+ "numberofuser": "تعداد کاربران",
+ "numberofuserinpercentage": "درصد پاسخها",
+ "removemychoice": "حذف انتخاب من",
+ "responses": "پاسخها",
+ "responsesresultgraphheader": "نمایش نمودار",
+ "savemychoice": "ذخیرهٔ انتخاب من",
+ "userchoosethisoption": "کاربرانی که این گزینه را انتخاب کردهاند",
+ "yourselection": "انتخاب شما"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/fi.json b/src/addon/mod/choice/lang/fi.json
new file mode 100755
index 000000000..ed9dfc3d0
--- /dev/null
+++ b/src/addon/mod/choice/lang/fi.json
@@ -0,0 +1,19 @@
+{
+ "cannotsubmit": "Vastauksen tallennuksessa oli teknisiä ongelmia. Vastaathan uudestaan.",
+ "choiceoptions": "Vastausvaihtoehdot",
+ "errorgetchoice": "Virhe haettaessa valinnan tietoja.",
+ "expired": "Tämä aktiviteeti on suljettu {{$a}} eikä ole enää käytettävissä.",
+ "full": "(Täysi)",
+ "noresultsviewable": "Tulokset eivät ole juuri nyt nähtävillä",
+ "notopenyet": "Tämä aktiviteetti ei ole saatavilla ennen kuin {{$a}}",
+ "numberofuser": "Osallistujamäärä",
+ "numberofuserinpercentage": "Osallistujamäärä prosentteina",
+ "removemychoice": "Poista valintani",
+ "responses": "Vastaukset",
+ "responsesresultgraphdescription": "{{number}}% käyttäjistä valitsi vaihtoehdon: {{text}}.",
+ "responsesresultgraphheader": "Graafinen esitys",
+ "resultsnotsynced": "Tulokset eivät sisällä viimeisintä vastaustasi. Ole hyvä ja synkronoi päivittääksesi ne.",
+ "savemychoice": "Tallenna valintani",
+ "userchoosethisoption": "Käyttäjä valitsee tämän vaihtoehdon",
+ "yourselection": "Valintasi"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/fr.json b/src/addon/mod/choice/lang/fr.json
new file mode 100755
index 000000000..c6f63ea9a
--- /dev/null
+++ b/src/addon/mod/choice/lang/fr.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Un problème est survenu lors de l'envoi de votre choix.",
+ "choiceoptions": "Options du sondage",
+ "errorgetchoice": "Erreur lors de l'obtention des données du choix.",
+ "expired": "Désolé, cette activité s'est terminée le {{$a}} et n'est plus disponible",
+ "full": "(complet)",
+ "noresultsviewable": "Les résultats ne sont actuellement pas visibles.",
+ "notopenyet": "Désolé, cette activité ne sera disponible que le {{$a}}",
+ "numberofuser": "Nombre de réponses",
+ "numberofuserinpercentage": "Pourcentage de réponses",
+ "previewonly": "Cet affichage est une prévisualisation des options disponibles pour cette activité. Vous ne pourrez pas enregistrer votre choix avant le {{$a}}.",
+ "removemychoice": "Retirer mon vote",
+ "responses": "Réponses",
+ "responsesresultgraphdescription": "{{number}} % des participants ont choisi l'option : {{text}}.",
+ "responsesresultgraphheader": "Affichage graphique",
+ "resultsnotsynced": "Votre dernière réponse doit être synchronisée pour être inclue dans les résultats.",
+ "savemychoice": "Enregistrer mon choix",
+ "userchoosethisoption": "Utilisateurs qui ont choisi l'option",
+ "yourselection": "Votre choix"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/he.json b/src/addon/mod/choice/lang/he.json
new file mode 100755
index 000000000..42ad44693
--- /dev/null
+++ b/src/addon/mod/choice/lang/he.json
@@ -0,0 +1,19 @@
+{
+ "cannotsubmit": "קרתה תקלה בשליחת הבחירה שלך, ניתן לנסות שנית מאוחר יותר.",
+ "choiceoptions": "אפשרויות שאלת־סקר",
+ "errorgetchoice": "שגיאה בטעינת המידע של שאלת הבחירה.",
+ "expired": "מצטערים, פעילות זו נסגרה על {{$a}} והיא איננה זמינה יותר",
+ "full": "(מלא)",
+ "noresultsviewable": "כרגע לא ניתן לצפות בתוצאות.",
+ "notopenyet": "לצערנו, פעילות זו אינה זמינה עד {{$a}}",
+ "numberofuser": "מספר המשתתפים",
+ "numberofuserinpercentage": "מספר המשתתפים באחוזים",
+ "previewonly": "זוהי תצוגה מקדימה לאפשרויות הזמינות עבור פעילות זו. לא ניתן יהיה הגיש את הבחירה שלך עד {{$a}}.",
+ "removemychoice": "הסרת בחירתי",
+ "responses": "תשובות",
+ "responsesresultgraphdescription": "{{number}}% מהמשתמשים בחרו באפשרות {{text}}.",
+ "responsesresultgraphheader": "תצוגה גרפית",
+ "savemychoice": "שמירת הבחירה שלי",
+ "userchoosethisoption": "משתמשים הבוחרים את האפשרות הזו",
+ "yourselection": "הבחירה שלך"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/hr.json b/src/addon/mod/choice/lang/hr.json
new file mode 100755
index 000000000..d1cfaa09b
--- /dev/null
+++ b/src/addon/mod/choice/lang/hr.json
@@ -0,0 +1,15 @@
+{
+ "choiceoptions": "Postavke odabira",
+ "expired": "Nažalost, ova aktivnost je zatvorena od {{$a}} i nije više dostupna",
+ "full": "(Popunjeno)",
+ "noresultsviewable": "Rezultate trenutačno nije moguće prikazati.",
+ "notopenyet": "Nažalost, ova aktivnost nije dostupna do {{$a}}",
+ "numberofuser": "Broj sudionika",
+ "numberofuserinpercentage": "Broj sudionika u postotcima",
+ "removemychoice": "Ukloni moj odabir",
+ "responses": "Odabiri",
+ "responsesresultgraphheader": "Grafički prikaz",
+ "savemychoice": "Spremi moj odabir",
+ "userchoosethisoption": "Korisnik je odabrao ovu opciju",
+ "yourselection": "Vaš odabir"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/hu.json b/src/addon/mod/choice/lang/hu.json
new file mode 100755
index 000000000..f9ba9f234
--- /dev/null
+++ b/src/addon/mod/choice/lang/hu.json
@@ -0,0 +1,17 @@
+{
+ "cannotsubmit": "Választásának leadásával gondok vannak. Próbálja meg később.",
+ "choiceoptions": "Választási lehetőségek",
+ "expired": "Ez a tevékenység {{$a}} időpontban lezárult és már nem érhető el",
+ "full": "(Betelt)",
+ "noresultsviewable": "Az eredmények jelenleg nem tekinthetők meg.",
+ "notopenyet": "Ez a tevékenység {{$a}} időpontig nem elérhető",
+ "numberofuser": "Válaszok száma",
+ "numberofuserinpercentage": "Válaszok száma százalékban",
+ "previewonly": "Ez a tevékenység lehetőségeinek előnézete. A választását {{$a}} időpontig nem közölheti.",
+ "removemychoice": "Válaszlehetőségem törlése",
+ "responses": "Tanuló által adott válaszok",
+ "responsesresultgraphheader": "Gráfmegjelenítés",
+ "savemychoice": "Válaszlehetőségem mentése",
+ "userchoosethisoption": "Ezt választó felhasználók",
+ "yourselection": "Az Ön választása"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/it.json b/src/addon/mod/choice/lang/it.json
new file mode 100755
index 000000000..01597a905
--- /dev/null
+++ b/src/addon/mod/choice/lang/it.json
@@ -0,0 +1,19 @@
+{
+ "cannotsubmit": "Si è verificato un errore durante l'invio della scelta. Per favore riprova.",
+ "choiceoptions": "Opzioni scelta",
+ "errorgetchoice": "Si è verificato un errore durante la ricezione di dati della scelta.",
+ "expired": "Spiacente, questa attività è stata chiusa il {{$a}} e non è più disponibile",
+ "full": "(Completo)",
+ "noresultsviewable": "I risultati non sono al momento visualizzabili.",
+ "notopenyet": "Spiacente, questa attività non è disponibile fino al {{$a}}",
+ "numberofuser": "Numero di risposte",
+ "numberofuserinpercentage": "Percentuale delle risposte",
+ "previewonly": "Questa è un'anteprima delle scelte disponibili. Potrai inviare la tua scelta solo dal {{$a}}.",
+ "removemychoice": "Elimina la mia scelta",
+ "responses": "Scelte",
+ "responsesresultgraphdescription": "Il {{number}}% ha scelto l'opzione {{text}}.",
+ "responsesresultgraphheader": "Visualizzazione grafico",
+ "savemychoice": "Salva la mia scelta",
+ "userchoosethisoption": "Gli utenti che hanno scelto questa opzione",
+ "yourselection": "La tua selezione"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/ja.json b/src/addon/mod/choice/lang/ja.json
new file mode 100755
index 000000000..a5fee422a
--- /dev/null
+++ b/src/addon/mod/choice/lang/ja.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "申し訳ございません、あなたの投票送信時に問題が発生しました。再度お試しください。",
+ "choiceoptions": "投票オプション",
+ "errorgetchoice": "選択データの取得中にエラーが発生しました。",
+ "expired": "申し訳ございません、この活動は {{$a}} に終了しているため、これ以上利用することはできません。",
+ "full": "(上限到達)",
+ "noresultsviewable": "現在、投票結果は閲覧できません。",
+ "notopenyet": "申し訳ございません、この活動は {{$a}} まで利用することができません。",
+ "numberofuser": "投票者数",
+ "numberofuserinpercentage": "投票者数 (%)",
+ "previewonly": "これはこの活動で利用可能なオプションのプレビューです。あなたの投票は {{$a}} まで送信することができません。",
+ "removemychoice": "私の投票を削除する",
+ "responses": "投票結果",
+ "responsesresultgraphdescription": "{{number}}% のユーザが選択肢: {{text}} を選択しました。",
+ "responsesresultgraphheader": "グラフ表示",
+ "resultsnotsynced": "結果にあなたの最後のレスポンスが含まれていません。更新のため、同期を行ってください。",
+ "savemychoice": "私の投票を保存する",
+ "userchoosethisoption": "このオプションを選択したユーザ",
+ "yourselection": "あなたの投票"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/ko.json b/src/addon/mod/choice/lang/ko.json
new file mode 100755
index 000000000..8d65db064
--- /dev/null
+++ b/src/addon/mod/choice/lang/ko.json
@@ -0,0 +1,15 @@
+{
+ "choiceoptions": "설문 요건",
+ "expired": "죄송합니다. 이 활동은 {{$a}} 에 종료되어서 더 이상 사용할 수 없습니다.",
+ "full": "(마감됨)",
+ "noresultsviewable": "지금은 결과를 볼 수 없습니다.",
+ "notopenyet": "죄송합니다만, {{$a}} 까지는 이용할 수 없습니다.",
+ "numberofuser": "사용자",
+ "numberofuserinpercentage": "백분율로 환산한 사용자 수",
+ "removemychoice": "기존 응답 취소",
+ "responses": "응답",
+ "responsesresultgraphheader": "그래프 표시",
+ "savemychoice": "응답내용 저장",
+ "userchoosethisoption": "사용자가 이 옵션을 선택했습니다.",
+ "yourselection": "당신의 선택"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/lt.json b/src/addon/mod/choice/lang/lt.json
new file mode 100755
index 000000000..ee1bf2c25
--- /dev/null
+++ b/src/addon/mod/choice/lang/lt.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Atsiprašome, buvo problema pateikiant tavo pasirinkimą. Prašau, pabandykite dar kartą.",
+ "choiceoptions": "Pasirinkimo parinktys",
+ "errorgetchoice": "Klaida gaunant alternatyvius duomenis.",
+ "expired": "Atsiprašome, veikla uždaryta {{$a}} ir nebegalima",
+ "full": "(Visas)",
+ "noresultsviewable": "Rezultatai dabar nematomi.",
+ "notopenyet": "Apgailestaujame, ši veikla negalima iki {{$a}}",
+ "numberofuser": "Atsakymų skaičius",
+ "numberofuserinpercentage": "Atsakymų procentas",
+ "previewonly": "Tai yra tik šios veiklos galimų variantų peržiūra. Savo pasirinkimo negalėsite pateikti iki {{$a}}.",
+ "removemychoice": "Pašalinti mano pasirinkimą",
+ "responses": "Atsakymai",
+ "responsesresultgraphdescription": "{{number}}% dalyvių pasirinkusių pasirinkimą: {{tekstas}}",
+ "responsesresultgraphheader": "Pavaizduota grafiku",
+ "resultsnotsynced": "Galutinis atsakymas neužfiksuotas. Prašome sinchronizuotai atnaujinti duomenis.",
+ "savemychoice": "Įrašyti mano pasirinkimą",
+ "userchoosethisoption": "Naudotojas, kuris pasirenka šią parinktį",
+ "yourselection": "Jūsų pasirinkimas"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/mr.json b/src/addon/mod/choice/lang/mr.json
new file mode 100755
index 000000000..29c1aa27f
--- /dev/null
+++ b/src/addon/mod/choice/lang/mr.json
@@ -0,0 +1,13 @@
+{
+ "errorgetchoice": "निवड डेटा मिळवताना त्रुटी.",
+ "expired": "क्षमा करा,ही कार्यक्षमता बंद आहे",
+ "full": "पुर्णपणे",
+ "noresultsviewable": "निकाल उपलब्द नाही",
+ "notopenyet": "क्षमा करा,ही कार्यक्षमता आजुन पर्यत बंद आहे",
+ "removemychoice": "माझी निवड रद्द करा",
+ "responses": "प्रतिक्रीया",
+ "responsesresultgraphdescription": "{{Number}}% वापरकर्त्यांनी पर्याय निवडला: {{text}}.",
+ "resultsnotsynced": "परिणामांमध्ये आपला अंतिम प्रतिसाद समाविष्ट नाही कृपया त्यांना अद्यतनित करण्यासाठी समक्रमित करा.",
+ "savemychoice": "निवड्लेले साठ्वा",
+ "yourselection": "तुम्ही निवडलेले"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/nl.json b/src/addon/mod/choice/lang/nl.json
new file mode 100755
index 000000000..bb56d9908
--- /dev/null
+++ b/src/addon/mod/choice/lang/nl.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Er was een probleem bij het insturen van je keuze. Probeer opnieuw",
+ "choiceoptions": "Keuze-opties",
+ "errorgetchoice": "Fout bij het ophalen van de keuzegegevens.",
+ "expired": "Sorry, deze activiteit is afgesloten op {{$a}} en is niet meer beschikbaar",
+ "full": "(volledig)",
+ "noresultsviewable": "De resultaten zijn nu niet zichtbaar.",
+ "notopenyet": "Deze activiteit is niet beschikbaar tot {{$a}}",
+ "numberofuser": "Aantal antwoorden",
+ "numberofuserinpercentage": "Percentage antwoorden",
+ "previewonly": "Dit is slechts een voorbeeld van de beschikbare opties voor deze activiteit. Je zult je keuze niet kunnen maken voor {{$a}}.",
+ "removemychoice": "Verwijder mijn keuze",
+ "responses": "Antwoorden",
+ "responsesresultgraphdescription": "{{number}}% van de gebruikers kozen optie: {{text}}.",
+ "responsesresultgraphheader": "Grafiek tonen",
+ "resultsnotsynced": "Jouw laatste reactie moet gesynchroniseerd worden voor ze mee in de resultaten zit.",
+ "savemychoice": "Bewaar mijn antwoord",
+ "userchoosethisoption": "Gebruikers die deze optie kozen",
+ "yourselection": "Jouw selectie"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/no.json b/src/addon/mod/choice/lang/no.json
new file mode 100755
index 000000000..d524ce486
--- /dev/null
+++ b/src/addon/mod/choice/lang/no.json
@@ -0,0 +1,19 @@
+{
+ "cannotsubmit": "Beklager, det var et problem med å sende valget ditt. Vennligst prøv på nytt.",
+ "choiceoptions": "Valginnstillinger",
+ "expired": "Beklager, denne aktiviteten ble stengt {{$a}} og er ikke tilgjengelig lenger.",
+ "full": "(full)",
+ "noresultsviewable": "Resultatene er ikke synlige akkurat nå.",
+ "notopenyet": "Denne aktiviteten er ikke tilgjengelig før {{$a}}",
+ "numberofuser": "Antall svar",
+ "numberofuserinpercentage": "Antall svar i prosent",
+ "previewonly": "Dette er bare en forhåndsvisning av de mulige valgene du kan gjøre i denne gallupen. Du kan ikke besvare den før {{$a}}.",
+ "removemychoice": "Fjern valget mitt",
+ "responses": "Svar",
+ "responsesresultgraphdescription": "{{number}}% av brukerne velger dette alternativet: {{text}}.",
+ "responsesresultgraphheader": "Visning av diagram",
+ "resultsnotsynced": "Resultatene viser ikke din siste respons. Synkroniser for å oppdatere dem.",
+ "savemychoice": "Lagre mitt svar",
+ "userchoosethisoption": "Brukere som velger dette alternativet",
+ "yourselection": "Ditt valg"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/pl.json b/src/addon/mod/choice/lang/pl.json
new file mode 100755
index 000000000..5a9baaa72
--- /dev/null
+++ b/src/addon/mod/choice/lang/pl.json
@@ -0,0 +1,16 @@
+{
+ "cannotsubmit": "Wystąpił problem podczas zatwierdzania twojego wyboru. Proszę spróbuj ponownie.",
+ "choiceoptions": "Opcje wyboru odpowiedzi",
+ "expired": "Niestety ta aktywność została zamknięta {{$a}} i nie jest już dostępna.",
+ "full": "(pełne)",
+ "noresultsviewable": "Nie ma wglądu w wyniki głosowania.",
+ "notopenyet": "Moduł nieczynny do {{$a}}",
+ "numberofuser": "Liczba użytkowników",
+ "numberofuserinpercentage": "Ilość użytkowników w procentach",
+ "removemychoice": "Usuń mój wybór",
+ "responses": "Odpowiedzi",
+ "responsesresultgraphheader": "Wyświetl wykres",
+ "savemychoice": "Zapisz mój wybór",
+ "userchoosethisoption": "Użytkownicy, którzy wybrali poszczególne opcje.",
+ "yourselection": "Twój wybór"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/pt-br.json b/src/addon/mod/choice/lang/pt-br.json
new file mode 100755
index 000000000..e12201304
--- /dev/null
+++ b/src/addon/mod/choice/lang/pt-br.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Desculpe, houve um problema ao enviar sua escolha. Por favor, tente novamente.",
+ "choiceoptions": "Opções de escolha",
+ "errorgetchoice": "Erro ao obter dados do escolha.",
+ "expired": "Esta atividade está encerrada desde {{$a}}",
+ "full": "(Cheio)",
+ "noresultsviewable": "Não é possível visualizar os resultados neste momento.",
+ "notopenyet": "Esta atividade será acessível a partir de {{$a}}",
+ "numberofuser": "Número de respostas",
+ "numberofuserinpercentage": "Percentagem de respostas",
+ "previewonly": "Esta é somente uma previsualização das opções dessa atividade. Você somente poderá enviar sua escolha a partir de {{$a}}",
+ "removemychoice": "Remover a minha resposta",
+ "responses": "Respostas",
+ "responsesresultgraphdescription": "{{number}}% de usuários que escolheram a opção: {{text}}.",
+ "responsesresultgraphheader": "Visualização do gráfico",
+ "resultsnotsynced": "Os resultados não incluem a sua última resposta. Por favor, sincronize para atualizarem eles.",
+ "savemychoice": "Gravar a minha resposta",
+ "userchoosethisoption": "Usuários que escolheram esta opção",
+ "yourselection": "A sua escolha"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/pt.json b/src/addon/mod/choice/lang/pt.json
new file mode 100755
index 000000000..5b4fc62e8
--- /dev/null
+++ b/src/addon/mod/choice/lang/pt.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Desculpe, surgiu um problema ao submeter a sua escolha. Por favor, tente novamente.",
+ "choiceoptions": "Opções de resposta",
+ "errorgetchoice": "Erro ao obter os dados da sondagem.",
+ "expired": "Esta atividade terminou em {{$a}} e já não está disponível",
+ "full": "Completa",
+ "noresultsviewable": "Os resultados da sondagem ainda não estão disponíveis.",
+ "notopenyet": "Lamentamos mas esta atividade só estará disponível em {{$a}}",
+ "numberofuser": "Número de respostas",
+ "numberofuserinpercentage": "Percentagem de respostas",
+ "previewonly": "Esta é apenas uma pré-visualização das opções disponíveis para esta atividade. Não poderá submeter a sua escolha até {{$a}}.",
+ "removemychoice": "Apagar a minha resposta",
+ "responses": "Respostas",
+ "responsesresultgraphdescription": "{{number}}% dos utilizadores escolheram esta opção: {{text}}.",
+ "responsesresultgraphheader": "Gráfico",
+ "resultsnotsynced": "A sua última resposta tem de ser sincronizada para estar incluída nos resultados.",
+ "savemychoice": "Gravar a minha resposta",
+ "userchoosethisoption": "Utilizadores que escolheram esta opção",
+ "yourselection": "A sua resposta"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/ro.json b/src/addon/mod/choice/lang/ro.json
new file mode 100755
index 000000000..2133b57b9
--- /dev/null
+++ b/src/addon/mod/choice/lang/ro.json
@@ -0,0 +1,17 @@
+{
+ "errorgetchoice": "Eroare în obținerea de date pentru alegere",
+ "expired": "Ne pare rău, această activitate s-a închis la {{$a}} şi nu mai este disponibilă",
+ "full": "(plin)",
+ "noresultsviewable": "În acest moment rezultatele nu pot fi vizualizate.",
+ "notopenyet": "Ne pare rău, această activitate nu este disponibilă mai devreme de {{$a}}",
+ "numberofuser": "Numărul de răspunsuri",
+ "numberofuserinpercentage": "Procentajul răspunsurilor",
+ "previewonly": "Acesta este doar o prezentare a opțiunilor existente pentru această activitate. Nu veți putea trimite opțiunea dvs. până la {{$a}}.",
+ "removemychoice": "Șterge alegerea mea",
+ "responses": "Răspunsuri",
+ "responsesresultgraphdescription": "{{number}}% dintre utilizatori au ales varianta: {{text}}.",
+ "responsesresultgraphheader": "Afișează graficul",
+ "savemychoice": "Salvează formularul meu de evaluare",
+ "userchoosethisoption": "Utilizatorii care au ales această opțiune",
+ "yourselection": "Selecția ta"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/ru.json b/src/addon/mod/choice/lang/ru.json
new file mode 100755
index 000000000..8ea5ef745
--- /dev/null
+++ b/src/addon/mod/choice/lang/ru.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Извините, возникла проблема при отправке Вашего ответа на опрос. Пожалуйста, повторите снова.",
+ "choiceoptions": "Варианты ответа",
+ "errorgetchoice": "Ошибка при получении данных выбора",
+ "expired": "Извините, этот элемент курса закрыт {{$a}} и более недоступен",
+ "full": "(Заполнено)",
+ "noresultsviewable": "Вы не можете в данный момент просматривать результаты опроса.",
+ "notopenyet": "Извините, данное действие недоступно до {{$a}}",
+ "numberofuser": "Количество ответов на опрос",
+ "numberofuserinpercentage": "Доля ответивших на опрос",
+ "previewonly": "Это только предварительный просмотр доступных вариантов для этого опроса. Вы не можете отправить свой ответ до {{$a}}.",
+ "removemychoice": "Удалить мой выбор",
+ "responses": "Ответы",
+ "responsesresultgraphdescription": "{{number}}% пользователей выбрало вариант: {{text}}.",
+ "responsesresultgraphheader": "Отображать график",
+ "resultsnotsynced": "Ваш последний ответ должен быть синхронизирован прежде, чем будет включён в результат.",
+ "savemychoice": "Сохранить мой выбор",
+ "userchoosethisoption": "Пользователи, которые выбрали этот вариант",
+ "yourselection": "Ваш выбор"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/sr-cr.json b/src/addon/mod/choice/lang/sr-cr.json
new file mode 100755
index 000000000..10465df22
--- /dev/null
+++ b/src/addon/mod/choice/lang/sr-cr.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Извините, дошло је до проблема приликом чувања одабраног одговора. Молимо покушајте поново.",
+ "choiceoptions": "Опције за избор",
+ "errorgetchoice": "Грешка приликом преузимања података за 'Избор'",
+ "expired": "Нажалост, ова активност је затворена дана {{$a}} и није више доступна",
+ "full": "(Попуњено)",
+ "noresultsviewable": "Резултати тренутно нису видљиви.",
+ "notopenyet": "Нажалост, ова активност није доступна до {{$a}}",
+ "numberofuser": "Број учесника",
+ "numberofuserinpercentage": "Проценат учесника",
+ "previewonly": "Ово је само приказ доступних опција за ову активност. Нећете бити у могућности да извршите одабир до {{$a}}.",
+ "removemychoice": "Уклони мој избор",
+ "responses": "Одговори",
+ "responsesresultgraphdescription": "{{number}}% корисника је изабрало опцију: {{text}}.",
+ "responsesresultgraphheader": "Графички приказ",
+ "resultsnotsynced": "Резултати не укључује ваш последњи одговор. Покрените синхронизацију како бисте их ажурирали.",
+ "savemychoice": "Сачувај мој избор",
+ "userchoosethisoption": "Корисници који су изабрали ову опцију",
+ "yourselection": "Ваш избор"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/sr-lt.json b/src/addon/mod/choice/lang/sr-lt.json
new file mode 100755
index 000000000..7fc4232b8
--- /dev/null
+++ b/src/addon/mod/choice/lang/sr-lt.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Izvinite, došlo je do problema prilikom čuvanja odabranog odgovora. Molimo pokušajte ponovo.",
+ "choiceoptions": "Opcije za izbor",
+ "errorgetchoice": "Greška prilikom preuzimanja podataka za 'Izbor'",
+ "expired": "Nažalost, ova aktivnost je zatvorena dana {{$a}} i nije više dostupna",
+ "full": "(Popunjeno)",
+ "noresultsviewable": "Rezultati trenutno nisu vidljivi.",
+ "notopenyet": "Nažalost, ova aktivnost nije dostupna do {{$a}}",
+ "numberofuser": "Broj učesnika",
+ "numberofuserinpercentage": "Procenat učesnika",
+ "previewonly": "Ovo je samo prikaz dostupnih opcija za ovu aktivnost. Nećete biti u mogućnosti da izvršite odabir do {{$a}}.",
+ "removemychoice": "Ukloni moj izbor",
+ "responses": "Odgovori",
+ "responsesresultgraphdescription": "{{number}}% korisnika je izabralo opciju: {{text}}.",
+ "responsesresultgraphheader": "Grafički prikaz",
+ "resultsnotsynced": "Rezultati ne uključuje vaš poslednji odgovor. Pokrenite sinhronizaciju kako biste ih ažurirali.",
+ "savemychoice": "Sačuvaj moj izbor",
+ "userchoosethisoption": "Korisnici koji su izabrali ovu opciju",
+ "yourselection": "Vaš izbor"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/sv.json b/src/addon/mod/choice/lang/sv.json
new file mode 100755
index 000000000..8ef6af506
--- /dev/null
+++ b/src/addon/mod/choice/lang/sv.json
@@ -0,0 +1,19 @@
+{
+ "cannotsubmit": "Tyvärr fanns det ett problem att lämna ditt val . Var god försök igen.",
+ "choiceoptions": "Alternativ för opinonsundersökning",
+ "errorgetchoice": "Fel vid hämtning av opinionsdata",
+ "expired": "Den här aktiviteten är stängd på {{$a}} och den är inte längre tillgänglig.",
+ "full": "(Full)",
+ "noresultsviewable": "Det går f.n. inte att visa resultaten.",
+ "notopenyet": "Den här aktiviteten är tyvärr inte tillgänglig förrän {{$a}}",
+ "numberofuser": "Antal användare",
+ "numberofuserinpercentage": "Antalet användare i procent.",
+ "previewonly": "Detta är bara en förhandsvisning av de tillgängliga alternativen för den här aktiviteten . Du kommer inte att kunna lämna in ditt val innan {{$a}}",
+ "removemychoice": "Ta bort mitt val",
+ "responses": "Svar",
+ "responsesresultgraphdescription": "{{number}}% Av användarna valde alternativet: {{text}}",
+ "responsesresultgraphheader": "Visa en graf",
+ "savemychoice": "Spara min opinionsundersökning",
+ "userchoosethisoption": "Användaren väljer detta alternativ",
+ "yourselection": "Ditt urval"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/tg.json b/src/addon/mod/choice/lang/tg.json
new file mode 100755
index 000000000..052c99e69
--- /dev/null
+++ b/src/addon/mod/choice/lang/tg.json
@@ -0,0 +1,10 @@
+{
+ "expired": "Бубахшед,ин фаъолият маҳкам карда шудааст {{$a}} ва акнун дастрас нест",
+ "full": "(Пур карда шудааст)",
+ "noresultsviewable": "Шумо ҳозир натиҷаҳои пурсишро аз назар гузаронда наметавонед.",
+ "notopenyet": "Бубахшед, ин амал дастрас нест то даме ки {{$a}}",
+ "removemychoice": "Интихоби ман нест карда шавад",
+ "responses": "Ҷавоб",
+ "savemychoice": "Ҷавоб маҳфуз дошта шавад",
+ "yourselection": "Интихоби Шумо"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/tr.json b/src/addon/mod/choice/lang/tr.json
new file mode 100755
index 000000000..05535649a
--- /dev/null
+++ b/src/addon/mod/choice/lang/tr.json
@@ -0,0 +1,17 @@
+{
+ "cannotsubmit": "Üzgünüz, seçiminizi gönderirken bir sorun oluştu. Lütfen tekrar deneyin.",
+ "choiceoptions": "Seçim seçenekleri",
+ "expired": "Üzgünüz, bu etkinlik {{$a}} tarihinde kapandı ve bu etkinliğe artık ulaşılamaz",
+ "full": "(Dolu)",
+ "noresultsviewable": "Sonuçlar şu anda görüntülenmemektedir.",
+ "notopenyet": "Üzgünüz, bu etkinliğe {{$a}} tarihine kadar ulaşılamaz",
+ "numberofuser": "Yanıt sayısı",
+ "numberofuserinpercentage": "Yanıtların yüzdesi",
+ "previewonly": "Bu, bu etkinlik için mevcut seçeneklerin bir önizlemesidir. {{$a}} tarihine kadar seçiminizi yapamazsınız.",
+ "removemychoice": "Seçimimi sil",
+ "responses": "Yanıtlar",
+ "responsesresultgraphheader": "Grafik ekranı",
+ "savemychoice": "Seçeneğimi kaydet",
+ "userchoosethisoption": "Bu seçeneği seçen kullanıcılar",
+ "yourselection": "Seçiminiz"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/uk.json b/src/addon/mod/choice/lang/uk.json
new file mode 100755
index 000000000..583a6f28d
--- /dev/null
+++ b/src/addon/mod/choice/lang/uk.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "Вибачте, але трапилася проблема під час збереження вашого вибору. Повторіть, будь ласка, ще раз.",
+ "choiceoptions": "Параметри вибору",
+ "errorgetchoice": "Помилка при отриманні даних виборки.",
+ "expired": "На жаль, ця діяльність закрита для {{$a}} та більше недоступна",
+ "full": "(Все)",
+ "noresultsviewable": "В даний час результати не можна побачити.",
+ "notopenyet": "Цей ресурс буде недоступний до {{$a}}",
+ "numberofuser": "Кількість користувачів",
+ "numberofuserinpercentage": "Кількість користувачів у відсотках",
+ "previewonly": "Це лише попередній перегляд доступних варіантів для цієї діяльності. Ви не можете відправити відповідь до {{$a}}.",
+ "removemychoice": "Видалити мій вибір",
+ "responses": "Відповіді",
+ "responsesresultgraphdescription": "{{number}}% користувачів вибрали пункт: {{text}}.",
+ "responsesresultgraphheader": "Показувати графік",
+ "resultsnotsynced": "Результати не включають останні відповіді. Будь ласка, синхронізуйтесь для поновлення.",
+ "savemychoice": "Зберегти відповідь",
+ "userchoosethisoption": "Користувачі, які вибрали цю опцію",
+ "yourselection": "Ваш вибір"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/zh-cn.json b/src/addon/mod/choice/lang/zh-cn.json
new file mode 100755
index 000000000..3204cfd01
--- /dev/null
+++ b/src/addon/mod/choice/lang/zh-cn.json
@@ -0,0 +1,17 @@
+{
+ "cannotsubmit": "对不起,你的提交有误,请再试一次。",
+ "choiceoptions": "投票选项",
+ "expired": "对不起,该活动已于 {{$a}} 关闭,不能再参加",
+ "full": "(已满)",
+ "noresultsviewable": "结果目前不能查看。",
+ "notopenyet": "对于起,此活动在 {{$a}} 之后才可用",
+ "numberofuser": "用户数",
+ "numberofuserinpercentage": "用户数百分比",
+ "previewonly": "这只是该活动的可用选项的预览。你要等到{{$a}}才可以进行投票。",
+ "removemychoice": "删除我的投票",
+ "responses": "回复",
+ "responsesresultgraphheader": "图示",
+ "savemychoice": "保存我的选择",
+ "userchoosethisoption": "选择此选项的用户",
+ "yourselection": "您的选择"
+}
\ No newline at end of file
diff --git a/src/addon/mod/choice/lang/zh-tw.json b/src/addon/mod/choice/lang/zh-tw.json
new file mode 100755
index 000000000..c97305fd6
--- /dev/null
+++ b/src/addon/mod/choice/lang/zh-tw.json
@@ -0,0 +1,20 @@
+{
+ "cannotsubmit": "抱歉,在提交你的投票時發生問題,請再試一次。",
+ "choiceoptions": "票選的選項",
+ "errorgetchoice": "取得選項資料時出錯",
+ "expired": "抱歉,此項活動已經在{{$a}}關閉,不再開放使用。",
+ "full": "(已滿)",
+ "noresultsviewable": "目前無法檢視票選結果",
+ "notopenyet": "抱歉,這個活動在{{$a}}之前不能使用",
+ "numberofuser": "回應的人數",
+ "numberofuserinpercentage": "回應人數的百分比",
+ "previewonly": "這只是這一活動的可用選項的預覽。你要等到{{$a}}才可以進行投票。",
+ "removemychoice": "移除我的選擇",
+ "responses": "答覆",
+ "responsesresultgraphdescription": "{{number}}%的使用者選擇了選項: {{text}}.",
+ "responsesresultgraphheader": "顯示圖表",
+ "resultsnotsynced": "結果不包括您的上次回覆. 請同步更新.",
+ "savemychoice": "儲存我的選擇",
+ "userchoosethisoption": "有選擇這一項的用戶",
+ "yourselection": "您的選擇"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/ar.json b/src/addon/mod/data/lang/ar.json
new file mode 100755
index 000000000..13b3401ba
--- /dev/null
+++ b/src/addon/mod/data/lang/ar.json
@@ -0,0 +1,32 @@
+{
+ "addentries": "أضف مدخلات",
+ "advancedsearch": "بحث متقدم",
+ "alttext": "النص البديل",
+ "approve": "اسمح/وافق",
+ "approved": "تم الموافقة",
+ "ascending": "تصاعدي",
+ "authorfirstname": "الاسم الأول للكاتب",
+ "authorlastname": "الاسم الأخير للكاتب",
+ "confirmdeleterecord": "هل فعلا ترغب في حذف هذا السجل؟",
+ "descending": "تنازليا",
+ "emptyaddform": "لم تقم بتعبئة الحقول!",
+ "expired": "عذراً، تم إغلاق هذا النشاط في {{$a}} وهو غير متوفر الآن.",
+ "fields": "حقول",
+ "menuchoose": "اختار",
+ "more": "المزيد",
+ "nomatch": "لم يتم العثور على مدخلات مطابقة!",
+ "norecords": "لا يوجد مدخلات في قاعدة البيانات",
+ "notapproved": "لم يتم الموافقة على المدخل بعد",
+ "notopenyet": "عذراً، هذا النشاط لن يتاح حتى {{$a}}",
+ "numrecords": "{{$a}} سجلات",
+ "other": "اخر",
+ "recordapproved": "تم الموافقه على السجل",
+ "recorddeleted": "تم حذف السجل",
+ "resetsettings": "إعادة تعين الحقول",
+ "search": "بحث",
+ "selectedrequired": "كل المختار مطلوب",
+ "single": "معاينة فردية",
+ "timeadded": "وقت الإضافة",
+ "timemodified": "وقت التعديل",
+ "usedate": "تضمين في البحث"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/bg.json b/src/addon/mod/data/lang/bg.json
new file mode 100755
index 000000000..c5d1d6e95
--- /dev/null
+++ b/src/addon/mod/data/lang/bg.json
@@ -0,0 +1,36 @@
+{
+ "addentries": "Добавяне на записи",
+ "advancedsearch": "Разширено търсене",
+ "alttext": "Алтернативен текст",
+ "approve": "Одобрение",
+ "approved": "Одобрен",
+ "ascending": "По нарастване",
+ "authorfirstname": "Име на автора",
+ "authorlastname": "Презиме на автора",
+ "confirmdeleterecord": "Сигурни ли сте, че искате да изтриете това?",
+ "descending": "По намаляване",
+ "disapprove": "Отхвърляне на одобрение",
+ "emptyaddform": "Не сте попълнили никакви полета!",
+ "entrieslefttoadd": "Трябва да добавите още {{$a.entriesleft}} записи, за да завършите тази дейност",
+ "entrieslefttoaddtoview": "Трябва да добавите още {{$a.entrieslefttoview}} записи преди да можете да видите записите на другите участници.",
+ "expired": "За съжаление тази дейност е затворена в {{$a}} и вече не е достъпна",
+ "fields": "Полета",
+ "menuchoose": "Изберете...",
+ "more": "Още",
+ "nomatch": "Не са намерени съответстващи записи!",
+ "norecords": "Няма записи в базата данни",
+ "notapproved": "Записът още не е качен",
+ "notopenyet": "За съжаление тази дейност не е достъпна от {{$a}}",
+ "numrecords": "{{$a}} записи",
+ "other": "Друго",
+ "recordapproved": "Записът качен",
+ "recorddeleted": "Записът изтрит",
+ "recorddisapproved": "Записът не е одобрен",
+ "resetsettings": "Нулиране на филтрите",
+ "search": "Търсене",
+ "selectedrequired": "Всичко избрано се изисква",
+ "single": "Единично показване",
+ "timeadded": "Време на добавяне",
+ "timemodified": "Време на промяна",
+ "usedate": "Включване в търсене."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/ca.json b/src/addon/mod/data/lang/ca.json
new file mode 100755
index 000000000..52c93ae66
--- /dev/null
+++ b/src/addon/mod/data/lang/ca.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Afegeix entrades",
+ "advancedsearch": "Cerca avançada",
+ "alttext": "Text alternatiu",
+ "approve": "Aprova",
+ "approved": "Acceptat",
+ "ascending": "Ascendent",
+ "authorfirstname": "Nom de l'autor/autora",
+ "authorlastname": "Cognoms de l'autor/autora",
+ "confirmdeleterecord": "Segur que voleu suprimir aquesta entrada?",
+ "descending": "Descendent",
+ "disapprove": "Desfés l'aprovació",
+ "emptyaddform": "No heu emplenat cap camp",
+ "entrieslefttoadd": "Heu d'afegir {{$a.entriesleft}} una entrada o més per completar aquesta activitat",
+ "entrieslefttoaddtoview": "Heu d'afegir {{$a.entrieslefttoview}} una entrada o més abans que pugueu veure les entrades d'altres participants",
+ "errormustsupplyvalue": "Cal que poseu un valor aquí.",
+ "expired": "Aquesta activitat es va tancar el dia {{$a}} i ja no està disponible",
+ "fields": "Camps",
+ "latlongboth": "Cal posar tant la latitud com la longitud.",
+ "menuchoose": "Trieu...",
+ "more": "Més",
+ "nomatch": "No s'han trobat entrades que coincideixin",
+ "norecords": "No hi ha entrades en la base de dades",
+ "notapproved": "L'entrada encara no està aprovada.",
+ "notopenyet": "Aquesta activitat no estarà disponible fins al dia {{$a}}",
+ "numrecords": "{{$a}} entrades",
+ "other": "Un altre",
+ "recordapproved": "S'ha aprovat l'entrada",
+ "recorddeleted": "S'ha suprimit l'entrada",
+ "recorddisapproved": "Entrada no aprovada",
+ "resetsettings": "Reinicialitza els filtres",
+ "search": "Cerca",
+ "selectedrequired": "Cal que estigui tot seleccionat",
+ "single": "Visualitza una entrada",
+ "timeadded": "Hora de la incorporació",
+ "timemodified": "Hora de la modificació",
+ "usedate": "Inclou en la cerca."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/cs.json b/src/addon/mod/data/lang/cs.json
new file mode 100755
index 000000000..e8e5bcc48
--- /dev/null
+++ b/src/addon/mod/data/lang/cs.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Přidat záznamy",
+ "advancedsearch": "Pokročilé vyhledávání",
+ "alttext": "Alternativní text",
+ "approve": "Schválit",
+ "approved": "Schváleno",
+ "ascending": "Vzestupně",
+ "authorfirstname": "Křestní jméno autora",
+ "authorlastname": "Příjmení autora",
+ "confirmdeleterecord": "Chcete skutečně odstranit tento záznam?",
+ "descending": "Sestupně",
+ "disapprove": "Odvolat schválení",
+ "emptyaddform": "Nevyplnili jste žádná pole!",
+ "entrieslefttoadd": "Ještě musíte vložit {{$a.entriesleft}} záznamů(-y), abyste dokončili tuto činnost",
+ "entrieslefttoaddtoview": "Ještě musíte vložit {{$a.entrieslefttoview}} záznamů(-y), než budete moci vidět záznamy ostatních účastníků.",
+ "errorapproving": "Chyba při schvalování nebo odmítnutí položky.",
+ "errordeleting": "Chyba při mazání položky.",
+ "errormustsupplyvalue": "Musí obsahovat nějakou hodnotu.",
+ "expired": "Tato činnost byla ukončena {{$a}} a není již nadále dostupná.",
+ "fields": "Pole",
+ "latlongboth": "Je požadována zeměpisná šířka i délka.",
+ "menuchoose": "Vybrat...",
+ "more": "Podrobněji",
+ "nomatch": "Nenalezeny žádné záznamy!",
+ "norecords": "Nejsou k dispozici žádné záznamy",
+ "notapproved": "Záznam není zatím schválen",
+ "notopenyet": "Tato činnost nebude dostupná až do {{$a}}",
+ "numrecords": "{{$a}} záznamů",
+ "other": "Jiné",
+ "recordapproved": "Záznam byl schválen",
+ "recorddeleted": "Záznam byl smazán",
+ "recorddisapproved": "Neschválený záznam",
+ "resetsettings": "Resetovat filtry",
+ "search": "Vyhledat",
+ "selectedrequired": "Všechna zvolená povinná",
+ "single": "Prohlédnout jednotlivě",
+ "timeadded": "Čas vložení",
+ "timemodified": "Čas poslední úpravy",
+ "usedate": "Zahrnout do vyhledávání."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/da.json b/src/addon/mod/data/lang/da.json
new file mode 100755
index 000000000..8571d218f
--- /dev/null
+++ b/src/addon/mod/data/lang/da.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Tilføj poster",
+ "advancedsearch": "Avanceret søgning",
+ "alttext": "Alternativ tekst",
+ "approve": "Godkend",
+ "approved": "Godkendt",
+ "ascending": "Stigende",
+ "authorfirstname": "Forfatterens fornavn",
+ "authorlastname": "Forfatterens efternavn",
+ "confirmdeleterecord": "Er du sikker på at du vil slette denne post?",
+ "descending": "Faldende",
+ "disapprove": "Fortryd godkendelse",
+ "emptyaddform": "Du udfyldte ingen felter!",
+ "entrieslefttoadd": "Du mangler at tilføje {{$a.entriesleft}} post(er) til denne database.",
+ "entrieslefttoaddtoview": "Du skal tilføje {{$a.entrieslefttoview}} post(er mere) til denne database før du kan se andre deltageres bidrag.",
+ "errormustsupplyvalue": "Du skal indsætte en værdi her.",
+ "expired": "Beklager, denne aktivitet lukkede {{$a}} og er ikke længere tilgængelig",
+ "fields": "Felter",
+ "latlongboth": "Skriv både bredde- og længdegrad",
+ "menuchoose": "Vælg...",
+ "more": "Flere",
+ "nomatch": "Ingen matchende poster fundet",
+ "norecords": "Ingen indlæg i databasen",
+ "notapproved": "Posten er ikke godkendt endnu.",
+ "notopenyet": "Beklager, denne aktivitet er først tilgængelig {{$a}}",
+ "numrecords": "{{$a}} poster",
+ "other": "Anden",
+ "recordapproved": "Post godkendt",
+ "recorddeleted": "Posten er slettet",
+ "recorddisapproved": "Posten er ikke godkendt",
+ "resetsettings": "Nulstil filtre",
+ "search": "Søg",
+ "selectedrequired": "Alle valgte er påkrævet",
+ "single": "Vis en enkelt post",
+ "timeadded": "Tilføjet",
+ "timemodified": "Ændret",
+ "usedate": "Inkluder i søgning."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/de-du.json b/src/addon/mod/data/lang/de-du.json
new file mode 100755
index 000000000..b17756414
--- /dev/null
+++ b/src/addon/mod/data/lang/de-du.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Einträge hinzufügen",
+ "advancedsearch": "Erweiterte Suche",
+ "alttext": "Alternativer Text",
+ "approve": "Zulassen",
+ "approved": "Bestätigt",
+ "ascending": "Aufsteigend",
+ "authorfirstname": "Vorname (Autor)",
+ "authorlastname": "Nachname (Autor)",
+ "confirmdeleterecord": "Möchtest du diesen Datensatz in der Datenbank wirklich löschen?",
+ "descending": "Absteigend",
+ "disapprove": "Eintrag nicht freigegeben",
+ "emptyaddform": "Du hast keine Einträge vorgenommen!",
+ "entrieslefttoadd": "Du musst {{$a.entriesleft}} (weitere) Einträge vornehmen, um diese Aktivität zu beenden.",
+ "entrieslefttoaddtoview": "Du musst {{$a.entrieslefttoview}} (weitere) Einträge vornehmen, bevor du andere Teilnehmerbeiträge anschauen darfst.",
+ "errorapproving": "Fehler beim Freigeben bzw. Ablehnen des Eintrags",
+ "errordeleting": "Fehler beim Löschen des Eintrags",
+ "errormustsupplyvalue": "Sie müssen hier einen Wert eintragen.",
+ "expired": "Die Aktivität wurde am {{$a}} abgeschlossen und ist nicht weiter verfügbar.",
+ "fields": "Felder",
+ "latlongboth": "Längen- und Breitengrad müssen eingetragen werden.",
+ "menuchoose": "Auswählen ...",
+ "more": "Einzelansicht",
+ "nomatch": "Keine passenden Einträge gefunden",
+ "norecords": "Keine Einträge in der Datenbank",
+ "notapproved": "Der Eintrag wurde bisher nicht freigegeben",
+ "notopenyet": "Die Aktivität ist nicht verfügbar bis {{$a}}.",
+ "numrecords": "{{$a}} Datensätze",
+ "other": "Andere",
+ "recordapproved": "Datensatz wurde angenommen",
+ "recorddeleted": "Datensatz gelöscht",
+ "recorddisapproved": "Eintrag nicht freigegeben",
+ "resetsettings": "Filter zurücksetzen",
+ "search": "Suche",
+ "selectedrequired": "Gesamte Auswahl ist erforderlich",
+ "single": "Einzelansicht",
+ "timeadded": "Zeit erstellt",
+ "timemodified": "Zeit geändert",
+ "usedate": "In Suche einbeziehen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/de.json b/src/addon/mod/data/lang/de.json
new file mode 100755
index 000000000..052e78491
--- /dev/null
+++ b/src/addon/mod/data/lang/de.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Einträge hinzufügen",
+ "advancedsearch": "Erweiterte Suche",
+ "alttext": "Alternativer Text",
+ "approve": "Zulassen",
+ "approved": "Bestätigt",
+ "ascending": "Aufsteigend",
+ "authorfirstname": "Vorname (Autor)",
+ "authorlastname": "Nachname (Autor)",
+ "confirmdeleterecord": "Möchten Sie diesen Datensatz wirklich in der Datenbank löschen?",
+ "descending": "Absteigend",
+ "disapprove": "Eintrag nicht freigegeben",
+ "emptyaddform": "Sie haben keine Einträge vorgenommen!",
+ "entrieslefttoadd": "Sie müssen {{$a.entriesleft}} (weitere) Einträge vornehmen, um diese Aktivität zu beenden.",
+ "entrieslefttoaddtoview": "Sie müssen {{$a.entrieslefttoview}} (weitere) Einträge vornehmen, bevor Sie andere Teilnehmerbeiträge betrachten können.",
+ "errorapproving": "Fehler beim Freigeben bzw. Ablehnen des Eintrags",
+ "errordeleting": "Fehler beim Löschen des Eintrags",
+ "errormustsupplyvalue": "Sie müssen hier einen Wert eintragen.",
+ "expired": "Die Aktivität wurde am {{$a}} abgeschlossen und ist nicht weiter verfügbar.",
+ "fields": "Felder",
+ "latlongboth": "Längen- und Breitengrad müssen eingetragen werden.",
+ "menuchoose": "Auswählen ...",
+ "more": "Einzelansicht",
+ "nomatch": "Keine passenden Einträge gefunden",
+ "norecords": "Keine Einträge in der Datenbank",
+ "notapproved": "Der Eintrag wurde bisher nicht freigegeben",
+ "notopenyet": "Die Aktivität ist nicht verfügbar bis {{$a}}.",
+ "numrecords": "{{$a}} Datensätze",
+ "other": "Andere",
+ "recordapproved": "Datensatz wurde angenommen",
+ "recorddeleted": "Datensatz gelöscht",
+ "recorddisapproved": "Eintrag nicht freigegeben",
+ "resetsettings": "Filter zurücksetzen",
+ "search": "Suche",
+ "selectedrequired": "Gesamte Auswahl ist erforderlich",
+ "single": "Einzelansicht",
+ "timeadded": "Zeit erstellt",
+ "timemodified": "Zeit geändert",
+ "usedate": "In Suche einbeziehen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/el.json b/src/addon/mod/data/lang/el.json
new file mode 100755
index 000000000..62d7c3f22
--- /dev/null
+++ b/src/addon/mod/data/lang/el.json
@@ -0,0 +1,33 @@
+{
+ "addentries": "Προσθήκη καταχωρήσεων",
+ "advancedsearch": "Σύνθετη αναζήτηση",
+ "alttext": "Εναλλακτικό κείμενο",
+ "approve": "Έγκριση",
+ "approved": "Εγκρίθηκε",
+ "ascending": "Αύξουσα",
+ "authorfirstname": "Όνομα συγγραφέα",
+ "authorlastname": "Επίθετο συγγραφέα",
+ "confirmdeleterecord": "Σίγουρα θέλετε να διαγραφεί αυτή η καταχώρηση;",
+ "descending": "Φθίνουσα",
+ "emptyaddform": "Δεν συμπληρώσατε κανένα από τα πεδία!",
+ "entrieslefttoadd": "Πρέπει να προσθέσετε {{$a.entriesleft}} περισσότερες καταχωρήσεις ώστε να ολοκληρώσετε αυτήν τη δραστηριότητα",
+ "entrieslefttoaddtoview": "Πρέπει να προσθέσετε {{$a.entrieslefttoview}} περισσότερες καταχωρήσεις πριν να μπορέσετε να δείτε τις καταχωρήσεις άλλων χρηστών.",
+ "expired": "Η δραστηριότητα αυτή έκλεισε στις {{$a}} και δεν είναι πλέον διαθέσιμη",
+ "fields": "Πεδία",
+ "menuchoose": "Επιλέξτε....",
+ "more": "Περισσότερα",
+ "nomatch": "Δεν βρέθηκαν καταχωρήσεις που να ταιριάζουν!",
+ "norecords": "Δεν υπάρχουν καταχωρήσεις στη βάση δεδομένων",
+ "notapproved": "Δεν έχει ακόμη εγκριθεί.",
+ "notopenyet": "Συγνώμη, αυτή η δραστηριότητα δεν είναι διαθέσιμη μέχρι {{$a}}",
+ "numrecords": "{{$a}} καταχωρήσεις",
+ "other": "Άλλο",
+ "recordapproved": "Η καταχώρηση εγκρίθηκε",
+ "recorddeleted": "Η καταχώρηση διαγράφθηκε",
+ "resetsettings": "Επανορισμός φίλτρων",
+ "search": "Αναζήτηση",
+ "selectedrequired": "Απαιτούνται όλα τα επιλεγμένα",
+ "single": "Προβολή μοναδιαίας",
+ "timeadded": "Προστέθηκε χρόνος",
+ "timemodified": "Ο χρόνος μεταβλήθηκε"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/es-mx.json b/src/addon/mod/data/lang/es-mx.json
new file mode 100755
index 000000000..81ce4dddc
--- /dev/null
+++ b/src/addon/mod/data/lang/es-mx.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Añadir entradas",
+ "advancedsearch": "Búsqueda avanzada",
+ "alttext": "Texto alternativo",
+ "approve": "Aprobar",
+ "approved": "Aprobado",
+ "ascending": "Ascendente",
+ "authorfirstname": "Nombre del autor",
+ "authorlastname": "Apellidos del autor",
+ "confirmdeleterecord": "¿Está seguro de que desea eliminar esta entrada?",
+ "descending": "Descendente",
+ "disapprove": "Deshacer aprobación",
+ "emptyaddform": "¡No ha rellenado ningún campo!",
+ "entrieslefttoadd": "Debe añadir {{$a.entriesleft}} entrada(s) más antes de poder ver las entradas de otro participante.",
+ "entrieslefttoaddtoview": "Debe añadir {{$a.entrieslefttoview}} entrada(s) antes de poder ver las entradas de otros participantes.",
+ "errorapproving": "Error al aprobar o des_aprobar una entrada.",
+ "errordeleting": "Error al eliminar entrada.",
+ "errormustsupplyvalue": "Usted debe proporcionar un valor aquí.",
+ "expired": "Lo sentimos, esta actividad se cerró el {{$a}} y ya no está disponible",
+ "fields": "Campos",
+ "latlongboth": "Tanto la Latitud como la Longitud son necesarias.",
+ "menuchoose": "Seleccionar...",
+ "more": "Más",
+ "nomatch": "No se han encontrado entradas",
+ "norecords": "No entradas en la base de datos",
+ "notapproved": "La entrada aún no ha sido aprobada.",
+ "notopenyet": "Lo sentimos, esta actividad no está disponible hasta {{$a}}",
+ "numrecords": "{{$a}} entradas",
+ "other": "Otro",
+ "recordapproved": "Entrada aprobada",
+ "recorddeleted": "Entrada eliminada",
+ "recorddisapproved": "Entrada desaprobada",
+ "resetsettings": "Restablecer filtros",
+ "search": "Buscar",
+ "selectedrequired": "Se requieren todos los seleccionados",
+ "single": "Ver individual",
+ "timeadded": "Tiempo añadido",
+ "timemodified": "Tiempo modificado",
+ "usedate": "Incluir en búsqueda."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/es.json b/src/addon/mod/data/lang/es.json
new file mode 100755
index 000000000..1ee0d8ad5
--- /dev/null
+++ b/src/addon/mod/data/lang/es.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Añadir entradas",
+ "advancedsearch": "Búsqueda avanzada",
+ "alttext": "Texto alternativo",
+ "approve": "Aprobar",
+ "approved": "Aprobado",
+ "ascending": "Ascendente",
+ "authorfirstname": "Nombre del autor",
+ "authorlastname": "Apellido del autor",
+ "confirmdeleterecord": "¿Está seguro de que desea eliminar esta entrada?",
+ "descending": "Descendente",
+ "disapprove": "Desaprobar",
+ "emptyaddform": "¡No ha rellenado ningún campo!",
+ "entrieslefttoadd": "Debe agregar {{$a.entriesleft}} entrada(s) más para poder finalizar esta actividad",
+ "entrieslefttoaddtoview": "Debe añadir {{$a.entrieslefttoview}} entrada(s) antes de poder ver las entradas de otros participantes.",
+ "errormustsupplyvalue": "Debe proporcionar un valor aquí.",
+ "expired": "Lo sentimos, esta actividad se cerró el {{$a}} y ya no está disponible",
+ "fields": "Campos",
+ "latlongboth": "Tanto la latitud como la longitud son necesarias.",
+ "menuchoose": "Seleccionar...",
+ "more": "Más",
+ "nomatch": "No se han encontrado entradas",
+ "norecords": "No hay entradas en la base de datos",
+ "notapproved": "La entrada aún no ha sido aprobada.",
+ "notopenyet": "Lo sentimos, esta actividad no está disponible hasta {{$a}}",
+ "numrecords": "{{$a}} entradas",
+ "other": "Otro",
+ "recordapproved": "Entrada aprobada",
+ "recorddeleted": "Entrada eliminada",
+ "recorddisapproved": "Entrada desaprobada",
+ "resetsettings": "Restablecer filtros",
+ "search": "Buscar",
+ "selectedrequired": "Se requieren todos los seleccionados",
+ "single": "Ver individual",
+ "timeadded": "Tiempo añadido",
+ "timemodified": "Tiempo modificado",
+ "usedate": "Incluir en la búsqueda"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/eu.json b/src/addon/mod/data/lang/eu.json
new file mode 100755
index 000000000..6a03c07b0
--- /dev/null
+++ b/src/addon/mod/data/lang/eu.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Gehitu sarrerak",
+ "advancedsearch": "Bilaketa aurreratua",
+ "alttext": "Ordezko testua",
+ "approve": "Onartu",
+ "approved": "Onartuta",
+ "ascending": "Goranzkoa",
+ "authorfirstname": "Egilearen izena",
+ "authorlastname": "Egilearen deitura",
+ "confirmdeleterecord": "Ziur al zaude sarrera hau ezabatu nahi duzula?",
+ "descending": "Beheranzkoa",
+ "disapprove": "Onarpena desegin",
+ "emptyaddform": "Ez duzu eremuren bat bete!",
+ "entrieslefttoadd": "{{$a.entriesleft}} sarrera gehiago gehitu behar dituzu jarduera hau osatzeko.",
+ "entrieslefttoaddtoview": "{{$a.entrieslefttoview}} sarrera gehiago gehitu behar dituzu beste partaideen sarrerak ikusi ahal izateko.",
+ "errorapproving": "Errorea sarrera onartu edo baztertzean.",
+ "errordeleting": "Errore bat gertatu da sarrera ezabatzean.",
+ "errormustsupplyvalue": "Hemen balio bat eman behar duzu.",
+ "expired": "Sentitzen dugu, jarduera hau {{$a}} datan itxi zen eta dagoeneko ez dago eskuragarri",
+ "fields": "Eremuak",
+ "latlongboth": "Latitudea eta longitudea beharrekoak dira.",
+ "menuchoose": "Aukeratu...",
+ "more": "Gehiago",
+ "nomatch": "Ez da sarrera egokirik aurkitu!",
+ "norecords": "Datu-basean sarrerarik ez",
+ "notapproved": "Sarrera ez da oraindik onartu",
+ "notopenyet": "Sentitzen dugu, jarduera hau ez dago eskuragarri {{$a}} arte",
+ "numrecords": "{{$a}} sarrera(k)",
+ "other": "Beste bat",
+ "recordapproved": "Sarrera onartu da",
+ "recorddeleted": "Sarrera ezabatu da",
+ "recorddisapproved": "Onartu gabeko sarrera",
+ "resetsettings": "Berrabiarazi iragazkiak",
+ "search": "Bilatu",
+ "selectedrequired": "Aukeratutako guztia beharrezkoa",
+ "single": "Ikusi banaka",
+ "timeadded": "Denbora gehituta",
+ "timemodified": "Denbora aldatuta",
+ "usedate": "Sartu bilaketan."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/fa.json b/src/addon/mod/data/lang/fa.json
new file mode 100755
index 000000000..871c6ce2a
--- /dev/null
+++ b/src/addon/mod/data/lang/fa.json
@@ -0,0 +1,33 @@
+{
+ "addentries": "دادههایی را اضافه کنید",
+ "advancedsearch": "جستجوی پیشرفته",
+ "alttext": "متن جایگزین",
+ "approve": "تایید",
+ "approved": "وضعیت تایید",
+ "ascending": "صعودی",
+ "authorfirstname": "نام وارد کننده",
+ "authorlastname": "نام خانوادگی وارد کننده",
+ "confirmdeleterecord": "آیا مطمئن هستید که میخواهید این مورد را حذف کنید؟",
+ "descending": "نزولی",
+ "emptyaddform": "شما هیچ فیلدی را پر نکردید!",
+ "entrieslefttoadd": "برای کامل کردن این فعالیت باید {{$a.entriesleft}} دادهٔ دیگر وارد کنید",
+ "entrieslefttoaddtoview": "باید {{$a.entrieslefttoview}} دادهٔ دیگر وارد کنید تا بتوانید دادههای وارد شده توسط سایرین را ببینید.",
+ "expired": "متأسفیم، این فعالیت در {{$a}} بسته شد و دیگر در دسترس نیست",
+ "fields": "فیلدها",
+ "menuchoose": "انتخاب کنید...",
+ "more": "نمایش جزئیات",
+ "nomatch": "دادهٔ مطابقی پیدا نشد!",
+ "norecords": "بانک اطلاعاتی خالی است",
+ "notapproved": "دادهٔ ورودی هنوز تایید نشده است.",
+ "notopenyet": "با عرض پوزش، این فعالیت تا قبل از {{$a}} در دسترس نیست",
+ "numrecords": "{{$a}} دادهٔ ورودی",
+ "other": "غیره",
+ "recordapproved": "دادهٔ ورودی تایید شد",
+ "recorddeleted": "حذف شد",
+ "resetsettings": "بازنشانی فیلترها",
+ "search": "جستجو",
+ "selectedrequired": "تمامی گزینههای انتخاب شده لازم هستند",
+ "single": "مشاهدهٔ تکی",
+ "timeadded": "زمان اضافه شدن",
+ "timemodified": "زمان آخرین تغییر"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/fi.json b/src/addon/mod/data/lang/fi.json
new file mode 100755
index 000000000..7fd9863e3
--- /dev/null
+++ b/src/addon/mod/data/lang/fi.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Lisää tietueita",
+ "advancedsearch": "Laajennettu haku",
+ "alttext": "Vaihtoehtoinen teksti",
+ "approve": "Hyväksy",
+ "approved": "Hyväksytty",
+ "ascending": "Nouseva järjestys",
+ "authorfirstname": "Lisääjän etunimi",
+ "authorlastname": "Lisääjän sukunimi",
+ "confirmdeleterecord": "Haluatko varmasti poistaa tämän hakusanan?",
+ "descending": "Laskeva järjestys",
+ "disapprove": "Peru hyväksyminen",
+ "emptyaddform": "Et täyttänyt tietueen kenttiä!",
+ "entrieslefttoadd": "Sinun täytyy lisätä {{$a.entriesleft}} tietue(tta) saadaksesi tehtävän valmiiksi.",
+ "entrieslefttoaddtoview": "Sinun täytyy lisätä {{$a.entriesleft}} tietuetta ennen kuin pääset katsomaan muiden lisäämiä tietueita.",
+ "errorapproving": "Virhe hyväksyttäessä tai hylätessä merkintää.",
+ "errordeleting": "Virhe poistettaessa merkintää.",
+ "expired": "Tämä aktiviteetti on jo suljettu ({{$a}}).",
+ "fields": "Kentät",
+ "menuchoose": "Valitse...",
+ "more": "Lisää...",
+ "nomatch": "Haluttuja hakusanoja ei löytynyt!",
+ "norecords": "Tietokannassa ei ole hakusanoja",
+ "notapproved": "Tietuetta ei ole vielä hyväksytty.",
+ "notopenyet": "Tämä aktiviteetti on avoinna vasta {{$a}}.",
+ "numrecords": "{{$a}} tietuetta",
+ "other": "Muu",
+ "recordapproved": "Tietue hyväksytty",
+ "recorddeleted": "Tietue poistettu",
+ "recorddisapproved": "Merkintää ei ole hyväksytty",
+ "resetsettings": "Tyhjennä hakuehdot",
+ "search": "Hae",
+ "selectedrequired": "Kaikki valitut vaaditaan",
+ "single": "Näytä yksittäin",
+ "timeadded": "Lisäysajankohta",
+ "timemodified": "Muokkausajankohta",
+ "usedate": "Sisällytä hakuun"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/fr.json b/src/addon/mod/data/lang/fr.json
new file mode 100755
index 000000000..ac47822dc
--- /dev/null
+++ b/src/addon/mod/data/lang/fr.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Ajouter des fiches",
+ "advancedsearch": "Recherche avancée",
+ "alttext": "Texte alternatif",
+ "approve": "Approuver",
+ "approved": "Approuvé",
+ "ascending": "Ascendant",
+ "authorfirstname": "Prénom auteur",
+ "authorlastname": "Nom auteur",
+ "confirmdeleterecord": "Voulez-vous vraiment supprimer cette fiche ?",
+ "descending": "Descendant",
+ "disapprove": "Retirer l'approbation",
+ "emptyaddform": "Vous n'avez rempli aucun champ !",
+ "entrieslefttoadd": "Vous devez ajouter encore {{$a.entriesleft}} fiches pour terminer cette activité",
+ "entrieslefttoaddtoview": "Vous devez ajouter encore {{$a.entrieslefttoview}} fiches avant de pouvoir consulter les fiches des autres participants.",
+ "errorapproving": "Erreur lors de l'approbation ou de la désapprobation de la fiche.",
+ "errordeleting": "Erreur lors de suppression de la fiche.",
+ "errormustsupplyvalue": "Veuillez renseigner une valeur.",
+ "expired": "Cette activité est fermée depuis {{$a}} et n'est plus disponible",
+ "fields": "Champs",
+ "latlongboth": "La latitude et la longitude sont requises.",
+ "menuchoose": "Sélectionner...",
+ "more": "Plus",
+ "nomatch": "Aucune fiche trouvée !",
+ "norecords": "Aucune fiche dans la base de données",
+ "notapproved": "La fiche n'est pas encore approuvée.",
+ "notopenyet": "Cette activité n'est pas disponible avant le {{$a}}",
+ "numrecords": "{{$a}} fiches",
+ "other": "Autre",
+ "recordapproved": "Fiche approuvée",
+ "recorddeleted": "Fiche supprimée",
+ "recorddisapproved": "Fiche désapprouvée",
+ "resetsettings": "Réinitialiser les filtres",
+ "search": "Recherche",
+ "selectedrequired": "Toute la sélection requise",
+ "single": "Affichage fiche",
+ "timeadded": "Date ajout",
+ "timemodified": "Date modification",
+ "usedate": "Inclure dans la recherche."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/he.json b/src/addon/mod/data/lang/he.json
new file mode 100755
index 000000000..b6fd0430e
--- /dev/null
+++ b/src/addon/mod/data/lang/he.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "הוספת פריטים",
+ "advancedsearch": "חיפוש מורחב",
+ "alttext": "תוכן חלופי",
+ "approve": "אישור",
+ "approved": "מאושר",
+ "ascending": "בסדר עולה",
+ "authorfirstname": "שם פרטי של המחבר",
+ "authorlastname": "שם משפחה של המחבר",
+ "confirmdeleterecord": "האם למחוק את הפריט הזה?",
+ "descending": "בסדר יורד",
+ "disapprove": "ביטול האישור",
+ "emptyaddform": "לא מילאת אף שדה!",
+ "entrieslefttoadd": "יש להזין {{$a.entriesleft}} פריטים נוספים בכדי להשלים פעילות זו",
+ "entrieslefttoaddtoview": "יש להזין {{$a.entrieslefttoview}} פריטים נוספים בכדי לראות פריטים של משתתפים אחרים.",
+ "errormustsupplyvalue": "יש להזין ערך בשדה זה.",
+ "expired": "מצטערים, פעילות זו נסגרה ב {{$a}} ואיננה זמינה יותר.",
+ "fields": "שדות",
+ "latlongboth": "נדרשים נתוני קו־רוחב וגם קו־אורך",
+ "menuchoose": "יש לבחור...",
+ "more": "עוד",
+ "nomatch": "לא נמצאו פריטים מתאימים!",
+ "norecords": "אין פריטים בבסיס הנתונים",
+ "notapproved": "הפריט עדיין לא אושר.",
+ "notopenyet": "מצטערים, פעילות זו איננה זמינה עד {{$a}} .",
+ "numrecords": "{{$a}} פריטים",
+ "other": "אחר",
+ "recordapproved": "הפריט אושר",
+ "recorddeleted": "הפריט נמחק",
+ "recorddisapproved": "הפריט לא מאושר",
+ "resetsettings": "איפוס שדות",
+ "search": "חיפוש",
+ "selectedrequired": "כל הנבחרים דרושים",
+ "single": "תצוגת פריט",
+ "timeadded": "זמן הוספה",
+ "timemodified": "זמן עדכון",
+ "usedate": "כלול בחיפוש"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/hr.json b/src/addon/mod/data/lang/hr.json
new file mode 100755
index 000000000..ac0675210
--- /dev/null
+++ b/src/addon/mod/data/lang/hr.json
@@ -0,0 +1,34 @@
+{
+ "addentries": "Dodaj zapise",
+ "advancedsearch": "Napredno pretraživanje",
+ "alttext": "Alternativni tekst",
+ "approve": "Dopusti",
+ "approved": "Dopušteno",
+ "ascending": "Uzlazno",
+ "authorfirstname": "Ime autora",
+ "authorlastname": "Prezime autora",
+ "confirmdeleterecord": "Želite li izbrisati ovaj zapis?",
+ "descending": "Silazno",
+ "emptyaddform": "Niste ispunili nijedno polje!",
+ "entrieslefttoadd": "Morate dodati barem {{$a.entriesleft}} zapisa kako bi završili ovu aktivnost",
+ "entrieslefttoaddtoview": "Morate dodati barem {{$a.entriesleft}} zapisa kako bi mogli pregledavati zapise drugih sudionika.",
+ "expired": "Nažalost, ova aktivnost je zatvorena {{$a}} i nije više dostupna",
+ "fields": "Polja",
+ "menuchoose": "Odaberite...",
+ "more": "Više",
+ "nomatch": "Nema odgovarajućih zapisa!",
+ "norecords": "U bazi podataka nema zapisa",
+ "notapproved": "Zapis još nije potvrđen.",
+ "notopenyet": "Nažalost, ova aktivnost nije dostupna do {{$a}}",
+ "numrecords": "{{$a}} zapisa",
+ "other": "Drugo",
+ "recordapproved": "Zapis je odobren",
+ "recorddeleted": "Zapis izbrisan",
+ "resetsettings": "Ukloni filtre",
+ "search": "Pretraživanje",
+ "selectedrequired": "Sve odabrano je označeno",
+ "single": "Prikaži pojedinačno",
+ "timeadded": "Vrijeme dodavanja",
+ "timemodified": "Vrijeme izmjene",
+ "usedate": "Obuhvati u pretraživanju."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/hu.json b/src/addon/mod/data/lang/hu.json
new file mode 100755
index 000000000..4afadae1b
--- /dev/null
+++ b/src/addon/mod/data/lang/hu.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Bejegyzések hozzáadása",
+ "advancedsearch": "Részletes keresés",
+ "alttext": "Alternatív szöveg",
+ "approve": "Jóváhagy",
+ "approved": "Jóváhagyva",
+ "ascending": "Növekvő",
+ "authorfirstname": "Szerző keresztneve",
+ "authorlastname": "Szerző vezetékneve",
+ "confirmdeleterecord": "Biztosan törölni akarja ezt a bejegyzést?",
+ "descending": "Csökkenő",
+ "disapprove": "Jóváhagyás elvetése",
+ "emptyaddform": "Nem töltött ki egy mezőt sem!",
+ "entrieslefttoadd": "A tevékenység befejezéséhez {{$a.entriesleft}} további tételt kell hozzáadnia.",
+ "entrieslefttoaddtoview": "Még {{$a.entrieslefttoview}} bejegyzést kell hozzáadnia, mielőtt megtekintheti más résztvevők bejegyzéseit.",
+ "errormustsupplyvalue": "Itt egy értéket kell megadnia.",
+ "expired": "A tevékenység {{$a}} időpontban lezárult és már nem érhető el.",
+ "fields": "Mezők",
+ "latlongboth": "Mind a szélesség, mind a hosszúság kitöltendő.",
+ "menuchoose": "Választás...",
+ "more": "Tovább",
+ "nomatch": "Nincs egyező fogalom!",
+ "norecords": "Nincsenek bejegyzések az adatbázisban",
+ "notapproved": "A bejegyzés még nincs jóváhagyva.",
+ "notopenyet": "A tevékenység {{$a}} időpontig nem elérhető.",
+ "numrecords": "{{$a}} bejegyzés",
+ "other": "Más",
+ "recordapproved": "Bejegyzés jóváhagyva",
+ "recorddeleted": "Bejegyzés törölve",
+ "recorddisapproved": "Nem jóváhagyott fogalom",
+ "resetsettings": "Szűrők visszaállítása",
+ "search": "Keresés",
+ "selectedrequired": "Minden kiválasztott szükséges",
+ "single": "Egyetlen megtekintése",
+ "timeadded": "Időpont hozzáadva",
+ "timemodified": "Időpont módosult",
+ "usedate": "Keresésben szerepeljen."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/it.json b/src/addon/mod/data/lang/it.json
new file mode 100755
index 000000000..3675021b6
--- /dev/null
+++ b/src/addon/mod/data/lang/it.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Aggiungi record",
+ "advancedsearch": "Ricerca avanzata",
+ "alttext": "Testo alternativo",
+ "approve": "Approva",
+ "approved": "Approvato",
+ "ascending": "Crescente",
+ "authorfirstname": "Nome autore",
+ "authorlastname": "Cognome autore",
+ "confirmdeleterecord": "Stai per eliminare questo record. Ne sei certo?",
+ "descending": "Decrescente",
+ "disapprove": "Disapprova",
+ "emptyaddform": "Non hai riempito nessun campo!",
+ "entrieslefttoadd": "Per poter visualizzare i record inseriti dagli altri partecipanti è necessario inserire altri {{$a.entriesleft}} record.",
+ "entrieslefttoaddtoview": "Devi aggiungere {{$a.entrieslefttoview}} altri record prima di poter vedere i record degli altri partecipanti.",
+ "errorapproving": "Si è verificato un errore durante l'approvazione o disapprovazione del record.",
+ "errordeleting": "Si è verificato un errore durante l'eliminazione del record.",
+ "errormustsupplyvalue": "Devi inserire un valore.",
+ "expired": "Spiacente, l'attività non è più disponibile poiché è stata chiusa il {{$a}} ",
+ "fields": "Campi",
+ "latlongboth": "Devi compilare sia la latitudine sia la longitudine.",
+ "menuchoose": "Scegli...",
+ "more": "Dettagli",
+ "nomatch": "Non è stato trovato nessun record che corrisponda!",
+ "norecords": "Nessun record è presente nel Database",
+ "notapproved": "Il record inserito è in attesa di essere approvato.",
+ "notopenyet": "Spiacente, questa attività non sarà disponibile prima del {{$a}}",
+ "numrecords": "{{$a}} record",
+ "other": "Altro",
+ "recordapproved": "Record approvati",
+ "recorddeleted": "Il record è stato eliminato",
+ "recorddisapproved": "Record disapprovato",
+ "resetsettings": "Reimposta filtri",
+ "search": "Cerca",
+ "selectedrequired": "Necessari tutti i selezionati",
+ "single": "Dettagli",
+ "timeadded": "Data/ora inserimento",
+ "timemodified": "Data/ora modifica",
+ "usedate": "Includi nella ricerca."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/ja.json b/src/addon/mod/data/lang/ja.json
new file mode 100755
index 000000000..1b390e71a
--- /dev/null
+++ b/src/addon/mod/data/lang/ja.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "エントリを追加する",
+ "advancedsearch": "高度な検索",
+ "alttext": "代替テキスト",
+ "approve": "承認",
+ "approved": "承認日時",
+ "ascending": "昇順",
+ "authorfirstname": "著者の名",
+ "authorlastname": "著者の姓",
+ "confirmdeleterecord": "本当にこのエントリを削除してもよろしいですか?",
+ "descending": "降順",
+ "disapprove": "承認を取り消す",
+ "emptyaddform": "あなたはどのフィールドにも入力していません!",
+ "entrieslefttoadd": "この活動を完了するにはさらに {{$a.entriesleft}} 件以上のエントリを追加してください。",
+ "entrieslefttoaddtoview": "他の参加者のエントリを閲覧するにはさらに {{$a.entrieslefttoview}} 件以上のエントリを追加してください。",
+ "errormustsupplyvalue": "あなたはここで値を提供する必要があります。",
+ "expired": "申し訳ございません、この活動は {{$a}} に終了して利用することはできません。",
+ "fields": "フィールド",
+ "latlongboth": "緯度および経度の両方とも必須です。",
+ "menuchoose": "選択 ...",
+ "more": "詳細",
+ "nomatch": "該当するエントリが見つかりませんでした!",
+ "norecords": "データベースにエントリはありません。",
+ "notapproved": "エントリはまだ承認されていません。",
+ "notopenyet": "申し訳ございません、この活動は {{$a}} まで利用できません。",
+ "numrecords": "{{$a}} エントリ",
+ "other": "その他",
+ "recordapproved": "エントリが承認されました。",
+ "recorddeleted": "エントリが削除されました。",
+ "recorddisapproved": "エントリ未承認",
+ "resetsettings": "フィルタをリセットする",
+ "search": "検索",
+ "selectedrequired": "選択したすべてを含む",
+ "single": "個別表示",
+ "timeadded": "追加日時",
+ "timemodified": "修正日時",
+ "usedate": "検索に含む"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/ko.json b/src/addon/mod/data/lang/ko.json
new file mode 100755
index 000000000..4ef6ce317
--- /dev/null
+++ b/src/addon/mod/data/lang/ko.json
@@ -0,0 +1,35 @@
+{
+ "addentries": "내용 추가",
+ "advancedsearch": "고급 검색",
+ "alttext": "상응 문구",
+ "approve": "승인",
+ "approved": "승인됨",
+ "ascending": "오름차순",
+ "authorfirstname": "저자의 이름",
+ "authorlastname": "저자의 성",
+ "confirmdeleterecord": "이 게시물을 삭제하려고 하는 것이 확실합니까?",
+ "descending": "내림차순",
+ "disapprove": "승인 취소",
+ "emptyaddform": "어떤 항목도 기입하지 않았습니다!",
+ "entrieslefttoadd": "이 활동을 완료하려면 {{$a.entriesleft}} 개 이상의 항목을 입력해야만 합니다.",
+ "entrieslefttoaddtoview": "다른 참여자의 내용을 보기 전에 {{$a.entrieslefttoview}} 항목을 더 추가해야만 합니다.",
+ "expired": "죄송합니다만, 이 활동은 {{$a}}에 종료되었으므로 더 이상 이용할 수 없습니다.",
+ "fields": "항목들",
+ "menuchoose": "선택...",
+ "more": "더 이상",
+ "nomatch": "해당되는 게시물이 없음!",
+ "norecords": "데이터베이스에 입력된 내용 없음",
+ "notapproved": "아직 입력을 받을 수 없음",
+ "notopenyet": "죄송합니다만 이 활동은 {{$a}} 가 될 때까지 이용할 수 없습니다.",
+ "numrecords": "{{$a}} 게시물",
+ "other": "기타",
+ "recordapproved": "게시물이 허용됨",
+ "recorddeleted": "게시물이 삭제됨",
+ "resetsettings": "필터 초기화",
+ "search": "검색",
+ "selectedrequired": "모든 선택사항 필요",
+ "single": "한개 보기",
+ "timeadded": "추가된 시간",
+ "timemodified": "변경된 시간",
+ "usedate": "검색에 포함합니다."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/lt.json b/src/addon/mod/data/lang/lt.json
new file mode 100755
index 000000000..fccee3517
--- /dev/null
+++ b/src/addon/mod/data/lang/lt.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Įtraukti įrašus",
+ "advancedsearch": "Išplėstinė paieška",
+ "alttext": "Alternatyvusis tekstas",
+ "approve": "Patvirtinti",
+ "approved": "Patvirtinta",
+ "ascending": "Didėjimo tvarka",
+ "authorfirstname": "Autoriaus vardas",
+ "authorlastname": "Autoriaus pavardė",
+ "confirmdeleterecord": "Ar tikrai norite naikinti šį įrašą?",
+ "descending": "Mažėjimo tvarka",
+ "disapprove": "Atšaukti patvirtinimą",
+ "emptyaddform": "Neužpildėte jokių laukų!",
+ "entrieslefttoadd": "Turite įtraukti dar {{$a.entriesleft}} įrašus (-ų), kad galėtumėte užbaigti šią veiklą",
+ "entrieslefttoaddtoview": "Turite įtraukti dar {{$a.entrieslefttoview}} įrašus (-ų), kad galėtumėte peržiūrėti kitų dalyvių įrašus.",
+ "errormustsupplyvalue": "Privalote pateikti reikšmę čia.",
+ "expired": "Apgailestaujame, ši veikla uždaryta {{$a}} ir nebegalima",
+ "fields": "Laukai",
+ "latlongboth": "Abu, platuma ir ilguma, yra privalomi.",
+ "menuchoose": "Pasirinkite...",
+ "more": "Daugiau",
+ "nomatch": "Nerasta atitinkančių įrašų!",
+ "norecords": "Duomenų bazėje nėra įrašų",
+ "notapproved": "Įrašas dar nepatvirtintas.",
+ "notopenyet": "Apgailestaujame, ši veikla negalima iki {{$a}}",
+ "numrecords": "{{$a}} įrašai (-ų)",
+ "other": "Kita",
+ "recordapproved": "Įrašas patvirtintas",
+ "recorddeleted": "Įrašas panaikintas",
+ "recorddisapproved": "Įrašas nepatvirtintas",
+ "resetsettings": "Nustatyti filtrus iš naujo",
+ "search": "Ieškoti",
+ "selectedrequired": "Visi pasirinkti būtini",
+ "single": "Peržiūrėti vieną elementą",
+ "timeadded": "Įtraukimo laikas",
+ "timemodified": "Modifikavimo laikas",
+ "usedate": "Įtraukti į paiešką."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/mr.json b/src/addon/mod/data/lang/mr.json
new file mode 100755
index 000000000..bf1ef456a
--- /dev/null
+++ b/src/addon/mod/data/lang/mr.json
@@ -0,0 +1,31 @@
+{
+ "addentries": "संक्षिप्त नोंदी",
+ "advancedsearch": "प्रगत शोध",
+ "alttext": "पर्यायी मजकूर",
+ "approve": "मान्यता",
+ "approved": "मान्यता",
+ "ascending": "उत्तरत्या क्रमाने",
+ "authorfirstname": "प्राधिकारी प्रथम नाव",
+ "authorlastname": "प्राधिकारी आंडनांव",
+ "confirmdeleterecord": "नोंद मिटवायचे आहे का?",
+ "descending": "चढत्या क्रमाने",
+ "emptyaddform": "तुम्हाला एकही क्षेत्र भरावयाची गरज नाही",
+ "errorapproving": "प्रविष्टी मंजूर किंवा अमान्य करण्यामध्ये त्रुटी",
+ "errordeleting": "नोंद हटविताना त्रुटी.",
+ "expired": "संपलेला",
+ "fields": "क्षेत्रे",
+ "menuchoose": "निवडा",
+ "more": "आधिक",
+ "nomatch": "जुळवणी सापडली नाही",
+ "norecords": "नोंद डेटाबेस नाही",
+ "notopenyet": "क्षमा करा,ही कार्यक्षमता आजुन पर्यत बंद आहे",
+ "other": "इतर",
+ "recordapproved": "नोंद मान्य आहे",
+ "recorddeleted": "नोंद मिटवा",
+ "resetsettings": "पुर्वत्तत फिल्टर",
+ "search": "शोध",
+ "selectedrequired": "सगळे निवडलेले आवश्यक आहे",
+ "single": "एकच पहा",
+ "timeadded": "वेळेमध्ये अधिक करा",
+ "timemodified": "वेळेला दुरुस्त करा"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/nl.json b/src/addon/mod/data/lang/nl.json
new file mode 100755
index 000000000..32c168bd6
--- /dev/null
+++ b/src/addon/mod/data/lang/nl.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Items goedkeuren",
+ "advancedsearch": "Geavanceerd zoeken",
+ "alttext": "Alternatieve tekst",
+ "approve": "Goedkeuren",
+ "approved": "Goedgekeurd",
+ "ascending": "Oplopend",
+ "authorfirstname": "Voornaam auteur",
+ "authorlastname": "Achternaam auteur",
+ "confirmdeleterecord": "Je gaat deze record verwijderen. Ben je zeker?",
+ "descending": "Aflopend",
+ "disapprove": "Verwerp",
+ "emptyaddform": "Je hebt geen velden ingevuld!",
+ "entrieslefttoadd": "Je moet {{$a.entriesleft}} meer item(s) ingeven voor je de items van anderen kunt zien.",
+ "entrieslefttoaddtoview": "je moet {{$a.entrieslefttoview}} items meer toevoegen voor je de items van anderen kan zien.",
+ "errorapproving": "Fout bij het goedkeuren of verwerpen van het nieuwe item.",
+ "errordeleting": "Fout bij het verwijderen van het item.",
+ "errormustsupplyvalue": "Je moet hier een waarde geven.",
+ "expired": "Deze activiteit is gesloten op {{$a}} en is niet langer beschikbaar",
+ "fields": "Velden",
+ "latlongboth": "Zowel de breedtegraad als de lengtegraad zijn vereist.",
+ "menuchoose": "Kies...",
+ "more": "Meer",
+ "nomatch": "Geen overeenkomende items gevonden",
+ "norecords": "Geen items in de databank",
+ "notapproved": "Item is nog niet goedgekeurd",
+ "notopenyet": "Deze actieviteit is niet beschikbaar tot {{$a}}",
+ "numrecords": "{{$a}} records",
+ "other": "Andere",
+ "recordapproved": "Item goedgekeurd",
+ "recorddeleted": "Record verwijderd",
+ "recorddisapproved": "Item verworpen",
+ "resetsettings": "Reset filters",
+ "search": "Zoek",
+ "selectedrequired": "Alle geselecteerde vereist",
+ "single": "Itemweergave",
+ "timeadded": "Toegevoegd op",
+ "timemodified": "Gewijzigd op",
+ "usedate": "Ook zoeken"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/no.json b/src/addon/mod/data/lang/no.json
new file mode 100755
index 000000000..32b0962fd
--- /dev/null
+++ b/src/addon/mod/data/lang/no.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Legg til",
+ "advancedsearch": "Avansert søk",
+ "alttext": "Alternativ tekst",
+ "approve": "Godkjenn",
+ "approved": "Godkjent",
+ "ascending": "Stigende",
+ "authorfirstname": "Forfatterens fornavn",
+ "authorlastname": "Forfatterens etternavn",
+ "confirmdeleterecord": "Er du sikker på at du vil slette denne oppføringen?",
+ "descending": "Synkende",
+ "disapprove": "Underkjenn",
+ "emptyaddform": "Du har ikke fylt ut noen felter!",
+ "entrieslefttoadd": "Du må legge til {{$a.entriesleft}} flere oppføringer før du kan fullføre denne aktiviteten.",
+ "entrieslefttoaddtoview": "Du må legge til {{$a.entrieslefttoview}} flere poster/innlegg før du kan se andre deltakeres innlegg.",
+ "errormustsupplyvalue": "Du må skrive inn noe her",
+ "expired": "Beklager, denne aktiviteten ble stengt {{$a}} og er ikke lenger tilgjengelig",
+ "fields": "Felter",
+ "latlongboth": "Både lengdegrad og breddegrad må oppgis",
+ "menuchoose": "Velg...",
+ "more": "Mer",
+ "nomatch": "Ingen treff blant oppføringene!",
+ "norecords": "Ingen oppføringer i databasen",
+ "notapproved": "Oppføringen er ikke godkjent ennå.",
+ "notopenyet": "Beklager, men dette aktiviteten er ikke tilgjengelig før {{$a}}",
+ "numrecords": "{{$a}} oppføringer",
+ "other": "Andre",
+ "recordapproved": "Oppføringen er godkjent",
+ "recorddeleted": "Oppføringen er slettet",
+ "recorddisapproved": "Innlegg underkjent",
+ "resetsettings": "Nullstill filtre",
+ "search": "Søk",
+ "selectedrequired": "Velg alle er påkrevd",
+ "single": "Enkeltvisning",
+ "timeadded": "Tid lagt til",
+ "timemodified": "Tid endret",
+ "usedate": "Inkludér i søket."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/pl.json b/src/addon/mod/data/lang/pl.json
new file mode 100755
index 000000000..9a0037980
--- /dev/null
+++ b/src/addon/mod/data/lang/pl.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Dodaj wpisy",
+ "advancedsearch": "Wyszukiwanie zaawansowane",
+ "alttext": "Alternatywny tekst",
+ "approve": "Zatwierdź",
+ "approved": "Zatwierdzony",
+ "ascending": "Rosnąco",
+ "authorfirstname": "Imię autora",
+ "authorlastname": "Nazwisko autora",
+ "confirmdeleterecord": "Na pewno chcesz usunąć ten wpis?",
+ "descending": "Malejąco",
+ "disapprove": "Cofnij zatwierdzenie",
+ "emptyaddform": "Nie wypełniłeś wszystkich pól",
+ "entrieslefttoadd": "Musisz dodać {{$a.entriesleft}} więcej wpisów, aby zakończyć tą aktywność",
+ "entrieslefttoaddtoview": "Musisz dodać {{$a.entrieslefttoview}} więcej wpisów, aby móc wyświetlać wpisy innych użytkowników.",
+ "errormustsupplyvalue": "Musisz podać wartość tutaj.",
+ "expired": "Niestety, ta aktywność została zamknięta {{$a}} i nie jest już dłużej dostępna",
+ "fields": "Pola",
+ "latlongboth": "Wymagana jest zarówno szerokość i długość geograficzna.",
+ "menuchoose": "Wybierz...",
+ "more": "Więcej",
+ "nomatch": "Żaden wpis nie został znaleziony.",
+ "norecords": "Brak wpisów w bazie danych",
+ "notapproved": "Wpis nie jest jeszcze zatwierdzony.",
+ "notopenyet": "Niestety, ta aktywność jest niedostępna aż do {{$a}}",
+ "numrecords": "{{$a}} wpisów",
+ "other": "Inne",
+ "recordapproved": "Wpis zatwierdzony",
+ "recorddeleted": "Wpis usunięty",
+ "recorddisapproved": "Wpis odrzucony",
+ "resetsettings": "Resetuj pola",
+ "search": "Szukaj",
+ "selectedrequired": "Wszystkie zaznaczone są wymagane",
+ "single": "Pokaż pojedynczo",
+ "timeadded": "Dodano czas",
+ "timemodified": "Zmodyfikowano czas",
+ "usedate": "Uwzględnij w wyszukiwaniu."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/pt-br.json b/src/addon/mod/data/lang/pt-br.json
new file mode 100755
index 000000000..1fb0a6340
--- /dev/null
+++ b/src/addon/mod/data/lang/pt-br.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Acrescentar itens",
+ "advancedsearch": "Busca avançada",
+ "alttext": "Texto alternativo",
+ "approve": "Aprovar",
+ "approved": "Aprovado",
+ "ascending": "Crescente",
+ "authorfirstname": "Nome do autor",
+ "authorlastname": "Sobrenome do autor",
+ "confirmdeleterecord": "Tem certeza que quer excluir este item?",
+ "descending": "Decrescente",
+ "disapprove": "Desfazer aprovação",
+ "emptyaddform": "Você não completou nenhum campo!",
+ "entrieslefttoadd": "Você precisa adicionar mais {{$a.entriesleft}} item(ns) para completar esta atividade",
+ "entrieslefttoaddtoview": "Você precisa adicionar mais {{$a.entrieslefttoview}} item(ns) antes de poder ver os itens dos outros participantes.",
+ "errorapproving": "Erro ao aprovar ou desaprovar uma entrada.",
+ "errordeleting": "Erro ao apagar a entrada.",
+ "errormustsupplyvalue": "Você precisa fornecer um valor aqui.",
+ "expired": "Sinto muito, mas esta atividade foi fechada em {{$a}} e não está mais disponível",
+ "fields": "Campos",
+ "latlongboth": "Tanto a Latitude quanto a Longitude devem ser preenchidas.",
+ "menuchoose": "Selecionar...",
+ "more": "Mais",
+ "nomatch": "Nenhum item correspondente encontrado!",
+ "norecords": "Nenhum item na base de dados",
+ "notapproved": "O item ainda não foi aprovado.",
+ "notopenyet": "Desculpe, esta atividade não está disponível até {{$a}}",
+ "numrecords": "{{$a}} itens",
+ "other": "Outro",
+ "recordapproved": "Item aprovado",
+ "recorddeleted": "Item cancelado",
+ "recorddisapproved": "Entrada não aprovada",
+ "resetsettings": "Reconfigurar filtros",
+ "search": "Busca",
+ "selectedrequired": "Todos os itens selecionados são obrigatórios",
+ "single": "Ver item único",
+ "timeadded": "Tempo adicionado",
+ "timemodified": "Tempo modificado",
+ "usedate": "Incluir na busca."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/pt.json b/src/addon/mod/data/lang/pt.json
new file mode 100755
index 000000000..a005f7ab4
--- /dev/null
+++ b/src/addon/mod/data/lang/pt.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Adicionar registos",
+ "advancedsearch": "Pesquisa avançada",
+ "alttext": "Texto alternativo",
+ "approve": "Aprovar",
+ "approved": "Aprovado",
+ "ascending": "Ascendente",
+ "authorfirstname": "Primeiro nome do autor",
+ "authorlastname": "Apelido do autor",
+ "confirmdeleterecord": "Tem a certeza de que pretende apagar este registo?",
+ "descending": "Descendente",
+ "disapprove": "Anular aprovação",
+ "emptyaddform": "Não preencheu nenhum campo!",
+ "entrieslefttoadd": "Tem que adicionar mais {{$a.entriesleft}} registo(s) para concluir esta atividade",
+ "entrieslefttoaddtoview": "Tem que adicionar mais {{$a.entrieslefttoview}} registos para conseguir visualizar as entradas dos outros participantes.",
+ "errorapproving": "Erro ao aprovar ou desaprovar uma entrada.",
+ "errordeleting": "Erro ao apagar a entrada.",
+ "errormustsupplyvalue": "Indique aqui um valor.",
+ "expired": "A atividade terminou em {{$a}} e não se encontra disponível",
+ "fields": "Campos",
+ "latlongboth": "É necessário a latitude e a longitude.",
+ "menuchoose": "Selecione...",
+ "more": "Mais",
+ "nomatch": "Não foram encontrados registos correspondentes!",
+ "norecords": "Não existem registos na base de dados",
+ "notapproved": "O registo ainda não foi aprovado.",
+ "notopenyet": "A atividade apenas será disponibilizada em {{$a}}",
+ "numrecords": "{{$a}} registos",
+ "other": "Outro",
+ "recordapproved": "Registo aprovado",
+ "recorddeleted": "Registo apagado",
+ "recorddisapproved": "Entrada não aprovada",
+ "resetsettings": "Reiniciar filtros",
+ "search": "Pesquisar",
+ "selectedrequired": "Todos os selecionados são obrigatórios",
+ "single": "Ver registo",
+ "timeadded": "Data de criação",
+ "timemodified": "Data da última edição",
+ "usedate": "Incluir na pesquisa."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/ro.json b/src/addon/mod/data/lang/ro.json
new file mode 100755
index 000000000..cff9d5125
--- /dev/null
+++ b/src/addon/mod/data/lang/ro.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Adaugă articole",
+ "advancedsearch": "Căutare complexă",
+ "alttext": "Text alternativ",
+ "approve": "Aprobă",
+ "approved": "Aprobat",
+ "ascending": "Crescător",
+ "authorfirstname": "Prenume autor",
+ "authorlastname": "Nume autor",
+ "confirmdeleterecord": "Sunteţi sigur că doriţi să ştergeţi acest articol?",
+ "descending": "Descrescător",
+ "disapprove": "Anulați aprobarea",
+ "emptyaddform": "Nu aţi completat niciun câmp!",
+ "entrieslefttoadd": "Pentru a finaliza această activitate trebuie să mai adăugaţi {{$a.entriesleft}} more entry/entries articole",
+ "entrieslefttoaddtoview": "Pentru a vedea articolele postate de ceilalţi participanţi trebuie să mai adăugaţi {{$a.entrieslefttoview}} articole.",
+ "errormustsupplyvalue": "Trebuie să inserați o valoare aici.",
+ "expired": "Ne pare rău, activitatea s-a închis în {{$a}} și nu mai este disponibilă",
+ "fields": "Câmpuri",
+ "latlongboth": "Sunt necesare atât latitudinea, cât și longitudinea.",
+ "menuchoose": "Alegeţi...",
+ "more": "Detalii suplimentare",
+ "nomatch": "Nu s-au găsit articole care să corespundă criteriilor selectate!",
+ "norecords": "Nu s-au găsit articole în baza de date",
+ "notapproved": "Acest articol nu a fost încă aprobat.",
+ "notopenyet": "Ne pare rău, această activitate nu este disponibilă până în {{$a}}",
+ "numrecords": "{{$a}} articole",
+ "other": "Altele",
+ "recordapproved": "Articol aprobat",
+ "recorddeleted": "Articol şters",
+ "recorddisapproved": "Postare neaprobată",
+ "resetsettings": "Resetează filtre",
+ "search": "Căutare",
+ "selectedrequired": "Toate elementele selectate sunt obligatorii",
+ "single": "Afişează unul singur",
+ "timeadded": "Ora la care a fost adăugat",
+ "timemodified": "Ora la care a fost modificat",
+ "usedate": "Include în căutare"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/ru.json b/src/addon/mod/data/lang/ru.json
new file mode 100755
index 000000000..71495e2f4
--- /dev/null
+++ b/src/addon/mod/data/lang/ru.json
@@ -0,0 +1,40 @@
+{
+ "addentries": "Добавить записи",
+ "advancedsearch": "Расширенный поиск",
+ "alttext": "Альтернативный текст",
+ "approve": "Одобрить",
+ "approved": "Одобрено",
+ "ascending": "По возрастанию",
+ "authorfirstname": "Имя автора",
+ "authorlastname": "Фамилия автора",
+ "confirmdeleterecord": "Вы уверены, что хотите удалить эту запись?",
+ "descending": "По убыванию",
+ "disapprove": "Отменить одобрение",
+ "emptyaddform": "Вы не заполнили ни одного поля!",
+ "entrieslefttoadd": "Вы должны добавить ещё записи ({{$a.entriesleft}}), чтобы этот активный элемент считался завершённым",
+ "entrieslefttoaddtoview": "Вы должны добавить ещё {{$a.entriesleft}} запись(и, ей), чтобы иметь возможность видеть записи других участников",
+ "errorapproving": "Ошибка подтверждения или неподтверждения записи.",
+ "errordeleting": "Ошибка удаления записи.",
+ "errormustsupplyvalue": "Вы должны здесь указать значение.",
+ "expired": "К сожалению, этот элемент закрыт {{$a}} и более не доступен",
+ "fields": "Поля",
+ "latlongboth": "Необходимо задать и широту, и долготу.",
+ "menuchoose": "Выбрать...",
+ "more": "Просмотр записи",
+ "nomatch": "Соответствующих записей не найдено!",
+ "norecords": "Нет записей в базе данных",
+ "notapproved": "Запись еще не утверждена.",
+ "notopenyet": "К сожалению, эта база данных не доступна до {{$a}}",
+ "numrecords": "записей: {{$a}}",
+ "other": "Другое",
+ "recordapproved": "Запись одобрена",
+ "recorddeleted": "Запись удалена",
+ "recorddisapproved": "Снято одобрение записи",
+ "resetsettings": "Сбросить фильтры",
+ "search": "Поиск",
+ "selectedrequired": "Все выбранные требуются",
+ "single": "Просмотр по одной записи",
+ "timeadded": "Время добавления",
+ "timemodified": "Время изменения",
+ "usedate": "Включить в поиск"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/sr-cr.json b/src/addon/mod/data/lang/sr-cr.json
new file mode 100755
index 000000000..a8ce67ae3
--- /dev/null
+++ b/src/addon/mod/data/lang/sr-cr.json
@@ -0,0 +1,39 @@
+{
+ "addentries": "Додај уносе",
+ "advancedsearch": "Напредно претраживање",
+ "alttext": "Алтернативни текст",
+ "approve": "Одобри",
+ "approved": "Одобрено",
+ "ascending": "Растуће",
+ "authorfirstname": "Име аутора",
+ "authorlastname": "Презиме аутора",
+ "confirmdeleterecord": "Да ли сте сигурни да желите да обришете овај унос?",
+ "descending": "Опадајуће",
+ "disapprove": "Повуци одобрење",
+ "emptyaddform": "Нисте испунили ниједно поље!",
+ "entrieslefttoadd": "Морате да додате још {{$a.entriesleft}} унос(а) како бисте завршили ову активност",
+ "entrieslefttoaddtoview": "Морате да додате још {{$a.entrieslefttoview}} уноса пре него што будете могли да видите уносе других корисника.",
+ "errorapproving": "Грешка приликом одобравања или неодобравања уноса.",
+ "errordeleting": "Грешка приликом брисања уноса.",
+ "errormustsupplyvalue": "Морате овде задати вредност.",
+ "expired": "Нажалост, ова активност је затворена {$}} и више није доступна",
+ "fields": "Поља",
+ "latlongboth": "Поља за географску ширина и дужина су обавезна.",
+ "menuchoose": "Изаберите...",
+ "more": "Још",
+ "nomatch": "Нема уноса који се поклапају!",
+ "norecords": "Нема уноса у бази података",
+ "notapproved": "Унос још није одобрен",
+ "notopenyet": "Нажалост, ова активност није доступна до {{$a}}",
+ "numrecords": "{{$a}} уноса",
+ "other": "Друго",
+ "recordapproved": "Унос је одобрен",
+ "recorddeleted": "Унос је обрисан",
+ "recorddisapproved": "Унос није одобрен",
+ "resetsettings": "Ресетуј филтере",
+ "search": "Тражи",
+ "selectedrequired": "Све изабрано обавезно",
+ "timeadded": "Време додавања",
+ "timemodified": "Време измене",
+ "usedate": "Укључи у претраживање."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/sr-lt.json b/src/addon/mod/data/lang/sr-lt.json
new file mode 100755
index 000000000..01163f8f2
--- /dev/null
+++ b/src/addon/mod/data/lang/sr-lt.json
@@ -0,0 +1,39 @@
+{
+ "addentries": "Dodaj unose",
+ "advancedsearch": "Napredno pretraživanje",
+ "alttext": "Alternativni tekst",
+ "approve": "Odobri",
+ "approved": "Odobreno",
+ "ascending": "Rastuće",
+ "authorfirstname": "Ime autora",
+ "authorlastname": "Prezime autora",
+ "confirmdeleterecord": "Da li ste sigurni da želite da obrišete ovaj unos?",
+ "descending": "Opadajuće",
+ "disapprove": "Povuci odobrenje",
+ "emptyaddform": "Niste ispunili nijedno polje!",
+ "entrieslefttoadd": "Morate da dodate još {{$a.entriesleft}} unos(a) kako biste završili ovu aktivnost",
+ "entrieslefttoaddtoview": "Morate da dodate još {{$a.entrieslefttoview}} unosa pre nego što budete mogli da vidite unose drugih korisnika.",
+ "errorapproving": "Greška prilikom odobravanja ili neodobravanja unosa.",
+ "errordeleting": "Greška prilikom brisanja unosa.",
+ "errormustsupplyvalue": "Morate ovde zadati vrednost.",
+ "expired": "Nažalost, ova aktivnost je zatvorena {$}} i više nije dostupna",
+ "fields": "Polja",
+ "latlongboth": "Polja za geografsku širina i dužina su obavezna.",
+ "menuchoose": "Izaberite...",
+ "more": "Još",
+ "nomatch": "Nema unosa koji se poklapaju!",
+ "norecords": "Nema unosa u bazi podataka",
+ "notapproved": "Unos još nije odobren",
+ "notopenyet": "Nažalost, ova aktivnost nije dostupna do {{$a}}",
+ "numrecords": "{{$a}} unosa",
+ "other": "Drugo",
+ "recordapproved": "Unos je odobren",
+ "recorddeleted": "Unos je obrisan",
+ "recorddisapproved": "Unos nije odobren",
+ "resetsettings": "Resetuj filtere",
+ "search": "Traži",
+ "selectedrequired": "Sve izabrano obavezno",
+ "timeadded": "Vreme dodavanja",
+ "timemodified": "Vreme izmene",
+ "usedate": "Uključi u pretraživanje."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/sv.json b/src/addon/mod/data/lang/sv.json
new file mode 100755
index 000000000..03046c8b7
--- /dev/null
+++ b/src/addon/mod/data/lang/sv.json
@@ -0,0 +1,34 @@
+{
+ "addentries": "Lägg till bidrag",
+ "advancedsearch": "Avancerad sökning",
+ "alttext": "Alternativ text",
+ "approve": "Godkänn",
+ "approved": "Godkänd",
+ "ascending": "Stigande",
+ "authorfirstname": "Författarens förnamn",
+ "authorlastname": "Författarens efternamn",
+ "confirmdeleterecord": "Är Du säker på att Du vill ta bort det här bidraget?",
+ "descending": "Fallande",
+ "emptyaddform": "Du fyllde inte i alla fält!",
+ "entrieslefttoadd": "Du måste lägga till {{$a.entriesleft}} fler bidrag för att fullfölja den här aktiviteten.",
+ "entrieslefttoaddtoview": "Du måste lägga till {{$a.entrieslefttoview}} fler bidrag innan Du kan få se de andra deltagarnas bidrag.",
+ "expired": "Den här aktiviteten stängdes tyvärr den {{$a}} och är inte längre tillgänglig.",
+ "fields": "Fält",
+ "menuchoose": "Välj...",
+ "more": "Fler",
+ "nomatch": "Det gick inte att hitta några matchande bidrag!",
+ "norecords": "Det finns inga bidrag i databasen",
+ "notapproved": "Bidraget är inte godkänt än",
+ "notopenyet": "Den här aktiviteten är tyvärr inte tillgänglig förrän {$}}",
+ "numrecords": "{{$a}} bidrag",
+ "other": "Övrigt",
+ "recordapproved": "Bidraget har godkänts",
+ "recorddeleted": "Bidraget har tagits bort",
+ "resetsettings": "Filter för återställning",
+ "search": "Sök",
+ "selectedrequired": "Alla de valda är obligatoriska",
+ "single": "Visa enskilt bidrag",
+ "timeadded": "Tillagd när",
+ "timemodified": "Modifierad när",
+ "usedate": "Ta med i sökning"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/tg.json b/src/addon/mod/data/lang/tg.json
new file mode 100755
index 000000000..2d4ab9dd9
--- /dev/null
+++ b/src/addon/mod/data/lang/tg.json
@@ -0,0 +1,26 @@
+{
+ "advancedsearch": "Ҷустуҷӯи васеъкардашуда",
+ "alttext": "Матни алтернативӣ",
+ "approve": "Тасдиқ карда шавад",
+ "ascending": "Аз рӯи афзуншавӣ",
+ "authorfirstname": "Номи муаллиф",
+ "authorlastname": "Фамилияи муаллиф",
+ "confirmdeleterecord": "Оё боварӣ доред, ки ин сабтро нест кардан мехоҳед?",
+ "descending": "Аз рӯ камшавӣ",
+ "emptyaddform": "Шумо ҳеҷ як майдонро пур накардед",
+ "entrieslefttoadd": "Шумо бояд боз {{$a.entriesleft}}илова кунед, то имкон дошта бошед, ки сабтҳои иштирокчиёни дигарро бинед",
+ "expired": "Бубахшед,ин фаъолият маҳкам карда шудааст {{$a}} ва акнун дастрас нест",
+ "fields": "Майдонҳо",
+ "menuchoose": "Интихоб карда шавад...",
+ "more": "Дида баромадани сабт",
+ "nomatch": "Сабтҳои мувофиқаткунанда ёфт нашуданд!",
+ "norecords": "Дар базаи маълумотҳо сабтҳо нетанд",
+ "notopenyet": "Бубахшед, ин амал дастрас нест то даме ки {{$a}}",
+ "numrecords": "{{$a}} сабтҳо",
+ "other": "Дигар параметрҳо",
+ "recordapproved": "Сабт тасдиқ карда шудааст",
+ "recorddeleted": "Сабт дур карда шудааст",
+ "search": "Ҷустуҷӯ дар форумҳо",
+ "single": "Яктогӣ сабтро дида баромадан",
+ "timemodified": "Охирин дигаргунӣ"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/tr.json b/src/addon/mod/data/lang/tr.json
new file mode 100755
index 000000000..24d7745d9
--- /dev/null
+++ b/src/addon/mod/data/lang/tr.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Kayıtları ekle",
+ "advancedsearch": "Gelişmiş arama",
+ "alttext": "Alternatif metin",
+ "approve": "Onayla",
+ "approved": "Onaylandı",
+ "ascending": "Artan",
+ "authorfirstname": "Yazarın adı",
+ "authorlastname": "Yazarın soyadı",
+ "confirmdeleterecord": "Bu kaydı silmek istediğinizden emin misiniz?",
+ "descending": "Azalan",
+ "disapprove": "Onayı geri al",
+ "emptyaddform": "Hiçbir alanı doldurmadınız!",
+ "entrieslefttoadd": "Bu etkinliği bitirmek için {{$a.entriesleft}} kayıt daha eklemelisiniz.",
+ "entrieslefttoaddtoview": "Diğer katılımcıların kayıtlarını görebilmek için {{$a.entrieslefttoview}} kayıt daha eklemelisiniz.",
+ "errormustsupplyvalue": "Burada bir değer vermelisiniz.",
+ "expired": "Maalesef, bu etkinlik {{$a}} tarihinde kapandı ve artık mevcut değil",
+ "fields": "Alanlar",
+ "latlongboth": "Enlem ve boylam gereklidir.",
+ "menuchoose": "Seç...",
+ "more": "Dahası",
+ "nomatch": "Eşleşen kayıt bulunamadı!",
+ "norecords": "Veritabanında kayıt yok",
+ "notapproved": "Kayıt henüz onaylanmamış.",
+ "notopenyet": "Üzgünüz, bu etkinlik {{$a}} kadar kullanılamıyor",
+ "numrecords": "{{$a}} kayıt",
+ "other": "Diğer",
+ "recordapproved": "Kayıt onaylandı",
+ "recorddeleted": "Kayıt silindi",
+ "recorddisapproved": "Giriş onaylanmadı",
+ "resetsettings": "Alanları Temizle",
+ "search": "Ara",
+ "selectedrequired": "Tüm seçililer gereklidir",
+ "single": "Tek görünüm",
+ "timeadded": "Ekleme zamanı",
+ "timemodified": "Düzenleme zamanı",
+ "usedate": "Aramaya dahil et."
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/uk.json b/src/addon/mod/data/lang/uk.json
new file mode 100755
index 000000000..1ac939993
--- /dev/null
+++ b/src/addon/mod/data/lang/uk.json
@@ -0,0 +1,38 @@
+{
+ "addentries": "Додати записи",
+ "advancedsearch": "Розширений пошук",
+ "alttext": "Альтернативний текст",
+ "approve": "Прийняти",
+ "approved": "Прийнято",
+ "ascending": "за зростанням",
+ "authorfirstname": "Ім’я автора",
+ "authorlastname": "Прізвище автора",
+ "confirmdeleterecord": "Ви впевнені, що хочете видалити цей запис?",
+ "descending": "за спаданням",
+ "disapprove": "Скасувати схвалення",
+ "emptyaddform": "Ви не заповнили жодного поля!",
+ "entrieslefttoadd": "Вам потрібно додати більше чим {{$a}} записів перед тим, як ви зможете побачити записи інших учасників.",
+ "entrieslefttoaddtoview": "Ви повинні ввести більше чим {{$a.entrieslefttoview}} запис(ів) перед тим, як матимете змогу бачити записи інших.",
+ "errormustsupplyvalue": "Ви повинні тут вказати значення.",
+ "expired": "На жаль, ця діяльність закрита на {{$a}} і більше не доступна",
+ "fields": "Поля",
+ "latlongboth": "Широта і довгота є обов’язковими.",
+ "menuchoose": "Вибрати...",
+ "more": "Детальний перегляд...",
+ "nomatch": "Жодного запису не знайдено!",
+ "norecords": "Немає записів у базі даних",
+ "notapproved": "Запис ще не схвалено",
+ "notopenyet": "ця діяльність не доступна до {{$a}}",
+ "numrecords": "{{$a}} записів",
+ "other": "Інше",
+ "recordapproved": "Запис погоджено",
+ "recorddeleted": "Запис вилучено",
+ "recorddisapproved": "Запис не схвалено",
+ "resetsettings": "Скинути фільтри",
+ "search": "Пошук",
+ "selectedrequired": "Всі відібрані вимоги",
+ "single": "Перегляд одного запису",
+ "timeadded": "Час введення",
+ "timemodified": "Час модифікації",
+ "usedate": "Включити в пошук"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/zh-cn.json b/src/addon/mod/data/lang/zh-cn.json
new file mode 100755
index 000000000..6ee9c6d05
--- /dev/null
+++ b/src/addon/mod/data/lang/zh-cn.json
@@ -0,0 +1,36 @@
+{
+ "addentries": "添加条目",
+ "advancedsearch": "高级搜索",
+ "alttext": "可替代文本",
+ "approve": "批准",
+ "approved": "许可",
+ "ascending": "升序",
+ "authorfirstname": "姓",
+ "authorlastname": "名",
+ "confirmdeleterecord": "您确定要删除这条记录?",
+ "descending": "降序",
+ "disapprove": "撤消审核",
+ "emptyaddform": "您未填写任何字段",
+ "entrieslefttoadd": "在完成此活动前,您还需添加 {{$a.entriesleft}} 条目",
+ "entrieslefttoaddtoview": "在查看其他参与者的条目前,您还需添加 {{$a.entrieslefttoview}} 条目",
+ "errormustsupplyvalue": "这儿你必须提供一个值。",
+ "expired": "对不起,这项活动截止于{{$a}},不再有效",
+ "fields": "字段",
+ "menuchoose": "选择...",
+ "more": "更多",
+ "nomatch": "未找到匹配的条目",
+ "norecords": "数据库中无条目",
+ "notapproved": "条目尚未被核准。",
+ "notopenyet": "抱歉,此活动直到{{$a}}才可用",
+ "numrecords": "{{$a}} 条记录",
+ "other": "其他",
+ "recordapproved": "记录已核准",
+ "recorddeleted": "记录已删除",
+ "recorddisapproved": "不可进入",
+ "resetsettings": "重置字段",
+ "search": "搜索",
+ "selectedrequired": "全选",
+ "timeadded": "追加时间",
+ "timemodified": "编辑时间",
+ "usedate": "包含到搜索中。"
+}
\ No newline at end of file
diff --git a/src/addon/mod/data/lang/zh-tw.json b/src/addon/mod/data/lang/zh-tw.json
new file mode 100755
index 000000000..7ccf7b95f
--- /dev/null
+++ b/src/addon/mod/data/lang/zh-tw.json
@@ -0,0 +1,37 @@
+{
+ "addentries": "新增條目",
+ "advancedsearch": "進階搜尋",
+ "alttext": "替代文字",
+ "approve": "審核",
+ "approved": "已核准",
+ "ascending": "升冪",
+ "authorfirstname": "作者的名字",
+ "authorlastname": "作者的姓氏",
+ "confirmdeleterecord": "您確定要刪除這筆資料嗎?",
+ "descending": "降冪",
+ "disapprove": "取消核准",
+ "emptyaddform": "您沒有填入任何欄位!",
+ "entrieslefttoadd": "在您要瀏覽其他同學提供的資料前,您必須要再新增{{$a.entriesleft}} 筆資料。",
+ "entrieslefttoaddtoview": "您必須新增{{$a.entrieslefttoview}}筆以上資料,才能夠看到其他同學提供的資料。",
+ "errormustsupplyvalue": "這裡你必須提供一個數值。",
+ "expired": "抱歉,這活動已經在 {{$a}}關閉,已經無法使用。",
+ "fields": "欄位",
+ "latlongboth": "緯度和經度兩者都要填寫",
+ "menuchoose": "選擇...",
+ "more": "更多",
+ "nomatch": "找不到符合的資料!",
+ "norecords": "資料庫中沒有資料",
+ "notapproved": "資料尚未審核。",
+ "notopenyet": "抱歉,這一活動要等到{{$a}}才開始",
+ "numrecords": "{{$a}} 筆資料",
+ "other": "其他",
+ "recordapproved": "資料已審核",
+ "recorddeleted": "資料已刪除",
+ "recorddisapproved": "不可進入",
+ "resetsettings": "重設欄位",
+ "search": "搜尋",
+ "selectedrequired": "所有必要的選擇",
+ "timeadded": "新增的時間",
+ "timemodified": "修改的時間",
+ "usedate": "包含在搜尋中"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/ar.json b/src/addon/mod/feedback/lang/ar.json
new file mode 100755
index 000000000..ddcafaf0d
--- /dev/null
+++ b/src/addon/mod/feedback/lang/ar.json
@@ -0,0 +1,28 @@
+{
+ "analysis": "تحليل",
+ "anonymous": "غير مشخصن",
+ "anonymous_entries": "مدخلات غير مشخصنة",
+ "average": "متوسط",
+ "complete_the_form": "اجب على الأسئلة.....",
+ "completed_feedbacks": "الاجابات المسلمة",
+ "continue_the_form": "استمر من",
+ "feedbackclose": "إغلاق الأفادة",
+ "feedbackopen": "فتح الإفادة",
+ "mode": "نمط",
+ "next_page": "الصفحة التالية",
+ "non_anonymous": "سيتم تسجيل اسم المستخدم وعرضه مع الإجابات",
+ "non_respondents_students": "غير مستجيبين",
+ "not_selected": "لم يتم الاختيار",
+ "not_started": "لم يتم البدء",
+ "overview": "نظرة عامة",
+ "page_after_submit": "الصفحة بعد الإرسال",
+ "preview": "معاينة",
+ "previous_page": "صفحة سابقة",
+ "questions": "أسئلة",
+ "responses": "إجابات",
+ "save_entries": "سلم إجاباتك",
+ "show_entries": "عرض الردود",
+ "show_nonrespondents": "معاينة غير المستجيبين",
+ "started": "بداء",
+ "this_feedback_is_already_submitted": "لقد قمت مسبقاً بإكمال هذا النشاط."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/bg.json b/src/addon/mod/feedback/lang/bg.json
new file mode 100755
index 000000000..335c218cf
--- /dev/null
+++ b/src/addon/mod/feedback/lang/bg.json
@@ -0,0 +1,32 @@
+{
+ "analysis": "Анализ",
+ "anonymous": "Анонимна",
+ "anonymous_entries": "Анонимни отговори",
+ "average": "Средно",
+ "complete_the_form": "Отговаряне на въпросите...",
+ "completed_feedbacks": "Изпратени отговори",
+ "continue_the_form": "Отговаряне на въпросите",
+ "feedback_is_not_open": "Анкетата не е отворена",
+ "feedbackclose": "Позволено е отговаряне до",
+ "feedbackopen": "Позволено е отговаряне от",
+ "mapcourses": "Свързване на анкетата с курсове",
+ "mode": "Режим",
+ "next_page": "Следваща страница",
+ "non_anonymous": "Да - ще се показват с отговорите",
+ "non_anonymous_entries": "няма анонимни отговори",
+ "non_respondents_students": "не отговорили студенти",
+ "not_selected": "Няма избран",
+ "not_started": "не започната",
+ "overview": "Представяне",
+ "page_after_submit": "Съобщение след попълване",
+ "preview": "Преглед",
+ "previous_page": "Предишна страница",
+ "questions": "Въпроси",
+ "response_nr": "Номер на отговора",
+ "responses": "Отговори",
+ "save_entries": "Изпращане на отговорите",
+ "show_entries": "Преглед на отговорите",
+ "show_nonrespondents": "Показване на не отговорилите",
+ "started": "започната",
+ "this_feedback_is_already_submitted": "Вие вече сте изпълнили тази дейност."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/ca.json b/src/addon/mod/feedback/lang/ca.json
new file mode 100755
index 000000000..1675d5e86
--- /dev/null
+++ b/src/addon/mod/feedback/lang/ca.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Anàlisi",
+ "anonymous": "Les respostes seran anònimes",
+ "anonymous_entries": "Entrades anònimes ({{$a}})",
+ "average": "Mitjana",
+ "captchaofflinewarning": "Les retroaccions amb captcha no es poden completar si aquest no està configurat, o no es pot connectar amb el servidor.",
+ "complete_the_form": "Responeu les preguntes...",
+ "completed_feedbacks": "Respostes enviades",
+ "continue_the_form": "Continueu responset les preguntes...",
+ "feedback_is_not_open": "La retroacció no està oberta",
+ "feedback_submitted_offline": "S'ha desat la retroacció per trametre's més tard.",
+ "feedbackclose": "Permet les respostes a",
+ "feedbackopen": "Permet les respostes de",
+ "mapcourses": "Associa una retroacció a cursos.",
+ "mode": "Mode",
+ "next_page": "Pàgina següent",
+ "non_anonymous": "El nom de l'usuari es registrarà i es mostrarà amb les respostes",
+ "non_anonymous_entries": "Entrades no anònimes ({{$a}})",
+ "non_respondents_students": "Estudiants que no han respost ({{$a}})",
+ "not_selected": "No s'ha seleccionat",
+ "not_started": "No s'ha iniciat",
+ "numberoutofrange": "Número fora de l'interval",
+ "overview": "Descripció",
+ "page_after_submit": "Missatge de compleció",
+ "preview": "Vista prèvia",
+ "previous_page": "Pàgina anterior",
+ "questions": "Preguntes",
+ "response_nr": "Número de resposta",
+ "responses": "Respostes",
+ "save_entries": "Envia les respostes",
+ "show_entries": "Mostra les respostes",
+ "show_nonrespondents": "Mostra els que no han respost",
+ "started": "S'ha iniciat",
+ "this_feedback_is_already_submitted": "Heu completat aquesta activitat"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/cs.json b/src/addon/mod/feedback/lang/cs.json
new file mode 100755
index 000000000..d5d255b79
--- /dev/null
+++ b/src/addon/mod/feedback/lang/cs.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Analýza",
+ "anonymous": "Anonymní",
+ "anonymous_entries": "Anonymní záznamy",
+ "average": "Průměr",
+ "captchaofflinewarning": "Dotazník se souborem captcha nemůže být v režinu offline dokončen, pokud není nakonfigurován režim offline nebo server je vypnutý.",
+ "complete_the_form": "Klikněte zde a odpovězte na otázky...",
+ "completed_feedbacks": "Odevzdané odpovědi",
+ "continue_the_form": "Pokračovat v zodpovídání otázek ...",
+ "feedback_is_not_open": "Dotazník není přístupný",
+ "feedback_submitted_offline": "Tento dotazník byl uložen k pozdějšímu odevzdání.",
+ "feedbackclose": "Povolit odpovědi",
+ "feedbackopen": "Dostupné od",
+ "mapcourses": "Mapování kurzů",
+ "mode": "Režim",
+ "next_page": "Další stránka",
+ "non_anonymous": "Jména respondentů budou zaznamenána a ukázána s odpověďmi",
+ "non_anonymous_entries": "Neanonymní záznamy ({{$a}})",
+ "non_respondents_students": "Uživatelé, kteří ještě neodpověděli ({{$a}})",
+ "not_selected": "Nevybráno",
+ "not_started": "Nebylo spuštěno",
+ "numberoutofrange": "Číslo je mimo rozsah",
+ "overview": "Přehled",
+ "page_after_submit": "Zpráva o dokončení",
+ "preview": "Náhled",
+ "previous_page": "Předchozí stránka",
+ "questions": "Otázky",
+ "response_nr": "Číslo odpovědi",
+ "responses": "Odpovědi",
+ "save_entries": "Odevzdejte své odpovědi",
+ "show_entries": "Ukázat odpovědi",
+ "show_nonrespondents": "Ukázat uživatele, kteří neodpověděli",
+ "started": "Spuštěno",
+ "this_feedback_is_already_submitted": "Tento dotazník jste již vyplnili."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/da.json b/src/addon/mod/feedback/lang/da.json
new file mode 100755
index 000000000..4f9ddb439
--- /dev/null
+++ b/src/addon/mod/feedback/lang/da.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Analyse",
+ "anonymous": "Anonym",
+ "anonymous_entries": "Anonyme indlæg ({{$a}})",
+ "average": "Gennemsnit",
+ "captchaofflinewarning": "Feedback med captcha kan ikke bruges offline hvis den ikke er konfigureret eller hvis serveren nede.",
+ "complete_the_form": "Svar på spørgsmålene...",
+ "completed_feedbacks": "Afleverede svar",
+ "continue_the_form": "Fortsæt med at besvare spørgsmålene",
+ "feedback_is_not_open": "Feedbacken er ikke åben",
+ "feedback_submitted_offline": "Denne feedback er gemt til aflevering senere.",
+ "feedbackclose": "Tillad svar til",
+ "feedbackopen": "Tillad svar fra",
+ "mapcourses": "Tilknyt feedback til kurser",
+ "mode": "Tilstand",
+ "next_page": "Næste side",
+ "non_anonymous": "Brugerens navn vil blive registreret og vist sammen med svarene",
+ "non_anonymous_entries": "Ikke-anonyme bidrag ({{$a}})",
+ "non_respondents_students": "Studerende der ikke har besvaret ({{$a}})",
+ "not_selected": "Ikke valgt",
+ "not_started": "Ikke startet",
+ "numberoutofrange": "Tal udenfor interval",
+ "overview": "Overblik",
+ "page_after_submit": "Fuldførelsesbesked",
+ "preview": "Forhåndsvisning",
+ "previous_page": "Forrige side",
+ "questions": "Spørgsmål",
+ "response_nr": "Svar nummer",
+ "responses": "Svar",
+ "save_entries": "Aflever dine svar",
+ "show_entries": "Vis svar",
+ "show_nonrespondents": "Vis ikke-respondenter",
+ "started": "Startet",
+ "this_feedback_is_already_submitted": "Du har allerede gennemført denne aktivitet."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/de-du.json b/src/addon/mod/feedback/lang/de-du.json
new file mode 100755
index 000000000..d9404a313
--- /dev/null
+++ b/src/addon/mod/feedback/lang/de-du.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Auswertung",
+ "anonymous": "Anonym",
+ "anonymous_entries": "Anonyme Einträge ({{$a}})",
+ "average": "Mittelwert",
+ "captchaofflinewarning": "Ein Feedback mit Captcha kann offline nicht beendet werden. Captcha funktioniert nur, wenn der Server antworten kann.",
+ "complete_the_form": "Formular ausfüllen...",
+ "completed_feedbacks": "Ausgefüllte Feedbacks",
+ "continue_the_form": "Beantwortung der Fragen fortsetzen ...",
+ "feedback_is_not_open": "Feedback ist zu diesem Zeitpunkt nicht möglich",
+ "feedback_submitted_offline": "Das Feedback wurde gespeichert, um es später zu übertragen.",
+ "feedbackclose": "Antworten erlauben bis",
+ "feedbackopen": "Antworten erlauben ab",
+ "mapcourses": "Diesem Feedback Kurse zuordnen",
+ "mode": "Modus",
+ "next_page": "Nächste Seite",
+ "non_anonymous": "Nicht anonym",
+ "non_anonymous_entries": "Nicht-anonyme Einträge ({{$a}})",
+ "non_respondents_students": "Teilnehmer/innen ohne Antwort",
+ "not_selected": "Nicht ausgewählt",
+ "not_started": "Nicht begonnen",
+ "numberoutofrange": "Zahl außerhalb des Bereichs",
+ "overview": "Überblick",
+ "page_after_submit": "Abschlussmitteilung",
+ "preview": "Vorschau",
+ "previous_page": "Vorherige Seite",
+ "questions": "Fragen",
+ "response_nr": "Antwort Nr.",
+ "responses": "Antworten",
+ "save_entries": "Einträge speichern",
+ "show_entries": "Einträge anzeigen",
+ "show_nonrespondents": "Ohne Antwort",
+ "started": "Begonnen",
+ "this_feedback_is_already_submitted": "Sie haben diese Aktivität bereits beendet."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/de.json b/src/addon/mod/feedback/lang/de.json
new file mode 100755
index 000000000..d9404a313
--- /dev/null
+++ b/src/addon/mod/feedback/lang/de.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Auswertung",
+ "anonymous": "Anonym",
+ "anonymous_entries": "Anonyme Einträge ({{$a}})",
+ "average": "Mittelwert",
+ "captchaofflinewarning": "Ein Feedback mit Captcha kann offline nicht beendet werden. Captcha funktioniert nur, wenn der Server antworten kann.",
+ "complete_the_form": "Formular ausfüllen...",
+ "completed_feedbacks": "Ausgefüllte Feedbacks",
+ "continue_the_form": "Beantwortung der Fragen fortsetzen ...",
+ "feedback_is_not_open": "Feedback ist zu diesem Zeitpunkt nicht möglich",
+ "feedback_submitted_offline": "Das Feedback wurde gespeichert, um es später zu übertragen.",
+ "feedbackclose": "Antworten erlauben bis",
+ "feedbackopen": "Antworten erlauben ab",
+ "mapcourses": "Diesem Feedback Kurse zuordnen",
+ "mode": "Modus",
+ "next_page": "Nächste Seite",
+ "non_anonymous": "Nicht anonym",
+ "non_anonymous_entries": "Nicht-anonyme Einträge ({{$a}})",
+ "non_respondents_students": "Teilnehmer/innen ohne Antwort",
+ "not_selected": "Nicht ausgewählt",
+ "not_started": "Nicht begonnen",
+ "numberoutofrange": "Zahl außerhalb des Bereichs",
+ "overview": "Überblick",
+ "page_after_submit": "Abschlussmitteilung",
+ "preview": "Vorschau",
+ "previous_page": "Vorherige Seite",
+ "questions": "Fragen",
+ "response_nr": "Antwort Nr.",
+ "responses": "Antworten",
+ "save_entries": "Einträge speichern",
+ "show_entries": "Einträge anzeigen",
+ "show_nonrespondents": "Ohne Antwort",
+ "started": "Begonnen",
+ "this_feedback_is_already_submitted": "Sie haben diese Aktivität bereits beendet."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/el.json b/src/addon/mod/feedback/lang/el.json
new file mode 100755
index 000000000..1d5dec704
--- /dev/null
+++ b/src/addon/mod/feedback/lang/el.json
@@ -0,0 +1,31 @@
+{
+ "analysis": "Ανάλυση",
+ "anonymous": "Ανώνυμα",
+ "anonymous_entries": "Ανώνυμες καταχωρήσεις",
+ "average": "Μέσος όρος",
+ "captchaofflinewarning": "Η ανατροφοδότηση με την χρήση captcha δεν μπορεί να ολοκληρωθεί εάν δεν έχει διαμορφωθεί, εάν βρίσκεστε εκτός λειτουργίας ή με ο server δεν λειτουργεί.",
+ "complete_the_form": "Απαντήστε τις ερωτήσεις...",
+ "completed_feedbacks": "Απαντήσεις που έχουν υποβληθεί",
+ "continue_the_form": "Συνεχίστε τη φόρμα",
+ "feedback_is_not_open": "Το σχόλιο δεν είναι ανοιχτό",
+ "feedback_submitted_offline": "Αυτή η ανατροφοδότηση έχει αποθηκευτεί για να υποβληθεί αργότερα.",
+ "feedbackclose": "Κλείσε το σχόλιο στις",
+ "feedbackopen": "Άνοιξε το σχόλιο στις",
+ "mapcourses": "Αντιστοίχηση σχόλιου σε μαθήματα",
+ "mode": "Λειτουργία",
+ "next_page": "Επόμενη σελίδα",
+ "non_anonymous": "Το όνομα του χρήστη θα καταγραφεί και θα εμφανίζεται με τις απαντήσεις",
+ "non_anonymous_entries": "χωρίς ανώνυμες καταχωρήσεις",
+ "not_selected": "Δεν έχουν επιλεχθεί",
+ "overview": "Επισκόπηση",
+ "page_after_submit": "Σελίδα μετά την υποβολή",
+ "preview": "Προεπισκόπηση",
+ "previous_page": "Προηγούμενη σελίδα",
+ "questions": "Ερωτήσεις",
+ "response_nr": "Απάντηση υπ'αριθμόν.",
+ "responses": "Απαντήσεις",
+ "save_entries": "Υποβολή των απαντήσεων σας",
+ "show_entries": "Εμφάνιση απαντήσεων",
+ "started": "Ξεκίνησε στις",
+ "this_feedback_is_already_submitted": "Έχετε ολοκληρώσει ήδη αυτή την δραστηριότητα."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/es-mx.json b/src/addon/mod/feedback/lang/es-mx.json
new file mode 100755
index 000000000..8396d9440
--- /dev/null
+++ b/src/addon/mod/feedback/lang/es-mx.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Análisis",
+ "anonymous": "Anónima",
+ "anonymous_entries": "Respuestas anónimas ({{$a}})",
+ "average": "Promedio",
+ "captchaofflinewarning": "La retroalimentación con CAPTCHA no puede ser completada fuera-de-línea, o si no está configurada, o con el servidor tirado.",
+ "complete_the_form": "Responda a las preguntas...",
+ "completed_feedbacks": "Respuestas enviadas",
+ "continue_the_form": "Continuar contestando las preguntas...",
+ "feedback_is_not_open": "La retroalimentación no está disponible",
+ "feedback_submitted_offline": "Esta retroalimentación ha sido guardada para enviarse más tarde.",
+ "feedbackclose": "Permitir respuestas a",
+ "feedbackopen": "Permitir respuestas de",
+ "mapcourses": "Asignar retroalimentación a cursos",
+ "mode": "Modo",
+ "next_page": "Siguiente página",
+ "non_anonymous": "Los nombres de los usuarios se mostrarán y registrarán con las respuestas",
+ "non_anonymous_entries": "Entradas no anónimas ({{$a}})",
+ "non_respondents_students": "Estudiantes no respondientes ({{$a}})",
+ "not_selected": "No seleccionada",
+ "not_started": "No comenzado",
+ "numberoutofrange": "Número fuera del rango",
+ "overview": "Vista general",
+ "page_after_submit": "Página a mostrar tras la terminación del envío",
+ "preview": "Previsualizar",
+ "previous_page": "Página anterior",
+ "questions": "Preguntas",
+ "response_nr": "Respuesta número",
+ "responses": "Respuestas",
+ "save_entries": "Enviar sus respuestas",
+ "show_entries": "Mostrar respuestas",
+ "show_nonrespondents": "Mostrar no respondientes",
+ "started": "Comenzado",
+ "this_feedback_is_already_submitted": "Usted ya ha finalizado esta actividad."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/es.json b/src/addon/mod/feedback/lang/es.json
new file mode 100755
index 000000000..d6fc51f29
--- /dev/null
+++ b/src/addon/mod/feedback/lang/es.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Análisis",
+ "anonymous": "Anónima",
+ "anonymous_entries": "Respuestas anónimas",
+ "average": "Promedio",
+ "captchaofflinewarning": "La retroalimentación con captcha no puede ser completada si no está configurada, si está en modo fuera-de-línea o con el servidor caído.",
+ "complete_the_form": "Responda a las preguntas...",
+ "completed_feedbacks": "Respuestas enviadas",
+ "continue_the_form": "Continuar con el formulario",
+ "feedback_is_not_open": "La encuesta no está disponible",
+ "feedback_submitted_offline": "Esta retroalimentación ha sido guardada para enviarse más tarde.",
+ "feedbackclose": "Permitir respuestas a",
+ "feedbackopen": "Permitir respuestas de",
+ "mapcourses": "Asignar encuesta a cursos",
+ "mode": "Modo",
+ "next_page": "Siguiente página",
+ "non_anonymous": "Los nombres de los usuarios se mostrarán y registrarán con las respuestas",
+ "non_anonymous_entries": "entradas no anónimas",
+ "non_respondents_students": "estudiantes no respondientes",
+ "not_selected": "No seleccionada",
+ "not_started": "no comenzado",
+ "numberoutofrange": "Número fuera de rango",
+ "overview": "Vista general",
+ "page_after_submit": "Página a mostrar tras el envío",
+ "preview": "Previsualizar",
+ "previous_page": "Página anterior",
+ "questions": "Preguntas",
+ "response_nr": "Respuesta número",
+ "responses": "Respuestas",
+ "save_entries": "Enviar sus respuestas",
+ "show_entries": "Mostrar respuestas",
+ "show_nonrespondents": "Mostrar no respondientes",
+ "started": "comenzado",
+ "this_feedback_is_already_submitted": "Usted ya ha finalizado esta actividad."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/eu.json b/src/addon/mod/feedback/lang/eu.json
new file mode 100755
index 000000000..e85f24c66
--- /dev/null
+++ b/src/addon/mod/feedback/lang/eu.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Analisia",
+ "anonymous": "Anonimoa",
+ "anonymous_entries": "Sarrera anonimoak ({{$a}})",
+ "average": "Batez bestekoa",
+ "captchaofflinewarning": "CAPTCHA-dun feedback-ak ezin dira lineaz kanpo osatu, ezta konfiguratuta ez badaude edo zerbitzaria eskuragarri ez badago ere.",
+ "complete_the_form": "Erantzun galderei...",
+ "completed_feedbacks": "Bidalitako erantzunak",
+ "continue_the_form": "Jarraitu galderei erantzuten...",
+ "feedback_is_not_open": "Inkesta ez dago zabalik",
+ "feedback_submitted_offline": "Feedback hau beranduago bidaltzeko gorde da.",
+ "feedbackclose": "Noiz arte baimendu erantzunak",
+ "feedbackopen": "Noiztik baimendu erantzunak",
+ "mapcourses": "Esleitu feedback-a ikastaroetarako",
+ "mode": "Modua",
+ "next_page": "Hurrengo orria",
+ "non_anonymous": "Erabiltzaile-izena erantzunekin erakutsiko da",
+ "non_anonymous_entries": "Sarrera anonimorik ez ({{$a}})",
+ "non_respondents_students": "Erantzun ez duten ikasleak ({{$a}})",
+ "not_selected": "Aukeratu gabea",
+ "not_started": "Hasi gabea",
+ "numberoutofrange": "Tartetik kanpoko zenbakia",
+ "overview": "Ikuspegi orokorra",
+ "page_after_submit": "Osaketa-mezua",
+ "preview": "Aurrebista",
+ "previous_page": "Aurreko orria",
+ "questions": "Galderak",
+ "response_nr": "Erantzun-kopurua",
+ "responses": "Erantzunak",
+ "save_entries": "Bidali zure erantzunak",
+ "show_entries": "Erakutsi erantzunak",
+ "show_nonrespondents": "Erakutsi erantzun gabeak",
+ "started": "Hasita",
+ "this_feedback_is_already_submitted": "Dagoeneko egina duzu jarduera hau."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/fa.json b/src/addon/mod/feedback/lang/fa.json
new file mode 100755
index 000000000..c51a51890
--- /dev/null
+++ b/src/addon/mod/feedback/lang/fa.json
@@ -0,0 +1,32 @@
+{
+ "analysis": "تحلیل",
+ "anonymous": "ناشناس",
+ "anonymous_entries": "نظرهای وارد شدهٔ ناشناس ({{$a}})",
+ "average": "میانگین",
+ "complete_the_form": "پاسخ دادن به سوالها...",
+ "completed_feedbacks": "جوابهای ارائه شده",
+ "continue_the_form": "ادامه دادن فرم",
+ "feedback_is_not_open": "بازخورد باز نیست",
+ "feedbackclose": "بستن بازخورد در",
+ "feedbackopen": "باز کردن بازخورد در",
+ "mapcourses": "نسبت دادن بازخورد به درسها",
+ "mode": "حالت",
+ "next_page": "صفحهٔ بعد",
+ "non_anonymous": "نام کاربران ثبت و به همراه پاسخها نمایش داده خواهد شد",
+ "non_anonymous_entries": "اطلاعا وارد شده به صورت غیر ناشناس",
+ "non_respondents_students": "شاگردانی که پاسخ ندادهاند",
+ "not_selected": "انتخاب نشده",
+ "not_started": "شروع نکرده است",
+ "overview": "مرور اجمالی",
+ "page_after_submit": "صفحهٔ بعد از پر کردن فرم",
+ "preview": "پیشنمایش",
+ "previous_page": "صفحهٔ قبل",
+ "questions": "سوالها",
+ "response_nr": "پاسخ شمارهٔ",
+ "responses": "پاسخها",
+ "save_entries": "فرستادن پاسخهای شما",
+ "show_entries": "نمایش پاسخها",
+ "show_nonrespondents": "نمایش کسانی که پاسخ ندادهاند",
+ "started": "شروع کرده است",
+ "this_feedback_is_already_submitted": "شما قبلا این فعالیت را کامل کردهاید."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/fi.json b/src/addon/mod/feedback/lang/fi.json
new file mode 100755
index 000000000..7d18112b1
--- /dev/null
+++ b/src/addon/mod/feedback/lang/fi.json
@@ -0,0 +1,34 @@
+{
+ "analysis": "Yhteenveto",
+ "anonymous": "Anonyymi",
+ "anonymous_entries": "Anonyymit palautteet",
+ "average": "Keskiarvo",
+ "captchaofflinewarning": "Palautetta, johon on määritelty CAPTCHA, ei voi antaa offline-tilassa, tai sitä ei ole määritelty tai järjestelmä on kaatunut.",
+ "complete_the_form": "Vastaa kysymyksiin",
+ "completed_feedbacks": "Lähetetyt vastaukset",
+ "continue_the_form": "Jatka lomaketta",
+ "feedback_is_not_open": "Palaute ei ole auki",
+ "feedback_submitted_offline": "Tämä palaute on tallennettu ja voit lähettää sen myöhemmin.",
+ "feedbackclose": "Sulje palaute",
+ "feedbackopen": "Avaa palaute",
+ "mapcourses": "Yhdistä palaute kursseihin",
+ "mode": "Tila",
+ "next_page": "Seuraava sivu",
+ "non_anonymous": "Vastaajien nimet tallennetaan ja näytetään vastausten kanssa",
+ "non_anonymous_entries": "vastaukset nimillä",
+ "non_respondents_students": "vastaamattomat opiskelijat",
+ "not_selected": "Ei valittu",
+ "not_started": "ei aloitettu",
+ "overview": "Yleiskatsaus",
+ "page_after_submit": "Vastauksen jälkeinen viesti",
+ "preview": "Esikatselu",
+ "previous_page": "Edellinen sivu",
+ "questions": "Kysymykset",
+ "response_nr": "Vastaus numero",
+ "responses": "Vastaukset",
+ "save_entries": "Lähetä vastauksesi",
+ "show_entries": "Näytä vastaukset",
+ "show_nonrespondents": "Näytä vastaamattomat",
+ "started": "aloitettu",
+ "this_feedback_is_already_submitted": "Olet jo tehnyt tämän aktiviteetin."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/fr.json b/src/addon/mod/feedback/lang/fr.json
new file mode 100755
index 000000000..77590ce90
--- /dev/null
+++ b/src/addon/mod/feedback/lang/fr.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Analyse",
+ "anonymous": "Anonyme",
+ "anonymous_entries": "Réponses anonymes ({{$a}})",
+ "average": "Moyenne",
+ "captchaofflinewarning": "Le feedback avec CAPTCHA ne peut pas être terminé hors connexion, ou s'il n'est pas configuré, ou si le serveur est arrêté.",
+ "complete_the_form": "Répondre aux questions...",
+ "completed_feedbacks": "Réponses envoyées",
+ "continue_the_form": "Continuer à répondre aux questions...",
+ "feedback_is_not_open": "Le feedback n'est pas ouvert",
+ "feedback_submitted_offline": "Ce feedback a été enregistré pour être remis plus tard.",
+ "feedbackclose": "Permettre les réponses jusqu'au",
+ "feedbackopen": "Permettre les réponses dès le",
+ "mapcourses": "Associer le feedback aux cours",
+ "mode": "Mode",
+ "next_page": "Page suivante",
+ "non_anonymous": "Le nom du participant sera enregistré et affiché avec ses réponses",
+ "non_anonymous_entries": "Réponses non anonymes ({{$a}})",
+ "non_respondents_students": "Participants sans réponse ({{$a}})",
+ "not_selected": "Sans réponse",
+ "not_started": "Pas commencé",
+ "numberoutofrange": "Nombre en dehors de l'intervalle permis",
+ "overview": "Vue d'ensemble",
+ "page_after_submit": "Message de fin",
+ "preview": "Prévisualisation",
+ "previous_page": "Page précédente",
+ "questions": "Questions",
+ "response_nr": "Réponse No",
+ "responses": "Réponses",
+ "save_entries": "Remettre vos réponses",
+ "show_entries": "Afficher les réponses",
+ "show_nonrespondents": "Afficher les utilisateurs sans réponse",
+ "started": "Commencé",
+ "this_feedback_is_already_submitted": "Vous avez déjà effectué cette activité."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/he.json b/src/addon/mod/feedback/lang/he.json
new file mode 100755
index 000000000..d1cac22f2
--- /dev/null
+++ b/src/addon/mod/feedback/lang/he.json
@@ -0,0 +1,32 @@
+{
+ "analysis": "ניתוח",
+ "anonymous": "אנונימי",
+ "anonymous_entries": "משובים אנונימיים ({{$a}})",
+ "average": "ממוצע",
+ "complete_the_form": "מענה על השאלות...",
+ "completed_feedbacks": "תשובות אשר הוגשו",
+ "continue_the_form": "המשך השאלון",
+ "feedback_is_not_open": "שאלון־מותנה זה איננו זמין כעת",
+ "feedbackclose": "אפשר תשובות ל",
+ "feedbackopen": "אפשרת תשובות מ",
+ "mapcourses": "שיוך שאלון־מותנה עבור הקורסים",
+ "mode": "מצב",
+ "next_page": "העמוד הבא",
+ "non_anonymous": "שמות המשתמשים ישמרו ויוצגו יחד עם התשובות",
+ "non_anonymous_entries": "לא ניתן לענות באופן אנונימי (לא מזוהה)",
+ "non_respondents_students": "לא קיימות תגובות של סטודנטים",
+ "not_selected": "לא נבחר",
+ "not_started": "לא התחיל",
+ "overview": "סקירה",
+ "page_after_submit": "הודעת השלמה",
+ "preview": "תצוגה מקדימה",
+ "previous_page": "העמוד הקודם",
+ "questions": "שאלות",
+ "response_nr": "מספר תגובה",
+ "responses": "תגובות",
+ "save_entries": "הגשת תשובותיך",
+ "show_entries": "הצגת תגובות",
+ "show_nonrespondents": "הצגת שאלות ללא התגובות",
+ "started": "התחיל",
+ "this_feedback_is_already_submitted": "השלמתם פעילות זו, בעבר."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/hr.json b/src/addon/mod/feedback/lang/hr.json
new file mode 100755
index 000000000..01b1e2b62
--- /dev/null
+++ b/src/addon/mod/feedback/lang/hr.json
@@ -0,0 +1,32 @@
+{
+ "analysis": "Analiza",
+ "anonymous": "Anonimno",
+ "anonymous_entries": "Anonimni odgovori",
+ "average": "Prosječno",
+ "complete_the_form": "Odgovorite na pitanja ...",
+ "completed_feedbacks": "Predani odgovori",
+ "continue_the_form": "Nastavi s obrascem",
+ "feedback_is_not_open": "Anketa nije dostupna",
+ "feedbackclose": "Dostupno do",
+ "feedbackopen": "Dostupno od",
+ "mapcourses": "Pridruži anketu e-kolegijima",
+ "mode": "Vrsta",
+ "next_page": "Sljedeća stranica",
+ "non_anonymous": "Ime korisnika će se zapisati i prikazati uz odgovore",
+ "non_anonymous_entries": "neanonimni unosi",
+ "non_respondents_students": "studenti koji nisu odgovorili",
+ "not_selected": "Nije odabrano",
+ "not_started": "nije počelo",
+ "overview": "Pregled",
+ "page_after_submit": "Stranica poslije predaje",
+ "preview": "Pregled",
+ "previous_page": "Prethodna stranica",
+ "questions": "Pitanja",
+ "response_nr": "Odgovor broj",
+ "responses": "Odgovori",
+ "save_entries": "Predaj svoje odgovore",
+ "show_entries": "Prikaži odgovore",
+ "show_nonrespondents": "Prikaži korisnike koji nisu odgovorili",
+ "started": "započeto",
+ "this_feedback_is_already_submitted": "Već ste obavili ovu aktivnost."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/hu.json b/src/addon/mod/feedback/lang/hu.json
new file mode 100755
index 000000000..40c067560
--- /dev/null
+++ b/src/addon/mod/feedback/lang/hu.json
@@ -0,0 +1,33 @@
+{
+ "analysis": "Elemzés",
+ "anonymous": "Névtelen",
+ "anonymous_entries": "Névtelen bejegyzések ({{$a}})",
+ "average": "Átlag",
+ "complete_the_form": "Válaszoljon a kérdésekre...",
+ "completed_feedbacks": "Leadott válaszok",
+ "continue_the_form": "Kérdések megválaszolásának folytatása...",
+ "feedback_is_not_open": "A visszajelzés nincs nyitva",
+ "feedbackclose": "Válaszok engedélyezése a címzettnek",
+ "feedbackopen": "Válaszok engedélyezése a feladótól",
+ "mapcourses": "A visszajelzés illesztése kurzusokhoz.",
+ "mode": "Mód",
+ "next_page": "Következő oldal",
+ "non_anonymous": "A felhasználó nevét a rendszer naplózza és a válaszok mellett megjeleníti",
+ "non_anonymous_entries": "Nem névtelen bejegyzések ({{$a}})",
+ "non_respondents_students": "Nem válaszoló tanulók ({{$a}})",
+ "not_selected": "Nincs kiválasztva",
+ "not_started": "Nem kezdődött el",
+ "numberoutofrange": "Tartományon kívül eső szám",
+ "overview": "Áttekintés",
+ "page_after_submit": "Teljesítéssel kapcsolatos üzenet",
+ "preview": "Előkép",
+ "previous_page": "Előző oldal",
+ "questions": "Kérdések",
+ "response_nr": "Válasz száma:",
+ "responses": "Tanuló válaszai",
+ "save_entries": "Válaszainak leadása",
+ "show_entries": "Tanuló válaszainak megjelenítése",
+ "show_nonrespondents": "Nem válaszolók megjelenítése",
+ "started": "Elkezdődött",
+ "this_feedback_is_already_submitted": "Ezt a tevékenységet már befejezte."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/it.json b/src/addon/mod/feedback/lang/it.json
new file mode 100755
index 000000000..68a97fbfb
--- /dev/null
+++ b/src/addon/mod/feedback/lang/it.json
@@ -0,0 +1,34 @@
+{
+ "analysis": "Analisi",
+ "anonymous": "Anonimo",
+ "anonymous_entries": "Compilazioni anonime ({{$a}})",
+ "average": "Media",
+ "complete_the_form": "Compila il questionario",
+ "completed_feedbacks": "Risposte inviate",
+ "continue_the_form": "Continua a rispondere alle domande",
+ "feedback_is_not_open": "Il feedback non è aperto",
+ "feedback_submitted_offline": "Il feedback è stato salvato e sarà inviato più tardi.",
+ "feedbackclose": "Chiusura",
+ "feedbackopen": "Apertura",
+ "mapcourses": "Associa feedback ai corsi",
+ "mode": "Modalità",
+ "next_page": "Pagina successiva",
+ "non_anonymous": "Il nome del partecipante verrà registrato e visualizzato nelle risposte",
+ "non_anonymous_entries": "Risposte non anonime ({{$a}})",
+ "non_respondents_students": "Studenti che non hanno risposto ({{$a}})",
+ "not_selected": "Nessuna scelta",
+ "not_started": "Non iniziato",
+ "numberoutofrange": "Il numero è fuori scala",
+ "overview": "Panoramica",
+ "page_after_submit": "Messaggio da visualizzare dopo la compilazione",
+ "preview": "Anteprima",
+ "previous_page": "Pagina precedente",
+ "questions": "Domande",
+ "response_nr": "Risposta numero",
+ "responses": "Risposte",
+ "save_entries": "Invia le risposte",
+ "show_entries": "Risposte",
+ "show_nonrespondents": "Risposte mancanti",
+ "started": "Aperto",
+ "this_feedback_is_already_submitted": "Hai già completato questa attività."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/ja.json b/src/addon/mod/feedback/lang/ja.json
new file mode 100755
index 000000000..1fa5c5c7b
--- /dev/null
+++ b/src/addon/mod/feedback/lang/ja.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "分析",
+ "anonymous": "匿名",
+ "anonymous_entries": "匿名エントリ ({{$a}})",
+ "average": "平均",
+ "captchaofflinewarning": "Capchaつきのフィードバックは、未設定の場合、オフラインモードの場合、サーバがダウンしている場合には完了できません。",
+ "complete_the_form": "質問に回答する ...",
+ "completed_feedbacks": "送信済み回答",
+ "continue_the_form": "質問への回答を続ける ...",
+ "feedback_is_not_open": "フィードバックは利用できません。",
+ "feedback_submitted_offline": "このフィードバックを、あとで提出するために保存しました。",
+ "feedbackclose": "フィードバック終了日時",
+ "feedbackopen": "フィードバック開始日時",
+ "mapcourses": "フィードバックをコースにマップする",
+ "mode": "モード",
+ "next_page": "次のページ",
+ "non_anonymous": "ユーザ名を記録して回答と共に表示する",
+ "non_anonymous_entries": "非匿名エントリ ({{$a}})",
+ "non_respondents_students": "未回答の学生 ({{$a}})",
+ "not_selected": "未選択",
+ "not_started": "未開始",
+ "numberoutofrange": "数字が範囲を超えています。",
+ "overview": "概要",
+ "page_after_submit": "完了メッセージ",
+ "preview": "プレビュー",
+ "previous_page": "前のページ",
+ "questions": "質問",
+ "response_nr": "回答No",
+ "responses": "回答",
+ "save_entries": "あなたの回答を送信する",
+ "show_entries": "回答を表示する",
+ "show_nonrespondents": "未回答者を表示する",
+ "started": "開始済み",
+ "this_feedback_is_already_submitted": "あなたはすでにこの活動を完了しています。"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/ko.json b/src/addon/mod/feedback/lang/ko.json
new file mode 100755
index 000000000..f1a250030
--- /dev/null
+++ b/src/addon/mod/feedback/lang/ko.json
@@ -0,0 +1,32 @@
+{
+ "analysis": "분석",
+ "anonymous": "익명",
+ "anonymous_entries": "익명 응답",
+ "average": "평균",
+ "complete_the_form": "질문에 답하세요",
+ "completed_feedbacks": "제출된 답",
+ "continue_the_form": "양식 계속",
+ "feedback_is_not_open": "피드백이 아직 시작되지 않았음",
+ "feedbackclose": "응답 허용",
+ "feedbackopen": "답안 입력 시작 시간",
+ "mapcourses": "피드백을 강좌에 연결",
+ "mode": "모드",
+ "next_page": "다음 페이지",
+ "non_anonymous": "기명, 응답내용 공개",
+ "non_anonymous_entries": "익명 기록 없음",
+ "non_respondents_students": "응답한 학생 없음",
+ "not_selected": "선택되지 않았음",
+ "not_started": "개시하지 않음",
+ "overview": "요약",
+ "page_after_submit": "완료 메세지",
+ "preview": "미리보기",
+ "previous_page": "이전 페이지",
+ "questions": "질문들",
+ "response_nr": "응답 수",
+ "responses": "응답들",
+ "save_entries": "응답 제출",
+ "show_entries": "응답 보기",
+ "show_nonrespondents": "응답 안한 사람 보기",
+ "started": "시작되었음",
+ "this_feedback_is_already_submitted": "당신은 이미 이 활동을 완료하였습니다."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/lt.json b/src/addon/mod/feedback/lang/lt.json
new file mode 100755
index 000000000..e08688c55
--- /dev/null
+++ b/src/addon/mod/feedback/lang/lt.json
@@ -0,0 +1,33 @@
+{
+ "analysis": "Analizė",
+ "anonymous": "Anonimiškai",
+ "anonymous_entries": "Anoniminiai įrašai ({{$a}})",
+ "average": "Vidurkis",
+ "complete_the_form": "Atsakyti klausimus...",
+ "completed_feedbacks": "Pateikti atsakymai",
+ "continue_the_form": "Tęsti atsakymus į klausimus...",
+ "feedback_is_not_open": "Atsiliepimas neatidarytas",
+ "feedbackclose": "Uždaryti atsiliepimą",
+ "feedbackopen": "Atidaryti atsiliepimą",
+ "mapcourses": "Susieti atsiliepimą su kursais",
+ "mode": "Režimas",
+ "next_page": "Kitas puslapis",
+ "non_anonymous": "Naudotojo vardas bus užregistruotas ir rodomas su atsakymais",
+ "non_anonymous_entries": "Neanoniminiai įrašai ({{$a}})",
+ "non_respondents_students": "Ne respondentai besimokantieji ({{$a}})",
+ "not_selected": "Nepasirinkta",
+ "not_started": "Nepradėta",
+ "numberoutofrange": "Skaičius nėra iš intervalo",
+ "overview": "Apžvalga",
+ "page_after_submit": "Puslapis po pateikimo",
+ "preview": "Peržiūra",
+ "previous_page": "Ankstesnis puslapis",
+ "questions": "Klausimai",
+ "response_nr": "Atsakymo numeris",
+ "responses": "Atsakymai",
+ "save_entries": "Pateikite savo atsakymus",
+ "show_entries": "Rodyti atsakymus",
+ "show_nonrespondents": "Rodyti ne respondentus",
+ "started": "Pradėjo",
+ "this_feedback_is_already_submitted": "Jau užbaigėte šią veiklą."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/mr.json b/src/addon/mod/feedback/lang/mr.json
new file mode 100755
index 000000000..5272f9813
--- /dev/null
+++ b/src/addon/mod/feedback/lang/mr.json
@@ -0,0 +1,11 @@
+{
+ "average": "सरासर",
+ "captchaofflinewarning": "कॅप्चासह अभिप्राय ऑफलाइन पूर्ण केले जाऊ शकत नाही, किंवा कॉन्फिगर केले जात नाही किंवा सर्व्हर बंद असल्यास.",
+ "feedback_submitted_offline": "हे अभिप्राय नंतर सबमिट करण्यासाठी जतन केले गेले आहे.",
+ "mode": "पातळी",
+ "overview": "आढावा",
+ "preview": "आढावा",
+ "questions": "प्रश्न",
+ "responses": "प्रतीसाद",
+ "started": "सुरू केल्याची वेळ"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/nl.json b/src/addon/mod/feedback/lang/nl.json
new file mode 100755
index 000000000..f14bca006
--- /dev/null
+++ b/src/addon/mod/feedback/lang/nl.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Analyse",
+ "anonymous": "Anoniem",
+ "anonymous_entries": "Anoniem ingevulde formulieren ({{$a}})",
+ "average": "Gemiddelde",
+ "captchaofflinewarning": "Feedback met CAPTCHA kan niet offline voltooid worden of wanneer dat niet geconfigureerd is of wanneer de server onbereikbaar is.",
+ "complete_the_form": "Beantwoord de vragen...",
+ "completed_feedbacks": "Ingevulde antwoorden",
+ "continue_the_form": "Ga verder met het beantwoorden van de vragen...",
+ "feedback_is_not_open": "De feedback is niet open",
+ "feedback_submitted_offline": "Deze feedback is bewaard om later in te sturen.",
+ "feedbackclose": "Antwoorden toestaan tot",
+ "feedbackopen": "Antwoorden toestaan van",
+ "mapcourses": "Koppel feedback aan cursussen",
+ "mode": "Modus",
+ "next_page": "Volgende pagina",
+ "non_anonymous": "De gebruikersnamen zullen bewaard worden en samen met de antwoorden getoond worden",
+ "non_anonymous_entries": "Niet-anonieme items ({{$a}})",
+ "non_respondents_students": "Leerlingen die niet ingestuurd hebben ({{$a}})",
+ "not_selected": "Niet geselecteerd",
+ "not_started": "Niet begonnen",
+ "numberoutofrange": "Aantal buiten bereik",
+ "overview": "Overzicht",
+ "page_after_submit": "Bericht na voltooien",
+ "preview": "Voorbeeld",
+ "previous_page": "Vorige pagina",
+ "questions": "Vragen",
+ "response_nr": "Antwoordnummer",
+ "responses": "Antwoorden",
+ "save_entries": "Verzend je antwoorden",
+ "show_entries": "Toon antwoorden",
+ "show_nonrespondents": "Niet geantwoord",
+ "started": "Gestart",
+ "this_feedback_is_already_submitted": "Je hebt dit feedbackformulier is al ingestuurd."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/no.json b/src/addon/mod/feedback/lang/no.json
new file mode 100755
index 000000000..c37504064
--- /dev/null
+++ b/src/addon/mod/feedback/lang/no.json
@@ -0,0 +1,33 @@
+{
+ "analysis": "Analyse",
+ "anonymous": "Anonym",
+ "anonymous_entries": "Anonyme svar ({{$a}})",
+ "average": "Gjennomsnitt",
+ "complete_the_form": "Svar på spørsmålene...",
+ "completed_feedbacks": "Innsendte svar",
+ "continue_the_form": "Fortsett med å svare på spørsmålene",
+ "feedback_is_not_open": "Undersøkelsen er ikke åpen",
+ "feedbackclose": "Steng undersøkelsen",
+ "feedbackopen": "Åpne undersøkelsen",
+ "mapcourses": "Koble Feedback til kurs",
+ "mode": "Modus",
+ "next_page": "Neste side",
+ "non_anonymous": "Brukerens navn vil bli lagret og vist sammen med svaret.",
+ "non_anonymous_entries": "Ingen anonyme svar ({{$a}})",
+ "non_respondents_students": "Studenter som ikke har svart ({{$a}})",
+ "not_selected": "Ikke valgt",
+ "not_started": "Ikke startet",
+ "numberoutofrange": "Dette tallet er utenfor det gyldige intervallet",
+ "overview": "Oversikt",
+ "page_after_submit": "Visningsside etter fullført",
+ "preview": "Forhåndsvisning",
+ "previous_page": "Forrige side",
+ "questions": "Spørsmål",
+ "response_nr": "Respons nr:",
+ "responses": "Responser",
+ "save_entries": "Send inn dine svar",
+ "show_entries": "Vis responser",
+ "show_nonrespondents": "Vis brukere som ikke har svart",
+ "started": "Startet",
+ "this_feedback_is_already_submitted": "Du har allerede fullført denne aktiviteten."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/pl.json b/src/addon/mod/feedback/lang/pl.json
new file mode 100755
index 000000000..7c904cb37
--- /dev/null
+++ b/src/addon/mod/feedback/lang/pl.json
@@ -0,0 +1,33 @@
+{
+ "analysis": "Analiza",
+ "anonymous": "Anonimowy",
+ "anonymous_entries": "Anonimowe wpisy",
+ "average": "Średnia",
+ "complete_the_form": "Odpowiedz na pytania ...",
+ "completed_feedbacks": "Zatwierdzone odpowiedzi",
+ "continue_the_form": "Kontynuuj wypełnianie formularza",
+ "feedback_is_not_open": "Informacja zwrotna nie jest otwarta",
+ "feedbackclose": "Zamknij o",
+ "feedbackopen": "Otwórz o",
+ "mapcourses": "Skojarz formularz opinii z kursami",
+ "mode": "Tryb",
+ "next_page": "Następna strona",
+ "non_anonymous": "Nazwa użytkownika będzie zapamiętywana i prezentowana z odpowiedziami",
+ "non_anonymous_entries": "Pozycje nie anonimowe",
+ "non_respondents_students": "Studenci niebędący respondentami*",
+ "not_selected": "Nie wybrano",
+ "not_started": "nie rozpoczęto",
+ "numberoutofrange": "Liczba poza zakresem",
+ "overview": "Przegląd",
+ "page_after_submit": "Wyświetl stronę po zatwierdzeniu",
+ "preview": "Podgląd",
+ "previous_page": "Poprzednia strona\n",
+ "questions": "Pytania",
+ "response_nr": "Liczba odpowiedzi",
+ "responses": "Odpowiedzi",
+ "save_entries": "Zatwierdź swoją odpowiedź",
+ "show_entries": "Pokaż odpowiedzi",
+ "show_nonrespondents": "Pokaż kto nie udzielił opinii*",
+ "started": "Rozpoczęto",
+ "this_feedback_is_already_submitted": "Już zakończyłeś wypełnianie tej aktywności."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/pt-br.json b/src/addon/mod/feedback/lang/pt-br.json
new file mode 100755
index 000000000..cb2908363
--- /dev/null
+++ b/src/addon/mod/feedback/lang/pt-br.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Análise",
+ "anonymous": "Anônimo",
+ "anonymous_entries": "Entradas anônimas ({{$a}})",
+ "average": "Média",
+ "captchaofflinewarning": "Inquérito com CAPTCHA não pode ser concluído em modo offline, ou se não estiver configurado, ou o servidor está em baixo.",
+ "complete_the_form": "Responda as questões...",
+ "completed_feedbacks": "Respostas submetidas",
+ "continue_the_form": "Continuar respondendo as questões ...",
+ "feedback_is_not_open": "A pesquisa não está aberta",
+ "feedback_submitted_offline": "O Inquérito foi gravado para ser enviado mais tarde.",
+ "feedbackclose": "Permitir respostas até",
+ "feedbackopen": "Permitir respostas de",
+ "mapcourses": "Mapear pesquisa para os cursos",
+ "mode": "Modo",
+ "next_page": "Próxima página",
+ "non_anonymous": "O nome do usuário será registrado e mostrado com as respostas",
+ "non_anonymous_entries": "Entradas não anônimas ({{$a}})",
+ "non_respondents_students": "Estudantes não respondentes ({{$a}})",
+ "not_selected": "Não selecionado",
+ "not_started": "Não iniciado",
+ "numberoutofrange": "Valor fora do intervalo",
+ "overview": "Visão geral",
+ "page_after_submit": "Mensagem de conclusão",
+ "preview": "Previsão",
+ "previous_page": "Página anterior",
+ "questions": "Questões",
+ "response_nr": "Resposta numérica",
+ "responses": "Respostas",
+ "save_entries": "Submeter as suas respostas",
+ "show_entries": "Mostrar respostas",
+ "show_nonrespondents": "Mostrar não respondentes",
+ "started": "iniciado",
+ "this_feedback_is_already_submitted": "Você já terminou esta atividade."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/pt.json b/src/addon/mod/feedback/lang/pt.json
new file mode 100755
index 000000000..b98f45404
--- /dev/null
+++ b/src/addon/mod/feedback/lang/pt.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Análise",
+ "anonymous": "Anónimo",
+ "anonymous_entries": "Respostas anónimas ({{$a}})",
+ "average": "Média",
+ "captchaofflinewarning": "Inquérito com CAPTCHA não pode ser concluído em modo offline, ou se não estiver configurado, ou o servidor está em baixo.",
+ "complete_the_form": "Responder às questões...",
+ "completed_feedbacks": "Respostas submetidas",
+ "continue_the_form": "Continuar a responder às perguntas...",
+ "feedback_is_not_open": "O inquérito não está aberto",
+ "feedback_submitted_offline": "O Inquérito foi gravado para ser enviado mais tarde.",
+ "feedbackclose": "Permitir respostas até",
+ "feedbackopen": "Permitir respostas a partir de",
+ "mapcourses": "Associar o inquérito a disciplinas",
+ "mode": "Modo",
+ "next_page": "Página seguinte",
+ "non_anonymous": "O nome do utilizador será registado e apresentado com as respostas",
+ "non_anonymous_entries": "Respostas não anónimas ({{$a}})",
+ "non_respondents_students": "Alunos que não responderam ({{$a}})",
+ "not_selected": "Não respondido",
+ "not_started": "Por iniciar",
+ "numberoutofrange": "Valor fora do intervalo",
+ "overview": "Visão global",
+ "page_after_submit": "Mensagem de conclusão",
+ "preview": "Pré-visualização",
+ "previous_page": "Página anterior",
+ "questions": "Questões",
+ "response_nr": "Número da resposta",
+ "responses": "Respostas",
+ "save_entries": "Submeter respostas",
+ "show_entries": "Respostas",
+ "show_nonrespondents": "Utilizadores que não responderam",
+ "started": "Iniciado",
+ "this_feedback_is_already_submitted": "Já concluiu esta atividade"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/ro.json b/src/addon/mod/feedback/lang/ro.json
new file mode 100755
index 000000000..c96c05e15
--- /dev/null
+++ b/src/addon/mod/feedback/lang/ro.json
@@ -0,0 +1,26 @@
+{
+ "analysis": "Analiză",
+ "anonymous": "Anonim",
+ "anonymous_entries": "Postări anonime",
+ "average": "Medie",
+ "complete_the_form": "Răspunde la întrebare",
+ "completed_feedbacks": "Răspunsuri trimise",
+ "feedback_is_not_open": "Feedback-ul nu este disponibil",
+ "feedbackopen": "Permite răspunsuri de la",
+ "mode": "Mod",
+ "next_page": "Următoarea pagină",
+ "not_selected": "Nu este selectat",
+ "not_started": "neînceput",
+ "numberoutofrange": "Număr în afara intervalului",
+ "overview": "Privire generală",
+ "page_after_submit": "Pagina după trimitere",
+ "preview": "Previzualizare",
+ "previous_page": "Pagina precedentă",
+ "questions": "Întrebări",
+ "response_nr": "Numărul răspunsuluii",
+ "responses": "Răspunsuri",
+ "save_entries": "Trimiteți răspunsurile",
+ "show_entries": "Afișează răspunsuri",
+ "started": "început",
+ "this_feedback_is_already_submitted": "Ați completat deja această activitate."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/ru.json b/src/addon/mod/feedback/lang/ru.json
new file mode 100755
index 000000000..7881ccd44
--- /dev/null
+++ b/src/addon/mod/feedback/lang/ru.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Анализ результатов",
+ "anonymous": "Анонимный",
+ "anonymous_entries": "Анонимные записи ({{$a}})",
+ "average": "Средний",
+ "captchaofflinewarning": "Обратная связь с CAPTCHA не может быть выполнена если вы не в сети, если не настроена или если сервер недоступен.",
+ "complete_the_form": "Ответьте на вопросы ...",
+ "completed_feedbacks": "Отправлено ответов",
+ "continue_the_form": "Продолжить ответы на вопросы...",
+ "feedback_is_not_open": "эта анкета обратной связи не открыта",
+ "feedback_submitted_offline": "Этот отзыв был сохранён, для отправки позже.",
+ "feedbackclose": "Разрешить отвечать до",
+ "feedbackopen": "Разрешить отвечать с",
+ "mapcourses": "Сопоставление Обратной связи с курсами",
+ "mode": "Режим",
+ "next_page": "Следующая страница",
+ "non_anonymous": "Имя пользователя будет записано и показано с его ответами",
+ "non_anonymous_entries": "Не анонимные записи ({{$a}})",
+ "non_respondents_students": "Не ответившие студенты ({{$a}})",
+ "not_selected": "Не выбрано",
+ "not_started": "Не начато",
+ "numberoutofrange": "Значение вне диапазона",
+ "overview": "Просмотр",
+ "page_after_submit": "Сообщение о завершении",
+ "preview": "Предварительный просмотр",
+ "previous_page": "Предыдущая страница",
+ "questions": "Вопросов",
+ "response_nr": "Номер ответа",
+ "responses": "Ответы",
+ "save_entries": "Отправить свои ответы",
+ "show_entries": "Показать ответивших",
+ "show_nonrespondents": "Показать не ответивших",
+ "started": "Начало",
+ "this_feedback_is_already_submitted": "Вы уже завершили этот учебный элемент"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/sr-cr.json b/src/addon/mod/feedback/lang/sr-cr.json
new file mode 100755
index 000000000..a1cdc9bcc
--- /dev/null
+++ b/src/addon/mod/feedback/lang/sr-cr.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Анализа",
+ "anonymous": "Анонимни упитник",
+ "anonymous_entries": "Анонимни одговори ({{$a}})",
+ "average": "Просечно",
+ "captchaofflinewarning": "Упитник са Captcha елементом не може да буде завршен ако није конфигурисан, ако сте у офлајн режиму или ако је сервер искључен.",
+ "complete_the_form": "Одговори на питања...",
+ "completed_feedbacks": "Анализа одговорa",
+ "continue_the_form": "Настави са одговарањем на питања...",
+ "feedback_is_not_open": "Упитник није отворен",
+ "feedback_submitted_offline": "Овај упитник је сачуван како би касније био предат.",
+ "feedbackclose": "Упитник доступан до",
+ "feedbackopen": "Упитник доступан од",
+ "mapcourses": "Повежи упитник са курсевима",
+ "mode": "Врста упитника",
+ "next_page": "Следећа страница",
+ "non_anonymous": "Име корисника биће записано и приказано заједно са одговорима",
+ "non_anonymous_entries": "Неанонимни одговори ({{$a}})",
+ "non_respondents_students": "Полазници који нису одговорили на упитник ({{$a}})",
+ "not_selected": "Није изабрано",
+ "not_started": "Није започето",
+ "numberoutofrange": "Број изван опсега",
+ "overview": "Преглед",
+ "page_after_submit": "Порука која ће бити приказана кориснику након што попуни упитник",
+ "preview": "Преглед",
+ "previous_page": "Претходна страница",
+ "questions": "Питања",
+ "response_nr": "Одговор бр.",
+ "responses": "Одговори",
+ "save_entries": "Пошаљи своје одговоре",
+ "show_entries": "Прикажи одговоре",
+ "show_nonrespondents": "Прикажи кориснике које нису одговорили на упитник",
+ "started": "Започето",
+ "this_feedback_is_already_submitted": "Већ сте попунили овај упитник."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/sr-lt.json b/src/addon/mod/feedback/lang/sr-lt.json
new file mode 100755
index 000000000..8f2198ecf
--- /dev/null
+++ b/src/addon/mod/feedback/lang/sr-lt.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Analiza",
+ "anonymous": "Anonimni upitnik",
+ "anonymous_entries": "Anonimni odgovori ({{$a}})",
+ "average": "Prosečno",
+ "captchaofflinewarning": "Upitnik sa Captcha elementom ne može da bude završen ako nije konfigurisan, ako ste u oflajn režimu ili ako je server isključen.",
+ "complete_the_form": "Odgovori na pitanja...",
+ "completed_feedbacks": "Analiza odgovora",
+ "continue_the_form": "Nastavi sa odgovaranjem na pitanja...",
+ "feedback_is_not_open": "Upitnik nije otvoren",
+ "feedback_submitted_offline": "Ovaj upitnik je sačuvan kako bi kasnije bio predat.",
+ "feedbackclose": "Upitnik dostupan do",
+ "feedbackopen": "Upitnik dostupan od",
+ "mapcourses": "Poveži upitnik sa kursevima",
+ "mode": "Vrsta upitnika",
+ "next_page": "Sledeća stranica",
+ "non_anonymous": "Ime korisnika biće zapisano i prikazano zajedno sa odgovorima",
+ "non_anonymous_entries": "Neanonimni odgovori ({{$a}})",
+ "non_respondents_students": "Polaznici koji nisu odgovorili na upitnik ({{$a}})",
+ "not_selected": "Nije izabrano",
+ "not_started": "Nije započeto",
+ "numberoutofrange": "Broj izvan opsega",
+ "overview": "Pregled",
+ "page_after_submit": "Poruka koja će biti prikazana korisniku nakon što popuni upitnik",
+ "preview": "Pregled",
+ "previous_page": "Prethodna stranica",
+ "questions": "Pitanja",
+ "response_nr": "Odgovor br.",
+ "responses": "Odgovori",
+ "save_entries": "Pošalji svoje odgovore",
+ "show_entries": "Prikaži odgovore",
+ "show_nonrespondents": "Prikaži korisnike koje nisu odgovorili na upitnik",
+ "started": "Započeto",
+ "this_feedback_is_already_submitted": "Već ste popunili ovaj upitnik."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/sv.json b/src/addon/mod/feedback/lang/sv.json
new file mode 100755
index 000000000..c749faa80
--- /dev/null
+++ b/src/addon/mod/feedback/lang/sv.json
@@ -0,0 +1,32 @@
+{
+ "analysis": "Analys",
+ "anonymous": "Anonym",
+ "anonymous_entries": "Anonyma inlägg",
+ "average": "Medel",
+ "complete_the_form": "Fyll i hela formuläret",
+ "completed_feedbacks": "Fullgjorda Egna enkäter",
+ "continue_the_form": "Fortsätt formuläret",
+ "feedback_is_not_open": "Denna Egen enkät är inte öppen",
+ "feedbackclose": "Stäng Egen enkät vid denna tid",
+ "feedbackopen": "Öppna denna Egen enkät vid den här tiden",
+ "mapcourses": "\"Mappa\" Egen enkät till kurser",
+ "mode": "Läge",
+ "next_page": "Nästa sida",
+ "non_anonymous": "Inte-anonym",
+ "non_anonymous_entries": "Inga anonyma bidrag",
+ "non_respondents_students": "Studenter/elever/deltagare/lärande som inte har lämnat några svar",
+ "not_selected": "Inte vald",
+ "not_started": "inte påbörjad",
+ "overview": "Översikt",
+ "page_after_submit": "Sida efter inskickning",
+ "preview": "Förhandsgranska",
+ "previous_page": "Föregående sida",
+ "questions": "Frågor",
+ "response_nr": "Antal svar",
+ "responses": "Svar",
+ "save_entries": "Spara inlägg",
+ "show_entries": "Visa inlägg",
+ "show_nonrespondents": "Visa dem som inte har lämnat några svar",
+ "started": "startad",
+ "this_feedback_is_already_submitted": "Du har redan fullföljt den här Egen enkät"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/tg.json b/src/addon/mod/feedback/lang/tg.json
new file mode 100755
index 000000000..3e705b66a
--- /dev/null
+++ b/src/addon/mod/feedback/lang/tg.json
@@ -0,0 +1,12 @@
+{
+ "analysis": "Таҳлил",
+ "anonymous": "Махфӣ",
+ "anonymous_entries": "Воридоти махфӣ ({{$a}})",
+ "average": "Миёна",
+ "mode": "Мӯд",
+ "overview": "Бознигарӣ",
+ "preview": "Пешакӣ дида баромадан",
+ "questions": "Саволҳо",
+ "responses": "Ҷавобҳо",
+ "started": "саршавӣ"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/tr.json b/src/addon/mod/feedback/lang/tr.json
new file mode 100755
index 000000000..e4720de3a
--- /dev/null
+++ b/src/addon/mod/feedback/lang/tr.json
@@ -0,0 +1,33 @@
+{
+ "analysis": "Analiz",
+ "anonymous": "Anonim",
+ "anonymous_entries": "Anonim kayıtlar ({{$a}})",
+ "average": "Ortalama",
+ "complete_the_form": "Soruları cevaplayın...",
+ "completed_feedbacks": "Gönderilen cevaplar",
+ "continue_the_form": "Soruları cevaplamaya devam et...",
+ "feedback_is_not_open": "Geribildirim açık değil",
+ "feedbackclose": "Şuna yazılan cevaplara izin ver:",
+ "feedbackopen": "Şunlardan gelen cevaplara izin ver:",
+ "mapcourses": "Geribildirimi derslere eşleştirin",
+ "mode": "Mod",
+ "next_page": "Sonraki sayfa",
+ "non_anonymous": "Kullanıcıların adları kaydedilecek ve cevaplarıyla birlikte gösterilecek",
+ "non_anonymous_entries": "anonim olmayan kayıtlar({{$a}})",
+ "non_respondents_students": "Katılımcı olmayan öğrenciler ({{$a}})",
+ "not_selected": "Seçilmedi",
+ "not_started": "Başlatılmadı",
+ "numberoutofrange": "Aralık dışı numara",
+ "overview": "Gözat",
+ "page_after_submit": "Tamamlama bildirimi",
+ "preview": "Önizleme",
+ "previous_page": "Önceki sayfa",
+ "questions": "Sorular",
+ "response_nr": "Yanıt numarası",
+ "responses": "Yanıtlar",
+ "save_entries": "Cevaplarınızı gönderin",
+ "show_entries": "Yanıtları göster",
+ "show_nonrespondents": "Katılımcıları gösterme",
+ "started": "Başlatıldı",
+ "this_feedback_is_already_submitted": "Bu etkinliği zaten doldurdunuz."
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/uk.json b/src/addon/mod/feedback/lang/uk.json
new file mode 100755
index 000000000..be08824db
--- /dev/null
+++ b/src/addon/mod/feedback/lang/uk.json
@@ -0,0 +1,35 @@
+{
+ "analysis": "Аналіз",
+ "anonymous": "Анонімно",
+ "anonymous_entries": "Анонімні записи",
+ "average": "Середнє",
+ "captchaofflinewarning": "Зворотній зв'язок із captcha не може бути завершений, якщо не налаштований, в автономному режимі або сервер не працює.",
+ "complete_the_form": "Відповідь на питання..",
+ "completed_feedbacks": "Надані відповіді",
+ "continue_the_form": "Продовжити форму",
+ "feedback_is_not_open": "Зворотний зв'язок не відкрито",
+ "feedback_submitted_offline": "Цей зворотний зв'язок був збережений, та буде представлений пізніше.",
+ "feedbackclose": "Закрити зворотний зв’язок до",
+ "feedbackopen": "Відкрити зворотний зв’язок до",
+ "mapcourses": "Прив’язка зворотного зв’язку до курсів",
+ "mode": "Режим",
+ "next_page": "Наступна сторінка",
+ "non_anonymous": "Ім'я користувача буде записане та показане з відповідями",
+ "non_anonymous_entries": "немає анонімних відповідей",
+ "non_respondents_students": "немає опитаних студентів",
+ "not_selected": "Не вибрано",
+ "not_started": "не почато",
+ "numberoutofrange": "Значення поза діапазоном",
+ "overview": "Перегляд",
+ "page_after_submit": "Сторінка після відсилання відповіді",
+ "preview": "Перегляд",
+ "previous_page": "Попередня сторінка",
+ "questions": "Питання",
+ "response_nr": "Номер відповіді",
+ "responses": "Відповіді",
+ "save_entries": "Відправити ваші відповіді",
+ "show_entries": "Показати відповіді",
+ "show_nonrespondents": "Показати користувачів без відповіді",
+ "started": "почато",
+ "this_feedback_is_already_submitted": "Ви вже пройшли цю діяльність"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/zh-cn.json b/src/addon/mod/feedback/lang/zh-cn.json
new file mode 100755
index 000000000..5d53cc04b
--- /dev/null
+++ b/src/addon/mod/feedback/lang/zh-cn.json
@@ -0,0 +1,32 @@
+{
+ "analysis": "分析",
+ "anonymous": "匿名",
+ "anonymous_entries": "匿名条目",
+ "average": "平均",
+ "complete_the_form": "回答问题...",
+ "completed_feedbacks": "已提交的答复",
+ "continue_the_form": "继续填表",
+ "feedback_is_not_open": "此反馈未开放",
+ "feedbackclose": "关闭此反馈时间",
+ "feedbackopen": "开放此反馈时间",
+ "mapcourses": "将反馈映射到课程",
+ "mode": "模式",
+ "next_page": "下一页",
+ "non_anonymous": "用户姓名会被记录,并和他们的反馈一起显示",
+ "non_anonymous_entries": "非匿名条目",
+ "non_respondents_students": "未答复的学生",
+ "not_selected": "未选择",
+ "not_started": "还未答题",
+ "overview": "概述",
+ "page_after_submit": "提交后页面",
+ "preview": "预览",
+ "previous_page": "前一页",
+ "questions": "问题",
+ "response_nr": "答复编号",
+ "responses": "答复",
+ "save_entries": "提交您的答复",
+ "show_entries": "显示答复",
+ "show_nonrespondents": "显示未答复者",
+ "started": "已经开始",
+ "this_feedback_is_already_submitted": "您已经完成此活动。"
+}
\ No newline at end of file
diff --git a/src/addon/mod/feedback/lang/zh-tw.json b/src/addon/mod/feedback/lang/zh-tw.json
new file mode 100755
index 000000000..97aace4bc
--- /dev/null
+++ b/src/addon/mod/feedback/lang/zh-tw.json
@@ -0,0 +1,33 @@
+{
+ "analysis": "分析",
+ "anonymous": "匿名",
+ "anonymous_entries": "匿名輸入({{$a}})",
+ "average": "平均數",
+ "complete_the_form": "開始填寫回答...",
+ "completed_feedbacks": "已回答",
+ "continue_the_form": "繼續填表",
+ "feedback_is_not_open": "這個回饋單還沒有開放",
+ "feedbackclose": "結束填答時間",
+ "feedbackopen": "開始填答時間",
+ "mapcourses": "對應回饋單到課程",
+ "mode": "模式",
+ "next_page": "下一頁",
+ "non_anonymous": "用戶名稱和回應將被記錄",
+ "non_anonymous_entries": "具名輸入({{$a}})",
+ "non_respondents_students": "沒有回應的學生({{$a}})",
+ "not_selected": "未選",
+ "not_started": "沒有開始",
+ "numberoutofrange": "超過範圍的人數",
+ "overview": "概要",
+ "page_after_submit": "完成後的訊息",
+ "preview": "預覽",
+ "previous_page": "上一頁",
+ "questions": "問題",
+ "response_nr": "回應編號",
+ "responses": "回應",
+ "save_entries": "送出並結束",
+ "show_entries": "顯示回應",
+ "show_nonrespondents": "顯示沒有回應的學生",
+ "started": "已經開始",
+ "this_feedback_is_already_submitted": "您'已經完成這種活動。"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/ar.json b/src/addon/mod/folder/lang/ar.json
new file mode 100755
index 000000000..a7d05b3b5
--- /dev/null
+++ b/src/addon/mod/folder/lang/ar.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "لا يوجد أي ملفات ليتم إظهارها"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/bg.json b/src/addon/mod/folder/lang/bg.json
new file mode 100755
index 000000000..0637a088a
--- /dev/null
+++ b/src/addon/mod/folder/lang/bg.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/ca.json b/src/addon/mod/folder/lang/ca.json
new file mode 100755
index 000000000..2208f493a
--- /dev/null
+++ b/src/addon/mod/folder/lang/ca.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "No hi ha fitxers per mostrar",
+ "errorwhilegettingfolder": "S'ha produït un error en recuperar les dades de la carpeta."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/cs.json b/src/addon/mod/folder/lang/cs.json
new file mode 100755
index 000000000..04e2822f6
--- /dev/null
+++ b/src/addon/mod/folder/lang/cs.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Žádný soubor k zobrazení",
+ "errorwhilegettingfolder": "Chyba při načítání dat složky."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/da.json b/src/addon/mod/folder/lang/da.json
new file mode 100755
index 000000000..c53b3a994
--- /dev/null
+++ b/src/addon/mod/folder/lang/da.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Der er ingen filer at vise",
+ "errorwhilegettingfolder": "Fejl ved hentning af mappedata."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/de-du.json b/src/addon/mod/folder/lang/de-du.json
new file mode 100755
index 000000000..00b4ea2a9
--- /dev/null
+++ b/src/addon/mod/folder/lang/de-du.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Es liegen keine Dateien vor",
+ "errorwhilegettingfolder": "Fehler beim Laden der Verzeichnisdaten"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/de.json b/src/addon/mod/folder/lang/de.json
new file mode 100755
index 000000000..022d05bae
--- /dev/null
+++ b/src/addon/mod/folder/lang/de.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Keine Dateien",
+ "errorwhilegettingfolder": "Fehler beim Laden der Verzeichnisdaten"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/el.json b/src/addon/mod/folder/lang/el.json
new file mode 100755
index 000000000..9d8e3ae3d
--- /dev/null
+++ b/src/addon/mod/folder/lang/el.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Δεν υπάρχουν αρχεία.",
+ "errorwhilegettingfolder": "Σφάλμα κατά τη λήψη των δεδομένων του φακέλου."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/es-mx.json b/src/addon/mod/folder/lang/es-mx.json
new file mode 100755
index 000000000..e2f470725
--- /dev/null
+++ b/src/addon/mod/folder/lang/es-mx.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "No hay archivos que mostrar",
+ "errorwhilegettingfolder": "Error al obtener datos de carpeta."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/es.json b/src/addon/mod/folder/lang/es.json
new file mode 100755
index 000000000..2a310303d
--- /dev/null
+++ b/src/addon/mod/folder/lang/es.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "No hay archivos que mostrar",
+ "errorwhilegettingfolder": "Error recuperando los datos de la carpeta."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/eu.json b/src/addon/mod/folder/lang/eu.json
new file mode 100755
index 000000000..27a3ccc66
--- /dev/null
+++ b/src/addon/mod/folder/lang/eu.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Ez dago fitxategirik erakusteko.",
+ "errorwhilegettingfolder": "Errorea karpetaren datuak eskuratzean."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/fa.json b/src/addon/mod/folder/lang/fa.json
new file mode 100755
index 000000000..0637a088a
--- /dev/null
+++ b/src/addon/mod/folder/lang/fa.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/fi.json b/src/addon/mod/folder/lang/fi.json
new file mode 100755
index 000000000..a6933585d
--- /dev/null
+++ b/src/addon/mod/folder/lang/fi.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Ei näytettäviä tiedostoja",
+ "errorwhilegettingfolder": "Virhe haettaessa kansion tietoja."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/fr.json b/src/addon/mod/folder/lang/fr.json
new file mode 100755
index 000000000..e16e5c1ae
--- /dev/null
+++ b/src/addon/mod/folder/lang/fr.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Il n'y a pas de fichier à afficher",
+ "errorwhilegettingfolder": "Erreur lors de l'obtention des données du dossier."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/he.json b/src/addon/mod/folder/lang/he.json
new file mode 100755
index 000000000..1c2ec2797
--- /dev/null
+++ b/src/addon/mod/folder/lang/he.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "אין קבצים להציג"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/hr.json b/src/addon/mod/folder/lang/hr.json
new file mode 100755
index 000000000..fed014c81
--- /dev/null
+++ b/src/addon/mod/folder/lang/hr.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "Nema datoteka za prikaz"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/hu.json b/src/addon/mod/folder/lang/hu.json
new file mode 100755
index 000000000..22ea4b256
--- /dev/null
+++ b/src/addon/mod/folder/lang/hu.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "Nincs megjeleníthető állomány"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/it.json b/src/addon/mod/folder/lang/it.json
new file mode 100755
index 000000000..b828249f9
--- /dev/null
+++ b/src/addon/mod/folder/lang/it.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Non ci sono file da visualizzare",
+ "errorwhilegettingfolder": "Si è verificato un errore durante la ricezione dei dati della cartella."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/ja.json b/src/addon/mod/folder/lang/ja.json
new file mode 100755
index 000000000..8634d70f0
--- /dev/null
+++ b/src/addon/mod/folder/lang/ja.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "表示するファイルはありません。",
+ "errorwhilegettingfolder": "フォルダのデータを取得中にエラーが発生しました。"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/ko.json b/src/addon/mod/folder/lang/ko.json
new file mode 100755
index 000000000..74cfe0053
--- /dev/null
+++ b/src/addon/mod/folder/lang/ko.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "보여줄 파일이 없습니다."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/lt.json b/src/addon/mod/folder/lang/lt.json
new file mode 100755
index 000000000..a80a86276
--- /dev/null
+++ b/src/addon/mod/folder/lang/lt.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Nėra rodytinų failų",
+ "errorwhilegettingfolder": "Klaida gaunant duomenis iš aplanko."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/mr.json b/src/addon/mod/folder/lang/mr.json
new file mode 100755
index 000000000..fcd1959fa
--- /dev/null
+++ b/src/addon/mod/folder/lang/mr.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "दर्शविण्यासाठी कोणतीही फाईल नाहीत.",
+ "errorwhilegettingfolder": "फोल्डर डेटा प्राप्त करताना त्रुटी."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/nl.json b/src/addon/mod/folder/lang/nl.json
new file mode 100755
index 000000000..7b5448204
--- /dev/null
+++ b/src/addon/mod/folder/lang/nl.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Er zijn geen bestanden om te tonen",
+ "errorwhilegettingfolder": "Fout bij het ophalen van de mapgegevens"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/no.json b/src/addon/mod/folder/lang/no.json
new file mode 100755
index 000000000..738c9dbbe
--- /dev/null
+++ b/src/addon/mod/folder/lang/no.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Det er ingen filer å vise",
+ "errorwhilegettingfolder": "Feil ved henting av mappedata."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/pl.json b/src/addon/mod/folder/lang/pl.json
new file mode 100755
index 000000000..54676ae0a
--- /dev/null
+++ b/src/addon/mod/folder/lang/pl.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "Brak plików do wyświetlenia"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/pt-br.json b/src/addon/mod/folder/lang/pt-br.json
new file mode 100755
index 000000000..4e9c9589a
--- /dev/null
+++ b/src/addon/mod/folder/lang/pt-br.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Não há arquivos para exibir",
+ "errorwhilegettingfolder": "Erro ao obter dados da pasta."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/pt.json b/src/addon/mod/folder/lang/pt.json
new file mode 100755
index 000000000..74865d321
--- /dev/null
+++ b/src/addon/mod/folder/lang/pt.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Este repositório está vazio",
+ "errorwhilegettingfolder": "Erro ao obter os dados da pasta."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/ro.json b/src/addon/mod/folder/lang/ro.json
new file mode 100755
index 000000000..0277b91b3
--- /dev/null
+++ b/src/addon/mod/folder/lang/ro.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Nu există fișiere",
+ "errorwhilegettingfolder": "A apărut o eroare la obținerea dosarului cu datele cerute."
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/ru.json b/src/addon/mod/folder/lang/ru.json
new file mode 100755
index 000000000..293f0bbb6
--- /dev/null
+++ b/src/addon/mod/folder/lang/ru.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Нет файлов для отображения",
+ "errorwhilegettingfolder": "Ошибка при получении данных папок"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/sr-cr.json b/src/addon/mod/folder/lang/sr-cr.json
new file mode 100755
index 000000000..a65fb8697
--- /dev/null
+++ b/src/addon/mod/folder/lang/sr-cr.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Нема датотека за приказ.",
+ "errorwhilegettingfolder": "Грешка приликом преузимања података за 'Директоријум'"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/sr-lt.json b/src/addon/mod/folder/lang/sr-lt.json
new file mode 100755
index 000000000..9bfdf4033
--- /dev/null
+++ b/src/addon/mod/folder/lang/sr-lt.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Nema datoteka za prikaz.",
+ "errorwhilegettingfolder": "Greška prilikom preuzimanja podataka za 'Direktorijum'"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/sv.json b/src/addon/mod/folder/lang/sv.json
new file mode 100755
index 000000000..5920f56be
--- /dev/null
+++ b/src/addon/mod/folder/lang/sv.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Det finns inga filer att visa",
+ "errorwhilegettingfolder": "Fel vid hämtning av mapp-data"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/tg.json b/src/addon/mod/folder/lang/tg.json
new file mode 100755
index 000000000..783c520f7
--- /dev/null
+++ b/src/addon/mod/folder/lang/tg.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "Барои инъикос кардан файлҳо нестанд"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/tr.json b/src/addon/mod/folder/lang/tr.json
new file mode 100755
index 000000000..2783760ef
--- /dev/null
+++ b/src/addon/mod/folder/lang/tr.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "Gösterilecek dosya yok"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/uk.json b/src/addon/mod/folder/lang/uk.json
new file mode 100755
index 000000000..1357444e2
--- /dev/null
+++ b/src/addon/mod/folder/lang/uk.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "Немає файлів для показу",
+ "errorwhilegettingfolder": "Помилка отримання інформації про папку"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/zh-cn.json b/src/addon/mod/folder/lang/zh-cn.json
new file mode 100755
index 000000000..edc8a70a5
--- /dev/null
+++ b/src/addon/mod/folder/lang/zh-cn.json
@@ -0,0 +1,3 @@
+{
+ "emptyfilelist": "没有可显示的文件"
+}
\ No newline at end of file
diff --git a/src/addon/mod/folder/lang/zh-tw.json b/src/addon/mod/folder/lang/zh-tw.json
new file mode 100755
index 000000000..5300a9749
--- /dev/null
+++ b/src/addon/mod/folder/lang/zh-tw.json
@@ -0,0 +1,4 @@
+{
+ "emptyfilelist": "沒有檔案可以顯示",
+ "errorwhilegettingfolder": "當讀取資料夾資料時發生錯誤"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/ar.json b/src/addon/mod/forum/lang/ar.json
new file mode 100755
index 000000000..fdbe963f3
--- /dev/null
+++ b/src/addon/mod/forum/lang/ar.json
@@ -0,0 +1,21 @@
+{
+ "addanewdiscussion": "أضف موضوعا جديدا للنقاش",
+ "addanewquestion": "أضف سؤال جديد",
+ "addanewtopic": "أضف موضوع جديد",
+ "cannotadddiscussion": "إضافة نقشات لهذا المنتدى يتطلب عضوية مجموعات",
+ "cannotadddiscussionall": "ليس لديك الصلاحيات لإضافة نقاش لكل المشتركين.",
+ "couldnotadd": "تعذر إرسال مقالة نتيجة خطأ غير معروف",
+ "discussion": "نقاش",
+ "edit": "حرر",
+ "group": "مجموعة",
+ "message": "رسالة",
+ "modeflatnewestfirst": "عرض الردود حسب الأحدث",
+ "modeflatoldestfirst": "عرض الردود حسب الأقدم",
+ "modenested": "عرض الردود حسب المداخلات",
+ "posttoforum": "أضف المشاركة للمنتدى",
+ "re": "إعادة:",
+ "reply": "رد",
+ "subject": "الموضوع",
+ "unread": "لم يتم قرائتها",
+ "unreadpostsnumber": "{{$a}} مشاركات التي لم تقراء"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/bg.json b/src/addon/mod/forum/lang/bg.json
new file mode 100755
index 000000000..50773acbc
--- /dev/null
+++ b/src/addon/mod/forum/lang/bg.json
@@ -0,0 +1,27 @@
+{
+ "addanewdiscussion": "Добавяне на нова тема за обсъждане",
+ "addanewquestion": "Добавяне на нов въпрос",
+ "addanewtopic": "Добавяне на нова тема",
+ "cannotadddiscussion": "Добавяне на дискусии в този форум изисква членство в група.",
+ "cannotadddiscussionall": "Нямате разрешение да добавяте нова тема за всички участници.",
+ "cannotcreatediscussion": "Не може да се създаде нова дискусия",
+ "couldnotadd": "Вашето мнение не можа да се добави поради неизвестна грешка.",
+ "discussion": "Обсъждане",
+ "discussionpinned": "Забодена",
+ "discussionsubscription": "Абониране за обсъждането",
+ "edit": "Редактиране",
+ "erroremptymessage": "Мнението не може да бъде празно",
+ "erroremptysubject": "Темата на мнението не може да бъде празна.",
+ "forumnodiscussionsyet": "Няма теми за обсъждане в този форум",
+ "group": "Група",
+ "message": "Вашето мнение",
+ "modeflatnewestfirst": "Плоско показване на отговорите. Най-новият е първи.",
+ "modeflatoldestfirst": "Плоско показване на отговорите. Най-старият е първи.",
+ "modenested": "Показване на отговорите във вложена форма.",
+ "posttoforum": "Изпрати във форума",
+ "re": "Re:",
+ "reply": "Отговаряне",
+ "subject": "Тема",
+ "unread": "Непрочетено",
+ "unreadpostsnumber": "{{$a}} непрочетени мнения"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/ca.json b/src/addon/mod/forum/lang/ca.json
new file mode 100755
index 000000000..4eb87a715
--- /dev/null
+++ b/src/addon/mod/forum/lang/ca.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Afegeix un tema de debat nou",
+ "addanewquestion": "Afegeix una pregunta nova",
+ "addanewtopic": "Afegeix un tema nou",
+ "cannotadddiscussion": "Afegir debats en aquest fòrum requereix pertànyer al grup.",
+ "cannotadddiscussionall": "No teniu permís per a afegir un tema de debat nou per a tots els participants.",
+ "cannotcreatediscussion": "No s'ha pogut obrir un debat nou",
+ "couldnotadd": "Un error desconegut ha impedit afegir el vostre missatge",
+ "discussion": "Debat",
+ "discussionlocked": "Aquest fil de debat ha finalitzat, així que no admet respostes.",
+ "discussionpinned": "Fixat",
+ "discussionsubscription": "Subscripció als debats",
+ "edit": "Edita",
+ "erroremptymessage": "El missatge no pot estar buit",
+ "erroremptysubject": "La casella «Assumpte» no pot estar buida",
+ "errorgetforum": "S'ha produït un error descarregant les dades del fòrum.",
+ "errorgetgroups": "S'ha produït un error en descarregar la configuració del grup.",
+ "forumnodiscussionsyet": "Encara no hi ha temes de debat en aquest fòrum",
+ "group": "Grup",
+ "message": "Missatge",
+ "modeflatnewestfirst": "Visualitza les respostes, començant per la més recent",
+ "modeflatoldestfirst": "Visualitza les respostes, començant per la més antiga",
+ "modenested": "Visualitza les respostes escalonades",
+ "numdiscussions": "{{numdiscussions}} discussions",
+ "numreplies": "{{numreplies}} respostes",
+ "posttoforum": "Envia al fòrum",
+ "re": "Re:",
+ "refreshdiscussions": "Actualitza els debats",
+ "refreshposts": "Actualitza els missatges",
+ "reply": "Respon",
+ "subject": "Assumpte",
+ "unread": "No llegit",
+ "unreadpostsnumber": "{{$a}} missatges no llegits"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/cs.json b/src/addon/mod/forum/lang/cs.json
new file mode 100755
index 000000000..e4936763a
--- /dev/null
+++ b/src/addon/mod/forum/lang/cs.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Přidat nové téma diskuse",
+ "addanewquestion": "Přidat novou otázku",
+ "addanewtopic": "Přidat nové téma",
+ "cannotadddiscussion": "Abyste mohli přidávat diskuse do tohoto fóra, musíte být členy skupiny.",
+ "cannotadddiscussionall": "Nemáte oprávnění vkládat téma diskuse pro všechny účastníky.",
+ "cannotcreatediscussion": "Nelze vytvořit novou diskusi",
+ "couldnotadd": "Neznámá chyba! Nemohu přidat váš příspěvek.",
+ "discussion": "Diskuse",
+ "discussionlocked": "Tato diskuse byla uzavřena, takže již nemůže odpovídat.",
+ "discussionpinned": "Připnuté navrch",
+ "discussionsubscription": "Odebírání diskuse",
+ "edit": "Upravit",
+ "erroremptymessage": "Text příspěvku nemůže být prázdný",
+ "erroremptysubject": "Předmět příspěvku nemůže být prázdný",
+ "errorgetforum": "Chyba při načítání dat fóra.",
+ "errorgetgroups": "Chyba při načítání nastavení skupiny.",
+ "forumnodiscussionsyet": "V tomto diskusním fóru nejsou žádná témata",
+ "group": "Skupinové",
+ "message": "Zpráva",
+ "modeflatnewestfirst": "Zobrazit odpovědi za sebou (nejnovější nahoře)",
+ "modeflatoldestfirst": "Zobrazit odpovědi za sebou (nejstarší nahoře)",
+ "modenested": "Zobrazit hierarchii odpovědí (včetně textu)",
+ "numdiscussions": "{{numdiscussions}} diskusí",
+ "numreplies": "{{numreplies}} odpovědí",
+ "posttoforum": "Poslat do fóra",
+ "re": "Re:",
+ "refreshdiscussions": "Obnovit diskuse",
+ "refreshposts": "Obnovit diskusní příspěvky",
+ "reply": "Odpovědět",
+ "subject": "Předmět",
+ "unread": "Nepřečteno",
+ "unreadpostsnumber": "Nepřečtené příspěvky: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/da.json b/src/addon/mod/forum/lang/da.json
new file mode 100755
index 000000000..0266a6fd5
--- /dev/null
+++ b/src/addon/mod/forum/lang/da.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Tilføj en ny tråd",
+ "addanewquestion": "Tilføj et nyt spørgsmål",
+ "addanewtopic": "Tilføj nyt emne",
+ "cannotadddiscussion": "For at oprette en ny tråd i dette forum skal man være medlem af en gruppe.",
+ "cannotadddiscussionall": "Du har ikke tilladelse til at oprette en ny tråd for alle deltagere.",
+ "cannotcreatediscussion": "Kunne ikke oprette en ny tråd.",
+ "couldnotadd": "Kunne ikke tilføje dit indlæg pga. en ukendt fejl",
+ "discussion": "Tråd",
+ "discussionlocked": "Denne tråd er låst, så du kan ikke længere svare på den.",
+ "discussionpinned": "Fastgjort",
+ "discussionsubscription": "Abonnement på tråd",
+ "edit": "Rediger",
+ "erroremptymessage": "Indlægget kan ikke være tomt.",
+ "erroremptysubject": "Indlæggets emne kan ikke være tomt.",
+ "errorgetforum": "Fejl ved hentning af forumdata.",
+ "errorgetgroups": "Fejl ved hentning af gruppeindstillinger.",
+ "forumnodiscussionsyet": "Der er endnu ingen indlæg i dette forum.",
+ "group": "Gruppe",
+ "message": "Meddelelse",
+ "modeflatnewestfirst": "Kronologisk visning med seneste indlæg først",
+ "modeflatoldestfirst": "Kronologisk visning med første indlæg først",
+ "modenested": "Trådet visning, udfoldet",
+ "numdiscussions": "{{numdiscussions}} diskussioner",
+ "numreplies": "{{numdiscussions}} svar",
+ "posttoforum": "Send til forum",
+ "re": "Ang:",
+ "refreshdiscussions": "Genindlæs diskussioner",
+ "refreshposts": "Genindlæs indlæg",
+ "reply": "Svar",
+ "subject": "Emne",
+ "unread": "Ikke læst",
+ "unreadpostsnumber": "{{$a}} nye indlæg"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/de-du.json b/src/addon/mod/forum/lang/de-du.json
new file mode 100755
index 000000000..753191094
--- /dev/null
+++ b/src/addon/mod/forum/lang/de-du.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Neues Thema hinzufügen",
+ "addanewquestion": "Neue Frage hinzufügen",
+ "addanewtopic": "Neues Thema hinzufügen",
+ "cannotadddiscussion": "Nur Gruppenmitglieder dürfen Beiträge zum Forum hinzufügen.",
+ "cannotadddiscussionall": "Du darfst kein neues Thema für alle Teilnehmer/innen hinzufügen.",
+ "cannotcreatediscussion": "Das neue Thema wurde leider nicht gespeichert.",
+ "couldnotadd": "Dein Beitrag wurde nicht abgeschickt.",
+ "discussion": "Thema",
+ "discussionlocked": "Dieses Thema wurde gesperrt, so dass Sie hier nicht weiter antworten können.",
+ "discussionpinned": "Angepinnt",
+ "discussionsubscription": "Themenabonnement",
+ "edit": "Bearbeiten",
+ "erroremptymessage": "Du hast keinen Text geschrieben.",
+ "erroremptysubject": "Du hast den Betreff vergessen.",
+ "errorgetforum": "Fehler beim Laden der Forumsdaten",
+ "errorgetgroups": "Fehler beim Laden der Gruppeneinstellungen",
+ "forumnodiscussionsyet": "Keine Themen im Forum",
+ "group": "Gruppe",
+ "message": "Mitteilung",
+ "modeflatnewestfirst": "Anzeige nach Zeit (neu > alt)",
+ "modeflatoldestfirst": "Anzeige nach Zeit (alt > neu)",
+ "modenested": "Anzeige geschachtelt",
+ "numdiscussions": "{{numdiscussions}} Themen",
+ "numreplies": "{{numreplies}} Antworten",
+ "posttoforum": "Beitrag absenden",
+ "re": "Re:",
+ "refreshdiscussions": "Themen aktualisieren",
+ "refreshposts": "Forenbeiträge aktualisieren",
+ "reply": "Antworten",
+ "subject": "Betreff",
+ "unread": "Ungelesen",
+ "unreadpostsnumber": "{{$a}} ungelesene Beiträge"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/de.json b/src/addon/mod/forum/lang/de.json
new file mode 100755
index 000000000..1b7f49dd8
--- /dev/null
+++ b/src/addon/mod/forum/lang/de.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Neues Thema hinzufügen",
+ "addanewquestion": "Neue Frage hinzufügen",
+ "addanewtopic": "Neues Thema hinzufügen",
+ "cannotadddiscussion": "Nur Gruppenmitglieder dürfen Beiträge zum Forum hinzufügen.",
+ "cannotadddiscussionall": "Sie dürfen kein neues Thema für alle Teilnehmer/innen hinzufügen.",
+ "cannotcreatediscussion": "Das neue Thema wurde leider nicht gespeichert.",
+ "couldnotadd": "Der Beitrag wurde wegen eines Fehlers nicht hinzugefügt.",
+ "discussion": "Thema",
+ "discussionlocked": "Dieses Thema wurde gesperrt, so dass Sie hier nicht weiter antworten können.",
+ "discussionpinned": "Angepinnt",
+ "discussionsubscription": "Themenabonnement",
+ "edit": "Bearbeiten",
+ "erroremptymessage": "Die Mitteilung darf nicht leer sein.",
+ "erroremptysubject": "Der Betreff darf nicht leer sein.",
+ "errorgetforum": "Fehler beim Laden der Forumsdaten",
+ "errorgetgroups": "Fehler beim Laden der Gruppeneinstellungen",
+ "forumnodiscussionsyet": "Keine Themen im Forum",
+ "group": "Gruppe",
+ "message": "Mitteilung",
+ "modeflatnewestfirst": "Anzeige nach Zeit (neu > alt)",
+ "modeflatoldestfirst": "Anzeige nach Zeit (alt > neu)",
+ "modenested": "Anzeige geschachtelt",
+ "numdiscussions": "{{numdiscussions}} Themen",
+ "numreplies": "{{numreplies}} Antworten",
+ "posttoforum": "Beitrag absenden",
+ "re": "Re:",
+ "refreshdiscussions": "Themen aktualisieren",
+ "refreshposts": "Forenbeiträge aktualisieren",
+ "reply": "Antworten",
+ "subject": "Betreff",
+ "unread": "Ungelesen",
+ "unreadpostsnumber": "{{$a}} ungelesene Beiträge"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/el.json b/src/addon/mod/forum/lang/el.json
new file mode 100755
index 000000000..28c908adb
--- /dev/null
+++ b/src/addon/mod/forum/lang/el.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "Προσθήκη νέου θέματος συζήτησης",
+ "addanewquestion": "Προσθήκη μιας νέας ερώτησης",
+ "addanewtopic": "Προσθήκη νέου θέματος",
+ "cannotadddiscussion": "Η προσθήκη συζητήσεων σε αυτή την ομάδα συζήτησης απαιτεί συμμετοχή σε ομάδα.",
+ "cannotadddiscussionall": "Δεν έχετε δικαίωμα να προσθέσετε ένα νέο θέμα συζήτησης για όλους τους συμμετέχοντες.",
+ "cannotcreatediscussion": "Δεν ήταν δυνατό να δημιουργηθεί η νέα συζήτηση",
+ "couldnotadd": "Δεν ήταν δυνατή η προσθήκη του μηνύματός σας λόγω άγνωστου σφάλματος",
+ "discussion": "Συζήτηση",
+ "discussionpinned": "Καρφιτσωμένο",
+ "discussionsubscription": "Εγγραφή στη συζήτηση",
+ "edit": "Επεξεργασία",
+ "erroremptysubject": "Το θέμα της δημοσίευσης δεν μπορεί να είναι κενό",
+ "errorgetforum": "Σφάλμα κατά τη λήψη των δεδομένων του forum.",
+ "errorgetgroups": "Σφάλμα κατά τη λήψη των ρυθμίσεων της ομάδας.",
+ "forumnodiscussionsyet": "Δεν υπάρχουν ακόμα θέματα συζήτησης σε αυτό το forum.",
+ "group": "Ομάδα συμμετεχόντων",
+ "message": "Μήνυμα",
+ "modeflatnewestfirst": "Εμφάνιση απαντήσεων οριζοντίως, με την πιο πρόσφατη πρώτη",
+ "modeflatoldestfirst": "Εμφάνιση απαντήσεων οριζοντίως, με την παλαιότερη πρώτη",
+ "modenested": "Εμφάνιση απαντήσεων σε φωλιασμένη μορφή",
+ "numdiscussions": "{{numdiscussions}} συζητήσεις",
+ "numreplies": "{{numreplies}} απαντήσεις",
+ "posttoforum": "Δημοσίευση στην ομάδα συζητήσεων",
+ "re": "Απάντηση:",
+ "refreshdiscussions": "Ανανεώστε τις συζητήσεις",
+ "refreshposts": "Ανανεώστε τα μηνύματα της συζήτησης",
+ "reply": "Απάντηση",
+ "subject": "Θέμα",
+ "unread": "Μη αναγνωσμένο",
+ "unreadpostsnumber": "{{$a}} μη αναγνωσμένες δημοσιεύσεις"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/es-mx.json b/src/addon/mod/forum/lang/es-mx.json
new file mode 100755
index 000000000..578d332e9
--- /dev/null
+++ b/src/addon/mod/forum/lang/es-mx.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Añadir un nuevo tópico/tema de discusión aquí",
+ "addanewquestion": "Añadir una nueva pregunta",
+ "addanewtopic": "Añadir un nuevo tópico/tema",
+ "cannotadddiscussion": "Para agregar discusiones a este foro se requiere pertenecer al grupo.",
+ "cannotadddiscussionall": "No tiene permiso para añadir un nuevo tópico/tema de discusión para todos los participantes.",
+ "cannotcreatediscussion": "No se pudo crear una discusión nueva",
+ "couldnotadd": "No se puede colocar su mensaje debido a un problema desconocido.",
+ "discussion": "Discusión",
+ "discussionlocked": "Esta discusión ha sido bloqueada, por lo que Usted ya no puede responder a ella.",
+ "discussionpinned": "Apuntalada",
+ "discussionsubscription": "Suscripción a discusión",
+ "edit": "Editar",
+ "erroremptymessage": "El mensaje no puede estar vacío",
+ "erroremptysubject": "El asunto del mensaje no puede estar vacío.",
+ "errorgetforum": "Error al obtener datos del foro.",
+ "errorgetgroups": "Error al obtener configuraciones de grupo.",
+ "forumnodiscussionsyet": "Todavía no hay tópicos de discusión en este foro.",
+ "group": "Grupo",
+ "message": "Mensaje",
+ "modeflatnewestfirst": "Ordenar desde el más reciente",
+ "modeflatoldestfirst": "Ordenar desde el más antiguo",
+ "modenested": "Mostrar respuestas anidadas",
+ "numdiscussions": "{{numdiscussions}} discusiones",
+ "numreplies": "{{numreplies}} respuestas",
+ "posttoforum": "Enviar al foro",
+ "re": "Re:",
+ "refreshdiscussions": "Refrescar discusiones",
+ "refreshposts": "Refrescar publicaciones",
+ "reply": "Responder (réplica)",
+ "subject": "Asunto",
+ "unread": "No leído",
+ "unreadpostsnumber": "{{$a}} mensajes no leídos"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/es.json b/src/addon/mod/forum/lang/es.json
new file mode 100755
index 000000000..d89ba83b8
--- /dev/null
+++ b/src/addon/mod/forum/lang/es.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Añadir un nuevo tema de discusión",
+ "addanewquestion": "Añadir una nueva pregunta",
+ "addanewtopic": "Añadir un nuevo tema",
+ "cannotadddiscussion": "Para añadir debates a este foro hay que ser miembro de un grupo.",
+ "cannotadddiscussionall": "No tiene permiso para añadir un nuevo tema de discusión para todos los participantes.",
+ "cannotcreatediscussion": "No se pudo crear un debate nuevo",
+ "couldnotadd": "No se puede colocar su mensaje debido a un problema desconocido.",
+ "discussion": "Tema",
+ "discussionlocked": "Este tema ha sido bloqueado así que no podrás responder en el.",
+ "discussionpinned": "Fijado",
+ "discussionsubscription": "Suscripción a la discusión",
+ "edit": "Editar",
+ "erroremptymessage": "El mensaje no puede estar vacío",
+ "erroremptysubject": "El asunto del mensaje no puede estar vacío.",
+ "errorgetforum": "Error al obtener datos del foro.",
+ "errorgetgroups": "Error al obtener los datos del grupo.",
+ "forumnodiscussionsyet": "No existen temas de discusión en este foro",
+ "group": "Grupo",
+ "message": "Mensaje",
+ "modeflatnewestfirst": "Ordenar desde el más reciente",
+ "modeflatoldestfirst": "Ordenar desde el más antiguo",
+ "modenested": "Mostrar respuestas anidadas",
+ "numdiscussions": "{{numdiscussions}} discusiones",
+ "numreplies": "{{numreplies}} respuestas",
+ "posttoforum": "Enviar al foro",
+ "re": "Re:",
+ "refreshdiscussions": "Actualizar foro",
+ "refreshposts": "Actualizar publicaciones del foro",
+ "reply": "Responder",
+ "subject": "Asunto",
+ "unread": "No leído",
+ "unreadpostsnumber": "{{$a}} mensajes no leídos"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/eu.json b/src/addon/mod/forum/lang/eu.json
new file mode 100755
index 000000000..b32ef2fbf
--- /dev/null
+++ b/src/addon/mod/forum/lang/eu.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Mezua idatzi",
+ "addanewquestion": "Galdera gehitu",
+ "addanewtopic": "Gaia gehitu",
+ "cannotadddiscussion": "Foro honetan eztabaidak gehitzeko talde bateko kide izan behar da",
+ "cannotadddiscussionall": "Ez duzu baimenik partaide guztientzako eztabaida-gai berririk gehitzeko.",
+ "cannotcreatediscussion": "Ezin da eztabaida sortu",
+ "couldnotadd": "Ezin izan da zure mezua gehitu; errore bat gertatu da nonbait.",
+ "discussion": "Eztabaida",
+ "discussionlocked": "Eztabaida hau blokeatu da eta beraz aurrerantzean ezingo duzu bertan erantzun.",
+ "discussionpinned": "Finkatuta",
+ "discussionsubscription": "Eztabaidaren harpidetza",
+ "edit": "Editatu",
+ "erroremptymessage": "Mezua ezin da hutsik egon",
+ "erroremptysubject": "Mezuaren gaia ezin da hutsik egon",
+ "errorgetforum": "Errorea foroko datuak jasotzean.",
+ "errorgetgroups": "Errorea talde-ezarpenak eskuratzean.",
+ "forumnodiscussionsyet": "Oraindik ez dago elkarrizketarik foro honetan.",
+ "group": "Taldea",
+ "message": "Mezua",
+ "modeflatnewestfirst": "Erantzunak era lauan erakutsi, berrienak lehen",
+ "modeflatoldestfirst": "Erantzunak era lauan erakutsi, zaharrenak lehen",
+ "modenested": "Erantzunak hariaren arabera erakutsi",
+ "numdiscussions": "{{numdiscussions}} elkarrizketa",
+ "numreplies": "{{numreplies}} erantzun",
+ "posttoforum": "Mezua forora bidali",
+ "re": "Er:",
+ "refreshdiscussions": "Freskatu eztabaidak",
+ "refreshposts": "Freskatu eztabaidetako mezuak",
+ "reply": "Erantzun",
+ "subject": "Gaia",
+ "unread": "Irakurri gabe",
+ "unreadpostsnumber": "Irakurri gabeko {{$a}} mezu"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/fa.json b/src/addon/mod/forum/lang/fa.json
new file mode 100755
index 000000000..9e39285cd
--- /dev/null
+++ b/src/addon/mod/forum/lang/fa.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "شروع یک مباحثهٔ جدید",
+ "addanewquestion": "طرح یک سؤال جدید",
+ "addanewtopic": "طرح مباحثهٔ جدید",
+ "cannotadddiscussion": "طرح مباحثه در این تالار نیازمند عضویت در گروه است.",
+ "cannotadddiscussionall": "شما مجوز شروع کردن یک مباحثهٔ جدید برای همهٔ اعضا را ندارید.",
+ "cannotcreatediscussion": "ایجاد مباحثهٔجدید ممکن نشد",
+ "couldnotadd": "به دلیل بروز یک خطای ناشناخته ارائه مطلب شما امکان پذیر نبود",
+ "discussion": "مباحثه",
+ "discussionlocked": "این مباحثه قفل شده است و در نتیجه دیگر نمیتوانید در آن شرکت کنید.",
+ "discussionpinned": "سنجاقشده",
+ "discussionsubscription": "آبونهشدن در مباحثه",
+ "edit": "ویرایش",
+ "erroremptymessage": "متن ارسالی نمیتواند خالی باشد",
+ "erroremptysubject": "موضوع مطلب نمیتواند خالی باشد.",
+ "forumnodiscussionsyet": "هنوز هیچ مباحثه ای در این تالار شروع نشده است.",
+ "group": "گروه",
+ "message": "متن",
+ "modeflatnewestfirst": "نمایش مطالب به صورت مسطح (از جدید به قدیمی)",
+ "modeflatoldestfirst": "نمایش مطالب به صورت مسطح (از قدیمی به جدید)",
+ "modenested": "نمایش مطالب به صورت تو در تو",
+ "numdiscussions": "{{numdiscussions}} مباحثه",
+ "numreplies": "{{numreplies}} پاسخ",
+ "posttoforum": "طرح در تالار",
+ "re": "در پاسخ به:",
+ "refreshdiscussions": "تازهسازی مباحثهها",
+ "refreshposts": "تازهسازی مطالب مباحثه",
+ "reply": "ارسال پاسخ",
+ "subject": "موضوع",
+ "unread": "خوانده نشده",
+ "unreadpostsnumber": "{{$a}} مطلب خوانده نشده"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/fi.json b/src/addon/mod/forum/lang/fi.json
new file mode 100755
index 000000000..69a6e1ddf
--- /dev/null
+++ b/src/addon/mod/forum/lang/fi.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Lisää uusi keskustelu",
+ "addanewquestion": "Lisää uusi kysymys",
+ "addanewtopic": "Lisää uusi aihe",
+ "cannotadddiscussion": "Vain ryhmän jäsenet voivat lisätä viestejä tälle keskustelualueelle.",
+ "cannotadddiscussionall": "Sinulla ei ole oikeuksia lisätä kaikille osallistujille näkyvää viestiä.",
+ "cannotcreatediscussion": "Ei voitu luoda uutta keskustelua",
+ "couldnotadd": "Viestiäsi ei voida lisätä tuntemattoman virheen takia.",
+ "discussion": "Keskustelu",
+ "discussionlocked": "Keskustelu on lukittu, joten et voi enää vastata siihen.",
+ "discussionpinned": "Kiinnitetty",
+ "discussionsubscription": "Keskustelualueviestitilaus",
+ "edit": "Muokkaa",
+ "erroremptymessage": "Viestin tekstiosa ei voi olla tyhjä",
+ "erroremptysubject": "Viestin otsikko ei voi olla tyhjä",
+ "errorgetforum": "Virhe haettaessa keskustelualueen tietoja.",
+ "errorgetgroups": "Virhe haettaessa ryhmäasetuksia.",
+ "forumnodiscussionsyet": "Tällä keskustelualueella ei ole vielä viestejä.",
+ "group": "Ryhmä",
+ "message": "Viesti",
+ "modeflatnewestfirst": "Näytä vastaukset peräkkäin, uusin ensin",
+ "modeflatoldestfirst": "Näytä vastaukset peräkkäin, vanhin ensin",
+ "modenested": "Näytä vastaukset sisäkkäin",
+ "numdiscussions": "{{numdiscussions}} keskustelua",
+ "numreplies": "{{numreplies}} vastausta",
+ "posttoforum": "Lähetä viesti",
+ "re": "Re:",
+ "refreshdiscussions": "Päivitä keskustelut",
+ "refreshposts": "Päivitä keskustelujen viestit",
+ "reply": "Vastaa",
+ "subject": "Aihe",
+ "unread": "Lukematta",
+ "unreadpostsnumber": "{{$a}} lukematonta viestiä"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/fr.json b/src/addon/mod/forum/lang/fr.json
new file mode 100755
index 000000000..5455fdcdd
--- /dev/null
+++ b/src/addon/mod/forum/lang/fr.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Ajouter une discussion",
+ "addanewquestion": "Ajouter une nouvelle question",
+ "addanewtopic": "Ajouter un nouveau sujet",
+ "cannotadddiscussion": "Pour créer une discussion dans ce forum, vous devez être membre d'un groupe.",
+ "cannotadddiscussionall": "Vous n'avez pas les droits d'accès requis pour lancer une nouvelle discussion pour tous les participants.",
+ "cannotcreatediscussion": "Impossible de créer une nouvelle discussion",
+ "couldnotadd": "Impossible d'ajouter votre message à cause d'une erreur indéterminée",
+ "discussion": "Discussion",
+ "discussionlocked": "Cette discussion a été verrouillée. Vous ne pouvez plus y répondre.",
+ "discussionpinned": "Épinglé",
+ "discussionsubscription": "Abonnement à la discussion",
+ "edit": "Modifier",
+ "erroremptymessage": "Un message ne peut pas être vide",
+ "erroremptysubject": "L'objet d'un message ne peut pas être vide",
+ "errorgetforum": "Erreur de récupération des données de forum.",
+ "errorgetgroups": "Erreur lors de l'obtention des réglages de groupe.",
+ "forumnodiscussionsyet": "Il n'y a pas encore de discussion dans ce forum.",
+ "group": "Groupe",
+ "message": "Message",
+ "modeflatnewestfirst": "Réponses en ligne, la plus récente en premier",
+ "modeflatoldestfirst": "Réponses en ligne, la plus ancienne en premier",
+ "modenested": "Réponses emboîtées",
+ "numdiscussions": "{{numdiscussions}} discussions",
+ "numreplies": "{{numreplies}} réponses",
+ "posttoforum": "Envoyer",
+ "re": "Re:",
+ "refreshdiscussions": "Rafraîchir les discussions",
+ "refreshposts": "Actualiser les messages",
+ "reply": "Répondre",
+ "subject": "Sujet",
+ "unread": "Non lu",
+ "unreadpostsnumber": "{{$a}} messages non lus"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/he.json b/src/addon/mod/forum/lang/he.json
new file mode 100755
index 000000000..ebe6a72ef
--- /dev/null
+++ b/src/addon/mod/forum/lang/he.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "הוספת נושא חדש לדיון",
+ "addanewquestion": "הוספת שאלה חדשה",
+ "addanewtopic": "הוספת נושא חדש",
+ "cannotadddiscussion": "על מנת שתוכל להוסיף דיונים לפורום עלייך להיות חבר בקבוצה.",
+ "cannotadddiscussionall": "אין לך הרשאה להוסיף נושא דיון חדש עבור כל המשתתפים.",
+ "cannotcreatediscussion": "כשלון ביצירת דיון חדש.",
+ "couldnotadd": "ההודעה שלך לא פורסמה עקב תקלה בלתי מזוהה",
+ "discussion": "דיון",
+ "discussionlocked": "הדיון ננעל, כך שלא ניתן יותר להגיב אליו.",
+ "discussionpinned": "בראש הרשימה",
+ "discussionsubscription": "מנוי לעדכונים בדיון",
+ "edit": "עריכה",
+ "erroremptymessage": "הודעת הפרסום איננה יכולה להיות ריקה",
+ "erroremptysubject": "הנושא הפרסום אינו יכול להיות ריק",
+ "errorgetforum": "שגיאה בטעינת מידע הפורום.",
+ "errorgetgroups": "שגיאה בטעינת הגדרות קבוצה.",
+ "forumnodiscussionsyet": "עדיין לא קיימים נושאי דיונים בפורום זה.",
+ "group": "קבוצה",
+ "message": "הודעה",
+ "modeflatnewestfirst": "הצגת תגובות בצורה שטוחה, החדשות ביותר ראשונות",
+ "modeflatoldestfirst": "הצגת תגובות בצורה שטוחה, הישנות ביותר ראשונות",
+ "modenested": "הצגת תגובות באופן מקונן",
+ "numdiscussions": "{{numdiscussions}} דיונים",
+ "numreplies": "{{numreplies}} תגובות",
+ "posttoforum": "שליחת הודעה לפורום",
+ "re": "תשובה ל:",
+ "reply": "תגובה",
+ "subject": "נושא",
+ "unread": "לא נקרא",
+ "unreadpostsnumber": "{{$a}} הודעות שלא נקראו"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/hr.json b/src/addon/mod/forum/lang/hr.json
new file mode 100755
index 000000000..963936bde
--- /dev/null
+++ b/src/addon/mod/forum/lang/hr.json
@@ -0,0 +1,26 @@
+{
+ "addanewdiscussion": "Dodaj novu raspravu",
+ "addanewquestion": "Dodajte novo pitanje",
+ "addanewtopic": "Dodajte novu temu",
+ "cannotadddiscussion": "Za dodavanje rasprave u ovaj forum treba biti član grupe.",
+ "cannotadddiscussionall": "Nemate ovlasti da biste dodali novu raspravu za sve sudionike. ",
+ "cannotcreatediscussion": "Nije moguće otvoriti novu raspravu",
+ "couldnotadd": "Nažalost, nije moguće dodati vašu poruku zbog nepoznate pogreške",
+ "discussion": "Rasprava",
+ "discussionpinned": "Prikvačena na vrh",
+ "discussionsubscription": "Pretplata na raspravu",
+ "edit": "Promijeni",
+ "erroremptymessage": "Tijelo poruke ne može biti prazno",
+ "erroremptysubject": "Naslov poruke ne može biti prazan",
+ "group": "Grupa",
+ "message": "Poruka",
+ "modeflatnewestfirst": "Prikaz odgovora, počevši s najnovijim",
+ "modeflatoldestfirst": "Prikaz odgovora, počevši s najstarijim",
+ "modenested": "Prikaz odgovora u hijerarhijskoj strukturi",
+ "posttoforum": "Pošaljite poruku na forum",
+ "re": "Re:",
+ "reply": "Odgovori (reply)",
+ "subject": "Naslov",
+ "unread": "Nepročitano",
+ "unreadpostsnumber": "Broj nepročitanih poruka: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/hu.json b/src/addon/mod/forum/lang/hu.json
new file mode 100755
index 000000000..0a4bdd4b1
--- /dev/null
+++ b/src/addon/mod/forum/lang/hu.json
@@ -0,0 +1,27 @@
+{
+ "addanewdiscussion": "Új vitatéma hozzáadása",
+ "addanewquestion": "Új kérdés hozzáadása",
+ "addanewtopic": "Új téma hozzáadása",
+ "cannotadddiscussion": "Ahhoz, hogy hozzáadhasson vitát, ezen a fórumon csoporttagságra van szükség.",
+ "cannotadddiscussionall": "Ön nem adhat hozzá új vitatémát az összes résztvevő számára.",
+ "cannotcreatediscussion": "Nem sikerült új vitát létrehozni.",
+ "couldnotadd": "Ismeretlen hiba miatt a hozzászólást nem lehetett hozzáadni",
+ "discussion": "Vita",
+ "discussionlocked": "A vitát lezárták, már nem szólhat hozzá.",
+ "discussionpinned": "Megjelölt",
+ "discussionsubscription": "Megbeszélésre való feliratkozás",
+ "edit": "Szerkesztés",
+ "erroremptymessage": "A hozzászólás szövege nem lehet üres.",
+ "erroremptysubject": "A hozzászólás tárgya nem lehet üres.",
+ "group": "Csoport",
+ "message": "Üzenet",
+ "modeflatnewestfirst": "Válaszok egymás után, a legújabbal kezdve",
+ "modeflatoldestfirst": "Válaszok egymás után, a legrégebbivel kezdve",
+ "modenested": "Válaszok beágyazott formában",
+ "posttoforum": "Hozzászólás a fórumhoz",
+ "re": "Tárgy:",
+ "reply": "Válasz",
+ "subject": "Téma",
+ "unread": "Elolvasatlan",
+ "unreadpostsnumber": "{{$a}} elolvasatlan hozzászólás"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/it.json b/src/addon/mod/forum/lang/it.json
new file mode 100755
index 000000000..86afa7e1b
--- /dev/null
+++ b/src/addon/mod/forum/lang/it.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "Aggiungi un argomento di discussione",
+ "addanewquestion": "Aggiungi nuova domanda",
+ "addanewtopic": "Aggiungi nuovo argomento",
+ "cannotadddiscussion": "Per aggiungere discussioni in questo forum è necessario appartenere ad un gruppo.",
+ "cannotadddiscussionall": "Non hai il permesso per aggiungere un argomento di discussione per tutti i partecipanti.",
+ "cannotcreatediscussion": "Non è stato possibile creare una nuova discussione",
+ "couldnotadd": "Non è possibile aggiungere l'intervento a causa di un errore sconosciuto.",
+ "discussion": "Discussione",
+ "discussionlocked": "Questa discussione è stata bloccata e non è più possibile intervenire.",
+ "discussionpinned": "In evidenza",
+ "discussionsubscription": "Sottoscrizione della discussione",
+ "edit": "Modifica",
+ "erroremptymessage": "Il corpo del messaggio non può essere vuoto",
+ "erroremptysubject": "L'oggetto non può essere vuoto",
+ "errorgetforum": "Si è verificato un errore durante la ricezione dei dati del forum.",
+ "errorgetgroups": "Si è verificato un errore durante la ricezione delle impostazioni gruppo.",
+ "forumnodiscussionsyet": "In questo forum non sono presenti discussioni.",
+ "group": "Gruppo",
+ "message": "Messaggio",
+ "modeflatnewestfirst": "Visualizza le repliche in formato lineare, con le più recenti all'inizio",
+ "modeflatoldestfirst": "Visualizza le repliche in formato lineare, con le più vecchie all'inizio",
+ "modenested": "Visualizza le repliche in formato nidificato",
+ "numdiscussions": "{{numdiscussions}} discussioni",
+ "numreplies": "{{numreplies}} interventi",
+ "posttoforum": "Invia al forum",
+ "re": "Re:",
+ "reply": "Rispondi",
+ "subject": "Oggetto",
+ "unread": "Non letto",
+ "unreadpostsnumber": "{{$a}} interventi non letti"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/ja.json b/src/addon/mod/forum/lang/ja.json
new file mode 100755
index 000000000..9ac0e9778
--- /dev/null
+++ b/src/addon/mod/forum/lang/ja.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "新しいディスカッショントピックを追加する",
+ "addanewquestion": "新しい質問を追加する",
+ "addanewtopic": "新しいトピックを追加する",
+ "cannotadddiscussion": "このフォーラムにディスカッションを追加するにはグループのメンバーである必要があります。",
+ "cannotadddiscussionall": "あなたにはすべての参加者のための新しいディスカッショントピックを追加するパーミッションがありません。",
+ "cannotcreatediscussion": "新しいディスカッションを作成できませんでした。",
+ "couldnotadd": "不明なエラーのためあなたの投稿を追加できませんでした。",
+ "discussion": "ディスカッション",
+ "discussionlocked": "このディスカッションはロックされているため、あなたは返信することはできません。",
+ "discussionpinned": "ピン留め",
+ "discussionsubscription": "ディスカッション購読",
+ "edit": "編集",
+ "erroremptymessage": "投稿メッセージを空にすることはできません。",
+ "erroremptysubject": "投稿件名を空にすることはできません。",
+ "errorgetforum": "フォーラムのデータ取得中にエラーが発生しました。",
+ "errorgetgroups": "グループ設定の取得中にエラーが発生しました。",
+ "forumnodiscussionsyet": "このフォーラムにはまだディスカッショントピックがありません",
+ "group": "グループ",
+ "message": "メッセージ",
+ "modeflatnewestfirst": "返信を新しいものからフラット表示する",
+ "modeflatoldestfirst": "返信を古いものからフラット表示する",
+ "modenested": "返信をネスト表示する",
+ "numdiscussions": "ディスカッション数 {{numdiscussions}}",
+ "numreplies": "返信数 {{numreplies}}",
+ "posttoforum": "フォーラムに投稿する",
+ "re": "Re:",
+ "refreshdiscussions": "ディスカッションをリフレッシュ",
+ "refreshposts": "ディスカッション投稿をリフレッシュ",
+ "reply": "返信",
+ "subject": "件名",
+ "unread": "未読",
+ "unreadpostsnumber": "未読件数 {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/ko.json b/src/addon/mod/forum/lang/ko.json
new file mode 100755
index 000000000..d40cf0657
--- /dev/null
+++ b/src/addon/mod/forum/lang/ko.json
@@ -0,0 +1,24 @@
+{
+ "addanewdiscussion": "새 토론 주제 추가",
+ "addanewquestion": "새 질문 추가",
+ "addanewtopic": "새로운 주제 추가",
+ "cannotadddiscussion": "포럼에 의견을 제시하려면 모둠의 구성원이어야 합니다.",
+ "cannotadddiscussionall": "공동의 토론 주제 추가 권한이 없습니다.",
+ "cannotcreatediscussion": "새 토론을 생성할 수 없음",
+ "couldnotadd": "알 수 없는 오류로 인해 게시할 수 없음",
+ "discussion": "제목",
+ "edit": "수정",
+ "erroremptymessage": "게시 메세지는 비어 있을 수 없습니다.",
+ "erroremptysubject": "제목이 없으면 안됩니다.",
+ "group": "모둠",
+ "message": "메세지",
+ "modeflatnewestfirst": "새 답글부터 내용 보기",
+ "modeflatoldestfirst": "옛 답글부터 내용 보기",
+ "modenested": "주제 중심으로 답글 보기",
+ "posttoforum": "포럼에 올리기",
+ "re": "회신:",
+ "reply": "답글",
+ "subject": "제목",
+ "unread": "읽지 않음",
+ "unreadpostsnumber": "{{$a}} 개의 읽지 않은 글"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/lt.json b/src/addon/mod/forum/lang/lt.json
new file mode 100755
index 000000000..af6e6924e
--- /dev/null
+++ b/src/addon/mod/forum/lang/lt.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Įtraukti naują diskusijų temą",
+ "addanewquestion": "Įtraukti naują klausimą",
+ "addanewtopic": "Įtraukti naują temą",
+ "cannotadddiscussion": "Norint įtraukti diskusijų į šį forumą, būtina grupės narystė.",
+ "cannotadddiscussionall": "Neturite teisės įtraukti naujos diskusijų temos, skirtos visiems dalyviams.",
+ "cannotcreatediscussion": "Nepavyko sukurti naujos diskusijos",
+ "couldnotadd": "Jūsų skelbimo nepavyko įtraukti dėl nežinomos klaidos",
+ "discussion": "Pavadinimas",
+ "discussionlocked": "Ši diskusija buvo užrakinta, todėl jūs negalite pateikti atsakymus joje.",
+ "discussionpinned": "Prisegta",
+ "discussionsubscription": "Diskusijos prenumerata",
+ "edit": "Redaguoti",
+ "erroremptymessage": "Skelbimo žinutė negali būti tuščia",
+ "erroremptysubject": "Skelbimo tema negali būti tuščia.",
+ "errorgetforum": "Klaida gaunant forumo duomenis.",
+ "errorgetgroups": "Klaida gaunant grupės nustatymus.",
+ "forumnodiscussionsyet": "Pokalbio temų forume dar nėra.",
+ "group": "Grupė",
+ "message": "Žinutės tekstas",
+ "modeflatnewestfirst": "Rodyti atsakymus standartiškai, pirmiausia rodant naujausią",
+ "modeflatoldestfirst": "Rodyti atsakymus standartiškai, pirmiausia rodant seniausią",
+ "modenested": "Rodyti atsakymus įdėtuoju formatu",
+ "numdiscussions": "Pokalbių {{numdiscussions}}",
+ "numreplies": "Atsakymų {{numreplies}}",
+ "posttoforum": "Skelbti forume",
+ "re": "Ats.:",
+ "refreshdiscussions": "Atnaujinti pokalbius",
+ "refreshposts": "Atnaujinti pokalbių įrašus",
+ "reply": "Atsakyti",
+ "subject": "Temos pavadinimas",
+ "unread": "Neperskaityta",
+ "unreadpostsnumber": "Neperskaitytų skelbimų: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/mr.json b/src/addon/mod/forum/lang/mr.json
new file mode 100755
index 000000000..49da89040
--- /dev/null
+++ b/src/addon/mod/forum/lang/mr.json
@@ -0,0 +1,13 @@
+{
+ "discussion": "चर्चा",
+ "edit": "तपासा",
+ "errorgetforum": "फोरम डेटा मिळवताना त्रुटी",
+ "errorgetgroups": "गट सेटिंग्ज प्राप्त करताना त्रुटी.",
+ "forumnodiscussionsyet": "या फोरममध्ये अद्याप चर्चा झालेले कोणतेही मुद्दे नाहीत",
+ "group": "ग्रुप्",
+ "message": "संदेश",
+ "numdiscussions": "{{Numdiscussions}} चर्चा",
+ "numreplies": "{{Numreplies}} प्रत्युत्तरे",
+ "refreshdiscussions": "चर्चा रीफ्रेश करा",
+ "refreshposts": "चर्चा पोस्ट रीफ्रेश करा"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/nl.json b/src/addon/mod/forum/lang/nl.json
new file mode 100755
index 000000000..e54c6ae39
--- /dev/null
+++ b/src/addon/mod/forum/lang/nl.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Voeg een nieuw discussieonderwerp toe",
+ "addanewquestion": "Voeg een nieuwe vraag toe",
+ "addanewtopic": "Voeg een nieuw onderwerp toe",
+ "cannotadddiscussion": "Om discussies aan dit forum te kunnen toevoegen, moet je lid zijn van deze groep",
+ "cannotadddiscussionall": "Je hebt het recht niet om een nieuw discussieonderwerp te starten voor alle deelnemers.",
+ "cannotcreatediscussion": "Kon geen nieuwe discussie starten",
+ "couldnotadd": "Door een onbekende fout was het niet mogelijk om je bericht toe te voegen .",
+ "discussion": "Discussie",
+ "discussionlocked": "Deze discussie is geblokkeerd, zodat u niet meer kan beantwoorden.",
+ "discussionpinned": "Vastgepind",
+ "discussionsubscription": "Inschrijving discussie",
+ "edit": "Wijzig",
+ "erroremptymessage": "Bericht kan niet leeg zijn",
+ "erroremptysubject": "Onderwerp kan niet leeg zijn",
+ "errorgetforum": "Fout bij het ophalen van forumgegevens",
+ "errorgetgroups": "Fout bij het ophalen van groepinstellingen.",
+ "forumnodiscussionsyet": "Er zijn nog geen discussies in dit forum.",
+ "group": "Groep",
+ "message": "Bericht",
+ "modeflatnewestfirst": "Laat de antwoorden in één lijst zien, met de nieuwste eerst",
+ "modeflatoldestfirst": "Laat de antwoorden in één lijst zien, met de oudste eerst",
+ "modenested": "Laat de antwoorden 'genest' zien",
+ "numdiscussions": "{{numdiscussions}} discussies",
+ "numreplies": "{{numreplies}} antwoorden",
+ "posttoforum": "Plaats op het forum",
+ "re": "Re:",
+ "refreshdiscussions": "Discussie verversen",
+ "refreshposts": "Discussieberichten verversen",
+ "reply": "Antwoord",
+ "subject": "Onderwerp",
+ "unread": "Niet gelezen",
+ "unreadpostsnumber": "{{$a}} ongelezen berichten"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/no.json b/src/addon/mod/forum/lang/no.json
new file mode 100755
index 000000000..e83c6c0aa
--- /dev/null
+++ b/src/addon/mod/forum/lang/no.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Skriv i dette forumet",
+ "addanewquestion": "Legg til et nytt spørsmål",
+ "addanewtopic": "Skriv i dette forumet",
+ "cannotadddiscussion": "Du må være medlem av en gruppe for å legge til ny diskusjon i dette forumet.",
+ "cannotadddiscussionall": "Du har ikke tillatelse til å legge til et nytt diskusjonsemne for alle deltakerne.",
+ "cannotcreatediscussion": "Kan ikke lage ny diskusjon",
+ "couldnotadd": "Kunne ikke legge ut innlegget ditt pga. en ukjent feil",
+ "discussion": "Diskusjon",
+ "discussionlocked": "Denne diskusjonen har blitt stengt, og du kan derfor ikke svare i den lengre.",
+ "discussionpinned": "Flagget",
+ "discussionsubscription": "Diskusjonsabonnement",
+ "edit": "Rediger",
+ "erroremptymessage": "Innleggsmeldingen kan ikke være tom",
+ "erroremptysubject": "Innleggstittel kan ikke være tom.",
+ "errorgetforum": "Feil ved henting av forumdata",
+ "errorgetgroups": "Feil ved henting av gruppeinnstillinger.",
+ "forumnodiscussionsyet": "Det er foreløpig ingen diskusjonsemner i dette forumet.",
+ "group": "Gruppe",
+ "message": "Melding",
+ "modeflatnewestfirst": "Vis svar flatt, nyeste innlegg først.",
+ "modeflatoldestfirst": "Vis svar flatt, eldste innlegg først.",
+ "modenested": "Vis svar nøstet (Overskrift og innhold)",
+ "numdiscussions": "{{numdiscussions}} diskusjoner",
+ "numreplies": "{{numreplies}} svar",
+ "posttoforum": "Legg inn i forumet",
+ "re": "Svar:",
+ "refreshdiscussions": "Oppdater diskusjon",
+ "refreshposts": "Oppdater innlegg",
+ "reply": "Svar",
+ "subject": "Overskrift",
+ "unread": "Ulest",
+ "unreadpostsnumber": "{{$a}} uleste innlegg"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/pl.json b/src/addon/mod/forum/lang/pl.json
new file mode 100755
index 000000000..fd1cb6be1
--- /dev/null
+++ b/src/addon/mod/forum/lang/pl.json
@@ -0,0 +1,28 @@
+{
+ "addanewdiscussion": "Dodaj nowy temat dyskusji",
+ "addanewquestion": "Dodaj nowe pytanie",
+ "addanewtopic": "Dodaj nowy temat",
+ "cannotadddiscussion": "Musisz być członkiem grupy aby dodać dyskusję do tego forum",
+ "cannotadddiscussionall": "Nie masz uprawnień, aby dodać nową dyskusję dla wszystkich uczestników.",
+ "cannotcreatediscussion": "Nie można utworzyć nowego wątku",
+ "couldnotadd": "Nie można dodać twojego wpisu z powodu nieznanego błędu",
+ "discussion": "Temat",
+ "discussionlocked": "Dyskusja została zablokowana, więc nie możesz już odpowiedzieć.",
+ "discussionpinned": "Przypięta",
+ "discussionsubscription": "Subskrypcja dyskusji",
+ "edit": "Edycja",
+ "erroremptymessage": "Wiadomość nie może być pusta",
+ "erroremptysubject": "Tytuł wpisu nie może być pusty.",
+ "forumnodiscussionsyet": "Brak tematów dyskusji na tym forum",
+ "group": "Grupa",
+ "message": "Wiadomość",
+ "modeflatnewestfirst": "Wyświetl odpowiedzi płasko, z najnowszymi na początku",
+ "modeflatoldestfirst": "Wyświetl odpowiedzi płasko, z najdawniejszymi na początku",
+ "modenested": "Wyświetl odpowiedzi tematycznie",
+ "posttoforum": "Wyślij wpis na forum",
+ "re": "Odp:",
+ "reply": "Odpowiedz",
+ "subject": "Temat",
+ "unread": "Nieprzeczytane",
+ "unreadpostsnumber": "{{$a}} nieprzeczytanych wpisów"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/pt-br.json b/src/addon/mod/forum/lang/pt-br.json
new file mode 100755
index 000000000..58c4537fa
--- /dev/null
+++ b/src/addon/mod/forum/lang/pt-br.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Acrescentar um novo tópico de discussão",
+ "addanewquestion": "Acrescentar uma nova questão",
+ "addanewtopic": "Acrescentar um novo tópico",
+ "cannotadddiscussion": "Apenas os participantes inscritos nos grupos podem escrever mensagens neste fórum.",
+ "cannotadddiscussionall": "Você não tem permissão para abrir um novo tópico de discussão para todos os participantes.",
+ "cannotcreatediscussion": "Não foi possível criar uma nova discussão",
+ "couldnotadd": "Não foi possível publicar a sua mensagem. Infelizmente a causa do erro não foi identificada.",
+ "discussion": "Tópico",
+ "discussionlocked": "Esta discussão foi bloqueada e já não é possível responder a ela.",
+ "discussionpinned": "Destacado",
+ "discussionsubscription": "Assinatura de discussão",
+ "edit": "Editar",
+ "erroremptymessage": "A mensagem não pode ser vazia.",
+ "erroremptysubject": "O assunto da mensagem não pode ser vazio.",
+ "errorgetforum": "Erro ao buscar dados de fórum.",
+ "errorgetgroups": "Erro ao obter configurações do grupo.",
+ "forumnodiscussionsyet": "Não existem tópicos neste fórum ainda",
+ "group": "Grupo",
+ "message": "Mensagem",
+ "modeflatnewestfirst": "Mostrar respostas começando pela mais recente",
+ "modeflatoldestfirst": "Mostrar respostas começando pela mais antiga",
+ "modenested": "Mostrar respostas aninhadas",
+ "numdiscussions": "{{numdiscussions}} discussões",
+ "numreplies": "{{numreplies}} respostas",
+ "posttoforum": "Enviar mensagem ao fórum",
+ "re": "Re:",
+ "refreshdiscussions": "Atualizar discussões",
+ "refreshposts": "Atualizar as postagens da discussão",
+ "reply": "Responder",
+ "subject": "Assunto",
+ "unread": "Não lida",
+ "unreadpostsnumber": "{{$a}} mensagens não lidas"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/pt.json b/src/addon/mod/forum/lang/pt.json
new file mode 100755
index 000000000..73944d6ec
--- /dev/null
+++ b/src/addon/mod/forum/lang/pt.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Criar um novo tópico",
+ "addanewquestion": "Criar uma nova pergunta",
+ "addanewtopic": "Criar um novo tópico",
+ "cannotadddiscussion": "Criar novos tópicos neste fórum requer adesão a grupo.",
+ "cannotadddiscussionall": "Não tem permissão para criar um novo tópico disponível para todos os participantes",
+ "cannotcreatediscussion": "Não foi possível criar o novo tópico de discussão",
+ "couldnotadd": "Não foi possível inserir a mensagem que submeteu devido a um erro desconhecido",
+ "discussion": "Tópico",
+ "discussionlocked": "Este tópico de discussão foi bloqueado, logo já não pode responder ao mesmo",
+ "discussionpinned": "Destacado",
+ "discussionsubscription": "Subscrição da discussão",
+ "edit": "Editar",
+ "erroremptymessage": "O texto da mensagem não pode estar em branco",
+ "erroremptysubject": "A assunto da mensagem não pode estar em branco",
+ "errorgetforum": "Erro ao obter dados do fórum.",
+ "errorgetgroups": "Erro ao obter as configurações do grupo.",
+ "forumnodiscussionsyet": "Ainda não existem tópicos de discussão neste fórum.",
+ "group": "Grupo",
+ "message": "Mensagem",
+ "modeflatnewestfirst": "Mostrar respostas por ordem, a começar pela mais recente",
+ "modeflatoldestfirst": "Mostrar respostas por ordem, a começar pela mais antiga",
+ "modenested": "Mostrar respostas em lista encadeada",
+ "numdiscussions": "{{numdiscussions}} tópicos de discussão",
+ "numreplies": "{{numreplies}} respostas",
+ "posttoforum": "Submeter tópico",
+ "re": "Re:",
+ "refreshdiscussions": "Atualizar tópicos de discussão",
+ "refreshposts": "Atualizar tópicos de discussão",
+ "reply": "Responder",
+ "subject": "Assunto",
+ "unread": "Não lidas",
+ "unreadpostsnumber": "{{$a}} mensagens não lidas"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/ro.json b/src/addon/mod/forum/lang/ro.json
new file mode 100755
index 000000000..24f7ec04a
--- /dev/null
+++ b/src/addon/mod/forum/lang/ro.json
@@ -0,0 +1,29 @@
+{
+ "addanewdiscussion": "Adaugă o nouă intervenţie",
+ "addanewquestion": "Adaugă o întrebare",
+ "addanewtopic": "Adaugă temă",
+ "cannotadddiscussion": "Pentru a putea discuta pe acest forum trebuie să fiţi membru al unui grup.",
+ "cannotadddiscussionall": "Nu aveţi permisiunea de a adăuga o temă de discuţii pentru toţi participanţii.",
+ "cannotcreatediscussion": "Nu se poate crea discuție nouă",
+ "couldnotadd": "Intervenţia ta nu a fost publicată datorită unei erori necunoscute",
+ "discussion": "Discuție",
+ "edit": "Modifică",
+ "erroremptymessage": "Mesajul nu poate fi necompletat",
+ "erroremptysubject": "Subiectul nu poate fi necompletat",
+ "errorgetforum": "A apărut o eroare la obținerea datelor despre forum.",
+ "errorgetgroups": "Eroare la obținerea setărilor pentru grup.",
+ "forumnodiscussionsyet": "Nu există subiecte deschise în acest forum.",
+ "group": "Grup",
+ "message": "Mesaj",
+ "modeflatnewestfirst": "Arată replicile liniar, mai întâi cele recente",
+ "modeflatoldestfirst": "Arată replicile liniar, mai întâi cele vechi",
+ "modenested": "Arată replicile într-o formă de cuib",
+ "numdiscussions": "{{numdiscussions}} discuții",
+ "numreplies": "{{numreplies}} răspunsuri",
+ "posttoforum": "Trimite intervenţie pe forum",
+ "re": "Re:",
+ "reply": "Răspunde",
+ "subject": "Subiect",
+ "unread": "Necitit",
+ "unreadpostsnumber": "{{$a}} intervenţii necitite"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/ru.json b/src/addon/mod/forum/lang/ru.json
new file mode 100755
index 000000000..4c43314d4
--- /dev/null
+++ b/src/addon/mod/forum/lang/ru.json
@@ -0,0 +1,34 @@
+{
+ "addanewdiscussion": "Добавить тему для обсуждения",
+ "addanewquestion": "Добавить новый вопрос",
+ "addanewtopic": "Добавить новую тему",
+ "cannotadddiscussion": "Нужно быть участником группы, чтобы добавлять обсуждения на этот форум.",
+ "cannotadddiscussionall": "У вас нет привилегий для добавления новой темы обсуждения для всех участников.",
+ "cannotcreatediscussion": "Невозможно создать новое обсуждение",
+ "couldnotadd": "Сообщение не добавлено из-за неизвестной ошибки",
+ "discussion": "Обсуждение",
+ "discussionlocked": "Обсуждение было заблокировано, поэтому на него нельзя больше отвечать.",
+ "discussionpinned": "Закреплено",
+ "discussionsubscription": "Подписаться на эту тему.",
+ "edit": "Редактировать",
+ "erroremptymessage": "Сообщение не может быть пустым",
+ "erroremptysubject": "Тема сообщения не может быть пустой",
+ "errorgetforum": "Ошибка при получении данных форума",
+ "errorgetgroups": "Ошибка получения параметров группы",
+ "forumnodiscussionsyet": "В этом форуме ещё нет тем для обсуждения.",
+ "group": "Группа",
+ "message": "Сообщение",
+ "modeflatnewestfirst": "Плоско, впереди новые",
+ "modeflatoldestfirst": "Плоско, впереди старые",
+ "modenested": "Древовидно",
+ "numdiscussions": "Обсуждений - {{numdiscussions}}",
+ "numreplies": "Ответов - {{numreplies}}",
+ "posttoforum": "Отправить в форум",
+ "re": "Re:",
+ "refreshdiscussions": "Обновить обсуждения",
+ "refreshposts": "Обновить объявления",
+ "reply": "Ответить",
+ "subject": "Тема",
+ "unread": "Непрочтенные",
+ "unreadpostsnumber": "Непрочитанных сообщений - {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/sr-cr.json b/src/addon/mod/forum/lang/sr-cr.json
new file mode 100755
index 000000000..0b8b9f761
--- /dev/null
+++ b/src/addon/mod/forum/lang/sr-cr.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "Додај нову тему за дискусију",
+ "cannotadddiscussion": "Додавање дискусије у оквиру овог форума захтева групно чланство.",
+ "cannotadddiscussionall": "Немате дозволу да додајете нову тему за дискусију за све учеснике.",
+ "cannotcreatediscussion": "Није било могуће отворити нову дискусију",
+ "couldnotadd": "Нажалост, није могуће додати Вашу поруку због непознате грешке",
+ "discussion": "Дискусија",
+ "discussionlocked": "Ова дискусија је закључана тако да више не можете одговарати на њој.",
+ "discussionpinned": "Фиксирана",
+ "discussionsubscription": "Претплата на дискусију",
+ "edit": "Уреди",
+ "erroremptymessage": "Тело поруке не може бити празно",
+ "erroremptysubject": "Тема поруке не може бити празна",
+ "errorgetforum": "Грешка приликом преузимања података за 'Форум'",
+ "errorgetgroups": "Грешка приликом преузимања подешавања група.",
+ "forumnodiscussionsyet": "Још нема тема за дискусију на овом форуму.",
+ "group": "Група",
+ "message": "Порука",
+ "modeflatnewestfirst": "Приказ одговора, почевши прво с најновијим",
+ "modeflatoldestfirst": "Приказ одговора, почевши прво с најстаријим",
+ "modenested": "Приказ одговора у угнежђеној форми",
+ "numdiscussions": "{{numdiscussions}} дискусије/а",
+ "numreplies": "{{numreplies}} одговора",
+ "posttoforum": "Пошаљи поруку на форум",
+ "re": "Одговор:",
+ "refreshdiscussions": "Освежи дискусије",
+ "refreshposts": "Освежи постове",
+ "reply": "Одговори",
+ "subject": "Тема",
+ "unread": "Непрочитано",
+ "unreadpostsnumber": "Број непрочитаних порука: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/sr-lt.json b/src/addon/mod/forum/lang/sr-lt.json
new file mode 100755
index 000000000..c71aef2a6
--- /dev/null
+++ b/src/addon/mod/forum/lang/sr-lt.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "Dodaj novu temu za diskusiju",
+ "cannotadddiscussion": "Dodavanje diskusije u okviru ovog foruma zahteva grupno članstvo.",
+ "cannotadddiscussionall": "Nemate dozvolu da dodajete novu temu za diskusiju za sve učesnike.",
+ "cannotcreatediscussion": "Nije bilo moguće otvoriti novu diskusiju",
+ "couldnotadd": "Nažalost, nije moguće dodati Vašu poruku zbog nepoznate greške",
+ "discussion": "Diskusija",
+ "discussionlocked": "Ova diskusija je zaključana tako da više ne možete odgovarati na njoj.",
+ "discussionpinned": "Fiksirana",
+ "discussionsubscription": "Pretplata na diskusiju",
+ "edit": "Uredi",
+ "erroremptymessage": "Telo poruke ne može biti prazno",
+ "erroremptysubject": "Tema poruke ne može biti prazna",
+ "errorgetforum": "Greška prilikom preuzimanja podataka za 'Forum'",
+ "errorgetgroups": "Greška prilikom preuzimanja podešavanja grupa.",
+ "forumnodiscussionsyet": "Greška prilikom preuzimanja podešavanja grupa.",
+ "group": "Grupa",
+ "message": "Poruka",
+ "modeflatnewestfirst": "Prikaz odgovora, počevši prvo s najnovijim",
+ "modeflatoldestfirst": "Prikaz odgovora, počevši prvo s najstarijim",
+ "modenested": "Prikaz odgovora u ugnežđenoj formi",
+ "numdiscussions": "{{numdiscussions}} diskusije/a",
+ "numreplies": "{{numreplies}} odgovora",
+ "posttoforum": "Pošalji poruku na forum",
+ "re": "Odgovor:",
+ "refreshdiscussions": "Osveži diskusije",
+ "refreshposts": "Osveži postove",
+ "reply": "Odgovori",
+ "subject": "Tema",
+ "unread": "Nepročitano",
+ "unreadpostsnumber": "Broj nepročitanih poruka: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/sv.json b/src/addon/mod/forum/lang/sv.json
new file mode 100755
index 000000000..60a3a9455
--- /dev/null
+++ b/src/addon/mod/forum/lang/sv.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "Lägg till ett nytt diskussionsämne",
+ "addanewquestion": "Lägg till en ny fråga",
+ "addanewtopic": "Lägg till ett nytt ämne",
+ "cannotadddiscussion": "För att lägga till diskussionsämnen till det här forumet krävs det att man är medlem av en grupp.",
+ "cannotadddiscussionall": "Du har inte tillstånd att lägga till ett nytt diskussionsämne för alla deltagare. ",
+ "cannotcreatediscussion": "Det gick inte att skapa en ny diskussion",
+ "couldnotadd": "Det gick inte att lägga till Ditt inlägg på grund av okänt fel.",
+ "discussion": "Diskussionsämne",
+ "discussionlocked": "Denna diskussion är stängd och du kan inte längre göra inlägg i den.",
+ "discussionpinned": "Fastnålad",
+ "discussionsubscription": "Diskussions prenumeration",
+ "edit": "Redigera",
+ "erroremptymessage": "Meddelandet i inlägget kan inte vara tomt",
+ "erroremptysubject": "Ämnesrubriken för inlägget kan inte vara tom.",
+ "errorgetforum": "Fel att få forum innehåll",
+ "errorgetgroups": "Fel vid hämtning av gruppinställningar",
+ "forumnodiscussionsyet": "Det finns inga diskussionsämnen ännu i detta forum.",
+ "group": "Grupp",
+ "message": "Meddelande",
+ "modeflatnewestfirst": "Visa svarslista, med det senaste först",
+ "modeflatoldestfirst": "Visa svarslista, med det äldsta först",
+ "modenested": "Visa svar i nästlad form",
+ "numdiscussions": "{{numdiscussions}} diskussioner",
+ "numreplies": "{{numreplies}} svar",
+ "posttoforum": "Publicera inlägget i forumet",
+ "re": "Svar:",
+ "reply": "Svar",
+ "subject": "Ämne",
+ "unread": "Oläst",
+ "unreadpostsnumber": "{{$a}} olästa inlägg"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/tg.json b/src/addon/mod/forum/lang/tg.json
new file mode 100755
index 000000000..62706b461
--- /dev/null
+++ b/src/addon/mod/forum/lang/tg.json
@@ -0,0 +1,25 @@
+{
+ "addanewdiscussion": "Мавзӯъ барои муҳокима илова карда шавад",
+ "addanewquestion": "Саволи нав илова карда шавад",
+ "addanewtopic": "Мавзӯи нав илова карда шавад",
+ "cannotadddiscussion": "Барои дар ин форум муҳокимаҳо илова кардан иштирокчии гурӯҳ будан лозим аст.",
+ "cannotadddiscussionall": "Шумо барои илова намудани мавзӯи нави мубоҳиса барои ҳамаи иштирокчиён имтиёз надоред.",
+ "cannotcreatediscussion": "Муҳокимаи нав бунёд кардан ғайриимкон аст",
+ "couldnotadd": "Мактубча аз боиси хатои номаълум илова карда нашудааст",
+ "discussion": "Муҳокима",
+ "edit": "Таҳрир карда шавад",
+ "erroremptymessage": "Мактубча холӣ буда наметавонад",
+ "erroremptysubject": "Мавзӯи мактубча холӣ буда наметавонад",
+ "group": "Гурӯҳ",
+ "message": "Паём",
+ "modeflatnewestfirst": "Ҳамвор, дар пеш навҳо",
+ "modeflatoldestfirst": "Ҳамвор, дар пеш кӯҳнаҳо",
+ "modenested": "Чӯбмонанд",
+ "numreplies": "{{numreplies}} ҷавоб",
+ "posttoforum": "Ба форум фиристода шавад",
+ "re": "Re:",
+ "reply": "Ҷавоб дода шавад",
+ "subject": "Мавзӯъ",
+ "unread": "Нахонда",
+ "unreadpostsnumber": "{{$a}} мактубчаҳои нахонда"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/tr.json b/src/addon/mod/forum/lang/tr.json
new file mode 100755
index 000000000..1a5d669b0
--- /dev/null
+++ b/src/addon/mod/forum/lang/tr.json
@@ -0,0 +1,28 @@
+{
+ "addanewdiscussion": "Yeni tartışma konusu ekle",
+ "addanewquestion": "Yeni soru ekle",
+ "addanewtopic": "Yeni konu ekle",
+ "cannotadddiscussion": "Bu foruma tartışma ekleme, grup üyeliği gerektirir.",
+ "cannotadddiscussionall": "Tüm katılımcılar için yeni bir tartışma konusu ekleme izniniz yok.",
+ "cannotcreatediscussion": "Yeni tartışma oluşturulamadı",
+ "couldnotadd": "Bilinmeyen bir nedenle mesajınız eklenemedi",
+ "discussion": "Tartışma",
+ "discussionlocked": "Bu tartışma kilitli olduğundan artık yanıtlayamıyorsunuz.",
+ "discussionpinned": "Sabitlenmiş",
+ "discussionsubscription": "Tartışma aboneliği",
+ "edit": "Düzelt",
+ "erroremptymessage": "Yazı mesajı boş olamaz",
+ "erroremptysubject": "Gönderi konusu boş olamaz.",
+ "forumnodiscussionsyet": "Bu forum da henuz hiç tartışma başlığı yok",
+ "group": "Grup",
+ "message": "Mesaj",
+ "modeflatnewestfirst": "Yanıtları yeniler önce olacak şekilde düz göster",
+ "modeflatoldestfirst": "Yanıtları eskiler önce olacak şekilde düz göster",
+ "modenested": "Yanıtları içiçe göster",
+ "posttoforum": "Foruma gönder",
+ "re": "Ynt:",
+ "reply": "Yanıtla",
+ "subject": "Konu",
+ "unread": "Okunmamış",
+ "unreadpostsnumber": "{{$a}} okunmamış mesaj"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/uk.json b/src/addon/mod/forum/lang/uk.json
new file mode 100755
index 000000000..2fbaf4edc
--- /dev/null
+++ b/src/addon/mod/forum/lang/uk.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "Додати тему для обговорення",
+ "addanewquestion": "Додати нове питання",
+ "addanewtopic": "Додати нову тему",
+ "cannotadddiscussion": "Додання тем обговорення на цей форум вимагає членства у групі.",
+ "cannotadddiscussionall": "Ви не маєте права створювати нові теми дискусії для всіх учасників",
+ "cannotcreatediscussion": "Не вдається створити нову дискусію",
+ "couldnotadd": "Повідомлення не додане через невідому помилку",
+ "discussion": "Обговорення",
+ "discussionpinned": "Прикріплено",
+ "discussionsubscription": "Підписатися на дискусію",
+ "edit": "Редагувати",
+ "erroremptymessage": "Повідомлення не може бути порожнім",
+ "erroremptysubject": "Тема повідомлення не може бути порожньою",
+ "errorgetforum": "Помилка отримання даних форуму",
+ "errorgetgroups": "Помилка отримання групових налаштувань.",
+ "forumnodiscussionsyet": "Відсутні обговорення в даному форумі.",
+ "group": "Група",
+ "message": "Повідомлення",
+ "modeflatnewestfirst": "Показувати відповіді простим списком, найновіші спочатку",
+ "modeflatoldestfirst": "Показувати відповіді простим списком, найстаріші спочатку",
+ "modenested": "Показувати відповіді у формі вкладених повідомлень",
+ "numdiscussions": "{{numdiscussions}} дискусій",
+ "numreplies": "{{numreplies}} відповідей",
+ "posttoforum": "Надіслати до форуму",
+ "refreshdiscussions": "Оновити обговорення",
+ "refreshposts": "Оновити пости з обговоренням",
+ "reply": "Відповісти",
+ "subject": "Тема",
+ "unread": "Непрочитані",
+ "unreadpostsnumber": "{{$a}} непрочитаних повідомлень"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/zh-cn.json b/src/addon/mod/forum/lang/zh-cn.json
new file mode 100755
index 000000000..922482dd9
--- /dev/null
+++ b/src/addon/mod/forum/lang/zh-cn.json
@@ -0,0 +1,24 @@
+{
+ "addanewdiscussion": "开启一个新话题",
+ "cannotadddiscussion": "在此讨论区新建话题必须是组内成员。",
+ "cannotadddiscussionall": "您没有向所有人添加新话题的权限",
+ "cannotcreatediscussion": "不能建立新话题",
+ "couldnotadd": "由于一个未知的错误,您的帖子无法发表",
+ "discussion": "话题",
+ "discussionsubscription": "话题订阅",
+ "edit": "编辑",
+ "erroremptymessage": "帖子正文不能为空",
+ "erroremptysubject": "帖子标题不能为空。",
+ "forumnodiscussionsyet": "此论坛中还没有讨论话题",
+ "group": "小组",
+ "message": "正文",
+ "modeflatnewestfirst": "列表显示回帖内容,新帖在前",
+ "modeflatoldestfirst": "列表显示回帖内容,旧帖在前",
+ "modenested": "嵌套显示回帖内容",
+ "posttoforum": "发到讨论区上",
+ "re": "回复:",
+ "reply": "回复",
+ "subject": "主题",
+ "unread": "未读",
+ "unreadpostsnumber": "{{$a}} 条未读帖子"
+}
\ No newline at end of file
diff --git a/src/addon/mod/forum/lang/zh-tw.json b/src/addon/mod/forum/lang/zh-tw.json
new file mode 100755
index 000000000..6a91914a4
--- /dev/null
+++ b/src/addon/mod/forum/lang/zh-tw.json
@@ -0,0 +1,32 @@
+{
+ "addanewdiscussion": "新增一個討論主題",
+ "cannotadddiscussion": "必須是群組成員才能在此討論區添加議題",
+ "cannotadddiscussionall": "您沒有權限新增討論主題給所有參與者。",
+ "cannotcreatediscussion": "不能建立新的議題",
+ "couldnotadd": "由於不明錯誤, 無法新增您的貼文",
+ "discussion": "議題",
+ "discussionlocked": "這一議題已經被封鎖,所以你無法回應它",
+ "discussionpinned": "已經釘選",
+ "discussionsubscription": "議題訂閱",
+ "edit": "編輯",
+ "erroremptymessage": "貼文的訊息不能是空白",
+ "erroremptysubject": "貼文的主旨不能是空白",
+ "errorgetforum": "讀取討論區資料發生錯誤",
+ "errorgetgroups": "讀取群組設定發生錯誤",
+ "forumnodiscussionsyet": "這個討論區還沒有討論主題",
+ "group": "群組",
+ "message": "訊息",
+ "modeflatnewestfirst": "以平舖方式呈現回應的貼文,最晚貼出的在前",
+ "modeflatoldestfirst": "以平舖方式呈現回應的貼文,最早貼出的在前",
+ "modenested": "以縮排方式呈現回應的貼文",
+ "numdiscussions": "{{numdiscussions}}篇討論",
+ "numreplies": "{{numreplies}}個回覆",
+ "posttoforum": "貼文到討論區中",
+ "re": "回應:",
+ "refreshdiscussions": "更新討論區",
+ "refreshposts": "更新討論區貼文",
+ "reply": "回應",
+ "subject": "主旨",
+ "unread": "未閱讀",
+ "unreadpostsnumber": "{{$a}}篇未閱讀的貼文"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/ar.json b/src/addon/mod/glossary/lang/ar.json
new file mode 100755
index 000000000..e92d720ed
--- /dev/null
+++ b/src/addon/mod/glossary/lang/ar.json
@@ -0,0 +1,10 @@
+{
+ "attachment": "مرفقات",
+ "browsemode": "النمط العرضي",
+ "byauthor": "التجميع طبقا للمؤلف",
+ "bynewestfirst": "الأحدث أولا",
+ "byrecentlyupdated": "تم تحديثه مؤخرا",
+ "bysearch": "بحث",
+ "casesensitive": "استخدم التعابير المعتادة",
+ "categories": "تصنيفات المقررات الدراسية"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/bg.json b/src/addon/mod/glossary/lang/bg.json
new file mode 100755
index 000000000..884bf9433
--- /dev/null
+++ b/src/addon/mod/glossary/lang/bg.json
@@ -0,0 +1,6 @@
+{
+ "attachment": "Прикачен файл",
+ "browsemode": "Режим на преглеждане",
+ "casesensitive": "Използване на регулярни изрази",
+ "categories": "Категории курсове"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/ca.json b/src/addon/mod/glossary/lang/ca.json
new file mode 100755
index 000000000..c9d1567bd
--- /dev/null
+++ b/src/addon/mod/glossary/lang/ca.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Adjunt",
+ "browsemode": "Mode exploració",
+ "byalphabet": "Alfabèticament",
+ "byauthor": "Agrupat per autor",
+ "bycategory": "Agrupa per categoria",
+ "bynewestfirst": "El més nou primer",
+ "byrecentlyupdated": "Actualitzat recentment",
+ "bysearch": "Cerca",
+ "cannoteditentry": "No es pot editar l'entrada",
+ "casesensitive": "Utilitzeu expressions regulars",
+ "categories": "Categories de cursos",
+ "entriestobesynced": "Entrades per sincronitzar",
+ "entrypendingapproval": "Aquesta entrada està pendent d'aprovació.",
+ "errorloadingentries": "S'ha produït un error en carregar les entrades.",
+ "errorloadingentry": "S'ha produït un error en carregar l'entrada.",
+ "errorloadingglossary": "S'ha produït un error en carregar el glossari.",
+ "noentriesfound": "No s'han trobat entrades.",
+ "searchquery": "La vostra cerca"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/cs.json b/src/addon/mod/glossary/lang/cs.json
new file mode 100755
index 000000000..9e5e587cc
--- /dev/null
+++ b/src/addon/mod/glossary/lang/cs.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Připojit odznak do zprávy",
+ "browsemode": "Režim náhledu",
+ "byalphabet": "Abecedně",
+ "byauthor": "Skupina podle autora",
+ "bycategory": "Skupina podle kategorie",
+ "bynewestfirst": "Nejnovější nejdříve",
+ "byrecentlyupdated": "Posledně aktualizované",
+ "bysearch": "Hledat",
+ "cannoteditentry": "Záznam nelze upravit",
+ "casesensitive": "Používat regulární výrazy",
+ "categories": "Kategorie kurzů",
+ "entriestobesynced": "Příspěvky, které mají být synchronizovány",
+ "entrypendingapproval": "Tato položka čeká na schválení",
+ "errorloadingentries": "Při načítání položek došlo k chybě.",
+ "errorloadingentry": "Při načítání položky došlo k chybě.",
+ "errorloadingglossary": "Při načítání slovníku došlo k chybě.",
+ "noentriesfound": "Nebyly nalezeny žádné záznamy.",
+ "searchquery": "Vyhledávací dotaz"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/da.json b/src/addon/mod/glossary/lang/da.json
new file mode 100755
index 000000000..fc1bee6b7
--- /dev/null
+++ b/src/addon/mod/glossary/lang/da.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Tilføj badge til besked",
+ "browsemode": "Forhåndsvisning",
+ "byalphabet": "Alfabetisk",
+ "byauthor": "Grupper efter forfatter",
+ "bycategory": "Gruppér efter kategori",
+ "bynewestfirst": "Nyeste først",
+ "byrecentlyupdated": "Senest opdateret",
+ "bysearch": "Søg",
+ "cannoteditentry": "Kan ikke redigere opslaget",
+ "casesensitive": "Brug regulære udtryk",
+ "categories": "Kursuskategorier",
+ "entriestobesynced": "Opslag der skal synkroniseres",
+ "entrypendingapproval": "Dette opslag afventer godkendelse",
+ "errorloadingentries": "Der opstod en fejl under indlæsning af opslag",
+ "errorloadingentry": "Der opstod en fejl under indlæsning af opslaget",
+ "errorloadingglossary": "Der opstod en fejl under indlæsning af ordbogen.",
+ "noentriesfound": "Ingen opslag fundet",
+ "searchquery": "Søgeord"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/de-du.json b/src/addon/mod/glossary/lang/de-du.json
new file mode 100755
index 000000000..f2ec366d5
--- /dev/null
+++ b/src/addon/mod/glossary/lang/de-du.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Anhang",
+ "browsemode": "Vorschaumodus",
+ "byalphabet": "Alphabetisch",
+ "byauthor": "Nach Autor/in",
+ "bycategory": "Nach Kategorie",
+ "bynewestfirst": "Neu zuerst",
+ "byrecentlyupdated": "Kürzlich aktualisiert",
+ "bysearch": "Suchen",
+ "cannoteditentry": "Eintrag nicht bearbeitbar",
+ "casesensitive": "Reguläre Ausdrücke verwenden",
+ "categories": "Kursbereiche",
+ "entriestobesynced": "Einträge zum Synchronisieren",
+ "entrypendingapproval": "Dieser Eintrag wartet auf eine Freigabe.",
+ "errorloadingentries": "Fehler beim Laden von Einträgen",
+ "errorloadingentry": "Fehler beim Laden des Eintrags",
+ "errorloadingglossary": "Fehler beim Laden des Glossars",
+ "noentriesfound": "Keine Einträge",
+ "searchquery": "Suchanfrage"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/de.json b/src/addon/mod/glossary/lang/de.json
new file mode 100755
index 000000000..80d3b66b4
--- /dev/null
+++ b/src/addon/mod/glossary/lang/de.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Auszeichnung an Mitteilung anhängen",
+ "browsemode": "Einträge durchblättern",
+ "byalphabet": "Alphabetisch",
+ "byauthor": "Nach Autor/in",
+ "bycategory": "Nach Kategorie",
+ "bynewestfirst": "Neu zuerst",
+ "byrecentlyupdated": "Kürzlich aktualisiert",
+ "bysearch": "Suchen",
+ "cannoteditentry": "Eintrag nicht bearbeitbar",
+ "casesensitive": "Reguläre Ausdrücke verwenden",
+ "categories": "Kursbereiche",
+ "entriestobesynced": "Einträge zum Synchronisieren",
+ "entrypendingapproval": "Dieser Eintrag wartet auf eine Freigabe.",
+ "errorloadingentries": "Fehler beim Laden von Einträgen",
+ "errorloadingentry": "Fehler beim Laden des Eintrags",
+ "errorloadingglossary": "Fehler beim Laden des Glossars",
+ "noentriesfound": "Keine Einträge",
+ "searchquery": "Suchanfrage"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/el.json b/src/addon/mod/glossary/lang/el.json
new file mode 100755
index 000000000..b4970c990
--- /dev/null
+++ b/src/addon/mod/glossary/lang/el.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Συνημμένα",
+ "browsemode": "Φάση Προεπισκόπισης",
+ "byalphabet": "Αλφαβητικά",
+ "byauthor": "Ομαδοποίηση ανά συγγραφέα",
+ "bycategory": "Ομαδοποίηση ανά κατηγορία",
+ "bynewestfirst": "Νεότερα πρώτα",
+ "byrecentlyupdated": "Ανανεώθηκαν πρόσφατα",
+ "bysearch": "Αναζήτηση",
+ "cannoteditentry": "Δεν είναι δυνατή η επεξεργασία της καταχώρισης",
+ "casesensitive": "Χρήση κανονικών εκφράσεων",
+ "categories": "Κατηγορίες μαθημάτων",
+ "entriestobesynced": "Entries που πρέπει να συγχρονιστούν",
+ "entrypendingapproval": "Εκκρεμεί η έγκριση για αυτή την καταχώρηση.",
+ "errorloadingentries": "Παρουσιάστηκε σφάλμα κατά τη φόρτωση των καταχωρήσεων.",
+ "errorloadingentry": "Παρουσιάστηκε σφάλμα κατά τη φόρτωση της καταχώρησης.",
+ "errorloadingglossary": "Παρουσιάστηκε σφάλμα κατά τη φόρτωση του glossary.",
+ "noentriesfound": "Δεν βρέθηκαν καταχωρήσεις.",
+ "searchquery": "Αναζήτηση ερωτήματος"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/es-mx.json b/src/addon/mod/glossary/lang/es-mx.json
new file mode 100755
index 000000000..e661f36d3
--- /dev/null
+++ b/src/addon/mod/glossary/lang/es-mx.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Adjunto",
+ "browsemode": "Modo de presentación preliminar",
+ "byalphabet": "Alfabéticamente",
+ "byauthor": "Agrupar por autor",
+ "bycategory": "Agrupar por categoría",
+ "bynewestfirst": "Los más nuevos primero",
+ "byrecentlyupdated": "Recientemente actualizado",
+ "bysearch": "Buscar",
+ "cannoteditentry": "No puede editarse entrada",
+ "casesensitive": "Usar expresiones regulares",
+ "categories": "Categorías",
+ "entriestobesynced": "Entradas para ser sincronizadas",
+ "entrypendingapproval": "Esta entrada está pendiente de aprobación.",
+ "errorloadingentries": "Ocurrió un error al cargar entradas.",
+ "errorloadingentry": "Ocurrió un error al cargar la entrada.",
+ "errorloadingglossary": "Ocurrió un error al cargar el glosario.",
+ "noentriesfound": "No se encontraron entradas.",
+ "searchquery": "Consulta de búsqueda"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/es.json b/src/addon/mod/glossary/lang/es.json
new file mode 100755
index 000000000..ed5f8c7d0
--- /dev/null
+++ b/src/addon/mod/glossary/lang/es.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Adjunto",
+ "browsemode": "Modo de presentación preliminar",
+ "byalphabet": "Alfabéticamente",
+ "byauthor": "Agrupado por autor",
+ "bycategory": "Agrupar por categoría",
+ "bynewestfirst": "El más reciente primero",
+ "byrecentlyupdated": "Actualizado recientemente",
+ "bysearch": "Busca",
+ "cannoteditentry": "No se puede editar la entrada",
+ "casesensitive": "Usar expresiones regulares",
+ "categories": "Categorías",
+ "entriestobesynced": "Entradas pendientes de ser sincronizadas",
+ "entrypendingapproval": "Esta entrada está pendiente de aprobación.",
+ "errorloadingentries": "Ha ocurrido un error cargando las entradas.",
+ "errorloadingentry": "Ha ocurrido un error cargando la entrada.",
+ "errorloadingglossary": "Ha ocurrido un error cargando el glosario.",
+ "noentriesfound": "No se han encontrado entradas.",
+ "searchquery": "Tú búsqueda"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/eu.json b/src/addon/mod/glossary/lang/eu.json
new file mode 100755
index 000000000..0eff7b44e
--- /dev/null
+++ b/src/addon/mod/glossary/lang/eu.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Erantsi domina mezuari",
+ "browsemode": "Aztertu sarrerak",
+ "byalphabet": "Alfabetikoki",
+ "byauthor": "Taldekatu egilearen arabera",
+ "bycategory": "Taldekatu kategoriaren arabera",
+ "bynewestfirst": "Berrienak lehenago",
+ "byrecentlyupdated": "Duela gutxi eguneratuak",
+ "bysearch": "Bilatu",
+ "cannoteditentry": "Ezin da sarrera editatu",
+ "casesensitive": "Erabil adierazpen erregularrak",
+ "categories": "Ikastaro-kategoriak",
+ "entriestobesynced": "Sinkronizatu beharreko sarrerak",
+ "entrypendingapproval": "Sarrera hau onarpenaren zain dago.",
+ "errorloadingentries": "Errore bat gertatu da sarrerak kargatzean.",
+ "errorloadingentry": "Errore bat gertatu da sarrera kargatzean.",
+ "errorloadingglossary": "Errore bat gertatu da glosategia kargatzean.",
+ "noentriesfound": "Ez da sarrerarik aurkitu",
+ "searchquery": "Egin bilaketa"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/fa.json b/src/addon/mod/glossary/lang/fa.json
new file mode 100755
index 000000000..637de884d
--- /dev/null
+++ b/src/addon/mod/glossary/lang/fa.json
@@ -0,0 +1,6 @@
+{
+ "attachment": "فایل پیوست",
+ "browsemode": "حالت پیشنمایش",
+ "casesensitive": "استفاده از عبارتهای منظم",
+ "categories": "طبقههای درسی"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/fi.json b/src/addon/mod/glossary/lang/fi.json
new file mode 100755
index 000000000..1da7bc23e
--- /dev/null
+++ b/src/addon/mod/glossary/lang/fi.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Liitä viestiin osaamismerkki",
+ "browsemode": "Esikatselunäkymä",
+ "byalphabet": "Aakkosjärjestyksessä",
+ "byauthor": "Ryhmittele kirjoittajan mukaisesti",
+ "bycategory": "Ryhmittele kategorian mukaan",
+ "bynewestfirst": "Uusin ensin",
+ "byrecentlyupdated": "Äskettäin päivitetty",
+ "bysearch": "Hae",
+ "cannoteditentry": "Merkintää ei voi muokata",
+ "casesensitive": "Kirjainkoon merkitys",
+ "categories": "Kategoriat",
+ "entriestobesynced": "Synkronoitavat merkinnät",
+ "entrypendingapproval": "Tämä merkintä odottaa hyväksyntää.",
+ "errorloadingentries": "Merkintöjä ladattaessa tapahtui virhe.",
+ "errorloadingentry": "Virhe ladattaessa merkintää.",
+ "errorloadingglossary": "Virhe ladattaessa sanastoa.",
+ "noentriesfound": "Merkintöjä ei löytynyt.",
+ "searchquery": "Hakukysely"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/fr.json b/src/addon/mod/glossary/lang/fr.json
new file mode 100755
index 000000000..4d12ffcee
--- /dev/null
+++ b/src/addon/mod/glossary/lang/fr.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Joindre le badge à un courriel",
+ "browsemode": "Mode prévisualisation",
+ "byalphabet": "Alphabétiquement",
+ "byauthor": "Grouper par auteur",
+ "bycategory": "Grouper par catégorie",
+ "bynewestfirst": "Les plus récents en premier",
+ "byrecentlyupdated": "Modifiés récemment",
+ "bysearch": "Rechercher",
+ "cannoteditentry": "Impossible de modifier l'article",
+ "casesensitive": "Utiliser les expressions régulières",
+ "categories": "Catégories de cours",
+ "entriestobesynced": "Articles à synchroniser",
+ "entrypendingapproval": "Cet article est en attente d'approbation",
+ "errorloadingentries": "Une erreur est survenue lors du chargement des articles.",
+ "errorloadingentry": "Une erreur est survenue lors du chargement de l'article.",
+ "errorloadingglossary": "Une erreur est survenue lors du chargement du glossaire.",
+ "noentriesfound": "Aucun article trouvé.",
+ "searchquery": "Texte recherché"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/he.json b/src/addon/mod/glossary/lang/he.json
new file mode 100755
index 000000000..abad84863
--- /dev/null
+++ b/src/addon/mod/glossary/lang/he.json
@@ -0,0 +1,6 @@
+{
+ "attachment": "צירוף ההישג להודעה",
+ "browsemode": "מצב תצוגה מקדימה",
+ "casesensitive": "השתמש בביטויים רגולריים",
+ "categories": "קטגוריות קורסים"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/hr.json b/src/addon/mod/glossary/lang/hr.json
new file mode 100755
index 000000000..6edc2f088
--- /dev/null
+++ b/src/addon/mod/glossary/lang/hr.json
@@ -0,0 +1,12 @@
+{
+ "attachment": "Privitak",
+ "browsemode": "Način pregleda",
+ "byalphabet": "Abecedno",
+ "byauthor": "Grupirano po autoru",
+ "bycategory": "Grupirano po kategoriji",
+ "bynewestfirst": "Prvo najnoviji",
+ "byrecentlyupdated": "Nedavno osvježeno",
+ "bysearch": "Pretraživanje",
+ "casesensitive": "Koristi regularne izraze",
+ "categories": "Popis e-kolegija"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/hu.json b/src/addon/mod/glossary/lang/hu.json
new file mode 100755
index 000000000..acb16b009
--- /dev/null
+++ b/src/addon/mod/glossary/lang/hu.json
@@ -0,0 +1,6 @@
+{
+ "attachment": "Csatolt állomány:",
+ "browsemode": "Előzetes megtekintés üzemmódja",
+ "casesensitive": "Reguláris kifejezések használata",
+ "categories": "Kurzuskategóriák"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/it.json b/src/addon/mod/glossary/lang/it.json
new file mode 100755
index 000000000..6a72c6841
--- /dev/null
+++ b/src/addon/mod/glossary/lang/it.json
@@ -0,0 +1,17 @@
+{
+ "attachment": "Allega badge al messaggio",
+ "browsemode": "Modalità anteprima",
+ "byauthor": "Raggruppa per autore",
+ "bycategory": "Raggruppa per categoria",
+ "byrecentlyupdated": "Aggiornati di recente",
+ "bysearch": "Cerca",
+ "cannoteditentry": "Non è possibile modificare la voce",
+ "casesensitive": "Utilizza regular expression",
+ "categories": "Categorie di corso",
+ "entriestobesynced": "Voci da sincronizzare",
+ "entrypendingapproval": "Questa voce è in attesa di approvazione.",
+ "errorloadingentries": "Si è verificato un errore durante il caricamento delle voci.",
+ "errorloadingentry": "Si è verificato un errore durante il caricamento della voce.",
+ "errorloadingglossary": "Si è verificato un errore durante il caricamento del glossario.",
+ "noentriesfound": "Non sono state trovate voci."
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/ja.json b/src/addon/mod/glossary/lang/ja.json
new file mode 100755
index 000000000..3d74c0323
--- /dev/null
+++ b/src/addon/mod/glossary/lang/ja.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "添付",
+ "browsemode": "プレビューモード",
+ "byalphabet": "アルファベット順",
+ "byauthor": "著者でグループ",
+ "bycategory": "カテゴリでグループ",
+ "bynewestfirst": "新規順",
+ "byrecentlyupdated": "最近の更新",
+ "bysearch": "検索",
+ "cannoteditentry": "エントリの編集ができませんでした",
+ "casesensitive": "正規表現を使用する",
+ "categories": "コースカテゴリ",
+ "entriestobesynced": "エントリの同期ができませんでした",
+ "entrypendingapproval": "このエントリは承認待ちです。",
+ "errorloadingentries": "エントリ読み込み中にエラーが発生しました。",
+ "errorloadingentry": "エントリ読み込み中にエラーが発生しました。",
+ "errorloadingglossary": "用語集を読み込み中にエラーが発生しました。",
+ "noentriesfound": "エントリが見つかりませんでした。",
+ "searchquery": "検索内容"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/ko.json b/src/addon/mod/glossary/lang/ko.json
new file mode 100755
index 000000000..ddffc2e5d
--- /dev/null
+++ b/src/addon/mod/glossary/lang/ko.json
@@ -0,0 +1,6 @@
+{
+ "attachment": "첨부",
+ "browsemode": "미리보기 모드",
+ "casesensitive": "정규 표현 사용",
+ "categories": "강좌 범주"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/lt.json b/src/addon/mod/glossary/lang/lt.json
new file mode 100755
index 000000000..bdc656dd5
--- /dev/null
+++ b/src/addon/mod/glossary/lang/lt.json
@@ -0,0 +1,17 @@
+{
+ "attachment": "Prikabinti pasiekimą prie pranešimo",
+ "browsemode": "Peržiūros režimas",
+ "byalphabet": "Abėcėlės tvarka",
+ "byauthor": "Pagal autorių",
+ "bynewestfirst": "Naujausi",
+ "byrecentlyupdated": "Neseniai atnaujinti",
+ "bysearch": "Paieška",
+ "casesensitive": "Naudoti reguliariąsias išraiškas",
+ "categories": "Kursų kategorijos",
+ "entrypendingapproval": "Patvirtinti įrašą.",
+ "errorloadingentries": "Klaida keliant įrašus.",
+ "errorloadingentry": "Klaida įkeliant įrašą.",
+ "errorloadingglossary": "Klaida įkeliant žodynėlį.",
+ "noentriesfound": "Įrašų nėra.",
+ "searchquery": "Paieškos eilutė"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/mr.json b/src/addon/mod/glossary/lang/mr.json
new file mode 100755
index 000000000..c9eb093df
--- /dev/null
+++ b/src/addon/mod/glossary/lang/mr.json
@@ -0,0 +1,19 @@
+{
+ "browsemode": "आयोग पद्धती",
+ "byalphabet": "वर्णानुक्रमाने",
+ "byauthor": "लेखकानुसार गट",
+ "bycategory": "श्रेणीनुसार गट",
+ "bynewestfirst": "नवीनतम प्रथम",
+ "byrecentlyupdated": "अलीकडेच अद्यन्वित",
+ "bysearch": "शोधा",
+ "cannoteditentry": "प्रविष्टी संपादित करू शकत नाही",
+ "casesensitive": "नियमीत शब्दांचा वापर करा.",
+ "categories": "गट",
+ "entriestobesynced": "सिंक केलेल्या प्रविष्ट्या",
+ "entrypendingapproval": "ही प्रविष्टी मंजूरीसाठी प्रलंबित आहे.",
+ "errorloadingentries": "नोंदी लोड करताना त्रुटी आली",
+ "errorloadingentry": "नोंद लोड करताना एक त्रुटी आली.",
+ "errorloadingglossary": "शब्दकोशाचे लोड करताना त्रुटी आली.",
+ "noentriesfound": "नोंदी सापडल्या नाहीत.",
+ "searchquery": "शोध क्वेरी"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/nl.json b/src/addon/mod/glossary/lang/nl.json
new file mode 100755
index 000000000..53c36a376
--- /dev/null
+++ b/src/addon/mod/glossary/lang/nl.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Badge als bijlage bij bericht",
+ "browsemode": "Probeermodus",
+ "byalphabet": "Alfabetisch",
+ "byauthor": "Groepeer per auteur",
+ "bycategory": "Groepeer per categorie",
+ "bynewestfirst": "Nieuwste eerst",
+ "byrecentlyupdated": "Onlangs gewijzigd",
+ "bysearch": "Zoek",
+ "cannoteditentry": "Kan item niet bewerken",
+ "casesensitive": "Regular expressions gebruiken",
+ "categories": "Cursuscategorieën",
+ "entriestobesynced": "Items niet gesynchroniseerd",
+ "entrypendingapproval": "Dit item wacht op goedkeuring.",
+ "errorloadingentries": "Fout bij het laden van de items.",
+ "errorloadingentry": "Fout tijdens het laden van dit item.",
+ "errorloadingglossary": "Fout tijdens het laden van de woordenlijst.",
+ "noentriesfound": "Geen items gevonden.",
+ "searchquery": "Zoekopdracht"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/no.json b/src/addon/mod/glossary/lang/no.json
new file mode 100755
index 000000000..73f96f215
--- /dev/null
+++ b/src/addon/mod/glossary/lang/no.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Vedlegg",
+ "browsemode": "Forhåndsvisningsmodus",
+ "byalphabet": "Alfabetisk",
+ "byauthor": "Gruppér etter forfatter",
+ "bycategory": "Gruppér etter kategori",
+ "bynewestfirst": "Nyeste først",
+ "byrecentlyupdated": "Nylig oppdatert",
+ "bysearch": "Søk",
+ "cannoteditentry": "Kan ikke redigere oppføring",
+ "casesensitive": "Skiller mellom store/små bokstaver",
+ "categories": "Kurskategorier",
+ "entriestobesynced": "Oppføringer som skal synkroniseres",
+ "entrypendingapproval": "Denne oppføringen venter på godkjenning",
+ "errorloadingentries": "Feil ved lasting av oppføringer.",
+ "errorloadingentry": "Feil ved lasting av oppføringen.",
+ "errorloadingglossary": "Feil ved lasting av ordliste",
+ "noentriesfound": "Ingen oppføringer funnet",
+ "searchquery": "Søkeord"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/pl.json b/src/addon/mod/glossary/lang/pl.json
new file mode 100755
index 000000000..7effb7081
--- /dev/null
+++ b/src/addon/mod/glossary/lang/pl.json
@@ -0,0 +1,6 @@
+{
+ "attachment": "Dołącz odznakę do wiadomości",
+ "browsemode": "Tryb przeglądania",
+ "casesensitive": "Użyj wyrażeń regularnych",
+ "categories": "Kategorie kursów"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/pt-br.json b/src/addon/mod/glossary/lang/pt-br.json
new file mode 100755
index 000000000..32741499a
--- /dev/null
+++ b/src/addon/mod/glossary/lang/pt-br.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Anexar emblema à mensagem",
+ "browsemode": "Prévia",
+ "byalphabet": "Alfabeticamente",
+ "byauthor": "Agrupar por autor",
+ "bycategory": "Agrupar por categoria",
+ "bynewestfirst": "Novos primeiro",
+ "byrecentlyupdated": "Recentemente atualizados",
+ "bysearch": "Pesquisa",
+ "cannoteditentry": "Não é possível editar o item",
+ "casesensitive": "Usar expressões regulares",
+ "categories": "Categorias de Cursos",
+ "entriestobesynced": "Itens a serem sincronizados",
+ "entrypendingapproval": "A entrada está pendente de aprovação.",
+ "errorloadingentries": "Ocorreu um erro enquanto carregava entradas.",
+ "errorloadingentry": "Ocorreu um erro enquanto carregava a entrada.",
+ "errorloadingglossary": "Ocorreu um erro enquanto carregava a entrada.",
+ "noentriesfound": "Nenhuma entrada foi encontrada",
+ "searchquery": "Consulta de pesquisa"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/pt.json b/src/addon/mod/glossary/lang/pt.json
new file mode 100755
index 000000000..3aa08aa38
--- /dev/null
+++ b/src/addon/mod/glossary/lang/pt.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Anexo",
+ "browsemode": "Modo de pré-visualização",
+ "byalphabet": "Alfabeticamente",
+ "byauthor": "Agrupar por autor",
+ "bycategory": "Agrupar por categoria",
+ "bynewestfirst": "Ordenar por mais recentes",
+ "byrecentlyupdated": "Recentemente atualizados",
+ "bysearch": "Pesquisar",
+ "cannoteditentry": "Não é possível editar a entrada",
+ "casesensitive": "Usar regular expressions",
+ "categories": "Categorias de disciplinas",
+ "entriestobesynced": "Entradas a ser sincronizadas",
+ "entrypendingapproval": "Este termo aguarda aprovação.",
+ "errorloadingentries": "Ocorreu um erro ao carregar os termos.",
+ "errorloadingentry": "Ocorreu um erro ao carregar o termo.",
+ "errorloadingglossary": "Ocorreu um erro ao carregar o glossário.",
+ "noentriesfound": "Não foi encontrado nenhum termo.",
+ "searchquery": "Pesquisa"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/ro.json b/src/addon/mod/glossary/lang/ro.json
new file mode 100755
index 000000000..f5e766767
--- /dev/null
+++ b/src/addon/mod/glossary/lang/ro.json
@@ -0,0 +1,17 @@
+{
+ "attachment": "Atașament",
+ "browsemode": "Mod Căutare",
+ "byalphabet": "Alfabetic",
+ "byauthor": "Grupare după autor",
+ "bynewestfirst": "Cele mai noi sunt dispuse primele",
+ "byrecentlyupdated": "Actualizări recente",
+ "bysearch": "Căutare",
+ "casesensitive": "Foloseşte Regular Expressions",
+ "categories": "Categorii de cursuri",
+ "entrypendingapproval": "Această",
+ "errorloadingentries": "A apărut o eroare la încărcarea intrărilor.",
+ "errorloadingentry": "A apărut o eroare la încărcarea intrărilor.",
+ "errorloadingglossary": "A apărut o eroare la încărcarea glosarului.",
+ "noentriesfound": "Nu au fost găsite intrări.",
+ "searchquery": "Căutare"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/ru.json b/src/addon/mod/glossary/lang/ru.json
new file mode 100755
index 000000000..40a4b68d0
--- /dev/null
+++ b/src/addon/mod/glossary/lang/ru.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Вложение:",
+ "browsemode": "Режим предпросмотра",
+ "byalphabet": "Алфавитно",
+ "byauthor": "Группировать по автору",
+ "bycategory": "Группировать по категориям",
+ "bynewestfirst": "Сначала новые",
+ "byrecentlyupdated": "Недавно обновлённые",
+ "bysearch": "Поиск",
+ "cannoteditentry": "Невозможно редактировать запись",
+ "casesensitive": "Использовать регулярные выражения",
+ "categories": "Категории курсов",
+ "entriestobesynced": "Записи на синзронизацию",
+ "entrypendingapproval": "Эта запись ожидает подтверждения.",
+ "errorloadingentries": "При загрузке записей произошла ошибка.",
+ "errorloadingentry": "При загрузке записи произошла ошибка.",
+ "errorloadingglossary": "При загрузке глоссария произошла ошибка.",
+ "noentriesfound": "Записей не было найдено.",
+ "searchquery": "Запрос на поиск"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/sr-cr.json b/src/addon/mod/glossary/lang/sr-cr.json
new file mode 100755
index 000000000..79d5aec05
--- /dev/null
+++ b/src/addon/mod/glossary/lang/sr-cr.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Прилог",
+ "browsemode": "Прегледај појмове",
+ "byalphabet": "Азбучним редом",
+ "byauthor": "Групиши по аутору",
+ "bycategory": "Групиши по категорији",
+ "bynewestfirst": "Најновији прво",
+ "byrecentlyupdated": "Недавно ажурирани",
+ "bysearch": "Претражи",
+ "cannoteditentry": "Не можете да уређујете појам",
+ "casesensitive": "Користи регуларне изразе",
+ "categories": "Категорије курсева",
+ "entriestobesynced": "Појмови за синхронизацију",
+ "entrypendingapproval": "Овај појам чека одобрење.",
+ "errorloadingentries": "Дошло је до грешке приликом учитавања појмова.",
+ "errorloadingentry": "Дошло је до грешке приликом учитавања појма.",
+ "errorloadingglossary": "Дошло је до грешке приликом учитавања речника.",
+ "noentriesfound": "Није пронађен ниједан појам.",
+ "searchquery": "Упит за претрагу"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/sr-lt.json b/src/addon/mod/glossary/lang/sr-lt.json
new file mode 100755
index 000000000..4edfb5a1f
--- /dev/null
+++ b/src/addon/mod/glossary/lang/sr-lt.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Prilog",
+ "browsemode": "Pregledaj pojmove",
+ "byalphabet": "Abecednim redom",
+ "byauthor": "Grupiši po autoru",
+ "bycategory": "Grupiši po kategoriji",
+ "bynewestfirst": "Najnoviji prvo",
+ "byrecentlyupdated": "Nedavno ažurirani",
+ "bysearch": "Pretraži",
+ "cannoteditentry": "Ne možete da uređujete pojam",
+ "casesensitive": "Koristi regularne izraze",
+ "categories": "Kategorije kurseva",
+ "entriestobesynced": "Pojmovi za sinhronizaciju",
+ "entrypendingapproval": "Ovaj pojam čeka odobrenje.",
+ "errorloadingentries": "Došlo je do greške prilikom učitavanja pojmova.",
+ "errorloadingentry": "Došlo je do greške prilikom učitavanja pojma.",
+ "errorloadingglossary": "Došlo je do greške prilikom učitavanja rečnika.",
+ "noentriesfound": "Nije pronađen nijedan pojam.",
+ "searchquery": "Upit za pretragu"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/sv.json b/src/addon/mod/glossary/lang/sv.json
new file mode 100755
index 000000000..0c0a20377
--- /dev/null
+++ b/src/addon/mod/glossary/lang/sv.json
@@ -0,0 +1,17 @@
+{
+ "attachment": "Bifoga märke med meddelande",
+ "browsemode": "Läge för förhandsgranskning",
+ "byalphabet": "Alfabetiskt",
+ "byauthor": "Sortera efter författare",
+ "bynewestfirst": "Nyaste först",
+ "byrecentlyupdated": "Nyligen uppdaterade",
+ "bysearch": "Sök",
+ "casesensitive": "Använd standarduttryck",
+ "categories": "Kurskategorier",
+ "entrypendingapproval": "Detta inlägg väntar på godkännande",
+ "errorloadingentries": "Ett fel uppstod vid inläsning av inläggen",
+ "errorloadingentry": "Ett fel uppstod vid inläsning av inlägget",
+ "errorloadingglossary": "Ett fel uppstod vid inläsning av ordboken",
+ "noentriesfound": "Inga inlägg hittades",
+ "searchquery": ""
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/tg.json b/src/addon/mod/glossary/lang/tg.json
new file mode 100755
index 000000000..ddba7c2d8
--- /dev/null
+++ b/src/addon/mod/glossary/lang/tg.json
@@ -0,0 +1,8 @@
+{
+ "attachment": "Замима",
+ "browsemode": "Реҷаи пешакӣ дида баромадан",
+ "byalphabet": "Аз рӯи алифбо",
+ "bysearch": "Ҷустуҷӯ",
+ "casesensitive": "Ҳассосияти ҷавоб ба регистр",
+ "categories": "Категорияҳо"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/tr.json b/src/addon/mod/glossary/lang/tr.json
new file mode 100755
index 000000000..2209a37ae
--- /dev/null
+++ b/src/addon/mod/glossary/lang/tr.json
@@ -0,0 +1,9 @@
+{
+ "attachment": "Rozete mesaj ekle",
+ "browsemode": "Önizleme Modu",
+ "bysearch": "Ara",
+ "cannoteditentry": "Giriş düzenlenemiyor",
+ "casesensitive": "Düzenli İfadeleri Kullan",
+ "categories": "Ders Kategorileri",
+ "noentriesfound": "Her hangi bir kayıt bulunamadı"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/uk.json b/src/addon/mod/glossary/lang/uk.json
new file mode 100755
index 000000000..d40f5a0e5
--- /dev/null
+++ b/src/addon/mod/glossary/lang/uk.json
@@ -0,0 +1,20 @@
+{
+ "attachment": "Долучення",
+ "browsemode": "Режим перегляду",
+ "byalphabet": "По алфавіту",
+ "byauthor": "Групувати за автором",
+ "bycategory": "Групувати за категорією",
+ "bynewestfirst": "Новіші перші",
+ "byrecentlyupdated": "Нещодавно оновлені",
+ "bysearch": "Пошук",
+ "cannoteditentry": "Неможливо редагувати запис",
+ "casesensitive": "Використовувати регулярні вирази",
+ "categories": "Категорії курсів",
+ "entriestobesynced": "Записи будуть синхронізовані",
+ "entrypendingapproval": "Цей запис очікує схвалення.",
+ "errorloadingentries": "Сталася помилка під час завантаження записів.",
+ "errorloadingentry": "Сталася помилка під час завантаження запису.",
+ "errorloadingglossary": "Сталася помилка під час завантаження глосарію.",
+ "noentriesfound": "Немає записів",
+ "searchquery": "Пошуковий запит"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/zh-cn.json b/src/addon/mod/glossary/lang/zh-cn.json
new file mode 100755
index 000000000..3af5cbb31
--- /dev/null
+++ b/src/addon/mod/glossary/lang/zh-cn.json
@@ -0,0 +1,6 @@
+{
+ "attachment": "附件",
+ "browsemode": "预览模式",
+ "casesensitive": "区分大小写字母",
+ "categories": "类别"
+}
\ No newline at end of file
diff --git a/src/addon/mod/glossary/lang/zh-tw.json b/src/addon/mod/glossary/lang/zh-tw.json
new file mode 100755
index 000000000..8c24d7271
--- /dev/null
+++ b/src/addon/mod/glossary/lang/zh-tw.json
@@ -0,0 +1,17 @@
+{
+ "attachment": "附件",
+ "browsemode": "瀏覽條目",
+ "byalphabet": "按字母順序排列",
+ "byauthor": "以作者為分群",
+ "bynewestfirst": "最新的優先",
+ "byrecentlyupdated": "最近的更新",
+ "bysearch": "搜尋",
+ "casesensitive": "區分字母的大小寫",
+ "categories": "類別",
+ "entrypendingapproval": "這個項目已被暫緩核可",
+ "errorloadingentries": "載入項目時發生錯誤",
+ "errorloadingentry": "載入項目時發生錯誤",
+ "errorloadingglossary": "載入詞彙表時發生錯誤.",
+ "noentriesfound": "未找到條目.",
+ "searchquery": "搜索查詢"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/ar.json b/src/addon/mod/imscp/lang/ar.json
new file mode 100755
index 000000000..096b9004c
--- /dev/null
+++ b/src/addon/mod/imscp/lang/ar.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "خطاء في محتوى الحزمة",
+ "showmoduledescription": "اظهر الوصف"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/bg.json b/src/addon/mod/imscp/lang/bg.json
new file mode 100755
index 000000000..0637a088a
--- /dev/null
+++ b/src/addon/mod/imscp/lang/bg.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/ca.json b/src/addon/mod/imscp/lang/ca.json
new file mode 100755
index 000000000..eb2a7a7d6
--- /dev/null
+++ b/src/addon/mod/imscp/lang/ca.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Error en el contingut del paquet!",
+ "showmoduledescription": "Mostra la descripció"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/cs.json b/src/addon/mod/imscp/lang/cs.json
new file mode 100755
index 000000000..3b8edfc3e
--- /dev/null
+++ b/src/addon/mod/imscp/lang/cs.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Chyba v balíčku!",
+ "showmoduledescription": "Zobrazit popis"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/da.json b/src/addon/mod/imscp/lang/da.json
new file mode 100755
index 000000000..9e996b9e1
--- /dev/null
+++ b/src/addon/mod/imscp/lang/da.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Vis beskrivelse"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/de-du.json b/src/addon/mod/imscp/lang/de-du.json
new file mode 100755
index 000000000..f3077dcb1
--- /dev/null
+++ b/src/addon/mod/imscp/lang/de-du.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Beschreibung anzeigen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/de.json b/src/addon/mod/imscp/lang/de.json
new file mode 100755
index 000000000..237cacc29
--- /dev/null
+++ b/src/addon/mod/imscp/lang/de.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Fehler bei IMS Content Package",
+ "showmoduledescription": "Beschreibung anzeigen"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/el.json b/src/addon/mod/imscp/lang/el.json
new file mode 100755
index 000000000..ddc770806
--- /dev/null
+++ b/src/addon/mod/imscp/lang/el.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Εμφάνιση περιγραφής"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/es-mx.json b/src/addon/mod/imscp/lang/es-mx.json
new file mode 100755
index 000000000..9a78552a7
--- /dev/null
+++ b/src/addon/mod/imscp/lang/es-mx.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "¡Error del paquete de contenido!",
+ "showmoduledescription": "Mostrar descripción"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/es.json b/src/addon/mod/imscp/lang/es.json
new file mode 100755
index 000000000..14db8d714
--- /dev/null
+++ b/src/addon/mod/imscp/lang/es.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Error en el paquete de contenidos",
+ "showmoduledescription": "Mostrar descripción"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/eu.json b/src/addon/mod/imscp/lang/eu.json
new file mode 100755
index 000000000..640bc930a
--- /dev/null
+++ b/src/addon/mod/imscp/lang/eu.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Errorea eduki-paketean!",
+ "showmoduledescription": "Deskribapena erakutsi"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/fa.json b/src/addon/mod/imscp/lang/fa.json
new file mode 100755
index 000000000..0637a088a
--- /dev/null
+++ b/src/addon/mod/imscp/lang/fa.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/fi.json b/src/addon/mod/imscp/lang/fi.json
new file mode 100755
index 000000000..2e114bded
--- /dev/null
+++ b/src/addon/mod/imscp/lang/fi.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Näytä kuvaus"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/fr.json b/src/addon/mod/imscp/lang/fr.json
new file mode 100755
index 000000000..ce7407f52
--- /dev/null
+++ b/src/addon/mod/imscp/lang/fr.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Erreur du contenu du paquetage !",
+ "showmoduledescription": "Afficher la description"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/he.json b/src/addon/mod/imscp/lang/he.json
new file mode 100755
index 000000000..164795686
--- /dev/null
+++ b/src/addon/mod/imscp/lang/he.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "שגיאה בחבילת התוכן!",
+ "showmoduledescription": "הצגת תיאור"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/hr.json b/src/addon/mod/imscp/lang/hr.json
new file mode 100755
index 000000000..8519e3230
--- /dev/null
+++ b/src/addon/mod/imscp/lang/hr.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Prikaži opis"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/hu.json b/src/addon/mod/imscp/lang/hu.json
new file mode 100755
index 000000000..06b2d9be8
--- /dev/null
+++ b/src/addon/mod/imscp/lang/hu.json
@@ -0,0 +1,3 @@
+{
+ "deploymenterror": "Hiba a tartalomcsomagban!"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/it.json b/src/addon/mod/imscp/lang/it.json
new file mode 100755
index 000000000..2e17c9632
--- /dev/null
+++ b/src/addon/mod/imscp/lang/it.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Si è verificato un errore nel content package!",
+ "showmoduledescription": "Visualizza descrizione"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/ja.json b/src/addon/mod/imscp/lang/ja.json
new file mode 100755
index 000000000..5bd979018
--- /dev/null
+++ b/src/addon/mod/imscp/lang/ja.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "コンテンツパッケージエラー!",
+ "showmoduledescription": "説明の表示"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/lt.json b/src/addon/mod/imscp/lang/lt.json
new file mode 100755
index 000000000..392f97f08
--- /dev/null
+++ b/src/addon/mod/imscp/lang/lt.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Apibūdinimas"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/mr.json b/src/addon/mod/imscp/lang/mr.json
new file mode 100755
index 000000000..fa6f8ee8f
--- /dev/null
+++ b/src/addon/mod/imscp/lang/mr.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "वर्णन दर्शवा"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/nl.json b/src/addon/mod/imscp/lang/nl.json
new file mode 100755
index 000000000..915488c99
--- /dev/null
+++ b/src/addon/mod/imscp/lang/nl.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Fout in het pakket",
+ "showmoduledescription": "Toon beschrijving"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/no.json b/src/addon/mod/imscp/lang/no.json
new file mode 100755
index 000000000..9e996b9e1
--- /dev/null
+++ b/src/addon/mod/imscp/lang/no.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Vis beskrivelse"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/pl.json b/src/addon/mod/imscp/lang/pl.json
new file mode 100755
index 000000000..07c1ae590
--- /dev/null
+++ b/src/addon/mod/imscp/lang/pl.json
@@ -0,0 +1,3 @@
+{
+ "deploymenterror": "Błąd pakietu treści!"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/pt-br.json b/src/addon/mod/imscp/lang/pt-br.json
new file mode 100755
index 000000000..b4139e1b6
--- /dev/null
+++ b/src/addon/mod/imscp/lang/pt-br.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Erro de pacote de conteúdo!",
+ "showmoduledescription": "Mostrar descrição"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/pt.json b/src/addon/mod/imscp/lang/pt.json
new file mode 100755
index 000000000..bbbdbebd9
--- /dev/null
+++ b/src/addon/mod/imscp/lang/pt.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Mostrar descrição"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/ro.json b/src/addon/mod/imscp/lang/ro.json
new file mode 100755
index 000000000..9fdd01ebe
--- /dev/null
+++ b/src/addon/mod/imscp/lang/ro.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Arată descrierea"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/ru.json b/src/addon/mod/imscp/lang/ru.json
new file mode 100755
index 000000000..14e5d6208
--- /dev/null
+++ b/src/addon/mod/imscp/lang/ru.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Ошибка содержимого пакета!",
+ "showmoduledescription": "Показать описание"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/sr-cr.json b/src/addon/mod/imscp/lang/sr-cr.json
new file mode 100755
index 000000000..939547b3b
--- /dev/null
+++ b/src/addon/mod/imscp/lang/sr-cr.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Прикажи опис"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/sr-lt.json b/src/addon/mod/imscp/lang/sr-lt.json
new file mode 100755
index 000000000..8519e3230
--- /dev/null
+++ b/src/addon/mod/imscp/lang/sr-lt.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Prikaži opis"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/sv.json b/src/addon/mod/imscp/lang/sv.json
new file mode 100755
index 000000000..81c4d24eb
--- /dev/null
+++ b/src/addon/mod/imscp/lang/sv.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "Innehållspaket fel!",
+ "showmoduledescription": "Visa beskrivning"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/tr.json b/src/addon/mod/imscp/lang/tr.json
new file mode 100755
index 000000000..6a1384f21
--- /dev/null
+++ b/src/addon/mod/imscp/lang/tr.json
@@ -0,0 +1,4 @@
+{
+ "deploymenterror": "İçerik paketi hatası!",
+ "showmoduledescription": "Açıklamayı göster"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/uk.json b/src/addon/mod/imscp/lang/uk.json
new file mode 100755
index 000000000..871816777
--- /dev/null
+++ b/src/addon/mod/imscp/lang/uk.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "Показати опис"
+}
\ No newline at end of file
diff --git a/src/addon/mod/imscp/lang/zh-tw.json b/src/addon/mod/imscp/lang/zh-tw.json
new file mode 100755
index 000000000..e361819f5
--- /dev/null
+++ b/src/addon/mod/imscp/lang/zh-tw.json
@@ -0,0 +1,3 @@
+{
+ "showmoduledescription": "顯示說明"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/ar.json b/src/addon/mod/lesson/lang/ar.json
new file mode 100755
index 000000000..81cf97033
--- /dev/null
+++ b/src/addon/mod/lesson/lang/ar.json
@@ -0,0 +1,48 @@
+{
+ "answer": "أجب",
+ "attempt": "محاولة: {{$a}}",
+ "averagescore": "متوسط الدرجة",
+ "averagetime": "متوسط الوقت",
+ "branchtable": "محتوى",
+ "cannotfinduser": "لم يتم إيجاد المستخدم المسمى \"{{$a}}\"",
+ "completed": "تم",
+ "congratulations": "مبروك - لقد وصلت إلى نهاية الدرس",
+ "continue": "استمر",
+ "detailedstats": "إحصائيات تفصيلية",
+ "didnotanswerquestion": "لم تتم أجابة هذا السؤال",
+ "displayofgrade": "أعرض الدرجة (للطلاب فقط)",
+ "enterpassword": "الرجاء إدخال كلمة المرور",
+ "eolstudentoutoftimenoanswers": "لم تجبن على أي أسئلة. لقد تلقيت 0 لهذا الدرس.",
+ "finish": "نهاية",
+ "grade": "درجة",
+ "highscore": "الدرجة القصوى",
+ "hightime": "الوقت الاقصى",
+ "lessonmenu": "قائمة الدرس",
+ "lessonstats": "أحصائيات درس",
+ "loginfail": "فشلت عملية الدخول، اعد المحاولة",
+ "lowscore": "أقل درجة",
+ "lowtime": "أقل وقت",
+ "modattemptsnoteacher": "معاينة الطالب تعمل فقط للطلاب",
+ "noanswer": "لم تعطى إجابة",
+ "nolessonattempts": "لم يتم إجراء محاولات مسبقة في هذا الدرس",
+ "notcompleted": "لم يتم انهائه",
+ "numberofcorrectanswers": "عدد الاجابات الصحيحة: {{$a}}",
+ "numberofpagesviewed": "عدد الصفحات التي تم مشاهدتها: {{$a}}",
+ "or": "أو",
+ "overview": "عرض عام",
+ "preview": "معاينه",
+ "question": "سؤال",
+ "reports": "تقارير",
+ "response": "إجابة",
+ "review": "مراجعة",
+ "reviewlesson": "مراجعة الدرس",
+ "reviewquestionback": "نعم، أرغب في المحاولة ثانياً",
+ "submit": "سلم",
+ "thatsthecorrectanswer": "هذه إجابة صحيحة",
+ "thatsthewronganswer": "هذه إجابة خاطئة",
+ "timeremaining": "الزمن المتبقى",
+ "timetaken": "الزمن المستنفذ",
+ "welldone": "أحسنت!",
+ "youranswer": "إجابتك",
+ "youshouldview": "يجب أن تجب على الأقل: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/bg.json b/src/addon/mod/lesson/lang/bg.json
new file mode 100755
index 000000000..599f091c0
--- /dev/null
+++ b/src/addon/mod/lesson/lang/bg.json
@@ -0,0 +1,72 @@
+{
+ "answer": "Отговор",
+ "attempt": "{{$a}} опит",
+ "attemptsremaining": "Имате оставащ(и) {{$a}} опит(a)",
+ "averagescore": "Среден резултат",
+ "averagetime": "Средно време",
+ "branchtable": "Съдържание",
+ "cannotfindattempt": "Грешка: не може да бъде намерен опит",
+ "cannotfinduser": "Грешка: не може да се намерят потребители",
+ "clusterjump": "Непоказван въпрос в група",
+ "completed": "Завършена",
+ "congratulations": "Поздравления - достигнахте до края на урока",
+ "continue": "Продължаване",
+ "continuetonextpage": "Продължи към следващата страница",
+ "defaultessayresponse": "Вашето есе ще бъде оценено от преподавател от курса.",
+ "detailedstats": "Детайлни статистики",
+ "didnotanswerquestion": "Did not answer this question.",
+ "displayofgrade": "Показване на оценката (само за ученици)",
+ "displayscorewithessays": "Получихте {{$a.score}} точки от общо {{$a.tempmaxgrade}} точки за въпросите с автоматично оценяване. Heu aconseguit {{$a.score}} punts d'un màxim de {{$a.tempmaxgrade}} de les preguntes qualificades automàticament. Les vostres {{$a.essayquestions}} preguntes de resposta oberta es qualificaran més endavant i s'afegiran a la puntuació final. La vostra qualificació actual, sense les preguntes de resposta oberta, és de {{$a.score}} sobre {{$a.grade}}. Du fik {{$a.score}} ud af {{$a.tempmaxgrade}} for de automatisk rettede spørgsmål. Dit/dine {{$a.essayquestions}} tekstsvar vil blive bedømt og lagt til scoren senere. Din nuværende karakter uden tekstsvarene er {{$a.score}} ud af {{$a.grade}}. Sie haben bisher {{$a.score}} von {{$a.tempmaxgrade}} Punkten für die automatisch bewerteten Fragen erzielt. Die Freitext-Aufgaben ({{$a.essayquestions}}) werden später bewertet und zur Gesamtpunktzahl hinzugefügt . Ihre derzeitige Bewertung: {{$a.score}} von {{$a.grade}} Punkten.
Вашите {{$a.essayquestions}} въпроси от тип есе ще бъдат оценени и добавени към окончателния резултат на по-късна дата.
Вашата текуща оценка, без въпросите от тип есе е {{$a.score}} от максимум {{$a.grade}}",
+ "displayscorewithoutessays": "Вашият резултат е {{$a.score}} (От максимум {{$a.grade}}).",
+ "emptypassword": "Паролата не може да е празна",
+ "enterpassword": "Please enter the password:",
+ "eolstudentoutoftimenoanswers": "You did not answer any questions. You have received a 0 for this lesson.",
+ "firstwrong": "Unfortunately you cannot earn this one point, because your response was not correct. Would you like to keep guessing, just for the sheer joy of learning (but for no point credit)?",
+ "gotoendoflesson": "Отиване в края на урока",
+ "grade": "Оценка",
+ "highscore": "Висок резултат",
+ "hightime": "High Time",
+ "leftduringtimed": "You have left during a timed lesson.
Please click on Continue to restart the lesson.",
+ "leftduringtimednoretake": "You have left during a timed lesson and you are
not allowed to retake or continue the lesson.",
+ "lessonmenu": "Lesson Menu",
+ "lessonstats": "Статистики за урока",
+ "loginfail": "Login Failed, please try again...",
+ "lowscore": "Нисък резултат",
+ "lowtime": "Low Time",
+ "maximumnumberofattemptsreached": "Достигнат е максималния брой опити - преминаване на следваща страница",
+ "modattemptsnoteacher": "\"Преглеждане от студента\" се отнася само за студент.",
+ "noanswer": "Няма даден отговор",
+ "nolessonattempts": "Не са правени опити за изпълнение на урока.",
+ "notcompleted": "Не е завършен",
+ "numberofcorrectanswers": "Верни отговори: {{$a}}",
+ "numberofpagesviewed": "Брой на отговорените въпроси: {{$a}}",
+ "numberofpagesviewednotice": "Брой отговорени въпроси: {{$a.nquestions}}; (Трябва да отговорите поне на {{$a.minquestions}})",
+ "ongoingcustom": "Вие сте получили до сега {{$a.score}} точки от {{$a.currenthigh}} възможни.",
+ "ongoingnormal": "Вие сте отговорили до сега на {{$a.correct}} въпрос(и) от общо {{$a.viewed}} въпроса.",
+ "or": "ИЛИ",
+ "overview": "Обобщение",
+ "preview": "Преглед",
+ "progressbarteacherwarning2": "Вие няма да видите лентата за напредък, защото можете да редактирате този урок",
+ "progresscompleted": "Вие сте изпълнили {{$a}}% от урока",
+ "question": "Въпрос",
+ "reports": "Отчети",
+ "response": "Забележка",
+ "review": "Преглед",
+ "reviewlesson": "Review Lesson",
+ "reviewquestionback": "Да, искам да опитам отново",
+ "reviewquestioncontinue": "Не, искам само да мина на следващия въпрос",
+ "secondpluswrong": "Не е точно така. Искате ли да опитате отново?",
+ "submit": "Продължаване",
+ "teacherjumpwarning": "В този урок е използван преход \"{{$a.cluster}}\" или преход \"{{$a.unseen}}\". Вместо това ще бъде използван преход \"Следваща страница\". Влезте като студент за да изпробвате тези преходи.",
+ "teacherongoingwarning": "Получените точки се показват само на студент. Влезте като студент за да проверите как се начисляват точки.",
+ "teachertimerwarning": "Timer only works for students. Test the timer by loggin in as a student.",
+ "thatsthecorrectanswer": "Това е верен отговор",
+ "thatsthewronganswer": "Това е грешен отговор",
+ "timeremaining": "Time Remaining",
+ "timetaken": "Изминало време",
+ "unseenpageinbranch": "Не показван въпрос в меню-страница",
+ "welldone": "Добре изпълнено!",
+ "youhaveseen": "Вече сте видели повече от една страница от този урок.
Искате ли да продължите от последната, която сте чели?",
+ "youranswer": "Вашият отговор",
+ "youshouldview": "Трябва да прегледате поне {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/ca.json b/src/addon/mod/lesson/lang/ca.json
new file mode 100755
index 000000000..8978fa00b
--- /dev/null
+++ b/src/addon/mod/lesson/lang/ca.json
@@ -0,0 +1,84 @@
+{
+ "answer": "Resposta",
+ "attempt": "Intent: {{$a}}",
+ "attemptheader": "Intent",
+ "attemptsremaining": "Us resten {{$a}} intents",
+ "averagescore": "Puntuació mitjana",
+ "averagetime": "Temps promig",
+ "branchtable": "Contingut",
+ "cannotfindattempt": "Error: no es pot trobar l'intent",
+ "cannotfinduser": "Error: no es poden trobar els usuaris",
+ "clusterjump": "Pregunta no vista en un clúster",
+ "completed": "Completat",
+ "congratulations": "Felicitacions: heu arribat al final de la lliçó",
+ "continue": "Continua",
+ "continuetonextpage": "Continua a la pàgina següent",
+ "defaultessayresponse": "El vostre treball serà qualificat pel professor del curs.",
+ "detailedstats": "Estadístiques detallades",
+ "didnotanswerquestion": "No heu respost aquesta pregunta.",
+ "displayofgrade": "Visualització de la qualificació (només estudiants)",
+ "displayscorewithessays": "
Feu clic a Continua per tornar-la a començar.",
+ "leftduringtimednoretake": "Heu abandonat una lliçó cronometrada i no està permès continuar-la o torna-la a fer.",
+ "lessonmenu": "Menú de la lliçó",
+ "lessonstats": "Estadístiques de la lliçó",
+ "linkedmedia": "Fitxer enllaçat",
+ "loginfail": "Ha fallat l'inici de sessió, torneu-ho a provar...",
+ "lowscore": "Puntuació més baixa",
+ "lowtime": "Temps més baix",
+ "maximumnumberofattemptsreached": "Heu arribat al nombre màxim d'intents. Ara passareu a la pàgina següent.",
+ "modattemptsnoteacher": "No podeu fer la revisió dels estudiants.",
+ "noanswer": "Una o més preguntes no tenen resposta. Si us plau, torneu enrere i responeu-les.",
+ "nolessonattempts": "Encara no s'ha registrat cap intent en aquesta lliçó",
+ "nolessonattemptsgroup": "Ningú del grup {{$a}} ha fet encara cap intent d'aquesta lliçó.",
+ "notcompleted": "Incomplet",
+ "numberofcorrectanswers": "Nombre de respostes correctes: {{$a}}",
+ "numberofpagesviewed": "Nombre de preguntes contestades: {{$a}}",
+ "numberofpagesviewednotice": "Nombre de preguntes contestades: {{$a.nquestions}}; (n'hauríeu de contestar com a mínim {{$a.minquestions}})",
+ "ongoingcustom": "Fins ara heu aconseguit {{$a.score}} punts de {{$a.currenthigh}}.",
+ "ongoingnormal": "Heu contestat correctament {{$a.correct}} preguntes d'un total de {{$a.viewed}} intents.",
+ "or": "O",
+ "overview": "Revisió",
+ "preview": "Previsualització",
+ "progressbarteacherwarning2": "No veureu la barra de progrés, ja que teniu permís per modificar aquesta lliçó",
+ "progresscompleted": "Heu completat el {{$a}}% de la lliçó.",
+ "question": "Pregunta",
+ "rawgrade": "Qualificació bruta",
+ "reports": "Informes",
+ "response": "Reacció",
+ "retakefinishedinsync": "S'ha sincronitzat un intent fora de línia. Voleu revisar-lo?",
+ "retakelabelfull": "{{retake}}: {{grade}} {{timestart}} ({{duration}})",
+ "retakelabelshort": "{{retake}}: {{grade}} {{timestart}}",
+ "review": "Revisa",
+ "reviewlesson": "Revisa la lliçó",
+ "reviewquestionback": "Sí, vull tornar-ho a provar",
+ "reviewquestioncontinue": "No, vull anar a la pregunta següent",
+ "secondpluswrong": "Incorrecte de nou. Voleu tornar-ho a provar?",
+ "submit": "Envia",
+ "teacherjumpwarning": "En aquesta lliçó s'utilitza un salt {{$a.cluster}} o un salt {{$a.unseen}}. En lloc d'això, s'utilitzarà un salt a la pàgina següent. Inicieu sessió com a estudiant per comprovar aquests salts.",
+ "teacherongoingwarning": "La puntuació acumulada només es mostra a l'estudiant. Inicieu sessió com a estudiant per comprovar la puntuació acumulada.",
+ "teachertimerwarning": "El cronòmetre només es mostra als estudiants. Entreu com estudiant per comprovar-ne el funcionament",
+ "thatsthecorrectanswer": "Aquesta és la resposta correcta",
+ "thatsthewronganswer": "Aquesta resposta és errònia",
+ "timeremaining": "Temps restant",
+ "timetaken": "Temps dedicat",
+ "unseenpageinbranch": "Pregunta no vista en una pàgina de contingut",
+ "warningretakefinished": "L'intent s'ha finalitzat al lloc web",
+ "welldone": "Molt bé",
+ "youhaveseen": "Ja heu vist més d'una pàgina d'aquesta lliçó.
Voleu començar a la darrera pàgina que vau veure?",
+ "youranswer": "La vostra resposta",
+ "yourcurrentgradeisoutof": "La vostra qualificació actual és {{$a.grade}} sobre {{$a.total}}",
+ "youshouldview": "N'hauríeu de contestar com a mínim: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/cs.json b/src/addon/mod/lesson/lang/cs.json
new file mode 100755
index 000000000..43380f9a9
--- /dev/null
+++ b/src/addon/mod/lesson/lang/cs.json
@@ -0,0 +1,85 @@
+{
+ "answer": "Odpověď",
+ "attempt": "Pokus: {{$a}}",
+ "attemptheader": "Pokus",
+ "attemptsremaining": "Zbývající počet pokusů: {{$a}}",
+ "averagescore": "Průměrná známka",
+ "averagetime": "Průměrný čas",
+ "branchtable": "Obsahová stránka",
+ "cannotfindattempt": "Chyba: nelze najít pokus",
+ "cannotfinduser": "Chyba: nelze najít uživatele",
+ "clusterjump": "Neprohlédnutá otázka v rámci svazku",
+ "completed": "Dokončeno",
+ "congratulations": "Gratulujeme – dosáhli jste konce přednášky",
+ "continue": "Pokračovat",
+ "continuetonextpage": "Pokračovat na následující stránku",
+ "defaultessayresponse": "Vaše tvořená odpověď bude ohodnocena vaším vyučujícím v kurzu.",
+ "detailedstats": "Podrobné statistiky",
+ "didnotanswerquestion": "Tuto otázku student(ka) nezodpověděl(a)",
+ "displayofgrade": "Zobrazení známky (pouze pro studenty)",
+ "displayscorewithessays": "Váš bodový zisk za automaticky hodnocené odpovědi je {{$a.score}} z {{$a.tempmaxgrade}}.
Vaše tvořené odpovědi (v počtu {{$a.essayquestions}}) budou ohodnoceny a zahrnuty
do vašeho konečného počtu bodů později.
Váš současný bodový zisk bez tvořených odpovědí je {{$a.score}} z {{$a.grade}}.",
+ "displayscorewithoutessays": "Váš bodový zisk je {{$a.score}} (z {{$a.grade}}).",
+ "emptypassword": "Heslo nemůže být prázdné",
+ "enterpassword": "Zadejte prosím heslo:",
+ "eolstudentoutoftimenoanswers": "Nezodpověděli jste žádnou otázku. Za tuto přednášku nezískáváte žádný bod.",
+ "errorprefetchrandombranch": "Tato přednáška obsahuje skok na náhodnou stránku. V aplikaci ji nelze zkoušet, dokud nebude spuštěna na webu.",
+ "errorreviewretakenotlast": "Tento pokus již nelze prohlédnout, protože byl dokončen další pokus.",
+ "finish": "Skončit",
+ "finishretakeoffline": "Tento pokus byl dokončen offline.",
+ "firstwrong": "Bohužel, vaše odpověď není správná. Chcete to zkusit ještě jednou? (ovšem již bez bodového zisku)",
+ "gotoendoflesson": "Přejít na konec přednášky",
+ "grade": "Známka",
+ "highscore": "Nejlepší známka",
+ "hightime": "Nejdelší čas",
+ "leftduringtimed": "Opustili jste přednášku s časovým limitem.
Chcete-li přednášku začít znovu, stiskněte Pokračovat.",
+ "leftduringtimednoretake": "Opustili jste přednášku s časovým limitem a není
vám povoleno začít znovu nebo pokračovat.",
+ "lessonmenu": "Nabídka přednášky",
+ "lessonstats": "Statistiky přednášky",
+ "linkedmedia": "Odkaz na média",
+ "loginfail": "Nesprávné heslo. Zkuste to prosím znovu.",
+ "lowscore": "Nejhorší známka",
+ "lowtime": "Nejkratší čas",
+ "maximumnumberofattemptsreached": "Vyčerpali jste maximální počet pokusů – následuje další stránka přednášky",
+ "modattemptsnoteacher": "Revize funguje pouze studentům",
+ "noanswer": "Neodpověděli jste jednu nebo více otázek. Prosím, vraťte se zpět a zadejte odpověď.",
+ "nolessonattempts": "O zodpovězení otázek v této přednášce se ještě nikdo nepokusil.",
+ "nolessonattemptsgroup": "Někteří ({{$a}}) členové skupiny se dosud nepokusili o absolvování této přednášky.",
+ "notcompleted": "Nedokončeno",
+ "numberofcorrectanswers": "Počet správných odpovědí: {{$a}}",
+ "numberofpagesviewed": "Počet prohlédnutých stránek: {{$a}}",
+ "numberofpagesviewednotice": "Máte {{$a.nquestions}} zodpovězených otázek; (Máte jich zodpovědět alespoň: {{$a.minquestions}})",
+ "ongoingcustom": "Váš dosavadní bodový zisk: {{$a.score}} z {{$a.currenthigh}}.",
+ "ongoingnormal": "Zatím jste správně zodpověděli {{$a.correct}} z {{$a.viewed}} otázek.",
+ "or": "NEBO",
+ "overview": "Přehled",
+ "preview": "Náhled",
+ "progressbarteacherwarning2": "Ukazatel průchodu se zobrazuje pouze studentům. Chcete-li si jej ověřit, přihlaste se jako student.",
+ "progresscompleted": "Dokončili jste {{$a}} % přednášky",
+ "question": "Otázka",
+ "rawgrade": "Hrubá známka",
+ "reports": "Výsledky",
+ "response": "Reakce",
+ "retakefinishedinsync": "Offline pokus byl synchronizován. Chcete jej zobrazit?",
+ "retakelabelfull": "{{retake}}: {{grade}} {{timestart}} ({{duration}})",
+ "retakelabelshort": "{{retake}}: {{grade}} {{timestart}}",
+ "review": "Revize",
+ "reviewlesson": "Revize přednášky",
+ "reviewquestionback": "Ano, chci to zkusit ještě jednou",
+ "reviewquestioncontinue": "Ne, chci pokračovat dál",
+ "secondpluswrong": "Tato odpověď není správná. Chcete to zkusit ještě jednou?",
+ "submit": "Odeslat",
+ "teacherjumpwarning": "Tato přednáška obsahuje skok typu \"{{$a.cluster}}\" nebo \"{{$a.unseen}}\". Namísto něj bude použit skok na další stránku. Přihlaste se jako student a zkontrolujte tyto skoky.",
+ "teacherongoingwarning": "Průběžný bodový zisk se zobrazuje pouze studentům. Chcete-li si jej ověřit, přihlaste se jako student.",
+ "teachertimerwarning": "Stopky fungují pouze studentům. Chcete-li si je vyzkoušet, přihlaste se jako student.",
+ "thatsthecorrectanswer": "Tato odpověď je správná.",
+ "thatsthewronganswer": "Tato odpověď není správná.",
+ "timeremaining": "Zbývající čas",
+ "timetaken": "Doba průchodu",
+ "unseenpageinbranch": "Nezobrazená otázka v rámci stránky",
+ "warningretakefinished": "Pokus byl dokončen na webových stránkách.",
+ "welldone": "Výborně!",
+ "youhaveseen": "Některé ze stránek této přednášky jste již viděli.
Chcete začít na poslední stránce, kterou jste navštívili?",
+ "youranswer": "Vaše odpověď",
+ "yourcurrentgradeisoutof": "Vaše známka nyní je {{$a.grade}} z možných {{$a.total}}",
+ "youshouldview": "Měli byste zodpovědět nejméně {{$a}} otázek."
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/da.json b/src/addon/mod/lesson/lang/da.json
new file mode 100755
index 000000000..0124df25f
--- /dev/null
+++ b/src/addon/mod/lesson/lang/da.json
@@ -0,0 +1,83 @@
+{
+ "answer": "Svar",
+ "attempt": "Forsøg: {{$a}}",
+ "attemptheader": "Forsøg",
+ "attemptsremaining": "Du har {{$a}} forsøg endnu",
+ "averagescore": "Gennemsnitlig score",
+ "averagetime": "Gennemsnitstid",
+ "branchtable": "Indhold",
+ "cannotfindattempt": "Fejl: kunne ikke finde forsøget",
+ "cannotfinduser": "Fejl: kunne ikke finde brugere",
+ "clusterjump": "Usete spørgsmål i en klynge",
+ "completed": "Gennemført",
+ "congratulations": "Tillykke - Denne lektion er slut.",
+ "continue": "Fortsæt",
+ "continuetonextpage": "Fortsæt til næste side.",
+ "defaultessayresponse": "Din tekst vil blive vurderet af din lærer på kurset.",
+ "detailedstats": "Detaljeret statistik",
+ "didnotanswerquestion": "Besvarede ikke dette spørgsmål.",
+ "displayofgrade": "Vis bedømmelse (for studerende)",
+ "displayscorewithessays": "
Klik på fortsæt for genstarte lektionen.",
+ "leftduringtimednoretake": "Du har forladt en tidsbegrænset lektion
Du kan ikke begynde forfra eller fortsætte lektionen.",
+ "lessonmenu": "Lektionsmenu",
+ "lessonstats": "Lektionsstatistik",
+ "linkedmedia": "Linket mediefil",
+ "loginfail": "Login fejlede, prøv igen..",
+ "lowscore": "Lav score",
+ "lowtime": "Kort tid",
+ "maximumnumberofattemptsreached": "Det maksimale antal forsøg er nået - du føres til næste side",
+ "modattemptsnoteacher": "Det er kun studerende der kan gennemse",
+ "noanswer": "Et eller flere spørgsmål er ikke besvaret. Gå tilbage og aflever en besvarelse.",
+ "nolessonattempts": "Ingen har prøvet denne lektion",
+ "nolessonattemptsgroup": "Ingen forsøg er udført af {{$a}} gruppemedlemmer i denne lektion",
+ "notcompleted": "Ikke færdiggjort",
+ "numberofcorrectanswers": "Antal rigtige svar: {{$a}}",
+ "numberofpagesviewed": "Antal sider vist: {{$a}}",
+ "numberofpagesviewednotice": "Antal besvarede spørgsmål: {{$a.nquestions}} (Du skal mindst besvare {{$a.minquestions}})",
+ "ongoingcustom": "Du har indtil videre opnået {{$a.score}} ud af {{$a.currenthigh}} point",
+ "ongoingnormal": "Du har besvaret {{$a.correct}} spørgsmål rigtigt ud af {{$a.viewed}} viste.",
+ "or": "ELLER",
+ "overview": "Oversigt",
+ "preview": "Forhåndsvisning",
+ "progressbarteacherwarning2": "Du kan ikke se progressionslinjen da ud kan redigere lektionen",
+ "progresscompleted": "Du har gennemført {{$a}}% af lektionen",
+ "question": "Spørgsmål",
+ "rawgrade": "Rå point",
+ "reports": "Rapporter",
+ "response": "Respons",
+ "retakefinishedinsync": "Et offline forsøg er synkroniseret. Vil du gennemse det?",
+ "review": "Prøv igen",
+ "reviewlesson": "Prøv en gang mere",
+ "reviewquestionback": "Ja, jeg vil gerne prøve igen",
+ "reviewquestioncontinue": "Nej, jeg vil bare videre til næste spørgsmål",
+ "secondpluswrong": "Ikke rigtigt. Vil du prøve en gang mere?",
+ "submit": "Aflever",
+ "teacherjumpwarning": "Et {{$a.cluster}}-spring eller et {{$a.unseen}}-spring bliver benyttet i denne lektion. Springet \"Næste side\" vil blive brugt i stedet. Log ind som studerende for at teste disse spring.",
+ "teacherongoingwarning": "Løbende score vises kun for studerende. Log ind som studerende for at teste løbende score.",
+ "teachertimerwarning": "Timeren virker kun for studerende. Du kan teste det ved at logge ind som studerende.",
+ "thatsthecorrectanswer": "Rigtigt svar! :-)",
+ "thatsthewronganswer": "Desværre, svaret er forkert.",
+ "timeremaining": "Tid tilbage",
+ "timetaken": "Varighed",
+ "unseenpageinbranch": "Usete spørgsmål på en indholdsside",
+ "warningretakefinished": "Dette forsøg blev afsluttet på websiden.",
+ "welldone": "Flot klaret!",
+ "youhaveseen": "Du har allerede set mere end en side af denne lektion.
Ønsker du at starte på den sidste side du så?",
+ "youranswer": "Dine svar",
+ "yourcurrentgradeisoutof": "Din totale score er {{$a.grade}} ud af {{$a.total}}",
+ "youshouldview": "Du skulle se mindst: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/de-du.json b/src/addon/mod/lesson/lang/de-du.json
new file mode 100755
index 000000000..b3831e269
--- /dev/null
+++ b/src/addon/mod/lesson/lang/de-du.json
@@ -0,0 +1,85 @@
+{
+ "answer": "Antwort",
+ "attempt": "Versuch: {{$a}}",
+ "attemptheader": "Versuch",
+ "attemptsremaining": "Verbleibende Versuche: {{$a}}",
+ "averagescore": "Durchschnittliche Bewertung",
+ "averagetime": "Durchschnittliche Zeit",
+ "branchtable": "Inhaltsseite",
+ "cannotfindattempt": "Fehler: Versuch konnte nicht gefunden werden",
+ "cannotfinduser": "Fehler: Nutzer/innen konnten nicht gefunden werden",
+ "clusterjump": "Ungesehene Frage innerhalb des Clusters",
+ "completed": "Abgeschlossen",
+ "congratulations": "Herzlichen Glückwunsch! Du hast das Ende der Lektion erreicht.",
+ "continue": "Fortsetzen",
+ "continuetonextpage": "Auf der nächsten Seite fortsetzen",
+ "defaultessayresponse": "Deine Freitext-Antwort wird später bewertet.",
+ "detailedstats": "Ergebnisanalyse",
+ "didnotanswerquestion": "Hat diese Frage nicht beantwortet.",
+ "displayofgrade": "Anzeige der Bewertungen (für Teilnehmer/innen)",
+ "displayscorewithessays": "Du hast bisher {{$a.score}} von {{$a.tempmaxgrade}} Punkten erzielt (ohne Freitext-Aufgaben).
Freitext-Aufgaben ({{$a.essayquestions}}) werden später bewertet und zur Gesamtpunktzahl hinzugefügt .
Deine derzeitige Bewertung: {{$a.score}} von {{$a.grade}} Punkten (mit Freitext-Aufgaben).",
+ "displayscorewithoutessays": "Deine Bewertung: {{$a.score}} Punkte (von {{$a.grade}} Punkten).",
+ "emptypassword": "Das Kennwort muss eingegeben werden",
+ "enterpassword": "Bitte gib das Kennwort ein:",
+ "eolstudentoutoftimenoanswers": "Du hast keine Fragen beantwortet. Du erhältst daher 0 Punkte/keine Bewertung für die Lektion.",
+ "errorprefetchrandombranch": "Diese Lektion enthält einen Sprung zu einer zufälligen Seite. Die Lektion kann in der App nicht versucht werden, ohne im Webbrowser begonnen worden zu sein.",
+ "errorreviewretakenotlast": "Dieser Versuch kann nicht mehr angesehen werden, weil ein weiterer Versuch beendet wurde.",
+ "finish": "Fertigstellen",
+ "finishretakeoffline": "Dieser Versuch wurde offline beendet.",
+ "firstwrong": "Deine Antwort ist falsch. Möchtest du sie noch einmal (ohne Bewertung) wiederholen?",
+ "gotoendoflesson": "Zum Lektionende gehen",
+ "grade": "Relative Bewertung",
+ "highscore": "Beste Bewertung",
+ "hightime": "Beste Zeit",
+ "leftduringtimed": "Du hast die Lektion abgebrochen. Die Bearbeitung der Lektion ist zeitlich begrenzt.
Klicke auf Fortsetzen, um die Lektion erneut zu beginnen.",
+ "leftduringtimednoretake": "Du hast die Lektion abgebrochen. Die Bearbeitung der Lektion ist zeitlich begrenzt.
Du kannst diese Lektion nicht mehr bearbeiten.",
+ "lessonmenu": "Seitenmenü",
+ "lessonstats": "Statistik",
+ "linkedmedia": "Verlinkte Medien",
+ "loginfail": "Der Login ist gescheitert. Bitte versuche es noch einmal.",
+ "lowscore": "Schlechteste Bewertung",
+ "lowtime": "Schlechteste Zeit",
+ "maximumnumberofattemptsreached": "Du hast die Höchstzahl der Versuche erreicht - weiter zur nächsten Seite",
+ "modattemptsnoteacher": "Navigation nur für Teilnehmer/innen möglich",
+ "noanswer": "Du hast keine Antwort abgegeben. Gehe zurück und gib eine Antwort ein.",
+ "nolessonattempts": "Bisher keine Versuche",
+ "nolessonattemptsgroup": "Keines der {{$a}} Gruppenmitglieder hat zu dieser Lektion einen Versuch gemacht.",
+ "notcompleted": "Nicht beendet",
+ "numberofcorrectanswers": "Richtige Antworten: {{$a}}",
+ "numberofpagesviewed": "Beantwortete Fragen: {{$a}}",
+ "numberofpagesviewednotice": "Zahl der beantworteten Fragen: {{$a.nquestions}} (mindestens zu beantworten: {{$a.minquestions}})",
+ "ongoingcustom": "Gesamtpunktzahl: {{$a.score}} / {{$a.currenthigh}}",
+ "ongoingnormal": "Richtige Antworten: {{$a.correct}} / {{$a.viewed}}",
+ "or": "ODER",
+ "overview": "Übersicht",
+ "preview": "Vorschau",
+ "progressbarteacherwarning2": "Die Fortschrittsanzeige wird Ihnen nicht angezeigt, da Sie diese Lektion als Trainer/in bearbeiten können.",
+ "progresscompleted": "Sie haben {{$a}}% der Lektion erledigt",
+ "question": "Frage",
+ "rawgrade": "Absolute Bewertung",
+ "reports": "Ergebnisse",
+ "response": "Feedback",
+ "retakefinishedinsync": "Ein Offline-Versuch wurde synchronisiert. Möchtest du ihn überprüfen?",
+ "retakelabelfull": "{{retake}}: {{grade}} {{timestart}} ({{duration}})",
+ "retakelabelshort": "{{retake}}: {{grade}} {{timestart}}",
+ "review": "Rückschau",
+ "reviewlesson": "Zur Lektion",
+ "reviewquestionback": "Wiederholen",
+ "reviewquestioncontinue": "Fortsetzen",
+ "secondpluswrong": "Nicht ganz. Möchtest du es noch einmal versuchen?",
+ "submit": "Einreichen",
+ "teacherjumpwarning": "In der Lektion werden \"{{$a.cluster}}\"-Sprünge und/oder \"{{$a.unseen}}\"-Sprünge verwendet. Diese Sprünge werden durch \"Nächste Seite\"-Sprünge ersetzt. Melde dich als Teilnehmer/in an, um diese Sprünge zu testen.",
+ "teacherongoingwarning": "Die aktuelle Bewertung wird nur für Teilnehmer/innen angezeigt. Melde dich als Teilnehmer/in an, um diese Funktion zu testen.",
+ "teachertimerwarning": "Die Zeitbegrenzung wird nur für Teilnehmer/innen angezeigt. Melde dich als Teilnehmer/in an, um diese Funktion zu testen.",
+ "thatsthecorrectanswer": "Richtig",
+ "thatsthewronganswer": "Falsch",
+ "timeremaining": "Verbleibende Zeit",
+ "timetaken": "Aufgewendete Zeit",
+ "unseenpageinbranch": "Noch nicht angezeigte Frage innerhalb des Zweiges",
+ "warningretakefinished": "Der Versuch wurde auf der Website beendet.",
+ "welldone": "Glückwunsch!",
+ "youhaveseen": "Du hast einige Seiten der Lektion schon einmal bearbeitet.
Möchtest du sie an der Stelle fortsetzen, an der du damals aufgehört hast?",
+ "youranswer": "Ihre Antwort",
+ "yourcurrentgradeisoutof": "Deine derzeitige Bewertung ist {{$a.grade}} von {{$a.total}}",
+ "youshouldview": "mindestens zu beantworten: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/de.json b/src/addon/mod/lesson/lang/de.json
new file mode 100755
index 000000000..a24b85667
--- /dev/null
+++ b/src/addon/mod/lesson/lang/de.json
@@ -0,0 +1,85 @@
+{
+ "answer": "Antwort",
+ "attempt": "Versuch: {{$a}}",
+ "attemptheader": "Versuch",
+ "attemptsremaining": "Verbleibende Versuche: {{$a}}",
+ "averagescore": "Durchschnittliche Bewertung",
+ "averagetime": "Durchschnittliche Zeit",
+ "branchtable": "Inhaltsseite",
+ "cannotfindattempt": "Fehler: Versuch konnte nicht gefunden werden",
+ "cannotfinduser": "Fehler: Nutzer/innen konnten nicht gefunden werden",
+ "clusterjump": "Ungesehene Frage innerhalb des Clusters",
+ "completed": "Abgeschlossen",
+ "congratulations": "Ende der Lektion.",
+ "continue": "Fortsetzen",
+ "continuetonextpage": "Auf der nächsten Seite fortsetzen",
+ "defaultessayresponse": "Die Freitext-Antwort wird später bewertet.",
+ "detailedstats": "Ergebnisanalyse",
+ "didnotanswerquestion": "Hat diese Frage nicht beantwortet.",
+ "displayofgrade": "Anzeige der Bewertungen (für Teilnehmer/innen)",
+ "displayscorewithessays": "
Klicken Sie auf Fortsetzen, um die Lektion erneut zu beginnen.",
+ "leftduringtimednoretake": "Sie haben die Lektion abgebrochen. Die Bearbeitung der Lektion ist zeitlich begrenzt.
Sie können diese Lektion nicht mehr bearbeiten.",
+ "lessonmenu": "Seitenmenü",
+ "lessonstats": "Statistik",
+ "linkedmedia": "Verlinkte Medien",
+ "loginfail": "Der Login ist gescheitert. Bitte versuchen Sie es noch einmal.",
+ "lowscore": "Schlechteste Bewertung",
+ "lowtime": "Schlechteste Zeit",
+ "maximumnumberofattemptsreached": "Sie haben die Höchstzahl der Versuche erreicht - weiter zur nächsten Seite",
+ "modattemptsnoteacher": "Navigation nur für Teilnehmer/innen möglich",
+ "noanswer": "Eine oder mehrere Fragen wurden nicht beantwortet. Gehen Sie zurück und geben Sie die Antworten ein.",
+ "nolessonattempts": "Bisher keine Versuche",
+ "nolessonattemptsgroup": "Keines der {{$a}} Gruppenmitglieder hat zu dieser Lektion einen Versuch gemacht.",
+ "notcompleted": "Nicht beendet",
+ "numberofcorrectanswers": "Richtige Antworten: {{$a}}",
+ "numberofpagesviewed": "Beantwortete Fragen: {{$a}}",
+ "numberofpagesviewednotice": "Zahl der beantworteten Fragen: {{$a.nquestions}} (mindestens zu beantworten: {{$a.minquestions}})",
+ "ongoingcustom": "Gesamtpunktzahl: {{$a.score}} / {{$a.currenthigh}}",
+ "ongoingnormal": "Richtige Antworten: {{$a.correct}} / {{$a.viewed}}",
+ "or": "ODER",
+ "overview": "Übersicht",
+ "preview": "Vorschau",
+ "progressbarteacherwarning2": "Die Fortschrittsanzeige wird Ihnen nicht angezeigt, da Sie diese Lektion als Trainer/in bearbeiten können.",
+ "progresscompleted": "Sie haben {{$a}}% der Lektion erledigt",
+ "question": "Frage",
+ "rawgrade": "Absolute Bewertung",
+ "reports": "Ergebnisse",
+ "response": "Feedback",
+ "retakefinishedinsync": "Ein Offline-Versuch wurde synchronisiert. Möchten Sie ihn überprüfen?",
+ "retakelabelfull": "{{retake}}: {{grade}} {{timestart}} ({{duration}})",
+ "retakelabelshort": "{{retake}}: {{grade}} {{timestart}}",
+ "review": "Rückschau",
+ "reviewlesson": "Zur Lektion",
+ "reviewquestionback": "Wiederholen",
+ "reviewquestioncontinue": "Fortsetzen",
+ "secondpluswrong": "Nicht ganz. Wollen Sie noch einmal wiederholen?",
+ "submit": "Einreichen",
+ "teacherjumpwarning": "In der Lektion werden '{{$a.cluster}}'-Sprünge und/oder '{{$a.unseen}}'-Sprünge verwendet. Diese Sprünge werden durch 'Nächste Seite'-Sprünge ersetzt. Melden Sie sich als Teilnehmer/in an, um die Sprünge zu testen.",
+ "teacherongoingwarning": "Die aktuelle Bewertung wird nur für Teilnehmer/innen angezeigt. Melden Sie sich als Teilnehmer/in an, um diese Funktion zu testen.",
+ "teachertimerwarning": "Die Zeitbegrenzung funktioniert nur für Teilnehmer/innen. Melden Sie sich als Teilnehmer/in an, um diese Funktion zu testen.",
+ "thatsthecorrectanswer": "Richtig",
+ "thatsthewronganswer": "Falsch",
+ "timeremaining": "Verbleibende Zeit",
+ "timetaken": "Aufgewendete Zeit",
+ "unseenpageinbranch": "Noch nicht angezeigte Frage innerhalb des Zweiges",
+ "warningretakefinished": "Der Versuch wurde auf der Website beendet.",
+ "welldone": "Glückwunsch!",
+ "youhaveseen": "Sie haben einige Seiten der Lektion schon einmal bearbeitet.
Wollen Sie an der Stelle fortsetzen, an der Sie damals aufgehört haben?",
+ "youranswer": "Ihre Antwort",
+ "yourcurrentgradeisoutof": "Ihre derzeitige Bewertung ist {{$a.grade}} von {{$a.total}}",
+ "youshouldview": "mindestens zu beantworten: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/el.json b/src/addon/mod/lesson/lang/el.json
new file mode 100755
index 000000000..cff02dafb
--- /dev/null
+++ b/src/addon/mod/lesson/lang/el.json
@@ -0,0 +1,78 @@
+{
+ "answer": "Απάντηση",
+ "attempt": "Προσπάθεια: {{$a}}",
+ "attemptsremaining": "Σας απομένουν {{$a}} προσπάθειες",
+ "averagescore": "Μέσος βαθμός",
+ "averagetime": "Μέσος χρόνος",
+ "branchtable": "Πίνακας διακλάδωσης",
+ "cannotfindattempt": "Σφάλμα: αποτυχία εύρεσης απάντησης",
+ "cannotfinduser": "Σφάλμα: αποτυχία εύρεσης χρηστών",
+ "clusterjump": "Ερώτηση μέσα σε συστοιχεία που δεν εμφανίστηκε",
+ "completed": "Ολοκληρώθηκε",
+ "congratulations": "Συγχαρητήρια - τελειώσατε την ενότητα",
+ "continue": "Συνέχεια",
+ "defaultessayresponse": "Η έκθεσή σας θα βαθμολογηθεί από τον καθηγητή του μαθήματος.",
+ "detailedstats": "Αναλυτικά στατιστικά",
+ "didnotanswerquestion": "Δεν απάντησε αυτήν την ερώτηση.",
+ "displayofgrade": "Εμφάνιση βαθμού (μόνο για μαθητές)",
+ "displayscorewithessays": "Πήρατε {{$a.score}} στα {{$a.tempmaxgrade}} για τις αυτόματα βαθμολογούμενες ερωτήσεις.
Οι {{$a.essayquestions}} ερωτήσεις έκθεσης θα βαθμολογηθούν και θα προστεθούν
στον τελικό σας βαθμό αργότερα.
Ο τρέχον βαθμός σας χωρίς τις ερωτήσεις έκθεσης είναι {{$a.score}} στα {{$a.grade}}",
+ "displayscorewithoutessays": "Ο βαθμός σας είναι {{$a.score}} (στα {{$a.grade}}).",
+ "emptypassword": "Ο κωδικός πρόσβασης δεν μπορεί να είναι κενός",
+ "enterpassword": "Παρακαλώ εισάγετε τον κωδικό:",
+ "eolstudentoutoftimenoanswers": "Δεν απαντήσατε καμία ερώτηση. Πήρατε 0 σε αυτή την ενότητα.",
+ "errorreviewretakenotlast": "Αυτή η προσπάθεια δεν μπορεί πλέον να αναθεωρηθεί επειδή μια άλλη προσπάθεια έχει ήδη ολοκληρωθεί.",
+ "finishretakeoffline": "Αυτή η προσπάθεια έχει ολοκληρωθεί εκτός σύνδεσης.",
+ "firstwrong": "Δυστυχώς δεν μπορείτε να κερδίσετε αυτό το βαθμό γιατί η απάντησή σας ήταν λάθος. Θέλετε να συνεχίσετε να μαντεύετε, μόνο για τη χαρά της μάθησης (δεν θα λάβετε το βαθμολογικό μπόνους);",
+ "grade": "Βαθμός",
+ "highscore": "Υψηλός βαθμός",
+ "hightime": "Υψηλός χρόνος",
+ "leftduringtimed": "Αποχωρήσατε κατά τη διάρκεια χρονομετρημένης ενότητας.
Παρακαλώ, πατήστε Συνέχεια για να επανεκκινήσετε την ενότητα.",
+ "leftduringtimednoretake": "Αποχωρήσατε κατά τη διάρκεια χρονομετρημένης ενότητας και
δεν έχετε το δικαίωμα να επαναλάβεται ή να συνεχίσετε την ενότητα.",
+ "lessonmenu": "Μενού ενότητας",
+ "lessonstats": "Στατιστικά ενότητας",
+ "linkedmedia": "Συνδεδεμένα πολυμέσα",
+ "loginfail": "Αποτυχημένη είσοδος, παρακαλώ προσπαθήστε ξανά...",
+ "lowscore": "Χαμηλός βαθμός",
+ "lowtime": "Χαμηλός χρόνος",
+ "maximumnumberofattemptsreached": "Συμπληρώθηκε ο μέγιστος αριθμός προσπαθειών - Μετάβαση στην επόμενη σελίδα",
+ "modattemptsnoteacher": "Η αναθεώρηση από μαθητή δουλεύει μόνο για τους μαθητές",
+ "noanswer": "Καμία απάντηση δεν δόθηκε. Παρακαλώ, πηγαίνετε πίσω και καταχωρήστε την απαντησή σας.",
+ "nolessonattempts": "Δεν πραγματοποιήθηκαν προσπάθειες σε αυτή την ενότητα.",
+ "notcompleted": "Δεν ολοκληρώθηκε",
+ "numberofcorrectanswers": "Αριθμός σωστών απαντήσεων: {{$a}}",
+ "numberofpagesviewed": "Αριθμός απαντημένων ερωτήσεων: {{$a}}",
+ "numberofpagesviewednotice": "Αριθμός απαντημένων ερωτήσεων: {{$a.nquestions}} (πρέπει να απαντήσετε τουλάχιστον: {{$a.minquestions}})",
+ "ongoingcustom": "Έχετε πάρει {{$a.score}} από τους τους {{$a.currenthigh}} βαθμούς μέχρι τώρα .",
+ "ongoingnormal": "Έχετε απαντήσει {{$a.correct}} σωστά από τις {{$a.viewed}} προσπάθειες.",
+ "or": "Ή",
+ "overview": "Σύνοψη",
+ "preview": "Προεπισκόπιση",
+ "progressbarteacherwarning2": "Δεν θα δείτε την μπάρα προόδου γιατί μπορείτε να επεξεργαστείτε αυτή την ενότητα",
+ "question": "Ερώτηση",
+ "rawgrade": "Βαθμός χωρίς επεξεργασία",
+ "reports": "Αναφορές",
+ "response": "Ανταπόκριση",
+ "retakefinishedinsync": "Μια προσπάθεια εκτός σύνδεσης συγχρονίστηκε. Θέλετε να την αναθεωρήσετε;",
+ "retakelabelfull": "{{retake}}: {{grade}} {{timestart}} ({{duration}})",
+ "retakelabelshort": "{{retake}}: {{grade}} {{timestart}}",
+ "review": "Αναθεώρηση",
+ "reviewlesson": "Αναθεώρηση ενότητας",
+ "reviewquestionback": "Ναι, θα ήθελα να δοκιμάσω πάλι",
+ "reviewquestioncontinue": "Όχι, θα ήθελα να πάω στην επόμενη ερώτηση",
+ "secondpluswrong": "Όχι ακριβώς. Θέλετε να δοκιμάσετε ξανά;",
+ "submit": "Υποβολή",
+ "teacherjumpwarning": "Μία μεταπήδηση {{$a.cluster}} ή μια μεταπήδηση {{$a.unseen}} χρησιμοποιείται σε αυτή την ενότητα. Η μεταπήδηση επόμενης σελίδας θα χρησιμοποιηθεί αντί αυτών. Εισέλθετε ως φοιτητής για να δοκιμάσετε αυτές τις μεταπηδήσεις.",
+ "teacherongoingwarning": "Η τρέχουσα βαθμολογία εμφανίζεται μόνο στους μαθητές. Συνδεθείτε ως μαθητής για να δείτε την τρέχουσα βαθμολογία",
+ "teachertimerwarning": "Το χρονόμετρο λειτουργεί μόνο για τους μαθητές. Συνδεθείτε ως μαθητής για να δοκιμάσετε το χρονόμετρο.",
+ "thatsthecorrectanswer": "Αυτή είναι η σωστή απάντηση",
+ "thatsthewronganswer": "Αυτή είναι η λάθος απάντηση",
+ "timeremaining": "Υπολοιπόμενος χρόνος",
+ "timetaken": "Χρόνος που χρειάστηκε",
+ "unseenpageinbranch": "Ερώτηση μέσα σε διακλάδωση που δεν εμφανίσθηκε",
+ "warningretakefinished": "Η προσπάθεια ολοκληρώθηκε στον ιστότοπο.",
+ "welldone": "Μπράβο!",
+ "youhaveseen": "Έχετε δει περισσότερες από μία σελίδες αυτής της ενότητας.
Θέλετε να ξεκινήσετε από την τελευταία σελίδα που είδατε;",
+ "youranswer": "Η απάντησή σας",
+ "yourcurrentgradeisoutof": "Ο τρέχον βαθμός σας είναι {{$a.grade}} στα {{$a.total}}",
+ "youshouldview": "Πρέπει να απαντήσετε τουλάχιστον: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/es-mx.json b/src/addon/mod/lesson/lang/es-mx.json
new file mode 100755
index 000000000..5dd576b47
--- /dev/null
+++ b/src/addon/mod/lesson/lang/es-mx.json
@@ -0,0 +1,85 @@
+{
+ "answer": "Respuesta",
+ "attempt": "Intento: {{$a}}",
+ "attemptheader": "Intento",
+ "attemptsremaining": "Tiene {{$a}} intento(s) restante(s)",
+ "averagescore": "Puntuación promedio",
+ "averagetime": "Tiempo promedio",
+ "branchtable": "Contenido",
+ "cannotfindattempt": "Error: no se pudo encontrar el intento",
+ "cannotfinduser": "Error: no se pudieron encontrar los usuarios",
+ "clusterjump": "Pregunta no vista dentro de un cluster",
+ "completed": "Finalizado",
+ "congratulations": "Enhorabuena, ha llegado al final de la lección",
+ "continue": "Continuar",
+ "continuetonextpage": "Continuar a página siguiente",
+ "defaultessayresponse": "Su ensayo será calificado por su maestro.",
+ "detailedstats": "Estadísticas detalladas",
+ "didnotanswerquestion": "No ha contestado a esta pregunta.",
+ "displayofgrade": "Mostrar calificación (sólo para estudiantes)",
+ "displayscorewithessays": "Usted ha obtenido una puntuación de {{$a.score}} sobre {{$a.tempmaxgrade}} para las preguntas calificadas automáticamente.
Su(s) {{$a.essayquestions}} pregunta(s) de su ensayo serán calificadas y añadidas
a su calificación final en una fecha posterior.
Su calificación actual sin contar esa(s) pregunta(s) es de is {{$a.score}} sobre {{$a.grade}}.
Automatikoki kalifikatutako galderetan hau da zure puntuazioa: {{$a.score}}\nposible zen gehienezko puntuazio honetatik: {{$a.tempmaxgrade}}.
\n{{$a.essayquestions}} galdera(k) beranduago kalifikatuko dira eta zure azken emaitzari erantsiko zaizkio aurrerago.
\nOraingoz, eta entsegu-galdera(k) kontuan hartu gabe, zure emaitza {{$a.score}} (e)koa da {{$a.grade}} (e)tik
", + "displayscorewithoutessays": "Zure puntuazioa hau da: {{$a.score}} (gehienezkoa hau zen: {{$a.grade}}).", + "emptypassword": "Pasahitza ezin da hutsik egon", + "enterpassword": "Idatzi pasahitza, mesedez:", + "eolstudentoutoftimenoanswers": "Ez duzu erantzunik eman. Ikasgai honetan 0 puntu lortu duzu.", + "errorprefetchrandombranch": "Ikasgai honek ausazko eduki-orri baterako jauzia dauka. Ezin da app-an saiakerarik egin aurretik web nabigatzaileaan hasi ezean.", + "errorreviewretakenotlast": "Saiakera hau ezin da berrikusi dagoeneko beste saiakera bat amaitu delako.", + "finish": "Amaitu", + "finishretakeoffline": "Saiakera hau lineaz kanpo bukatu zen.", + "firstwrong": "Zure erantzuna ez da zuzena izan. Berriz saiatu nahi al duzu? (Oraingoan ondo erantzunez gero ez da zure azken emaitzan zenbatuko).", + "gotoendoflesson": "Joan ikasgaiaren amaierara", + "grade": "Kalifikazioa", + "highscore": "Puntuazio altua", + "hightime": "Denbora altua", + "leftduringtimed": "Denbora-epe finkoko ikasgaia eten da.شما از قسمت سؤالاتی که به صورت خودکار تصحیح میشوند نمرهٔ {{$a.score}} از {{$a.tempmaxgrade}} را بدست آوردید.
\n{{$a.essayquestions}} سؤال تشریحی باقیمانده بعداً تصحیح و نمرهٔ بدست آمده به نمرهٔ نهایی شما اضافه خواهد شد.
\nنمرهٔ فعلی شما بدون در نظر گرفتن نمرهٔ سؤالات تشریحی {{$a.score}} از {{$a.grade}} است.
", + "displayscorewithoutessays": "نمره شما {{$a.score}} است (از {{$a.grade}}).", + "emptypassword": "کلمهٔ رمز نمیتواند خالی باشد", + "enterpassword": "لطفاً کلمهٔ رمز را وارد نمائید:", + "eolstudentoutoftimenoanswers": "به هیچ سؤالی پاسخ ندادید. نمرهٔ شما در این مبحث درسی صفر میباشد.", + "firstwrong": "متأسفانه پاسخ شما اشتباه بود و نمرهٔ این سؤال را بدست نیاوردید. آیا مایلید که تنها برای لذت یادگیری (و بدون تغییر در نمره) به حدس زدن ادامه دهید؟", + "grade": "نمره", + "highscore": "بیشترین نمره", + "hightime": "بیشترین زمان", + "leftduringtimed": "شما مطالعهٔ یک مبحث درسی زماندار را به صورت نیمهکاره رها کردید.Vous avez obtenu un score de {{$a.score}} sur {{$a.tempmaxgrade}} aux questions notées automatiquement.
\nLes notes de votre(vos) {{$a.essayquestions}} composition(s) sera(ont) évaluée(s) et ajoutée(s) au score final ultérieurement.
\nVotre note actuelle, sans la(les) composition(s), est de {{$a.score}} sur {{$a.grade}}.
", + "displayscorewithoutessays": "Votre score est de {{$a.score}} (sur {{$a.grade}}).", + "emptypassword": "Le mot de passe ne peut pas être vide", + "enterpassword": "Veuillez saisir le mot de passe :", + "eolstudentoutoftimenoanswers": "vous n'avez répondu à aucune question. Votre note pour cette leçon est de 0.", + "errorprefetchrandombranch": "Cette leçon comporte un saut vers une page aléatoire. Elle ne peut être effectuée dans l'app avant d'avoir été commencée dans un navigateur.", + "errorreviewretakenotlast": "Cette tentative ne peut plus être relue, car une autre tentative a été terminée.", + "finish": "Terminer", + "finishretakeoffline": "Cette tentative a été terminée localement.", + "firstwrong": "Vous n'avez pas répondu correctement. Voulez-vous essayer de deviner la bonne réponse ? Si vous répondez maintenant correctement, vous ne recevrez cependant pas de point.", + "gotoendoflesson": "Aller à la fin de la leçon", + "grade": "Note", + "highscore": "Meilleure note", + "hightime": "Plus longue durée", + "leftduringtimed": "Vous avez quitté une leçon à durée limitée.Hai ottenuto {{$a.score}} su {{$a.tempmaxgrade}} per le domande valutate automaticamente.
\nLe tue {{$a.essayquestions}} domande a testo libero saranno valutate successivamente e il voto sarà aggiunto
al tuo punteggio finale.
La tua valutazione senza le domande a testo libero è {{$a.score}} su {{$a.grade}}.
", + "displayscorewithoutessays": "Il tuo punteggio è {{$a.score}} (su {{$a.grade}}).", + "emptypassword": "La password deve essere inserita", + "enterpassword": "Inserisci la password:", + "eolstudentoutoftimenoanswers": "Non hai risposto a nessuna domanda. Per questa lezione hai ottenuto 0 punti.", + "finish": "Termina", + "finishretakeoffline": "Il tentativo è stato completato offline.", + "firstwrong": "la tua risposta non è corretta. Desideri provare a rispondere di nuovo? (L'eventuale risposta corretta non sarà comunque tenuta in considerazione per il calcolo del punteggio finale).", + "gotoendoflesson": "Vai alla fine della lezione", + "grade": "Punteggio", + "highscore": "Voto migliore", + "hightime": "Tempo migliore", + "leftduringtimed": "Hai abbandonato il tentativo durante una lezione a tempo.自動評定によるあなたの評点は {{$a.tempmaxgrade}} 点中 {{$a.score}} 点です。
\n作文問題 {{$a.essayquestions}} が評定された後、あなたの最終評点に後日追加されます。
\n作文問題を除くあなたの現在の評点は {{$a.grade}} 点中 {{$a.score}} 点です。
", + "displayscorewithoutessays": "あなたの評点は {{$a.score}} ({{$a.grade}} 点中)です。", + "emptypassword": "パスワードは空白にできません。", + "enterpassword": "パスワードを入力してください:", + "eolstudentoutoftimenoanswers": "あなたはどの問題にも解答していません。このレッスンのあなたの評点は0点です。", + "errorreviewretakenotlast": "この回答は、別の回答が完了しているため評価できません。", + "finish": "終了", + "finishretakeoffline": "この回答はオフライン状態で完了しました。", + "firstwrong": "あなたの解答は正しくありません。問題を再度受験しますか? (今から問題に正しく解答した場合、あなたの最終評点には加算されません)", + "gotoendoflesson": "レッスンの最後に移動する", + "grade": "評点", + "highscore": "最高評点", + "hightime": "最長時間", + "leftduringtimed": "あなたは制限時間のあるレッスンを途中で終了しました。Je hebt {{$a.score}} punten op {{$a.tempmaxgrade}} behaald voor de automatisch beoordeelde vragen.
Je {{$a.essayquestions}} open vragen zullen beoordeeld worden op een later moment toegevoegd worden bij je totaalcijfer.
Je resultaat op dit ogenblik, zonder de open vragen is {{$a.score}} op {{$a.grade}}.
", + "displayscorewithoutessays": "Je cijfer is {{$a.score}} (op {{$a.grade}}).", + "emptypassword": "Wachtwoord kan niet leeg zijn", + "enterpassword": "Geef het wachtwoord:", + "eolstudentoutoftimenoanswers": "Je hebt geen enkele vraag beantwoord. Je hebt een 0 voor deze les", + "errorprefetchrandombranch": "Deze les bevat een sprong naar een willekeurige inhoudspagina. De les kan niet gestart worden in de app zonder dat die gestart is op het web.", + "errorreviewretakenotlast": "Deze poging kan niet meer nagekeken worden omdat er al een andere poging voltooid is.", + "finish": "Einde", + "finishretakeoffline": "Deze poging is voltooid in offline modus.", + "firstwrong": "Je antwoord is fout. Wil je de vraag opnieuw proberen te beantwoorden? Als je het antwoord weet, zul je er geen punten meer mee verdienen.", + "gotoendoflesson": "Ga naar het einde van de les", + "grade": "Cijfer", + "highscore": "Hoogste score", + "hightime": "Langste duur", + "leftduringtimed": "Je bent weggegaan tijdens een getimede les.Du fikk {{$a.score}} av {{$a.tempmaxgrade}} på de spørsmålene som ble regnet ut automatisk.
Teksten(e) du skrev som svar på {{$a.essayquestions}} vil bli vurdert av en lærer og lagt til den endelige karakteren din senere.
Karakteren din uten tekstvurdering er nå {{$a.score}} av {{$a.grade}} mulige.
", + "displayscorewithoutessays": "Du har {{$a.score}} poeng (av {{$a.grade}}).", + "emptypassword": "Passorfeltet kan ikke være tomt", + "enterpassword": "Skriv inn passordet", + "eolstudentoutoftimenoanswers": "Du svarte ikke på noen spørsmål. Du fikk 0 poeng på denne leksjonen.", + "finish": "Avslutt", + "firstwrong": "Du har svart feil. Ønsker du å prøve igjen? (Hvis du svarer korrekt, vil det ikke være tellende for resultatet på leksjonen)", + "gotoendoflesson": "Gå til slutten av leksjonen", + "grade": "Karakter", + "highscore": "Beste poengsum", + "hightime": "Beste tider", + "leftduringtimed": "Du har gått ut under en leksjon med tidtaking.Você recebeu {{$a.score}} de um total de {{$a.tempmaxgrade}} nas questões avaliadas automaticamente.
\nA(s) sua(s) {{$a.essayquestions}} questão(ões) dissertativa(s) será(ão) avaliada(s) e somada(s) ao seu resultado final em uma data posterior. p>\n
Sua nota atual, sem a(s) questão(ões) dissertativa(s), é {{$a.score}} de um total de {{$a.grade}}>/p>",
+ "displayscorewithoutessays": "A sua pontuação é {{$a.score}} (de {{$a.grade}}).",
+ "emptypassword": "Senha não pode ser vazia",
+ "enterpassword": "Inserir a senha:",
+ "eolstudentoutoftimenoanswers": "Você não respondeu nenhuma questão. A nota atribuída foi igual a 0 .",
+ "errorprefetchrandombranch": "Esta lição contém um salto para uma página de conteúdo aleatório. Não pode ser tentada na aplicação antes de ser iniciada no site.",
+ "errorreviewretakenotlast": "Já não é possível rever esta tentativa porque outra tentativa foi terminada.",
+ "finish": "Finalizado",
+ "finishretakeoffline": "Esta tentativa foi concluída em modo offline.",
+ "firstwrong": "Você respondeu incorretamente. Você gostaria de tentar novamente a questão? (Se você responder a pergunta corretamente, sua pontuação final não será alterada.)",
+ "gotoendoflesson": "Ir para o final da lição",
+ "grade": "Avaliação",
+ "highscore": "Pontuação alta",
+ "hightime": "Tempo alto",
+ "leftduringtimed": "Você interrompeu uma lição com tempo de duração definido.
Por favor clique em Continuar para recomeçar a lição.",
+ "leftduringtimednoretake": "Você interrompeu uma lição com tempo de duração definido.
Não será possível continuar ou recomeçar.",
+ "lessonmenu": "Menu da lição",
+ "lessonstats": "Estatísticas da Lição",
+ "linkedmedia": "Arquivo multimídia vinculado",
+ "loginfail": "Erro de login, por favor tente novamente...",
+ "lowscore": "Pontuação baixa",
+ "lowtime": "Tempo breve",
+ "maximumnumberofattemptsreached": "Número máximo de tentativas atingido - indo para a próxima página",
+ "modattemptsnoteacher": "A revisão dos estudantes só é ativa para eles.",
+ "noanswer": "Uma ou mais questões estão sem resposta. Por favor, volte e envie uma resposta.",
+ "nolessonattempts": "Nenhuma tentativa feita nesta lição.",
+ "nolessonattemptsgroup": "Não há tentativas feitas por membros do grupo {{$a}} nesta lição.",
+ "notcompleted": "Não concluída",
+ "numberofcorrectanswers": "Número de respostas corretas: {{$a}}",
+ "numberofpagesviewed": "Número de páginas vistas: {{$a}}",
+ "numberofpagesviewednotice": "Número de questões respondidas {{$a.nquestions}}; (Você deve responder pelo menos: {{$a.minquestions}})",
+ "ongoingcustom": "Esta lição corresponde a {{$a.score}} pontos. Você recebeu {{$a.score}} ponto(s) de um total de {{$a.currenthigh}} pontos até agora.",
+ "ongoingnormal": "Você respondeu corretamente {{$a.correct}} questões de um total de {{$a.viewed}} .",
+ "or": "OU",
+ "overview": "Visão geral",
+ "preview": "Visualizar",
+ "progressbarteacherwarning2": "Você não verá a barra de progresso porque você pode editar esta lição.",
+ "progresscompleted": "Você completou {{$a}}% da lição",
+ "question": "Questão",
+ "rawgrade": "Nota não ponderada",
+ "reports": "Relatórios",
+ "response": "Retorno",
+ "retakefinishedinsync": "Uma tentativa offline foi sincronizada. Pretende rever a tentativa?",
+ "retakelabelfull": "{{retake}}: {{grade}} {{timestart}} ({{duration}})",
+ "retakelabelshort": "{{retake}}: {{grade}} {{timestart}}",
+ "review": "Revisão",
+ "reviewlesson": "Rever Lição",
+ "reviewquestionback": "Sim, eu gostaria de tentar novamente",
+ "reviewquestioncontinue": "Não, quero continuar com a próxima questão",
+ "secondpluswrong": "Não é exato. Você quer tentar novamente?",
+ "submit": "Enviar",
+ "teacherjumpwarning": "Um destino {{$a.cluster}} ou um destino {{$a.unseen}} está sendo usado nesta lição. O destino Próxima Página substituirá o anterior. Faça o login como estudante para testar estes destinos.",
+ "teacherongoingwarning": "Para testar a pontuação corrente é necessário fazer o login como estudante.",
+ "teachertimerwarning": "O temporizador funciona somente para estudantes. Teste o temporizador acessando como estudante.",
+ "thatsthecorrectanswer": "Esta é a resposta correta",
+ "thatsthewronganswer": "Esta é a resposta errada",
+ "timeremaining": "Tempo restante",
+ "timetaken": "Tempo utilizado",
+ "unseenpageinbranch": "Questão não visualizada dentro de uma página de conteúdo",
+ "warningretakefinished": "A tentativa foi terminada no site.",
+ "welldone": "Muito bem!",
+ "youhaveseen": "Você já visitou algumas páginas desta lição.
Você quer iniciar a partir da última página visitada?",
+ "youranswer": "A sua resposta",
+ "yourcurrentgradeisoutof": "A sua nota atual é {{$a.grade}} sobre {{$a.total}}",
+ "youshouldview": "Você deve responder pelo menos: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/pt.json b/src/addon/mod/lesson/lang/pt.json
new file mode 100755
index 000000000..6f027fe49
--- /dev/null
+++ b/src/addon/mod/lesson/lang/pt.json
@@ -0,0 +1,85 @@
+{
+ "answer": "Resposta",
+ "attempt": "Tentativa: {{$a}}",
+ "attemptheader": "Tentativa",
+ "attemptsremaining": "Ainda pode realizar {{$a}} tentativa(s)",
+ "averagescore": "Pontuação média",
+ "averagetime": "Tempo médio",
+ "branchtable": "Página de conteúdo",
+ "cannotfindattempt": "Erro: não foi possível encontrar a tentativa",
+ "cannotfinduser": "Erro: não foi possível encontrar utilizadores",
+ "clusterjump": "Pergunta não vista dentro do grupo",
+ "completed": "Completou",
+ "congratulations": "Parabéns - chegou ao fim da lição",
+ "continue": "Continuar",
+ "continuetonextpage": "Continuar para a página seguinte",
+ "defaultessayresponse": "A sua resposta à pergunta de desenvolvimento será avaliada pelo professor.",
+ "detailedstats": "Estatísticas detalhadas",
+ "didnotanswerquestion": "Não respondeu a esta pergunta",
+ "displayofgrade": "Exibição da nota (apenas para alunos)",
+ "displayscorewithessays": "Obteve {{$a.score}} num máximo de {{$a.tempmaxgrade}}.
As suas respostas à(s) pergunta(s) de desenvolvimento {{$a.essayquestions}} resposta(s) serão avaliadas posteriormente,
sendo a pontuação correspondente adicionada à pontuação final.
A sua classificação atual, sem as perguntas que faltam avaliar, é de {{$a.score}} num máximo de {{$a.grade}}.",
+ "displayscorewithoutessays": "Obteve uma pontuação de {{$a.score}} (em {{$a.grade}}). Clique em Ver notas para ver a sua nota final na pauta",
+ "emptypassword": "A palava-chave não pode estar em branco",
+ "enterpassword": "Introduza a senha:",
+ "eolstudentoutoftimenoanswers": "Não respondeu a nenhuma pergunta. Obteve uma classificação de 0 para esta lição.",
+ "errorprefetchrandombranch": "Esta lição contém um salto para uma página de conteúdo aleatório. Não pode ser tentada na aplicação antes de ser iniciada no site.",
+ "errorreviewretakenotlast": "Já não é possível rever esta tentativa porque outra tentativa foi terminada.",
+ "finish": "Terminar",
+ "finishretakeoffline": "Esta tentativa foi concluída em modo offline.",
+ "firstwrong": "Não respondeu corretamente. Gostaria de tentar responder novamente? (se responder corretamente não contará para a sua nota final.)",
+ "gotoendoflesson": "Ir para o fim da lição",
+ "grade": "Nota",
+ "highscore": "Melhor nota",
+ "hightime": "Tempo máximo",
+ "leftduringtimed": "Interrompeu uma lição com tempo limite.
Clique em Continuar para reiniciar à lição.",
+ "leftduringtimednoretake": "Interrompeu uma lição com tempo limite
e não é permitido repetir ou continuar a lição.",
+ "lessonmenu": "Menu da lição",
+ "lessonstats": "Estatísticas da lição",
+ "linkedmedia": "Conteúdo de suporte",
+ "loginfail": "A autenticação falhou. Tente de novo...",
+ "lowscore": "Nota mais baixa",
+ "lowtime": "Tempo mínimo",
+ "maximumnumberofattemptsreached": "Atingiu o número máximo de tentativas permitido - A lição vai avançar para a página seguinte",
+ "modattemptsnoteacher": "A possibilidade de revisão só funciona para os alunos.",
+ "noanswer": "Uma ou mais perguntas estão ainda por responder. Por favor, volte atrás e submeta uma resposta.",
+ "nolessonattempts": "Não houve tentativas de realização desta lição.",
+ "nolessonattemptsgroup": "Não foram realizadas tentativas por membros do grupo {{$a}} nesta lição.",
+ "notcompleted": "Incompleta",
+ "numberofcorrectanswers": "Número de respostas corretas: {{$a}}",
+ "numberofpagesviewed": "Perguntas respondidas: {{$a}}",
+ "numberofpagesviewednotice": "Número de questões respondidas: {{$a.nquestions}} (Tem de responder pelo menos a {{$a.minquestions}} questões)",
+ "ongoingcustom": "Tem {{$a.score}} ponto(s) num máximo de {{$a.currenthigh}}.",
+ "ongoingnormal": "Respondeu corretamente a {{$a.correct}} de {{$a.viewed}} perguntas.",
+ "or": "OU",
+ "overview": "Perspetiva global",
+ "preview": "Pré-visualização",
+ "progressbarteacherwarning2": "Não vê a barra de progresso porque pode editar esta lição",
+ "progresscompleted": "Completou {{$a}}% da lição",
+ "question": "Inserir página de pergunta",
+ "rawgrade": "Nota bruta",
+ "reports": "Relatórios",
+ "response": "Feedback",
+ "retakefinishedinsync": "Uma tentativa offline foi sincronizada. Pretende rever a tentativa?",
+ "retakelabelfull": "{{retake}}: {{grade}} {{timestart}} ({{duration}})",
+ "retakelabelshort": "{{retake}}: {{grade}} {{timestart}}",
+ "review": "Revisão",
+ "reviewlesson": "Rever lição",
+ "reviewquestionback": "Sim, quero tentar novamente",
+ "reviewquestioncontinue": "Não, quero avançar para a pergunta seguinte",
+ "secondpluswrong": "Resposta incorreta. Quer voltar a tentar?",
+ "submit": "Submeter",
+ "teacherjumpwarning": "Nesta lição, há páginas que seguem para {{$a.cluster}} ou para {{$a.unseen}}. Esta sequência será ignorada e a lição seguirá para a página seguinte. Para testar a sequência das páginas, assuma o papel de aluno.",
+ "teacherongoingwarning": "A exibição da pontuação no decorrer da lição só é visível para os alunos. Para ver a pontuação no decorrer da lição entre como aluno.",
+ "teachertimerwarning": "O cronómetro só é visível para os alunos. Para testar esta funcionalidade, entre como aluno.",
+ "thatsthecorrectanswer": "A sua resposta está correta.",
+ "thatsthewronganswer": "A sua resposta não está correta.",
+ "timeremaining": "Tempo restante",
+ "timetaken": "Tempo usado",
+ "unseenpageinbranch": "Pergunta não vista da sequência",
+ "warningretakefinished": "A tentativa foi terminada no site.",
+ "welldone": "Muito bem!",
+ "youhaveseen": "Já viu mais do que uma página desta lição.
Quer continuar a partir da última página que viu?",
+ "youranswer": "A sua resposta",
+ "yourcurrentgradeisoutof": "A sua nota atual é {{$a.grade}} em {{$a.total}}",
+ "youshouldview": "Deve responder a pelo menos: {{$a}}"
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/ro.json b/src/addon/mod/lesson/lang/ro.json
new file mode 100755
index 000000000..a7e144457
--- /dev/null
+++ b/src/addon/mod/lesson/lang/ro.json
@@ -0,0 +1,64 @@
+{
+ "answer": "Răspuns",
+ "attempt": "Încercarea cu numărul: {{$a}}",
+ "attemptheader": "Încercare",
+ "attemptsremaining": "Mai aveţi {{$a}} încercări disponibile",
+ "averagescore": "Punctaj mediu obţinut",
+ "averagetime": "Timp mediu",
+ "branchtable": "Conținut",
+ "cannotfinduser": "Eroare: nu s-au putut găsi utilizatorii",
+ "clusterjump": "Întrebare ascunsă în cadrul unui cluster",
+ "completed": "Finalizat",
+ "congratulations": "Felicitări - aţi ajuns la finalul lecţiei",
+ "continue": "Mai departe",
+ "continuetonextpage": "Continuați la pagina următoare",
+ "defaultessayresponse": "Eseul dumneavoastră va fi notat de unul din instructorii cursului.",
+ "detailedstats": "Date statistice detaliate",
+ "didnotanswerquestion": "Nu a răspuns la această întrebare.",
+ "displayofgrade": "Afişarea notei (doar pentru cursanţi)",
+ "displayscorewithoutessays": "Punctajul dumneavoastră este de {{$a.score}} (din nota {{$a.grade}}).",
+ "emptypassword": "Parola nu poate fi lăsată necompletată",
+ "enterpassword": "Vă rugăm introduceţi parola:",
+ "eolstudentoutoftimenoanswers": "Nu aţi răspuns la nicio întrebare. Aţi primit 0 puncte la această lecţie.",
+ "finish": "Terminat",
+ "gotoendoflesson": "Mergi la sfârșitul lecției",
+ "grade": "Notă",
+ "highscore": "Notă mare",
+ "leftduringtimed": "Aţi abandonat o lecţie cronometrată.
Vă rugăm apăsaţi Continuare pentru a începe lecţia de la început.",
+ "leftduringtimednoretake": "Aţi abandonat o lecţie cronometrată.
nu aveţi permisiunea de a continua sau de a începe de la început.",
+ "lessonmenu": "Meniu Lecţie",
+ "lessonstats": "Statistici lecţie",
+ "linkedmedia": "Linked media",
+ "loginfail": "Operaţiunea de logare nu a reuşit, vă rugăm mai încercaţi...",
+ "lowscore": "Punctaj minim",
+ "maximumnumberofattemptsreached": "Numărul maxim de încercări a fost epuizat - se trece la pagina următoare",
+ "noanswer": "Nu aţi dat niciun răspuns. Vă rugăm mergeţi la pagina precedentă şi daţi un răspuns.",
+ "nolessonattempts": "Nu s-a înregistrat nicio încercare de parcurgere a acestei lecţii",
+ "notcompleted": "Nu a fost completat.",
+ "numberofcorrectanswers": "Numărul de răspunsuri corecte: {{$a}}",
+ "numberofpagesviewed": "Numărul de întrebări la care s-a răspuns: {{$a}}",
+ "numberofpagesviewednotice": "Aţi răspuns la {{$a.nquestions}} întrebări; (Trebuie să răspundeţi la cel puţin {{$a.minquestions}} întrebări)",
+ "ongoingcustom": "Până în acest moment aţi obţinut {{$a.score}} point(s) puncte din {{$a.currenthigh}} point(s) posibile.",
+ "or": "SAU",
+ "overview": "Privire de ansamblu",
+ "preview": "Previzualizare",
+ "progresscompleted": "Ați completat {{$a}}% din lecție",
+ "question": "Întrebare",
+ "reports": "Rapoarte",
+ "response": "Răspuns",
+ "review": "Verificare",
+ "reviewquestionback": "Da, doresc să mai încerc o dată",
+ "reviewquestioncontinue": "Nu, vreau să trec la următoarea întrebare",
+ "secondpluswrong": "Nu este corect. Doriţi să mai încercaţi o dată?",
+ "submit": "Trimite",
+ "teacherongoingwarning": "Punctajul curent este afişat doar cursanţilor. Dacă doriţi să vizualizaţi punctajul curent trebuie să intraţi în contul de cursant.",
+ "thatsthecorrectanswer": "Răspuns corect",
+ "thatsthewronganswer": "Răspuns incorect",
+ "timeremaining": "Timp rămas",
+ "timetaken": "Timp necesar",
+ "welldone": "Foarte bine!",
+ "youhaveseen": "Aţi vizualizat deja mai mult de o pagină din această lecţie.
Doriţi să reveniţi la prima pagină pe care aţi văzut-o?",
+ "youranswer": "Răspunsul dumneavoastră",
+ "yourcurrentgradeisoutof": "În prezent nota dumneavoastră este {{$a.grade}}, nota maximă posibilă este {{$a.total}}.",
+ "youshouldview": "Trebuie să răspundeţi la cel puţin {{$a}} întrebări."
+}
\ No newline at end of file
diff --git a/src/addon/mod/lesson/lang/ru.json b/src/addon/mod/lesson/lang/ru.json
new file mode 100755
index 000000000..e5759b732
--- /dev/null
+++ b/src/addon/mod/lesson/lang/ru.json
@@ -0,0 +1,85 @@
+{
+ "answer": "Ответ",
+ "attempt": "Попытка: {{$a}}",
+ "attemptheader": "Попытка",
+ "attemptsremaining": "У вас осталось {{$a}} попыток",
+ "averagescore": "Средний балл",
+ "averagetime": "Среднее время",
+ "branchtable": "Список разделов",
+ "cannotfindattempt": "Ошибка: попытка не найдена",
+ "cannotfinduser": "Ошибка: не удалось найти пользователей",
+ "clusterjump": "Непросмотренный вопрос в кластере",
+ "completed": "Лекция завершена",
+ "congratulations": "Поздравления - лекция завершена",
+ "continue": "Продолжить",
+ "continuetonextpage": "Перейти к следующей странице",
+ "defaultessayresponse": "Ваше эссе будет оценено преподавателем курса.",
+ "detailedstats": "Подробная статистика",
+ "didnotanswerquestion": "Студент не ответил на этот вопрос.",
+ "displayofgrade": "Показать оценки (только для студентов)",
+ "displayscorewithessays": "
Вы получили {{$a.score}} баллов из {{$a.tempmaxgrade}} за вопросы, оцененные автоматически.
\nОценки за {{$a.essayquestions}} эссе будут поставлены и учтены позднее при выставлении итоговой оценки.
\nВаша текущая оценка (без учета эссе): {{$a.score}} из {{$a.grade}}
.", + "displayscorewithoutessays": "Оценка за ответы на вопросы: {{$a.score}} из {{$a.grade}}", + "emptypassword": "Пароль не может быть пустым", + "enterpassword": "Пожалуйста, введите пароль:", + "eolstudentoutoftimenoanswers": "Вы не ответили ни на один вопрос. Вы получили 0 за эту лекцию.", + "errorprefetchrandombranch": "Эта лекция содержит переход на случайную страницу контента. Невозможно выполнить попытку в приложении до тех пор, пока она не будет запущена в веб-браузере.", + "errorreviewretakenotlast": "Эта попытка больше не может быть просмотрена, так как была сделана другая попытка.", + "finish": "Завершить", + "finishretakeoffline": "Эта попытка была завершена вне сети.", + "firstwrong": "Вы ответили неправильно. Хотите снова попробовать ответить на вопрос? (Даже в случае верного ответа его результат не будет засчитан в Вашей итоговой оценке.)", + "gotoendoflesson": "Перейти к концу лекции", + "grade": "Оценка", + "highscore": "Высший результат", + "hightime": "Наибольшее время", + "leftduringtimed": "Вы просрочили время, отведенное на прохождение лекции.Освојили сте {{$a.score}} од максималних {{$a.tempmaxgrade}} бодова за питања која се аутоматски оцењују.
\nВаш {{$a.essayquestions}} одговор на питања у форми есеја биће ускоро прегледан и оцењен, а оцена ће касније бити додата
у ваш финални резултат.
Ваша тренутна оцена без есеја је {{$a.score}} од {{$a.grade}}
", + "displayscorewithoutessays": "Ваш резултат је {{$a.score}} (од могућих {{$a.grade}}).", + "emptypassword": "Поље за лозинку не може бити празно", + "enterpassword": "Молимо унесите лозинку:", + "eolstudentoutoftimenoanswers": "Нисте одговорили ни на једно питање. Ваша оцена за ову лекцију је 0.", + "errorprefetchrandombranch": "Ова лекција садржи прелаз на наусимично одабрану страницу са садржајем, па је није могуће урадити у апликацији док се не покрене на веб сајту.", + "errorreviewretakenotlast": "Ова покушај не може више бити прегледан зато што је завршен други покушај.", + "finish": "Заврши", + "finishretakeoffline": "Овај покушај је завршен у офлајн режиму.", + "firstwrong": "Погрешно сте одговорили на питање. Да ли желите да покушате поново? (ако сада тачно одговорите на питање, то се неће рачунати у ваш коначан резултат.)", + "gotoendoflesson": "Иди на крај лекције", + "grade": "Оцена", + "highscore": "Најбољи резултат", + "hightime": "Најдуже време", + "leftduringtimed": "Напустили сте лекцију која је временски ограничена.Osvojili ste {{$a.score}} od maksimalnih {{$a.tempmaxgrade}} bodova za pitanja koja se automatski ocenjuju.
\nVaš {{$a.essayquestions}} odgovor na pitanja u formi eseja biće uskoro pregledan i ocenjen, a ocena će kasnije biti dodata
u vaš finalni rezultat.
Vaša trenutna ocena bez eseja je {{$a.score}} od {{$a.grade}}
", + "displayscorewithoutessays": "Vaš rezultat je {{$a.score}} (od mogućih {{$a.grade}}).", + "emptypassword": "Polje za lozinku ne može biti prazno", + "enterpassword": "Molimo unesite lozinku:", + "eolstudentoutoftimenoanswers": "Niste odgovorili ni na jedno pitanje. Vaša ocena za ovu lekciju je 0.", + "errorprefetchrandombranch": "Ova lekcija sadrži prelaz na nausimično odabranu stranicu sa sadržajem, pa je nije moguće uraditi u aplikaciji dok se ne pokrene na veb sajtu.", + "errorreviewretakenotlast": "Ova pokušaj ne može više biti pregledan zato što je završen drugi pokušaj.", + "finish": "Završi", + "finishretakeoffline": "Ovaj pokušaj je završen u oflajn režimu.", + "firstwrong": "Pogrešno ste odgovorili na pitanje. Da li želite da pokušate ponovo? (ako sada tačno odgovorite na pitanje, to se neće računati u vaš konačan rezultat.)", + "gotoendoflesson": "Idi na kraj lekcije", + "grade": "Ocena", + "highscore": "Najbolji rezultat", + "hightime": "Najduže vreme", + "leftduringtimed": "Napustili ste lekciju koja je vremenski ograničena.您在自動評計分的試題中,獲得{{$a.score}}分(此部分配分是{{$a.tempmaxgrade}})。
\n您的{{$a.essayquestions}}個問答題將會晚一些被評分,並加入到您的最後成績中。
\n若不包含問答題,您目前的分數是{{$a.score}},總配分是{{$a.grade}}
", + "displayscorewithoutessays": "您的分數是{{$a.score}}(滿分{{$a.grade}})", + "emptypassword": "密碼不可以是空白", + "enterpassword": "請輸入密碼", + "eolstudentoutoftimenoanswers": "您沒有回答任何試題。此課程您將得到0分。", + "finish": "完成", + "firstwrong": "你答錯了,你想要再答一次嗎?(若你回答正確,也不會算入最後正式分數)?", + "gotoendoflesson": "跳到這編序學習的結束", + "grade": "分數", + "highscore": "最高分", + "hightime": "最長時間", + "leftduringtimed": "您在一個有計時的編序教學中離開了。شما از قسمت سؤالاتی که به صورت خودکار تصحیح میشوند نمرهٔ {{$a.score}} از {{$a.tempmaxgrade}} را بدست آوردید.
\n{{$a.essayquestions}} سؤال تشریحی باقیمانده بعداً تصحیح و نمرهٔ بدست آمده به نمرهٔ نهایی شما اضافه خواهد شد.
\nنمرهٔ فعلی شما بدون در نظر گرفتن نمرهٔ سؤالات تشریحی {{$a.score}} از {{$a.grade}} است.
", + "displayscorewithoutessays": "نمره شما {{$a.score}} است (از {{$a.grade}}).", + "emptypassword": "کلمهٔ رمز نمیتواند خالی باشد", + "enterpassword": "لطفاً کلمهٔ رمز را وارد نمائید:", + "eolstudentoutoftimenoanswers": "به هیچ سؤالی پاسخ ندادید. نمرهٔ شما در این مبحث درسی صفر میباشد.", + "firstwrong": "متأسفانه پاسخ شما اشتباه بود و نمرهٔ این سؤال را بدست نیاوردید. آیا مایلید که تنها برای لذت یادگیری (و بدون تغییر در نمره) به حدس زدن ادامه دهید؟", + "grade": "نمره", + "highscore": "بیشترین نمره", + "hightime": "بیشترین زمان", + "leftduringtimed": "شما مطالعهٔ یک مبحث درسی زماندار را به صورت نیمهکاره رها کردید.Du fikk {{$a.score}} av {{$a.tempmaxgrade}} på de spørsmålene som ble regnet ut automatisk.
Teksten(e) du skrev som svar på {{$a.essayquestions}} vil bli vurdert av en lærer og lagt til den endelige karakteren din senere.
Karakteren din uten tekstvurdering er nå {{$a.score}} av {{$a.grade}} mulige.
", + "displayscorewithoutessays": "Du har {{$a.score}} poeng (av {{$a.grade}}).", + "emptypassword": "Passorfeltet kan ikke være tomt", + "enterpassword": "Skriv inn passordet", + "eolstudentoutoftimenoanswers": "Du svarte ikke på noen spørsmål. Du fikk 0 poeng på denne leksjonen.", + "finish": "Avslutt", + "firstwrong": "Du har svart feil. Ønsker du å prøve igjen? (Hvis du svarer korrekt, vil det ikke være tellende for resultatet på leksjonen)", + "gotoendoflesson": "Gå til slutten av leksjonen", + "grade": "Karakter", + "highscore": "Beste poengsum", + "hightime": "Beste tider", + "leftduringtimed": "Du har gått ut under en leksjon med tidtaking.