* landed code for viewing topics in a conference, and for adding a topic
(first workout of HTML Checker code) * modified the dictionary implementation to use a trie system rather than a set of HashSets, and also started using a new, much smaller dictionary * general bugfixes and cleanup on other items as needed
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
WARRANTY OF ANY KIND, either express or implied. See the License for the specific
|
||||
language governing rights and limitations under the License.
|
||||
|
||||
The Original Code is the Venice Web Community System.
|
||||
The Original Code is the Venice Web Communities System.
|
||||
|
||||
The Initial Developer of the Original Code is Eric J. Bowersox <erbo@silcom.com>,
|
||||
for Silverwrist Design Studios. Portions created by Eric J. Bowersox are
|
||||
@@ -27,7 +27,6 @@
|
||||
%>
|
||||
<% if (rdat.useHTMLComments()) { %><!-- Conference list for SIG #<%= data.getSIGID() %> --><% } %>
|
||||
<% rdat.writeContentHeader(out,"Conference List:",data.getSIGName()); %>
|
||||
<%-- TODO: controls go here for creating new conferences and such --%>
|
||||
<% if (data.getNumConferences()>0) { %>
|
||||
<TABLE BORDER=0 ALIGN=LEFT>
|
||||
<% for (int i=0; i<data.getNumConferences(); i++) { %>
|
||||
@@ -36,7 +35,7 @@
|
||||
<IMG SRC="<%= rdat.getFullImagePath("purple-ball.gif") %>" ALT="*" WIDTH=14 HEIGHT=14 BORDER=0>
|
||||
</TD>
|
||||
<TD ALIGN=LEFT><%= rdat.getStdFontTag(null,2) %>
|
||||
<% String path = "TODO?sig=" + String.valueOf(data.getSIGID()) + "&conf="
|
||||
<% String path = "confdisp?sig=" + String.valueOf(data.getSIGID()) + "&conf="
|
||||
+ String.valueOf(data.getConferenceID(i)); %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(path) %>"><%= StringUtil.encodeHTML(data.getConferenceName(i)) %></A> -
|
||||
Latest activity: <%= rdat.getActivityString(data.getLastUpdateDate(i)) %><BR>
|
||||
|
||||
80
web/format/newtopic.jsp
Normal file
80
web/format/newtopic.jsp
Normal file
@@ -0,0 +1,80 @@
|
||||
<%--
|
||||
The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
(the "License"); you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at <http://www.mozilla.org/MPL/>.
|
||||
|
||||
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT
|
||||
WARRANTY OF ANY KIND, either express or implied. See the License for the specific
|
||||
language governing rights and limitations under the License.
|
||||
|
||||
The Original Code is the Venice Web Communities System.
|
||||
|
||||
The Initial Developer of the Original Code is Eric J. Bowersox <erbo@silcom.com>,
|
||||
for Silverwrist Design Studios. Portions created by Eric J. Bowersox are
|
||||
Copyright (C) 2001 Eric J. Bowersox/Silverwrist Design Studios. All Rights Reserved.
|
||||
|
||||
Contributor(s):
|
||||
--%>
|
||||
<%@ page import = "java.util.*" %>
|
||||
<%@ page import = "com.silverwrist.util.StringUtil" %>
|
||||
<%@ page import = "com.silverwrist.venice.core.*" %>
|
||||
<%@ page import = "com.silverwrist.venice.servlets.Variables" %>
|
||||
<%@ page import = "com.silverwrist.venice.servlets.format.*" %>
|
||||
<%
|
||||
NewTopicForm data = NewTopicForm.retrieve(request);
|
||||
Variables.failIfNull(data);
|
||||
RenderData rdat = RenderConfig.createRenderData(application,request,response);
|
||||
%>
|
||||
<% if (rdat.useHTMLComments()) { %><!-- Topic list for conf #<%= data.getConfID() %> --><% } %>
|
||||
<% rdat.writeContentHeader(out,data.isPreview() ? "Preview New Topic" : "Create New Topic",
|
||||
"in: " + data.getConfName()); %>
|
||||
<% if (data.isPreview()) { %>
|
||||
<%= rdat.getStdFontTag(null,3) %><B>
|
||||
<% if (data.getNumSpellingErrors()==0) { %>
|
||||
Your post did not contain any spelling errors.
|
||||
<% } else if (data.getNumSpellingErrors()==1) { %>
|
||||
There was 1 spelling error in your post.
|
||||
<% } else { %>
|
||||
There were <%= data.getNumSpellingErrors() %> spelling errors in your post.
|
||||
<% } // end if %>
|
||||
</B></FONT>
|
||||
<P><PRE><%= data.getPreviewData() %></PRE><HR>
|
||||
<% } // end if %>
|
||||
|
||||
<FORM METHOD="POST" ACTION="<%= rdat.getEncodedServletPath("confops") %>">
|
||||
<INPUT TYPE="HIDDEN" NAME="sig" VALUE="<%= data.getSIGID() %>">
|
||||
<INPUT TYPE="HIDDEN" NAME="conf" VALUE="<%= data.getConfID() %>">
|
||||
<INPUT TYPE="HIDDEN" NAME="cmd" VALUE="T">
|
||||
<TABLE BORDER=0 CELLPADDING=0>
|
||||
<TR><TD ALIGN=LEFT COLSPAN=2>
|
||||
<%= rdat.getStdFontTag(null,2) %>New topic name:</FONT><BR>
|
||||
<INPUT TYPE="TEXT" NAME="title" SIZE=37 MAXLENGTH=255 VALUE="<%= data.getTopicName() %>">
|
||||
</TD></TR>
|
||||
<TR><TD ALIGN=LEFT COLSPAN=2>
|
||||
<%= rdat.getStdFontTag(null,2) %>Your name/header:</FONT><BR>
|
||||
<INPUT TYPE="TEXT" NAME="pseud" SIZE=37 MAXLENGTH=255 VALUE="<%= data.getPseud() %>">
|
||||
<%= rdat.getStdFontTag(null,2) %><INPUT TYPE="CHECKBOX" NAME="attach"
|
||||
VALUE="Y" <% if (data.getAttachCheck()) { %>CHECKED<% } %> > Attach a file</FONT>
|
||||
</TD></TR>
|
||||
<TR>
|
||||
<TD ALIGN=LEFT><%= rdat.getStdFontTag(null,2) %>Message:</FONT></TD>
|
||||
<TD ALIGN=RIGHT><%= rdat.getStdFontTag(null,2) %>
|
||||
<A HREF="TODO" TARGET="_blank">HTML Guide</A>
|
||||
</FONT></TD>
|
||||
</TR>
|
||||
<TR><TD ALIGN=LEFT COLSPAN=2>
|
||||
<TEXTAREA NAME="pb" WRAP=SOFT ROWS=7 COLS=51><%= data.getPostBoxData() %></TEXTAREA>
|
||||
</TD></TR>
|
||||
<TR><TD ALIGN=CENTER COLSPAN=2>
|
||||
<INPUT TYPE="IMAGE" SRC="<%= rdat.getFullImagePath("bn_preview.gif") %>" ALT="Preview" NAME="preview"
|
||||
WIDTH=80 HEIGHT=24 BORDER=0>
|
||||
|
||||
<INPUT TYPE="IMAGE" SRC="<%= rdat.getFullImagePath("bn_post.gif") %>" ALT="Post" NAME="post"
|
||||
WIDTH=80 HEIGHT=24 BORDER=0>
|
||||
|
||||
<INPUT TYPE="IMAGE" SRC="<%= rdat.getFullImagePath("bn_cancel.gif") %>" ALT="Cancel" NAME="cancel"
|
||||
WIDTH=80 HEIGHT=24 BORDER=0>
|
||||
</TD></TR>
|
||||
</TABLE>
|
||||
</FORM>
|
||||
<% rdat.writeFooter(out); %>
|
||||
180
web/format/topics.jsp
Normal file
180
web/format/topics.jsp
Normal file
@@ -0,0 +1,180 @@
|
||||
<%--
|
||||
The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
(the "License"); you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at <http://www.mozilla.org/MPL/>.
|
||||
|
||||
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT
|
||||
WARRANTY OF ANY KIND, either express or implied. See the License for the specific
|
||||
language governing rights and limitations under the License.
|
||||
|
||||
The Original Code is the Venice Web Communities System.
|
||||
|
||||
The Initial Developer of the Original Code is Eric J. Bowersox <erbo@silcom.com>,
|
||||
for Silverwrist Design Studios. Portions created by Eric J. Bowersox are
|
||||
Copyright (C) 2001 Eric J. Bowersox/Silverwrist Design Studios. All Rights Reserved.
|
||||
|
||||
Contributor(s):
|
||||
--%>
|
||||
<%@ page import = "java.util.*" %>
|
||||
<%@ page import = "com.silverwrist.util.StringUtil" %>
|
||||
<%@ page import = "com.silverwrist.venice.core.*" %>
|
||||
<%@ page import = "com.silverwrist.venice.servlets.Variables" %>
|
||||
<%@ page import = "com.silverwrist.venice.servlets.format.*" %>
|
||||
<%
|
||||
TopicListing data = TopicListing.retrieve(request);
|
||||
Variables.failIfNull(data);
|
||||
RenderData rdat = RenderConfig.createRenderData(application,request,response);
|
||||
String self = "confdisp?sig=" + String.valueOf(data.getSIGID()) + "&conf="
|
||||
+ String.valueOf(data.getConfID());
|
||||
String tmp;
|
||||
%>
|
||||
<% if (rdat.useHTMLComments()) { %><!-- Topic list for conf #<%= data.getConfID() %> --><% } %>
|
||||
<% rdat.writeContentHeader(out,data.getConfName() + " Topics",null); %>
|
||||
<%= rdat.getStdFontTag(null,2) %>
|
||||
<DIV ALIGN="LEFT">
|
||||
<A HREF="<%= rdat.getEncodedServletPath("confops?sig=" + String.valueOf(data.getSIGID())) %>"><IMG
|
||||
SRC="<%= rdat.getFullImagePath("bn_conference_list.gif") %>" ALT="Conference List" WIDTH=80 HEIGHT=24
|
||||
BORDER=0></A>
|
||||
<% if (data.canCreateTopic()) { %>
|
||||
<% tmp = "confops?sig=" + String.valueOf(data.getSIGID()) + "&conf="
|
||||
+ String.valueOf(data.getConfID()) + "&cmd=T"; %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(tmp) %>"><IMG SRC="<%= rdat.getFullImagePath("bn_add_topic.gif") %>"
|
||||
ALT="Add Topic" WIDTH=80 HEIGHT=24 BORDER=0></A>
|
||||
<% } // end if %>
|
||||
<% if (data.canDoReadNew()) { %>
|
||||
<A HREF="TODO"><IMG SRC="<%= rdat.getFullImagePath("bn_read_new.gif") %>"
|
||||
ALT="Read New" WIDTH=80 HEIGHT=24 BORDER=0></A>
|
||||
<% } // end if %>
|
||||
<A HREF="TODO"><IMG SRC="<%= rdat.getFullImagePath("bn_manage.gif") %>"
|
||||
ALT="Manage" WIDTH=80 HEIGHT=24 BORDER=0></A>
|
||||
<% if (data.canAddToHotlist()) { %>
|
||||
<A HREF="TODO"><IMG SRC="<%= rdat.getFullImagePath("bn_add_to_hotlist.gif") %>"
|
||||
ALT="Add to HotList" WIDTH=80 HEIGHT=24 BORDER=0></A>
|
||||
<% } // end if %>
|
||||
</DIV>
|
||||
<% if (data.anyTopics()) { %>
|
||||
<TABLE WIDTH="100%" BORDER=0 CELLPADDING=0 CELLSPACING=3>
|
||||
<TR VALIGN=TOP>
|
||||
<TD ALIGN=LEFT WIDTH="1%"><%= rdat.getStdFontTag(null,2) %>
|
||||
<% tmp = self + "&sort="
|
||||
+ String.valueOf(data.isSort(ConferenceContext.SORT_NUMBER) ? -ConferenceContext.SORT_NUMBER
|
||||
: ConferenceContext.SORT_NUMBER); %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(tmp) %>">#</A>
|
||||
</FONT></TD>
|
||||
<TD ALIGN=LEFT><%= rdat.getStdFontTag(null,2) %>
|
||||
<% tmp = self + "&sort="
|
||||
+ String.valueOf(data.isSort(ConferenceContext.SORT_NAME) ? -ConferenceContext.SORT_NAME
|
||||
: ConferenceContext.SORT_NAME); %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(tmp) %>">Topic Name</A>
|
||||
</FONT></TD>
|
||||
<TD ALIGN=RIGHT><%= rdat.getStdFontTag(null,2) %>
|
||||
<% tmp = self + "&sort="
|
||||
+ String.valueOf(data.isSort(ConferenceContext.SORT_UNREAD) ? -ConferenceContext.SORT_UNREAD
|
||||
: ConferenceContext.SORT_UNREAD); %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(tmp) %>">New</A>
|
||||
</FONT></TD>
|
||||
<TD ALIGN=RIGHT><%= rdat.getStdFontTag(null,2) %>
|
||||
<% tmp = self + "&sort="
|
||||
+ String.valueOf(data.isSort(ConferenceContext.SORT_TOTAL) ? -ConferenceContext.SORT_TOTAL
|
||||
: ConferenceContext.SORT_TOTAL); %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(tmp) %>">Total</A>
|
||||
</FONT></TD>
|
||||
<TD ALIGN=LEFT><%= rdat.getStdFontTag(null,2) %>
|
||||
<% tmp = self + "&sort="
|
||||
+ String.valueOf(data.isSort(ConferenceContext.SORT_DATE) ? -ConferenceContext.SORT_DATE
|
||||
: ConferenceContext.SORT_DATE); %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(tmp) %>">Last Response</A>
|
||||
</FONT></TD>
|
||||
</TR>
|
||||
<TR VALIGN=TOP><TD ALIGN=LEFT COLSPAN=5><%= rdat.getStdFontTag(null,2) %> </FONT></TD></TR>
|
||||
<% Iterator it = data.getTopicIterator(); %>
|
||||
<% while (it.hasNext()) { %>
|
||||
<% TopicContext topic = (TopicContext)(it.next()); %>
|
||||
<TR VALIGN=TOP>
|
||||
<TD ALIGN=LEFT WIDTH="1%"><%= rdat.getStdFontTag(null,2) %>
|
||||
<A HREF="TODO"><%= topic.getTopicNumber() %></A>
|
||||
</FONT></TD>
|
||||
<TD ALIGN=LEFT><%= rdat.getStdFontTag(null,2) %>
|
||||
<A HREF="TODO"><%= topic.getName() %></A>
|
||||
</FONT></TD>
|
||||
<TD ALIGN=RIGHT><%= rdat.getStdFontTag(null,2) %>
|
||||
<A HREF="TODO"><%= topic.getUnreadMessages() %></A>
|
||||
</FONT></TD>
|
||||
<TD ALIGN=RIGHT><%= rdat.getStdFontTag(null,2) %>
|
||||
<A HREF="TODO"><%= topic.getTotalMessages() %></A>
|
||||
</FONT></TD>
|
||||
<TD ALIGN=LEFT><%= rdat.getStdFontTag(null,2) %>
|
||||
<A HREF="TODO"><%= rdat.formatDateForDisplay(topic.getLastUpdateDate()) %></A>
|
||||
</FONT></TD>
|
||||
</TR>
|
||||
<% } // end while (more topics in enumeration) %>
|
||||
</TABLE><P>
|
||||
<% } else { %>
|
||||
<%
|
||||
switch (data.getViewOption())
|
||||
{
|
||||
case ConferenceContext.DISPLAY_NEW:
|
||||
%>
|
||||
<EM>No topics with unread messages found.</EM>
|
||||
<%
|
||||
break;
|
||||
case ConferenceContext.DISPLAY_ACTIVE:
|
||||
case ConferenceContext.DISPLAY_ALL:
|
||||
%>
|
||||
<EM>No active topics found.</EM>
|
||||
<%
|
||||
break;
|
||||
case ConferenceContext.DISPLAY_HIDDEN:
|
||||
%>
|
||||
<EM>No hidden topics found.</EM>
|
||||
<%
|
||||
break;
|
||||
case ConferenceContext.DISPLAY_ARCHIVED:
|
||||
%>
|
||||
<EM>No archived topics found.</EM>
|
||||
<%
|
||||
break;
|
||||
default:
|
||||
%>
|
||||
<EM>Invalid display option selected.</EM>
|
||||
<%
|
||||
break;
|
||||
} // end switch
|
||||
%>
|
||||
<P>
|
||||
<% } // end if %>
|
||||
<DIV ALIGN="CENTER">
|
||||
<B>[</B>
|
||||
<% if (data.isView(ConferenceContext.DISPLAY_NEW)) { %>
|
||||
<B>New</B>
|
||||
<% } else { %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(self + "&view=" + String.valueOf(ConferenceContext.DISPLAY_NEW)) %>">New</A>
|
||||
<% } // end if %>
|
||||
<B>|</B>
|
||||
<% if (data.isView(ConferenceContext.DISPLAY_ACTIVE)) { %>
|
||||
<B>Active</B>
|
||||
<% } else { %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(self + "&view=" + String.valueOf(ConferenceContext.DISPLAY_ACTIVE)) %>">Active</A>
|
||||
<% } // end if %>
|
||||
<B>|</B>
|
||||
<% if (data.isView(ConferenceContext.DISPLAY_ALL)) { %>
|
||||
<B>All</B>
|
||||
<% } else { %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(self + "&view=" + String.valueOf(ConferenceContext.DISPLAY_ALL)) %>">All</A>
|
||||
<% } // end if %>
|
||||
<B>|</B>
|
||||
<% if (data.isView(ConferenceContext.DISPLAY_HIDDEN)) { %>
|
||||
<B>Hidden</B>
|
||||
<% } else { %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(self + "&view=" + String.valueOf(ConferenceContext.DISPLAY_HIDDEN)) %>">Hidden</A>
|
||||
<% } // end if %>
|
||||
<B>|</B>
|
||||
<% if (data.isView(ConferenceContext.DISPLAY_ARCHIVED)) { %>
|
||||
<B>Archived</B>
|
||||
<% } else { %>
|
||||
<A HREF="<%= rdat.getEncodedServletPath(self + "&view=" + String.valueOf(ConferenceContext.DISPLAY_ARCHIVED)) %>">Archived</A>
|
||||
<% } // end if %>
|
||||
<B>]</B>
|
||||
</DIV>
|
||||
</FONT>
|
||||
<% rdat.writeFooter(out); %>
|
||||
BIN
web/images/bn_add_to_hotlist.gif
Normal file
BIN
web/images/bn_add_to_hotlist.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1000 B |
BIN
web/images/bn_add_topic.gif
Normal file
BIN
web/images/bn_add_topic.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 954 B |
BIN
web/images/bn_conference_list.gif
Normal file
BIN
web/images/bn_conference_list.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1001 B |
BIN
web/images/bn_post.gif
Normal file
BIN
web/images/bn_post.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 894 B |
BIN
web/images/bn_preview.gif
Normal file
BIN
web/images/bn_preview.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 939 B |
BIN
web/images/bn_read_new.gif
Normal file
BIN
web/images/bn_read_new.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 970 B |
Reference in New Issue
Block a user