window.thumbnails = new Object();
												thumbnails[8027395] = new thumbnail(8027395,'8257','Power Sources','Power_Sources_thumb.jpg',130, 63,15,'photo_8027395.html');
												thumbnails[8027405] = new thumbnail(8027405,'8258','Financial Meltdown','Financial_Meltdown_thumb.jpg',130, 198,15,'photo_8027405.html');
												thumbnails[8027444] = new thumbnail(8027444,'8257','','wind_power_thumb.jpg',130, 61,15,'photo_8027444.html');
												thumbnails[8027447] = new thumbnail(8027447,'431049','','Waiting_to_Cast_Off_thumb.jpg',130, 169,15,'photo_8027447.html');
												thumbnails[8027450] = new thumbnail(8027450,'431049','','Waiting_to_Cast_Off1_thumb.jpg',130, 169,15,'photo_8027450.html');
												thumbnails[100964] = new thumbnail(100964,'8258','Triangulation','Triangulation_thumb.jpg',130, 315,15,'photo_100964.html');
												thumbnails[180817] = new thumbnail(180817,'8257','Clouds over the Dales','Clouds over the Dales_thumb.jpg',130, 82,15,'photo_180817.html');
												thumbnails[180832] = new thumbnail(180832,'8257','Mist Over the Weald','Mist over the Weald_thumb.jpg',130, 83,15,'photo_180832.html');
												thumbnails[180834] = new thumbnail(180834,'8257','Storm over Camber','Storm over Camber_thumb.jpg',130, 86,15,'photo_180834.html');
												thumbnails[180836] = new thumbnail(180836,'8257','Winter Morning','wintermorn_thumb.jpg',130, 63,15,'photo_180836.html');
												thumbnails[265341] = new thumbnail(265341,'8256','Shapes of chance 1','shapes1 copy_thumb.jpg',130, 130,15,'photo_265341.html');
												thumbnails[265346] = new thumbnail(265346,'8256','Shapes of Chance 2','shapes2 copy_thumb.jpg',130, 130,15,'photo_265346.html');
												thumbnails[265351] = new thumbnail(265351,'8256','Shapes of Chance 3','shapes3 copy_thumb.jpg',130, 130,15,'photo_265351.html');
												thumbnails[1067196] = new thumbnail(1067196,'8257','Enchanted Path','ENCHANTED PATH by Peter lewis_thumb.jpg',130, 190,15,'photo_1067196.html');
												thumbnails[1068373] = new thumbnail(1068373,'8257','Winter Wonderland (Cetificate of Merit KCPA digital comp. 2006)','4_thumb. Winter wonderland.jpg',130, 86,15,'photo_1068373.html');
												thumbnails[1068382] = new thumbnail(1068382,'8257','Enchanted','ENCHANTED1_thumb.jpg',130, 174,15,'photo_1068382.html');
												thumbnails[1068388] = new thumbnail(1068388,'8257','Malham Tarn','MALHAM TARN2_thumb.jpg',130, 115,15,'photo_1068388.html');
												thumbnails[1068392] = new thumbnail(1068392,'8257','Where the Rainbow Ends','WHERE THE RAINBOW ENDS_thumb.jpg',130, 92,15,'photo_1068392.html');
												thumbnails[88010] = new thumbnail(88010,'8048','one hundred and forty','random02_thumb.jpg',130, 130,15,'photo_88010.html');
												thumbnails[88310] = new thumbnail(88310,'8258','Industry','Industry_thumb.jpg',130, 196,15,'photo_88310.html');
												thumbnails[88304] = new thumbnail(88304,'8257','Spring Morning','Spring morning_thumb.jpg',130, 77,15,'photo_88304.html');
												thumbnails[88011] = new thumbnail(88011,'8048','seven','random03_thumb.jpg',130, 130,15,'photo_88011.html');
												thumbnails[88012] = new thumbnail(88012,'8048','eight','random04_thumb.jpg',130, 130,15,'photo_88012.html');
												thumbnails[88013] = new thumbnail(88013,'8048','forty seven','random05_thumb.jpg',130, 130,15,'photo_88013.html');
												thumbnails[88014] = new thumbnail(88014,'8048','two hundred and twenty six','random06_thumb.jpg',130, 130,15,'photo_88014.html');
												thumbnails[88049] = new thumbnail(88049,'8048','sixtynine','random07_thumb.jpg',130, 130,15,'photo_88049.html');
												thumbnails[88050] = new thumbnail(88050,'8048','six','random08_thumb.jpg',130, 130,15,'photo_88050.html');
												thumbnails[88053] = new thumbnail(88053,'8048','one','random09_thumb.jpg',130, 130,15,'photo_88053.html');
												thumbnails[88054] = new thumbnail(88054,'8048','one hundred abd thirty seven','random10_thumb.jpg',130, 130,15,'photo_88054.html');
												thumbnails[88056] = new thumbnail(88056,'8048','eighty two','random11_thumb.jpg',130, 130,15,'photo_88056.html');
												thumbnails[88058] = new thumbnail(88058,'8048','nine','random12_thumb.jpg',130, 130,15,'photo_88058.html');
												thumbnails[88061] = new thumbnail(88061,'8048','thirty three','random13_thumb.jpg',130, 130,15,'photo_88061.html');
												thumbnails[88063] = new thumbnail(88063,'8048','two hundred and fifty eight','random14_thumb.jpg',130, 130,15,'photo_88063.html');
												thumbnails[88064] = new thumbnail(88064,'8048','thirty seven','random15_thumb.jpg',130, 130,15,'photo_88064.html');
												thumbnails[88065] = new thumbnail(88065,'8048','forty two','random16_thumb.jpg',130, 130,15,'photo_88065.html');
												thumbnails[88066] = new thumbnail(88066,'8048','forty three','random17_thumb.jpg',130, 130,15,'photo_88066.html');
												thumbnails[88067] = new thumbnail(88067,'8048','two','random18_thumb.jpg',130, 130,15,'photo_88067.html');

