diff --git a/language/hr.js b/language/hr.js
new file mode 100644
index 00000000..6feba5b9
--- /dev/null
+++ b/language/hr.js
@@ -0,0 +1,336 @@
+H5PEditor.language.core = {
+ missingTranslation: '[Nedostaje prijevod: :key]',
+ loading: 'Učitavanje, molimo pričekajte...',
+ selectLibrary: 'Odaberite knjižnicu koju želite koristiti za vaš sadržaj.',
+ nknownFieldPath: 'Nije moguće pronaći ":path".',
+ otImageField: '":path" nije slika.',
+ otImageOrDimensionsField: '":path" nije slika ili polje dimenzija.',
+ requiredProperty: ':property je obavezno i mora imati vrijednost.',
+ onlyNumbers: 'Vrijednost :property može sadržavati samo brojeve.',
+ illegalDecimalNumber: ':property može sadržavati samo brojeve s najviše :decimals decimalnih mjesta.',
+ exceedsMax: 'Vrijednost :property premašuje maksimalnu vrijednost od :max.',
+ listExceedsMax: 'Popis premašuje maksimalan broj od :max stavki.',
+ belowMin: 'Vrijednost :property je ispod minimalne vrijednosti od :min.',
+ listBelowMin: 'Popisu je potrebno najmanje :min stavki za ispravan rad sadržaja.',
+ outOfStep: 'Vrijednost :property može se mijenjati samo u koracima od :step.',
+ add: 'Dodaj',
+ addFile: 'Dodaj datoteku',
+ removeFile: 'Ukloni datoteku',
+ confirmRemoval: 'Jeste li sigurni da želite ukloniti ovaj :type?',
+ browseFiles: 'Pregledaj datoteke',
+ removeImage: 'Ukloni sliku',
+ confirmImageRemoval: 'Ovo će ukloniti vašu sliku. Jeste li sigurni da želite nastaviti?',
+ dragAndDropAndPasteImage: 'Povucite i ispustite slikovnu datoteku za prijenos ili zalijepite pomoću :keyCombination',
+ dragAndDropAndPasteReplaceImage: 'Povucite ili zalijepite slikovnu datoteku ovdje za zamjenu',
+ dropImage: 'Ovdje ispustite slikovnu datoteku za prijenos',
+ uploadImage: 'Prenesi sliku',
+ uploadingImage: 'Prijenos slike, molimo pričekajte.',
+ replaceImage: 'Zamijeniti sliku?',
+ confirmReplaceImage: 'Jeste li sigurni da želite zamijeniti ovu sliku?',
+ onlyPasteImageFiles: 'Možete zalijepiti samo slikovne datoteke.',
+ replaceAudio: 'Zamijeniti zvučni zapis?',
+ replaceVideo: 'Zamijeniti video zapis?',
+ confirmReplaceAudio: 'Jeste li sigurni da želite zamijeniti ovaj zvučni zapis?',
+ confirmReplaceVideo: 'Jeste li sigurni da želite zamijeniti ovaj video zapis?',
+ uploadVideo: 'Prenesi video zapis',
+ uploadAudio: 'Prenesi zvučni zapis',
+ uploadOr: 'ili',
+ dragAndDropAndPasteVideo: 'Povucite i ispustite datoteku video zapisa ovdje za prijenos ili zalijepite pomoću :keyCombination',
+ dragAndDropAndPasteAudio: 'Povucite i ispustite datoteku zvučbong zapisa ovdje za prijenos ili zalijepite pomoću :keyCombination',
+ pasteVideoLink: 'Zalijepite YouTube link ili drugi izvor videa',
+ pasteAudioLink: 'Zalijepite link ili drugi izvor zvučnog zapisa',
+ dropVideo: 'Ovdje ispustite datoteku video zapisa za prijenos',
+ dropAudio: 'Ovdje ispustite datoteku zvučnog zapisa za prijenos',
+ enterVideoLink: 'Unesite poveznicu video zapisa',
+ enterAudioLink: 'Unesite poveznicu zvučnog zapisa',
+ insertUrl: 'Unesite URL',
+ replaceUrl: 'Zamijenite URL',
+ ctrlKey: 'ctrl',
+ commandKey: '⌘',
+ pasteKey: 'v',
+ supportedVideoFormats: 'H5P podržava sljedeće vanjske izvore video zapisa: YouTube, Panopto i Vimeo.',
+ dragAndDropToReplaceVideo: 'Povucite i ispustite datoteku video zapisa ovdje za zamjenu',
+ dragAndDropToReplaceAudio: 'Povucite i ispustite datoteku zvučnog zapisa ovdje za zamjenu',
+ changeFile: 'Promijeni datoteku',
+ changeLibrary: 'Promijeniti vrstu sadržaja?',
+ semanticsError: 'Semantička pogreška: :error',
+ missingProperty: 'Polju :index nedostaje svojstvo :property.',
+ expandCollapse: 'Proširi/Smanji',
+ addEntity: 'Dodaj :entity',
+ tooLong: 'Vrijednost polja je preduga, treba sadržavati najviše :max slova.',
+ invalidFormat: 'Vrijednost polja sadrži nevažeći format ili zabranjene znakove.',
+ confirmChangeLibrary: 'Time ćete izgubiti sav rad na trenutnom sadržaju. Jeste li sigurni da želite promijeniti vrstu sadržaja?',
+ commonFields: 'Prilagodbe teksta i prijevodi',
+ commonFieldsDescription: 'Ovdje možete uređivati postavke ili prevoditi tekstove korištene u ovom sadržaju.',
+ uploading: 'Učitavanje, molimo pričekajte...',
+ oFollow: 'Nije moguće slijediti polje ":path".',
+ editCopyright: 'Uredi autorska prava',
+ close: 'Zatvori',
+ tutorial: 'Vodič',
+ editMode: 'Način uređivanja',
+ listLabel: 'Popis',
+ uploadError: 'Pogreška pri učitavanju datoteke',
+ fileToLarge: 'Datoteka koju pokušavate učitati možda je prevelika.',
+ unknownFileUploadError: 'Nepoznata pogreška pri učitavanju datoteke',
+ noSemantics: 'Pogreška, nije moguće učitati obrazac vrste sadržaja.',
+ editImage: 'Uredi sliku',
+ saveLabel: 'Spremi',
+ image: 'Slika',
+ cancelLabel: 'Odustani',
+ deleteLabel: 'Izbriši',
+ deleteAudioLabel: 'Izbriši zvučni zapis',
+ deleteVideoLabel: 'Izbriši video zapis',
+ resetToOriginalLabel: 'Vrati na izvorno',
+ loadingImageEditor: 'Učitavanje uređivača slika, molimo pričekajte...',
+ selectFiletoUpload: 'Odaberite datoteku za učitavanje',
+ or: 'ili',
+ enterAudioUrl: 'Unesite URL izvora zvuka',
+ enterVideoUrl: 'Unesite URL videa',
+ enterAudioTitle: 'Zalijepite poveznicu ili URL izvora zvuka',
+ enterVideoTitle: 'Zalijepite YouTube poveznicu ili URL videa',
+ uploadAudioTitle: 'Učitajte datoteku zvučnog zapisa',
+ uploadVideoTitle: 'Učitajte datoteku video zapisa',
+ fileUploadTitle: 'Učitavanje datoteke',
+ insertLinkTitle: 'Umetni poveznicu',
+ recordAudioTitle: 'Snimi zvuk',
+ addVideoDescription: 'H5P podržava sve vanjske izvore videa u formatu mp4, webm ili ogv, poput Vimeo Pro, te podržava YouTube i Panopto poveznice.',
+ unsupportedVideoSource: "Nepodržani izvor videa",
+ unsupportedAudioSource: "Nepodržani izvor zvuka",
+ insert: 'Umetni',
+ cancel: 'Odustani',
+ height: 'visina',
+ width: 'širina',
+ textField: 'tekstualno polje',
+ numberField: 'numeričko polje',
+ orderItemUp: 'Pomakni stavku gore',
+ orderItemDown: 'Pomakni stavku dolje',
+ expandAllContent: 'Proširi sav sadržaj',
+ collapseAllContent: 'Skupi sav sadržaj',
+ removeItem: 'Ukloni stavku',
+ hubPanelLabel: 'Odaberite vrstu sadržaja',
+ importantInstructions: 'Važne upute',
+ showImportantInstructions: 'Prikaži upute',
+ hideImportantInstructions: 'Sakrij upute',
+ hide: 'Sakrij',
+ example: 'Primjer',
+ createContentTabLabel: 'Izradi sadržaj',
+ uploadTabLabel: 'Učitaj',
+ uploadPlaceholder: 'Nijedna datoteka nije odabrana',
+ uploadInstructionsTitle: 'Učitajte H5P datoteku.',
+ uploadInstructionsContent: 'Možete započeti s primjerima s H5P.org.',
+ uploadFileButtonLabel: 'Učitaj datoteku',
+ uploadFileButtonChangeLabel: 'Promijeni datoteku',
+ uploadingThrobber: 'Sada se učitava...',
+ uploadSuccess: ':title je uspješno učitan!',
+ unableToInterpretError: 'Nije moguće protumačiti odgovor.',
+ unableToInterpretSolution: 'Provjerite svoj zapisnik pogrešaka.',
+ h5pFileWrongExtensionTitle: 'Odabrana datoteka nije učitana',
+ h5pFileWrongExtensionContent: 'Dozvoljene su samo datoteke s ekstenzijom .h5p.',
+ h5pFileValidationFailedTitle: 'Provjera H5P datoteke nije uspjela.',
+ h5pFileValidationFailedContent: 'Provjerite sadrži li učitana H5P datoteka valjan sadržaj. H5P datoteke koje sadrže samo knjižnice trebaju se učitati putem stranice Knjižnice H5P.',
+ h5pFileUploadServerErrorTitle: 'H5P datoteka nije učitana',
+ h5pFileUploadServerErrorContent: 'Došlo je do neočekivane pogreške. Provjerite zapisnik pogrešaka na poslužitelju za više detalja.',
+ contentTypeSectionAll: 'Sve vrste sadržaja',
+ searchResults: 'Rezultati pretrage',
+ contentTypeSearchFieldPlaceholder: 'Pretraži vrste sadržaja',
+ contentTypeInstallButtonLabel: 'Instaliraj',
+ contentTypeInstallingButtonLabel: 'Instaliranje',
+ contentTypeUseButtonLabel: 'Koristi',
+ contentTypeDetailButtonLabel: 'Detalji',
+ contentTypeUpdateButtonLabel: 'Ažuriraj',
+ contentTypeUpdatingButtonLabel: 'Ažuriranje',
+ contentTypeGetButtonLabel: 'Preuzmi',
+ contentTypeBackButtonLabel: 'Natrag',
+ contentTypeIconAltText: 'Ikona',
+ contentTypeInstallSuccess: ':contentType uspješno instaliran!',
+ contentTypeUpdateSuccess: ':contentType uspješno ažuriran!',
+ contentTypeInstallError: ':contentType nije moguće instalirati. Obratite se administratoru.',
+ contentTypeLicensePanelTitle: 'Licenca',
+ contentTypeDemoButtonLabel: 'Demo sadržaj',
+ numResults: ':num rezultata',
+ show: 'Prikaži',
+ recentlyUsedFirst: 'Najnovije korišteno',
+ popularFirst: 'Najpopularnije',
+ newestFirst: 'Najnovije',
+ aToZ: 'A do Ž',
+ noResultsFound: 'Nema rezultata',
+ noResultsFoundDesc: 'Nema vrste sadržaja koja odgovara vašim kriterijima pretrage.',
+ readMore: 'Pročitaj više',
+ readLess: 'Pročitaj manje',
+ contentTypeOwner: 'Autor: :owner',
+ contentTypeUnsupportedApiVersionTitle: 'Ova vrsta sadržaja zahtijeva noviju verziju jezgre',
+ contentTypeUnsupportedApiVersionContent: 'Obratite se administratoru sustava kako bi osigurao potrebna ažuriranja.',
+ contentTypeUpdateAvailable: 'Dostupno ažuriranje',
+ contentTypeRestricted: 'Ograničena vrsta sadržaja',
+ contentTypeRestrictedDesc: 'Upotreba ove vrste sadržaja je ograničena od strane administratora.',
+ contentTypeNotInstalled: 'Vrsta sadržaja nije instalirana',
+ contentTypeNotInstalledDesc: 'Nemate dozvolu za instalaciju vrsta sadržaja.',
+ theContentType: 'vrsta sadržaja',
+ currentMenuSelected: 'trenutni odabir',
+ errorCommunicatingHubTitle: 'Nije moguće komunicirati s hubom.',
+ errorCommunicatingHubContent: 'Došlo je do pogreške. Pokušajte ponovno.',
+ warningNoContentTypesInstalled: 'Nemate instaliranih vrsta sadržaja.',
+ warningChangeBrowsingToSeeResults: 'Kliknite Sve za prikaz svih vrsta sadržaja koje možete instalirati.',
+ warningUpdateAvailableTitle: 'Nova verzija :contentType je dostupna.',
+ warningUpdateAvailableBody: 'Ažurirajte na najnoviju verziju za bolje iskustvo.',
+ licenseDescription: 'Neke značajke ove licence navedene su u nastavku. Kliknite na ikonu informacija za prikaz izvornog teksta licence.',
+ licenseModalTitle: 'Detalji licence',
+ licenseModalSubtitle: 'Odaberite licencu za pregled informacija o pravilnoj upotrebi',
+ licenseUnspecified: 'Nespecificirano',
+ licenseCanUseCommercially: 'Može se koristiti komercijalno',
+ licenseCanModify: 'Može se mijenjati',
+ licenseCanDistribute: 'Može se distribuirati',
+ licenseCanSublicense: 'Može se podlicencirati',
+ licenseCanHoldLiable: 'Može se smatrati odgovornim',
+ licenseCannotHoldLiable: 'Ne može se smatrati odgovornim',
+ licenseMustIncludeCopyright: 'Mora uključivati autorska prava',
+ licenseMustIncludeLicense: 'Mora uključivati licencu',
+ licenseFetchDetailsFailed: 'Neuspjelo dohvaćanje detalja licence',
+ imageLightboxTitle: 'Slike',
+ imageLightBoxProgress: ':num od :total',
+ nextImage: 'Sljedeća slika',
+ previousImage: 'Prethodna slika',
+ screenshots: 'Snimke zaslona',
+ reloadButtonLabel: 'Ponovno učitaj',
+ videoQuality: 'Oznaka kvalitete video zapisa',
+ videoQualityDescription: 'Ova oznaka pomaže korisniku identificirati trenutnu kvalitetu video zapisa, npr. 1080p, 720p, HD ili Mobile',
+ videoQualityDefaultLabel: 'Kvaliteta :index',
+ noContentTypesAvailable: 'Nema dostupnih vrsta sadržaja',
+ noContentTypesAvailableDesc: 'Vaša stranica ima poteškoća s povezivanjem na H5P.org i prikazivanjem dostupnih vrsta sadržaja.',
+ contentTypeCacheOutdated: 'Popis vrsta sadržaja je zastario',
+ contentTypeCacheOutdatedDesc: 'Vaša stranica ima poteškoća s povezivanjem na H5P.org radi provjere ažuriranja vrsta sadržaja. Možda nećete moći ažurirati ili instalirati nove vrste sadržaja.',
+ tryAgain: 'Pokušaj ponovno',
+ getHelp: 'Dobiti pomoć',
+ untitled: 'Neimenovano :libraryTitle',
+ title: 'Naslov',
+ metadata: 'Metapodaci',
+ addTitle: 'Dodaj naslov',
+ usedForSearchingReportsAndCopyrightInformation: 'Koristi se za pretraživanje, izvješća i informacije o autorskim pravima',
+ metadataSharingAndLicensingInfo: 'Metapodaci (informacije o dijeljenju i licenciranju)',
+ fillInTheFieldsBelow: 'Ispunite polja u nastavku',
+ saveMetadata: 'Spremi metapodatke',
+ addAuthor: 'Spremi autora',
+ confirmRemoveAuthor: 'Jeste li sigurni da želite ukloniti ovog autora?',
+ addNewChange: 'Dodaj novu izmjenu',
+ confirmDeleteChangeLog: 'Jeste li sigurni da želite izbrisati ovaj zapis promjene?',
+ changelogDescription: 'Neke licence zahtijevaju da se izmjene napravljene na izvornom djelu ili izvedenicama bilježe i prikazuju. Ovdje možete zabilježiti svoje promjene zbog razloga licenciranja ili jednostavno kako biste sebi i drugima omogućili praćenje izmjena.',
+ logThisChange: 'Zabilježi ovu izmjenu',
+ newChangeHasBeenLogged: 'Nova izmjena je zabilježena',
+ loggedChanges: 'Zabilježene izmjene',
+ noChangesHaveBeenLogged: 'Nisu zabilježene izmjene',
+ errorHeader: 'Došlo je do pogreške',
+ errorCalculatingMaxScore: 'Nije moguće izračunati maksimalni rezultat za ovaj sadržaj. Pretpostavlja se da je maksimalni rezultat 0. Obratite se svom administratoru ako ovo nije točno.',
+ maxScoreSemanticsMissing: 'Nije pronađena očekivana semantika u sadržaju.',
+ copyButton: 'Kopiraj',
+ copiedButton: 'Kopirano',
+ pasteButton: 'Zalijepi',
+ pasteAndReplaceButton: 'Zalijepi i zamijeni',
+ pasteContent: 'Zamijeni sadržaj',
+ confirmPasteContent: 'Ovim ćete zamijeniti trenutni sadržaj sadržajem iz međuspremnika. Trenutni sadržaj će biti izgubljen. Jeste li sigurni da želite nastaviti?',
+ confirmPasteButtonText: 'Zamijeni sadržaj',
+ copyToClipboard: 'Kopiraj H5P sadržaj u međuspremnik',
+ copiedToClipboard: 'Sadržaj je kopiran u međuspremnik',
+ pasteFromClipboard: 'Zalijepi H5P sadržaj iz međuspremnika',
+ pasteAndReplaceFromClipboard: 'Zamijeni postojeći sadržaj H5P sadržajem iz međuspremnika',
+ pasteNoContent: 'Nema H5P sadržaja u međuspremniku',
+ pasteError: 'Ne može se zalijepiti iz međuspremnika',
+ pasteContentNotSupported: 'Sadržaj u H5P međuspremniku nije podržan u ovom kontekstu',
+ pasteContentRestricted: 'Sadržaj u međuspremniku je ograničen na ovoj stranici',
+ pasteTooOld: 'Sadržaj u H5P međuspremniku je starija verzija (:clip) od podržane u ovom kontekstu (:local). Ako je moguće, pokušajte nadograditi sadržaj koji želite zalijepiti, ponovno ga kopirati i pokušati zalijepiti ovdje.',
+ pasteTooNew: 'Sadržaj u H5P međuspremniku je novija verzija (:clip) od podržane u ovom kontekstu (:local). Ako je moguće, pokušajte najprije nadograditi ovaj sadržaj, a zatim ga zalijepiti ovdje.',
+ ok: 'U redu',
+ avTablistLabel: 'Umetni pomoću',
+ tabTitleBasicFileUpload: 'Učitavanje datoteke',
+ tabTitleInputLinkURL: 'Poveznica/URL',
+ errorTooHighVersion: 'Parametri sadrže %used dok je podržano samo %supported ili starije.',
+ errorNotSupported: 'Parametri sadrže %used koji nisu podržani.',
+ errorParamsBroken: 'Parametri su neispravni.',
+ libraryMissing: 'Nedostaje potrebna knjižnica %lib.',
+ scriptMissing: 'Nije moguće učitati skriptu za nadogradnje za %lib.',
+ language: 'Jezik',
+ noLanguagesSupported: 'Nijedan jezik nije podržan',
+ changeLanguage: 'Promijeniti jezik u :language?',
+ thisWillPotentially: 'Ovo će potencijalno resetirati sav tekst i prijevode. Ovu akciju ne možete poništiti. Sam sadržaj neće biti promijenjen. Želite li nastaviti?',
+ notAllTextsChanged: 'Nisu svi tekstovi promijenjeni, pokrivenost za :language je djelomična.',
+ ontributeTranslations: 'Ako želite dovršiti prijevod za :language, možete saznati više o doprinošenju prijevodima za H5P',
+ unknownLibrary: 'Nažalost, odabrani tip sadržaja "%lib" nije instaliran na ovom sustavu.',
+ proceedButtonLabel: 'Nastavi i spremi',
+ enterFullscreenButtonLabel: 'Uđi u puni zaslon',
+ exitFullscreenButtonLabel: 'Izađi iz punog zaslona',
+ noContentHeader: 'Nema odgovarajućeg sadržaja?',
+ noContentSuggestion: 'Napravite svoj!',
+ tutorials: 'Vodiči',
+ contentSectionAll: 'Sav dijeljeni sadržaj',
+ popularContent: 'Popularni sadržaj',
+ allPopular: 'Sav popularni sadržaj',
+ newOnTheHub: 'Novo na Hubu',
+ allNew: 'Sav novi sadržaj',
+ filterBy: 'Filtriraj prema',
+ filter: 'Filtriraj',
+ filters: {
+ level: {
+ dropdownLabel: 'Razina',
+ dialogHeader: 'Odaberite razinu obrazovanja',
+ dialogButtonLabel: 'Filtriraj prema razini obrazovanja'
+ },
+ language: {
+ dropdownLabel: 'Jezik',
+ dialogHeader: 'Odaberite jezik(e)',
+ dialogButtonLabel: 'Filtriraj jezike',
+ searchPlaceholder: 'Upišite za pretraživanje jezika'
+ },
+ reviewed: {
+ dropdownLabel: 'Recenzirano',
+ dialogHeader: 'Recenzirani sadržaj',
+ dialogButtonLabel: 'Filtriraj',
+ optionLabel: 'Prikaži samo recenzirani sadržaj'
+ },
+ contentTypes: {
+ dropdownLabel: 'Vrste sadržaja',
+ dialogHeader: 'Odaberite vrstu(e) sadržaja',
+ dialogButtonLabel: 'Filtriraj vrste sadržaja',
+ searchPlaceholder: 'Upišite za pretraživanje vrsta sadržaja'
+ },
+ disciplines: {
+ dropdownLabel: 'Disciplina',
+ dialogHeader: 'Odaberite disciplinu',
+ dialogButtonLabel: 'Filtriraj discipline',
+ searchPlaceholder: 'Upišite za pretraživanje disciplina'
+ },
+ licenses: {
+ dropdownLabel: 'Licenca',
+ dialogHeader: 'Odaberite željena prava korištenja',
+ dialogButtonLabel: 'Filtriraj licence',
+ options: {
+ modified: 'Može se mijenjati',
+ commercial: 'Dopušta komercijalnu upotrebu'
+ }
+ }
+ },
+ clearFilters: 'Ukloni sve filtre',
+ contentSearchFieldPlaceholder: 'Pretraži sadržaj',
+ loadingContentTitle: 'Učitavamo sadržaj za vas...',
+ loadingContentSubtitle: 'Molimo pričekajte',
+ by: 'Autor',
+ dropdownButton: 'Otvori padajući izbornik',
+ paginationNavigation: 'Navigacija po stranicama',
+ page: 'Stranica',
+ currentPage: 'Trenutna stranica',
+ nextPage: 'Idi na sljedeću stranicu',
+ previousPage: 'Idi na prethodnu stranicu',
+ contentPreviewButtonLabel: 'Pregled',
+ contentDownloadButtonLabel: 'Preuzmi sadržaj',
+ reuseContentTabLabel: 'Dobij dijeljeni sadržaj',
+ contentPublisherPanelHeader: 'Informacije o izdavaču',
+ noContentFoundDesc: 'Nema sadržaja koji odgovara vašim kriterijima pretraživanja.',
+ h5pType: 'H5P Tip',
+ level: 'Razina',
+ size: 'Veličina',
+ failedFetchingData: 'Neuspjelo dohvaćanje podataka',
+ filterErrorMessage: 'Nešto je pošlo po zlu. Molimo ponovno učitajte stranicu.',
+ in: 'u',
+ navigateToParent: 'Navigiraj do roditelja',
+ a11yTitleShowLabel: 'Prikaži oznaku za AT',
+ a11yTitleHideLabel: 'Sakrij oznaku za AT',
+ reuseSuccess: ':title je uspješno uvezeno s H5P Huba.',
+}