PageSourceSearch

https://www.sjccjax.com/A_Master/NET/PhotoGallery/JSONPlugin/albumScripts.js?v=1.2.0

js sjccjax.com collected 2026-09-28 14:53:20 UTC 56,034 bytes, 1,031 lines download raw bytes

1function configureGallery(gallerySettings) {
2	gallerySettings.IsLoaded = false;
3	gallerySettings.PluginWrapper = $j("#photoPluginWrapper" + gallerySettings.PluginID);
4	gallerySettings.MaxIndex = 0;
5	gallerySettings.running = true;
6	gallerySettings.CurrentIndex = 0;
7	gallerySettings.LastIndex = 0;
8	gallerySettings.Timer = null;
9	gallerySettings.Animated = false;
10	gallerySettings.Category = 0;
11	gallerySettings.CurrentDivID = "";
12	gallerySettings.EmailImageID = 0;
13	gallerySettings.LoadCount = 0;
14	gallerySettings.HideControlsTimer = null;
15	gallerySettings.LightboxIndex = -1;
16	gallerySettings.PreLoadTimer = null;
17	if (gallerySettings.EnableEmailPhoto) {
18		gallerySettings.EmailPhotoDiv = $j("<div/>").addClass("divEmailPhoto").attr("id", "divEmailPhoto" + gallerySettings.PluginID).attr("title", "Email This Image").click(function () { gallerySettings.EmailImage(); }).appendTo(gallerySettings.PluginWrapper);
19	}
20	gallerySettings.PluginLoadFinished = function () {
21		if (gallerySettings.OnPluginLoadFinish == "") return;
22		var allLoaded = true;
23		for (var _album in _photoAlbums) {
24			if (!_photoAlbums[_album].IsLoaded) allLoaded = false;
25		}
26		if (!allLoaded) {
27			window.setTimeout("_photoAlbums.a" + gallerySettings.PluginID + ".PluginLoadFinished();", 500);
28			return;
29		}
30		eval(gallerySettings.OnPluginLoadFinish);
31	};
32	gallerySettings.BeforeImageChange = function (Index, ActionLink, ActionLinkClass) {
33		if (gallerySettings.OnBeforeImageChange == "") return;
34		eval(gallerySettings.OnBeforeImageChange);
35	};
36	gallerySettings.BeforeTransitionStarts = function (Index, ActionLink, ActionLinkClass) {
37		if (gallerySettings.OnBeforeTransitionStarts == "") return;
38		eval(gallerySettings.OnBeforeTransitionStarts);
39	};
40	gallerySettings.AfterImageChange = function (NewDivID) {
41		if (gallerySettings.OnAfterImageChange == "") return;
42		eval(gallerySettings.OnAfterImageChange);
43	};
44	gallerySettings.BeforeCategoryChange = function (catDrp) {
45		if (gallerySettings.OnBeforeCategoryChange == "") return;
46		eval(gallerySettings.OnBeforeCategoryChange);
47	};
48	gallerySettings.AfterCategoryChange = function (catDrp) {
49		if (gallerySettings.OnAfterCategoryChange == "") return;
50		eval(gallerySettings.OnAfterCategoryChange);
51	};
52	gallerySettings.GetImagePath = function (imageId) {
53		if (gallerySettings.SiteDomainPath.indexOf("LunchAndLearnTrainingSite") !== -1) {
54			return gallerySettings.ImagePath.replace(gallerySettings.SiteDomainPath, "http://cdn" + (imageId % 20) + ".clubessential.com") + "?ID=" + imageId;
55		} else {
56			return gallerySettings.ImagePath + "?ID=" + imageId;
57		}
58	}
59	gallerySettings.SetCategory = function (catDrp) {
60		gallerySettings.BeforeCategoryChange(catDrp);
61		gallerySettings.CurrentIndex = 0;
62		gallerySettings.LastIndex = 0;
63		if ($j(catDrp).length != 0) gallerySettings.Category = $j(catDrp).val();
64		gallerySettings.SetCategoryDrops();
65		gallerySettings.SetMaxIndex();
66		if ($j(catDrp).length != 0) {
67			gallerySettings.ChangeImage(0, catDrp);
68		} else {
69			gallerySettings.ChangeImage(0, null, "photoPlgCatDrop" + gallerySettings.PluginID);
70		}
71		gallerySettings.AfterCategoryChange(catDrp);
72	};
73	gallerySettings.SetMaxIndex = function () {
74		gallerySettings.MaxIndex = gallerySettings.GetMaxIndex(gallerySettings.Category);
75	};
76	gallerySettings.GetMaxIndex = function (CategoryID) {
77		var InitialCount = 0;
78		if (CategoryID === 0) {
79			InitialCount = gallerySettings.OrderedImages.length - 1;
80		} else {
81			InitialCount = gallerySettings.GetCategory(CategoryID).CategoryImages.length - 1;
82		}
83		if (gallerySettings.DisplayType === 5) {
84			InitialCount = InitialCount + 1;
85			var TotalPages = parseInt(InitialCount / gallerySettings.ThumbsPerPage);
86			if (TotalPages * gallerySettings.ThumbsPerPage < InitialCount) TotalPages = TotalPages + 1;
87			if (gallerySettings.WrapScrolling) {
88				if (InitialCount < gallerySettings.ThumbsPerPage || InitialCount % gallerySettings.ThumbsPerPage === 0) {
89					InitialCount = TotalPages - 1;
90				} else {
91					InitialCount = ((InitialCount % gallerySettings.ThumbsPerPage) * InitialCount) - 1;
92				}
93			} else {
94				InitialCount = TotalPages - 1;
95			}
96		}
97		return InitialCount;
98	};
99	gallerySettings.GetCategory = function (categoryId) {
100		var cat = null;
101		$j.each(gallerySettings.Categories, function (key, Category) {
102			if (categoryId == Category.CategoryID) cat = Category;
103		});
104		return cat;
105	};
106	gallerySettings.SetDisplayImageTime = function (timeDrp) {
107		gallerySettings.DisplayImageTime = $j(timeDrp).val();
108		gallerySettings.StartRotation();
109		gallerySettings.SetTimerDrops();
110	};
111	gallerySettings.ToggleTimer = function (aTag) {
112		var tag = $j(aTag);
113		if (gallerySettings.running) {
114			window.clearTimeout(gallerySettings.Timer);
115			tag.html(gallerySettings.UserScrollPlayText);
116		} else {
117			gallerySettings.StartRotation();
118			tag.html(gallerySettings.UserScrollPauseText);
119		}
120		gallerySettings.running = !gallerySettings.running;
121	};
122	gallerySettings.ExternalChangeImage = function (Index) {
123		var dirID = (gallerySettings.CurrentIndex < Index) ? "nextImg" + gallerySettings.PluginID : "prevImg" + gallerySettings.PluginID;
124		gallerySettings.ChangeImage(Index, null, dirID);
125	};
126	gallerySettings.ChangeImage = function (Index, ActionLink, ActionLinkClass) {
127		if ($j(ActionLink).length) ActionLinkClass = $j(ActionLink).attr("class");
128		if (!gallerySettings.Animated) {
129			gallerySettings.BeforeImageChange(Index, ActionLink, ActionLinkClass);
130			var NewDivID = gallerySettings.LoadImageDiv(Index);
131			gallerySettings.SetTimerDrops();
132			gallerySettings.SetCategoryDrops();
133			gallerySettings.LastIndex = gallerySettings.CurrentIndex;
134			gallerySettings.CurrentIndex = Index;
135			if (gallerySettings.CurrentDivID == NewDivID) return;
136			gallerySettings.BeforeTransitionStarts(Index, ActionLink, ActionLinkClass);
137			gallerySettings.TransitionIn(gallerySettings.CurrentDivID, NewDivID, ActionLinkClass);
138			gallerySettings.CurrentDivID = NewDivID;
139		}
140	};
141	gallerySettings.InitCarousel = function () {
142		var wrapperDiv = gallerySettings.PluginWrapper;
143		wrapperDiv.attr("id", "");
144		var initialHtml = gallerySettings.HtmlItemTemplate;
145		initialHtml = initialHtml.replace("##THUMBSTABLE##", "<div id=\"photoPluginWrapper" + gallerySettings.PluginID + "\" class=\"photoPluginWrapper\"></div>")
146		initialHtml = initialHtml.replace("##IMAGECOUNTER##", "<span id=\"imageCounter" + gallerySettings.PluginID + "\">Page&nbsp;1&nbsp;of&nbsp;" + (gallerySettings.MaxIndex + 1) + "</span>")
147		initialHtml = initialHtml.replace("##CURRENTIMAGENUMBER##", "<span id=\"currentImageNumber" + gallerySettings.PluginID + "\">1</span>")
148		initialHtml = initialHtml.replace("##TOTALIMAGESCOUNT##", "<span id=\"totalImagesCount" + gallerySettings.PluginID + "\">" + (gallerySettings.MaxIndex + 1) + "</span>")
149		wrapperDiv.html(initialHtml);
150		gallerySettings.PluginWrapper = $j("#photoPluginWrapper" + gallerySettings.PluginID);
151	};
152	gallerySettings.ChangePage = function (Index, ActionLink, ActionLinkClass, directIndex) {
153		if (!gallerySettings.Animated) {
154			Index = (directIndex || directIndex == 0) ? directIndex : gallerySettings.CurrentIndex + Index;
155			if (Index > gallerySettings.MaxIndex) { Index = 0; } else if (Index < 0) { Index = gallerySettings.MaxIndex; }
156			if ($j(ActionLink).length) ActionLinkClass = $j(ActionLink).attr("class");
157			gallerySettings.BeforeImageChange();
158			var NewDivID = gallerySettings.LoadPageDiv(Index);
159			gallerySettings.LastIndex = gallerySettings.CurrentIndex;
160			gallerySettings.CurrentIndex = Index;
161			if (gallerySettings.CurrentDivID == NewDivID) return;
162			gallerySettings.BeforeTransitionStarts();
163			gallerySettings.TransitionIn(gallerySettings.CurrentDivID, NewDivID, ActionLinkClass);
164			gallerySettings.CurrentDivID = NewDivID;
165			if ($j("#imageDrop_" + gallerySettings.PluginID).length > 0) $j("#imageDrop_" + gallerySettings.PluginID).attr("selectedIndex", gallerySettings.CurrentIndex);
166		}
167	};
168	gallerySettings.LoadPageDiv = function (Index) {
169		var NewDivID = "phtGalleryWrapDiv_" + gallerySettings.PluginID + "_" + gallerySettings.Category + "_" + Index;
170		if (!$j("#" + NewDivID).length) {
171			var Div = gallerySettings.GetCarouselPage(gallerySettings.PluginID, gallerySettings.Category, Index);
172			$j("<div/>").addClass("photoGalleryThumbPageDiv").attr("id", NewDivID).html(Div).hide().appendTo("#photoPluginWrapper" + gallerySettings.PluginID);
173			$j("#" + NewDivID).find(".carouselThumbnail").hover(function () {
174				$j(this).addClass("hover");
175			}, function () {
176				$j(this).removeClass("hover");
177			});
178		}
179		return NewDivID;
180	};
181	gallerySettings.GetCarouselPage = function (PluginID, CategoryID, PageIndex) {
182
183		if (!gallerySettings) return;
184		var Images;
185
186		if (gallerySettings.Categories.length === 1 || !gallerySettings.ShowCatDrop || CategoryID === 0) {
187			Images = gallerySettings.OrderedImages;
188		} else {
189			Images = gallerySettings.GetCategory(CategoryID).CategoryImages;
190		}
191
192		var ThumbsPerPage = gallerySettings.ThumbsPerPage;
193		var Columns = gallerySettings.Columns;
194
195		if (ThumbsPerPage === -1) ThumbsPerPage = Images.length;
196		if (Columns === -1) Columns = Images.length;
197
198		var Thumbs = new Array();
199
200		if (gallerySettings.WrapScrolling && Images.length % ThumbsPerPage !== 0) {
201			if (gallerySettings.LastScrollCategory !== CategoryID) gallerySettings.LastScrollIndex = 0;
202			for (var i = 0; i <= ThumbsPerPage - 1; i++) {
203				try {
204					if (gallerySettings.LastScrollIndex >= Images.length && Images.length > ThumbsPerPage) gallerySettings.LastScrollIndex = 0;
205					Thumbs.push(gallerySettings.GetCarouselImage(PluginID, Images[gallerySettings.LastScrollIndex], gallerySettings.LastScrollIndex, CategoryID, Images.length));
206					gallerySettings.LastScrollIndex = gallerySettings.LastScrollIndex + 1;
207					gallerySettings.LastScrollCategory = CategoryID;
208				} catch (e) {
209				}
210			}
211		} else {
212			for (var i = (ThumbsPerPage * PageIndex); i <= (((PageIndex + 1) * ThumbsPerPage) - 1); i++) {
213				try {
214					Thumbs.push(gallerySettings.GetCarouselImage(PluginID, Images[i], i, CategoryID, Images.length));
215				} catch (e) {
216				}
217			}
218		}
219
220		if (Thumbs.length > 0) {
221			var ThisPage = "";
222			switch (gallerySettings.ThumbsTableLayout) {
223				case 0: //table
224					ThisPage = "<table id=\"carousel_" + PluginID + "_" + PageIndex + "\" class=\"carousel carousel" + PluginID + "\">";
225					break;
226				case 1: //flow
227					ThisPage = "<div id=\"carousel_" + PluginID + "_" + PageIndex + "\" class=\"carousel carousel" + PluginID + "\">";
228					break;
229				case 2: //ul
230					ThisPage = "<ul id=\"carousel_" + PluginID + "_" + PageIndex + "\" class=\"carousel carousel" + PluginID + "\">";
231					break;
232				default:
233			}
234			var RowCount = 0;
235			var PageColumns = Columns;
236			if (Thumbs.length <= PageColumns) {
237				ThumbsPerPage = Thumbs.length;
238				PageColumns = Thumbs.length;
239			}
240			RowCount = ThumbsPerPage / PageColumns;
241			var Modulus = ThumbsPerPage % PageColumns;
242			if (Modulus > 0) RowCount = RowCount + 1;
243			if (PageColumns === 0) PageColumns = 3;
244			var Index = -1;
245
246			for (var i = 1; i <= RowCount; i++) {
247				switch (gallerySettings.ThumbsTableLayout) {
248					case 0: //table
249						ThisPage = ThisPage + "<tr>";
250						break;
251					case 1: //flow
252						if (RowCount > 1) ThisPage = ThisPage + "<div id=\"carouselRowDIV_" + PluginID + "_" + PageIndex + "_" + i + "\" class=\"carouselRowDIV carouselRowDIV" + PluginID + "\">";
253						break;
254					case 2: //ul
255						if (RowCount > 1) ThisPage = ThisPage + "<li id=\"carouselRowLI_" + PluginID + "_" + PageIndex + "_" + i + "\" class=\"carouselRowLI carouselRowLI" + PluginID + "\"><ul id=\"carouselRow_" + PluginID + "_" + PageIndex + "_" + i + "\" class=\"carouselRow carouselRow" + PluginID + "\">";
256						break;
257					default:
258				}
259				for (var x = 1; x <= PageColumns; x++) {
260					switch (gallerySettings.ThumbsTableLayout) {
261						case 0: //table
262							ThisPage = ThisPage + "<td class=\"carouselThumbnail\">";
263							break;
264						case 1: //flow
265							break;
266						case 2: //ul
267							ThisPage = ThisPage + "<li class=\"carouselThumbnail\">";
268							break;
269						default:
270					}
271					try {
272						Index = Index + 1;
273						var Thumb = Thumbs[Index];
274						if (Thumb) ThisPage = ThisPage + Thumb;
275					} catch (e) {
276					}
277					switch (gallerySettings.ThumbsTableLayout) {
278						case 0: //table
279							ThisPage = ThisPage + "</td>";
280							break;
281						case 1: //flow
282							break;
283						case 2: //ul
284							ThisPage = ThisPage + "</li>";
285							break;
286						default:
287					}
288				}
289				switch (gallerySettings.ThumbsTableLayout) {
290					case 0: //table
291						ThisPage = ThisPage + "</tr>";
292						break;
293					case 1: //flow
294						if (RowCount > 1) ThisPage = ThisPage + "</div>";
295						break;
296					case 2: //ul
297						if (RowCount > 1) ThisPage = ThisPage + "</ul></li>";
298						break;
299					default:
300				}
301			}
302			switch (gallerySettings.ThumbsTableLayout) {
303				case 0: //table
304					ThisPage = ThisPage + "</table>";
305					break;
306				case 1: //flow
307					ThisPage = ThisPage + "</div>";
308					break;
309				case 2: //ul
310					ThisPage = ThisPage + "</ul>";
311					break;
312				default:
313			}
314			return ThisPage;
315		} else {
316			return "";
317		}
318	};
319	gallerySettings.GetCarouselImage = function (PluginID, Image, Index, CategoryID, TotalImages) {
320		if (!gallerySettings) return "";
321		var Thumbnail = gallerySettings.ThumbnailTemplate;
322		var DefaultImageClass = "carouselImage carouselImage" + gallerySettings.PluginID;
323		if (Image.ImageUrl === "") Thumbnail = Thumbnail.Replace(/##IMAGEURLLINK##/gi, "##IMAGE##");
324		Thumbnail = Thumbnail.replace(/##STARTTHUMBLINK##/gi, "");
325		Thumbnail = Thumbnail.replace(/##CATEGORYID##/gi, CategoryID);
326		Thumbnail = Thumbnail.replace(/##INDEXID##/gi, Index);
327		Thumbnail = Thumbnail.replace(/##INCREMENT##/gi, "##CURRENTIMAGENUMBER##");
328		Thumbnail = Thumbnail.replace(/##CURRENTIMAGENUMBER##/gi, (Index + 1));
329		Thumbnail = Thumbnail.replace(/##TOTALIMAGESCOUNT##/gi, TotalImages);
330		Thumbnail = Thumbnail.replace(/##IMAGECOUNTER##/gi, "Image&nbsp;" + (Index + 1) + "&nbsp;of&nbsp;" + TotalImages);
331		Thumbnail = Thumbnail.replace(/##NOACTIONIMAGE##/gi, "##IMAGE##");
332		if (gallerySettings.ShowTooltip) {
333			Thumbnail = Thumbnail.replace(/##IMAGE##/gi, "<img onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize();\" class=\"" + DefaultImageClass + "\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\">");
334			Thumbnail = Thumbnail.replace(/##LIGHTBOXIMAGE##/gi, "<img onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize();\" style=\"cursor: pointer;\" class=\"" + DefaultImageClass + "\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\" onclick=\"_photoAlbums.a" + gallerySettings.PluginID + ".LightBox(" + Image.ImageID + ")\">");
335			Thumbnail = Thumbnail.replace(/##MAXIMAGE##/gi, "<img onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize();\" style=\"cursor: pointer;\" class=\"" + DefaultImageClass + "\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\" onclick=\"window.open('" + gallerySettings.GetImagePath(Image.ImageID) + "')\">");
336			Thumbnail = Thumbnail.replace(/##IMAGEURLLINK##/gi, "<a href=\"" + Image.ImageUrl + "\"><img onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize();\" class=\"" + DefaultImageClass + "\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\"></a>");
337		} else {
338			Thumbnail = Thumbnail.replace(/##IMAGE##/gi, "<img onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize();\" class=\"" + DefaultImageClass + "\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\">");
339			Thumbnail = Thumbnail.replace(/##LIGHTBOXIMAGE##/gi, "<img onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize();
339\" style=\"cursor: pointer;\" class=\"" + DefaultImageClass + "\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" onclick=\"_photoAlbums.a" + gallerySettings.PluginID + ".LightBox(" + Image.ImageID + ")\">");
340			Thumbnail = Thumbnail.replace(/##MAXIMAGE##/gi, "<img onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize();\" style=\"cursor: pointer;\" class=\"" + DefaultImageClass + "\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" onclick=\"window.open('" + gallerySettings.GetImagePath(Image.ImageID) + "')\">");
341			Thumbnail = Thumbnail.replace(/##IMAGEURLLINK##/gi, "<a href=\"" + Image.ImageUrl + "\"><img onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize();\" class=\"" + DefaultImageClass + "\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\"></a>");
342		}
343		Thumbnail = Thumbnail.replace(/##ENDTHUMBLINK##/gi, "");
344		Thumbnail = Thumbnail.replace(/##PLUGINID##/gi, gallerySettings.PluginID);
345		Thumbnail = Thumbnail.replace(/##ACTION##/gi, "");
346		Thumbnail = Thumbnail.replace(/##STARTIMAGEINDEX##/gi, "");
347		Thumbnail = Thumbnail.replace(/##THUMBSIZE##/gi, "");
348		Thumbnail = Thumbnail.replace(/##IMAGEID##/gi, Image.ImageID);
349		Thumbnail = Thumbnail.replace(/##IMAGETITLE##/gi, Image.ImageName);
350		Thumbnail = Thumbnail.replace(/##IMAGEDESC##/gi, Image.ImageLongDesc);
351		if (Image.ImageUrl == null) {
352			Thumbnail = Thumbnail.replace(/href=##IMAGEURL##/gi, "href=\"javascript:void(0);\"");
353			Thumbnail = Thumbnail.replace(/href='##IMAGEURL##'/gi, "href=\"javascript:void(0);\"");
354			Thumbnail = Thumbnail.replace(/href="##IMAGEURL##"/gi, "href=\"javascript:void(0);\"");
355			Thumbnail = Thumbnail.replace(/##IMAGEURL##/gi, "");
356		}
357		Thumbnail = Thumbnail.replace(/##IMAGEURL##/gi, Image.ImageUrl);
358		Thumbnail = Thumbnail.replace(/##IMAGEADDL1##/gi, Image.ImageCustom1);
359		Thumbnail = Thumbnail.replace(/##IMAGEADDL2##/gi, Image.ImageCustom2);
360		Thumbnail = Thumbnail.replace(/##IMAGEPATH##/gi, gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize);
361		Thumbnail = Thumbnail.replace(/##CATEGORIESDROP##/gi, "");
362		Thumbnail = Thumbnail.replace(/##USERTIMECONTROLS##/gi, "");
363		Thumbnail = Thumbnail.replace(/##PAUSEBTN##/gi, "");
364		Thumbnail = Thumbnail.replace(/##PREVIOUSIMAGE##/gi, "");
365		Thumbnail = Thumbnail.replace(/##NEXTIMAGE##/gi, "");
366		Thumbnail = Thumbnail.replace(/##THUMBSTABLE##/gi, "");
367		return Thumbnail;
368	};
369	gallerySettings.ChangeImageFromDrop = function (drop) {
370		var newIndex = drop.selectedIndex;
371		var dirID = (newIndex > gallerySettings.CurrentIndex) ? "nextImg" + gallerySettings.PluginID : "prevImg" + gallerySettings.PluginID;
372		gallerySettings.ChangeImage(newIndex, null, dirID);
373	};
374	gallerySettings.LoadImageDiv = function (Index, CategoryID) {
375		if (gallerySettings.DisplayType === 5) return gallerySettings.LoadPageDiv(Index);
376		var thisMaxIndex = (CategoryID) ? gallerySettings.GetMaxIndex(CategoryID) : gallerySettings.MaxIndex;
377		CategoryID = (CategoryID) ? CategoryID : gallerySettings.Category;
378		if (Index > thisMaxIndex || Index < 0) return;
379		var NewDivID = "phtGalleryWrapDiv_" + gallerySettings.PluginID + "_" + CategoryID + "_" + Index;
380		if (!$j("#" + NewDivID).length) {
381			var divIsLoaded = 1;
382			var image = gallerySettings.loadImage(gallerySettings.PluginID, CategoryID, Index);
383			if (image.indexOf(".SetLoaded('##THISDIVID##')") !== -1) {
384				image = image.replace(/##THISDIVID##/gi, NewDivID)
385				divIsLoaded = 0;
386			}
387			$j("<div/>").addClass("photoGalleryWrapDiv").attr("id", NewDivID).html(image).attr("isloaded", divIsLoaded).hide().appendTo("#photoPluginWrapper" + gallerySettings.PluginID);
388
389		}
390		return NewDivID;
391	};
392	gallerySettings.SetLoaded = function (DivID) {
393		$j("#" + DivID).attr("isloaded", "1");
394	}
395	gallerySettings.loadImage = function (PluginID, CategoryID, ImageIndex) {
396		if (!gallerySettings) return;
397		var Images;
398		if (gallerySettings.Categories.length == 1 || !gallerySettings.ShowCatDrop || CategoryID == 0) {
399			Images = gallerySettings.OrderedImages;
400		} else {
401			Images = gallerySettings.GetCategory(CategoryID).CategoryImages;
402		}
403		var Image;
404		try {
405			Image = Images[ImageIndex];
406		} catch (e) {
407			return;
408		}
409		var NextIndex = ImageIndex + 1;
410		var PrevIndex = ImageIndex - 1;
411		var NextOnClick = null;
412		var PrevOnClick = null;
413		if (PrevIndex < 0) PrevIndex = Images.length - 1;
414		if (NextIndex > Images.length - 1) NextIndex = 0;
415		NextOnClick = "_photoAlbums.a" + gallerySettings.PluginID + ".ChangeImage(" + NextIndex + ",this)";
416		PrevOnClick = "_photoAlbums.a" + gallerySettings.PluginID + ".ChangeImage(" + PrevIndex + ",this)";
417		var ImageOnload = "imageID=\"" + Image.ImageID + "\" ";
418		ImageOnload = ImageOnload + "onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".AdjustSize(); _photoAlbums.a" + gallerySettings.PluginID + ".SetLoaded('##THISDIVID##');\" ";
419		var ThisImage = gallerySettings.HtmlItemTemplate;
420		if (ThisImage.indexOf("<div style=\"display: none\"><img class=\"imagePreloader\" src=\"##IMAGEPATH##\"></div>") === 0) {
421			ThisImage = ThisImage.replace("class=\"imagePreloader\" ", "onload=\"_photoAlbums.a" + gallerySettings.PluginID + ".SetLoaded('##THISDIVID##');\" class=\"imagePreloader\" ");
422		}
423		if (Image.ImageUrl == "") ThisImage = ThisImage.replace(/##IMAGEURLLINK##/gi, "##IMAGE##");
424		if (gallerySettings.ShowTooltip) {
425			ThisImage = ThisImage.replace(/##IMAGE##/gi, "<img " + ImageOnload + "class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\" ondblclick=\"window.open('" + gallerySettings.GetImagePath(Image.ImageID) + "')\">");
426			ThisImage = ThisImage.replace(/##LIGHTBOXIMAGE##/gi, "<img " + ImageOnload + "style=\"curs
426or: pointer;\" class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\" onclick=\"_photoAlbums.a" + gallerySettings.PluginID + ".LightBox(" + Image.ImageID + ")\">");
427			ThisImage = ThisImage.replace(/##MAXIMAGE##/gi, "<img " + ImageOnload + "style=\"cursor: pointer;\" class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\" onclick=\"window.open('" + gallerySettings.GetImagePath(Image.ImageID) + "')\">");
428			ThisImage = ThisImage.replace(/##NOACTIONIMAGE##/gi, "<img " + ImageOnload + "class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\">");
429			ThisImage = ThisImage.replace(/##IMAGEURLLINK##/gi, "<a href=\"" + Image.ImageUrl + "\"><img " + ImageOnload + "class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" title=\"" + gallerySettings.TooltipValue + "\" ondblclick=\"window.open('" + gallerySettings.GetImagePath(Image.ImageID) + "')\"></a>");
430		} else {
431			ThisImage = ThisImage.replace(/##IMAGE##/gi, "<img " + ImageOnload + "class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" ondblclick=\"window.open('" + gallerySettings.GetImagePath(Image.ImageID) + "')\">");
432			ThisImage = ThisImage.replace(/##LIGHTBOXIMAGE##/gi, "<img " + ImageOnload + "style=\"cursor: pointer;\" class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" onclick=\"_photoAlbums.a" + gallerySettings.PluginID + ".LightBox(" + Image.ImageID + ")\">");
433			ThisImage = ThisImage.replace(/##MAXIMAGE##/gi, "<img " + ImageOnload + "style=\"cursor: pointer;\" class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" onclick=\"window.open('" + gallerySettings.GetImagePath(Image.ImageID) + "')\">");
434			ThisImage = ThisImage.replace(/##NOACTIONIMAGE##/gi, "<img " + ImageOnload + "class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\">");
435			ThisImage = ThisImage.replace(/##IMAGEURLLINK##/gi, "<a href=\"" + Image.ImageUrl + "\"><img " + ImageOnload + "class=\"photoAlbumImage\" border=\"0\" src=\"" + gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize + "\" ondblclick=\"window.open('" + gallerySettings.GetImagePath(Image.ImageID) + "')\"></a>");
436		}
437		ThisImage = ThisImage.replace(/##IMAGETITLE##/gi, Image.ImageName);
438		ThisImage = ThisImage.replace(/##IMAGEDESC##/gi, Image.ImageLongDesc);
439		if (Image.ImageUrl == null) {
440			ThisImage = ThisImage.replace(/href=##IMAGEURL##/gi, "href=\"javascript:void(0);\"");
441			ThisImage = ThisImage.replace(/href='##IMAGEURL##'/gi, "href=\"javascript:void(0);\"");
442			ThisImage = ThisImage.replace(/href="##IMAGEURL##"/gi, "href=\"javascript:void(0);\"");
443			ThisImage = ThisImage.replace(/##IMAGEURL##/gi, "");
444		}
445		ThisImage = ThisImage.replace(/##IMAGEURL##/gi, Image.ImageUrl);
446		ThisImage = ThisImage.replace(/##IMAGEADDL1##/gi, Image.ImageCustom1);
447		ThisImage = ThisImage.replace(/##IMAGEADDL2##/gi, Image.ImageCustom2);
448		ThisImage = ThisImage.replace(/##IMAGEPATH##/gi, gallerySettings.GetImagePath(Image.ImageID) + gallerySettings.ImageSize);
449		ThisImage = ThisImage.replace(/##PREVIOUSIMAGE##/gi, "<a class=\"prevImg" + PluginID + "\" href=\"javascript:void(0);\" onclick=\"" + PrevOnClick + "\">" + gallerySettings.UserScrollRevText + "</a>");
450		ThisImage = ThisImage.replace(/##IMAGECOUNTER##/gi, "Image&nbsp;" + (ImageIndex + 1) + "&nbsp;of&nbsp;" + Images.length);
451		ThisImage = ThisImage.replace(/##CURRENTIMAGENUMBER##/gi, (ImageIndex + 1));
452		ThisImage = ThisImage.replace(/##TOTALIMAGESCOUNT##/gi, Images.length);
453		ThisImage = ThisImage.replace(/##NEXTIMAGE##/gi, "<a class=\"nextImg" + PluginID + "\" href=\"javascript:void(0);\" onclick=\"" + NextOnClick + "\">" + gallerySettings.UserScrollFwdText + "</a>");
454		ThisImage = ThisImage.replace(/##DIVIMAGEID##/gi, "##IMAGEID##");
455		ThisImage = ThisImage.replace(/##IMAGEID##/gi, Image.ImageID);
456		ThisImage = ThisImage.replace(/##INDEXID##/gi, ImageIndex);
457		ThisImage = ThisImage.replace(/##CategoryID##/gi, CategoryID);
458		if (ThisImage.indexOf("##IMAGEDROPDOWN##") !== -1) {
459			var ImageDropString = "<select id=\"imageDrop_" + CategoryID + "_" + Image.ImageID + "\" onchange=\"_photoAlbums.a" + gallerySettings.PluginID + ".ChangeImageFromDrop(this);\" class=\"photoPlgImageDrop" + PluginID + "\">";
460			$j.each(Images, function (key, OptionImage) {
461				if (OptionImage.ImageID == Image.ImageID) {
462					ImageDropString = ImageDropString + "<option selected=\"true\" value=\"" + OptionImage.ImageID + "\">" + OptionImage.ImageName + "</option>";
463				} else {
464					ImageDropString = ImageDropString + "<option value=\"" + OptionImage.ImageID + "\">" + OptionImage.ImageName + "</option>";
465				}
466			});
467			ImageDropString = ImageDropString + "</select>";
468			ThisImage = ThisImage.replace(/##IMAGEDROPDOWN##/gi, ImageDropString);
469		}
470		return ThisImage;
471	};
472	gallerySettings.SetTimerDrops = function () {
473		if (gallerySettings.DisplayType === 5) return;
474		$j(".photoPlgTimeDrop" + gallerySettings.PluginID).each(function () {
475			$j(this).val(gallerySettings.DisplayImageTime);
476		});
477	};
478	gallerySettings.SetCategoryDrops = function () {
479		if (gallerySettings.DisplayType === 5) return;
480		$j(".photoPlgCatDrop" + gallerySettings.PluginID).each(function () {
481			$j(this).val(gallerySettings.Category);
482		});
483	};
484	gallerySettings.TransitionIn = function (CurrentDivID, NewDivID, ChangeClass) {
485
486		gallerySettings.Animated = true;
487		if (gallerySettings.PreLoadTimer) window.clearTimeout(gallerySettings.PreLoadTimer);
488		if ($j("#" + NewDivID).attr("isloaded") == "0" && gallerySettings.LoadCount < 10) {
489			gallerySettings.PreLoadTimer = window.setTimeout("_photoAlbums.a" + gallerySettings.PluginID + ".TransitionIn(\"" + CurrentDivID + "\",\"" + NewDivID + "\",\"" + ChangeClass + "\");", 1000);
490			gallerySettings.LoadCount = gallerySettings.LoadCount + 1;
491			return;
492		}
493		gallerySettings.LoadCount = 0;
494		$j("#divEmailPhoto" + gallerySettings.PluginID).hide();
495		if (ChangeClass == "swipeRight") {
496			var Show = CreateCustomTransition(2, 500, "direction: \"left\"");
497			var Hide = CreateCustomTransition(2, 500, "direction: \"right\"");
498			CustomTransition(Show, Hide, NewDivID, CurrentDivID, 0, "_photoAlbums.a" + gallerySettings.PluginID + ".TransitionComplete('" + NewDivID + "')");
499		} else if (ChangeClass == "swipeLeft") {
500			var Show = CreateCustomTransition(2, 500, "direction: \"right\"");
501			var Hide = CreateCustomTransition(2, 500, "direction: \"left\"");
502			CustomTransition(Show, Hide, NewDivID, CurrentDivID, 0, "_photoAlbums.a" + gallerySettings.PluginID + ".TransitionComplete('" + NewDivID + "')");
503		} else if (gallerySettings.TransType == 23) {
504			var CustomTransitionShowOptions = gallerySettings.CustomTransitionShowOptions;
505			var CustomTransitionHideOptions = gallerySettings.CustomTransitionHideOptions;
506			if (ChangeClass == "photoPlgCatDrop" + gallerySettings.PluginID && CustomTransitionShowOptions.indexOf("direction: \"user\"") != -1) CustomTransitionShowOptions = CustomTransitionShowOptions.replace("direction: \"user\"", "direction: \"up\"");
507			if (ChangeClass == "photoPlgCatDrop" + gallerySettings.PluginID && CustomTransitionHideOptions.indexOf("direction: \"user\"") != -1) CustomTransitionHideOptions = CustomTransitionHideOptions.replace("direction: \"user\"", "direction: \"down\"");
508			if (ChangeClass == "nextImg" + gallerySettings.PluginID && CustomTransitionShowOptions.indexOf("direction: \"user\"") != -1) CustomTransitionShowOptions = CustomTransitionShowOptions.replace("direction: \"user\"", "direction: \"right\"");
509			if (ChangeClass == "nextImg" + gallerySettings.PluginID && CustomTransitionHideOptions.indexOf("direction: \"user\"") != -1) CustomTransitionHideOptions = CustomTransitionHideOptions.replace("direction: \"user\"", "direction: \"left\"");
510			if (ChangeClass == "prevImg" + gallerySettings.PluginID && CustomTransitionShowOptions.indexOf("direction: \"user\"") != -1) CustomTransitionShowOptions = CustomTransitionShowOptions.replace("direction: \"user\"", "direction: \"left\"");
511			if (ChangeClass == "prevImg" + gallerySettings.PluginID && CustomTransitionHideOptions.indexOf("direction: \"user\"") != -1) CustomTransitionHideOptions = CustomTransitionHideOptions.replace("direction: \"user\"", "direction: \"right\"");
512			if (CustomTransitionShowOptions.indexOf("direction: \"user\"") != -1) CustomTransitionShowOptions = CustomTransitionShowOptions.replace("direction: \"user\"", "direction: \"right\"");
513			if (CustomTransitionHideOptions.indexOf("direction: \"user\"") != -1) CustomTransitionHideOptions = CustomTransitionHideOptions.replace("direction: \"user\"", "direction: \"left\"");
514			var Show = CreateCustomTransition(gallerySettings.CustomTransitionShowType, gallerySettings.CustomTransitionShowDuration, CustomTransitionShowOptions);
515			var Hide = CreateCustomTransition(gallerySettings.CustomTransitionHideType, gallerySettings.CustomTransitionHideDuration, CustomTransitionHideOptions);
516			CustomTransition(Show, Hide, NewDivID, CurrentDivID, gallerySettings.CustomTransitionOrder, "_photoAlbums.a" + gallerySettings.PluginID + ".TransitionComplete('" + NewDivID + "')");
517		} else {
518			DoTransition(gallerySettings.TransType, NewDivID, CurrentDivID, gallerySettings.TransitionDuration, "_photoAlbums.a" + gallerySettings.PluginID + ".TransitionComplete('" + NewDivID + "')");
519		}
520	};
521	gallerySettings.TransitionComplete = function (NewDivID) {
522		gallerySettings.StartRotation();
523		gallerySettings.SetTimerDrops();
524		gallerySettings.SetCategoryDrops();
525		if (gallerySettings.DisplayType !== 5) {
526			var Image = $j("#" + NewDivID).find(".photoAlbumImage");
527			if (gallerySettings.EnableEmailPhoto) gallerySettings.EmailImageLink(Image);
528			if ($j.browser.msie) $j(Image).css("display", "block");
529		}
530		gallerySettings.Animated = false;
531		$j("#" + NewDivID).css("zIndex", "");
532		gallerySettings.AfterImageChange(NewDivID);
533	};
534	gallerySettings.StopRotation = function () {
535		window.clearTimeout(gallerySettings.Timer);
536	};
537	gallerySettings.StartRotation = function () {
538		gallerySettings.AdjustSize();
539		window.clearTimeout(gallerySettings.Timer);
540		var NextIndex = (gallerySettings.CurrentIndex + 1);
541		var PrevIndex = (gallerySettings.CurrentIndex - 1);
542		if (NextIndex > gallerySettings.MaxIndex) NextIndex = 0;
543		if (PrevIndex <= 0) PrevIndex = gallerySettings.MaxIndex;
544		if (gallerySettings.DisplayType === 1) return;
545		if (gallerySettings.DisplayImageTime > 0 && gallerySettings.MaxIndex > 0) gallerySettings.Timer = window.setTimeout("_photoAlbums.a" + gallerySettings.PluginID + ".ChangeImage(" + NextIndex + ");", gallerySettings.DisplayImageTime);
546		if (gallerySettings.DisplayType === 5) {
547			if (gallerySettings.WrapPages) {
548			}
549			gallerySettings.LoadPageDiv(NextIndex);
550			gallerySettings.LoadPageDiv(PrevIndex);
551			$j("#imageCounter" + gallerySettings.PluginID).html("Page&nbsp;" + (gallerySettings.CurrentIndex + 1) + "&nbsp;of&nbsp;" + (gallerySettings.MaxIndex + 1));
552			$j("#currentImageNumber" + gallerySettings.PluginID).html(gallerySettings.CurrentIndex + 1);
553			$j("#totalImagesCount" + gallerySettings.PluginID).html(gallerySettings.MaxIndex + 1);
554		} else {
555			gallerySettings.LoadImageDiv(NextIndex);
556			/* ST-2523 = made sure div index for previous index can't be prior to 0, thus no 11 out of order */
557			if (gallerySettings.CurrentIndex != 0 && gallerySettings.CurrentIndex != 1) {
558				gallerySettings.LoadImageDiv(PrevIndex);
559			}
560		}
561	};
562	gallerySettings.AdjustSize = function () {
563		$j("#photoPluginWrapper" + gallerySettings.PluginID).height($j("#" + gallerySettings.CurrentDivID).height());
564		$j("#photoPluginWrapper" + gallerySettings.PluginID).width($j("#" + gallerySettings.CurrentDivID).width());
565	};
566	gallerySettings.MoveEmailImage = function (ImageObjID) {
567		var offset = $j("#" + ImageObjID).offset();
568		var EmailDiv = document.getElementById("divEmailPhoto" + gallerySettings.PluginID);
569		if (offset && EmailDiv) {
570			EmailDiv.style.top = offset.top;
571			EmailDiv.style.left = offset.left;
572			gallerySettings.EmailImageID = $j("#" + ImageObjID).attr("imageID");
573		}
574	};
575	gallerySettings.EmailImageLink = function (imageObj) {
576		var offset = $j(imageObj).position();
577		if (offset && gallerySettings.EmailPhotoDiv) {
578			gallerySettings.EmailPhotoDiv.css("top", offset.top);
579			gallerySettings.EmailPhotoDiv.css("left", offset.left);
580			gallerySettings.EmailPhotoDiv.show('fade', 100);
581			gallerySettings.EmailImageID = $j(imageObj).attr("imageID");
582		}
583	};
584	gallerySettings.EmailImage = function () {
585		gallerySettings.StopRotation();
586		showAxisDialog("photoPlugSettings" + gallerySettings.PluginID, {
587			onClose: function (dialogBox) { gallerySettings.StartRotation(); },
588			href: gallerySettings.EmailLink.replace("default.aspx", "dialog.aspx") + "&imageid=" + gallerySettings.EmailImageID,
589			height: 400,
590			width: 600,
591			title: "Email Photo"
592		});
593	};
594	gallerySettings.LightBox = function (ImageID) {
595		gallerySettings.StopRotation();
596		if (!gallerySettings.lightboxDiv) {
597			gallerySettings.lightboxDiv = $j("<div/>").mousemove(function () { gallerySettings.ShowControls(); }).addClass("lightBoxDiv").attr("id", "lightBox" + gallerySettings.PluginID + "Div").appendTo("body");
598			$j("<img/>").addClass("lightBoxImg").load(function () { if (!gallerySettings.LoadingAsMobile) gallerySettings.DelayImageDisplay() }).attr("id", "lightBox" + gallerySettings.PluginID + "Img").attr("align", "absmiddle").attr("border", "0").css("display", "block").appendTo(gallerySettings.lightboxDiv);
599			var toolbar = $j("<div/>").attr("id", "lightBox" + gallerySettings.PluginID + "Toolbar").addClass("lightBoxToolbar").appendTo(gallerySettings.lightboxDiv);
600			if (gallerySettings.LoadingAsMobile || gallerySettings.IsMobileBrowser) {
601				gallerySettings.lightboxDiv.addClass("mobileSploder");
602				try {
603					gallerySettings.lightboxDiv.swipe({
604						swipingLeft: function () {
605							gallerySettings.ChangeLBImage(1);
606						},
607						swipingRight: function () {
608							gallerySettings.ChangeLBImage(-1);
609						}
610					});
611				} catch (e) {
612				}
613			} else {
614				$j("<div/>").html("&laquo;&nbsp;Prev").click(function () { gallerySettings.ChangeLBImage(-1) }).attr("id", "lightBox" + gallerySettings.PluginID + "PrevDiv").addClass("lightBoxPrevDiv").appendTo(gallerySettings.lightboxDiv);
615				$j("<div/>").html("Next&nbsp;&raquo;").click(function () { gallerySettings.ChangeLBImage(1) }).attr("id", "lightBox" + gallerySettings.PluginID + "NextDiv").addClass("lightBoxNextDiv").appendTo(gallerySettings.lightboxDiv);
616				($j.browser.msie) ? toolbar.css("position", "absolute").css("bottom", "5px").css("margin-left", "5px").width("100%") : toolbar.css("margin", "-32px 10px 0");
617			}
618			$j("<div/>").html("<span id=\"lightBox" + gallerySettings.PluginID + "TitleSpan\">X / X images</span>").attr("id", "lightBox" + gallerySettings.PluginID + "TitleDiv").addClass("lightBoxTitleDiv").appendTo(toolbar);
619			$j("<div/>").html("Close X").click(function () { gallerySettings.CloseLightBox(); gallerySettings.StartRotation(); }).attr("id", "lightBox" + gallerySettings.PluginID + "CloseDiv").addClass("lightBoxCloseDiv").appendTo(toolbar);
620		}
621		if (!gallerySettings.LoadingAsMobile) {
622			if ($j("#lightBoxLoadDiv").length === 0) {
623				$j("<div/>").addClass("lightBoxLoadDiv").attr("id", "lightBoxLoadDiv").html("<img src=\"" + gallerySettings.SiteDomainPath + "/A_master/library/css/sploders/img/FusionLoading.gif\" />").appendTo("body");
624			}
625			if (gallerySettings.lightboxDiv.css("visibility") == "hidden") enableDiv("lightBoxLoadDiv", 50, 50, "true", "true");
626			$j("#grayOutDiv").click(function () { gallerySettings.CloseLightBox(); });
627		} else {
628			enableDiv("lightBox" + gallerySettings.PluginID + "Div", 0, 0, "true", "true");
629			gallerySettings.ShowControls();
630			gallerySettings.SetHeight();
631		}
632		var newSource = gallerySettings.GetImagePath(ImageID) + "&maxheight=" + ($j(window).height() - 35) + "&maxwidth=" + ($j(window).width() - 35);
633		if ($j("#lightBox" + gallerySettings.PluginID + "Img").attr("src") === newSource) gallerySettings.DelayImageDisplay();
634		$j("#lightBox" + gallerySettings.PluginID + "Img").attr("src", newSource);
635		gallerySettings.SetCount(ImageID);
636	};
637	gallerySettings.DelayImageDisplay = function () {
638		disableDiv("lightBoxLoadDiv");
639		$j("#lightBox" + gallerySettings.PluginID + "Div").show();
640		enableDiv("lightBox" + gallerySettings.PluginID + "Div", $j("#lightBox" + gallerySettings.PluginID + "Img").height(), $j("#lightBox" + gallerySettings.PluginID + "Img").width(), "true", "true");
641		$j("#lightBox" + gallerySettings.PluginID + "Div").hide();
642		$j("#lightBox" + gallerySettings.PluginID + "Div").show("fade", 200);
643		gallerySettings.ShowControls();
644	};
645	gallerySettings.CloseLightBox = function () {
646		$j("#grayOutDiv").unbind("click");
647		disableDiv("lightBox" + gallerySettings.PluginID + "Div");
648		gallerySettings.LightboxIndex = -1;
649	};
650	gallerySettings.ShowControls = function () {
651		window.clearTimeout(gallerySettings.HideControlsTimer);
652		var lbImages;
653		if (gallerySettings.Categories.length == 1 || !gallerySettings.ShowCatDrop || gallerySettings.Category == 0) {
654			lbImages = gallerySettings.OrderedImages;
655		} else {
656			lbImages = gallerySettings.GetCategory(gallerySettings.Category).CategoryImages;
657		}
658		if (lbImages.length > 1) {
659			$j("#lightBox" + gallerySettings.PluginID + "PrevDiv").show();
660			$j("#lightBox" + gallerySettings.PluginID + "NextDiv").show();
661		}
662		$j("#lightBox" + gallerySettings.PluginID + "Toolbar").show();
663		gallerySettings.HideControlsTimer = window.setTimeout("_photoAlbums.a" + gallerySettings.PluginID + ".HideControls();", (gallerySettings.LoadingAsMobile) ? 5000 : 2000);
664	};
665	gallerySettings.HideControls = function () {
666		window.clearTimeout(gallerySettings.HideControlsTimer);
667		$j("#lightBox" + gallerySettings.PluginID + "PrevDiv").hide("fade", 200, function () {
668			$j(this).css("filter", "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=75);");
669		});
670		$j("#lightBox" + gallerySettings.PluginID + "NextDiv").hide("fade", 200, function () {
671			$j(this).css("filter", "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=75);");
672		});
673		if ($j.browser.msie) {
674			$j("#lightBox" + gallerySettings.PluginID + "Toolbar").hide("fade", 200, function () { $j(this).css("filter", "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=75);"); });
675		} else {
676			$j("#lightBox" + gallerySettings.PluginID + "Toolbar").slideUp();
677		}
678	};
679	gallerySettings.SetCount = function (ImageID) {
680		var lbImages;
681		if (gallerySettings.Categories.length == 1 || !gallerySettings.ShowCatDrop || gallerySettings.Category == 0) {
682			lbImages = gallerySettings.OrderedImages;
683		} else {
684			lbImages = gallerySettings.GetCategory(gallerySettings.Category).CategoryImages;
685		}
686		if (gallerySettings.LightboxIndex === -1) {
687			for (var i = 0; i < lbImages.length; i++) {
688				if (lbImages[i].ImageID === ImageID) gallerySettings.LightboxIndex = i;
689			}
690		}
691		$j("#lightBox" + gallerySettings.PluginID + "TitleSpan").html((gallerySettings.LightboxIndex + 1) + " / " + lbImages.length + " images");
692	};
693	gallerySettings.SetHeight = function () {
694		$j("#lightBox" + gallerySettings.PluginID + "Div").css("height", getCookie("screenHeight"));
695		$j("#lightBox" + gallerySettings.PluginID + "Div").css("width", getCookie("screenWidth"));
696		window.scrollTo(0, 0);
697	};
698	gallerySettings.ChangeLBImage = function (Direction) {
699		if (gallerySettings.LoadingAsMobile) gallerySettings.SetHeight();
700		gallerySettings.ShowControls();
701		var lbImages;
702		if (gallerySettings.Categories.length == 1 || !gallerySettings.ShowCatDrop || gallerySettings.Category == 0) {
703			lbImages = gallerySettings.OrderedImages;
704		} else {
705			lbImages = gallerySettings.GetCategory(gallerySettings.Category).CategoryImages;
706		}
707		var DisplayedImageID = lbImages[gallerySettings.LightboxIndex].ImageID;
708		gallerySettings.LightboxIndex = gallerySettings.LightboxIndex + Direction;
709		if (gallerySettings.LightboxIndex === lbImages.length) gallerySettings.LightboxIndex = 0;
710		if (gallerySettings.LightboxIndex < 0) gallerySettings.LightboxIndex = lbImages.length - 1;
711		var Src = $j("#lightBox" + gallerySettings.PluginID + "Img").attr("src");
712		Src = Src.replace("ID=" + DisplayedImageID, "ID=" + lbImages[gallerySettings.LightboxIndex].ImageID);
713		$j("#lightBox" + gallerySettings.PluginID + "Img").attr("src", Src);
714		gallerySettings.SetCount(0);
715		if (!gallerySettings.LoadingAsMobile) {
716			disableDiv("lightBox" + gallerySettings.PluginID + "Div");
717			enableDiv("lightBoxLoadDiv", 50, 50, "true", "true");
718		}
719	};
720	try {
721		if (gallerySettings.LoadingAsMobile || gallerySettings.IsMobileBrowser) {
722			if (gallerySettings.DisplayType === 2 || gallerySettings.DisplayType === 3) {
723				$j('#photoPluginWrapper' + gallerySettings.PluginID).swipe({
724					swipingLeft: function () {
725						var Index = (gallerySettings.CurrentIndex + 1);
726						if (Index > gallerySettings.MaxIndex) Index = 0;
727						gallerySettings.ChangeImage(Index, null, 'swipeLeft');
728					},
729					swipingRight: function () {
730						var Index = (gallerySettings.CurrentIndex - 1);
731						if (Index <= 0) Index = gallerySettings.MaxIndex;
732						gallerySettings.ChangeImage(Index, null, 'swipeRight');
733					}
734				});
735			} else if (gallerySettings.DisplayType === 5) {
736				$j('#photoPluginWrapper' + gallerySettings.PluginID).swipe({
737					swipingLeft: function () {
738						gallerySettings.ChangePage(1, null, 'swipeLeft');
739					},
740					swipingRight: function () {
741						gallerySettings.ChangePage(-1, null, 'swipeRight');
742					}
743				});
744			}
745		}
746	} catch (e) {
747	}
748	gallerySettings.Category = gallerySettings.InitialSelectedCategory;
749	gallerySettings.SetMaxIndex();
750	if (gallerySettings.DisplayType === 5) gallerySettings.InitCarousel();
751	if (gallerySettings.DisplayType === 5) {
752		gallerySettings.CurrentDivID = gallerySettings.LoadPageDiv(0);
753	} else {
754		var startIndex = (gallerySettings.DisplayType === 1) ? Math.floor(Math.random() * ((gallerySettings.OrderedImages.length - 1) - 0 + 1)) + 0 : 0;
755		gallerySettings.CurrentDivID = gallerySettings.LoadImageDiv(startIndex);
756	}
757	$j("#" + gallerySettings.CurrentDivID).show();
758	var Image = $j("#" + gallerySettings.CurrentDivID).find(".photoAlbumImage");
759	if (gallerySettings.EnableEmailPhoto) gallerySettings.EmailImageLink(Image);
760	if (gallerySettings.DisplayType === 1) gallerySettings.DisplayImageTime = 0;
761	gallerySettings.StartRotation();
762	gallerySettings.PluginLoadFinished();
763	if (gallerySettings.DisplayType === 2 || gallerySettings.DisplayType === 3) {
764		if (gallerySettings.PreloadAllFrames) {
765			if (gallerySettings.InitialSelectedCategory === 0) {
766				$j.each(gallerySettings.OrderedImages, function (key, Image) {
767					gallerySettings.LoadImageDiv(key);
768				});
769			} else {
770				$j.each(gallerySettings.Categories, function (key, Category) {
771					$j.each(Category.CategoryImages, function (key, Image) {
772						gallerySettings.LoadImageDiv(key, Category.CategoryID);
773					})
774				});
775			}
776		} else if (gallerySettings.ShowCatDrop) {
777			$j.each(gallerySettings.Categories, function (key, Category) {
778				if (Category.CategoryID !== gallerySettings.InitialSelectedCategory) {
779					gallerySettings.LoadImageDiv(0, Category.CategoryID);
780				}
781			});
782		}
783	}
784	gallerySettings.IsLoaded = true;
785}
786function DoTransition(Type, NewDivID, CurrentDivID, Duration, RunAtEnd) {
787	$j("#" + NewDivID).css('zIndex', 50);
788	$j("#" + CurrentDivID).css('zIndex', 60);
789	switch (parseInt(Type)) {
790		case 0: //None
791			$j("#" + NewDivID).show();
792			$j("#" + CurrentDivID).hide();
793			if (RunAtEnd) setTimeout(RunAtEnd, 10);
794			break;
795		case 1: //Fade = 1
796			$j("#" + CurrentDivID).hide('fade', Duration / 2, function () {
797				$j("#" + NewDivID).show('fade', Duration / 2, function () {
798					if (RunAtEnd) setTimeout(RunAtEnd, 10);
799				});
800			});
801			break;
802		case 2: //CrossFade = 2 
803			$j("#" + NewDivID).show('fade', Duration, function () {
804				if (RunAtEnd) setTimeout(RunAtEnd, 10);
805			});
806			$j("#" + CurrentDivID).hide('fade', Duration);
807			break;
808		case 3: //SlideInRight = 3
809			$j("#" + CurrentDivID).hide('slide', { direction: 'right' }, Duration / 2, function () {
810				$j("#" + NewDivID).show('slide', { direction: 'left' }, Duration / 2, function () {
811					if (RunAtEnd) setTimeout(RunAtEnd, 10);
812				});
813			});
814			break;
815		case 4: //SlideInLeft = 4
816			$j("#" + CurrentDivID).hide('slide', { direction: 'left' }, Duration / 2, function () {
817				$j("#" + NewDivID).show('slide', { direction: 'right' }, Duration / 2, function () {
818					if (RunAtEnd) setTimeout(RunAtEnd, 10);
819				});
820			});
821			break;
822		case 5: //SlideInTop = 5
823			$j("#" + CurrentDivID).hide('slide', { direction: 'up' }, Duration / 2, function () {
824				$j("#" + NewDivID).show('slide', { direction: 'down' }, Duration / 2, function () {
825					if (RunAtEnd) setTimeout(RunAtEnd, 10);
826				});
827			});
828			break;
829		case 6: //SlideInBottom = 6
830			$j("#" + CurrentDivID).hide('slide', { direction: 'down' }, Duration / 2, function () {
831				$j("#" + NewDivID).show('slide', { direction: 'up' }, Duration / 2, function () {
832					if (RunAtEnd) setTimeout(RunAtEnd, 10);
833				});
834			});
835			break;
836		case 7: //SlideOverRight = 7
837			$j("#" + NewDivID).css('zIndex', 60);
838			$j("#" + CurrentDivID).css('zIndex', 50);
839			$j("#" + NewDivID).show('slide', { direction: 'left' }, Duration, function () {
840				$j("#" + CurrentDivID).hide();
841				if (RunAtEnd) setTimeout(RunAtEnd, 10);
842			});
843			break;
844		case 8: //SlideOverLeft = 8
845			$j("#" + NewDivID).css('zIndex', 60);
846			$j("#" + CurrentDivID).css('zIndex', 50);
847			$j("#" + NewDivID).show('slide', { direction: 'right' }, Duration, function () {
848				$j("#" + CurrentDivID).hide();
849				if (RunAtEnd) setTimeout(RunAtEnd, 10);
850			});
851			break;
852		case 9: //SlideOverTop = 9      
853			$j("#" + NewDivID).css('zIndex', 60);
854			$j("#" + CurrentDivID).css('zIndex', 50);
855			$j("#" + NewDivID).show('slide', { direction: 'down' }, Duration, function () {
856				$j("#" + CurrentDivID).hide();
857				if (RunAtEnd) setTimeout(RunAtEnd, 10);
858			});
859			break;
860		case 10: //SlideOverBottom = 10
861			$j("#" + NewDivID).css('zIndex', 60);
862			$j("#" + CurrentDivID).css('zIndex', 50);
863			$j("#" + NewDivID).show('slide', { direction: 'up' }, Duration, function () {
864				$j("#" + CurrentDivID).hide();
865				if (RunAtEnd) setTimeout(RunAtEnd, 10);
866			});
867			break;
868		case 11: //PushRight = 11
869			$j("#" + NewDivID).show('slide', { direction: 'left' }, Duration, function () {
870				if (RunAtEnd) setTimeout(RunAtEnd, 10);
871			});
872			$j("#" + CurrentDivID).hide('slide', { direction: 'right' }, Duration);
873			break;
874		case 12: //PushLeft = 12
875			$j("#" + NewDivID).show('slide', { direction: 'right' }, Duration, function () {
876				if (RunAtEnd) setTimeout(RunAtEnd, 10);
877			});
878			$j("#" + CurrentDivID).hide('slide', { direction: 'left' }, Duration);
879			break;
880		case 13: //PushTop = 13
881			$j("#" + NewDivID).show('slide', { direction: 'down' }, Duration, function () {
882				if (RunAtEnd) setTimeout(RunAtEnd, 10);
883			});
884			$j("#" + CurrentDivID).hide('slide', { direction: 'up' }, Duration);
885			break;
886		case 14: //PushBottom = 14
887			$j("#" + NewDivID).show('slide', { direction: 'up' }, Duration, function () {
888				if (RunAtEnd) setTimeout(RunAtEnd, 10);
889			});
890			$j("#" + CurrentDivID).hide('slide', { direction: 'down' }, Duration);
891			break;
892		case 15: //ShadeRight = 15
893			$j("#" + CurrentDivID).hide('blind', { direction: 'horizontal' }, Duration / 2, function () {
894				$j("#" + NewDivID).show('blind', { direction: 'horizontal' }, Duration / 2, function () {
895					if (RunAtEnd) setTimeout(RunAtEnd, 10);
896				});
897			});
898			break;
899		case 16: //ShadeLeft = 16
900			$j("#" + CurrentDivID).hide('blind', { direction: 'horizontal' }, Duration / 2, function () {
901				$j("#" + NewDivID).show('blind', { direction: 'horizontal' }, Duration / 2, function () {
902					if (RunAtEnd) setTimeout(RunAtEnd, 10);
903				});
904			});
905			break;
906		case 17: //ShadeTop = 17
907			$j("#" + CurrentDivID).hide('blind', { direction: 'vertical' }, Duration / 2, function () {
908				$j("#" + NewDivID).show('blind', { direction: 'vertical' }, Duration / 2, function () {
909					if (RunAtEnd) setTimeout(RunAtEnd, 10);
910				});
911			});
912			break;
913		case 18: //ShadeBottom = 18
914			$j("#" + CurrentDivID).hide('blind', { direction: 'vertical' }, Duration / 2, function () {
915				$j("#" + NewDivID).show('blind', { direction: 'vertical' }, Duration / 2, function () {
916					if (RunAtEnd) setTimeout(RunAtEnd, 10);
917				});
918			});
919			break;
920		case 19: //SlideOffRight = 19      
921			$j("#" + NewDivID).show();
922			$j("#" + CurrentDivID).hide('slide', { direction: 'right' }, Duration);
923			if (RunAtEnd) setTimeout(RunAtEnd, 10);
924			break;
925		case 20: //SlideOffLeft = 20
926			$j("#" + NewDivID).show();
927			$j("#" + CurrentDivID).hide('slide', { direction: 'left' }, Duration);
928			if (RunAtEnd) setTimeout(RunAtEnd, 10);
929			break;
930		case 21: //SlideOffTop = 21
931			$j("#" + NewDivID).show();
932			$j("#" + CurrentDivID).hide('slide', { direction: 'up' }, Duration);
933			if (RunAtEnd) setTimeout(RunAtEnd, 10);
934			break;
935		case 22: //SlideOffBottom = 22
936			$j("#" + NewDivID).show();
937			$j("#" + CurrentDivID).hide('slide', { direction: 'down' }, Duration);
938			if (RunAtEnd) setTimeout(RunAtEnd, 10);
939			break;
940		default:
941			$j("#" + NewDivID).show();
942			$j("#" + CurrentDivID).hide();
943			if (RunAtEnd) setTimeout(RunAtEnd, 10);
944	}
945}
946function CustomTransition(Show, Hide, ShowDivID, HideDivID, Order, RunAtEnd) {
947	switch (parseInt(Order)) {
948		case 2: //show first 
949			$j("#" + ShowDivID).css('zIndex', 60);
950			$j("#" + HideDivID).css('zIndex', 50);
951			if (Show.Type == CustomTransitionType.None) {
952				NoTransition(ShowDivID, HideDivID, Hide, Show, RunAtEnd);
953			} else {
954				$j("#" + ShowDivID).show(GetCustomTransitionVerb(Show.Type), Show.Options, Show.Duration, function () {
955					$j("#" + HideDivID).hide(GetCustomTransitionVerb(Hide.Type), Hide.Options, Hide.Duration, function () {
956						if (RunAtEnd) setTimeout(RunAtEnd, 10);
957					});
958					if (Hide.Type == CustomTransitionType.None && RunAtEnd) setTimeout(RunAtEnd, 10);
959				});
960			}
961			break;
962		case 1: //hide first    
963			$j("#" + ShowDivID).css('zIndex', 50);
964			$j("#" + HideDivID).css('zIndex', 60);
965			if (Hide.Type == CustomTransitionType.None) {
966				NoTransition(ShowDivID, HideDivID, Hide, Show, RunAtEnd);
967			} else {
968				$j("#" + HideDivID).hide(GetCustomTransitionVerb(Hide.Type), Hide.Options, Hide.Duration, function () {
969					$j("#" + ShowDivID).show(GetCustomTransitionVerb(Show.Type), Show.Options, Show.Duration, function () {
970						if (RunAtEnd) setTimeout(RunAtEnd, 10);
971					});
972					if (Show.Type == CustomTransitionType.None && RunAtEnd) setTimeout(RunAtEnd, 10);
973				});
974			}
975			break;
976		case 0: //same time
977			$j("#" + ShowDivID).css('zIndex', 60);
978			$j("#" + HideDivID).css('zIndex', 50);
979			NoTransition(ShowDivID, HideDivID, Hide, Show, RunAtEnd);
980			break;
981	}
982}
983function NoTransition(ShowDivID, HideDivID, Hide, Show, RunAtEnd) {
984	if (Hide.Duration >= Show.Duration) {
985		$j("#" + ShowDivID).show(GetCustomTransitionVerb(Show.Type), Show.Options, Show.Duration);
986		$j("#" + HideDivID).hide(GetCustomTransitionVerb(Hide.Type), Hide.Options, Hide.Duration, function () {
987			if (RunAtEnd) setTimeout(RunAtEnd, 10);
988		});
989		if (Hide.Type == CustomTransitionType.None && RunAtEnd) setTimeout(RunAtEnd, 10);
990	} else {
991		$j("#" + ShowDivID).show(GetCustomTransitionVerb(Show.Type), Show.Options, Show.Duration, function () {
992			if (RunAtEnd) setTimeout(RunAtEnd, 10);
993		});
994		$j("#" + HideDivID).hide(GetCustomTransitionVerb(Hide.Type), Hide.Options, Hide.Duration);
995	}
996}
997function CreateCustomTransition(Type, Duration, Options) {
998	var Trans = new Object;
999	Trans.Type = Type;
1000	Trans.Duration = Duration;
1001	Trans.Options = eval('(' + "{" + Options + "}" + ')');
1002	return Trans;
1003}
1004var CustomTransitionType =
1005	{
1006		"None": 0,
1007		"Fade": 1,
1008		"Slide": 2,
1009		"Blind": 3,
1010		"Clip": 4,
1011		"Drop": 5,
1012		"Explode": 6,
1013		"Fold": 7,
1014		"Puff": 8,
1015		"Scale": 9
1016	};
1017function GetCustomTransitionVerb(Type) {
1018	switch (parseInt(Type)) {
1019		case CustomTransitionType.None: return "";
1020		case CustomTransitionType.Fade: return "fade";
1021		case CustomTransitionType.Slide: return "slide";
1022		case CustomTransitionType.Blind: return "blind";
1023		case CustomTransitionType.Clip: return "clip";
1024		case CustomTransitionType.Drop: return "drop";
1025		case CustomTransitionType.Explode: return "explode";
1026		case CustomTransitionType.Fold: return "fold";
1027		case CustomTransitionType.Puff: return "puff";
1028		case CustomTransitionType.Scale: return "scale";
1029		default: return "";
1030	}
1031}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.