aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/juick/http/www/PM.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/juick/http/www/PM.java')
-rw-r--r--src/main/java/com/juick/http/www/PM.java55
1 files changed, 31 insertions, 24 deletions
diff --git a/src/main/java/com/juick/http/www/PM.java b/src/main/java/com/juick/http/www/PM.java
index 1ee0b112..a6dfcec2 100644
--- a/src/main/java/com/juick/http/www/PM.java
+++ b/src/main/java/com/juick/http/www/PM.java
@@ -32,6 +32,7 @@ import java.io.IOException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.List;
+import java.util.logging.Logger;
/**
*
@@ -39,6 +40,8 @@ import java.util.List;
*/
public class PM {
+ private static final Logger logger = Logger.getLogger(PM.class.getName());
+
private static final SimpleDateFormat sdfSQL = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
protected void doGetInbox(JdbcTemplate sql, HttpServletRequest request, HttpServletResponse response, com.juick.User visitor) throws ServletException, IOException {
@@ -194,31 +197,35 @@ public class PM {
}
if (PMQueries.createPM(sql, visitor.getUID(), uid, body)) {
- Message msg = new Message();
- msg.from = new JID("juick", "juick.com", null);
- msg.to = new JID(Integer.toString(uid), "push.juick.com", null);
- JuickMessage jmsg = new JuickMessage();
- jmsg.setUser(UserQueries.getUserByUID(sql, visitor.getUID()));
- jmsg.setText(body);
- msg.childs.add(jmsg);
- xmpp.send(msg);
-
- msg.to.Host = "ws.juick.com";
- xmpp.send(msg);
-
- String jid = UserQueries.getJIDbyUID(sql, uid);
- if (jid != null) {
- Message mm = new Message();
- mm.to = new JID(jid);
- mm.type = Message.Type.chat;
- if (PMQueries.havePMinRoster(sql, visitor.getUID(), jid)) {
- mm.from = new JID(jmsg.getUser().getUName(), "juick.com", "Juick");
- mm.body = body;
- } else {
- mm.from = new JID("juick", "juick.com", "Juick");
- mm.body = "Private message from @" + jmsg.getUser().getUName() + ":\n" + body;
+ if (xmpp != null) {
+ Message msg = new Message();
+ msg.from = new JID("juick", "juick.com", null);
+ msg.to = new JID(Integer.toString(uid), "push.juick.com", null);
+ JuickMessage jmsg = new JuickMessage();
+ jmsg.setUser(UserQueries.getUserByUID(sql, visitor.getUID()));
+ jmsg.setText(body);
+ msg.childs.add(jmsg);
+ xmpp.send(msg);
+
+ msg.to.Host = "ws.juick.com";
+ xmpp.send(msg);
+
+ String jid = UserQueries.getJIDbyUID(sql, uid);
+ if (jid != null) {
+ Message mm = new Message();
+ mm.to = new JID(jid);
+ mm.type = Message.Type.chat;
+ if (PMQueries.havePMinRoster(sql, visitor.getUID(), jid)) {
+ mm.from = new JID(jmsg.getUser().getUName(), "juick.com", "Juick");
+ mm.body = body;
+ } else {
+ mm.from = new JID("juick", "juick.com", "Juick");
+ mm.body = "Private message from @" + jmsg.getUser().getUName() + ":\n" + body;
+ }
+ xmpp.send(mm);
}
- xmpp.send(mm);
+ } else {
+ logger.warning("XMPP is not available");
}
Utils.sendTemporaryRedirect(response, "/pm/sent");