Index: sources/app/src/main/java/parkup/controllers/AdministratorController.java
===================================================================
--- sources/app/src/main/java/parkup/controllers/AdministratorController.java	(revision ce6ad22249e902dea17e6ba473846ccebdd4330c)
+++ sources/app/src/main/java/parkup/controllers/AdministratorController.java	(revision 97fbc67a2265c2ab4f8d16b1d71ea5d43a129fa5)
@@ -2,8 +2,10 @@
 
 import java.util.List;
+import java.util.Optional;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import parkup.configs.RegistrationRequest;
-import parkup.configs.RegistrationService;
+import parkup.configs.RegistrationServiceRP;
 import parkup.entities.Administrator;
 import parkup.services.AdministratorService;
@@ -12,10 +14,10 @@
 public class AdministratorController {
     private final AdministratorService administratorService;
-    private final RegistrationService registrationService;
+    private final RegistrationServiceRP registrationServiceRP;
 
     @Autowired
-    public AdministratorController(AdministratorService administratorService, RegistrationService registrationService) {
+    public AdministratorController(AdministratorService administratorService, RegistrationServiceRP registrationServiceRP) {
         this.administratorService = administratorService;
-        this.registrationService = registrationService;
+        this.registrationServiceRP = registrationServiceRP;
     }
 
@@ -36,26 +38,26 @@
 
     @PostMapping({"/administrator"})
-    public void addAdministrator(@RequestBody Administrator administrator) {
-        this.administratorService.addAdministrator(administrator);
+    public Optional<Administrator> addAdministrator(@RequestBody Administrator administrator) {
+        return this.administratorService.addAdministrator(administrator);
     }
 
     @PutMapping({"/administrator/{administratorId}"})
-    public void updateAdministrator(@PathVariable int administratorId, @RequestBody Administrator administrator) {
-        this.administratorService.updateAdministrator(administratorId, administrator.getFirstName(), administrator.getLastName(), administrator.getMobile(), administrator.getEmail());
+    public Administrator updateAdministrator(@PathVariable int administratorId, @RequestBody Administrator administrator) {
+        return this.administratorService.updateAdministrator(administratorId, administrator.getFirstName(), administrator.getLastName(), administrator.getMobile(), administrator.getEmail());
     }
 
     @DeleteMapping({"/administrator/{administratorId}"})
-    public void deleteAdministrator(@PathVariable int administratorId) {
-        this.administratorService.deleteAdministrator(administratorId);
+    public Optional<Administrator> deleteAdministrator(@PathVariable int administratorId) {
+        return this.administratorService.deleteAdministrator(administratorId);
     }
 
     @PostMapping({"/administrator/registration"})
     public String register(@RequestBody RegistrationRequest request){
-        return registrationService.register(request);
+        return registrationServiceRP.register(request);
     }
 
     @GetMapping(path = "/administrator/registration/confirm")
     public String confirm(@RequestParam("token") String token) {
-        return registrationService.confirmToken(token);
+        return registrationServiceRP.confirmToken(token);
     }
 }
Index: sources/app/src/main/java/parkup/controllers/ParkingSessionController.java
===================================================================
--- sources/app/src/main/java/parkup/controllers/ParkingSessionController.java	(revision ce6ad22249e902dea17e6ba473846ccebdd4330c)
+++ sources/app/src/main/java/parkup/controllers/ParkingSessionController.java	(revision 97fbc67a2265c2ab4f8d16b1d71ea5d43a129fa5)
@@ -7,4 +7,5 @@
 
 import java.util.List;
+import java.util.Optional;
 
 @RestController
@@ -33,17 +34,18 @@
 
     @PostMapping({"/parkingSession"})
-    public void addParkingSession(@RequestBody ParkingSession parkingSession) {
+    public Optional<ParkingSession> addParkingSession(@RequestBody ParkingSession parkingSession) {
         //System.out.println("???????");
-        parkingSessionService.addParkingSession(parkingSession);
+        return this.parkingSessionService.addParkingSession(parkingSession);
     }
 
     @PutMapping({"/parkingSession/{parkingSessionId}"})
     public void updateParkingSession(@PathVariable int parkingSessionId, @RequestBody ParkingSession parkingSession) {
-        parkingSessionService.updateParkingSession(parkingSessionId, parkingSession.getTimeStart(), parkingSession.getTimeEnd());
+        parkingSessionService.updateParkingSession(parkingSessionId,
+                parkingSession.getTimeStart(), parkingSession.getTimeEnd(), parkingSession.getTablica());
     }
 
     @DeleteMapping({"/parkingSession/{parkingSessionId}"})
-    public void deleteParkingSession(@PathVariable int parkingSessionId) {
-        parkingSessionService.deleteParkingSession(parkingSessionId);
+    public Optional<ParkingSession> deleteParkingSession(@PathVariable int parkingSessionId) {
+        return this.parkingSessionService.deleteParkingSession(parkingSessionId);
     }
 }
Index: sources/app/src/main/java/parkup/controllers/ParkingSpaceController.java
===================================================================
--- sources/app/src/main/java/parkup/controllers/ParkingSpaceController.java	(revision ce6ad22249e902dea17e6ba473846ccebdd4330c)
+++ sources/app/src/main/java/parkup/controllers/ParkingSpaceController.java	(revision 97fbc67a2265c2ab4f8d16b1d71ea5d43a129fa5)
@@ -7,4 +7,5 @@
 
 import java.util.List;
+import java.util.Optional;
 
 @RestController
@@ -33,17 +34,18 @@
 
     @PostMapping({"/parkingSpace"})
-    public void addParkingSpace(@RequestBody ParkingSpace parkingSpace) {
-        //System.out.println("???????");
-        parkingSpaceService.addParkingSpace(parkingSpace);
+    public Optional<ParkingSpace> addParkingSpace(@RequestBody ParkingSpace parkingSpace) {
+        System.out.println("???????");
+        return this.parkingSpaceService.addParkingSpace(parkingSpace);
     }
 
     @PutMapping({"/parkingSpace/{parkingSpaceId}"})
     public void updateParkingSpace(@PathVariable int parkingSpaceId, @RequestBody ParkingSpace parkingSpace) {
-        parkingSpaceService.updateParkingSpace(parkingSpaceId, parkingSpace.getPsName(), parkingSpace.isTaken(), parkingSpace.isHandicaped());
+        parkingSpaceService.updateParkingSpace(parkingSpaceId, parkingSpace.getPsName(), parkingSpace.isTaken(),
+                parkingSpace.isHandicaped(), parkingSpace.getLat(), parkingSpace.getLng());
     }
 
     @DeleteMapping({"/parkingSpace/{parkingSpaceId}"})
-    public void deleteParkingSpace(@PathVariable int parkingSpaceId) {
-        parkingSpaceService.deleteParkingSpace(parkingSpaceId);
+    public Optional<ParkingSpace> deleteParkingSpace(@PathVariable int parkingSpaceId) {
+        return this.parkingSpaceService.deleteParkingSpace(parkingSpaceId);
     }
 }
Index: sources/app/src/main/java/parkup/controllers/ParkingZoneController.java
===================================================================
--- sources/app/src/main/java/parkup/controllers/ParkingZoneController.java	(revision ce6ad22249e902dea17e6ba473846ccebdd4330c)
+++ sources/app/src/main/java/parkup/controllers/ParkingZoneController.java	(revision 97fbc67a2265c2ab4f8d16b1d71ea5d43a129fa5)
@@ -7,4 +7,5 @@
 
 import java.util.List;
+import java.util.Optional;
 
 @RestController
@@ -32,18 +33,29 @@
     }
 
+    @GetMapping({"parkingZone/parkingZoneNames"})
+    public List<String> getParkingZoneNames(){
+        return this.parkingZoneService.getAllParkingZoneNames();
+    }
+
     @PostMapping({"/parkingZone"})
-    public void addParkingZone(@RequestBody ParkingZone parkingZone) {
-        //System.out.println("???????");
-        parkingZoneService.addParkingZone(parkingZone);
+    public Optional<ParkingZone> addParkingZone(@RequestBody ParkingZone parkingZone) {
+        return this.parkingZoneService.addParkingZone(parkingZone);
+    }
+
+    @PostMapping("/parkingZoneName")
+    public ParkingZone addParkingZoneName(@RequestBody String name){
+        return this.parkingZoneService.addParkingZoneNameOnly(name);
     }
 
     @PutMapping({"/parkingZone/{parkingZoneId}"})
-    public void updateParkingZone(@PathVariable int parkingZoneId, @RequestBody ParkingZone parkingZone) {
-        parkingZoneService.updateParkingZone(parkingZoneId, parkingZone.getPzName(), parkingZone.getPrice(), parkingZone.getCapacity(), parkingZone.getWorkHours(),parkingZone.getLocation());
+    public ParkingZone updateParkingZone(@PathVariable int parkingZoneId, @RequestBody ParkingZone parkingZone) {
+        return this.parkingZoneService.updateParkingZone(parkingZoneId, parkingZone.getPzName(), parkingZone.getPrice(), parkingZone.getCapacity(),
+                parkingZone.getLocation(), parkingZone.getFrom(), parkingZone.getTo(), parkingZone.getColor(),
+                parkingZone.getParkingSpaces(), parkingZone.getParkingZoneLocation(),parkingZone.getOdgovorniLica());
     }
 
     @DeleteMapping({"/parkingZone/{parkingZoneId}"})
-    public void deleteParkingZone(@PathVariable int parkingZoneId) {
-        parkingZoneService.deleteParkingZone(parkingZoneId);
+    public Optional<ParkingZone> deleteParkingZone(@PathVariable int parkingZoneId) {
+        return this.parkingZoneService.deleteParkingZone(parkingZoneId);
     }
 }
Index: sources/app/src/main/java/parkup/controllers/RegistriranParkiracController.java
===================================================================
--- sources/app/src/main/java/parkup/controllers/RegistriranParkiracController.java	(revision ce6ad22249e902dea17e6ba473846ccebdd4330c)
+++ sources/app/src/main/java/parkup/controllers/RegistriranParkiracController.java	(revision 97fbc67a2265c2ab4f8d16b1d71ea5d43a129fa5)
@@ -2,12 +2,10 @@
 
 import java.util.List;
+import java.util.Optional;
+
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+import parkup.configs.RegistrationRequest;
+import parkup.configs.RegistrationServiceRP;
 import parkup.entities.RegistriranParkirac;
 import parkup.services.RegistriranParkiracService;
@@ -16,8 +14,10 @@
 public class RegistriranParkiracController {
     private final RegistriranParkiracService registriranParkiracService;
+    private final RegistrationServiceRP registrationServiceRP;
 
     @Autowired
-    public RegistriranParkiracController(RegistriranParkiracService registriranParkiracService) {
+    public RegistriranParkiracController(RegistriranParkiracService registriranParkiracService, RegistrationServiceRP registrationServiceRP) {
         this.registriranParkiracService = registriranParkiracService;
+        this.registrationServiceRP = registrationServiceRP;
     }
 
@@ -38,16 +38,26 @@
 
     @PostMapping({"/registriranParkirac"})
-    public void addRegistriranParkirac(@RequestBody RegistriranParkirac regPark) {
-        this.registriranParkiracService.addRegPark(regPark);
+    public Optional<RegistriranParkirac> addRegistriranParkirac(@RequestBody RegistriranParkirac regPark) {
+        return this.registriranParkiracService.addRegPark(regPark);
     }
 
     @PutMapping({"/registriranParkirac/{regParkId}"})
-    public void updateRegistriranParkirac(@PathVariable int regParkId, @RequestBody RegistriranParkirac regPark) {
-        this.registriranParkiracService.updateRegPark(regParkId, regPark.getName(), regPark.getSurname(), regPark.getMobile(), regPark.getEmail());
+    public RegistriranParkirac updateRegistriranParkirac(@PathVariable int regParkId, @RequestBody RegistriranParkirac regPark) {
+        return this.registriranParkiracService.updateRegPark(regParkId, regPark.getName(), regPark.getSurname(), regPark.getMobile(), regPark.getEmail(),regPark.getRegTablicki());
     }
 
     @DeleteMapping({"/registriranParkirac/{regParkId}"})
-    public void deleteRegistriranParkirac(@PathVariable int regParkId) {
-        this.registriranParkiracService.deleteRegPark(regParkId);
+    public Optional<RegistriranParkirac> deleteRegistriranParkirac(@PathVariable int regParkId) {
+        return this.registriranParkiracService.deleteRegPark(regParkId);
+    }
+
+    @PostMapping({"/registriranParkirac/registration"})
+    public String register(@RequestBody RegistrationRequest request){
+        return registrationServiceRP.register(request);
+    }
+
+    @GetMapping(path = "/registriranParkirac/registration/confirm")
+    public String confirm(@RequestParam("token") String token) {
+        return registrationServiceRP.confirmToken(token);
     }
 }
Index: sources/app/src/main/java/parkup/controllers/VrabotenController.java
===================================================================
--- sources/app/src/main/java/parkup/controllers/VrabotenController.java	(revision ce6ad22249e902dea17e6ba473846ccebdd4330c)
+++ sources/app/src/main/java/parkup/controllers/VrabotenController.java	(revision 97fbc67a2265c2ab4f8d16b1d71ea5d43a129fa5)
@@ -2,22 +2,23 @@
 
 import java.util.List;
+import java.util.Optional;
+
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+import parkup.configs.RegistrationRequest;
+import parkup.configs.RegistrationServiceW;
 import parkup.entities.Vraboten;
 import parkup.services.VrabotenService;
+import parkup.data.VrabotenDemo;
 
 @RestController
 public class VrabotenController {
     private final VrabotenService vrabotenService;
+    private final RegistrationServiceW registrationServiceW;
 
     @Autowired
-    public VrabotenController(VrabotenService vrabotenService) {
+    public VrabotenController(VrabotenService vrabotenService, RegistrationServiceW registrationServiceW) {
         this.vrabotenService = vrabotenService;
+        this.registrationServiceW = registrationServiceW;
     }
 
@@ -37,17 +38,38 @@
     }
 
+    @GetMapping({"/vraboten/vrabotenDemo"})
+    public List<VrabotenDemo> getVraboteniDemos(){
+        return this.vrabotenService.getAllVraboteniDemos();
+    }
+
     @PostMapping({"/vraboten"})
-    public void addVraboten(@RequestBody Vraboten vraboten) {
-        this.vrabotenService.addVraboten(vraboten);
+    public Optional<Vraboten> addVraboten(@RequestBody Vraboten vraboten) {
+        return this.vrabotenService.addVraboten(vraboten);
+    }
+
+    @PostMapping({"/vraboten/{vrabotenId}"})
+    public void lockVraboten(@PathVariable int vrabotenId) {
+        this.vrabotenService.lockVrabotenAcc(vrabotenId);
     }
 
     @PutMapping({"/vraboten/{vrabotenId}"})
-    public void updateVraboten(@PathVariable int vrabotenId, @RequestBody Vraboten vraboten) {
-        this.vrabotenService.updateVraboten(vrabotenId, vraboten.getFirstName(), vraboten.getLastName(), vraboten.getMobile(), vraboten.getEmail());
+    public Vraboten updateVraboten(@PathVariable int vrabotenId, @RequestBody Vraboten vraboten) {
+        return this.vrabotenService.updateVraboten(vrabotenId, vraboten.getFirstName(), vraboten.getLastName(),
+                vraboten.getMobile(), vraboten.getEmail(), vraboten.getStatus());
     }
 
     @DeleteMapping({"/vraboten/{vrabotenId}"})
-    public void deleteVraboten(@PathVariable int vrabotenId) {
-        this.vrabotenService.deleteVraboten(vrabotenId);
+    public Optional<Vraboten> deleteVraboten(@PathVariable int vrabotenId) {
+        return this.vrabotenService.deleteVraboten(vrabotenId);
+    }
+
+    @PostMapping({"/vraboten/registration"})
+    public String register(@RequestBody RegistrationRequest request){
+        return registrationServiceW.register(request);
+    }
+
+    @GetMapping(path = "/vraboten/registration/confirm")
+    public String confirm(@RequestParam("token") String token) {
+        return registrationServiceW.confirmToken(token);
     }
 }
