Changeset 7f36551 in Git for src/main


Ignore:
Timestamp:
02/06/22 22:56:26 (2 years ago)
Author:
Test <matonikolov77@…>
Branches:
main
Children:
3c0f9a9, ad4243e
Parents:
42d565b
Message:

Resolved bux for fronted and repaired filtering through title and genres for movies

Location:
src/main
Files:
1 added
6 edited

Legend:

Unmodified
Added
Removed
  • src/main/java/com/wediscussmovies/project/LoggedUser.java

    r42d565b r7f36551  
    1818        return null;
    1919    }
     20
    2021}
  • src/main/java/com/wediscussmovies/project/model/Movie.java

    r42d565b r7f36551  
    4040    @OneToMany(mappedBy = "movie", fetch = FetchType.LAZY)
    4141    private Collection<MovieActors> actors;
    42     @OneToMany(mappedBy = "movie")
     42    @OneToMany(mappedBy = "movie", fetch = FetchType.LAZY)
    4343    private Collection<MovieGenres> genres;
    4444    @OneToMany(mappedBy = "movie")
  • src/main/java/com/wediscussmovies/project/web/controller/MovieController.java

    r42d565b r7f36551  
    88import com.wediscussmovies.project.service.MovieService;
    99import com.wediscussmovies.project.service.PersonService;
     10import com.wediscussmovies.project.web.DesignFrontMovies;
    1011import lombok.Data;
    1112import org.springframework.format.annotation.DateTimeFormat;
     
    4748        }
    4849
    49         Authentication auth = SecurityContextHolder.getContext().getAuthentication();
     50        addModelPropertiesForUser(model);
    5051
    51         if (!(auth instanceof AnonymousAuthenticationToken)){
    52             UserDetails userDetails = (UserDetails) auth.getPrincipal();
    53             User user = (User) userDetails;
    54           model.addAttribute("likedMovies",this.movieService.findLikedMoviesByUser(user));
    55           model.addAttribute("user",user);
    56         }
    57         List<Movie> movieList = movies;
    5852        List<List<Movie>> movie_rows = new ArrayList<>();
    59         for(int i=0; i<movieList.size(); i+=4){
    60             int j = i+4;
    61             if(j>movieList.size())
    62                 j=movieList.size();
    63             movie_rows.add(movieList.subList(i, j));
    64         }
     53        DesignFrontMovies.designMovieList(movies,movie_rows);
    6554        model.addAttribute("movies", movies);
    6655        model.addAttribute("movie_rows", movie_rows);
     
    7463    public String getMovie(@PathVariable Integer id, Model model){
    7564        model.addAttribute("movie", movieService.findById(id));
    76 
    77         Authentication auth = SecurityContextHolder.getContext().getAuthentication();
    78         if (!(auth instanceof AnonymousAuthenticationToken)){
    79             UserDetails userDetails = (UserDetails) auth.getPrincipal();
    80             User user = (User) userDetails;
    81             model.addAttribute("likedMovies",this.movieService.findLikedMoviesByUser(user));
    82             model.addAttribute("user",user);
    83         }
    84 
     65        addModelPropertiesForUser(model);
    8566        model.addAttribute("contentTemplate", "movieShow");
    8667        return "template";
     
    184165        model.addAttribute("genres", genreService.findAll());
    185166    }
     167    private void addModelPropertiesForUser(Model model){
     168        User user = LoggedUser.getLoggedUser();
     169        model.addAttribute("likedMovies",this.movieService.findLikedMoviesByUser(user));
     170        model.addAttribute("user",user);
     171        }
     172
    186173}
  • src/main/java/com/wediscussmovies/project/web/controller/UsersController.java

    r42d565b r7f36551  
    88import com.wediscussmovies.project.service.MovieService;
    99import com.wediscussmovies.project.service.UserService;
     10import com.wediscussmovies.project.web.DesignFrontMovies;
    1011import org.springframework.stereotype.Controller;
    1112import org.springframework.ui.Model;
     
    6566        List<Movie> movieList = this.movieService.findLikedMoviesByUser(LoggedUser.getLoggedUser());
    6667        List<List<Movie>> movie_rows = new ArrayList<>();
    67         for(int i=0; i<movieList.size(); i+=4){
    68             int j = i+4;
    69             if(j>movieList.size())
    70                 j= movieList.size();
    71             movie_rows.add(movieList.subList(i, j));
    72         }
     68        DesignFrontMovies.designMovieList(movieList,movie_rows);
    7369        model.addAttribute("movie_rows", movie_rows);
    7470        model.addAttribute("contentTemplate","favoriteList");
  • src/main/resources/static/js/sharedScript.js

    r42d565b r7f36551  
    3939    $(".search-button-title").on("click",function (){
    4040        let filter = $("#searchTitle").val()
     41        console.log(elements)
    4142        for (let item of elements){
    42             let title = item.cells[0].innerText
     43            let title =  $(item).find(".card-title").text()
    4344            if (title.toLowerCase() === filter.toLowerCase()){
     45                console.log("Da")
    4446                $(item).css("display","block")
    4547            }
     
    5456   $(".search-button").on("click",function () {
    5557        let filter = $("#searchGenre").val()
    56         for (let item of elements) {
    57             let genre = item.cells[4].children;
     58       console.log(elements)
     59
     60       for (let item of elements) {
     61            let genre = $(item).find(".card-genre")
    5862            let visible = false;
    5963
    60             for (g of genre) {
     64            for (let g of genre) {
    6165
    6266                if ($(g).text().toLowerCase() === filter.toLowerCase()) {
  • src/main/resources/templates/moviesList.html

    r42d565b r7f36551  
    1212    <div class="container mb-4">
    1313        <div class="row" th:each="row: ${movie_rows}" >
    14             <div class="col-md-3" th:each="movie: ${row}" >
     14            <div class="col-md-3 elements" th:each="movie: ${row}" >
    1515                    <div class="card-body card bg-image" th:style="'background:url(' + ${movie.getImageUrl()} + ') no-repeat center #eee;'">
    1616                        <a class="card-text-center" style="color: white" th:href="@{'/movies/{id}' (id=${movie.getMovieId()})}" >
    1717                        <h3 class="card-title title" th:text="${movie.getTitle()}"></h3>
     18                            <span th:each="genre: ${movie.getGenres()}"  th:text="${genre?.getGenre()?.getGenreType()}" hidden class="card-genre"></span>
     19
    1820                        </a>
    1921                        <h3 class="card-text bottom" th:text="${'Rated '+movie.getImdbRating()}"></h3>
Note: See TracChangeset for help on using the changeset viewer.