/* * 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.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 = ""; if (conf==null) return rc; rc += ("\n"); if (topic==null) return rc; rc += ("\n"); return rc; } // end getAdditionalParameters } // end class Invitation