/***************************************************************************
* Create the array of Gallery objects                                      *
***************************************************************************/
var galleries = new Object();
				  					galleries[431049] = new gallery(431049,'8027450,8027447','Miscellaneous','gallery',[8027447,8027450],0, 0, '', 'gallery_431049.html',0,0);
				  					galleries[8048] = new gallery(8048,'88010','Circles of Chance','gallery',[88010,88011,88012,88013,88014,88049,88050,88053,88054,88056,88058,88061,88063,88064,88065,88066,88067],0, 0, '', 'gallery_8048.html',0,0);
				  					galleries[8256] = new gallery(8256,'265351,265346,265341','Shapes of Chance','gallery',[265341,265346,265351],0, 0, '', 'gallery_8256.html',0,0);
				  					galleries[8257] = new gallery(8257,'88304','Landscapes-rural','gallery',[8027395,8027444,180817,180832,180834,180836,1067196,1068373,1068382,1068388,1068392,88304],0, 0, '', 'gallery_8257.html',0,0);
				  					galleries[8258] = new gallery(8258,'88310','Landscapes-urban','gallery',[8027405,100964,88310],0, 0, '', 'gallery_8258.html',0,0);
/***************************************************************************
* Create the array of image sets                                           *
***************************************************************************/
var imageSets = new Object();
imageSets[1] = '8027450,8027447,8027444,8027405,8027395,1068392,1068388,1068382,1068373,1067196,180832,88010';
imageSets[2] = '88310,88304,88010';
imageSets[3] = '8027450,8027447,8027444,8027405,8027395,1068392,1068388,1068382,1068373,1067196,265351,265346,265341,180836,180834,180832,180817,100964,88310,88304,88067,88066,88065,88064,88063,88061,88058,88056,88054,88053,88050,88049,88014,88013,88012,88011,88010';
 /***************************************************************************
* Get a server path given an ID                                            *
***************************************************************************/
function getServerPath(server_id) {
	var val = -1;
		switch (server_id) {
		case 21:
		val = 'http://www6.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 1:
		val = 'http://www1.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 2:
		val = 'http://admin.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 24:
		val = 'http://tpc15/clikpic/whplewis/images';
		break;
	}
		switch (server_id) {
		case 4:
		val = 'http://clikchurch.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 5:
		val = 'http://www2.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 22:
		val = 'http://tpc5/clikpic/whplewis/images';
		break;
	}
		switch (server_id) {
		case 23:
		val = 'http://tpc10/clikpic/whplewis/images';
		break;
	}
		switch (server_id) {
		case 25:
		val = 'http://tpc16/clikpic/whplewis/images';
		break;
	}
		switch (server_id) {
		case 40:
		val = 'http://www11.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 42:
		val = 'db2.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 15:
		val = 'http://www3.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 18:
		val = 'http://www4.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 19:
		val = 'http://www5.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 31:
		val = 'http://www7.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 32:
		val = 'http://admin2.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 33:
		val = 'http://www8.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 34:
		val = 'http://www9.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 35:
		val = 'http://admin3.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 37:
		val = 'http://admin4.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 38:
		val = 'http://admin5.clikpic.com/whplewis/images';
		break;
	}
		switch (server_id) {
		case 39:
		val = 'http://www10.clikpic.com/whplewis/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 && backgrounds[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:'',
                    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 (!basic) {
    if (op.updateHash && clik.getIDInUrl(location.href,'photo') != op.nextPhoto.id) {
		clik.changeHash('photos_id=' + op.nextPhoto.id, true);
    }
				
    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));		  $('body').trigger('clikUpdate');		}, op.onBefore);
      }    }
    	if (op.field) {
		op.field.value = photoId;
	} else {
		op.$photo.data('image_id', photoId);
    }
	    if (op.$title.length > 0) {
  		op.$title.fadeGalleryDetails(photoCaption, op.speed);
    }
        if (op.updateDocumentTitle) {
						  document.title = 'Images of Chance: ' + photoCaption;
			    }
        if (op.$detail.length > 0) {
      temp = op.nextPhoto.fnGetImageDetails();
	    op.$detail.fadeGalleryDetails(temp, op.speed, function(){
	    var options = {};	    	      	      resizePhotoInfo(options);
        if (typeof(backgrounds) != 'undefined' && op.nextPhoto == backgrounds[op.nextPhoto.id]) {
  	      toggleAddToCartConfirm(backgrounds);
  	    } else if (typeof(photos) != 'undefined' && op.nextPhoto == photos[op.nextPhoto.id]) {
  	      toggleAddToCartConfirm(photos);
  	    }
	    });
    }
        if (!op.speed) {      clik.doColumnResize(false, op.$photo.add(op.$detail).add(op.$title));      $('body').trigger('clikUpdate');    }        
    return html;			}
	else {
				
		window.location = 'photo_' + nextPhoto.id + '.html';
	}
		
}

