,
+ * 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):
+ */
+package com.silverwrist.venice.servlets.format;
+
+import java.io.*;
+import java.util.*;
+import com.silverwrist.venice.core.*;
+
+public class SideBoxConferences implements ContentRender
+{
+ /*--------------------------------------------------------------------------------
+ * Attributes
+ *--------------------------------------------------------------------------------
+ */
+
+ private UserContext uc;
+
+ /*--------------------------------------------------------------------------------
+ * Constructor
+ *--------------------------------------------------------------------------------
+ */
+
+ public SideBoxConferences(UserContext uc, String parameter)
+ {
+ this.uc = uc;
+
+ } // end constructor
+
+ /*--------------------------------------------------------------------------------
+ * Implementations from interface VeniceContent
+ *--------------------------------------------------------------------------------
+ */
+
+ public String getPageTitle(RenderData rdat)
+ {
+ if (uc.isLoggedIn())
+ return "Your Conference Hotlist:";
+ else
+ return "Featured Conferences:";
+
+ } // end getPageTitle
+
+ /*--------------------------------------------------------------------------------
+ * Implementations from interface ContentRender
+ *--------------------------------------------------------------------------------
+ */
+
+ public void renderHere(Writer out, RenderData rdat) throws IOException
+ {
+ /* BEGIN TEMP */
+ out.write("\n");
+ out.write("- BOFH (Benevolent Dictators)
\n");
+ out.write("- Playground (Electric Minds)
\n");
+ out.write("- Commons (Electric Minds)
\n");
+ out.write("- Top Ten Lists (Pamela's Lounge)
\n");
+ out.write("
\n");
+ /* END TEMP */
+
+ // write the link at the end
+ out.write("" + rdat.getStdFontTag(null,1) + "[ Manage ]");
+
+ } // end renderHere
+
+} // end class SideBoxConferences
diff --git a/src/com/silverwrist/venice/servlets/format/SideBoxSIGs.java b/src/com/silverwrist/venice/servlets/format/SideBoxSIGs.java
new file mode 100644
index 0000000..99263d8
--- /dev/null
+++ b/src/com/silverwrist/venice/servlets/format/SideBoxSIGs.java
@@ -0,0 +1,103 @@
+/*
+ * 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 .
+ *
+ * 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 ,
+ * 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):
+ */
+package com.silverwrist.venice.servlets.format;
+
+import java.io.*;
+import java.util.*;
+import com.silverwrist.util.StringUtil;
+import com.silverwrist.venice.core.*;
+
+public class SideBoxSIGs implements ContentRender
+{
+ /*--------------------------------------------------------------------------------
+ * Attributes
+ *--------------------------------------------------------------------------------
+ */
+
+ private UserContext uc;
+ private List sig_list;
+
+ /*--------------------------------------------------------------------------------
+ * Constructor
+ *--------------------------------------------------------------------------------
+ */
+
+ public SideBoxSIGs(UserContext uc, String parameter) throws DataException
+ {
+ this.uc = uc;
+ this.sig_list = uc.getMemberSIGs();
+
+ } // end constructor
+
+ /*--------------------------------------------------------------------------------
+ * Implementations from interface VeniceContent
+ *--------------------------------------------------------------------------------
+ */
+
+ public String getPageTitle(RenderData rdat)
+ {
+ if (uc.isLoggedIn())
+ return "Your SIGs:";
+ else
+ return "Featured SIGs:";
+
+ } // end getPageTitle
+
+ /*--------------------------------------------------------------------------------
+ * Implementations from interface ContentRender
+ *--------------------------------------------------------------------------------
+ */
+
+ public void renderHere(Writer out, RenderData rdat) throws IOException
+ {
+ out.write(rdat.getStdFontTag(null,2) + "\n");
+ if (sig_list.size()>0)
+ { // display the list of available SIGs
+ out.write("\n");
+ Iterator it = sig_list.iterator();
+ while (it.hasNext())
+ { // display the names of the SIGs one by one
+ SIGContext sig = (SIGContext)(it.next());
+ out.write("\n![\"*\"](\"") | \n");
+ out.write("\n" + rdat.getStdFontTag(null,2) + ""
+ + StringUtil.encodeHTML(sig.getName()) + "\n");
+ if (sig.isAdmin())
+ out.write(" \n");
+ out.write(" | \n
\n");
+
+ } // end while
+
+ out.write("
\n");
+
+ } // end if
+ else
+ out.write(rdat.getStdFontTag(null,2) + "You are not a member of any SIGs.\n");
+
+ // write the two links at the end
+ out.write("" + rdat.getStdFontTag(null,1) + "[ Manage | Create New ]");
+
+ } // end renderHere
+
+} // end class SideBoxSIGs
+
diff --git a/src/com/silverwrist/venice/servlets/format/TCPanelConferences.java b/src/com/silverwrist/venice/servlets/format/TCPanelConferences.java
deleted file mode 100644
index bd4e10c..0000000
--- a/src/com/silverwrist/venice/servlets/format/TCPanelConferences.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * 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 .
- *
- * 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 Community System.
- *
- * The Initial Developer of the Original Code is Eric J. Bowersox ,
- * 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):
- */
-package com.silverwrist.venice.servlets.format;
-
-import java.io.Writer;
-import java.io.IOException;
-import com.silverwrist.venice.core.UserContext;
-import com.silverwrist.venice.core.DataException;
-
-public class TCPanelConferences extends TCStandardPanel
-{
- public TCPanelConferences()
- {
- super("Your Favorite Conferences:",null);
- addButton("bn_manage.gif","Manage",null,true,80,24);
-
- } // end constructor
-
- public TCPanelConferences(TCPanelConferences other)
- {
- super(other);
-
- } // end constructor
-
- public void renderContent(Writer out, RenderData rdat) throws IOException
- {
- /* BEGIN TEMP */
- out.write("\n");
- out.write("- BOFH (Benevolent Dictators)
\n");
- out.write("- Playground (Electric Minds)
\n");
- out.write("- Commons (Electric Minds)
\n");
- out.write("- Top Ten Lists (Pamela's Lounge)
\n");
- out.write("
\n");
- /* END TEMP */
-
- } // end renderHere
-
- public void configure(UserContext uc, String parameter) throws DataException
- { // TEMP - do nothing
- super.configure(uc,parameter);
- if (!(uc.isLoggedIn()))
- setTitle("Featured Conferences:");
-
- } // end configure
-
- public Object clone()
- {
- return new TCPanelConferences(this);
-
- } // end clone
-
-} // end class TCPanelSIGs
diff --git a/src/com/silverwrist/venice/servlets/format/TCPanelSIGs.java b/src/com/silverwrist/venice/servlets/format/TCPanelSIGs.java
deleted file mode 100644
index d63cf14..0000000
--- a/src/com/silverwrist/venice/servlets/format/TCPanelSIGs.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * 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 .
- *
- * 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 Community System.
- *
- * The Initial Developer of the Original Code is Eric J. Bowersox ,
- * 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):
- */
-package com.silverwrist.venice.servlets.format;
-
-import java.io.Writer;
-import java.io.IOException;
-import java.util.List;
-import java.util.Iterator;
-import com.silverwrist.venice.core.SIGContext;
-import com.silverwrist.venice.core.UserContext;
-import com.silverwrist.venice.core.DataException;
-
-public class TCPanelSIGs extends TCStandardPanel
-{
- private List my_sigs = null;
-
- public TCPanelSIGs()
- {
- super("Your SIGs:",null);
- addButton("bn_manage.gif","Manage",null,true,80,24);
- addButton("bn_create_new.gif","Create New","sigops?cmd=C",true,80,24);
-
- } // end constructor
-
- protected TCPanelSIGs(TCPanelSIGs other)
- {
- super(other);
-
- } // end constructor
-
- public void renderContent(Writer out, RenderData rdat) throws IOException
- {
- out.write(rdat.getStdFontTag(null,2) + "\n");
- if (my_sigs.size()>0)
- { // display the list of available SIGs
- out.write("\n");
-
- Iterator it = my_sigs.iterator();
- while (it.hasNext())
- { // display the names of the SIGs one by one
- SIGContext sig = (SIGContext)(it.next());
- // TODO: make this fancier than just an unordered list
- out.write("- " + sig.getName() + "");
- if (sig.isAdmin())
- out.write("
");
- out.write(" \n");
-
- } // end while
-
- out.write("
\n");
-
- } // end if
- else
- out.write("You are not a member of any SIGs.\n");
-
- out.write("\n");
-
- } // end renderContent
-
- public void configure(UserContext uc, String parameter) throws DataException
- {
- super.configure(uc,parameter);
- if (!(uc.isLoggedIn()))
- setTitle("Featured SIGs:");
- my_sigs = uc.getMemberSIGs();
-
- } // end configure
-
- public Object clone()
- {
- return new TCPanelSIGs(this);
-
- } // end clone
-
-} // end class TCPanelSIGs
diff --git a/src/com/silverwrist/venice/servlets/format/TCStandardPanel.java b/src/com/silverwrist/venice/servlets/format/TCStandardPanel.java
deleted file mode 100644
index d042852..0000000
--- a/src/com/silverwrist/venice/servlets/format/TCStandardPanel.java
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
- * 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 .
- *
- * 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 Community System.
- *
- * The Initial Developer of the Original Code is Eric J. Bowersox ,
- * 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):
- */
-package com.silverwrist.venice.servlets.format;
-
-import java.io.Writer;
-import java.io.IOException;
-import java.util.Enumeration;
-import java.util.Vector;
-import com.silverwrist.venice.core.UserContext;
-import com.silverwrist.venice.core.DataException;
-
-public abstract class TCStandardPanel extends TopContentPanel
-{
- class TCButton implements ComponentRender
- {
- private String image;
- private String alt_text;
- private String url;
- private boolean login_only;
- private int width;
- private int height;
-
- public TCButton(String image, String alt_text, String url, boolean login_only, int width, int height)
- {
- this.image = image;
- this.alt_text = alt_text;
- this.url = url;
- this.login_only = login_only;
- this.width = width;
- this.height = height;
-
- } // end constructor
-
- public void renderHere(Writer out, RenderData rdat) throws IOException
- {
- if (url!=null)
- out.write("");
- out.write("
");
- if (url!=null)
- out.write("");
-
- } // end renderHere
-
- public boolean isLoginOnly()
- {
- return login_only;
-
- } // end isLoginOnly
-
- } // end class TCButton
-
- // Attributes
- private String title;
- private String subtitle;
- private Vector buttons;
-
- private String real_title;
- private String real_subtitle;
- private boolean logged_in;
-
- protected TCStandardPanel(String title, String subtitle)
- {
- this.title = title;
- this.subtitle = subtitle;
- this.buttons = new Vector();
- this.real_title = title;
- this.real_subtitle = subtitle;
-
- } // end constructor
-
- protected TCStandardPanel(TCStandardPanel other)
- {
- super(other);
- this.title = other.title;
- this.subtitle = other.subtitle;
- this.buttons = other.buttons;
- this.real_title = other.title;
- this.real_subtitle = other.subtitle;
-
- } // end constructor
-
- private boolean displayButtons()
- {
- if (buttons.size()==0)
- return false;
- else if (logged_in)
- return true;
-
- boolean login_only = true;
- Enumeration enum = buttons.elements();
- while (login_only && enum.hasMoreElements())
- { // attempt to determine if there are any non-"login only" buttons
- TCButton bn = (TCButton)(enum.nextElement());
- login_only = bn.isLoginOnly();
-
- } // end while
-
- return !login_only;
-
- } // end displayButtons
-
- protected void addButton(String image, String alt_text, String url, boolean login_only, int width,
- int height)
- {
- buttons.addElement(new TCButton(image,alt_text,url,login_only,width,height));
-
- } // end addButton
-
- protected abstract void renderContent(Writer out, RenderData rdat) throws IOException;
-
- public void renderHere(Writer out, RenderData rdat) throws IOException
- {
- rdat.writeContentHeader(out,real_title,real_subtitle);
-
- if (displayButtons())
- { // want to print the buttons
- out.write("\n");
- Enumeration enum = buttons.elements();
-
- boolean first_post = true;
- while (enum.hasMoreElements())
- { // figure out whether to display this button
- TCButton bn = (TCButton)(enum.nextElement());
- boolean display_me = logged_in;
- if (logged_in)
- display_me = true;
- else
- display_me = !(bn.isLoginOnly());
-
- if (display_me)
- { // display this button
- if (first_post)
- first_post = false;
- else
- out.write(" ");
- bn.renderHere(out,rdat);
-
- } // end if
-
- } // end while
-
- out.write("\n
\n");
-
- } // end if
-
- renderContent(out,rdat);
-
- } // end renderHere
-
- public void configure(UserContext uc, String parameter) throws DataException
- {
- logged_in = uc.isLoggedIn();
-
- } // end configure
-
- public void setTitle(String title)
- {
- this.real_title = title;
-
- } // end setTitle
-
- public void setSubtitle(String title)
- {
- this.real_subtitle = subtitle;
-
- } // end setTitle
-
-} // end class TCPanelSIGs
diff --git a/src/com/silverwrist/venice/servlets/format/TopContent.java b/src/com/silverwrist/venice/servlets/format/TopContent.java
deleted file mode 100644
index 16c8aaa..0000000
--- a/src/com/silverwrist/venice/servlets/format/TopContent.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * 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 .
- *
- * 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 ,
- * 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):
- */
-package com.silverwrist.venice.servlets.format;
-
-import java.io.Writer;
-import java.io.IOException;
-import java.util.*;
-import com.silverwrist.venice.core.*;
-
-public class TopContent implements ContentRender
-{
- /*--------------------------------------------------------------------------------
- * Static data members
- *--------------------------------------------------------------------------------
- */
-
- public static final int MAX_COLS = 2;
-
- /*--------------------------------------------------------------------------------
- * Attributes
- *--------------------------------------------------------------------------------
- */
-
- private int actual_cols = MAX_COLS;
- private int[] col_sizes;
- private Vector panels = new Vector();
- private boolean display_configure;
-
- /*--------------------------------------------------------------------------------
- * Constructor
- *--------------------------------------------------------------------------------
- */
-
- public TopContent(UserContext uc) throws DataException
- {
- int i; // loop counter
-
- // get the current view configuration
- FrontPageViewConfig vconfig = uc.getFrontPageViewConfig(MAX_COLS);
- if (vconfig.getNumColumns()\n");
-
- Enumeration enum = panels.elements();
- while (enum.hasMoreElements())
- { // output each row in turn
- TopContentPanel[] rowarray = (TopContentPanel[])(enum.nextElement());
- out.write("\n");
-
- for (int i=0; i\n");
- rowarray[i].renderHere(out,rdat);
- out.write("\n");
-
- } // end for
-
- out.write("
\n");
-
- } // end while
-
- out.write("\n");
-
- if (display_configure)
- { // display the Configure button
- out.write("
\n
![\"Configure\"](\"");)
\n
\n");
-
- } // end if
-
- rdat.writeFooter(out);
-
- } // end renderHere
-
-} // end class TopContent
diff --git a/src/com/silverwrist/venice/servlets/format/TopContentPanel.java b/src/com/silverwrist/venice/servlets/format/TopContentPanel.java
deleted file mode 100644
index a12949c..0000000
--- a/src/com/silverwrist/venice/servlets/format/TopContentPanel.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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 .
- *
- * 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 Community System.
- *
- * The Initial Developer of the Original Code is Eric J. Bowersox ,
- * 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):
- */
-package com.silverwrist.venice.servlets.format;
-
-import java.io.Writer;
-import java.io.IOException;
-import com.silverwrist.venice.core.UserContext;
-import com.silverwrist.venice.core.DataException;
-
-public abstract class TopContentPanel implements ComponentRender, Cloneable
-{
- protected TopContentPanel()
- { // do nothing
- } // end constructor
-
- protected TopContentPanel(TopContentPanel other)
- { // do nothing
- } // end constructor
-
- public abstract void renderHere(Writer out, RenderData rdat) throws IOException;
-
- public abstract void configure(UserContext uc, String parameter) throws DataException;
-
- public static TopContentPanel create(String partid)
- {
- if (partid.equals("SIGS"))
- return new TCPanelSIGs();
- if (partid.equals("CONF"))
- return new TCPanelConferences();
- return null;
-
- } // end create
-
-} // end class TopContentPanel
-
diff --git a/src/com/silverwrist/venice/servlets/format/TopDisplay.java b/src/com/silverwrist/venice/servlets/format/TopDisplay.java
new file mode 100644
index 0000000..237954d
--- /dev/null
+++ b/src/com/silverwrist/venice/servlets/format/TopDisplay.java
@@ -0,0 +1,245 @@
+/*
+ * 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 .
+ *
+ * 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 ,
+ * 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):
+ */
+package com.silverwrist.venice.servlets.format;
+
+import java.io.Writer;
+import java.io.IOException;
+import java.util.*;
+import javax.servlet.*;
+import javax.servlet.http.*;
+import com.silverwrist.util.StringUtil;
+import com.silverwrist.venice.core.*;
+
+public class TopDisplay implements ContentRender
+{
+ /*--------------------------------------------------------------------------------
+ * Static data values
+ *--------------------------------------------------------------------------------
+ */
+
+ private static final String ATTR_NAME = "com.silverwrist.venice.TopDisplay";
+
+ /*--------------------------------------------------------------------------------
+ * Attributes
+ *--------------------------------------------------------------------------------
+ */
+
+ private ServletContext ctxt;
+ private UserContext uc;
+ private List descrs;
+ private VeniceContent[] sideboxes;
+
+ /*--------------------------------------------------------------------------------
+ * Constructor
+ *--------------------------------------------------------------------------------
+ */
+
+ public TopDisplay(ServletContext ctxt, UserContext uc) throws DataException, AccessError, ErrorBox
+ {
+ // Stash some basic information.
+ this.ctxt = ctxt;
+ this.uc = uc;
+ this.descrs = uc.getSideBoxList();
+
+ // Create the arrays used to construct sideboxes.
+ Class[] ctor_argtypes = new Class[2];
+ ctor_argtypes[0] = UserContext.class;
+ ctor_argtypes[1] = String.class;
+ Object[] ctor_args = new Object[2];
+ ctor_args[0] = uc;
+
+ // Create the actual sideboxes.
+ sideboxes = new VeniceContent[descrs.size()];
+ for (int i=0; i\n");
+ out.write("\n");
+
+ // The top content is a JSP page, so include it here.
+ rdat.setRequestAttribute(ATTR_NAME,this);
+ RequestDispatcher dispatcher = ctxt.getRequestDispatcher(rdat.getFormatJSPPath("top_content.jsp"));
+ out.flush();
+ rdat.flushOutput(); // make sure the stuff to be output first is output
+ try
+ { // include me!
+ rdat.includeDispatch(dispatcher);
+
+ } // end try
+ catch (ServletException se)
+ { // since we can't throw ServletException, we throw IOException
+ throw new IOException("Failure including top_content.jsp");
+
+ } // end catch
+
+ rdat.flushOutput(); // now make sure the included page is properly flushed
+
+ out.write(" | \n\n"); // break to the sidebox column
+
+ for (int i=0; i"
+ + "\n");
+ out.write(rdat.getStdFontTag("white",3) + "" + StringUtil.encodeHTML(sideboxes[i].getPageTitle(rdat))
+ + "\n");
+ out.write(" | \n");
+
+ // Fill in the sidebox by calling down to the base.
+ if (sideboxes[i] instanceof ContentRender)
+ { // we have a direct-rendering component here - do it
+ ContentRender cr = (ContentRender)(sideboxes[i]);
+ cr.renderHere(out,rdat);
+
+ } // end if
+ else if (sideboxes[i] instanceof JSPRender)
+ { // we have a JSP rendering component here - bounce to the appropriate JSP file
+ JSPRender jr = (JSPRender)(sideboxes[i]);
+ rdat.storeJSPRender(jr);
+ dispatcher = ctxt.getRequestDispatcher(rdat.getFormatJSPPath(jr.getTargetJSPName()));
+ out.flush();
+ rdat.flushOutput(); // make sure the stuff to be output first is output
+ try
+ { // include me!
+ rdat.includeDispatch(dispatcher);
+
+ } // end try
+ catch (ServletException se)
+ { // since we can't throw ServletException, we throw IOException
+ out.write(rdat.getStdFontTag(null,2) + "failure rendering class "
+ + sideboxes[i].getClass().getName() + ": " + StringUtil.encodeHTML(se.getMessage())
+ + "\n");
+ out.flush();
+
+ } // end catch
+
+ rdat.flushOutput(); // now make sure the included page is properly flushed
+
+ } // end else if
+ else // this is bogus - just display a little error here
+ out.write(rdat.getStdFontTag(null,2) + "cannot display sidebox of class: "
+ + sideboxes[i].getClass().getName() + "\n");
+
+ // close up the framework of this sidebox
+ out.write(" | \n");
+
+ } // end for
+
+ if (uc.isLoggedIn())
+ { // write the Configure button below the sideboxes
+ out.write(" \n");
+
+ } // end if
+
+ // Finish up.
+ out.write(" | \n
");
+ rdat.writeFooter(out);
+
+ } // end renderHere
+
+} // end class TopDisplay
diff --git a/web/format/top_content.jsp b/web/format/top_content.jsp
new file mode 100644
index 0000000..385cfce
--- /dev/null
+++ b/web/format/top_content.jsp
@@ -0,0 +1,30 @@
+<%--
+ 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 .
+
+ 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 ,
+ 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.*" %>
+<%
+ TopDisplay data = TopDisplay.retrieve(request);
+ Variables.failIfNull(data);
+ RenderData rdat = RenderConfig.createRenderData(application,request,response);
+%>
+<% if (rdat.useHTMLComments()) { %><% } %>
+<% rdat.writeContentHeader(out,"Venice Currents",null); %>
+TODO: Something profound goes here. :-)
\ No newline at end of file