Skip to content

Commit e1edba4

Browse files
committed
feat: update create and edit news functionality
1 parent ebc5bf3 commit e1edba4

File tree

3 files changed

+24
-4
lines changed

3 files changed

+24
-4
lines changed

src/main/java/com/misicode/eggnews/controllers/NewsController.java

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,22 @@ public String showEditNews(@PathVariable String id, ModelMap model) {
6464

6565
@PostMapping("/my-news/form")
6666
public String formNews(News news, @RequestParam("file-upload") MultipartFile file) {
67-
news.setUser(authService.getUserAuthenticated());
68-
if(!file.isEmpty()) news.setImage(imageService.saveImage(file));
67+
if(news.getIdNews() != null) {
68+
News mNews = newsService.getNewsById(news.getIdNews());
69+
70+
mNews.setTitle(news.getTitle());
71+
mNews.setBody(news.getBody());
72+
73+
if(!file.isEmpty()) mNews.setImage(imageService.saveImage(file));
74+
75+
newsService.saveNews(mNews);
76+
} else {
77+
news.setUser(authService.getUserAuthenticated());
78+
news.setImage(imageService.saveImage(file));
79+
80+
newsService.saveNews(news);
81+
}
6982

70-
newsService.saveNews(news);
7183
return "redirect:../my-news";
7284
}
7385

src/main/java/com/misicode/eggnews/domain/News.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,15 @@ public String getCreatedAt() {
103103
return createdAt.format(DateTimeFormatter.ofPattern("dd-MM-yyyy"));
104104
}
105105

106+
public void setCreatedAt(LocalDateTime createdAt) {
107+
this.createdAt = createdAt;
108+
}
109+
106110
public String getCreatedAtWithTime() {
107111
return createdAt.format(DateTimeFormatter.ofPattern("dd-MM-yyyy hh:mm a"));
108112
}
113+
114+
public void setUpdatedAt(LocalDateTime updatedAt) {
115+
this.updatedAt = updatedAt;
116+
}
109117
}

src/main/resources/templates/form-news-page.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ <h2 th:text="${subtitle}"></h2>
1919
</div>
2020
<section>
2121
<form th:action="@{/my-news/form}" th:object="${news}" method="post" enctype="multipart/form-data">
22-
<input th:if="!${isNew}" type="hidden" th:value="${news.idNews}" />
22+
<input th:if="${!isNew}" type="hidden" th:field="*{idNews}" />
2323
<div class="card grid-form-card">
2424
<div class="form-card">
2525
<div>

0 commit comments

Comments
 (0)