Pages = new Array;
Pages.length=0;

function Photo(Page,Caption,Description,ExtraHTMLFile,Directory,FileName,LocationTaken,
  DateTaken,Author,Source,CreateDate,ModifiedDate,Width,Height,ThumbWidth,ThumbHeight,MIMEType,ObjectProperties,Keywords)
{
	this.Caption = Caption;
	this.Description = Description;
	this.Directory = Directory;
	this.FileName = FileName;
    this.LocationTaken = LocationTaken;
    this.DateTaken = DateTaken;
	this.Author = Author;
	this.Source = Source;
	this.CreateDate = CreateDate;
	this.ModifiedDate = ModifiedDate;
	this.Width = Width;
	this.Height = Height;
	this.ThumbWidth = ThumbWidth;
	this.ThumbHeight = ThumbHeight;
	this.MIMEType = MIMEType;
	this.ObjectProperties = ObjectProperties;
    this.HasExtraHTMLFile = ((ExtraHTMLFile!="") && (ExtraHTMLFile!=null));
    this.ExtraHTMLFile = escape(ExtraHTMLFile);
	if (Keywords!=null)
		this.Keywords = Keywords.split('\n').join(', ');
	Page.Photos[Page.Photos.length] = this;
}

function Photo_File(Index)
{
	return escape('Images/' + this.Photos[Index].Directory + this.Photos[Index].FileName);
}

function Thumb_File(Index)
{
	return escape('Images/' + this.Photos[Index].Directory + 'Thumbs/' + this.Photos[Index].FileName);
}

function Page(Album,Title,Description,ThumbFileName,ExtraHTMLFile)
{
   this.Album = Album;
   this.Title = Title;
   this.Description = Description;
   this.ThumbFileName = escape(ThumbFileName);
   this.Photos = new Array;
   this.Photos.length=0;
   this.PhotoFile = Photo_File;//method assignments
   this.ThumbFile = Thumb_File;
   this.HasExtraHTMLFile = ((ExtraHTMLFile!="") && (ExtraHTMLFile!=null));
   this.ExtraHTMLFile = escape(ExtraHTMLFile);
   Pages[Pages.length] = this;
}

function Album(Title,Description,ThumbFileName,ExtraHTMLFile)
{
   this.Title = Title;
   this.Description = Description;
   this.ThumbFileName = escape(ThumbFileName);
   this.HasExtraHTMLFile = ((ExtraHTMLFile!="") && (ExtraHTMLFile!=null));
   this.ExtraHTMLFile = escape(ExtraHTMLFile); 
}
