venice-main-classic/src/com/silverwrist/venice/servlets/format/AdminUserPhotoData.java
Eric J. Bowersox 004dcaf7ec added administrative control of user photos - ability to replace or clear
a user's photo, keep the user from uploading a new one
2001-11-29 07:46:57 +00:00

136 lines
4.2 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.awt.Dimension;
import javax.servlet.*;
import javax.servlet.http.*;
import com.silverwrist.util.StringUtil;
import com.silverwrist.venice.core.*;
import com.silverwrist.venice.except.*;
public class AdminUserPhotoData implements JSPRender
{
/*--------------------------------------------------------------------------------
* Static data members
*--------------------------------------------------------------------------------
*/
// Attribute name for request attribute
protected static final String ATTR_NAME = "com.silverwrist.venice.content.AdminUserPhotoData";
/*--------------------------------------------------------------------------------
* Attributes
*--------------------------------------------------------------------------------
*/
private Dimension photo_dims;
private String photo_url;
private int uid;
private String user_name;
/*--------------------------------------------------------------------------------
* Constructor
*--------------------------------------------------------------------------------
*/
public AdminUserPhotoData(VeniceEngine engine, AdminUserContext admuser, RenderData rdat)
throws DataException
{
photo_dims = engine.getUserPhotoSize();
photo_url = admuser.getContactInfo().getPhotoURL();
if (StringUtil.isStringEmpty(photo_url))
photo_url = rdat.getPhotoNotAvailURL();
this.uid = admuser.getUID();
this.user_name = admuser.getUserName();
} // end constructor
/*--------------------------------------------------------------------------------
* External static functions
*--------------------------------------------------------------------------------
*/
public static AdminUserPhotoData retrieve(ServletRequest request)
{
return (AdminUserPhotoData)(request.getAttribute(ATTR_NAME));
} // end retrieve
/*--------------------------------------------------------------------------------
* Implementations from interface VeniceContent
*--------------------------------------------------------------------------------
*/
public String getPageTitle(RenderData rdat)
{
return "Set User Photo";
} // end getPageTitle
public String getPageQID()
{
return null;
} // end getPageQID
/*--------------------------------------------------------------------------------
* Implementations from interface JSPRender
*--------------------------------------------------------------------------------
*/
public void store(ServletRequest request)
{
request.setAttribute(ATTR_NAME,this);
} // end store
public String getTargetJSPName()
{
return "admin_user_photo.jsp";
} // end getTargetJSPName
/*--------------------------------------------------------------------------------
* External operations
*--------------------------------------------------------------------------------
*/
public int getUID()
{
return uid;
} // end getUID
public String getUserName()
{
return user_name;
} // end getUserName
public String getPhotoTag(RenderData rdat)
{
StringBuffer buf = new StringBuffer("<IMG SRC=\"");
buf.append(photo_url).append("\" ALT=\"\" ALIGN=LEFT WIDTH=").append(photo_dims.width).append(" HEIGHT=");
buf.append(photo_dims.height).append(" HSPACE=6 VSPACE=0 BORDER=0>");
return buf.toString();
} // end getPhotoTag
} // end class AdminUserPhotoData