﻿// cGallery v 0.2 Beta

/*
 * FancyBox - simple and fancy jQuery plugin
 * Examples and documentation at: http://fancy.klade.lv/
 * Version: 1.2.1 (13/03/2009)
 * Copyright (c) 2009 Janis Skarnelis
 * Licensed under the MIT License: http://en.wikipedia.org/wiki/MIT_License
 * Requires: jQuery v1.3+
*/
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}(';(7($){$.b.2Q=7(){u B.2t(7(){9 1J=$(B).n(\'2Z\');5(1J.1c(/^3w\\(["\']?(.*\\.2p)["\']?\\)$/i)){1J=3t.$1;$(B).n({\'2Z\':\'45\',\'2o\':"3W:3R.4m.4d(3h=F, 3T="+($(B).n(\'41\')==\'2J-3Z\'?\'4c\':\'3N\')+", Q=\'"+1J+"\')"}).2t(7(){9 1b=$(B).n(\'1b\');5(1b!=\'2e\'&&1b!=\'2n\')$(B).n(\'1b\',\'2n\')})}})};9 A,4,16=D,s=1t 1o,1w,1v=1,1y=/\\.(3A|3Y|2p|3c|3d)(.*)?$/i;9 P=($.2q.3K&&2f($.2q.3z.2k(0,1))<8);$.b.c=7(Y){Y=$.3x({},$.b.c.2R,Y);9 2s=B;7 2h(){A=B;4=Y;2r();u D};7 2r(){5(16)u;5($.1O(4.2c)){4.2c()}4.j=[];4.h=0;5(Y.j.N>0){4.j=Y.j}t{9 O={};5(!A.1H||A.1H==\'\'){9 O={d:A.d,X:A.X};5($(A).1G("1m:1D").N){O.1a=$(A).1G("1m:1D")}4.j.2j(O)}t{9 Z=$(2s).2o("a[1H="+A.1H+"]");9 O={};3C(9 i=0;i<Z.N;i++){O={d:Z[i].d,X:Z[i].X};5($(Z[i]).1G("1m:1D").N){O.1a=$(Z[i]).1G("1m:1D")}4.j.2j(O)}3F(4.j[4.h].d!=A.d){4.h++}}}5(4.23){5(P){$(\'1U, 1Q, 1P\').n(\'1S\',\'3s\')}$("#1i").n(\'25\',4.2U).J()}1d()};7 1d(){$("#1f, #1e, #V, #G").S();9 d=4.j[4.h].d;5(d.1c(/#/)){9 U=11.3r.d.3f(\'#\')[0];U=d.3g(U,\'\');U=U.2k(U.2l(\'#\'));1k(\'<6 l="3e">\'+$(U).o()+\'</6>\',4.1I,4.1x)}t 5(d.1c(1y)){s=1t 1o;s.Q=d;5(s.3a){1K()}t{$.b.c.34();$(s).x().14(\'3b\',7(){$(".I").S();1K()})}}t 5(d.1c("17")||A.3j.2l("17")>=0){1k(\'<17 l="35" 3q="$.b.c.38()" 3o="3n\'+C.T(C.3l()*3m)+\'" 2K="0" 3E="0" Q="\'+d+\'"></17>\',4.1I,4.1x)}t{$.4p(d,7(2m){1k(\'<6 l="3L">\'+2m+\'</6>\',4.1I,4.1x)})}};7 1K(){5(4.30){9 w=$.b.c.1n();9 r=C.1M(C.1M(w[0]-36,s.g)/s.g,C.1M(w[1]-4b,s.f)/s.f);9 g=C.T(r*s.g);9 f=C.T(r*s.f)}t{9 g=s.g;9 f=s.f}1k(\'<1m 48="" l="49" Q="\'+s.Q+\'" />\',g,f)};7 2F(){5((4.j.N-1)>4.h){9 d=4.j[4.h+1].d;5(d.1c(1y)){1A=1t 1o();1A.Q=d}}5(4.h>0){9 d=4.j[4.h-1].d;5(d.1c(1y)){1A=1t 1o();1A.Q=d}}};7 1k(1j,g,f){16=F;9 L=4.2Y;5(P){$("#q")[0].1E.2u("f");$("#q")[0].1E.2u("g")}5(L>0){g+=L*2;f+=L*2;$("#q").n({\'v\':L+\'z\',\'2E\':L+\'z\',\'2i\':L+\'z\',\'y\':L+\'z\',\'g\':\'2B\',\'f\':\'2B\'});5(P){$("#q")[0].1E.2C(\'f\',\'(B.2D.4j - 20)\');$("#q")[0].1E.2C(\'g\',\'(B.2D.3S - 20)\')}}t{$("#q").n({\'v\':0,\'2E\':0,\'2i\':0,\'y\':0,\'g\':\'2z%\',\'f\':\'2z%\'})}5($("#k").1u(":19")&&g==$("#k").g()&&f==$("#k").f()){$("#q").1Z("2N",7(){$("#q").1C().1F($(1j)).21("1s",7(){1g()})});u}9 w=$.b.c.1n();9 2v=(g+36)>w[0]?w[2]:(w[2]+C.T((w[0]-g-36)/2));9 2w=(f+1z)>w[1]?w[3]:(w[3]+C.T((w[1]-f-1z)/2));9 K={\'y\':2v,\'v\':2w,\'g\':g+\'z\',\'f\':f+\'z\'};5($("#k").1u(":19")){$("#q").1Z("1s",7(){$("#q").1C();$("#k").24(K,4.2X,4.2T,7(){$("#q").1F($(1j)).21("1s",7(){1g()})})})}t{5(4.1W>0&&4.j[4.h].1a!==1L){$("#q").1C().1F($(1j));9 M=4.j[4.h].1a;9 15=$.b.c.1R(M);$("#k").n({\'y\':(15.y-18)+\'z\',\'v\':(15.v-18)+\'z\',\'g\':$(M).g(),\'f\':$(M).f()});5(4.1X){K.25=\'J\'}$("#k").24(K,4.1W,4.2W,7(){1g()})}t{$("#q").S().1C().1F($(1j)).J();$("#k").n(K).21("1s",7(){1g()})}}};7 2y(){5(4.h!=0){$("#1e, #2O").x().14("R",7(e){e.2x();4.h--;1d();u D});$("#1e").J()}5(4.h!=(4.j.N-1)){$("#1f, #2M").x().14("R",7(e){e.2x();4.h++;1d();u D});$("#1f").J()}};7 1g(){2y();2F();$(W).1B(7(e){5(e.29==27){$.b.c.1l();$(W).x("1B")}t 5(e.29==37&&4.h!=0){4.h--;1d();$(W).x("1B")}t 5(e.29==39&&4.h!=(4.j.N-1)){4.h++;1d();$(W).x("1B")}});5(4.1r){$(11).14("1N 1T",$.b.c.2g)}t{$("6#k").n("1b","2e")}5(4.2b){$("#22").R($.b.c.1l)}$("#1i, #V").14("R",$.b.c.1l);$("#V").J();5(4.j[4.h].X!==1L&&4.j[4.h].X.N>0){$(\'#G 6\').o(4.j[4.h].X);$(\'#G\').J()}5(4.23&&P){$(\'1U, 1Q, 1P\',$(\'#q\')).n(\'1S\',\'19\')}5($.1O(4.2a)){4.2a()}16=D};u B.x(\'R\').R(2h)};$.b.c.2g=7(){9 m=$.b.c.1n();$("#k").n(\'y\',(($("#k").g()+36)>m[0]?m[2]:m[2]+C.T((m[0]-$("#k").g()-36)/2)));$("#k").n(\'v\',(($("#k").f()+1z)>m[1]?m[3]:m[3]+C.T((m[1]-$("#k").f()-1z)/2)))};$.b.c.1h=7(H,2A){u 2f($.3I(H.3u?H[0]:H,2A,F))||0};$.b.c.1R=7(H){9 m=H.4g();m.v+=$.b.c.1h(H,\'3k\');m.v+=$.b.c.1h(H,\'3J\');m.y+=$.b.c.1h(H,\'3H\');m.y+=$.b.c.1h(H,\'3D\');u m};$.b.c.38=7(){$(".I").S();$("#35").J()};$.b.c.1n=7(){u[$(11).g(),$(11).f(),$(W).3i(),$(W).3p()]};$.b.c.2G=7(){5(!$("#I").1u(\':19\')){33(1w);u}$("#I > 6").n(\'v\',(1v*-40)+\'z\');1v=(1v+1)%12};$.b.c.34=7(){33(1w);9 m=$.b.c.1n();$("#I").n({\'y\':((m[0]-40)/2+m[2]),\'v\':((m[1]-40)/2+m[3])}).J();$("#I").14(\'R\',$.b.c.1l);1w=3Q($.b.c.2G,3X)};$.b.c.1l=7(){16=F;$(s).x();$("#1i, #V").x();5(4.2b){$("#22").x()}$("#V, .I, #1e, #1f, #G").S();5(4.1r){$(11).x("1N 1T")}1q=7(){$("#1i, #k").S();5(4.1r){$(11).x("1N 1T")}5(P){$(\'1U, 1Q, 1P\').n(\'1S\',\'19\')}5($.1O(4.1V)){4.1V()}16=D};5($("#k").1u(":19")!==D){5(4.26>0&&4.j[4.h].1a!==1L){9 M=4.j[4.h].1a;9 15=$.b.c.1R(M);9 K={\'y\':(15.y-18)+\'z\',\'v\':(15.v-18)+\'z\',\'g\':$(M).g(),\'f\':$(M).f()};5(4.1X){K.25=\'S\'}$("#k").31(D,F).24(K,4.26,4.2S,1q)}t{$("#k").31(D,F).1Z("2N",1q)}}t{1q()}u D};$.b.c.2V=7(){9 o=\'\';o+=\'<6 l="1i"></6>\';o+=\'<6 l="22">\';o+=\'<6 p="I" l="I"><6></6></6>\';o+=\'<6 l="k">\';o+=\'<6 l="2I">\';o+=\'<6 l="V"></6>\';o+=\'<6 l="E"><6 p="E 44"></6><6 p="E 43"></6><6 p="E 42"></6><6 p="E 3V"></6><6 p="E 3U"></6><6 p="E 3O"></6><6 p="E 3M"></6><6 p="E 3P"></6></6>\';o+=\'<a d="2P:;" l="1e"><1p p="1Y" l="2O"></1p></a><a d="2P:;" l="1f"><1p p="1Y" l="2M"></1p></a>\';o+=\'<6 l="q"></6>\';o+=\'<6 l="G"></6>\';o+=\'</6>\';o+=\'</6>\';o+=\'</6>\';$(o).2H("46");$(\'<32 4i="0" 4h="0" 4k="0"><2L><13 p="G" l="4l"></13><13 p="G" l="4o"><6></6></13><13 p="G" l="4n"></13></2L></32>\').2H(\'#G\');5(P){$("#2I").47(\'<17 p="4a" 4e="2J" 2K="0"></17>\');$("#V, .E, .G, .1Y").2Q()}};$.b.c.2R={2Y:10,30:F,1X:D,1W:0,26:0,2X:3G,2W:\'28\',2S:\'28\',2T:\'28\',1I:3B,1x:3v,23:F,2U:0.3,2b:F,1r:F,j:[],2c:2d,2a:2d,1V:2d};$(W).3y(7(){$.b.c.2V()})})(4f);',62,274,'||||opts|if|div|function||var||fn|fancybox|href||height|width|itemCurrent||itemArray|fancy_outer|id|pos|css|html|class|fancy_content||imagePreloader|else|return|top||unbind|left|px|elem|this|Math|false|fancy_bg|true|fancy_title|el|fancy_loading|show|itemOpts|pad|orig_item|length|item|isIE|src|click|hide|round|target|fancy_close|document|title|settings|subGroup||window||td|bind|orig_pos|busy|iframe||visible|orig|position|match|_change_item|fancy_left|fancy_right|_finish|getNumeric|fancy_overlay|value|_set_content|close|img|getViewport|Image|span|__cleanup|centerOnScroll|normal|new|is|loadingFrame|loadingTimer|frameHeight|imageRegExp|50|objNext|keydown|empty|first|style|append|children|rel|frameWidth|image|_proceed_image|undefined|min|resize|isFunction|select|object|getPosition|visibility|scroll|embed|callbackOnClose|zoomSpeedIn|zoomOpacity|fancy_ico|fadeOut||fadeIn|fancy_wrap|overlayShow|animate|opacity|zoomSpeedOut||swing|keyCode|callbackOnShow|hideOnContentClick|callbackOnStart|null|absolute|parseInt|scrollBox|_initialize|bottom|push|substr|indexOf|data|relative|filter|png|browser|_start|matchedGroup|each|removeExpression|itemLeft|itemTop|stopPropagation|_set_navigation|100|prop|auto|setExpression|parentNode|right|_preload_neighbor_images|animateLoading|appendTo|fancy_inner|no|frameborder|tr|fancy_right_ico|fast|fancy_left_ico|javascript|fixPNG|defaults|easingOut|easingChange|overlayOpacity|build|easingIn|zoomSpeedChange|padding|backgroundImage|imageScale|stop|table|clearInterval|showLoading|fancy_frame|||showIframe||complete|load|bmp|jpeg|fancy_div|split|replace|enabled|scrollLeft|className|paddingTop|random|1000|fancy_iframe|name|scrollTop|onload|location|hidden|RegExp|jquery|355|url|extend|ready|version|jpg|425|for|borderLeftWidth|hspace|while|300|paddingLeft|curCSS|borderTopWidth|msie|fancy_ajax|fancy_bg_w|scale|fancy_bg_sw|fancy_bg_nw|setInterval|DXImageTransform|clientWidth|sizingMethod|fancy_bg_s|fancy_bg_se|progid|66|gif|repeat||backgroundRepeat|fancy_bg_e|fancy_bg_ne|fancy_bg_n|none|body|prepend|alt|fancy_img|fancy_bigIframe|60|crop|AlphaImageLoader|scrolling|jQuery|offset|cellpadding|cellspacing|clientHeight|border|fancy_title_left|Microsoft|fancy_title_right|fancy_title_main|get'.split('|'),0,{}))
 
