Index: src/main/java/com/example/moviezone/repository/EventRepository.java
===================================================================
--- src/main/java/com/example/moviezone/repository/EventRepository.java	(revision 61fed7cf35b25a682310d52cc3e7a72e09718362)
+++ src/main/java/com/example/moviezone/repository/EventRepository.java	(revision 90317eab09c9bb08660ecb5f90412ce8048f29b7)
@@ -2,6 +2,15 @@
 
 import com.example.moviezone.model.Event;
+import com.example.moviezone.model.Film;
 import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.query.Procedure;
+
+import java.util.List;
 
 public interface EventRepository extends JpaRepository<Event,Integer> {
+    @Procedure("project.getEventsFromCinema")
+    List<Event> getFilmsFromCinema(int id);
+    @Procedure("project.getEventsFromNow")
+    List<Event> getFilmsFromCinemaNow();
+
 }
Index: src/main/java/com/example/moviezone/repository/FilmRepository.java
===================================================================
--- src/main/java/com/example/moviezone/repository/FilmRepository.java	(revision 61fed7cf35b25a682310d52cc3e7a72e09718362)
+++ src/main/java/com/example/moviezone/repository/FilmRepository.java	(revision 90317eab09c9bb08660ecb5f90412ce8048f29b7)
@@ -17,4 +17,7 @@
     @Procedure("project.getFilmsFromCinema1")
     List<Film> getFilmsFromCinema(int id);
-
+    @Procedure("project.getFilmsFromCinemaNow")
+    List<Film> getFilmsFromCinemaNow(int id);
+    @Procedure("project.getFilmsNow")
+    List<Film> getFilmsNow();
 }
Index: src/main/java/com/example/moviezone/service/EventService.java
===================================================================
--- src/main/java/com/example/moviezone/service/EventService.java	(revision 61fed7cf35b25a682310d52cc3e7a72e09718362)
+++ src/main/java/com/example/moviezone/service/EventService.java	(revision 90317eab09c9bb08660ecb5f90412ce8048f29b7)
@@ -5,7 +5,11 @@
 import java.time.LocalDate;
 import java.util.List;
+import java.util.Optional;
 
 public interface EventService {
     List<Event> findAllEvents();
     Event save(LocalDate start_date,String theme,String duration,String repeating,String url);
+    List<Event> getEventsNow();
+    List<Event> getEventsFromCinema(int id);
+    Optional<Event> getEventById(Long id);
 }
Index: src/main/java/com/example/moviezone/service/FilmService.java
===================================================================
--- src/main/java/com/example/moviezone/service/FilmService.java	(revision 61fed7cf35b25a682310d52cc3e7a72e09718362)
+++ src/main/java/com/example/moviezone/service/FilmService.java	(revision 90317eab09c9bb08660ecb5f90412ce8048f29b7)
@@ -14,3 +14,5 @@
     Optional<Film> getFilmById(Long id);
     List<Film> getFilmsFromCinema(int id);
+    List<Film> getFilmsFromCinemaNow(int id);
+    List<Film> getFilmsNow();
 }
Index: src/main/java/com/example/moviezone/service/Impl/EventServiceImpl.java
===================================================================
--- src/main/java/com/example/moviezone/service/Impl/EventServiceImpl.java	(revision 61fed7cf35b25a682310d52cc3e7a72e09718362)
+++ src/main/java/com/example/moviezone/service/Impl/EventServiceImpl.java	(revision 90317eab09c9bb08660ecb5f90412ce8048f29b7)
@@ -7,5 +7,7 @@
 
 import java.time.LocalDate;
+import java.util.Collections;
 import java.util.List;
+import java.util.Optional;
 
 @Service
@@ -26,3 +28,18 @@
         return eventRepository.save(new Event(theme,duration,repeating,start_date,img_url));
     }
+
+    @Override
+    public List<Event> getEventsNow() {
+        return eventRepository.getFilmsFromCinemaNow();
+    }
+
+    @Override
+    public List<Event> getEventsFromCinema(int id) {
+        return eventRepository.getFilmsFromCinema(id);
+    }
+
+    @Override
+    public Optional<Event> getEventById(Long id) {
+        return eventRepository.findAllById(Collections.singleton(id.intValue())).stream().findFirst();
+    }
 }
Index: src/main/java/com/example/moviezone/service/Impl/FilmServiceImpl.java
===================================================================
--- src/main/java/com/example/moviezone/service/Impl/FilmServiceImpl.java	(revision 61fed7cf35b25a682310d52cc3e7a72e09718362)
+++ src/main/java/com/example/moviezone/service/Impl/FilmServiceImpl.java	(revision 90317eab09c9bb08660ecb5f90412ce8048f29b7)
@@ -40,3 +40,13 @@
     }
 
+    @Override
+    public List<Film> getFilmsFromCinemaNow(int id) {
+        return filmRepository.getFilmsFromCinemaNow(id);
+    }
+
+    @Override
+    public List<Film> getFilmsNow() {
+        return filmRepository.getFilmsNow();
+    }
+
 }
Index: src/main/java/com/example/moviezone/web/HomeController.java
===================================================================
--- src/main/java/com/example/moviezone/web/HomeController.java	(revision 61fed7cf35b25a682310d52cc3e7a72e09718362)
+++ src/main/java/com/example/moviezone/web/HomeController.java	(revision 90317eab09c9bb08660ecb5f90412ce8048f29b7)
@@ -16,4 +16,5 @@
 import org.springframework.web.bind.annotation.*;
 
+import javax.naming.event.EventDirContext;
 import javax.servlet.http.HttpSession;
 import javax.transaction.Transactional;
@@ -79,5 +80,12 @@
         return "master-template";
     }
-
+    @GetMapping("/getEvent/{id}")
+    public String getEvent(@PathVariable Long id, Model model) {
+        Event event =eventService.getEventById(id).get();
+        model.addAttribute("event", event);
+        model.addAttribute("bodyContent", "event");
+
+        return "master-template";
+    }
     @GetMapping("/login")
     public String getLoginPage(Model model)
@@ -149,16 +157,29 @@
         return "master-template";
     }
-
+    @Transactional
     @GetMapping("/projections")
-    public String getProjectionsPage(Model model)
-    {
-        model.addAttribute("projections",projectionService.findAllProjections());
-        model.addAttribute("bodyContent","projections");
+    public String getProjectionsPage(Model model,@RequestParam(required = false) Integer id_cinema)
+    {
+        model.addAttribute("cinemas",cinemaService.findAllCinemas());
+        if (id_cinema!=null) {
+            model.addAttribute("films",filmService.getFilmsFromCinemaNow(id_cinema));
+        }else{
+            List<FilmsReturnTable> pom=new LinkedList<>();
+            model.addAttribute("films",filmService.getFilmsNow());
+        }
+        model.addAttribute("bodyContent","films");
         return "master-template";
     }
     @GetMapping("/events")
-    public String getEventsPage(Model model)
-    {
-        model.addAttribute("events",eventService.findAllEvents());
+    @Transactional
+    public String getEventsPage(Model model,@RequestParam(required = false) Integer id_cinema)
+    {
+        model.addAttribute("cinemas",cinemaService.findAllCinemas());
+        if (id_cinema!=null) {
+            model.addAttribute("events",eventService.getEventsFromCinema(id_cinema));
+        }else{
+            List<FilmsReturnTable> pom=new LinkedList<>();
+            model.addAttribute("events",eventService.getEventsNow());
+        }
         model.addAttribute("bodyContent","events");
         return "master-template";
