Changes in / [42d565b:5b447b0] in Git
- Files:
-
- 7 deleted
- 107 edited
Legend:
- Unmodified
- Added
- Removed
-
src/main/java/com/wediscussmovies/project/configuration/SecurityConfig.java
r42d565b r5b447b0 5 5 import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; 6 6 import org.springframework.security.config.annotation.web.builders.HttpSecurity; 7 import org.springframework.security.config.annotation.web.builders.WebSecurity;8 7 import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; 9 8 … … 16 15 } 17 16 18 @Override19 public void configure(WebSecurity web) throws Exception {20 web.ignoring().antMatchers("/*.jpg");21 web.ignoring().antMatchers("/*.png");22 web.ignoring().antMatchers("/*.css");23 web.ignoring().antMatchers("/*.js");24 }25 17 26 18 @Override … … 29 21 http.csrf().disable() 30 22 .authorizeRequests() 31 .antMatchers("/movies","/ movies/**/","/actors","/persons/**/","/directors","/discussions","/discussions/**/","/discussions/all/**/","/replies","/register","/genres", "/css/**", "/js/**").permitAll()23 .antMatchers("/movies","/actors","/directors","/discussions","/replies","/register","/genres").permitAll() 32 24 .anyRequest() 33 25 .authenticated() -
src/main/java/com/wediscussmovies/project/model/Movie.java
r42d565b r5b447b0 6 6 import com.wediscussmovies.project.model.relation.MovieRates; 7 7 import lombok.Data; 8 import org.hibernate.annotations.Fetch;9 8 10 9 import javax.persistence.*; … … 38 37 private Double imdbRating; 39 38 40 @OneToMany(mappedBy = "movie" , fetch = FetchType.LAZY)39 @OneToMany(mappedBy = "movie") 41 40 private Collection<MovieActors> actors; 42 41 @OneToMany(mappedBy = "movie") -
src/main/java/com/wediscussmovies/project/web/controller/MovieController.java
r42d565b r5b447b0 1 1 package com.wediscussmovies.project.web.controller; 2 2 3 import com.wediscussmovies.project.LoggedUser;4 3 import com.wediscussmovies.project.model.Movie; 5 4 import com.wediscussmovies.project.model.Person; … … 20 19 import java.sql.Date; 21 20 import java.time.LocalDate; 22 import java.util.ArrayList;23 21 import java.util.List; 24 22 … … 55 53 model.addAttribute("user",user); 56 54 } 57 List<Movie> movieList = movies; 58 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 } 55 65 56 model.addAttribute("movies", movies); 66 model.addAttribute("movie_rows", movie_rows);67 57 model.addAttribute("contentTemplate", "moviesList"); 68 58 if (error != null && !error.equals(" ")) … … 71 61 } 72 62 73 @GetMapping("/{id}")74 public String getMovie(@PathVariable Integer id, Model model){75 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 85 model.addAttribute("contentTemplate", "movieShow");86 return "template";87 }88 63 89 64 @GetMapping("/add") -
src/main/java/com/wediscussmovies/project/web/controller/PersonController.java
r42d565b r5b447b0 45 45 model.addAttribute("persons", persons); 46 46 model.addAttribute("contentTemplate", "personsList"); 47 return "template";48 }49 50 @GetMapping("/persons/{id}")51 public String getPerson(@PathVariable Integer id, Model model){52 Person person = personService.findById(id);53 //Error handling, could be null!!!!!!!!!54 model.addAttribute("person", person);55 56 model.addAttribute("contentTemplate", "personShow");57 47 return "template"; 58 48 } -
src/main/java/com/wediscussmovies/project/web/controller/UsersController.java
r42d565b r5b447b0 3 3 4 4 import com.wediscussmovies.project.LoggedUser; 5 import com.wediscussmovies.project.model.Movie;6 5 import com.wediscussmovies.project.model.exception.InvalidArgumentsException; 7 6 import com.wediscussmovies.project.model.exception.PasswordsDoNotMatchException; … … 14 13 import org.springframework.web.bind.annotation.RequestMapping; 15 14 import org.springframework.web.bind.annotation.RequestParam; 16 17 import java.util.ArrayList;18 import java.util.List;19 15 20 16 @Controller … … 63 59 @GetMapping("/favoriteList") 64 60 public String getFavoriteList(Model model){ 65 List<Movie> movieList = this.movieService.findLikedMoviesByUser(LoggedUser.getLoggedUser()); 66 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 } 73 model.addAttribute("movie_rows", movie_rows); 61 model.addAttribute("movies",this.movieService.findLikedMoviesByUser(LoggedUser.getLoggedUser())); 74 62 model.addAttribute("contentTemplate","favoriteList"); 75 63 return "template"; -
src/main/resources/static/css/shared.css
r42d565b r5b447b0 2 2 max-width: 5vw; 3 3 } 4 5 .row{6 height: 300px;7 margin-bottom: 15px;8 }9 10 .row div{11 height: 100%;12 }13 14 .row div div{15 height: 100%;16 }17 18 .card{19 background-size: 100vh auto;20 float:left;21 margin: 7px;22 border-radius: 10px;23 padding: 20px;24 color: white;25 -webkit-text-stroke-width: 1px !important;26 -webkit-text-stroke-color: black !important;27 width: 90%;28 height: 90%;29 box-shadow: 4px 4px 4px rgba(128,128,128,1);30 }31 32 .card a h3{33 -webkit-text-stroke-width: 1px;34 -webkit-text-stroke-color: black;35 color:white;36 transition: 100ms;37 }38 39 .card:hover a h3{40 transition: 400ms;41 color:black;42 -webkit-text-stroke-color: white;43 }44 45 .title{46 text-align: center;47 background-color: rgba(0,0,0,0.25);48 border-radius: 10px 10px 0px 0px;49 padding: 10px;50 }51 52 .bottom{53 position: absolute;54 top: 80%;55 margin:auto;56 width: 100%;57 left: 0%;58 border-radius: 0px;59 text-align: center;60 background-color: rgba(0,0,0,0.25);61 }62 63 64 .bottom-heart{65 top: 60%;66 left: auto;67 position: absolute;68 margin: auto;69 width: 20%;70 text-align: center;71 } -
src/main/resources/static/js/sharedScript.js
r42d565b r5b447b0 4 4 var elements = $(".elements") 5 5 var elementGrade; 6 7 6 8 7 $("#dialog-rating").dialog({ … … 146 145 let movieId=$(button).attr("movie-id") 147 146 if (type==='like') { 148 $(button).parent().append("<a class='b ottom-heart btn btn-danger button-remove-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">💔</a>")147 $(button).parent().append("<a class='btn btn-primary button-remove-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">Избриши од омилена листа</a>") 149 148 console.log("da") 150 149 } 151 150 else{ 152 $(button).parent().append("<a class='b ottom-heart btn btn-success button-add-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">❤</a>")151 $(button).parent().append("<a class='btn btn-primary button-add-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">Додади во омилена листа</a>") 153 152 154 153 } -
src/main/resources/templates/discussion.html
r42d565b r5b447b0 1 1 <div xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.w3.org/1999/xhtml"> 2 <div style="width: 85%; text-align: justify; margin: auto; clear: both"> 3 <div> 4 <h1 th:text="${disc.getTitle()}" style="width: 80%; float: left"></h1> 5 </div> 6 <hr><br><br> 7 <div> 8 <h5 th:text="${disc.getText()}" style="width: 90%; margin: auto; background-color: lightblue; border-radius: 4px; padding: 20px"></h5> 9 </div> 10 <br><br><br> 11 <h6 style="width: 60%; float:left;"> 12 <span th:text="${'Поставено од: '+disc.getUser().getUsername()}"></span> 13 <span th:text="${', на датум '+ disc.getDate()}"></span> 14 <br> 15 <span>Поставено за </span> 16 <span th:text="${disc.getMovie() != null ? 'Филмот ' + disc.getMovie().getTitle() : 'Актерот ' + disc.getPerson().getName() + ' ' + disc.getPerson().getSurname()}" ></span> 17 </h6> 18 <div style="float: right" sec:authorize="isAuthenticated()"> 19 <a th:if="${disc.getUser().equals(user)}" class="btn btn-warning" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Промени</a> 20 <a th:if="${disc.getUser().equals(user)}" class="btn btn-danger button-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> 21 <a class="btn btn-success" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> 22 </div> 23 </div> 24 <table class="table table-striped" style="width: 70%; margin: auto;"> 2 <div th:text="${disc.getMovie() != null ? disc.getMovie().getTitle() : disc.getPerson().getName() + ' ' + disc.getPerson().getSurname()}"></div> 3 <div th:text="${disc.getTitle()}"></div> 4 <div th:text="${disc.getText()}"></div> 5 <div th:text="${disc.getDate()}"></div> 6 <div th:text="${disc.getUser().getUsername()}"></div> 7 <div th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Промени</a> </div> 8 <div th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary button-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </div> 9 <table class="table table-striped"> 25 10 <thead> 26 11 <tr> 27 <th scope="col">Реплика</th> 28 <th scope="col">Поставена на</th> 29 <th scope="col">Поставена од</th> 12 13 <th scope="col">Опис</th> 14 <th scope="col">Датум</th> 15 <th scope="col">Корисник</th> 30 16 <th:block sec:authorize="isAuthenticated()"> 17 31 18 <th scope="col"></th> 32 19 <th scope="col"></th> 33 20 </th:block> 21 34 22 </tr> 35 23 </thead> … … 39 27 <td th:text="${reply.getDate()}"></td> 40 28 <td th:text="${reply.getUser().getUsername()}"></td> 41 <td th:if="${reply.getUser().equals(user)}"><a class="btn btn-warning" th:href="@{'/replies/edit/{discussionId}/{replyId}' (discussionId=${disc.getDiscussionId()},replyId=${reply.getReplyId()})}">Промени</a> </td> 42 <td th:if="${reply.getUser().equals(user)}"><a class="btn btn-danger button-delete-reply" th:reply-id="${reply.getReplyId()}" th:dicsussion-id="${disc.getDiscussionId()}">Избриши</a> </td> 29 <td th:if="${reply.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/replies/edit/{discussionId}/{replyId}' (discussionId=${disc.getDiscussionId()},replyId=${reply.getReplyId()})}">Промени</a> </td> 30 <td th:if="${reply.getUser().equals(user)}"><a class="btn btn-primary button-delete-reply" th:reply-id="${reply.getReplyId()}" th:dicsussion-id="${disc.getDiscussionId()}">Избриши</a> </td> 31 43 32 <th:block sec:authorize="isAuthenticated()"> 33 <td th:if="${!reply.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td> 44 34 <td th:if="${!reply.getUser().equals(user)}"> 45 <a class="btn btn- success">👍</a>46 <a class="btn btn- danger">👎</a>35 <a class="btn btn-primary">Ми се допаѓа</a> 36 <a class="btn btn-primary">Не ми се допаѓа</a> 47 37 </td> 48 38 </th:block> 39 40 49 41 </tr> 50 42 </tbody> -
src/main/resources/templates/discussionForType.html
r42d565b r5b447b0 8 8 <thead> 9 9 <tr> 10 <th scope="col">Наменета</th> 10 11 <th scope="col">Наслов</th> 11 12 <th scope="col">Опис</th> … … 25 26 <tbody> 26 27 <tr th:each="disc : ${discussions}" class="movie"> 27 <td> 28 <a th:text="${disc.getTitle()}" th:href="@{'/discussions/{id}' (id=${disc.getDiscussionId()})}"></a> 29 </td> 28 <td th:text="${disc.getMovie() != null ? disc.getMovie().getTitle() : disc.getPerson().getName() + ' ' + disc.getPerson().getSurname()}"></td> 29 <td th:text="${disc.getTitle()}"></td> 30 30 <td th:text="${disc.getText()}"></td> 31 31 <td th:text="${disc.getDate()}"></td> 32 32 <td th:text="${disc.getUser().getUsername()}"></td> 33 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn- warning" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Измени</a> </td>34 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn- dangerbutton-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </td>33 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Промени</a> </td> 34 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary button-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </td> 35 35 36 36 <th:block sec:authorize="isAuthenticated()"> 37 <td th:if="${!disc.getUser().equals(user)}"><a class="btn btn- success" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td>37 <td th:if="${!disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td> 38 38 <td th:if="${!disc.getUser().equals(user)}"> 39 <a class="btn btn- success">👍</a>40 <a class="btn btn- danger">👎</a>39 <a class="btn btn-primary">Ми се допаѓа</a> 40 <a class="btn btn-primary">Не ми се допаѓа</a> 41 41 </td> 42 42 </th:block> -
src/main/resources/templates/discussionsList.html
r42d565b r5b447b0 10 10 <thead> 11 11 <tr> 12 <th scope="col">Наменета</th> 12 13 <th scope="col">Наслов</th> 13 14 <th scope="col">Опис</th> … … 28 29 <tr th:each="disc : ${discussions}" class="movie"> 29 30 <td th:text="${disc.getMovie() != null ? disc.getMovie().getTitle() : disc.getPerson().getName() + ' ' + disc.getPerson().getSurname()}"></td> 30 <td> 31 <a th:text="${disc.getTitle()}" th:href="@{'/discussions/{id}' (id=${disc.getDiscussionId()})}"></a> 32 </td> 31 <td th:text="${disc.getTitle()}"></td> 33 32 <td th:text="${disc.getText()}"></td> 34 33 <td th:text="${disc.getDate()}"></td> 35 34 <td th:text="${disc.getUser().getUsername()}"></td> 36 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn- warning" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Измени</a> </td>37 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn- dangerbutton-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </td>35 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Промени</a> </td> 36 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary button-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </td> 38 37 39 38 <th:block sec:authorize="isAuthenticated()"> 40 <td th:if="${!disc.getUser().equals(user)}"><a class="btn btn- success" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td>39 <td th:if="${!disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td> 41 40 <td th:if="${!disc.getUser().equals(user)}"> 42 <a class="btn btn- success">👍</a>43 <a class="btn btn- danger">👎</a>41 <a class="btn btn-primary">Ми се допаѓа</a> 42 <a class="btn btn-primary">Не ми се допаѓа</a> 44 43 </td> 45 44 </th:block> -
src/main/resources/templates/favoriteList.html
r42d565b r5b447b0 1 <div class="container mb-4" xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.w3.org/1999/xhtml"> 2 <div class="row" th:each="row: ${movie_rows}" > 3 <div class="col-md-3" th:each="movie: ${row}" > 4 <a class="card-text-center" th:href="@{'/movies/{id}' (id=${movie.getMovieId()})}" > 5 <div class="card-body card bg-image" th:style="'background:url(' + ${movie.getImageUrl()} + ') no-repeat center #eee;'"> 6 <h3 class="card-title title" th:text="${movie.getTitle()}"></h3> 7 <h3 class="card-text bottom" th:text="${'Rated '+movie.getImdbRating()}"></h3> 8 </div> 9 </a> 10 </div> 11 </div> 12 13 <!--<div class="row"> 1 <div class="container mb-4"> 2 <div class="row"> 14 3 <div class="col-12" th:if="${movies.size() > 0}"> 15 4 <div class="table-responsive"> … … 50 39 </div> 51 40 </div> 52 </div> -->41 </div> 53 42 </div> -
src/main/resources/templates/fragments/header.html
r42d565b r5b447b0 2 2 <nav class="navbar navbar-expand-md navbar-dark bg-dark"> 3 3 <div class="container"> 4 <a class="navbar-brand" href="/ movies">Форум за филмови</a>4 <a class="navbar-brand" href="/">Форум за филмови</a> 5 5 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" 6 6 aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation"> … … 16 16 </li> 17 17 <li class="nav-item m-auto"> 18 <a class="nav-link active" href="/directors"> Режисери</a>18 <a class="nav-link active" href="/directors">Директори</a> 19 19 </li> 20 20 <li class="nav-item m-auto"> -
src/main/resources/templates/fragments/searchBarGenre.html
r42d565b r5b447b0 1 1 <div> 2 <label for="searchGenre" style="width: 150px;">Пребарај пожанр</label>2 <label for="searchGenre">жанр</label> 3 3 <input id="searchGenre" type="text" placeholder="жанр"> 4 4 <button class="search-button">Пребарај</button> -
src/main/resources/templates/fragments/searchBarName.html
r42d565b r5b447b0 1 1 <div> 2 <label for="searchTitle" style="width: 150px;">Прабарај по име</label>2 <label for="searchTitle">Прабарај по име</label> 3 3 <input id="searchTitle" type="text" placeholder="име"> 4 4 <button class="search-button-title">Пребарај</button> -
src/main/resources/templates/moviesList.html
r42d565b r5b447b0 1 1 <div xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.w3.org/1999/xhtml"> 2 <div th:replace="fragments/searchBarGenre"> 2 3 3 <div style="width: 70%; margin: auto">4 <div th:replace="fragments/searchBarName"></div>5 <div th:replace="fragments/searchBarGenre"></div>6 4 </div> 7 5 … … 11 9 12 10 <div class="container mb-4"> 13 <div class="row" th:each="row: ${movie_rows}" >14 <div class="col-md-3" th:each="movie: ${row}" >15 <div class="card-body card bg-image" th:style="'background:url(' + ${movie.getImageUrl()} + ') no-repeat center #eee;'">16 <a class="card-text-center" style="color: white" th:href="@{'/movies/{id}' (id=${movie.getMovieId()})}" >17 <h3 class="card-title title" th:text="${movie.getTitle()}"></h3>18 </a>19 <h3 class="card-text bottom" th:text="${'Rated '+movie.getImdbRating()}"></h3>20 <th:block sec:authorize="isAuthenticated()">21 <a class="bottom-heart btn btn-success button-add-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${!likedMovies.contains(movie)}">❤</a>22 <a class="bottom-heart btn btn-danger button-remove-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${likedMovies.contains(movie)}">💔</a>23 </th:block>24 </div>25 </div>26 </div>27 </div>28 <!--<div class="container mb-4">29 11 <div class="row"> 30 12 <div class="col-12" th:if="${movies.size() > 0}"> … … 37 19 <th scope="col">Датум издавање</th> 38 20 <th scope="col">Допаѓања</th> 39 <th scope="col"> Жанрови</th>21 <th scope="col">Занрови</th> 40 22 <th scope="col">Актери</th> 41 23 <th scope="col">Режисер</th> … … 55 37 <tbody> 56 38 <tr th:each="movie : ${movies}" class="elements"> 57 <td ><a th:text="${movie.getTitle()}" th:href="@{'/movies/{id}' (id=${movie.getMovieId()})}"></a></td>39 <td th:text="${movie.getTitle()}"></td> 58 40 <td th:text="${movie.getDescription()}"></td> 59 41 <td th:text="${movie.getAiringDate()}"></td> … … 65 47 </td> 66 48 <td> 67 <div th:each="ac: ${movie.getActors()}"> 68 <a th:href="@{'/persons/{id}' (id=${ac.getPerson().getPersonId()})}" th:text="${ac.getPerson().getName() + ' ' + ac.getPerson().getSurname()}"></a> 69 </div> 49 <div th:each="a: ${movie.getActors()}" th:text="${a.getPerson().getName()} "></div> 70 50 </td> 71 <td th:if="${movie.getDirector() != null}"> 72 <a th:href="@{'/persons/{id}' (id=${movie.getDirector().getPersonId()})}" th:text="${movie.getDirector().getName() + ' ' + movie.getDirector().getSurname()}"></a> 73 </td> 74 <td th:if="${movie.getDirector() == null}"> 75 Филмот нема режисер. 76 </td> 51 <td th:text="${movie.getDirector() != null ? movie.getDirector()?.getName() + ' '+ movie.getDirector()?.getSurname() : 'Не е додаен директор'}"></td> 77 52 <td> 78 53 <a class="btn btn-primary" th:href="@{'discussions/all/{id}?type=M' (id=${movie.getMovieId()})}" >Прегледај дискусии</a> … … 80 55 <th:block sec:authorize="isAuthenticated()"> 81 56 <td> 82 <a class="btn btn-success button-add-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${!likedMovies.contains(movie)}">Додади во омилена листа</a> 83 <a class="btn btn-warning button-remove-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${likedMovies.contains(movie)}">Избриши од омилена листа</a> 57 <a class="btn btn-primary button-add-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${!likedMovies.contains(movie)}">Додади во омилена листа</a> 58 <a class="btn btn-primary button-remove-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${likedMovies.contains(movie)}">Избриши од омилена листа</a> 59 84 60 </td> 85 61 <td> 86 <a class="btn btn- successbutton-add-grade-movie" th:movie-id="${movie.getMovieId()}">Остави оценка</a>62 <a class="btn btn-primary button-add-grade-movie" th:movie-id="${movie.getMovieId()}">Остави оценка</a> 87 63 </td> 88 64 <td> 89 <a class="btn btn- warning" th:href="@{'/movies/{id}/edit' (id=${movie.getMovieId()})}">Измени</a>65 <a class="btn btn-primary" th:href="@{'/movies/{id}/edit' (id=${movie.getMovieId()})}">Промени</a> 90 66 </td> 91 67 <td> 92 <a class="btn btn- dangerbutton-delete-movie" th:movie-id="${movie.getMovieId()}">Избриши филм</a>68 <a class="btn btn-primary button-delete-movie" th:movie-id="${movie.getMovieId()}">Избриши филм</a> 93 69 </td> 94 70 </th:block> … … 99 75 </div> 100 76 </div> 101 </div> -->77 </div> 102 78 103 79 </div> -
src/main/resources/templates/personsList.html
r42d565b r5b447b0 12 12 <tr> 13 13 <th scope="col">Име</th> 14 < !--<th scope="col">Презиме</th>-->14 <th scope="col">Презиме</th> 15 15 <th scope="col">Датум рагање</th> 16 < !--<th scope="col">Опис</th>-->16 <th scope="col">Опис</th> 17 17 <!-- <th scope="col">Занрови</th>--> 18 18 <th scope="col">Слика</th> … … 31 31 <tbody> 32 32 <tr th:each="person : ${persons}" class="elements"> 33 <td ><a th:href="@{'/persons/{id}' (id=${person.getPersonId()})}" th:text="${person.getName() + ' ' + person.getSurname()}"></a></td>34 < !--<td th:text="${person.getSurname()}"></td>-->33 <td th:text="${person.getName()}"></td> 34 <td th:text="${person.getSurname()}"></td> 35 35 <td th:text="${person.getDateOfBirth()}"></td> 36 < !--<td th:text="${person.getDescription()}"></td>-->36 <td th:text="${person.getDescription()}"></td> 37 37 38 38 <!-- <td>--> -
src/main/resources/templates/template.html
r42d565b r5b447b0 3 3 <head> 4 4 <meta charset="UTF-8"/> 5 <title> weDiscussMovies</title>5 <title>Products</title> 6 6 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> 7 7 <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> … … 18 18 <section class="jumbotron text-center"> 19 19 <div class="container"> 20 < !--<img th:src="@{/img/logo.png}" style="opacity: 0.3; z-index: 5; position: absolute; margin: auto; height: 225px; width: auto; left: 42%; top: 2%">-->21 <h 1 class="jumbotron-heading" style="z-index: -1">weDiscussMovies</h1>20 <h1 class="jumbotron-heading">WEB PROGRAMMING SHOP</h1> 21 <h3 class="jumbotron-heading">All products</h3> 22 22 </div> 23 23 </section> … … 27 27 <h1 class="danger" th:text="${error?.toString()}"></h1> 28 28 </div> 29 <div th:replace="fragments/searchBarName"></div> 29 30 <section th:include="${contentTemplate}"></section> 30 31 <div id="dialog-rating" style="display: none"> -
target/classes/static/css/shared.css
r42d565b r5b447b0 2 2 max-width: 5vw; 3 3 } 4 5 .row{6 height: 300px;7 margin-bottom: 15px;8 }9 10 .row div{11 height: 100%;12 }13 14 .row div div{15 height: 100%;16 }17 18 .card{19 background-size: 100vh auto;20 float:left;21 margin: 7px;22 border-radius: 10px;23 padding: 20px;24 color: white;25 -webkit-text-stroke-width: 1px !important;26 -webkit-text-stroke-color: black !important;27 width: 90%;28 height: 90%;29 box-shadow: 4px 4px 4px rgba(128,128,128,1);30 }31 32 .card a h3{33 -webkit-text-stroke-width: 1px;34 -webkit-text-stroke-color: black;35 color:white;36 transition: 100ms;37 }38 39 .card:hover a h3{40 transition: 400ms;41 color:black;42 -webkit-text-stroke-color: gray;43 }44 45 .title{46 text-align: center;47 background-color: rgba(0,0,0,0.25);48 border-radius: 10px 10px 0px 0px;49 padding: 10px;50 }51 52 .bottom{53 position: absolute;54 top: 80%;55 margin:auto;56 width: 100%;57 left: 0%;58 border-radius: 0px;59 text-align: center;60 background-color: rgba(0,0,0,0.25);61 }62 63 64 .bottom-heart{65 top: 60%;66 left: auto;67 position: absolute;68 margin: auto;69 width: 20%;70 text-align: center;71 } -
target/classes/static/js/sharedScript.js
r42d565b r5b447b0 4 4 var elements = $(".elements") 5 5 var elementGrade; 6 7 6 8 7 $("#dialog-rating").dialog({ … … 146 145 let movieId=$(button).attr("movie-id") 147 146 if (type==='like') { 148 $(button).parent().append("<a class='b ottom-heart btn btn-danger button-remove-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">💔</a>")147 $(button).parent().append("<a class='btn btn-primary button-remove-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">Избриши од омилена листа</a>") 149 148 console.log("da") 150 149 } 151 150 else{ 152 $(button).parent().append("<a class='b ottom-heart btn btn-success button-add-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">❤</a>")151 $(button).parent().append("<a class='btn btn-primary button-add-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">Додади во омилена листа</a>") 153 152 154 153 } -
target/classes/templates/discussion.html
r42d565b r5b447b0 1 1 <div xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.w3.org/1999/xhtml"> 2 <div style="width: 85%; text-align: justify; margin: auto; clear: both"> 3 <div> 4 <h1 th:text="${disc.getTitle()}" style="width: 80%; float: left"></h1> 5 </div> 6 <hr><br><br> 7 <div> 8 <h5 th:text="${disc.getText()}" style="width: 90%; margin: auto; background-color: lightblue; border-radius: 4px; padding: 20px"></h5> 9 </div> 10 <br><br><br> 11 <h6 style="width: 60%; float:left;"> 12 <span th:text="${'Поставено од: '+disc.getUser().getUsername()}"></span> 13 <span th:text="${', на датум '+ disc.getDate()}"></span> 14 <br> 15 <span>Поставено за </span> 16 <span th:text="${disc.getMovie() != null ? 'Филмот ' + disc.getMovie().getTitle() : 'Актерот ' + disc.getPerson().getName() + ' ' + disc.getPerson().getSurname()}" ></span> 17 </h6> 18 <div style="float: right" sec:authorize="isAuthenticated()"> 19 <a th:if="${disc.getUser().equals(user)}" class="btn btn-warning" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Промени</a> 20 <a th:if="${disc.getUser().equals(user)}" class="btn btn-danger button-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> 21 <a class="btn btn-success" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> 22 </div> 23 </div> 24 <table class="table table-striped" style="width: 70%; margin: auto;"> 2 <div th:text="${disc.getMovie() != null ? disc.getMovie().getTitle() : disc.getPerson().getName() + ' ' + disc.getPerson().getSurname()}"></div> 3 <div th:text="${disc.getTitle()}"></div> 4 <div th:text="${disc.getText()}"></div> 5 <div th:text="${disc.getDate()}"></div> 6 <div th:text="${disc.getUser().getUsername()}"></div> 7 <div th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Промени</a> </div> 8 <div th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary button-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </div> 9 <table class="table table-striped"> 25 10 <thead> 26 11 <tr> 27 <th scope="col">Реплика</th> 28 <th scope="col">Поставена на</th> 29 <th scope="col">Поставена од</th> 12 13 <th scope="col">Опис</th> 14 <th scope="col">Датум</th> 15 <th scope="col">Корисник</th> 30 16 <th:block sec:authorize="isAuthenticated()"> 17 31 18 <th scope="col"></th> 32 19 <th scope="col"></th> 33 20 </th:block> 21 34 22 </tr> 35 23 </thead> … … 39 27 <td th:text="${reply.getDate()}"></td> 40 28 <td th:text="${reply.getUser().getUsername()}"></td> 41 <td th:if="${reply.getUser().equals(user)}"><a class="btn btn-warning" th:href="@{'/replies/edit/{discussionId}/{replyId}' (discussionId=${disc.getDiscussionId()},replyId=${reply.getReplyId()})}">Промени</a> </td> 42 <td th:if="${reply.getUser().equals(user)}"><a class="btn btn-danger button-delete-reply" th:reply-id="${reply.getReplyId()}" th:dicsussion-id="${disc.getDiscussionId()}">Избриши</a> </td> 29 <td th:if="${reply.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/replies/edit/{discussionId}/{replyId}' (discussionId=${disc.getDiscussionId()},replyId=${reply.getReplyId()})}">Промени</a> </td> 30 <td th:if="${reply.getUser().equals(user)}"><a class="btn btn-primary button-delete-reply" th:reply-id="${reply.getReplyId()}" th:dicsussion-id="${disc.getDiscussionId()}">Избриши</a> </td> 31 43 32 <th:block sec:authorize="isAuthenticated()"> 33 <td th:if="${!reply.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td> 44 34 <td th:if="${!reply.getUser().equals(user)}"> 45 <a class="btn btn- success">👍</a>46 <a class="btn btn- danger">👎</a>35 <a class="btn btn-primary">Ми се допаѓа</a> 36 <a class="btn btn-primary">Не ми се допаѓа</a> 47 37 </td> 48 38 </th:block> 39 40 49 41 </tr> 50 42 </tbody> -
target/classes/templates/discussionForType.html
r42d565b r5b447b0 8 8 <thead> 9 9 <tr> 10 <th scope="col">Наменета</th> 10 11 <th scope="col">Наслов</th> 11 12 <th scope="col">Опис</th> … … 25 26 <tbody> 26 27 <tr th:each="disc : ${discussions}" class="movie"> 27 <td> 28 <a th:text="${disc.getTitle()}" th:href="@{'/discussions/{id}' (id=${disc.getDiscussionId()})}"></a> 29 </td> 28 <td th:text="${disc.getMovie() != null ? disc.getMovie().getTitle() : disc.getPerson().getName() + ' ' + disc.getPerson().getSurname()}"></td> 29 <td th:text="${disc.getTitle()}"></td> 30 30 <td th:text="${disc.getText()}"></td> 31 31 <td th:text="${disc.getDate()}"></td> 32 32 <td th:text="${disc.getUser().getUsername()}"></td> 33 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn- warning" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Измени</a> </td>34 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn- dangerbutton-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </td>33 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Промени</a> </td> 34 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary button-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </td> 35 35 36 36 <th:block sec:authorize="isAuthenticated()"> 37 <td th:if="${!disc.getUser().equals(user)}"><a class="btn btn- success" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td>37 <td th:if="${!disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td> 38 38 <td th:if="${!disc.getUser().equals(user)}"> 39 <a class="btn btn- success">👍</a>40 <a class="btn btn- danger">👎</a>39 <a class="btn btn-primary">Ми се допаѓа</a> 40 <a class="btn btn-primary">Не ми се допаѓа</a> 41 41 </td> 42 42 </th:block> -
target/classes/templates/discussionsList.html
r42d565b r5b447b0 10 10 <thead> 11 11 <tr> 12 <th scope="col">Наменета</th> 12 13 <th scope="col">Наслов</th> 13 14 <th scope="col">Опис</th> … … 28 29 <tr th:each="disc : ${discussions}" class="movie"> 29 30 <td th:text="${disc.getMovie() != null ? disc.getMovie().getTitle() : disc.getPerson().getName() + ' ' + disc.getPerson().getSurname()}"></td> 30 <td> 31 <a th:text="${disc.getTitle()}" th:href="@{'/discussions/{id}' (id=${disc.getDiscussionId()})}"></a> 32 </td> 31 <td th:text="${disc.getTitle()}"></td> 33 32 <td th:text="${disc.getText()}"></td> 34 33 <td th:text="${disc.getDate()}"></td> 35 34 <td th:text="${disc.getUser().getUsername()}"></td> 36 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn- warning" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Измени</a> </td>37 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn- dangerbutton-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </td>35 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/discussions/add/{id}' (id=${disc.getDiscussionId()})}">Промени</a> </td> 36 <td th:if="${disc.getUser().equals(user)}"><a class="btn btn-primary button-delete-discussion" th:discussion-id="${disc.getDiscussionId()}">Избриши</a> </td> 38 37 39 38 <th:block sec:authorize="isAuthenticated()"> 40 <td th:if="${!disc.getUser().equals(user)}"><a class="btn btn- success" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td>39 <td th:if="${!disc.getUser().equals(user)}"><a class="btn btn-primary" th:href="@{'/replies/add/{discussionId}' (discussionId=${disc.getDiscussionId()})}">Реплицирај</a> </td> 41 40 <td th:if="${!disc.getUser().equals(user)}"> 42 <a class="btn btn- success">👍</a>43 <a class="btn btn- danger">👎</a>41 <a class="btn btn-primary">Ми се допаѓа</a> 42 <a class="btn btn-primary">Не ми се допаѓа</a> 44 43 </td> 45 44 </th:block> -
target/classes/templates/favoriteList.html
r42d565b r5b447b0 1 <div class="container mb-4" xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.w3.org/1999/xhtml"> 2 <div class="row" th:each="row: ${movie_rows}" > 3 <div class="col-md-3" th:each="movie: ${row}" > 4 <a class="card-text-center" th:href="@{'/movies/{id}' (id=${movie.getMovieId()})}" > 5 <div class="card-body card bg-image" th:style="'background:url(' + ${movie.getImageUrl()} + ') no-repeat center #eee;'"> 6 <h3 class="card-title title" th:text="${movie.getTitle()}"></h3> 7 <h3 class="card-text bottom" th:text="${'Rated '+movie.getImdbRating()}"></h3> 8 </div> 9 </a> 10 </div> 11 </div> 12 13 <!--<div class="row"> 1 <div class="container mb-4"> 2 <div class="row"> 14 3 <div class="col-12" th:if="${movies.size() > 0}"> 15 4 <div class="table-responsive"> … … 50 39 </div> 51 40 </div> 52 </div> -->41 </div> 53 42 </div> -
target/classes/templates/fragments/header.html
r42d565b r5b447b0 2 2 <nav class="navbar navbar-expand-md navbar-dark bg-dark"> 3 3 <div class="container"> 4 <a class="navbar-brand" href="/ movies">Форум за филмови</a>4 <a class="navbar-brand" href="/">Форум за филмови</a> 5 5 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" 6 6 aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation"> … … 16 16 </li> 17 17 <li class="nav-item m-auto"> 18 <a class="nav-link active" href="/directors"> Режисери</a>18 <a class="nav-link active" href="/directors">Директори</a> 19 19 </li> 20 20 <li class="nav-item m-auto"> -
target/classes/templates/fragments/searchBarGenre.html
r42d565b r5b447b0 1 1 <div> 2 <label for="searchGenre" style="width: 150px;">Пребарај пожанр</label>2 <label for="searchGenre">жанр</label> 3 3 <input id="searchGenre" type="text" placeholder="жанр"> 4 4 <button class="search-button">Пребарај</button> -
target/classes/templates/fragments/searchBarName.html
r42d565b r5b447b0 1 1 <div> 2 <label for="searchTitle" style="width: 150px;">Прабарај по име</label>2 <label for="searchTitle">Прабарај по име</label> 3 3 <input id="searchTitle" type="text" placeholder="име"> 4 4 <button class="search-button-title">Пребарај</button> -
target/classes/templates/moviesList.html
r42d565b r5b447b0 1 1 <div xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.w3.org/1999/xhtml"> 2 <div th:replace="fragments/searchBarGenre"> 2 3 3 <div style="width: 70%; margin: auto">4 <div th:replace="fragments/searchBarName"></div>5 <div th:replace="fragments/searchBarGenre"></div>6 4 </div> 7 5 … … 11 9 12 10 <div class="container mb-4"> 13 <div class="row" th:each="row: ${movie_rows}" >14 <div class="col-md-3" th:each="movie: ${row}" >15 <div class="card-body card bg-image" th:style="'background:url(' + ${movie.getImageUrl()} + ') no-repeat center #eee;'">16 <a class="card-text-center" style="color: white" th:href="@{'/movies/{id}' (id=${movie.getMovieId()})}" >17 <h3 class="card-title title" th:text="${movie.getTitle()}"></h3>18 </a>19 <h3 class="card-text bottom" th:text="${'Rated '+movie.getImdbRating()}"></h3>20 <th:block sec:authorize="isAuthenticated()">21 <a class="bottom-heart btn btn-success button-add-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${!likedMovies.contains(movie)}">❤</a>22 <a class="bottom-heart btn btn-danger button-remove-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${likedMovies.contains(movie)}">💔</a>23 </th:block>24 </div>25 </div>26 </div>27 </div>28 <!--<div class="container mb-4">29 11 <div class="row"> 30 12 <div class="col-12" th:if="${movies.size() > 0}"> … … 37 19 <th scope="col">Датум издавање</th> 38 20 <th scope="col">Допаѓања</th> 39 <th scope="col"> Жанрови</th>21 <th scope="col">Занрови</th> 40 22 <th scope="col">Актери</th> 41 23 <th scope="col">Режисер</th> … … 55 37 <tbody> 56 38 <tr th:each="movie : ${movies}" class="elements"> 57 <td ><a th:text="${movie.getTitle()}" th:href="@{'/movies/{id}' (id=${movie.getMovieId()})}"></a></td>39 <td th:text="${movie.getTitle()}"></td> 58 40 <td th:text="${movie.getDescription()}"></td> 59 41 <td th:text="${movie.getAiringDate()}"></td> … … 65 47 </td> 66 48 <td> 67 <div th:each="ac: ${movie.getActors()}"> 68 <a th:href="@{'/persons/{id}' (id=${ac.getPerson().getPersonId()})}" th:text="${ac.getPerson().getName() + ' ' + ac.getPerson().getSurname()}"></a> 69 </div> 49 <div th:each="a: ${movie.getActors()}" th:text="${a.getPerson().getName()} "></div> 70 50 </td> 71 <td th:if="${movie.getDirector() != null}"> 72 <a th:href="@{'/persons/{id}' (id=${movie.getDirector().getPersonId()})}" th:text="${movie.getDirector().getName() + ' ' + movie.getDirector().getSurname()}"></a> 73 </td> 74 <td th:if="${movie.getDirector() == null}"> 75 Филмот нема режисер. 76 </td> 51 <td th:text="${movie.getDirector() != null ? movie.getDirector()?.getName() + ' '+ movie.getDirector()?.getSurname() : 'Не е додаен директор'}"></td> 77 52 <td> 78 53 <a class="btn btn-primary" th:href="@{'discussions/all/{id}?type=M' (id=${movie.getMovieId()})}" >Прегледај дискусии</a> … … 80 55 <th:block sec:authorize="isAuthenticated()"> 81 56 <td> 82 <a class="btn btn-success button-add-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${!likedMovies.contains(movie)}">Додади во омилена листа</a> 83 <a class="btn btn-warning button-remove-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${likedMovies.contains(movie)}">Избриши од омилена листа</a> 57 <a class="btn btn-primary button-add-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${!likedMovies.contains(movie)}">Додади во омилена листа</a> 58 <a class="btn btn-primary button-remove-favourite-list" th:movie-id="${movie.getMovieId()}" th:user-id="${user.getUserId()}" th:if="${likedMovies.contains(movie)}">Избриши од омилена листа</a> 59 84 60 </td> 85 61 <td> 86 <a class="btn btn- successbutton-add-grade-movie" th:movie-id="${movie.getMovieId()}">Остави оценка</a>62 <a class="btn btn-primary button-add-grade-movie" th:movie-id="${movie.getMovieId()}">Остави оценка</a> 87 63 </td> 88 64 <td> 89 <a class="btn btn- warning" th:href="@{'/movies/{id}/edit' (id=${movie.getMovieId()})}">Измени</a>65 <a class="btn btn-primary" th:href="@{'/movies/{id}/edit' (id=${movie.getMovieId()})}">Промени</a> 90 66 </td> 91 67 <td> 92 <a class="btn btn- dangerbutton-delete-movie" th:movie-id="${movie.getMovieId()}">Избриши филм</a>68 <a class="btn btn-primary button-delete-movie" th:movie-id="${movie.getMovieId()}">Избриши филм</a> 93 69 </td> 94 70 </th:block> … … 99 75 </div> 100 76 </div> 101 </div> -->77 </div> 102 78 103 79 </div> -
target/classes/templates/personsList.html
r42d565b r5b447b0 12 12 <tr> 13 13 <th scope="col">Име</th> 14 < !--<th scope="col">Презиме</th>-->14 <th scope="col">Презиме</th> 15 15 <th scope="col">Датум рагање</th> 16 < !--<th scope="col">Опис</th>-->16 <th scope="col">Опис</th> 17 17 <!-- <th scope="col">Занрови</th>--> 18 18 <th scope="col">Слика</th> … … 31 31 <tbody> 32 32 <tr th:each="person : ${persons}" class="elements"> 33 <td ><a th:href="@{'/persons/{id}' (id=${person.getPersonId()})}" th:text="${person.getName() + ' ' + person.getSurname()}"></a></td>34 < !--<td th:text="${person.getSurname()}"></td>-->33 <td th:text="${person.getName()}"></td> 34 <td th:text="${person.getSurname()}"></td> 35 35 <td th:text="${person.getDateOfBirth()}"></td> 36 < !--<td th:text="${person.getDescription()}"></td>-->36 <td th:text="${person.getDescription()}"></td> 37 37 38 38 <!-- <td>--> -
target/classes/templates/template.html
r42d565b r5b447b0 3 3 <head> 4 4 <meta charset="UTF-8"/> 5 <title> weDiscussMovies</title>5 <title>Products</title> 6 6 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> 7 7 <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> … … 18 18 <section class="jumbotron text-center"> 19 19 <div class="container"> 20 < !--<img th:src="@{/img/logo.png}" style="opacity: 0.3; z-index: 5; position: absolute; margin: auto; height: 225px; width: auto; left: 42%; top: 2%">-->21 <h 1 class="jumbotron-heading" style="z-index: -1">weDiscussMovies</h1>20 <h1 class="jumbotron-heading">WEB PROGRAMMING SHOP</h1> 21 <h3 class="jumbotron-heading">All products</h3> 22 22 </div> 23 23 </section> … … 27 27 <h1 class="danger" th:text="${error?.toString()}"></h1> 28 28 </div> 29 <div th:replace="fragments/searchBarName"></div> 29 30 <section th:include="${contentTemplate}"></section> 30 31 <div id="dialog-rating" style="display: none">
Note:
See TracChangeset
for help on using the changeset viewer.