diff --git a/img/rs-flag-round-icon-32.png b/img/rs-flag-round-icon-32.png
new file mode 100644
index 00000000..a112cf79
Binary files /dev/null and b/img/rs-flag-round-icon-32.png differ
diff --git a/qortal-ui-core/language/de.json b/qortal-ui-core/language/de.json
index 353308d2..319cca1e 100644
--- a/qortal-ui-core/language/de.json
+++ b/qortal-ui-core/language/de.json
@@ -12,7 +12,8 @@
"hindi": "Hindi",
"croatian": "Kroatisch",
"portuguese": "Portugiesisch",
- "hungarian": "Ungarisch"
+ "hungarian": "Ungarisch",
+ "serbian": "Serbisch"
},
"sidemenu": {
"mintingdetails": "PRÄGUNGSDETAILS",
diff --git a/qortal-ui-core/language/es.json b/qortal-ui-core/language/es.json
index 046e6ea8..260a4fd2 100644
--- a/qortal-ui-core/language/es.json
+++ b/qortal-ui-core/language/es.json
@@ -12,7 +12,8 @@
"hindi": "Hindi",
"croatian": "Croata",
"portuguese": "Portugués",
- "hungarian": "Húngaro"
+ "hungarian": "Húngaro",
+ "serbian": "Serbio"
},
"sidemenu": {
"mintingdetails": "DETALLES DE ACUÑACIÓN",
diff --git a/qortal-ui-core/language/fr.json b/qortal-ui-core/language/fr.json
index ca4eb2ce..e7bcfd9f 100644
--- a/qortal-ui-core/language/fr.json
+++ b/qortal-ui-core/language/fr.json
@@ -12,7 +12,8 @@
"hindi": "Hindi",
"croatian": "Croate",
"portuguese": "Portugais",
- "hungarian": "Hongrois"
+ "hungarian": "Hongrois",
+ "serbian": "Serbe"
},
"sidemenu": {
"mintingdetails": "DETAILS DE FRAPPE",
diff --git a/qortal-ui-core/language/hindi.json b/qortal-ui-core/language/hindi.json
index 18f9b541..9b592185 100644
--- a/qortal-ui-core/language/hindi.json
+++ b/qortal-ui-core/language/hindi.json
@@ -13,7 +13,8 @@
"hindi": "हिन्दी" ,
"croatian": "क्रोएशियाई",
"portuguese": "पुर्तगाली",
- "hungarian": "हंगेरी"
+ "hungarian": "हंगेरी",
+ "serbian": "सर्बियाई"
},
"sidemenu": {
diff --git a/qortal-ui-core/language/hr.json b/qortal-ui-core/language/hr.json
index a97a01c0..7a79a435 100644
--- a/qortal-ui-core/language/hr.json
+++ b/qortal-ui-core/language/hr.json
@@ -12,7 +12,8 @@
"hindi": "Hindi",
"croatian": "Hrvatski",
"portuguese": "Portugalski",
- "hungarian": "Mađarski"
+ "hungarian": "Mađarski",
+ "serbian": "Srpski"
},
"sidemenu": {
"mintingdetails": "DETALJI O MINTANJU",
diff --git a/qortal-ui-core/language/hu.json b/qortal-ui-core/language/hu.json
index 82e4e35d..3bdaec8f 100644
--- a/qortal-ui-core/language/hu.json
+++ b/qortal-ui-core/language/hu.json
@@ -12,7 +12,8 @@
"hindi": "Hindi",
"croatian": "Horvát",
"portuguese": "Portugál",
- "hungarian": "Magyar"
+ "hungarian": "Magyar",
+ "serbian": "Szerb"
},
"sidemenu": {
"mintingdetails": "VERÉSI RÉSZLETEK",
diff --git a/qortal-ui-core/language/pl.json b/qortal-ui-core/language/pl.json
index 40870e56..ee1c030e 100644
--- a/qortal-ui-core/language/pl.json
+++ b/qortal-ui-core/language/pl.json
@@ -12,7 +12,8 @@
"hindi": "Hindi",
"croatian": "Croatian",
"portuguese": "Portuguese",
- "hungarian": "Hungarian"
+ "hungarian": "Hungarian",
+ "serbian": "Serbian"
},
"sidemenu": {
"mintingdetails": "MINTING DETAILS",
diff --git a/qortal-ui-core/language/pt.json b/qortal-ui-core/language/pt.json
index 3ff4bfd7..45bb4332 100644
--- a/qortal-ui-core/language/pt.json
+++ b/qortal-ui-core/language/pt.json
@@ -12,7 +12,8 @@
"hindi": "Hindu",
"croatian": "Croata",
"portuguese": "Português",
- "hungarian": "Húngaro"
+ "hungarian": "Húngaro",
+ "serbian": "Sérvio"
},
"sidemenu": {
"mintingdetails": "DETALHES DA MINERAÇÃO",
diff --git a/qortal-ui-core/language/rs.json b/qortal-ui-core/language/rs.json
new file mode 100644
index 00000000..f82d9bbf
--- /dev/null
+++ b/qortal-ui-core/language/rs.json
@@ -0,0 +1,571 @@
+{
+ "selectmenu": {
+ "selectlanguage": "Izaberite jezik",
+ "languageflag": "rs",
+ "english": "Engleski",
+ "chinese1": "Kineski (pojednostavljeni)",
+ "chinese2": "Kineski (tradicionalni)",
+ "german": "Nemački",
+ "french": "Francuski",
+ "polish": "Poljski",
+ "spanish": "Španski",
+ "hindi": "Hindi",
+ "croatian": "Hrvatski",
+ "portuguese": "Portugalski",
+ "hungarian": "Mađarski",
+ "serbian": "Srpski"
+ },
+ "sidemenu": {
+ "mintingdetails": "DETALJI MINTOVANJA",
+ "wallets": "NOVČANICI",
+ "tradeportal": "TRGOVINSKI PROZOR",
+ "rewardshare": "UDEO U NAGRADI",
+ "nameregistration": "REGISTRACIJA IMENA",
+ "websites": "WEBSITEOVI",
+ "datamanagement": "MENADŽMENT PODATAKA",
+ "qchat": "Q-ĆASKANJE",
+ "groupmanagement": "MENADŽMENT GRUPA",
+ "puzzles": "SLAGALICE",
+ "nodemanagement": "MENADŽMENT ČVORIŠTA"
+ },
+ "login": {
+ "login": "Prijava",
+ "createaccount": "Napravi nalog",
+ "name": "Ime",
+ "address": "Adresa",
+ "password": "Lozinka",
+ "youraccounts": "Tvoji nalozi",
+ "clickto": "Kliknite na nalog sa kojim želite da se prijavite",
+ "needcreate": "Morate napraviti ili sačuvati nalog pre mogućnosti prijavljivanja!",
+ "upload": "Ubacite vašu rezervnu kopiju qortala",
+ "howlogin": "Kako bi ste želeli da se prijavite?",
+ "seed": "Semenska fraza",
+ "seedphrase": "semenskafraza",
+ "saved": "Sačuvani nalog",
+ "qora": "Seme qora adrese",
+ "backup": "Rezervna kopija Qortal novčanika",
+ "decrypt": "Dešifrovanje rezervne kopije",
+ "save": "Sačuvajte u ovom pretraživaču.",
+ "prepare": "Vaš Nalog se priprema",
+ "areyousure": "Da li ste sigurni da želite da izbrišete ovaj novčanik sa liste sačuvanih novčanika?",
+ "error1": "Rezervna kopija mora biti ispravan JSON",
+ "error2": "Opcija za prijavljivanje nije izabrana",
+ "createwelcome": "Dobrodošli u Qortal, koji možete posmatrati kao RPG igru, gde ćete vi, kao minter na Qortal mreži (ako odlučite to postati) imati priliku da unapredite (izlevelujete) vaš nalog, i time steknete priliku da dobijate sve veću QORT nagradu po bloku, kao i veći uticaj na samoj platformi, kroz glasanje o raznim odlukama.",
+ "createa": "A",
+ "click": "Kliknite ovde da biste videli semensku frazu",
+ "confirmpass": "Potvrdite Lozinku",
+ "willbe": "Biće nasumično generisano u pozadini. Ovo je generator ličnog ključa za vaš blockchain nalog u Qortalu.",
+ "clicknext": "Napravite vaš Qortal nalog klikom na dugme DALJE ispod.",
+ "ready": "Pravljenje vašeg naloga je spremno. Biće sačuvano u ovom pretraživaču. Ako ne želite da se vaš nov nalog sačuva u ovom pretraživaču, odčekirajte polje ispod. I dalje ćete moći da se prijavite sa vašim novim nalogom (posle odjavljivanja), korišćenjem datoteke sa rezervnom kopijom, koju MORATE skinuti čim napravite nalog.",
+ "welmessage": "Dobrodošli u Qortal",
+ "pleaseenter": "Molim vas ukucajte lozinku!",
+ "notmatch": "Lozinke se ne podudaraju!",
+ "lessthen8": "Vaša lozinka ima manje od 8 karaktera! Ovo nije preporučljivo. Možete nastaviti ignorisanjem ovog upozorenja.",
+ "entername": "Molim vas unesite ime!",
+ "downloaded": "datoteka sa Rezervnom kopijom vašeg Novčanika se skida!",
+ "loading": "Učitavanje, molim sačekajte...",
+ "createdseed": "Vaša napravljenja semenskafaza",
+ "saveseed": "Sačuvaj Semenskufrazu",
+ "savein": "Sačuvaj u pretraživaču",
+ "backup2": "Ova datoteka je JEDINI način da pristupite vašem nalogu na sistemu koji je nema sačuvanu u aplikaciji ili pretraživaču. OBAVEZNO SAČUVAJTE OVU DATOTEKU NA VIŠE RAZLIČITIH MESTA. Ova datoteka je šifrovana vrlo bezbedno a zatim dešifrovana pomoću vaše lokalne lozinke napravljene u prethodnom koraku. Možete je sačuvati bilo gde bezbedno, ali obavezno to učinite na više lokacija.",
+ "savewallet": "Sačuvaj Datoteku Rezervne kopije Novčanika",
+ "created1": "Vaš nalog je napravljen",
+ "created2": " i biće sačuvan u ovom pretraživaču.",
+ "downloadbackup": "Skinite Datoteku Rezervne kopije Novčanika"
+ },
+ "logout": {
+ "logout": "ODJAVA",
+ "confirmlogout": "Da li ste sigurni da želite da se odjavite?"
+ },
+ "fragfile": {
+ "selectfile": "Izaberite datoteku",
+ "dragfile": "Prenesite i ostavite rezervnu kopiju ovde"
+ },
+ "settings": {
+ "generalinfo": "Opšte informacije o nalogu",
+ "address": "Adresa",
+ "publickey": "Javni ključ",
+ "settings": "Podešavanja",
+ "account": "Nalog",
+ "security": "Bezbednost",
+ "notifications": "Notifikacije",
+ "accountsecurity": "Bezbednost Naloga",
+ "password": "Lozinka",
+ "download": "Skinite Datoteku Rezervne kopije",
+ "choose": "Molim vas izaberite lozinku sa kojom ćete šifrovati rezervnu kopiju. (Ovo može biti ista lozinka sa kojom se prijavljujete, a može biti i različita)",
+ "block": "Blokirajte Notifikacije (Uskoro...)",
+ "playsound": "Pustite Zvuk",
+ "shownotifications": "Prikažite notifikacije",
+ "nodeurl": "URL Čvora",
+ "nodehint": "Izaberite čvor iz liste podrazumevanih čvorova iznad ili dodajte čvor po meri na listu pritiskom na dugme ispod",
+ "addcustomnode": "Dodajte Čvor po meri",
+ "addandsave": "Dodajte i Sačuvajte",
+ "protocol": "Protokol",
+ "domain": "Domena",
+ "port": "Port"
+ },
+ "appinfo": {
+ "blockheight": "Visina Bloka",
+ "uiversion": "Verzija korisničkog interfejsa",
+ "coreversion": "Verzija Jezgra",
+ "minting": "(Mintuje se)",
+ "synchronizing": "Sinhronizuje se"
+ },
+ "walletprofile": {
+ "minterlevel": "Novi Mintera",
+ "blocksminted": "Izmintovano Blokova"
+ },
+ "general": {
+ "yes": "Da",
+ "no": "Ne",
+ "confirm": "Potvrdite",
+ "decline": "Odbijte",
+ "open": "Otvorite",
+ "close": "Zatvorite",
+ "back": "Nazad",
+ "next": "Dalje",
+ "create": "Napravite",
+ "continue": "Nastavite",
+ "save": "Sačuvajte"
+ },
+ "mintingpage": {
+ "mchange1": "Opšti Detalji Mintovanja",
+ "mchange2": "Statistika Blockchaina",
+ "mchange3": "Prosećno vreme bloka Qortala",
+ "mchange4": "Prosečan broj blokova dnevno",
+ "mchange5": "Prosečan broj napravljenog QORTa dnevno",
+ "mchange6": "Detalji Minting Naloga",
+ "mchange7": "Nije Minter",
+ "mchange8": "Mintuje se",
+ "mchange9": "Ne mintuje se",
+ "mchange10": "Aktivirajte Detalje Naloga",
+ "mchange11": "Nije aktivirano",
+ "mchange12": "Aktivirajte vaš Nalog",
+ "mchange13": "Uvod",
+ "mchange14": "Da bi ste aktivirali vaš nalog, ODLAZNA transakcija mora biti izvršena. Registracija Imena je najčešći metod. Možete pitati nekog u Q-Chatu da vam pošalje malu količinu QORTa kako bi ste aktivirali vaš nalog, ili kupite QORT preko Trgovinskog Prozora a zatim izvršite ODLAZNU transakciju bilo kakve vrste čime će vam biti dodeljen javni ključ na blockchainu. Dok ovo ne uradite, vaš javni ključ je poznat samo vama, u vašem korisničkom interfejsu, i niko ne može da ga povuče sa chaina.",
+ "mchange15": "Trenutni Status",
+ "mchange16": "Trenutni Nivo",
+ "mchange17": "Blokovi do sledećeg nivoa",
+ "mchange18": "Ako nastavite sa mintovanjem 24/7, dostići ćete nivo",
+ "mchange19": "Informacije o nagradama mintovanja",
+ "mchange20": "Trenutni Tier",
+ "mchange21": "Ukupan broj mintera u tieru",
+ "mchange22": "Tier postotak po bloku",
+ "mchange23": "Procenjena nagrada po bloku",
+ "mchange24": "Procenjena nagrada po danu",
+ "mchange25": "Sekunde",
+ "mchange26": "Blokovi",
+ "mchange27": "Nivo",
+ "mchange28": "Tier",
+ "mchange29": "Dani",
+ "mchange30": "Minteri",
+ "mchange31": "Pritisnite za pomoć",
+ "mchange32": "Postanite Minter",
+ "mchange33": "Uvod",
+ "mchange34": "U Qortal-u, da bi postali minter i poceli zarađivati QORT nagrade sa porastom minterskog nivoa, prvo morate dobiti ‘sponzorstvo’. Sponzor u Qortal-u je bilo koji drugi minter koji je na nivou 5 ili više, ili jedan od Qortal osnivača. Dobićete sponzorski ključ od sponzora, i iskoristiti taj ključ da dodjete do nivoa 1. Kada dođete do nivoa 1, možete napraviti sopstveni minting ključ i početi zarađivati nagrade kojim ćete pomagati jačanju Qortal Blockchaina.",
+ "mchange35": "Sponzorstvo",
+ "mchange36": "Sponzor će vam izdati ‘Sponzorski Ključ’ koji ćete dodati svom čvoru, čime ćete započeti mintovanje (bez nagrada dok ne dodjete do nivoa 1.) Kada dostignete nivo 1, možete napraviti/dodeliti sopstveni ‘Ključ za mintovanje’ i početi zarađivati nagrade. Imate XXXX preostalih blokova in u vašem sponzorskom periodu.",
+ "mchange37": "Jednostavno se javite bilo kom minteru u Qortal-u koji ima dovoljno visok nivo da dodeli sponzorski ključ, nabavite taj ključ, a zatim se vratite ovde i unesite taj ključ da bi započeli svoj minting putovanje!",
+ "mchange38": "U"
+ },
+ "walletpage": {
+ "wchange1": "Proveravam stanje ...",
+ "wchange2": "Trenutni Novčanik",
+ "wchange3": "Kopiraj adresu novčanika na klipbord",
+ "wchange4": "Adresa kopirana na klipbord",
+ "wchange5": "Detalji transakcije",
+ "wchange6": "Tip transakcije",
+ "wchange7": "IZLAZ",
+ "wchange8": "ULAZ",
+ "wchange9": "Pošaljilac",
+ "wchange10": "Primalac",
+ "wchange11": "Iznos",
+ "wchange12": "Transakciona taksa",
+ "wchange13": "Blok",
+ "wchange14": "Vreme",
+ "wchange15": "Potpis transakcije",
+ "wchange16": "Heš transakcije",
+ "wchange17": "Pošalji",
+ "wchange18": "Sa adrese",
+ "wchange19": "Dostupan balans",
+ "wchange20": "Na (adresu ili ime)",
+ "wchange21": "Trenutna statička taksa:",
+ "wchange22": "Novčanici",
+ "wchange23": "Na (adresu)",
+ "wchange24": "Trenutna taksa po bitu",
+ "wchange25": "Niske takse mogu rezultovati sporim ili nepotvrđenim transakcijama.",
+ "wchange26": "Nedovoljno sredstava!",
+ "wchange27": "Nevažeći iznos!",
+ "wchange28": "Polja za primalaca ne može biti prazno!",
+ "wchange29": "Nevažeći primalac!",
+ "wchange30": "Transakcija uspešna!",
+ "wchange31": "Transakcija neuspešna!",
+ "wchange32": "Neuspešan pokušaj povlačenja iznosa QORT-a na vašem novčaniku. Pokušajte ponovo!",
+ "wchange33": "Neuspešan pokušaj povlačenja",
+ "wchange34": "Saldo. Pokušajte ponovo!",
+ "wchange35": "Tip",
+ "wchange36": "Taksa",
+ "wchange37": "Ukupan iznos",
+ "wchange38": "Preko ove adrese još uvek nije bilo transakcija.",
+ "wchange39": "Nemogućnost kopiranja adrese.",
+ "wchange40": "UPLATA",
+ "wchange41": "Status",
+ "wchange42": "Potvrde"
+ },
+ "tradepage": {
+ "tchange1": "Trgovinski prozor",
+ "tchange2": "Izaberite par za trgovinu",
+ "tchange3": "ISTORIJSKA TRŽIŠNA TRGOVANJA",
+ "tchange4": "MOJA TRGOVINSKA ISTORIJA",
+ "tchange5": "OTVORENE NARUDŽBINE ZA PRODAJU NA TRŽIŠTU",
+ "tchange6": "MOJE NARUDŽBINE",
+ "tchange7": "Zaglavjene ponude",
+ "tchange8": "Iznos",
+ "tchange9": "Cena",
+ "tchange10": "Ukupno",
+ "tchange11": "Datum",
+ "tchange12": "Status",
+ "tchange13": "Prodavac",
+ "tchange14": "Cena po stavci",
+ "tchange15": "Obrisan formular",
+ "tchange16": "Imate",
+ "tchange17": "Akcija",
+ "tchange18": "KUPOVINA",
+ "tchange19": "PRODAJA",
+ "tchange20": "Greška pri pravljenju trgovine. Pokušajte ponovo!",
+ "tchange21": "Greška pri pravljenju trgovine. Greška",
+ "tchange22": "Nedovoljno sredstava!",
+ "tchange23": "Zahtev za kupovinu uspešan!",
+ "tchange24": "Zahtev za kupovinu već postoji!",
+ "tchange25": "Greška pri pravljenju trgovine. Greška",
+ "tchange26": "Pokrenut prekid trgovine!",
+ "tchange27": "Neuspešan pokušaj otazivanja trgovine. Pokušajte ponovo!",
+ "tchange28": "Neuspešan pokušaj otkazivanja trgovine. Greška",
+ "tchange29": "OTKAZIVANJE",
+ "tchange30": "Neuspešna provera salda. Pokušajte ponovo!",
+ "tchange31": "PRODATO",
+ "tchange32": "KUPLJENO"
+ },
+ "rewardsharepage": {
+ "rchange1": "Udeo nagrade",
+ "rchange2": "Napravite udeo u nagradi",
+ "rchange3": "Udeli u nagradi u vezi sa ovim Nalogom",
+ "rchange4": "Nalog za mintovanje",
+ "rchange5": "Procenat udela",
+ "rchange6": "Primalac",
+ "rchange7": "Akcija",
+ "rchange8": "Tip",
+ "rchange9": "Nivoi 1 - 4 mogu napraviti samostalni udeo a nivoi 5 i više mogu napraviti udeo u nagradi!",
+ "rchange10": "Primalac Javnog Ključa",
+ "rchange11": "Procenat Udela u Nagradi",
+ "rchange12": "Rađenje nečeg slasnog",
+ "rchange13": "Dodavanje naloga za mintovanje",
+ "rchange14": "Dodati",
+ "rchange15": "Nalog nije uključen ni u jedan udeo u nagradi",
+ "rchange16": "Samostalan udeo u nagradi",
+ "rchange17": "Skloniti",
+ "rchange18": "Nemogućnost pravljenja više različitih udela u nagradi!",
+ "rchange19": "Nemogućnost pravljenja više različitih samostalnih udela!",
+ "rchange20": "NEMOGUĆNOST PRAVLJENJA UDELA U NAGRADI! na nivou",
+ "rchange21": "Udeo u nagradi uspešno dodat!",
+ "rchange22": "Udeo u nagradi uspešno sklonjen!"
+ },
+ "registernamepage": {
+ "nchange1": "Registracija imena",
+ "nchange2": "Registrujte ime",
+ "nchange3": "Registrovana imena",
+ "nchange4": "Avatar",
+ "nchange5": "Ime",
+ "nchange6": "Vlasnik",
+ "nchange7": "Akcija",
+ "nchange8": "Ni jedno ime nije registrovano sa ovog naloga!",
+ "nchange9": "Registrujte ime!",
+ "nchange10": "Opis (opciono)",
+ "nchange11": "Rađenje nečeg slasnog",
+ "nchange12": "Ime se registruje",
+ "nchange13": "Trenutna taksa na registraciju imena je",
+ "nchange14": "Registrujte",
+ "nchange15": "Podesite Avatar",
+ "nchange16": "Potrebno ažuriranje jezgra",
+ "nchange17": "Ime već postoji!",
+ "nchange18": "Registracija imena uspešna!"
+ },
+ "websitespage": {
+ "schange1": "Pretraživanje web sajtova",
+ "schange2": "Web sajtovi koje pratite",
+ "schange3": "Blokirani web sajtovi",
+ "schange4": "Pretraga web sajtova",
+ "schange5": "Avatar",
+ "schange6": "Detalji",
+ "schange7": "Objavljeno od strane",
+ "schange8": "Akcije",
+ "schange9": "Web sajtovi",
+ "schange10": "Nema dostupnih Web sajtova",
+ "schange11": "Web sajtovi koje pratite",
+ "schange12": "Web sajtovi koje pratite",
+ "schange13": "Ne pratite ni jedan Web sajt",
+ "schange14": "Blokirani Web sajtovi",
+ "schange15": "Blokirani Web sajtovi",
+ "schange16": "Niste blokirali ni jedan Web sajt",
+ "schange17": "Ime nije pronadjeno!",
+ "schange18": "Relej mod je aktiviran. To znači da će vaš čvor pomagati transport šifrovanih podataka u mreži kada pir to zatraži. Možete izbeći ovo u podešavanjima",
+ "schange19": "u",
+ "schange20": "Relej mod je deaktiviran. Možete ga ponovo aktivirati u podešavanjima",
+ "schange21": "Objavite Web sajt",
+ "schange22": "Desila se greška pri pokušaju praćenja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "schange23": "Desila se greška pri pokušaju otpraćivanja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "schange24": "Desila se greška pri pokušaju blokiranja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "schange25": "Desila se greška pri pokušaju odblokiranja ovog rebgistrovanog imena. Molim pokušajte ponovo!",
+ "schange26": "Nekategorizovano",
+ "schange27": "Veličina",
+ "schange28": "Status",
+ "schange29": "Pratite",
+ "schange30": "Otpratite",
+ "schange31": "Blokirajte",
+ "schange32": "Odblokirajte",
+ "schange33": "Ime za pretragu",
+ "schange34": "Ime ne može biti prazno!",
+ "schange35": "Pretraga"
+ },
+ "publishpage": {
+ "pchange1": "Objavite",
+ "pchange2": "Ažurirajte",
+ "pchange3": "Beleška: Preporučeno je da podesite prosledjivanje porta pre hostovanja podataka da bi podaci mogli biti lakše pristupljeni od strane pirova na mreži.",
+ "pchange4": "Izaberite ime",
+ "pchange5": "Naslov",
+ "pchange6": "Opis",
+ "pchange7": "Izaberite kategoriju",
+ "pchange8": "Oznaka",
+ "pchange9": "Usluga",
+ "pchange10": "Identifikator",
+ "pchange11": "Objavite",
+ "pchange12": "Izaberite zip datoteku sa statičkim sadržajem",
+ "pchange13": "Lokalna staza do statičkih podataka",
+ "pchange14": "Molim izaberite registrovano ime za koje želite da objavite podatke",
+ "pchange15": "Molim izaberite datoteku za hostovanje",
+ "pchange16": "Molim izaberite zip datoteku za hostovanje",
+ "pchange17": "Molim izaberite stazu do direktorijuma sa statičkim sadržajem",
+ "pchange18": "Molim ukucajte ime usluge",
+ "pchange19": "Obrada podataka... ovo može potrajati...",
+ "pchange20": "Greška:",
+ "pchange21": "Unutrašna serverska greška pri pokušaju objavljivanja podataka",
+ "pchange22": "Proračunavanje dokaza o radu... ovo može potrajati...",
+ "pchange23": "Transakcija uspešna!",
+ "pchange24": "Nemogućnost potpisa i izvršenja transakcije",
+ "pchange25": "Izaberite Datoteku"
+ },
+ "browserpage": {
+ "bchange1": "Prosledite",
+ "bchange2": "Ponovno učitajte",
+ "bchange3": "Povratak na listu",
+ "bchange4": "Izbrišite",
+ "bchange5": "sa čvora",
+ "bchange6": "Vaš pretraživač na podržava iframes",
+ "bchange7": "Otpratite",
+ "bchange8": "Zapratite",
+ "bchange9": "Blokirajte",
+ "bchange10": "Odblokirajte",
+ "bchange11": "Desila se greška pri pokušaju praćenja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "bchange12": "Desila se greška pri pokušaju otpraćivanja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "bchange13": "Desila se greška pri pokušaju blokiranja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "bchange14": "Desila se greška pri pokušaju odblokiranja ovog rebgistrovanog imena. Molim pokušajte ponovo!",
+ "bchange15": "Ne možete obrisati podatke sa imena koje pratite. Molim prvo otpratite!",
+ "bchange16": "Desila se greška pri pokušaju brisanja ovog resursa. Molim pokušajte ponovo!"
+ },
+ "datapage": {
+ "dchange1": "Upravljanje podacima",
+ "dchange2": "Tražite ovaj čvor u hostovanim podacima",
+ "dchange3": "Podaci za pretragu",
+ "dchange4": "Pretraga",
+ "dchange5": "Registrovano ime",
+ "dchange6": "Usluga",
+ "dchange7": "Identifikator",
+ "dchange8": "Akcije",
+ "dchange9": "Podaci hostovani od strane ovog čvora",
+ "dchange10": "Ime traženog podatka ne može biti prazno!",
+ "dchange11": "Podaci nisu pronadjeni!",
+ "dchange12": "Nemogućnost donošenja liste hostovanih podataka sa ovog čvora",
+ "dchange13": "Ovaj čvor ne hostuje podatke",
+ "dchange14": "Otpratite",
+ "dchange15": "Izbrišite",
+ "dchange16": "Blokirajte",
+ "dchange17": "Odblokirajte",
+ "dchange18": "Desila se greška pri pokušaju blokiranja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "dchange19": "Desila se greška pri pokušaju otpraćivanja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "dchange20": "Desila se greška pri pokušaju odblokiranja ovog registrovanog imena. Molim pokušajte ponovo!",
+ "dchange21": "Desila se greška pri pokušaju brisanja ovog resursa. Molim pokušajte ponovo!"
+ },
+ "chatpage": {
+ "cchange1": "Nova Privatna poruka",
+ "cchange2": "Učitavanje...",
+ "cchange3": "Blokirani korisnici",
+ "cchange4": "Nova poruka",
+ "cchange5": "(Kliknite da biste skrolovali dole)",
+ "cchange6": "Ukucajte ime ili adresu sa kojom želite da ćaskate da biste poslali privatnu poruku!",
+ "cchange7": "Ime / Adresa",
+ "cchange8": "Poruka...",
+ "cchange9": "Pošaljite",
+ "cchange10": "Lista Blokiranih Korisnika",
+ "cchange11": "Ime",
+ "cchange12": "Vlasnik",
+ "cchange13": "Akcija",
+ "cchange14": "Ovaj nalog nije blokirao ni jednog korisnika.",
+ "cchange15": "Ne postoji registrovano ime",
+ "cchange16": "Uspešno ste odblokirali ovog korisnika.",
+ "cchange17": "Desila se greška pri pokušaju odblokiranja ovog korisnika. Molim pokušajte ponovo!",
+ "cchange18": "odblokirajte",
+ "cchange19": "Nevažeče ime / Adresa, Proverite ime / adresu and i pokušajte ponovo...",
+ "cchange20": "Poruka Uspešno Poslata!",
+ "cchange21": "Slanje neuspešno, Molim pokušajte ponovo...",
+ "cchange22": "Učitavanje poruka...",
+ "cchange23": "Nemogućnost dešifrovanja poruke!",
+ "cchange24": "Maksimalan broj karaktera po poruci je 255"
+ },
+ "welcomepage": {
+ "wcchange1": "Dobrodošli na Q-Chat",
+ "wcchange2": "Nova Privatna Poruka",
+ "wcchange3": "Ukucajte ime ili adresu sa kojom želite da ćaskate da biste poslali privatnu poruku!",
+ "wcchange4": "Ime / Adresa",
+ "wcchange5": "Poruka...",
+ "wcchange6": "Pošaljite",
+ "wcchange7": "Nevažeče ime / Adresa, Proverite ime / adresu and i pokušajte ponovo...",
+ "wcchange8": "Poruka Uspešno Poslata!",
+ "wcchange9": "Slanje neuspešno, Molim pokušajte ponov..."
+ },
+ "blockpage": {
+ "bcchange1": "blokirajte",
+ "bcchange2": "Korisnik uspešno blokiran!",
+ "bcchange3": "Desila se greška pri pokušaju blokiranja ovog korisnika. Molim pokušajte ponovo!",
+ "bcchange4": "Bez registrovanih imena"
+ },
+ "grouppage": {
+ "gchange1": "Qortal Grupe",
+ "gchange2": "Napravite Grupu",
+ "gchange3": "Grupe u koje ste ušli",
+ "gchange4": "Ime Grupe",
+ "gchange5": "Opis",
+ "gchange6": "Uloga",
+ "gchange7": "Akcija",
+ "gchange8": "Niste član ni jedne grupe!",
+ "gchange9": "Javne Grupe",
+ "gchange10": "Vlasnik",
+ "gchange11": "Nema dostupnih Otvorenih Javnih Grupa!",
+ "gchange12": "Napravite Novu Grupu",
+ "gchange13": "Tip Grupe",
+ "gchange14": "Ovo polje je neophodno",
+ "gchange15": "Izaberite opciju",
+ "gchange16": "Javno",
+ "gchange17": "Privatno",
+ "gchange18": "Prag Odobrenja u Grupi (broj / procenat of administratora koji moraju odobriti transakciju):",
+ "gchange19": "NULA",
+ "gchange20": "JEDAN",
+ "gchange21": "Minimalan zastoj bloka za Odobrenja Transakcija Grupe:",
+ "gchange22": "minuti",
+ "gchange23": "sat",
+ "gchange24": "sati",
+ "gchange25": "dan",
+ "gchange26": "dani",
+ "gchange27": "Maksimalan zastoj bloka za Odobrenja Transakcija Grupe:",
+ "gchange28": "Pravljenje Grupe",
+ "gchange29": "Napravite Grupu",
+ "gchange30": "Zahtev za ulazak u grupu",
+ "gchange31": "Datum pravljenja",
+ "gchange32": "Datum ažuriranja",
+ "gchange33": "Ulazite",
+ "gchange34": "Uđite u grupu",
+ "gchange35": "Zahtev za izlazak iz grupe",
+ "gchange36": "Izlatite",
+ "gchange37": "Izađite iz grupe",
+ "gchange38": "Upravljanje Vlasnikom grupe:",
+ "gchange39": "Upravlanje Administratorom grupe:",
+ "gchange40": "Upravljanje Grupom",
+ "gchange41": "Pravljenje Grupe Uspešno!",
+ "gchange42": "Nevažeće Ime Grupe",
+ "gchange43": "Nevažeći Opis grupe",
+ "gchange44": "Izaberite Tip Grupe",
+ "gchange45": "Izaberite Prag Odobrenja u Grupi",
+ "gchange46": "Izaberite Minimalan zastoj bloka za Odobrenja Transakcija Grupe",
+ "gchange47": "Izaberite Maksimalan zastoj bloka za Odobrenja Transakcija Grupe",
+ "gchange48": "Zahtev za ulazak u grupu uspešno poslat!",
+ "gchange49": "Zahtev za izlazak iz grupe uspešno poslat!",
+ "gchange50": "Izađite",
+ "gchange51": "Uđite",
+ "gchange52": "Administrator",
+ "gchange53": "Član",
+ "gchange54": "Članovi"
+ },
+ "puzzlepage": {
+ "pchange1": "Slagalice",
+ "pchange2": "Nagrada",
+ "pchange3": "REŠENO od strane",
+ "pchange4": "Ime",
+ "pchange5": "Opis",
+ "pchange6": "Pomoć / Odgovor",
+ "pchange7": "Akcija",
+ "pchange8": "Nagađanje",
+ "pchange9": "Upišite vaše nagađanje za rešenje ove slagalice da bi pobedili",
+ "pchange10": "Vaše nagadjanje mora da ima 43 ili 44 karaktera i",
+ "pchange11": "ne sme",
+ "pchange12": "da uključuje 0 (nulu), I (veliko i), O (veliko o) ili l (malo L)",
+ "pchange13": "Vaše Nagađanje",
+ "pchange14": "Vaše nagađanje se proverava...",
+ "pchange15": "Predajte",
+ "pchange16": "Nagađanje netačno!",
+ "pchange17": "Zahtev za nagradu predat - proverite novčanik za nagradu!"
+ },
+ "nodepage": {
+ "nchange1": "Upravljanje čvorom za:",
+ "nchange2": "Čvor je bio online:",
+ "nchange3": "Minting nalozi na ovome čvoru",
+ "nchange4": "Dodajte minting nalog",
+ "nchange5": "Ako želite da mintujete sa sopstvenim nalogom, morate da napraviti transakciju sa udelom u nagrad sami sebi (sa udelom u nagradi podešenim na 0 procenata) i da mintujete sa ključen udela u nagradi koji dobijete",
+ "nchange6": "Ključ udela u nagradi",
+ "nchange7": "Minting nalog se dodaje",
+ "nchange8": "Dodajte",
+ "nchange9": "Minting nalog",
+ "nchange10": "Nalog primaoca",
+ "nchange11": "Akcija",
+ "nchange12": "Uklonite",
+ "nchange13": "Ni jedan minting nalog nije pronađen na ovom čvoru",
+ "nchange14": "Pirovi spojeni na ovaj čvor",
+ "nchange15": "Dodajte pir",
+ "nchange16": "Ukucajte peer koji želite da dodate na adresu ispod",
+ "nchange17": "Pir adresa",
+ "nchange18": "Adresa",
+ "nchange19": "Poslednja visina",
+ "nchange20": "Trenutna verzija",
+ "nchange21": "Povezano",
+ "nchange22": "Akcija",
+ "nchange23": "Prisilite sinhronizaciju",
+ "nchange24": "Čvor nema povezanih pirova",
+ "nchange25": "Započeta sinhronizacija sa pirom: ",
+ "nchange26": "Pir uspešno uklonjen: ",
+ "nchange27": "Minting čvor uspešn dodat!",
+ "nchange28": "Dodavanje minting čvora neuspešno!",
+ "nchange29": "Minting nalog uspešno uklonjen!",
+ "nchange30": "Minting nalog neuspešno uklonjen!",
+ "nchange31": "Zaustavite čvor",
+ "nchange32": "Zahtev za zaustavljanje uspešno poslat!"
+ },
+ "transpage": {
+ "tchange1": "Zahtev za transakcijom",
+ "tchange2": "Odbijte",
+ "tchange3": "Potvrdite",
+ "tchange4": "Za",
+ "tchange5": "Iznos"
+ },
+ "apipage": {
+ "achange1": "Dodajte API ključ",
+ "achange2": "API ključ",
+ "achange3": "Molim vas unesite API ključ za ovaj čvor. Možete ga pronaći u datoteci “apikey.txt“ i direktorijumu gde je instalirano jezgro. Alternativno, pritisnite Otkaži da bi ste koristili jezgro sa smanjenom funkcionalnošću.",
+ "achange4": "Otkažite",
+ "achange5": "Dodajte",
+ "achange6": "API ključ uspešno dodat",
+ "achange7": "API ključ je pogrešan, nije došlo do dodavanja API ključa"
+ },
+ "transactions": {
+ "amount": "Iznos",
+ "to": "Za",
+ "declined": "Korisnik je odbio transakciju!"
+ }
+}
\ No newline at end of file
diff --git a/qortal-ui-core/language/us.json b/qortal-ui-core/language/us.json
index 3f5afa9e..1dbca220 100644
--- a/qortal-ui-core/language/us.json
+++ b/qortal-ui-core/language/us.json
@@ -12,7 +12,8 @@
"hindi": "Hindi",
"croatian": "Croatian",
"portuguese": "Portuguese",
- "hungarian": "Hungarian"
+ "hungarian": "Hungarian",
+ "serbian": "Serbian"
},
"sidemenu": {
"mintingdetails": "MINTING DETAILS",
diff --git a/qortal-ui-core/language/zhc.json b/qortal-ui-core/language/zhc.json
index e03267c4..61af4df2 100644
--- a/qortal-ui-core/language/zhc.json
+++ b/qortal-ui-core/language/zhc.json
@@ -10,9 +10,10 @@
"polish": "波兰文",
"spanish": "西班牙文",
"hindi": "印度文",
- "croatian": "克罗地亚文,
+ "croatian": "克罗地亚文",
"portuguese": "Portuguese",
- "hungarian": "Hungarian"
+ "hungarian": "Hungarian",
+ "serbian": "Serbian"
},
"sidemenu": {
"mintingdetails": "铸币信息",
diff --git a/qortal-ui-core/language/zht.json b/qortal-ui-core/language/zht.json
index 7f5df882..08800a7e 100644
--- a/qortal-ui-core/language/zht.json
+++ b/qortal-ui-core/language/zht.json
@@ -12,7 +12,8 @@
"hindi": "印度文",
"croatian": "克羅地亞文",
"portuguese": "Portuguese",
- "hungarian": "Hungarian"
+ "hungarian": "Hungarian",
+ "serbian": "Serbian"
},
"sidemenu": {
"mintingdetails": "鑄幣信息",
diff --git a/qortal-ui-core/src/components/language-selector.js b/qortal-ui-core/src/components/language-selector.js
index 6f3d1fb2..8f44f2ba 100644
--- a/qortal-ui-core/src/components/language-selector.js
+++ b/qortal-ui-core/src/components/language-selector.js
@@ -67,6 +67,7 @@ class LanguageSelector extends connect(store)(LitElement) {
+