From d9379351e992704c7b93ed0b74d2e1c60e166538 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Thu, 15 Sep 2016 01:51:30 +0300 Subject: juick-www: signup/rss -> pebble --- juick-www/src/main/java/com/juick/www/SignUp.java | 86 +++++++---------------- 1 file changed, 27 insertions(+), 59 deletions(-) (limited to 'juick-www/src/main/java/com/juick/www/SignUp.java') diff --git a/juick-www/src/main/java/com/juick/www/SignUp.java b/juick-www/src/main/java/com/juick/www/SignUp.java index a67d049a..43c82a9a 100644 --- a/juick-www/src/main/java/com/juick/www/SignUp.java +++ b/juick-www/src/main/java/com/juick/www/SignUp.java @@ -18,6 +18,8 @@ package com.juick.www; import com.juick.server.UserQueries; +import com.mitchellbosecke.pebble.error.PebbleException; +import com.mitchellbosecke.pebble.template.PebbleTemplate; import org.apache.commons.lang3.tuple.Pair; import org.springframework.dao.EmptyResultDataAccessException; import org.springframework.jdbc.core.JdbcTemplate; @@ -28,7 +30,9 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * @@ -36,7 +40,7 @@ import java.util.List; */ public class SignUp { - protected void doGet(JdbcTemplate sql, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + protected void doGet(JdbcTemplate sql, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException, PebbleException { com.juick.User visitor = Utils.getVisitorUser(sql, request, response); String type = request.getParameter("type"); @@ -47,14 +51,19 @@ public class SignUp { } String account = null; - if (type.equals("fb")) { - account = getFacebookNameByHash(sql, hash); - } else if (type.equals("vk")) { - account = getVKNameByHash(sql, hash); - } else if (type.equals("xmpp")) { - account = getJIDByHash(sql, hash); - } else if (type.equals("durov")) { - account = getTelegramNameByHash(sql, hash); + switch (type) { + case "fb": + account = getFacebookNameByHash(sql, hash); + break; + case "vk": + account = getVKNameByHash(sql, hash); + break; + case "xmpp": + account = getJIDByHash(sql, hash); + break; + case "durov": + account = getTelegramNameByHash(sql, hash); + break; } if (account == null) { response.sendError(HttpServletResponse.SC_BAD_REQUEST); @@ -63,53 +72,14 @@ public class SignUp { response.setContentType("text/html; charset=UTF-8"); try (PrintWriter out = response.getWriter()) { - PageTemplates.pageHead(out, visitor, "Новый пользователь", null); - PageTemplates.pageNavigation(out, visitor, null); - - out.println("
"); - - out.print("

"); - if (type.charAt(0) == 'f') { - out.print("\"Facebook\"/"); - } else if (type.charAt(0) == 'v') { - out.print("\"VKontakte\"/"); - } else if (type.charAt(0) == 'x') { - out.print("\"XMPP\"/"); - } else if (type.charAt(0) == 'd') { - out.print("\"Telegram\"/"); - } - out.println(account + "

"); - - out.println("

Связать с существующим аккаунтом Juick

"); - out.println("
"); - out.println(""); - out.println(""); - out.println(""); - if (visitor.getUID() > 0) { - out.println(""); - } else { - out.println("

Имя пользователя:

"); - out.println("

Пароль:

"); - out.println("

"); - } - out.println("
"); - - out.println("
"); - - out.println("

Создать новый аккаунт Juick

"); - out.println("
"); - out.println(""); - out.println(""); - out.println(""); - out.println("

Имя пользователя:
(От 2-х до 16-и латинских символов и/или цифр, дефис)

"); - out.println("

Пароль:
(от 6-и до 32-х символов)

"); - out.println("

"); - out.println("
"); - - out.println("
"); - - PageTemplates.pageFooter(request, out, visitor, false); - PageTemplates.pageEnd(out); + PebbleTemplate template = Utils.getEngine().getTemplate("views/signup.html"); + Map context = new HashMap<>(); + context.put("title", "Новый пользователь"); + context.put("visitor", visitor); + context.put("account", account); + context.put("type", type); + context.put("hash", hash); + template.evaluate(out, context); } } @@ -233,9 +203,7 @@ public class SignUp { private String getVKNameByHash(JdbcTemplate sql, String hash) { List> logins = sql.query("SELECT vk_name,vk_link FROM vk WHERE loginhash=?", - (rs, num) -> { - return Pair.of(rs.getString(1), rs.getString(2)); - }, hash); + (rs, num) -> Pair.of(rs.getString(1), rs.getString(2)), hash); if (logins.size() > 0) { return "" + logins.get(0).getLeft() + ""; } -- cgit v1.2.3