/***************************************************************************
* Toggle add to cart confirmation element and set up the click event for   *
* the 'Add to cart' button.                                                *
***************************************************************************/
function toggleAddToCartConfirm(array){
  if (typeof(array) !== 'object' || array == undefined) {
    array = photos;
  }
	if($('#paymentConfirm').length > 0){
		$('#paymentConfirm').hide();
		$('#paymentAddButton')
		.unbind()
		.click(function(){
						form = document.getElementById('paymentForm');
			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').text('Item added to cart').show();}
				else{
					$('#paymentConfirm').text('Item added to cart').fadeIn();
					dspOrderDetails(form.site.value);
				}
			}
			else{
				$('#paymentConfirm').text('Item not added - check cookies are enabled in your browser.').fadeIn();
			}
		});
	}
}
/***************************************************************************
* Get payment info for image - add as 'method' to photo object             *
***************************************************************************/
photo.prototype.fnGetImageDetails = function(){
	var temp = '';
	if (this.description != '') {
		temp = temp +  '<p id="imageDescription">' + this.description + '</p>';
	}
		if (this.photo_ref != '') {
		temp = temp + '<p class="imageinfo" id="imageRef"><strong>Ref: </strong>' + this.photo_ref + '</p>';
	}
		if (this.takendate != '') {
				
		temp = temp + '<p class="imageinfo" id="imageDate"><strong>Date: </strong>' + this.takendate + '</p>';
	}
	
	if (this.location != '') {
				
		temp = temp + '<p class="imageinfo" id="imageLocation"><strong>Location: </strong>' +  this.location + '</p>';
	}
	
	if (this.photographer != '') {
				
		temp = temp + '<p class="imageinfo" id="imagePhotographer"><strong>Photographer: </strong>' + this.photographer + '</p>';
	}
					
				if (temp != '') {
		temp = temp + '<div class="spacer"></div>';
	}
	return temp;
};

/***************************************************************************
* Get payment info for image - add as 'method' to photo object             *
***************************************************************************/
photo.prototype.fnGetPaymentInfo = function(){
	var temp = '';
	if (this.item_price !== '') {
				temp = temp + '<p>Order this print:</p>';
				temp = temp + '<p class="imageinfo" id="imagePrice"><strong>' + this.purchase_instruction + '</strong> ' + (this.item_price).toFixed(2) + '</p>';
		var item_name  = this.purchase_instruction;
		var amount = (this.item_price).toFixed(2);
		var item_option  = 0;
	}
	else if (this.payment_groups_id !== '') {
		temp = temp + '<p>Buy this print online:</p>';
				temp = temp + '<form id="paymentOptions" style="margin:0px;border:0px;" name="paymentOptions">';
											temp = temp + '<select class="paymentlink" name="payment_options_id" onchange="updateItemValues(document.forms.paymentForm,this.form.payment_options_id.options[this.form.payment_options_id.options.selectedIndex].value);">';
				
		temp = temp + getPaymentOptions(this.payment_groups_id);
		temp = temp + '</select>';
		temp = temp + '</form>';
				var item_option  = paymentGroups[this.payment_groups_id].options[0];
		if(paymentOptions[item_option]){
			var item_name  = paymentOptions[item_option].payment_option;
			var amount =  paymentOptions[item_option].price;
		}
			}
	else {
				
	}
	if (this.item_price !== '' || this.payment_groups_id !== '') {
			temp = 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({            href: thumbnails[imageID].fnGalleryLink(gallery_id),            title: galleries[gallery_id].title          });
        }
							}
										}
}

/***************************************************************************
* 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 + ' | ';
				}
				temp = temp + '<a href="' + galleries[i].section_code + '_' + galleries[i].id + '.html">' + galleries[i].title + '</a>';
			}
		}
		document.all.galleryLinks.innerHTML = 'Other galleries: ' + temp;
	}
}

			