// Not used at the current in point but stil required
function saveSort(e, ui) {
	//alert( $(ui.item).find(".ItemName").attr("value") );
}

/* updateSortImageGallery - Funciton used to update the sort order of images using the drag and drop sorting in the media gallery

	e - the event object
	ui - an object container several objects passed back by jquery
	
*/

function setImageDisplay(container) {
	
	container.fancybox({ 'zoomSpeedIn': 500, 'zoomSpeedOut': 500, 'overlayShow': true, 'imageScale': true, 'hideOnContentClick': false, 'zoomOpacity': true });

}

function updateSortImageGallery(e, ui) {
	
	// Get the required values for the ajax call
	var galID = $("#GalleryID").val();
	var catID = $("#CategoryID").val();
	var itemID = $(ui.item).find(".ItemID").val();
	
	var updatePage = $("#UpdatePage").val();
	
	var sortOrder = 0;
	var sOrdCount = 1;
	
	// Initalize a random number to fuck of the ie cache
	var RandCache = Math.ceil( Math.random() * 1000000 );
	
	// Search through each Panel in the column to determine position of current panel
	$("div.cGalThumb").each(function(e) {
		
		if ( this.id == $(ui.item).attr("id") ) { // Found the current panels so set its sort order
			// Found Position for moved item
			sortOrder = sOrdCount;
			//break;
		} else {
			sOrdCount++;
		}
	});
	
	// Ajax update a go using a get request
	$.get(updatePage, { ObjectID: galID, CatID: catID, ItemID: itemID, SortOrder: sortOrder, foc: RandCache } );
	
	
}

