diff --git a/src/main/java/kinosearch/kinosearch3/cinema/OnlinelifeScanner.java b/src/main/java/kinosearch/kinosearch3/cinema/OnlinelifeScanner.java
index 6ce1ccb..404392e 100644
--- a/src/main/java/kinosearch/kinosearch3/cinema/OnlinelifeScanner.java
+++ b/src/main/java/kinosearch/kinosearch3/cinema/OnlinelifeScanner.java
@@ -62,13 +62,13 @@ public class OnlinelifeScanner implements ScannerCinema {
Document document = Jsoup.parse(browser.get(url));
Element element = document.getElementsByClass("full-poster").get(0);
- File saveTo = new File(this.saveToDir, url.substring(url.lastIndexOf("/")+1, url.lastIndexOf("."))+".jpg");
- this.fileDownloader.addFile(element.attr("src"), saveTo);
+ String pathFile = "onlinelife/"+url.substring(url.lastIndexOf("/")+1, url.lastIndexOf("."))+".jpg";
+ this.fileDownloader.addFile(element.attr("src"), new File(this.saveToDir, pathFile));
CinemaDocument cinemaDocument = new CinemaDocument();
cinemaDocument.setTitle(document.getElementsByClass("film_info").get(0).child(0).child(0).text().trim());
cinemaDocument.setDescription(document.getElementsByClass("film-description").get(0).text());
- cinemaDocument.setFileName(saveTo.getAbsolutePath());
+ cinemaDocument.setFileName(pathFile);
cinemaDocument.setTypeWarez(this.getName());
cinemaDocument.setUrl(url);
repository.save(cinemaDocument);
diff --git a/src/main/java/kinosearch/kinosearch3/cinema/SeasonvarScanner.java b/src/main/java/kinosearch/kinosearch3/cinema/SeasonvarScanner.java
index 700627d..cb5f5ad 100644
--- a/src/main/java/kinosearch/kinosearch3/cinema/SeasonvarScanner.java
+++ b/src/main/java/kinosearch/kinosearch3/cinema/SeasonvarScanner.java
@@ -58,14 +58,14 @@ public class SeasonvarScanner implements ScannerCinema {
Document document = Jsoup.parse(browser.get(url));
Element element = document.getElementsByAttributeValue("itemprop", "thumbnailUrl").get(0);
- File saveTo = new File(this.saveTo, url.substring(url.lastIndexOf("/")+1, url.lastIndexOf("."))+".jpg");
- this.fileDownloader.addFile(element.attr("src"), saveTo);
+ String pathFile = "seasonvar/"+url.substring(url.lastIndexOf("/")+1, url.lastIndexOf("."))+".jpg";
+ this.fileDownloader.addFile(element.attr("src"), new File(this.saveTo, pathFile));
CinemaDocument cinemaDocument = new CinemaDocument();
String title = document.getElementsByClass("pgs-sinfo-title").get(0).text();
cinemaDocument.setTitle(title.replaceAll("^Сериал ", "").replaceAll(" онлайн$", ""));
cinemaDocument.setDescription(document.getElementsByAttributeValue("itemprop", "description").get(0).text());
- cinemaDocument.setFileName(saveTo.getAbsolutePath());
+ cinemaDocument.setFileName(pathFile);
cinemaDocument.setTypeWarez(this.getName());
cinemaDocument.setUrl(url);
this.repository.save(cinemaDocument);
diff --git a/src/main/java/kinosearch/kinosearch3/webpp/WebAppController.java b/src/main/java/kinosearch/kinosearch3/webpp/WebAppController.java
index 281e8e7..ef182cc 100644
--- a/src/main/java/kinosearch/kinosearch3/webpp/WebAppController.java
+++ b/src/main/java/kinosearch/kinosearch3/webpp/WebAppController.java
@@ -6,27 +6,34 @@ package kinosearch.kinosearch3.webpp;
import kinosearch.kinosearch3.base.BaseRepository;
import kinosearch.kinosearch3.base.CinemaDocument;
+import org.apache.commons.io.IOUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import java.io.File;
+import java.io.FileInputStream;
import java.io.IOException;
import java.util.List;
@Controller
+@PropertySource("classpath:/application.properties")
public class WebAppController {
private final Logger logger = LoggerFactory.getLogger(WebAppController.class);
private final BaseRepository baseRepository;
+ private final String saveDir;
@Autowired
- public WebAppController(BaseRepository baseRepository) {
+ public WebAppController(BaseRepository baseRepository, @Value("${saveRootDir}") String saveDir) {
this.baseRepository = baseRepository;
+ this.saveDir = saveDir;
}
@RequestMapping(value = "/", method = RequestMethod.GET)
@@ -45,6 +52,19 @@ public class WebAppController {
return "searchResult";
}
+ @RequestMapping(value = "/poster/**", method = RequestMethod.GET)
+ @ResponseBody
+ public void poster(HttpServletRequest request, HttpServletResponse response) throws IOException {
+ File posterFile = new File(this.saveDir, request.getPathInfo().substring("/poster/".length()));
+ logger.debug("poster file: {}", posterFile);
+ if (posterFile.exists()) {
+ response.setStatus(200);
+ IOUtils.copy(new FileInputStream(posterFile), response.getOutputStream());
+ } else {
+ response.setStatus(404);
+ }
+ }
+
@RequestMapping(value = "/blog.html", method = RequestMethod.GET)
public String blog() {
return "blog";
diff --git a/src/main/resources/kinosearch/kinosearch3/spider/spring.xml b/src/main/resources/kinosearch/kinosearch3/spider/spring.xml
index c5e1569..8ec5790 100644
--- a/src/main/resources/kinosearch/kinosearch3/spider/spring.xml
+++ b/src/main/resources/kinosearch/kinosearch3/spider/spring.xml
@@ -43,14 +43,14 @@