aboutsummaryrefslogtreecommitdiff
path: root/juick-spring-www
diff options
context:
space:
mode:
Diffstat (limited to 'juick-spring-www')
-rw-r--r--juick-spring-www/src/main/java/com/juick/www/HelpService.java2
-rw-r--r--juick-spring-www/src/main/java/com/juick/www/controllers/HelpController.java39
2 files changed, 23 insertions, 18 deletions
diff --git a/juick-spring-www/src/main/java/com/juick/www/HelpService.java b/juick-spring-www/src/main/java/com/juick/www/HelpService.java
index a3bee60a..76b3582d 100644
--- a/juick-spring-www/src/main/java/com/juick/www/HelpService.java
+++ b/juick-spring-www/src/main/java/com/juick/www/HelpService.java
@@ -29,7 +29,7 @@ public class HelpService {
if (canPage(page) && canLang(lang)) {
try {
Path file = Paths.get(helpPath, lang, page);
- String path =file.toString();
+ String path = file.toString();
file = Paths.get(new ClassPathResource(path).getURI());
if (Files.isReadable(file))
diff --git a/juick-spring-www/src/main/java/com/juick/www/controllers/HelpController.java b/juick-spring-www/src/main/java/com/juick/www/controllers/HelpController.java
index b5f0134c..22ecacf3 100644
--- a/juick-spring-www/src/main/java/com/juick/www/controllers/HelpController.java
+++ b/juick-spring-www/src/main/java/com/juick/www/controllers/HelpController.java
@@ -33,30 +33,35 @@ public class HelpController {
String page = pageParam.orElse("index");
String lang = langParam.orElse(locale.getLanguage());
- model.addAttribute("visitor", UserUtils.getCurrentUser());
- model.addAttribute("help_nav", getContent("navigation", lang, Optional.empty()));
- model.addAttribute("help_data", getContent(page, lang, langOrPageParam));
-
- return "views/help";
- }
-
- private String getContent(String page, String lang, Optional<String> langOrPageParam) {
String content = null;
+ String navigation = null;
if (langOrPageParam.isPresent()) {
- String anything = langOrPageParam.get();
+ String langOrPage = langOrPageParam.get();
- if (helpService.canLang(anything))
- content = helpService.getHelp(page, anything);
+ if (helpService.canLang(langOrPage)) {
+ navigation = helpService.getHelp("navigation", langOrPage);
+ if (navigation != null)
+ lang = langOrPage;
+ }
- if (content == null && helpService.canPage(anything))
- content = helpService.getHelp(anything, lang);
- } else
+ if (navigation == null && helpService.canPage(langOrPage))
+ page = langOrPage;
+ }
+
+ if (content == null)
content = helpService.getHelp(page, lang);
- if (content != null)
- return content;
+ if (navigation == null)
+ navigation = helpService.getHelp("navigation", lang);
+
+ if (content == null || navigation == null)
+ throw new HttpNotFoundException();
- throw new HttpNotFoundException();
+ model.addAttribute("help_nav", navigation);
+ model.addAttribute("help_data", content);
+ model.addAttribute("visitor", UserUtils.getCurrentUser());
+
+ return "views/help";
}
}