function loadImage(image, placement) {
	
	var img = new Image();
	
	$(img).load(function () {

		$(this).hide();
		$(placement).css("height", $(placement).find('img').height() );
		$(placement).children("img").remove();
		
		$(placement).append('<img src="' + img.src + '" />');
		$(placement).animate( { height: $(placement).find('img').height() }, 500, function(){
			$(placement).fadeTo( 1000, 1 );
		} );
		//$(placement).fadeIn();
	}).error(function () {	// notify the user that the image could not be loaded
	}).attr('src', image);
	
}

/* cGallery Setup Function - Run this to initalize the gallery 

	interfaceStyle - The type of page the gallery is being setup on, can either be admin, user or imageGallery.
						Admin is for the product and imageGallery admin pages
						user is for the user product view
						imageGallery is for the media gallery view
	container - The overall container to use when searching for gallery items
	module - Used to distinguish between certain item types, currently only has 1 option, imagegalleryadmin, use this when the admin page is the media gallery
*/					
 
function cGallerySetup(interfaceStyle, container, module ) {

 	if ( interfaceStyle == "admin" ) {
		
		// Border animaion colours
	 	var borderToColor = "#ddd";
	 	var borderFromColor = "#666";
	 	 	
	 	// Assign border animations
	 	$(container).find("img.ImageThumb").hover(function() {
	 		$(this).animate({borderTopColor: borderToColor}, {queue: false});
	 		$(this).animate({borderLeftColor: borderToColor}, {queue: false});
	 		$(this).animate({borderRightColor: borderToColor}, {queue: false});
	 		$(this).animate({borderBottomColor: borderToColor}, {queue: false});
	 	}, function() {
	 		$(this).animate({borderTopColor: borderFromColor}, {queue: false});
	 		$(this).animate({borderLeftColor: borderFromColor}, {queue: false});
	 		$(this).animate({borderRightColor: borderFromColor}, {queue: false});
	 		$(this).animate({borderBottomColor: borderFromColor}, {queue: false});
	 	});
	 	
	 	// Uncomment this line for lightbox effects in the administration pages - commented out for debugging purposes
	 	setImageDisplay( $(container).find("a") );
	 	
	 	// Setup sortable containers - ImageGalleryAdmin sortable assigns a different event for when the sorting is finished to fire off the ajax call to update the sort order
	 	if ( module == "ImageGalleryAdmin") {
	 		$(container).sortable({ items: "div.cGalThumb", cancel: "a", opacity: "0.8", scroll: true, zIndex: "500", tolerance: "pointer", placeholder: "dropArea", stop: updateSortImageGallery, forcePlaceholderSize: true, revert: true });
	 	} else {
	 		$(container).sortable({ items: "div.cGalThumb", cancel: "a", opacity: "0.8", scroll: true, zIndex: "500", tolerance: "pointer", placeholder: "dropArea", stop: saveSort, forcePlaceholderSize: true, revert: true });
	 	}
 	
 	} else if ( interfaceStyle == "user" ) {
 		
 		// Setup the purdy big view
 		setImageDisplay( $(container).find("a") );
 		
 		// For each small thumbnail size image...
 		$(container).find("a.sImageLink").each(function(e) {
 				 		
	 		// ... Assign a function to the onclick event....
	 		$(this).unbind();
	 		
	 		$(this).click(function() {
	 			
	 			// Get paths and variables needed
	 			var fullSizeSrc = $(this).attr("href");
	 			var desc = $(this).attr("title");
	 			var largeSizeSrc = $(this).find("img").attr("lsrc");
	 			
	 			// Find the larger image, fade it out...
	 			$(container).find("a.lImageLink").fadeTo( 1 , 0, function() { 
	 				
	 				// Change the html in the container to reference the new image
					$(container).find("a.lImageLink").attr("href", fullSizeSrc);
					$(container).find("a.lImageLink").attr("title", desc);
					loadImage( largeSizeSrc, container + " a.lImageLink" );
	 					 				
	 			});
	 			
	 			return false;
	 		});
	 		
 		});
 		
 	} else if ( interfaceStyle == "userWithBundlePictures" ) {
 		
 		// Setup the purdy big view
 		setImageDisplay( $(container).find("a") );
 		
 		// For each small thumbnail size image...
 		$(container).find("a.sImageLink").each(function(e) {
 				 		
	 		// ... Assign a function to the onclick event....
	 		$(this).unbind();
	 		
	 		$(this).click(function() {
	 			
	 			// Get paths and variables needed
	 			var fullSizeSrc = $(this).attr("href");
	 			var desc = $(this).attr("title");
	 			var largeSizeSrc = $(this).find("img").attr("lsrc");
	 			
	 			// Find the larger image, fade it out...
	 			$(container).find("a.lImageLink").fadeTo( 1 , 0, function() { 
	 				
	 				// Change the html in the container to reference the new image
					$(container).find("a.lImageLink").attr("href", fullSizeSrc);
					$(container).find("a.lImageLink").attr("title", desc);
					loadImage( largeSizeSrc, container + " a.lImageLink" );
	 					 				
	 			});
	 			
	 			return false;
	 		});
	 		
 		});
 		
 	} else if ( interfaceStyle == "ImageGallery" ) {
 		
 		// Setup light box events
 		setImageDisplay( $(container).find("a") );
	
 		// For each small thumbnail image.......
 		$(container).find("a.sImageLink").each(function(e) {
 			
 			$(this).unbind();
 				 		
	 		// .. Assign a function to the onclick event for each a link....
	 		$(this).click(function() {
	 		
	 			// Get needed paths and variables
	 			var fullSizeSrc = $(this).attr("href");
	 			var title = $(this).find("img").attr("title");
	 			var desc = $(this).parent().next(".ImageDescription").html();
	 			var largeSizeSrc = $(this).find("img").attr("lsrc");
	 			
	 			var element = '<a class="lImageLink" rel="ImageGallery" href="' + fullSizeSrc + '"><img src="' + largeSizeSrc + '" alt="' + title + '" /></a>';
	 			
	 			// Find the larger image view and fade out, once faded make a callback...
	 			$(container).find("div.LargeImageView").fadeTo( 1 , 0, function() { 
	 				// ...And replace the html to point to the new image.
	 				loadMedia( element, container + " div.LargeImageView", "Image" );
	 				
	 				setImageDisplay( $(container).find("a.lImageLink") );

	 				// Set Show/Reset Hide the description depending on if there is description content
	 				if( desc != "" ) {
		 				$(container).find("div.ImageDesc").show();
	 					$(container).find("div.ImageDesc").html(desc);
	 				} else {
	 					$(container).find("div.ImageDesc").hide();
	 					$(container).find("div.ImageDesc").html("");
	 				}

	 			});
	 			
	 			return false;
	 		});
 		});
 		
 		$(container).find("a.sYoutubeLink").each(function(e) {
 			
 			$(this).unbind();
 				 		
	 		// .. Assign a function to the onclick event for each a link....
	 		$(this).click(function() {
	 		
	 			// Get needed paths and variables
	 			var fullSizeSrc = $(this).attr("href");
	 			var title = $(this).find("img").attr("title");
	 			var desc = $(this).parent().next(".ImageDescription").html();
	 			
	 			var element = '<object style="width:480px; height:385px;">' +
						        '<param name="movie" value="http://www.youtube-nocookie.com/v/' + fullSizeSrc + '&amp;hl=en&amp;fs=1&amp;rel=0"></param>' +
						        '<param name="allowFullScreen" value="true"></param>' +
						        '<param name="allowscriptaccess" value="always"></param>' +
						        '<embed src="http://www.youtube-nocookie.com/v/' + fullSizeSrc + '&amp;hl=en&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" style="width:480px; height:385px;" />' +
						      '</object>';
	 			
				// ...And replace the html to point to the new image.	 					 				
				loadMedia( element, container + " div.LargeImageView", "Youtube" );
	
				// Set Show/Reset Hide the description depending on if there is description content
				if( desc != "" ) {
	 				$(container).find("div.ImageDesc").show();
					$(container).find("div.ImageDesc").html(desc);
				} else {
					$(container).find("div.ImageDesc").hide();
					$(container).find("div.ImageDesc").html("");
				}
	 			
	 			return false;
	 		});
 		});
 		
 		$(container).find("a.sAudioLink").each(function(e) {
 			
 			$(this).unbind();
 				 		
	 		// .. Assign a function to the onclick event for each a link....
	 		$(this).click(function() {
	 		
	 			// Get needed paths and variables
	 			var url = $(this).attr("href");
	 			var title = $(this).find("img").attr("title");
	 			var desc = $(this).parent().next(".ImageDescription").html();
	 			var thumbnail = $(this).attr("rel");
	 			
	 			var element = "";
	 			
	 			if ( thumbnail != "" ) {
	 				element = '<img src="' + thumbnail +'" alt="" />';
	 			}
	 			
	 			element += '<object codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" style="margin:auto; width:450px; height:27px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"><param name="_cx" value="10583" /><param name="_cy" value="714" /><param name="FlashVars" value="" /><param name="Movie" value="http://www.google.com/reader/ui/3247397568-audio-player.swf?audioUrl=' + escape(url) + '" /><param name="Src" value="http://www.google.com/reader/ui/3247397568-audio-player.swf?audioUrl=' + escape(url) + '" /><param name="WMode" value="Embed" /><param name="Play" value="0" /><param name="Loop" value="-1" /><param name="Quality" value="High" /><param name="SAlign" value="LT" /><param name="Menu" value="-1" /><param name="Base" value="" /><param name="AllowScriptAccess" value="never" /><param name="Scale" value="NoScale" /><param name="DeviceFont" value="0" /><param name="EmbedMovie" value="1" /><param name="BGColor" value="" /><param name="SWRemote" value="" /><param name="MovieData" value="" /><param name="SeamlessTabbing" value="1" /><param name="Profile" value="0" /><param name="ProfileAddress" value="" /><param name="ProfilePort" value="0" /><param name="AllowNetworking" value="all" /><param name="AllowFullScreen" value="false" /><embed type="application/x-shockwave-flash" src="http://www.google.com/reader/ui/3247397568-audio-player.swf?audioUrl=' + escape(url) + '" style="margin:auto; width:450px; height:27px;" /></object>';
	 			
				// ...And replace the html to point to the new image.	 					 				
				loadMedia( element, container + " div.LargeImageView", "Audio");
	
				// Set Show/Reset Hide the description depending on if there is description content
				if( desc != "" ) {
	 				$(container).find("div.ImageDesc").show();
					$(container).find("div.ImageDesc").html(desc);
				} else {
					$(container).find("div.ImageDesc").hide();
					$(container).find("div.ImageDesc").html("");
				}
	 			
	 			return false;
	 		});
 		});



 	}
}

function loadMedia( element, container, type, src ) {
	
	if ( type == "Youtube" ) {
		
		$(container).html(element);
		//$(container).fadeTo( 1000, 1 );
		
	} else if ( type == "Image" ) {
		
		$(container).html(element);
		
		var img = new Image();
		var imageSrc = $(container).find("img").attr("src");
	
		$(img).load(function () {
			$(this).hide();
			$(container).find("img").remove();
			
			$(container).find("a").append('<img alt="" src="' + img.src + '" />');
			$(container).fadeTo( 1000, 1 );
		}).error(function () {	// notify the user that the image could not be loaded
		}).attr('src', imageSrc);
		
	} else if ( type == "Audio" ) {
		
		$(container).html(element);
		//$(container).find("embed").attr('src', src);
		//$(container).find("param[name = 'Movie']").attr('value', src);
		//$(container).find("param[name = 'Src']").attr('value', src);
		$(container).fadeTo( 1000, 1 );
		
	}
	
}


