From 2f682b5e3cfc3fc5f961b60129be7bc90e0d6a03 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Wed, 28 Dec 2016 22:38:21 +0300 Subject: juick-www: now on spring-webmvc --- .../src/main/java/com/juick/www/PageTemplates.java | 374 --------------------- 1 file changed, 374 deletions(-) delete mode 100644 juick-www/src/main/java/com/juick/www/PageTemplates.java (limited to 'juick-www/src/main/java/com/juick/www/PageTemplates.java') diff --git a/juick-www/src/main/java/com/juick/www/PageTemplates.java b/juick-www/src/main/java/com/juick/www/PageTemplates.java deleted file mode 100644 index 4a625acc..00000000 --- a/juick-www/src/main/java/com/juick/www/PageTemplates.java +++ /dev/null @@ -1,374 +0,0 @@ -/* - * Juick - * Copyright (C) 2008-2011, Ugnich Anton - * - * 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 . - */ -package com.juick.www; - -import com.juick.Message; -import com.juick.server.MessagesQueries; -import com.juick.server.TagQueries; -import com.juick.server.UserQueries; -import com.juick.server.helpers.TagStats; -import com.juick.util.MessageUtils; -import org.apache.commons.lang3.CharEncoding; -import org.apache.commons.lang3.StringEscapeUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.jdbc.core.JdbcTemplate; -import org.springframework.util.StringUtils; -import ru.sape.Sape; - -import javax.servlet.http.HttpServletRequest; -import java.io.PrintWriter; -import java.io.UnsupportedEncodingException; -import java.net.URLEncoder; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Date; -import java.util.List; -import java.util.stream.Collectors; - -/** - * @author Ugnich Anton - */ -public class PageTemplates { - - private static final Logger logger = LoggerFactory.getLogger(PageTemplates.class); - - public static Sape sape = null; - protected static final SimpleDateFormat sdfSQL = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - private static SimpleDateFormat sdfSimple = new SimpleDateFormat("d MMM"); - private static SimpleDateFormat sdfFull = new SimpleDateFormat("d MMM yyyy"); - private static String tagsHTML = null; - - public static void pageHead(PrintWriter out, com.juick.User visitor, String title, String headers) { - out.println(""); - out.print(""); - out.print(""); - out.println(""); - out.print(""); - out.print(""); - if (headers != null) { - out.print(headers); - } - out.print("" + title + ""); - out.println(""); - out.println(""); - out.println(""); - out.println(""); - out.flush(); - if (visitor.getUid() > 0) { - out.println(""); - } else { - out.println(""); - } - } - - public static void pageNavigation(PrintWriter out, com.juick.User visitor, String search) { - out.println("
"); - out.println(" "); - out.print(" "); - out.print("
"); - out.println("
"); - if (visitor.getUid() > 0) { - out.print(" "); - out.print(" "); - } else { - out.println("

Чтобы добавлять сообщения и комментарии, представьтесь.

"); - } - out.println("
"); - out.println("
"); - } - - public static void pageHomeColumn(PrintWriter out, JdbcTemplate sql, com.juick.User visitor) { - pageHomeColumn(out, sql, visitor, false); - } - - public static void pageHomeColumn(PrintWriter out, JdbcTemplate sql, com.juick.User visitor, boolean showAdv) { - if (tagsHTML == null) { - tagsHTML = PageTemplates.formatPopularTags(sql, 80); - } - - out.println(""); - } - - public static String formatPopularTags(JdbcTemplate sql, int cnt) { - List popularTags = TagQueries.getPopularTags(sql).stream() - .map(t -> "" + StringEscapeUtils.escapeHtml4(t) + "").collect(Collectors.toList()); - return StringUtils.collectionToDelimitedString(popularTags, " "); - } - - public static void pageFooter(HttpServletRequest request, PrintWriter out, com.juick.User visitor, boolean sapeon) { - out.println("
"); - out.println(" "); - out.print("
"); - out.print("Twitter"); - out.print("ВКонтакте"); - out.print("Facebook"); - out.println("
"); - out.print("
juick.com © 2008-2016"); - - String queryString = request.getQueryString(); - String requestURI = request.getRequestURI(); - if (sapeon && sape != null && (visitor.getUid() == 0 || visitor.getUid() == 1) && queryString == null) { - String links = sape.getPageLinks(requestURI, request.getCookies()).render(); - if (links != null && !links.isEmpty()) { - out.print("
Спонсоры: " + links); - } - } - - out.println("
"); - out.println("
"); - - out.println(""); - } - - public static void pageEnd(PrintWriter out) { - out.println(""); - } - - public static String formatTags(List tags) { - String ret = org.apache.commons.lang3.StringUtils.EMPTY; - for (TagStats tag : tags) { - String tagName = StringEscapeUtils.escapeHtml4(tag.getTag().getName()); - try { - ret += ""; - } catch (UnsupportedEncodingException e) { - } - } - - return ret; - } - - public static String formatDate(int minutes, Date fulldate) { - if (minutes < 1) { - return "сейчас"; - } else if (minutes < 60) { - String unit; - int ld = minutes % 10; - if ((minutes < 10 || minutes > 20) && ld == 1) { - unit = "минуту"; - } else if ((minutes < 10 || minutes > 20) && ld > 1 && ld < 5) { - unit = "минуты"; - } else { - unit = "минут"; - } - return minutes + " " + unit + " назад"; - } else if (minutes < 1440) { - int hours = (minutes / 60); - String unit; - int ld = hours % 10; - if ((hours < 10 || hours > 20) && ld == 1) { - unit = "час"; - } else if ((hours < 10 || hours > 20) && ld > 1 && ld < 5) { - unit = "часа"; - } else { - unit = "часов"; - } - return hours + " " + unit + " назад"; - } else if (minutes < 20160) { - int days = (minutes / 1440); - String unit; - int ld = days % 10; - if ((days < 10 || days > 20) && ld == 1) { - unit = "день"; - } else if ((days < 10 || days > 20) && ld > 1 && ld < 5) { - unit = "дня"; - } else { - unit = "дней"; - } - return days + " " + unit + " назад"; - } else { - String ret = sdfFull.format(fulldate); - synchronized (sdfSQL) { - try { - Calendar c = Calendar.getInstance(); - int curyear = c.get(Calendar.YEAR); - c.setTime(fulldate); - if (c.get(Calendar.YEAR) == curyear) { - ret = sdfSimple.format(fulldate); - } else { - ret = sdfFull.format(fulldate); - } - } catch (Exception e) { - logger.error("PARSE EXCEPTION: {}, exception {}", fulldate, e); - } - } - return ret; - } - } - - public static String formatJSLocalTime(Date ts) { - return ""; - } - - public static String formatReplies(int replies) { - int ld = replies % 10; - int lh = replies % 100; - if ((lh < 10 || lh > 20) && ld == 1) { - return replies + " ответ"; - } else if ((lh < 10 || lh > 20) && ld > 1 && ld < 5) { - return replies + " ответа"; - } else { - return replies + " ответов"; - } - } - - public static void printMessages(PrintWriter out, JdbcTemplate sql, com.juick.User user, List mids, com.juick.User visitor, int YandexID, int ad_mid) { - List msgs = MessagesQueries.getMessages(sql, mids); - - for (int i = 0; i < msgs.size(); i++) { - com.juick.Message msg = msgs.get(i); - if (msg.getMid() == ad_mid) { - msgs.remove(i); - msgs.add(0, msg); - break; - } - } - - List blUIDs = new ArrayList(20); - if (visitor != null) { - for (Message msg : msgs) { - blUIDs.add(msg.getUser().getUid()); - } - blUIDs = UserQueries.checkBL(sql, visitor.getUid(), blUIDs); - } - - for (Message msg : msgs) { - - List tags = MessagesQueries.getMessageTags(sql, msg.getMid()); - String tagsStr = formatTags(tags); - if (msg.ReadOnly) { - tagsStr += "readonly"; - } - if (msg.getPrivacy() < 0) { - tagsStr += "friends"; - } - if (msg.getMid() == ad_mid) { - tagsStr += "реклама"; - } - - String txt; - if (msg.getTags().stream().anyMatch(t -> t.getName().equals("code"))) { - txt = MessageUtils.formatMessageCode(msg.getText()); - } else { - txt = MessageUtils.formatMessage(msg.getText()); - } - - out.println("
"); - out.println("
"); - out.println(" @" + msg.getUser().getName() + ":"); - out.println("
\""
"); - out.println(" "); - - out.println("
" + tagsStr + "
"); - out.println("
"); - - if (msg.getAttachmentType() != null) { - String fname = msg.getMid() + "." + msg.getAttachmentType(); - out.println("

\"\"/

"); - } - out.println("

" + txt + "

"); - if (msg.getAttachmentType() != null) { - out.println("
"); - } - out.print(" "); - - out.print(" "); - out.print("
"); - } - } -} -- cgit v1.2.3