diff --git a/src/main/java/org/traccar/web/Traccar.gwt.xml b/src/main/java/org/traccar/web/Traccar.gwt.xml
index 00efd04b..777dd1b4 100644
--- a/src/main/java/org/traccar/web/Traccar.gwt.xml
+++ b/src/main/java/org/traccar/web/Traccar.gwt.xml
@@ -56,6 +56,7 @@
+
diff --git a/src/main/resources/org/traccar/web/client/i18n/Messages_sr_Latn.properties b/src/main/resources/org/traccar/web/client/i18n/Messages_sr_Latn.properties
new file mode 100644
index 00000000..eb23d511
--- /dev/null
+++ b/src/main/resources/org/traccar/web/client/i18n/Messages_sr_Latn.properties
@@ -0,0 +1,329 @@
+# general
+save = Snimi
+cancel = Odustani
+device = Uređaj
+name = Naziv
+error = Greška
+confirm = Potvrdi
+errRemoteCall = RPC greška
+errAccessDenied = Pristup odbijen
+# login dialog
+authentication = Provera
+language = Jezik
+user = Korisnik
+password = Šifra
+login = Prijava
+register = Regisracija
+errUsernameOrPasswordEmpty = Ime i šifra moraju biti popunjeni
+errInvalidUsernameOrPassword = Ime ili šifra su pogrešni
+errUserAccountBlocked = Blokiran je nalog
+errUserAccountExpired = Istekao je nalog
+errUserSessionExpired = Sesija je istekla
+errUserDisconnected = Server ne odgovara
+# application settings dialog
+globalSettings = Globalna podešavanja
+registration = Registracija
+updateInterval = Učestalost osvežavanja
+disallowDeviceManagementByUsers = Zabranjeno menjanje uređaja korisnicima
+eventRecordingEnabled = Snimanje događaja
+defaultHashImplementation = Vrsta zaštite lozinke
+bingMapsKey = Bing Map ključ
+# archive view
+archive = Arhiva
+from = Od
+to = Za
+snapToRoads = Prati puteve
+load = Učitaj
+exportToCSV = Izvezi u CVS
+exportToGPX = Izvezi u GPX
+importData = Uvezi
+exportData = Izvezi
+fileToImport = Fajl za uvoz
+importingData = Učitavam...
+clear = Obriši
+errNoResults = Za izabrani period nema rezultata
+errFillFields = Sva polja moraju biti popunjena
+errNoDeviceNameOrId = I ime i Id. polje moraju biti popunjen i
+# archive column headers
+valid = Ispravno
+time = Vreme
+latitude = Latituda
+longitude = Longituda
+altitude = Visina
+speed = Brzina
+distance = Razdaljina
+course = Smer
+power = Napajanje
+# device dialog
+uniqueIdentifier = Jedinstveni identifikacioni broj
+deviceTimeout = Tajmaut
+idleWhenSpeedIsLE = Kada je brzina <\=
+minIdleTime = Min. vreme mirovanja
+speedLimit = Ograničenje brzine
+select = Izaberi
+odometer = Pređeni put
+km = km
+auto = Auto
+copyFrom = Kopiraj sa
+phoneNumber = Telefon
+plateNumber = Tablica
+vehicleBrandModelColor = Vozilo marka / model / boja
+photo = Fotografija
+# device markers dialog
+defaultIcon = Podrazumevano
+selectedIcon = Izabrano
+offlineIcon = Isključen
+upload = Učitaj
+confirmDeviceIconRemoval = Sigurno želite da obrišete marker?
+# device view
+objects = Objekti
+devices = Uređaji
+add = Dodaj
+edit = Izmeni
+share = Podeli
+remove = Ukloni
+command = Komanda
+settings = Glavno podešavanja
+account = Nalog
+preferences = Podešavanja
+users = Korisnici
+global = Globalno
+notifications = Obaveštenja
+logs = Logovi
+trackerServerLog = Tracker Server Log
+wrapperLog = Service wrapper Log
+logout = Odjavi se
+follow = Prati
+recordTrace = Snimaj put
+errDeviceExists = Uređaj sa ovim ID već postoji
+errMaxNumberDevicesReached = Dostignut je broj dozvoljenih uređaja (max {0})
+confirmDeviceRemoval = Sigurno zelite da uklonite uređaj
+# state view
+state = Stanje
+attribute = Atribut
+value = Vrednost
+address = Adresa
+# user dialog
+administrator = Administrator
+errUsernameTaken = Zauzeto korisničko ime
+errMaxNumOfDevicesExceeded = Maksimalan broj uređaja ne bi trebao da pređe {0}
+manager = Menadžer
+event = Događaj
+deviceEventType = Nepoznat događaj
+deviceEventType[OFFLINE] = Prestao sa prijavljivanjem
+deviceEventType[GEO_FENCE_ENTER] = Ulaz u geo-zonu
+deviceEventType[GEO_FENCE_EXIT] = Izlaz iz geo-zone
+deviceEventType[MAINTENANCE_REQUIRED] = Potreban servis
+deviceEventType[OVERSPEED] = Prekoračenje brzine
+deviceEventType[STOPPED] = Zaustavljeno
+deviceEventType[MOVING] = Kreće se
+firstName = Ime
+lastName = Prezime
+companyName = Ime firme
+expirationDate = Ističe
+maxNumOfDevices = Maksimalan broj uređaja
+blocked = Blokiran
+# users dialog
+confirmUserRemoval = Sigurno želite da uklonite korisnika?
+readOnly = Samo čitanje
+# map view
+map = Mapa
+# user settings dialog
+speedUnits = Mera za brzinu
+timeZone = Vremenska zona
+timePrintInterval = Učestalost prikaza praćenja
+traceInterval = Učestalost snimanja praćenja
+defaultMapState = Podrazumevana podešavanja mape
+zoom = Zum
+maximizeOverviewMap = Povećaj malu mapu
+takeFromMap = Uzmi sa mape
+overlays = Nivoi markera
+overlay = Nivo markera
+overlayType = Nepoznat marker
+overlayType[GEO_FENCES] = Geo-Zone
+overlayType[VECTOR] = Vektor
+overlayType[MARKERS] = Markeri
+overlayType[SEAMARK] = Vodene oznake
+# tracker server log view dialog
+refresh = Osveži
+close = Zatvori
+logSize = Veličina Loga (u KB)
+# position info popup
+day = d
+hour = h
+minute = m
+second = s
+ago = pre {0}
+meter = m
+offline = Isključen
+idle = Miruje
+since = od {0}
+protocol = Protokol
+changePassword = Promeni šifru
+enterNewPassword = Unesi novu lozinku za {0}
+log = Log
+# Filter dialog
+filter = Filter
+disableFilter = Isključi filter
+hideZeroCoordinates = Sakrij nulte kordinate
+hideInvalidLocations = Sakrij loše lokacije
+hideDuplicates = Sakrij duplikate (po datumu i vremenu)
+ignoreLocationsWithDistanceFromPreviousLT = Ignoriši lokacije sa razdaljinom manjom od
+# Notification settings dialog
+notificationSettings = Podešavanje obaveštavanja
+fromAddress = Od
+server = Server
+port = Port
+secureConnectionType = Vrsta sigurne konekcije
+useAuthorization = Koristi autorizaciju
+test = Test
+testFailed = Neuspešan test. Promenite podešavanja.
+testSucceeded = Test uspešan.
+email = Email
+invalidEmail = Neispravna email adresa
+accessToken = Pristupni token
+messageTemplates = Šabloni poruka
+subject = Naslov
+contentType = Vrsta sadržaja
+placeholderDescription = Nepoznat
+placeholderDescription[deviceName] = Naziv uređaja
+placeholderDescription[geoFenceName] = Naziv geo-ograde
+placeholderDescription[eventTime] = Datum i vreme snimljenog događaja
+placeholderDescription[positionTime] = Datum i vreme izabrane pozicije
+placeholderDescription[positionAddress] = Adresa na poziciji
+placeholderDescription[positionLat] = Laituda na poziciji
+placeholderDescription[positionLon] = Longitida na poziciji
+placeholderDescription[positionAlt] = Visina na poziciji
+placeholderDescription[positionSpeed] = Brzina na poziciji
+placeholderDescription[positionCourse] = Smer kretanja na poziciji
+placeholderDescription[maintenanceName] = Naziv vrste servisa
+defaultNotificationTemplate = Nepoznata poruka
+defaultNotificationTemplate[OFFLINE] = Uređaj ''{1}'' prestao sa javljanjem u {3}
+defaultNotificationTemplate[GEO_FENCE_ENTER] = Uređaj ''{1}'' ušao u geo-zonu ''{2}'' u {4}
+defaultNotificationTemplate[GEO_FENCE_EXIT] = Uređaj ''{1}'' napustio geo-zonu ''{2}'' u {4}
+defaultNotificationTemplate[MAINTENANCE_REQUIRED] = ''{1}'' potreban servis''{5}''
+defaultNotificationTemplate[OVERSPEED] = ''{1}'' prekoračio brzinu u {4}
+defaultNotificationTemplate[STOPPED] = Uređaj ''{1}'' se zaustavio u {4}
+defaultNotificationTemplate[MOVING] = Uređaj ''{1}'' se pokrenuo u {4}
+# Archive style menu
+style = Stil
+fullPalette = Puna paleta
+smallPalette = Mala paleta
+noMarkers = Bez markera
+standardMarkers = Standardni markeri
+reducedMarkers = Smanjeni markeri
+zoomToTrack = Uveličaj celu putanju
+# Geo-Fences window
+geoFence = Geo-Zona
+description = Opis
+type = Vrsta
+width = Širina
+radius = Radijus
+color = Boja
+errGeoFenceIsEmpty = Iscrtajte geo-ogradu
+confirmGeoFenceRemoval = Sigurno želite da uklonite geo-ogradu?
+newGeoFence = Nova geo-ograda
+geoFenceType = Nepoznati tip
+geoFenceType[LINE] = Linija
+geoFenceType[CIRCLE] = Krug
+geoFenceType[POLYGON] = Poligon
+errSaveChanges = Snimite promene
+applyToAllDevices = Dodeli svim uređajima
+# Maintenance
+maintenance = Održavanje
+serviceName = Naziv servisa
+mileageInterval = Interval kilometraže
+lastServiceMileage = Poslednji servis
+remaining = Preostalo
+overdue = Prošlo
+reset = Resetovanje
+# Sensors
+sensors = Senzori
+parameter = Parametar
+visible = Vidljiv
+intervals = Intervali
+# Sensor intervals dialog
+customIntervals = Posebni intervali
+intervalFrom = Interval od
+text = Tekst
+interval = Interval
+# periodComboBox
+period = Nepoznat period
+period[TODAY] = Danas
+period[YESTERDAY] = Juče
+period[THIS_WEEK] = Ove nedelje
+period[PREVIOUS_WEEK] = Prethodne nedelje
+period[THIS_MONTH] = Ovog meseca
+period[PREVIOUS_MONTH] = Prethodnog meseca
+period[CUSTOM] = Podesi sam
+periodComboBox_SelectPeriod = Izaberi period
+# Reports
+reports = Izveštaji
+newReport = Nov
+generate = Generiši
+report = Izveštaj
+timePeriod = Vremenski period
+reportType = Nepoznati tip
+reportType[GENERAL_INFORMATION] = Osnovne informacije
+reportType[DRIVES_AND_STOPS] = Kretanja i zaustavljanja
+reportType[OVERSPEEDS] = Prekoračenja brzine
+reportType[GEO_FENCE_IN_OUT] = Ulazi i Izlazi iz geo-zona
+reportType[EVENTS] = Događaji
+reportType[MILEAGE_DETAIL] = Kilometraža
+includeMap = Uključi mapu
+preview = Pregled
+confirmReportRemoval = Sigurno želite da obrišete izveštaj?
+# Report 'General information'
+routeStart = Početak rute
+routeEnd = Kraj rute
+routeLength = Dužina rute
+moveDuration = Dužina kretanja
+stopDuration = Dužina stajanja
+topSpeed = Maksimalna brzina
+averageSpeed = Prosečna brzina
+overspeedCount = Broj prekoračenja brzine
+# Report 'Drives and stops'
+status = Status
+start = Početak
+end = Kraj
+duration = Trajanje
+stopPosition = Lokacija zaustavljanja
+moving = Kreće se
+stopped = Zaustavljen
+# Report 'Overspeeds'
+overspeedPosition = Lokacija prekoračenja brzine
+# Report 'Geo-fence In/Out'
+geoFenceIn = Ulaz u geo-zonu
+geoFenceOut = Izlaz iz geo-zone
+geoFenceName = Naziv geo-zone
+geoFencePosition = Lokacija geo-zone
+# Report 'Events'
+eventPosition = Lokacija događaja
+totalOffline = Ukupno odjavljen
+totalGeoFenceEnters = Ukupan broj ulazaka u geo-zone
+totalGeoFenceExits = Ukupan broj izlazaka iz geo-zona
+totalMaintenanceRequired = Ukupan broj potrebnih servisa
+# Report 'Mileage details'
+date = Datum
+totalMileage = Kilometraža
+# Command
+send = Pošalji
+customMessage = Unesi sam poruku
+commandType = Nepoznata komanda
+commandType[positionSingle] = Jedna pozicija
+commandType[positionPeriodic] = Periodične pozicija
+commandType[positionStop] = Zaustavi pozicioniranje
+commandType[engineStop] = Onemogući motor
+commandType[engineResume] = Omogući motor
+commandType[alarmArm] = Naoružaj alarm
+commandType[alarmDisarm] = Razoružaj alarm
+commandType[setTimezone] = Podesi vremensku zonu
+commandType[requestPhoto] = Zatraži fotografiju
+commandType[CUSTOM] = Podesi sam poruku
+frequency = Učestalost
+# Groups
+groups = Grupe
+newGroup = Nova grupa
+confirmGroupRemoval = Sigurno želite da ukonite grupu?
+group = Grupe
+noGroup = Nema grupe