GalleryBean.java
package sk.iway.iwcm.gallery;
import java.util.Arrays;
import java.util.Date;
import sk.iway.iwcm.Constants;
import sk.iway.iwcm.Tools;
import sk.iway.iwcm.io.IwcmFile;
/**
* GalleryBean.java - informacie o obrazku z DB
*
*@Title webjet4
*@Company Interway s.r.o. (www.interway.sk)
*@Copyright Interway s.r.o. (c) 2001-2004
*@author $Author: jeeff jeeff $
*@version $Revision: 1.2 $
*@created Date: 16.9.2004 23:19:42
*@modified $Date: 2004/08/09 08:42:03 $
*/
public class GalleryBean
{
public GalleryBean()
{
//prazdny konstruktor
}
private String imagePath="";
private String imageName="";
private String shortDescription="";
private String longDescription="";
private int imageId=-1;
private String bigDimension="";
private String bigLength="";
private String nextImage="";
private String prevImage="";
private String originalImage="";
private String author="";
private int sendCount=0;
private String allowedDomains = "";
private String[] perexGroup;
private int selectedX =-1;
private int selectedY = -1;
private int selectedWidth =-1;
private int selectedHeight =-1;
private Date uploadDate;
private int sortPriority;
private boolean cyclicViewing = false;
private boolean prevNextLinksInitalized = false;
private void initPrevNextLinks()
{
if (prevNextLinksInitalized) return;
GalleryDB.fillPrevNextLink(this, cyclicViewing);
prevNextLinksInitalized = true;
}
/**
* Vrati URL k obrazku ako imagePath+/+imageName
* @return
*/
public String getImageUrl()
{
return getImagePath()+"/"+getImageName();
}
public String getImagePath()
{
return imagePath;
}
public void setImagePath(String imagePath)
{
this.imagePath = imagePath;
}
public void setImageName(String imageName)
{
this.imageName = imageName;
}
public String getImageName()
{
return imageName;
}
public void setShortDescription(String shortDescription)
{
this.shortDescription = shortDescription;
}
public String getShortDescription()
{
return shortDescription;
}
public String getDescriptionByLng(String lng, String item)
{
return GalleryDB.getDescriptionLng(this.imageId, item, lng);
}
public String getAuthor()
{
return (this.author == null ? "" : this.author);
}
public void setAuthor(String author)
{
this.author = author;
}
/**
* vrati short description, tak aby neobsahoval \n
* @return
*/
public String getShortDescriptionJS()
{
String ret = getShortDescription();
if (ret==null) return("");
if (ret.indexOf('\n')>0)
{
if (ret.indexOf("<br")!=-1 || ret.indexOf("<p")!=-1 || ret.indexOf("<td")!=-1)
{
//je to HTML, \n mozeme nahradit medzerou
ret = Tools.replace(ret, "\n", " ");
}
else
{
//nie je to HTML, \n nahradime za <br>
ret = Tools.replace(ret, "\n", "<br />");
}
}
ret = Tools.replace(ret, "\r", "");
//sepal z toho uvodzovky
ret = Tools.replace(ret, "\"", """);
return(ret);
}
public void setLongDescription(String longDescription)
{
this.longDescription = longDescription;
}
public String getLongDescription()
{
return longDescription;
}
public String getLongDescriptionJS()
{
String ret = getLongDescription();
if (ret==null) return("");
if (ret.indexOf('\n')>0)
{
if (ret.indexOf("<br")!=-1 || ret.indexOf("<p")!=-1 || ret.indexOf("<td")!=-1)
{
//je to HTML, \n mozeme nahradit medzerou
ret = Tools.replace(ret, "\n", " ");
}
else
{
//nie je to HTML, \n nahradime za <br>
ret = Tools.replace(ret, "\n", "<br />");
}
}
ret = Tools.replace(ret, "\r", "");
//sepal z toho uvodzovky
ret = Tools.replace(ret, "\"", """);
return(ret);
}
public void setImageId(int imageId)
{
this.imageId = imageId;
}
public int getImageId()
{
return imageId;
}
public String getBigDimension()
{
return bigDimension;
}
public void setBigDimension(String bigDimension)
{
this.bigDimension = bigDimension;
}
public String getBigLength()
{
return bigLength;
}
public void setBigLength(String bigLength)
{
this.bigLength = bigLength;
}
public String getNextImage()
{
initPrevNextLinks();
return nextImage;
}
public void setNextImage(String nextImage)
{
this.nextImage = nextImage;
}
public String getPrevImage()
{
initPrevNextLinks();
return prevImage;
}
public void setPrevImage(String prevImage)
{
this.prevImage = prevImage;
}
public void setOriginalImage(String originalImage)
{
this.originalImage = originalImage;
}
public String getOriginalImage()
{
if (originalImage==null && Constants.getBoolean("galleryUseFastLoading"))
{
originalImage = GalleryDB.getImagePathOriginal(imagePath + "/" + imageName);
}
return originalImage;
}
public int getSendCount()
{
return sendCount;
}
public void setSendCount(int sendCount)
{
this.sendCount = sendCount;
}
public String getAllowedDomains()
{
return allowedDomains;
}
public void setAllowedDomains(String allowedDomains)
{
this.allowedDomains = allowedDomains;
}
public String[] getPerexGroup()
{
return perexGroup;
}
public void setPerexGroup(String[] perexGroup)
{
this.perexGroup = perexGroup;
}
public int getSelectedX()
{
return selectedX;
}
public void setSelectedX(int selectedX)
{
this.selectedX = selectedX;
}
public int getSelectedY()
{
return selectedY;
}
public void setSelectedY(int selectedY)
{
this.selectedY = selectedY;
}
public int getSelectedWidth()
{
return selectedWidth;
}
public void setSelectedWidth(int selectedWidth)
{
this.selectedWidth = selectedWidth;
}
public int getSelectedHeight()
{
return selectedHeight;
}
public void setSelectedHeight(int selectedHeight)
{
this.selectedHeight = selectedHeight;
}
/**
* Returns bean property uploadDate, if it ist null, tries to find file corresponding
* to this bean, if found, returns date of last modification of this file, if not found
* returns null
* @return
*/
public Date getUploadDate()
{
if (uploadDate == null)
{
IwcmFile f = new IwcmFile(Tools.getRealPath(getOriginalImage()));
if (f != null && f.isFile()) uploadDate = new Date(f.lastModified());
else uploadDate = new Date();
}
return uploadDate == null ? null : (Date) uploadDate.clone();
}
public Date getUploadDateNull()
{
return this.uploadDate;
}
public void setUploadDate(Date uploadDate)
{
this.uploadDate = uploadDate == null ? null : (Date) uploadDate.clone();
}
public void setSortPriority(int sortPriority)
{
this.sortPriority = sortPriority;
}
public int getSortPriority()
{
return sortPriority;
}
public boolean isCyclicViewing()
{
return cyclicViewing;
}
public void setCyclicViewing(boolean cyclicViewing)
{
this.cyclicViewing = cyclicViewing;
}
@Override
public String toString()
{
return "GalleryBean [imagePath=" + imagePath + ", imageName=" + imageName + ", shortDescription=" + shortDescription
+ ", longDescription=" + longDescription + ", imageId=" + imageId + ", bigDimension=" + bigDimension
+ ", bigLength=" + bigLength + ", nextImage=" + nextImage + ", prevImage=" + prevImage + ", originalImage="
+ originalImage + ", author=" + author + ", sendCount=" + sendCount + ", allowedDomains=" + allowedDomains
+ ", perexGroup=" + Arrays.toString(perexGroup) + ", selectedX=" + selectedX + ", selectedY=" + selectedY
+ ", selectedWidth=" + selectedWidth + ", selectedHeight=" + selectedHeight + ", uploadDate=" + uploadDate
+ ", sortPriority=" + sortPriority + ", cyclicViewing=" + cyclicViewing
+ ", prevNextLinksInitalized=" + prevNextLinksInitalized + "]";
}
}