aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/juick/server/www/controllers/Help.java
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2020-04-03 21:40:51 +0300
committerGravatar Vitaly Takmazov2020-04-03 21:40:51 +0300
commit1b93e5b16ee5bc7253f3b06639fb9e9abb46acd0 (patch)
tree6c9606b5ce3cdf3740802c91f889c6b66925cf1d /src/main/java/com/juick/server/www/controllers/Help.java
parentaf1970a767b96893c6f46edb6632ec9abf6b3933 (diff)
Extract sape code into ControllerAdvice
Diffstat (limited to 'src/main/java/com/juick/server/www/controllers/Help.java')
-rw-r--r--src/main/java/com/juick/server/www/controllers/Help.java95
1 files changed, 0 insertions, 95 deletions
diff --git a/src/main/java/com/juick/server/www/controllers/Help.java b/src/main/java/com/juick/server/www/controllers/Help.java
deleted file mode 100644
index 8bb9aecd..00000000
--- a/src/main/java/com/juick/server/www/controllers/Help.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright (C) 2008-2019, Juick
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package com.juick.server.www.controllers;
-
-import com.juick.model.User;
-import com.juick.server.util.HttpNotFoundException;
-import com.juick.server.www.HelpService;
-import com.juick.server.www.WebApp;
-import com.juick.service.MessagesService;
-import com.juick.service.security.annotation.Visitor;
-import org.commonmark.parser.Parser;
-import org.commonmark.renderer.html.HtmlRenderer;
-import org.springframework.stereotype.Controller;
-import org.springframework.ui.Model;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-
-import javax.inject.Inject;
-import java.util.Locale;
-import java.util.Objects;
-
-/**
- * Created by aalexeev on 11/21/16.
- */
-@Controller
-public class Help {
- @Inject
- private HelpService helpService;
- @Inject
- private MessagesService messagesService;
- @Inject
- private Parser cmParser;
- @Inject
- private HtmlRenderer helpRenderer;
- @Inject
- private WebApp webApp;
-
- @GetMapping({"/help/", "/help", "/help/{langOrPage}", "/help/{lang}/{page}"})
- public String showHelp(
- @Visitor User visitor,
- Locale locale,
- @PathVariable(required = false, name = "lang") String lang,
- @PathVariable(required = false, name = "page") String page,
- @PathVariable(required = false, name = "langOrPage") String langOrPage,
- Model model) {
- visitor.setAvatar(webApp.getAvatarWebPath(visitor));
- String navigation = null;
-
- if (langOrPage != null) {
- if (helpService.canBeLang(langOrPage)) {
- navigation = helpService.getHelp("navigation", langOrPage);
- if (navigation != null)
- lang = langOrPage;
- }
-
- if (navigation == null && helpService.canBePage(langOrPage))
- page = langOrPage;
- }
-
- if (lang == null) {
- lang = locale.getLanguage();
- }
-
- String content = helpService.getHelp(page, lang);
- if (content == null && !Objects.equals("tos", page))
- content = helpService.getHelp("tos", lang);
-
- if (navigation == null)
- navigation = helpService.getHelp("navigation", lang);
-
- if (content == null || navigation == null)
- throw new HttpNotFoundException();
-
- model.addAttribute("navigation", helpRenderer.render(cmParser.parse(navigation)));
- model.addAttribute("content", helpRenderer.render(cmParser.parse(content)));
- model.addAttribute("visitor", visitor);
-
- return "views/help";
- }
-}