Fixed probable community board post bypass exploit.
This commit is contained in:
parent
114f0d8727
commit
f613b98386
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -19,8 +19,9 @@ package org.l2jmobius.gameserver.communitybbs.BB;
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Collection;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
@ -33,18 +34,100 @@ public class Post
|
||||
{
|
||||
private static final Logger LOGGER = Logger.getLogger(Post.class.getName());
|
||||
|
||||
public class CPost
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final List<CPost> _post;
|
||||
private final Collection<CPost> _post;
|
||||
|
||||
/**
|
||||
* @param postOwner
|
||||
@ -56,43 +139,42 @@ public class Post
|
||||
*/
|
||||
public Post(String postOwner, int postOwnerId, long date, int tid, int postForumId, String txt)
|
||||
{
|
||||
_post = new ArrayList<>();
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
|
||||
public void insertindb(CPost cp)
|
||||
private void insertindb(CPost cp)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
final PreparedStatement statement = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)");
|
||||
statement.setInt(1, cp.postId);
|
||||
statement.setString(2, cp.postOwner);
|
||||
statement.setInt(3, cp.postOwnerId);
|
||||
statement.setLong(4, cp.postDate);
|
||||
statement.setInt(5, cp.postTopicId);
|
||||
statement.setInt(6, cp.postForumId);
|
||||
statement.setString(7, cp.postTxt);
|
||||
statement.execute();
|
||||
statement.close();
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.warning("Error while saving new Post to db " + e);
|
||||
LOGGER.log(Level.WARNING, "Error while saving new Post to db " + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
|
||||
public Post(Topic t)
|
||||
{
|
||||
_post = new ArrayList<>();
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
load(t);
|
||||
}
|
||||
|
||||
@ -112,65 +194,63 @@ public class Post
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("DELETE FROM posts WHERE post_forum_id=? AND post_topic_id=?"))
|
||||
{
|
||||
final PreparedStatement statement = con.prepareStatement("DELETE FROM posts WHERE post_forum_id=? AND post_topic_id=?");
|
||||
statement.setInt(1, t.getForumID());
|
||||
statement.setInt(2, t.getID());
|
||||
statement.execute();
|
||||
statement.close();
|
||||
ps.setInt(1, t.getForumID());
|
||||
ps.setInt(2, t.getID());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.warning("Error while deleting post: " + e.getMessage());
|
||||
LOGGER.log(Level.WARNING, "Error while deleting post: " + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("SELECT * FROM posts WHERE post_forum_id=? AND post_topic_id=? ORDER BY post_id ASC"))
|
||||
{
|
||||
final PreparedStatement statement = con.prepareStatement("SELECT * FROM posts WHERE post_forum_id=? AND post_topic_id=? ORDER BY post_id ASC");
|
||||
statement.setInt(1, t.getForumID());
|
||||
statement.setInt(2, t.getID());
|
||||
final ResultSet result = statement.executeQuery();
|
||||
while (result.next())
|
||||
ps.setInt(1, t.getForumID());
|
||||
ps.setInt(2, t.getID());
|
||||
try (ResultSet rs = ps.executeQuery())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = result.getInt("post_id");
|
||||
cp.postOwner = result.getString("post_owner_name");
|
||||
cp.postOwnerId = result.getInt("post_ownerid");
|
||||
cp.postDate = result.getLong("post_date");
|
||||
cp.postTopicId = result.getInt("post_topic_id");
|
||||
cp.postForumId = result.getInt("post_forum_id");
|
||||
cp.postTxt = result.getString("post_txt");
|
||||
_post.add(cp);
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
result.close();
|
||||
statement.close();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.warning("Data error on Post " + t.getForumID() + "/" + t.getID() + " : " + e);
|
||||
LOGGER.log(Level.WARNING, "Data error on Post " + t.getForumID() + "/" + t.getID() + " : " + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
final PreparedStatement statement = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?");
|
||||
statement.setString(1, cp.postTxt);
|
||||
statement.setInt(2, cp.postId);
|
||||
statement.setInt(3, cp.postTopicId);
|
||||
statement.setInt(4, cp.postForumId);
|
||||
statement.execute();
|
||||
statement.close();
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.warning("Error while saving new Post to db " + e);
|
||||
LOGGER.log(Level.WARNING, "Error while saving new Post to db " + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
}
|
@ -119,7 +119,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
return;
|
||||
}
|
||||
|
||||
post.getCPost(idp).postTxt = ar4;
|
||||
post.getCPost(idp).setPostText(ar4);
|
||||
post.updateText(idp);
|
||||
parseCmd("_bbsposts;read;" + forum.getID() + ";" + topic.getID(), player);
|
||||
}
|
||||
@ -191,7 +191,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -199,11 +199,11 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getPostByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
mes = mes.replace("\n", "<br1>");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
separateAndSend(html, player);
|
||||
}
|
||||
|
||||
|
@ -19,8 +19,9 @@ package org.l2jmobius.gameserver.communitybbs.BB;
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Collection;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
@ -33,18 +34,100 @@ public class Post
|
||||
{
|
||||
private static final Logger LOGGER = Logger.getLogger(Post.class.getName());
|
||||
|
||||
public class CPost
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final List<CPost> _post;
|
||||
private final Collection<CPost> _post;
|
||||
|
||||
/**
|
||||
* @param postOwner
|
||||
@ -56,43 +139,42 @@ public class Post
|
||||
*/
|
||||
public Post(String postOwner, int postOwnerId, long date, int tid, int postForumId, String txt)
|
||||
{
|
||||
_post = new ArrayList<>();
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
|
||||
public void insertindb(CPost cp)
|
||||
private void insertindb(CPost cp)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
final PreparedStatement statement = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)");
|
||||
statement.setInt(1, cp.postId);
|
||||
statement.setString(2, cp.postOwner);
|
||||
statement.setInt(3, cp.postOwnerId);
|
||||
statement.setLong(4, cp.postDate);
|
||||
statement.setInt(5, cp.postTopicId);
|
||||
statement.setInt(6, cp.postForumId);
|
||||
statement.setString(7, cp.postTxt);
|
||||
statement.execute();
|
||||
statement.close();
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.warning("Error while saving new Post to db " + e);
|
||||
LOGGER.log(Level.WARNING, "Error while saving new Post to db " + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
|
||||
public Post(Topic t)
|
||||
{
|
||||
_post = new ArrayList<>();
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
load(t);
|
||||
}
|
||||
|
||||
@ -112,65 +194,63 @@ public class Post
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("DELETE FROM posts WHERE post_forum_id=? AND post_topic_id=?"))
|
||||
{
|
||||
final PreparedStatement statement = con.prepareStatement("DELETE FROM posts WHERE post_forum_id=? AND post_topic_id=?");
|
||||
statement.setInt(1, t.getForumID());
|
||||
statement.setInt(2, t.getID());
|
||||
statement.execute();
|
||||
statement.close();
|
||||
ps.setInt(1, t.getForumID());
|
||||
ps.setInt(2, t.getID());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.warning("Error while deleting post: " + e.getMessage());
|
||||
LOGGER.log(Level.WARNING, "Error while deleting post: " + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("SELECT * FROM posts WHERE post_forum_id=? AND post_topic_id=? ORDER BY post_id ASC"))
|
||||
{
|
||||
final PreparedStatement statement = con.prepareStatement("SELECT * FROM posts WHERE post_forum_id=? AND post_topic_id=? ORDER BY post_id ASC");
|
||||
statement.setInt(1, t.getForumID());
|
||||
statement.setInt(2, t.getID());
|
||||
final ResultSet result = statement.executeQuery();
|
||||
while (result.next())
|
||||
ps.setInt(1, t.getForumID());
|
||||
ps.setInt(2, t.getID());
|
||||
try (ResultSet rs = ps.executeQuery())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = result.getInt("post_id");
|
||||
cp.postOwner = result.getString("post_owner_name");
|
||||
cp.postOwnerId = result.getInt("post_ownerid");
|
||||
cp.postDate = result.getLong("post_date");
|
||||
cp.postTopicId = result.getInt("post_topic_id");
|
||||
cp.postForumId = result.getInt("post_forum_id");
|
||||
cp.postTxt = result.getString("post_txt");
|
||||
_post.add(cp);
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
result.close();
|
||||
statement.close();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.warning("Data error on Post " + t.getForumID() + "/" + t.getID() + " : " + e);
|
||||
LOGGER.log(Level.WARNING, "Data error on Post " + t.getForumID() + "/" + t.getID() + " : " + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection())
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
final PreparedStatement statement = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?");
|
||||
statement.setString(1, cp.postTxt);
|
||||
statement.setInt(2, cp.postId);
|
||||
statement.setInt(3, cp.postTopicId);
|
||||
statement.setInt(4, cp.postForumId);
|
||||
statement.execute();
|
||||
statement.close();
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
LOGGER.warning("Error while saving new Post to db " + e);
|
||||
LOGGER.log(Level.WARNING, "Error while saving new Post to db " + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
}
|
@ -119,7 +119,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
return;
|
||||
}
|
||||
|
||||
post.getCPost(idp).postTxt = ar4;
|
||||
post.getCPost(idp).setPostText(ar4);
|
||||
post.updateText(idp);
|
||||
parseCmd("_bbsposts;read;" + forum.getID() + ";" + topic.getID(), player);
|
||||
}
|
||||
@ -191,7 +191,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -199,11 +199,11 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getPostByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
mes = mes.replace("\n", "<br1>");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
separateAndSend(html, player);
|
||||
}
|
||||
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
@ -36,13 +36,95 @@ public class Post
|
||||
|
||||
public static class CPost
|
||||
{
|
||||
public int postId;
|
||||
public String postOwner;
|
||||
public int postOwnerId;
|
||||
public long postDate;
|
||||
public int postTopicId;
|
||||
public int postForumId;
|
||||
public String postTxt;
|
||||
private int _postId;
|
||||
private String _postOwner;
|
||||
private int _postOwnerId;
|
||||
private long _postDate;
|
||||
private int _postTopicId;
|
||||
private int _postForumId;
|
||||
private String _postText;
|
||||
|
||||
public void setPostId(int postId)
|
||||
{
|
||||
_postId = postId;
|
||||
}
|
||||
|
||||
public int getPostId()
|
||||
{
|
||||
return _postId;
|
||||
}
|
||||
|
||||
public void setPostOwner(String postOwner)
|
||||
{
|
||||
_postOwner = postOwner;
|
||||
}
|
||||
|
||||
public String getPostOwner()
|
||||
{
|
||||
return _postOwner;
|
||||
}
|
||||
|
||||
public void setPostOwnerId(int postOwnerId)
|
||||
{
|
||||
_postOwnerId = postOwnerId;
|
||||
}
|
||||
|
||||
public int getPostOwnerId()
|
||||
{
|
||||
return _postOwnerId;
|
||||
}
|
||||
|
||||
public void setPostDate(long postDate)
|
||||
{
|
||||
_postDate = postDate;
|
||||
}
|
||||
|
||||
public long getPostDate()
|
||||
{
|
||||
return _postDate;
|
||||
}
|
||||
|
||||
public void setPostTopicId(int postTopicId)
|
||||
{
|
||||
_postTopicId = postTopicId;
|
||||
}
|
||||
|
||||
public int getPostTopicId()
|
||||
{
|
||||
return _postTopicId;
|
||||
}
|
||||
|
||||
public void setPostForumId(int postForumId)
|
||||
{
|
||||
_postForumId = postForumId;
|
||||
}
|
||||
|
||||
public int getPostForumId()
|
||||
{
|
||||
return _postForumId;
|
||||
}
|
||||
|
||||
public void setPostText(String postText)
|
||||
{
|
||||
_postText = postText;
|
||||
}
|
||||
|
||||
public String getPostText()
|
||||
{
|
||||
if (_postText == null)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
// Bypass exploit check.
|
||||
final String text = _postText.toLowerCase();
|
||||
if (text.contains("action") && text.contains("bypass"))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
return _postText;
|
||||
}
|
||||
}
|
||||
|
||||
private final Collection<CPost> _post;
|
||||
@ -59,13 +141,13 @@ public class Post
|
||||
{
|
||||
_post = ConcurrentHashMap.newKeySet();
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = 0;
|
||||
cp.postOwner = postOwner;
|
||||
cp.postOwnerId = postOwnerId;
|
||||
cp.postDate = date;
|
||||
cp.postTopicId = tid;
|
||||
cp.postForumId = postForumId;
|
||||
cp.postTxt = txt;
|
||||
cp.setPostId(0);
|
||||
cp.setPostOwner(postOwner);
|
||||
cp.setPostOwnerId(postOwnerId);
|
||||
cp.setPostDate(date);
|
||||
cp.setPostTopicId(tid);
|
||||
cp.setPostForumId(postForumId);
|
||||
cp.setPostText(txt);
|
||||
_post.add(cp);
|
||||
insertindb(cp);
|
||||
}
|
||||
@ -75,13 +157,13 @@ public class Post
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("INSERT INTO posts (post_id,post_owner_name,post_ownerid,post_date,post_topic_id,post_forum_id,post_txt) values (?,?,?,?,?,?,?)"))
|
||||
{
|
||||
ps.setInt(1, cp.postId);
|
||||
ps.setString(2, cp.postOwner);
|
||||
ps.setInt(3, cp.postOwnerId);
|
||||
ps.setLong(4, cp.postDate);
|
||||
ps.setInt(5, cp.postTopicId);
|
||||
ps.setInt(6, cp.postForumId);
|
||||
ps.setString(7, cp.postTxt);
|
||||
ps.setInt(1, cp.getPostId());
|
||||
ps.setString(2, cp.getPostOwner());
|
||||
ps.setInt(3, cp.getPostOwnerId());
|
||||
ps.setLong(4, cp.getPostDate());
|
||||
ps.setInt(5, cp.getPostTopicId());
|
||||
ps.setInt(6, cp.getPostForumId());
|
||||
ps.setString(7, cp.getPostText());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -109,7 +191,7 @@ public class Post
|
||||
return null;
|
||||
}
|
||||
|
||||
public void deleteme(Topic t)
|
||||
public void deleteMe(Topic t)
|
||||
{
|
||||
PostBBSManager.getInstance().delPostByTopic(t);
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -125,9 +207,6 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param t
|
||||
*/
|
||||
private void load(Topic t)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
@ -140,13 +219,13 @@ public class Post
|
||||
while (rs.next())
|
||||
{
|
||||
final CPost cp = new CPost();
|
||||
cp.postId = rs.getInt("post_id");
|
||||
cp.postOwner = rs.getString("post_owner_name");
|
||||
cp.postOwnerId = rs.getInt("post_ownerid");
|
||||
cp.postDate = rs.getLong("post_date");
|
||||
cp.postTopicId = rs.getInt("post_topic_id");
|
||||
cp.postForumId = rs.getInt("post_forum_id");
|
||||
cp.postTxt = rs.getString("post_txt");
|
||||
cp.setPostId(rs.getInt("post_id"));
|
||||
cp.setPostOwner(rs.getString("post_owner_name"));
|
||||
cp.setPostOwnerId(rs.getInt("post_ownerid"));
|
||||
cp.setPostDate(rs.getLong("post_date"));
|
||||
cp.setPostTopicId(rs.getInt("post_topic_id"));
|
||||
cp.setPostForumId(rs.getInt("post_forum_id"));
|
||||
cp.setPostText(rs.getString("post_txt"));
|
||||
_post.add(cp);
|
||||
}
|
||||
}
|
||||
@ -157,19 +236,16 @@ public class Post
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param i
|
||||
*/
|
||||
public void updatetxt(int i)
|
||||
public void updateText(int i)
|
||||
{
|
||||
try (Connection con = DatabaseFactory.getConnection();
|
||||
PreparedStatement ps = con.prepareStatement("UPDATE posts SET post_txt=? WHERE post_id=? AND post_topic_id=? AND post_forum_id=?"))
|
||||
{
|
||||
final CPost cp = getCPost(i);
|
||||
ps.setString(1, cp.postTxt);
|
||||
ps.setInt(2, cp.postId);
|
||||
ps.setInt(3, cp.postTopicId);
|
||||
ps.setInt(4, cp.postForumId);
|
||||
ps.setString(1, cp.getPostText());
|
||||
ps.setInt(2, cp.getPostId());
|
||||
ps.setInt(3, cp.getPostTopicId());
|
||||
ps.setInt(4, cp.getPostForumId());
|
||||
ps.execute();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@ -120,7 +120,7 @@ public class PostBBSManager extends BaseBBSManager
|
||||
{
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">" + forum.getName() + " Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0><tr><td width=610><img src=\"sek.cbui355\" width=\"610\" height=\"1\"><br1><img src=\"sek.cbui355\" width=\"610\" height=\"1\"></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=20></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29>&$413;</td><td FIXWIDTH=540>" + topic.getName() + "</td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29 valign=top>&$427;</td><td align=center FIXWIDTH=540><MultiEdit var =\"Content\" width=535 height=313></td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr></table><table fixwidth=610 border=0 cellspacing=0 cellpadding=0><tr><td><img src=\"l2ui.mini_logo\" width=5 height=10></td></tr><tr><td><img src=\"l2ui.mini_logo\" width=5 height=1></td><td align=center FIXWIDTH=60 height=29> </td><td align=center FIXWIDTH=70><button value=\"&$140;\" action=\"Write Post " + forum.getID() + ";" + topic.getID() + ";0 _ Content Content Content\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td><td align=center FIXWIDTH=70><button value = \"&$141;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"> </td><td align=center FIXWIDTH=400> </td><td><img src=\"l2ui.mini_logo\" width=5 height=1></td></tr></table></center></body></html>";
|
||||
send1001(html, player);
|
||||
send1002(player, p.getCPost(0).postTxt, topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
send1002(player, p.getCPost(0).getPostText(), topic.getName(), DateFormat.getInstance().format(new Date(topic.getDate())));
|
||||
}
|
||||
|
||||
private void showMemoPost(Topic topic, PlayerInstance player, Forum forum)
|
||||
@ -128,10 +128,10 @@ public class PostBBSManager extends BaseBBSManager
|
||||
final Post p = getGPosttByTopic(topic);
|
||||
final Locale locale = Locale.getDefault();
|
||||
final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
|
||||
String mes = p.getCPost(0).postTxt.replace(">", ">");
|
||||
String mes = p.getCPost(0).getPostText().replace(">", ">");
|
||||
mes = mes.replace("<", "<");
|
||||
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).postDate) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
final String html = "<html><body><br><br><table border=0 width=610><tr><td width=10></td><td width=600 align=left><a action=\"bypass _bbshome\">HOME</a> > <a action=\"bypass _bbsmemo\">Memo Form</a></td></tr></table><img src=\"L2UI.squareblank\" width=\"1\" height=\"10\"><center><table border=0 cellspacing=0 cellpadding=0 bgcolor=333333><tr><td height=10></td></tr><tr><td fixWIDTH=55 align=right valign=top>&$413; : </td><td fixWIDTH=380 valign=top>" + topic.getName() + "</td><td fixwidth=5></td><td fixwidth=50></td><td fixWIDTH=120></td></tr><tr><td height=10></td></tr><tr><td align=right><font color=\"AAAAAA\" >&$417; : </font></td><td><font color=\"AAAAAA\">" + topic.getOwnerName() + "</font></td><td></td><td><font color=\"AAAAAA\">&$418; :</font></td><td><font color=\"AAAAAA\">" + dateFormat.format(p.getCPost(0).getPostDate()) + "</font></td></tr><tr><td height=10></td></tr></table><br><table border=0 cellspacing=0 cellpadding=0><tr><td fixwidth=5></td><td FIXWIDTH=600 align=left>" + mes + "</td><td fixqqwidth=5></td></tr></table><br><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><img src=\"L2UI.squaregray\" width=\"610\" height=\"1\"><img src=\"L2UI.squareblank\" width=\"1\" height=\"5\"><table border=0 cellspacing=0 cellpadding=0 FIXWIDTH=610><tr><td width=50><button value=\"&$422;\" action=\"bypass _bbsmemo\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\"></td><td width=560 align=right><table border=0 cellspacing=0><tr><td FIXWIDTH=300></td><td><button value = \"&$424;\" action=\"bypass _bbsposts;edit;" + forum.getID() + ";" + topic.getID() + ";0\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$425;\" action=\"bypass _bbstopics;del;" + forum.getID() + ";" + topic.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> <td><button value = \"&$421;\" action=\"bypass _bbstopics;crea;" + forum.getID() + "\" back=\"l2ui_ch3.smallbutton2_down\" width=65 height=20 fore=\"l2ui_ch3.smallbutton2\" ></td> </tr></table></td></tr></table><br><br><br></center></body></html>";
|
||||
CommunityBoardHandler.separateAndSend(html, player);
|
||||
}
|
||||
|
||||
@ -165,8 +165,8 @@ public class PostBBSManager extends BaseBBSManager
|
||||
}
|
||||
else
|
||||
{
|
||||
p.getCPost(idp).postTxt = ar4;
|
||||
p.updatetxt(idp);
|
||||
p.getCPost(idp).setPostText(ar4);
|
||||
p.updateText(idp);
|
||||
parsecmd("_bbsposts;read;" + f.getID() + ";" + t.getID(), player);
|
||||
}
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
@ -178,7 +178,7 @@ public class TopicBBSManager extends BaseBBSManager
|
||||
final Post p = PostBBSManager.getInstance().getGPosttByTopic(t);
|
||||
if (p != null)
|
||||
{
|
||||
p.deleteme(t);
|
||||
p.deleteMe(t);
|
||||
}
|
||||
t.deleteme(f);
|
||||
parsecmd("_bbsmemo", player);
|
||||
|
Loading…
Reference in New Issue
Block a user