diff options
author | Ugnich Anton | 2013-01-03 17:24:54 +0700 |
---|---|---|
committer | Ugnich Anton | 2013-01-03 17:24:54 +0700 |
commit | 881bc336c1cef93d08cd1f14e37f3a3feeb07e58 (patch) | |
tree | fcd3ea5ff881a1f59e4d42fd57dee7003b5bcdc1 | |
parent | 84e5ac3a172e15f11b04203cf9e93c9d5c8174ed (diff) |
many bugfixes
message number js autoselection
privacy fix
-rw-r--r-- | src/java/com/juick/http/www/Blogs.java | 11 | ||||
-rw-r--r-- | src/java/com/juick/http/www/Help.java | 2 | ||||
-rw-r--r-- | src/java/com/juick/http/www/Login.java | 4 | ||||
-rw-r--r-- | src/java/com/juick/http/www/NewMessage.java | 2 | ||||
-rw-r--r-- | src/java/com/juick/http/www/PageTemplates.java | 110 | ||||
-rw-r--r-- | src/java/com/juick/http/www/User.java | 10 | ||||
-rw-r--r-- | src/java/com/juick/http/www/UserThread.java | 6 | ||||
-rw-r--r-- | web/scripts3.js | 19 | ||||
-rw-r--r-- | web/style3.css | 7 |
9 files changed, 89 insertions, 82 deletions
diff --git a/src/java/com/juick/http/www/Blogs.java b/src/java/com/juick/http/www/Blogs.java index 44c734d2..4af75cd3 100644 --- a/src/java/com/juick/http/www/Blogs.java +++ b/src/java/com/juick/http/www/Blogs.java @@ -92,11 +92,12 @@ public class Blogs { } com.juick.Place place = null; + int visitor_uid = visitor != null ? visitor.UID : 0; if (paramShow == null) { if (paramTag > 0) { title = "*" + Utils.encodeHTML(paramTagStr); - mids = MessagesQueries.getTag(sql, paramTag, paramBefore); + mids = MessagesQueries.getTag(sql, paramTag, visitor_uid, paramBefore); } else if (paramSearch != null) { title = rb.getString("Search") + ": " + Utils.encodeHTML(paramSearch); mids = MessagesQueries.getSearch(sql, sqlSearch, Utils.encodeSphinx(paramSearch), paramBefore); @@ -109,14 +110,14 @@ public class Blogs { place = com.juick.server.PlacesQueries.getPlace(sql, place_id); if (place != null) { title = place.name; - mids = MessagesQueries.getPlace(sql, place_id, paramBefore); + mids = MessagesQueries.getPlace(sql, place_id, visitor_uid, paramBefore); } else { response.sendError(404); return; } } else { title = rb.getString("Last messages"); - mids = MessagesQueries.getAll(sql, paramBefore); + mids = MessagesQueries.getAll(sql, visitor_uid, paramBefore); } } else if (paramShow.equals("my")) { if (visitor != null) { @@ -155,7 +156,7 @@ public class Blogs { mids = MessagesQueries.getPopular(sql, paramBefore); } else if (paramShow.equals("photos")) { title = rb.getString("With photos"); - mids = MessagesQueries.getPhotos(sql, paramBefore); + mids = MessagesQueries.getPhotos(sql, visitor_uid, paramBefore); } else { response.sendError(404); return; @@ -222,7 +223,7 @@ public class Blogs { out.println("</div>"); // topwrapper PageTemplates.pageDialogTemplate(out, locale); - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, true); } finally { out.close(); } diff --git a/src/java/com/juick/http/www/Help.java b/src/java/com/juick/http/www/Help.java index e780e196..3dfe1f80 100644 --- a/src/java/com/juick/http/www/Help.java +++ b/src/java/com/juick/http/www/Help.java @@ -92,7 +92,7 @@ public class Help { out.println("</div>"); - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, false); } finally { out.close(); } diff --git a/src/java/com/juick/http/www/Login.java b/src/java/com/juick/http/www/Login.java index 326206da..e2585909 100644 --- a/src/java/com/juick/http/www/Login.java +++ b/src/java/com/juick/http/www/Login.java @@ -46,6 +46,7 @@ public class Login { PageTemplates.pageHead(out, rb.getString("Login"), ""); PageTemplates.pageNavigation(out, locale, visitor, null); + out.println("<div id=\"topwrapper\">"); out.println("<div id=\"wrapper\">"); out.println("<div id=\"content\">"); out.println("<form action=\"/login\" method=\"post\">"); @@ -55,8 +56,9 @@ public class Login { out.println("</form>"); out.println("</div>"); out.println("</div>"); + out.println("</div>"); // topwrapper - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, false); } finally { out.close(); } diff --git a/src/java/com/juick/http/www/NewMessage.java b/src/java/com/juick/http/www/NewMessage.java index b66b87d1..369e9de3 100644 --- a/src/java/com/juick/http/www/NewMessage.java +++ b/src/java/com/juick/http/www/NewMessage.java @@ -76,7 +76,7 @@ public class NewMessage { out.println("</div>"); out.println("</div>"); - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, false); } finally { out.close(); } diff --git a/src/java/com/juick/http/www/PageTemplates.java b/src/java/com/juick/http/www/PageTemplates.java index 67f036fc..080752d1 100644 --- a/src/java/com/juick/http/www/PageTemplates.java +++ b/src/java/com/juick/http/www/PageTemplates.java @@ -23,9 +23,6 @@ import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -55,11 +52,11 @@ public class PageTemplates { out.println("<html>"); out.println("<head>"); out.println(" <title>" + title + "</title>"); - out.println(" <link rel=\"stylesheet\" href=\"//static.juick.com/style3.2013010101.css\"/>"); + out.println(" <link rel=\"stylesheet\" href=\"//static.juick.com/style3.2013010300.css\"/>"); out.println(" <link rel=\"icon\" type=\"image/png\" href=\"//static.juick.com/favicon.png\"/>"); out.println(" <script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js\" defer=\"defer\"></script>"); out.println(" <script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js\" defer=\"defer\" async=\"async\"></script>"); - out.println(" <script type=\"text/javascript\" src=\"//static.juick.com/scripts3.2013010100.js\" defer=\"defer\"></script>"); + out.println(" <script type=\"text/javascript\" src=\"//static.juick.com/scripts3.2013010300.js\" defer=\"defer\"></script>"); if (headers != null) { out.println(headers); } @@ -85,69 +82,54 @@ public class PageTemplates { out.println(" <li class=\"right\"><a href=\"/" + user.UName + "\" class=\"wide\"><img src=\"//i.juick.com/as/" + user.UID + ".png\" alt=\"" + user.UName + "\"/><label>" + user.UName + "</label></a></li>"); out.println(" <li class=\"right\"><a href=\"/post\" class=\"wide\"><div class=\"head-ico\" id=\"hi-post\"></div><label>" + rb.getString("Post") + "</label></a></li>"); } else { - out.println(" <li class=\"right\"><a href=\"/login\" class=\"wide\">" + rb.getString("Login") + "</a></li>"); + out.println(" <li class=\"right\"><a href=\"/login\" class=\"wide\" rel=\"nofollow\">" + rb.getString("Login") + "</a></li>"); } out.println("</ul>"); out.println("</div>"); } /* - public static void pageFilters(PrintWriter out, Locale loc, com.juick.User user) { - ResourceBundle rb = ResourceBundle.getBundle("Global", loc); + public static void pageUserTitle(PrintWriter out, Connection sql, Locale loc, com.juick.User user, com.juick.User visitor) { + ResourceBundle rb = ResourceBundle.getBundle("User", loc); - out.println("<div id=\"filters\">"); - out.println("<ul>"); - out.println(" <li><a href=\"#\">Messages</a></li>"); - out.println(" <li><a href=\"#\">Photos</a></li>"); - out.println(" <li><a href=\"#\">Recommendations</a></li>"); - out.println(" <li><a href=\"#\">Private</a></li>"); - out.println(" <li><a href=\"#\">Tags</a></li>"); - out.println(" <li><a href=\"#\">Users</a></li>"); - out.println("</ul>"); + // Full name and description + String fullname = null; + String description = null; + PreparedStatement stmt = null; + ResultSet rs = null; + try { + stmt = sql.prepareStatement("SELECT fullname,descr FROM usersinfo WHERE user_id=?"); + stmt.setInt(1, user.UID); + rs = stmt.executeQuery(); + if (rs.first()) { + fullname = rs.getString(1) + " (" + user.UName + ")"; + description = rs.getString(2); + } + } catch (SQLException e) { + System.err.println(e); + } finally { + Utils.finishSQL(rs, stmt); + } + if (fullname == null) { + fullname = user.UName; + } + if (description == null) { + description = ""; + } + + out.println("<div id=\"title\">"); + out.println(" <div id=\"title-av\"><a href=\"/" + user.UName + "/\"><img src=\"//i.juick.com/a/" + user.UID + ".png\" width=\"96\" height=\"96\" alt=\"" + user.UName + "\"/></a></div>"); + out.println(" <div id=\"title-stats\"><ul>"); + out.println(" <li><a href=\"/" + user.UName + "/friends\">" + rb.getString("(Stats) I read") + ": " + UserQueries.getStatsIRead(sql, user.UID) + "</a></li>"); + out.println(" <li><a href=\"/" + user.UName + "/readers\">" + rb.getString("(Stats) My readers") + ": " + UserQueries.getStatsMyReaders(sql, user.UID) + "</a></li>"); + out.println(" <li>" + rb.getString("(Stats) Messages") + ": " + UserQueries.getStatsMessages(sql, user.UID) + "</li>"); + out.println(" <li>" + rb.getString("(Stats) Replies") + ": " + UserQueries.getStatsReplies(sql, user.UID) + "</li>"); + out.println(" </ul></div>"); + out.println(" <div id=\"title-username\"><h1>" + fullname + "</h1><p>" + description + "</p></div>"); out.println("</div>"); + out.println(); } */ - public static void pageUserTitle(PrintWriter out, Connection sql, Locale loc, com.juick.User user, com.juick.User visitor) { - ResourceBundle rb = ResourceBundle.getBundle("User", loc); - - // Full name and description - String fullname = null; - String description = null; - PreparedStatement stmt = null; - ResultSet rs = null; - try { - stmt = sql.prepareStatement("SELECT fullname,descr FROM usersinfo WHERE user_id=?"); - stmt.setInt(1, user.UID); - rs = stmt.executeQuery(); - if (rs.first()) { - fullname = rs.getString(1) + " (" + user.UName + ")"; - description = rs.getString(2); - } - } catch (SQLException e) { - System.err.println(e); - } finally { - Utils.finishSQL(rs, stmt); - } - if (fullname == null) { - fullname = user.UName; - } - if (description == null) { - description = ""; - } - - out.println("<div id=\"title\">"); - out.println(" <div id=\"title-av\"><a href=\"/" + user.UName + "/\"><img src=\"//i.juick.com/a/" + user.UID + ".png\" width=\"96\" height=\"96\" alt=\"" + user.UName + "\"/></a></div>"); - out.println(" <div id=\"title-stats\"><ul>"); - out.println(" <li><a href=\"/" + user.UName + "/friends\">" + rb.getString("(Stats) I read") + ": " + UserQueries.getStatsIRead(sql, user.UID) + "</a></li>"); - out.println(" <li><a href=\"/" + user.UName + "/readers\">" + rb.getString("(Stats) My readers") + ": " + UserQueries.getStatsMyReaders(sql, user.UID) + "</a></li>"); - out.println(" <li>" + rb.getString("(Stats) Messages") + ": " + UserQueries.getStatsMessages(sql, user.UID) + "</li>"); - out.println(" <li>" + rb.getString("(Stats) Replies") + ": " + UserQueries.getStatsReplies(sql, user.UID) + "</li>"); - out.println(" </ul></div>"); - out.println(" <div id=\"title-username\"><h1>" + fullname + "</h1><p>" + description + "</p></div>"); - out.println("</div>"); - out.println(); - } - public static void pageYandexAd(PrintWriter out, int stat_id) { out.println("<div id=\"yandex_ad\"></div>"); out.println("<script type=\"text/javascript\">"); @@ -183,9 +165,9 @@ public class PageTemplates { ResourceBundle rb = ResourceBundle.getBundle("Global", locale); out.println("<div id=\"dialogb\" onclick=\"$('#dialogb').hide();$('#dialogw').hide()\"></div>"); out.println("<div id=\"dialogw\">" + rb.getString("(Dialog) Link to message") + ":"); - out.println("<div id=\"dialogl\"></div>"); + out.println("<div id=\"dialogl\" onclick=\"$(this).selectText()\"></div>"); out.println(rb.getString("(Dialog) Message number") + ":"); - out.println("<div id=\"dialogn\"></div>"); + out.println("<div id=\"dialogn\" onclick=\"$(this).selectText()\"></div>"); out.println(rb.getString("(Dialog) Share") + ":"); out.println("<ul>"); out.println(" <li><a id=\"sharefb\"></a></li>"); @@ -196,12 +178,12 @@ public class PageTemplates { out.println("</div>"); } - public static void pageFooter(HttpServletRequest request, PrintWriter out, Locale loc, com.juick.User visitor) { + public static void pageFooter(HttpServletRequest request, PrintWriter out, Locale loc, com.juick.User visitor, boolean sapeon) { ResourceBundle rb = ResourceBundle.getBundle("Global", loc); out.println("<div id=\"fwrapper\"><div id=\"footer\">"); - out.println(" <div id=\"footer-right\"><a href=\"/help/ru/contacts\">" + rb.getString("Contacts") + "</a> · <a href=\"/help/\">" + rb.getString("Help") + "</a></div>"); - out.print(" <div id=\"footer-left\">juick.com © 2008-2012"); - if (sape != null && (visitor == null || visitor.UID == 1)) { + out.println(" <div id=\"footer-right\"><a href=\"/help/ru/contacts\" rel=\"nofollow\">" + rb.getString("Contacts") + "</a> · <a href=\"/help/\" rel=\"nofollow\">" + rb.getString("Help") + "</a></div>"); + out.print(" <div id=\"footer-left\">juick.com © 2008-2013"); + if (sapeon && sape != null && (visitor == null || visitor.UID == 1)) { String links = sape.getPageLinks(request.getRequestURI(), request.getCookies()).render(); if (links != null && !links.isEmpty()) { out.print("<br/>" + rb.getString("Sponsored by") + ": " + links); diff --git a/src/java/com/juick/http/www/User.java b/src/java/com/juick/http/www/User.java index 0236a352..1d331956 100644 --- a/src/java/com/juick/http/www/User.java +++ b/src/java/com/juick/http/www/User.java @@ -136,7 +136,7 @@ public class User { out.println("</div>"); // topwrapper PageTemplates.pageDialogTemplate(out, locale); - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, true); } finally { out.close(); } @@ -167,7 +167,7 @@ public class User { out.println("</div>"); PageTemplates.pageDialogTemplate(out, locale); - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, false); } finally { out.close(); } @@ -218,7 +218,7 @@ public class User { out.println("</div>"); PageTemplates.pageDialogTemplate(out, locale); - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, false); } finally { out.close(); } @@ -232,7 +232,7 @@ public class User { response.setContentType("text/html; charset=UTF-8"); PrintWriter out = response.getWriter(); try { - PageTemplates.pageHead(out, "@" + user.UName + ": " + rb.getString("(Stats) I read"), null); + PageTemplates.pageHead(out, "@" + user.UName + ": " + rb.getString("(Stats) My readers"), null); PageTemplates.pageNavigation(out, locale, visitor, null); //PageTemplates.pageUserTitle(out, sql, locale, user, visitor); @@ -269,7 +269,7 @@ public class User { out.println("</div>"); PageTemplates.pageDialogTemplate(out, locale); - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, false); } finally { out.close(); } diff --git a/src/java/com/juick/http/www/UserThread.java b/src/java/com/juick/http/www/UserThread.java index 0cb0243c..e0d2a4af 100644 --- a/src/java/com/juick/http/www/UserThread.java +++ b/src/java/com/juick/http/www/UserThread.java @@ -80,7 +80,7 @@ public class UserThread { out.println("</div>"); // topwrapper PageTemplates.pageDialogTemplate(out, locale); - PageTemplates.pageFooter(request, out, locale, visitor); + PageTemplates.pageFooter(request, out, locale, visitor, false); } finally { out.close(); } @@ -293,7 +293,7 @@ public class UserThread { if (msg.AttachmentType.equals("jpg")) { out.println(" <div class=\"msg-media\"><a href=\"//i.juick.com/p/" + msg.MID + "-" + msg.RID + ".jpg\"><img src=\"//i.juick.com/photos-512/" + msg.MID + "-" + msg.RID + ".jpg\" alt=\"\"/></a></div>"); } else { - out.println(" <div class=\"msg-media\"><div id=\"video-" + msg.MID + "-" + msg.RID + "\"><a href=\"//i.juick.com/video/" + msg.MID + "-" + msg.RID + ".mp4\" onclick=\"inlinevideo(" + msg.MID + "-" + msg.RID + "); return false\"><img src=\"//i.juick.com/thumbs/" + msg.MID + "-" + msg.RID + ".jpg\" alt=\"\"/></a></div></div>"); + out.println(" <div class=\"msg-media\"><div id=\"video-" + msg.MID + "-" + msg.RID + "\"><a href=\"//i.juick.com/video/" + msg.MID + "-" + msg.RID + ".mp4\" onclick=\"inlinevideo('" + msg.MID + "-" + msg.RID + "'); return false\"><img src=\"//i.juick.com/thumbs/" + msg.MID + "-" + msg.RID + ".jpg\" alt=\"\"/></a></div></div>"); } } out.println(" <div class=\"msg-avatar\"><a href=\"/" + msg.User.UName + "/\"><img src=\"//i.juick.com/a/" + msg.User.UID + ".png\" alt=\"" + msg.User.UName + "\"/></a></div>"); @@ -332,7 +332,7 @@ public class UserThread { if (msg.AttachmentType.equals("jpg")) { out.println(" <div class=\"msg-media\"><a href=\"//i.juick.com/p/" + msg.MID + "-" + msg.RID + ".jpg\"><img src=\"//i.juick.com/photos-512/" + msg.MID + "-" + msg.RID + ".jpg\" alt=\"\"/></a></div>"); } else { - out.println(" <div class=\"msg-media\"><div id=\"video-" + msg.MID + "-" + msg.RID + "\"><a href=\"//i.juick.com/video/" + msg.MID + "-" + msg.RID + ".mp4\" onclick=\"inlinevideo(" + msg.MID + "-" + msg.RID + "); return false\"><img src=\"//i.juick.com/thumbs/" + msg.MID + "-" + msg.RID + ".jpg\" alt=\"\"/></a></div></div>"); + out.println(" <div class=\"msg-media\"><div id=\"video-" + msg.MID + "-" + msg.RID + "\"><a href=\"//i.juick.com/video/" + msg.MID + "-" + msg.RID + ".mp4\" onclick=\"inlinevideo('" + msg.MID + "-" + msg.RID + "'); return false\"><img src=\"//i.juick.com/thumbs/" + msg.MID + "-" + msg.RID + ".jpg\" alt=\"\"/></a></div></div>"); } } out.println(" <div class=\"msg-avatar\"><a href=\"/" + msg.User.UName + "/\"><img src=\"//i.juick.com/a/" + msg.User.UID + ".png\"></a></div>"); diff --git a/web/scripts3.js b/web/scripts3.js index ca1fafa1..8be4d551 100644 --- a/web/scripts3.js +++ b/web/scripts3.js @@ -96,6 +96,25 @@ function openSocialWindow(url) { if(window.focus) w.focus(); } +/******************************************************************************/ + +jQuery.fn.selectText = function(){ + var doc = document; + var element = this[0]; + console.log(this, element); + if (doc.body.createTextRange) { + var range = document.body.createTextRange(); + range.moveToElementText(element); + range.select(); + } else if (window.getSelection) { + var selection = window.getSelection(); + var range = document.createRange(); + range.selectNodeContents(element); + selection.removeAllRanges(); + selection.addRange(range); + } +}; + /* * jQuery.fn.autoResize 1.14 */ diff --git a/web/style3.css b/web/style3.css index 6f0b42bf..e105081e 100644 --- a/web/style3.css +++ b/web/style3.css @@ -19,6 +19,7 @@ hr { height: 1px; background: #CCC; } #header a { display: block; font-size: 18px; padding: 0 10px; color: #AAA; } #header .wide { padding: 0 20px; } #header img { max-width: 32px; max-height: 32px; vertical-align: middle; margin-right: 4px; } +#header label { cursor: pointer; } .head-ico { width: 32px; height: 32px; background: url(//static.juick.com/head-ico-24.png) no-repeat; display: inline-block; vertical-align: middle; margin-bottom: 2px; } #hi-logo { width: 110px; margin: 0 28px; } @@ -69,7 +70,7 @@ hr { height: 1px; background: #CCC; } .title2 { padding: 10px 20px; margin: 20px 0; background: #DDDDD0; } .title2-right { float: right; line-height: 24px; } -.title2 h2 { font-size: 24px; } +.title2 h2 { font-size: x-large; } .page { text-align: center; padding: 5px; background: #E5E5DD; } @@ -107,7 +108,7 @@ hr { height: 1px; background: #CCC; } /********/ -#footer { clear: both; font-size: small; padding: 10px 0; color: #999; } +#footer { clear: both; font-size: small; padding: 10px; color: #999; } #footer-right { float: right; } /******************************************************************************/ @@ -137,6 +138,8 @@ hr { height: 1px; background: #CCC; } .msg-media { overflow: scroll; } .msg-media,.msg-links,.msg-comment,.msg-comments,.msg-recomms { margin-left: 0px; } + .title2 h2 { font-size: large; } + .fix,.abs { position: static; } #column { clear: both; margin: 0 3%; width: 44%; float: left; } #rcol { float: left; width: 44%; margin: 20px 3% 0 3%; } |