150 lines
4.8 KiB
Java
150 lines
4.8 KiB
Java
/*
|
|
* 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):
|
|
*/
|
|
package com.silverwrist.venice.servlets.format;
|
|
|
|
import java.io.IOException;
|
|
import java.io.Writer;
|
|
import javax.servlet.ServletRequest;
|
|
import com.silverwrist.util.StringUtil;
|
|
import com.silverwrist.venice.core.*;
|
|
|
|
public class Invitation implements JSPRender
|
|
{
|
|
/*--------------------------------------------------------------------------------
|
|
* Static data members
|
|
*--------------------------------------------------------------------------------
|
|
*/
|
|
|
|
// Attribute name for request attribute
|
|
protected static final String ATTR_NAME = "com.silverwrist.venice.content.Invitation";
|
|
|
|
/*--------------------------------------------------------------------------------
|
|
* Attributes
|
|
*--------------------------------------------------------------------------------
|
|
*/
|
|
|
|
private CommunityContext comm; // the community context
|
|
private ConferenceContext conf; // the conference context
|
|
private TopicContext topic; // the topic context
|
|
|
|
/*--------------------------------------------------------------------------------
|
|
* Constructor
|
|
*--------------------------------------------------------------------------------
|
|
*/
|
|
|
|
public Invitation(CommunityContext comm, ConferenceContext conf, TopicContext topic)
|
|
{
|
|
this.comm = comm;
|
|
this.conf = conf;
|
|
this.topic = topic;
|
|
|
|
} // end constructor
|
|
|
|
/*--------------------------------------------------------------------------------
|
|
* External static functions
|
|
*--------------------------------------------------------------------------------
|
|
*/
|
|
|
|
public static Invitation retrieve(ServletRequest request)
|
|
{
|
|
return (Invitation)(request.getAttribute(ATTR_NAME));
|
|
|
|
} // end retrieve
|
|
|
|
/*--------------------------------------------------------------------------------
|
|
* Implementations from interface VeniceContent
|
|
*--------------------------------------------------------------------------------
|
|
*/
|
|
|
|
public String getPageTitle(RenderData rdat)
|
|
{
|
|
return "Send Invitation";
|
|
|
|
} // end getPageTitle
|
|
|
|
public String getPageQID()
|
|
{
|
|
String rc = "sigops?cmd=I&sig=" + comm.getCommunityID();
|
|
if (conf!=null)
|
|
{ // add conference and topic parameters, as needed
|
|
rc += ("&conf=" + conf.getConfID());
|
|
if (topic!=null)
|
|
rc += ("&top=" + topic.getTopicNumber());
|
|
|
|
} // end if
|
|
|
|
return rc;
|
|
|
|
} // end getPageQID
|
|
|
|
/*--------------------------------------------------------------------------------
|
|
* Implementations from interface JSPRender
|
|
*--------------------------------------------------------------------------------
|
|
*/
|
|
|
|
public void store(ServletRequest request)
|
|
{
|
|
request.setAttribute(ATTR_NAME,this);
|
|
|
|
} // end store
|
|
|
|
public String getTargetJSPName()
|
|
{
|
|
return "invitation.jsp";
|
|
|
|
} // end getTargetJSPName
|
|
|
|
/*--------------------------------------------------------------------------------
|
|
* External operations
|
|
*--------------------------------------------------------------------------------
|
|
*/
|
|
|
|
public final void writeHeader(Writer out, RenderData rdat) throws IOException
|
|
{
|
|
if (topic!=null)
|
|
rdat.writeContentHeader(out,"Send Topic Invitation:",
|
|
topic.getName() + " (in " + conf.getName() + ", in " + comm.getName() + ")");
|
|
else if (conf!=null)
|
|
rdat.writeContentHeader(out,"Send Conference Invitation:",
|
|
conf.getName() + " (in " + comm.getName() + ")");
|
|
else
|
|
rdat.writeContentHeader(out,"Send Community Invitation:",comm.getName());
|
|
|
|
} // end writeHeader
|
|
|
|
public final int getCommunityID()
|
|
{
|
|
return comm.getCommunityID();
|
|
|
|
} // end getCommunityID
|
|
|
|
public final String getParameters()
|
|
{
|
|
String rc = "<INPUT TYPE=\"HIDDEN\" NAME=\"sig\" VALUE=\"" + comm.getCommunityID() + "\">";
|
|
if (conf==null)
|
|
return rc;
|
|
rc += ("\n<INPUT TYPE=\"HIDDEN\" NAME=\"conf\" VALUE=\"" + conf.getConfID() + "\">");
|
|
if (topic==null)
|
|
return rc;
|
|
rc += ("\n<INPUT TYPE=\"HIDDEN\" NAME=\"top\" VALUE=\"" + topic.getTopicNumber() + "\">");
|
|
return rc;
|
|
|
|
} // end getAdditionalParameters
|
|
|
|
} // end class Invitation
|