window.thumbnails = {};
thumbnails[7482238] = clik.newPhoto({"link":"#","caption":"J26 Logo","height":73,"id":7482238,"server_id":21,"src":"J26_Logo_Web_thumb.jpg","galleries_id":"","width":130});
thumbnails[7482265] = clik.newPhoto({"link":"#","caption":"J26 Concert Logo","height":45,"id":7482265,"server_id":21,"src":"J26_Concert_Logo_thumb.jpg","galleries_id":"","width":130});
thumbnails[8886742] = clik.newPhoto({"link":"photo_8886742.html","caption":"Concert of Concerti, Harpsichord - Tim Capes","height":73,"id":8886742,"server_id":21,"src":"J26_031211_01_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886746] = clik.newPhoto({"link":"photo_8886746.html","caption":"Concert of Concerti - Leader - Pete Johnson, Harpsichord - Tim Capes","height":87,"id":8886746,"server_id":21,"src":"J26_031211_02_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886752] = clik.newPhoto({"link":"photo_8886752.html","caption":"Concert of Concerti, Harpsichord - Tim Capes","height":163,"id":8886752,"server_id":21,"src":"J26_031211_04_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886759] = clik.newPhoto({"link":"photo_8886759.html","caption":"Concert of Concerti - Liza Stanton (Oboist)","height":73,"id":8886759,"server_id":21,"src":"J26_031211_05_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886764] = clik.newPhoto({"link":"photo_8886764.html","caption":"Concert of Concerti - Conducted by Kevin Holdgate","height":87,"id":8886764,"server_id":21,"src":"J26_031211_08_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886768] = clik.newPhoto({"link":"photo_8886768.html","caption":"Concert of Concerti - Oboist Liza Stanton","height":98,"id":8886768,"server_id":21,"src":"J26_031211_10_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886776] = clik.newPhoto({"link":"photo_8886776.html","caption":"Concert of Concerti - Flutes Kirsty Harden & Erica Clennell","height":98,"id":8886776,"server_id":21,"src":"J26_031211_14_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886781] = clik.newPhoto({"link":"photo_8886781.html","caption":"Concert of Concerti - Flutes Kirsty Harden & Erica Clennell","height":87,"id":8886781,"server_id":21,"src":"J26_031211_16_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886857] = clik.newPhoto({"link":"photo_8886857.html","caption":"Concert of Concerti","height":87,"id":8886857,"server_id":21,"src":"J26_031211_15_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886864] = clik.newPhoto({"link":"photo_8886864.html","caption":"Concert of Concerti","height":98,"id":8886864,"server_id":21,"src":"J26_031211_17_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886872] = clik.newPhoto({"link":"photo_8886872.html","caption":"Concert of Concerti - Kevin Holdgate","height":98,"id":8886872,"server_id":21,"src":"J26_031211_18_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886873] = clik.newPhoto({"link":"photo_8886873.html","caption":"Concert of Concerti","height":163,"id":8886873,"server_id":21,"src":"J26_031211_20_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886875] = clik.newPhoto({"link":"photo_8886875.html","caption":"Concert of Concerti","height":173,"id":8886875,"server_id":21,"src":"J26_031211_21_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886882] = clik.newPhoto({"link":"photo_8886882.html","caption":"Concert of Concerti","height":195,"id":8886882,"server_id":21,"src":"J26_031211_22_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886889] = clik.newPhoto({"link":"photo_8886889.html","caption":"Concert of Concerti","height":104,"id":8886889,"server_id":21,"src":"J26_031211_23_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886891] = clik.newPhoto({"link":"photo_8886891.html","caption":"Concert of Concerti","height":73,"id":8886891,"server_id":21,"src":"J26_031211_24_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886979] = clik.newPhoto({"link":"photo_8886979.html","caption":"Concert of Concerti, Harpsichord - Tim Capes","height":87,"id":8886979,"server_id":21,"src":"J26_031211_03_thumb.jpg","galleries_id":405635,"width":130});
thumbnails[8886981] = clik.newPhoto({"link":"photo_8886981.html","caption":"Concert of Concerti, Oboist - Liza Stanton, Conductor - Kevin Holdgate","height":130,"id":8886981,"server_id":21,"src":"J26_031211_09_thumb.jpg","galleries_id":405635,"width":130});

/***************************************************************************
* Create the array of Gallery objects                                      *
***************************************************************************/
var galleries = new Object();
galleries[405635] = clik.newGallery({"photoIDs":[8886742,8886746,8886752,8886759,8886764,8886768,8886776,8886781,8886857,8886864,8886872,8886873,8886875,8886882,8886889,8886891,8886979,8886981],"link":"gallery.html","skipIndex":0,"section_code":"gallery","id":405635,"parentGallery":"","featured_images":"8886981,8886979,8886891,8886889,8886882,8886875,8886873,8886872,8886864,8886857,8886781,8886776,8886764,8886759,8886752,8886746,8886742","maxRecords":0,"usePopups":false,"singleSection":true,"title":"Musicians"});/***************************************************************************
* Create the array of image sets                                           *
***************************************************************************/
var imageSets = {};
imageSets[3] = '8886981,8886979,8886891,8886889,8886882,8886875,8886873,8886872,8886864,8886857,8886781,8886776,8886764,8886759,8886752,8886746,8886742,7482265,7482238';
imageSets[2] = '8886981,8886979,8886891,8886889,8886882,8886875,8886873,8886872,8886864,8886857,8886781,8886776,8886764,8886759,8886752,8886746,8886742,7482265,7482238';
imageSets[1] = '7482265,7482238';
 /***************************************************************************
* Get a server path given an ID                                            *
***************************************************************************/
function getServerPath(server_id) {
	var val = -1;
		switch (server_id) {
		case 19:
		val = 'http://www5.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 35:
		val = 'http://admin3.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 18:
		val = 'http://www4.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 15:
		val = 'http://www3.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 34:
		val = 'http://www9.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 39:
		val = 'http://www10.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 37:
		val = 'http://admin4.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 38:
		val = 'http://admin5.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 21:
		val = 'http://www6.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 42:
		val = 'db2.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 40:
		val = 'http://www11.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 22:
		val = 'http://tpc5/clikpic/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 23:
		val = 'http://tpc10/clikpic/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 24:
		val = 'http://tpc15/clikpic/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 25:
		val = 'http://tpc16/clikpic/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 26:
		val = 'http://tpc20/clikpic/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 2:
		val = 'http://admin.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 1:
		val = 'http://www1.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 0:
		val = 'http://www.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 5:
		val = 'http://www2.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 32:
		val = 'http://www8.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 4:
		val = 'http://clikchurch.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 31:
		val = 'http://www7.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 51:
		val = 'http://www12.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 52:
		val = 'http://tpc22/clikpic/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 53:
		val = 'http://images.clikpic.com/j26orchestra/images';
		break;
	}
		switch (server_id) {
		case 50:
		val = '[cliktext value=article.servers_id type=servers_id]/j26orchestra/images';
		break;
	}
		return val;
}

/***************************************************************************
* img = reference to image object in which to show image                   *
***************************************************************************/
function showHomeImage(img) {
	imageID = randomListVal('');
	if (!basic) {
		img.src = photos[imageID].src;
		img.width = photos[imageID].width;
		img.height = photos[imageID].height;
		img.parentNode.title = img.alt = photos[imageID].caption;
	} else {
		newImage = new Image(photos[imageID].width,photos[imageID].height);
		newImage.src = photos[imageID].src;
		document.images[img.name] = newImage;
		
	}
}

function getHomeImageLink(imageID) {
  	var href='', photo = (backgrounds || photos || {})[imageID];
	if(photo){
		if (photo && photo.galleries_id != '') {
  			href = photo.fnGalleryLink();
  		}
  		  		else {
  				href += 'gallery.html';
  	  		}
	}
    return href;
}

/***************************************************************************
* Show a random image on home page from featured images                    *
***************************************************************************/
function showHomeImageInline(el, image_sets_id, href) {
	
	var css = {}, imageID,
	    imageSetsId = 1;
	if(image_sets_id){
		imageSetsId = image_sets_id;
	}
	imageID = randomListVal(imageSets[imageSetsId]);
	if (href == null && 'gallery' != '') {
					href = getHomeImageLink(imageID);
	}
	
	updateImage({nextPhoto: backgrounds[imageID], img:el.find('img')[0],
                $photo:el, $title:$('#homeimageTitleContainer'), $detail:$('#homeimageDetailsContainer'),                speed:0, href:href, css:css, onAfter: function(){                  this.closest('.contentsection').doManualAlign({				    inner: 'img',				    crop: 'a'				  });                }              });
}

/***************************************************************************
* Set 'img' to be a new image given its photo() object                     *
***************************************************************************/
function updateImage (options) {
	var defaults = {nextPhoto:'',field:'',img:'',$photo:'',$title:'',$detail:'',$detailContainer:'',
                    updateDocumentTitle:false,speed:0,href:false,css:false,updateHash:false,onAfter:null,onBefore:null},
		op = $.extend({},defaults,options),
		html = '', temp = '',
		photoId = op.nextPhoto.id,
		photoCaption = ''+op.nextPhoto.caption,
		photoSrc = op.nextPhoto.src;
	
	if (op.updateHash && clik.getIDInUrl(location.href,'photo') != op.nextPhoto.id) {
		clik.changeHash('photos_id=' + op.nextPhoto.id, true);
	}
		
	    if (op.$title.length > 0) {
  		op.$title.fadeGalleryDetails(photoCaption, op.speed);
    }
        if (op.updateDocumentTitle) {
				  document.title = ': ' + photoCaption;
			    }
        if (op.$detail.length > 0) {
      	temp = op.nextPhoto.fnGetImageDetails();
	    op.$detail.fadeGalleryDetails(temp, op.speed, function(){
			if (typeof(backgrounds) != 'undefined' && op.nextPhoto == backgrounds[op.nextPhoto.id]) {
				toggleAddToCartConfirm(backgrounds, op.$detail);
			} else if (typeof(photos) != 'undefined' && op.nextPhoto == photos[op.nextPhoto.id]) {
				toggleAddToCartConfirm(photos, op.$detail);
			}
			$('body').trigger('clikUpdate.popup');
	    });
    }
        $(op.$detailContainer).find('.replaceable[class*=replaceable_photo-]').each(function(){
    	var field = clik.getPrefixedClass(this.className, 'replaceable_photo-');
    	if (field in op.nextPhoto) {
    		$(this).fadeGalleryDetails(op.nextPhoto[field], op.speed);
    	}
    }).end().find('.replaceable.photoPayment').fadeGalleryDetails(op.nextPhoto.fnGetPaymentInfo(), op.speed, function(){
		if (typeof(backgrounds) != 'undefined' && op.nextPhoto == backgrounds[op.nextPhoto.id]) {
			toggleAddToCartConfirm(backgrounds, op.$detailContainer);
		} else if (typeof(photos) != 'undefined' && op.nextPhoto == photos[op.nextPhoto.id]) {
			toggleAddToCartConfirm(photos, op.$detailContainer);
		}
		$('body').trigger('clikUpdate.popup');
	});
		if (op.$photo.length > 0) {
		html = $('<img/>',{
			'class': 'mainphoto photo',
			src: photoSrc,
			id: 'mainPic',
			name: 'mainPic',
			width: op.nextPhoto.width,
			height: op.nextPhoto.height,
			alt: photoCaption,
			css: op.css || {}
		});
		if (op.href) {
			if (op.href.match(/<a/)) {
				html = $(op.href).append(html);
			} else {
				html = $('<a/>', {
					href: op.href,
					title: photoCaption
				}).append(html);
			}
		} else {
			html = $('<a/>', {
				title: photoCaption
			}).append(html);
		}
		if (op.speed == 0) {			op.$photo.html(html);			if (op.onBefore) {			  	op.onBefore.apply(op.$photo);			}			if (op.onAfter) {			  	op.onAfter.apply(op.$photo);			}		} else {			op.$photo.stop(true,true).fadeReplaceWith(html,op.speed,'',function(){  				if (op.onAfter) {				  	op.onAfter.apply(this);				}				clik.doColumnResize(false, $(this).add(op.$detail).add(op.$title));			}, op.onBefore);
		}	}
    if (op.field) {
		op.field.value = photoId;
	} else {
		op.$photo.data('image_id', photoId);
    }
        if (!op.speed) {
      	clik.doColumnResize(false, op.$photo.add(op.$detail).add(op.$title));
    }
        
    return html;
	}

/***************************************************************************
* Toggle add to cart confirmation element and set up the click event for   *
* the 'Add to cart' button.                                                *
***************************************************************************/
function toggleAddToCartConfirm(array, root){
	if (typeof(array) !== 'object' || array === null) {
	  	array = photos;
	}
	if (!$(root).length) {		root = $('body');	}	if($('#paymentConfirm', root).length > 0){
		$('#paymentConfirm', root).hide();
		$('#paymentAddButton', root)
		.unbind()
		.click(function(){
						form = $('#paymentForm', root)[0];
			option_id = 0;
			if(form.item_option.value){
				option_id = form.item_option.value;
			}
			if(addItemToBasket(form.item_number.value,array,form.site.value,parseInt(form.quantity.value, 10),option_id)){
				if($.browser.msie){$('#paymentConfirm', root).text('Item added to cart').show();}
				else{
					$('#paymentConfirm', root).text('Item added to cart').fadeIn();
					dspOrderDetails(form.site.value);
				}
			}
			else{
				$('#paymentConfirm', root).text('Item not added - check cookies are enabled in your browser.').fadeIn();
			}
		});
	}
}

/***************************************************************************
* Get payment info for image - add as 'method' to photo object             *
***************************************************************************/
clik.photo.fnGetImageDetails = function(){
	var temp = '';
	if (this.description != '') {
		temp +=  '<div id="imageDescription">' + this.description + '</div>';
	}
		if (this.photo_ref != '') {
		temp += '<div class="imageinfo" id="imageRef"><strong>Ref: </strong>' + this.photo_ref + '</div>';
	}
		if (this.takendate != '') {
		
		temp += '<div class="imageinfo" id="imageDate"><strong>Date: </strong>' + this.takendate + '</div>';
	}
	
	if (this.location != '') {
		
		temp += '<div class="imageinfo" id="imageLocation"><strong>Location: </strong>' +  this.location + '</div>';
	}
	
	if (this.photographer != '') {
		
		temp += '<div class="imageinfo" id="imagePhotographer"><strong>Photographer: </strong>' + this.photographer + '</div>';
	}
			
				if (temp != '') {
		temp += '<div class="spacer"></div>';
	}
	return temp;
};

/***************************************************************************
* Get payment info for image - add as 'method' to photo object             *
***************************************************************************/
clik.photo.fnGetPaymentInfo = function(){
	var temp = '';
	if (this.item_price !== '') {
				temp += '<p>Order this print:</p>';
				temp += '<div class="imageinfo" id="imagePrice"><strong>' + this.purchase_instruction + '</strong> ' + (this.item_price).toFixed(2) + '</div>';
		var item_name  = this.purchase_instruction;
		var amount = (this.item_price).toFixed(2);
		var item_option  = 0;
	}
		else {
		
	}
	if (this.item_price !== '') {
			temp += '<div class="clearing">&nbsp;</div>';
	}
	return temp;};

/***************************************************************************
* Pick a photo at random from the featured images of a gallery.            *
* Gallery_id = id of gallery to choose,                                    *
* img = reference to html image in                                         *
* which to show image                                                      *
***************************************************************************/
function showGalleryImage(gallery_id, img, updateLink) {
	
	if(img){
		if (location.hash.match('galleries_id=' + gallery_id) && (imageID = location.hash.match('.*photos_id=(.+)$'))) {
		  	imageID = imageID[1];
		} else {
		  	imageID = randomListVal(galleries[gallery_id].featured_images);
		}
		
		if (imageID != 0) {
			img.src = thumbnails[imageID].src;
			img.width = thumbnails[imageID].width;
			img.height = thumbnails[imageID].height;
			img.alt = galleries[gallery_id].title;
			if (updateLink) {
				$(img).parent().attr({					title: galleries[gallery_id].title				}).filter(function(){return this.href;}).attr({					href: thumbnails[imageID].fnGalleryLink(gallery_id)				});
			}
		}
	}
}

/***************************************************************************
* If we have dynamic HTML, replace the galleries link with a list that     *
* doesn't include thecurrent gallery                                       *
***************************************************************************/
function showGalleries(gallery_id) {
		
	
	if (!basic) {
		temp = '';
		for (i = 0; i < galleries.length; i++) {
						
			
			if (galleries[i].id != gallery_id) {
								
				if (temp != '') {
					temp += ' | ';
				}
								temp += '<a href="' + galleries[i].section_code + '_' + galleries[i].id + '.html">' + galleries[i].title + '</a>';
							}
		}
		document.all.galleryLinks.innerHTML = 'Other galleries: ' + temp;
	}
}

		

