window.thumbnails = new Object();
												thumbnails[6858346] = new thumbnail(6858346,'','','blue_eyed_blonde_thumb.jpg',100, 67,15,'#');
												thumbnails[5199504] = new thumbnail(5199504,'','','image_91_in_black_and_white_thumb.jpg',100, 150,15,'#');
												thumbnails[3969728] = new thumbnail(3969728,'','','image_4_thumb.jpg',94, 150,15,'#');
												thumbnails[3976362] = new thumbnail(3976362,'','','old_gent1_thumb.jpg',100, 132,15,'#');
												thumbnails[4051373] = new thumbnail(4051373,'','','bride_1_thumb.jpg',100, 150,15,'#');
												thumbnails[4358561] = new thumbnail(4358561,'239396','','studio_thumb.jpg',100, 150,15,'photo_4358561.html');
												thumbnails[4456511] = new thumbnail(4456511,'239396','','image_2_1_thumb.jpg',100, 67,15,'photo_4456511.html');
												thumbnails[4459459] = new thumbnail(4459459,'239396','','steve_davis_thumb.jpg',100, 125,15,'photo_4459459.html');
												thumbnails[5199530] = new thumbnail(5199530,'239396','','vespa_2_graphic_art_black_and_white_thumb.jpg',100, 150,15,'photo_5199530.html');
												thumbnails[5199532] = new thumbnail(5199532,'239396','','luke_2_thumb.jpg',100, 150,15,'photo_5199532.html');
												thumbnails[5199534] = new thumbnail(5199534,'239396','','luke_4_thumb.jpg',100, 150,15,'photo_5199534.html');
												thumbnails[5199535] = new thumbnail(5199535,'239396','','luke_9_thumb.jpg',100, 137,15,'photo_5199535.html');
												thumbnails[5390148] = new thumbnail(5390148,'239396','','kalie_3_thumb.jpg',100, 150,15,'photo_5390148.html');
												thumbnails[5390153] = new thumbnail(5390153,'239396','','kalie_12_thumb.jpg',100, 150,15,'photo_5390153.html');
												thumbnails[5390156] = new thumbnail(5390156,'239396','','kalie_6_thumb.jpg',100, 125,15,'photo_5390156.html');
												thumbnails[5390160] = new thumbnail(5390160,'239396','','prabjot_2_thumb.jpg',100, 150,15,'photo_5390160.html');
												thumbnails[5390171] = new thumbnail(5390171,'239396','','prabjot_8_thumb.jpg',100, 150,15,'photo_5390171.html');
												thumbnails[5390203] = new thumbnail(5390203,'239396','','kalie_5_thumb.jpg',100, 67,15,'photo_5390203.html');
												thumbnails[5593335] = new thumbnail(5593335,'239396','','image_90_2B8C5C06-1EC9-D45B-1C702C5D4DDB7744_thumb.jpg',100, 150,15,'photo_5593335.html');
												thumbnails[5620117] = new thumbnail(5620117,'239396','','Will_Mellor__thumb.jpg',95, 150,15,'photo_5620117.html');
												thumbnails[5620118] = new thumbnail(5620118,'239396','','image_61_thumb.jpg',100, 67,15,'photo_5620118.html');
												thumbnails[5864479] = new thumbnail(5864479,'239396','','image_6_3EC30B7D-1D09-001F-9971E0EA3C914E05_thumb.jpg',100, 150,15,'photo_5864479.html');
												thumbnails[5864481] = new thumbnail(5864481,'239396','','image_1_with_blur_in_mono_thumb.jpg',100, 67,15,'photo_5864481.html');
												thumbnails[5864482] = new thumbnail(5864482,'239396','','image_3_thumb.jpg',100, 150,15,'photo_5864482.html');
												thumbnails[5864483] = new thumbnail(5864483,'239396','','image_18_thumb.jpg',100, 150,15,'photo_5864483.html');
												thumbnails[5864485] = new thumbnail(5864485,'239396','','image_20_thumb.jpg',100, 150,15,'photo_5864485.html');
												thumbnails[3950305] = new thumbnail(3950305,'239396','','kalie_11_thumb.jpg',100, 67,15,'photo_3950305.html');
												thumbnails[3951841] = new thumbnail(3951841,'239396','','kalie_22_thumb.jpg',100, 150,15,'photo_3951841.html');
												thumbnails[3950313] = new thumbnail(3950313,'239396','','kalie_23__thumb.jpg',100, 67,15,'photo_3950313.html');
												thumbnails[3954704] = new thumbnail(3954704,'239396','','kalie_70_thumb.jpg',100, 141,15,'photo_3954704.html');
												thumbnails[3954747] = new thumbnail(3954747,'239396','','kalie_40_thumb.jpg',100, 67,15,'photo_3954747.html');
												thumbnails[3955091] = new thumbnail(3955091,'239396','','image_1_thumb.jpg',100, 150,15,'photo_3955091.html');
												thumbnails[3969752] = new thumbnail(3969752,'239396','','kalie_and_mum_4_thumb.jpg',100, 144,15,'photo_3969752.html');
												thumbnails[3984208] = new thumbnail(3984208,'239396','','rachel_5_thumb.jpg',100, 150,15,'photo_3984208.html');
												thumbnails[4024260] = new thumbnail(4024260,'239396','','image_21_thumb.jpg',89, 150,15,'photo_4024260.html');
												thumbnails[4024264] = new thumbnail(4024264,'239396','','image_41_thumb.jpg',100, 150,15,'photo_4024264.html');
												thumbnails[4024267] = new thumbnail(4024267,'239396','','image_6_thumb.jpg',100, 150,15,'photo_4024267.html');
												thumbnails[4024268] = new thumbnail(4024268,'239396','','image_45_thumb.jpg',100, 67,15,'photo_4024268.html');
												thumbnails[4051357] = new thumbnail(4051357,'239396','','eighties_girl_15_at_10_by_8_inches_thumb.jpg',100, 125,15,'photo_4051357.html');
												thumbnails[4051363] = new thumbnail(4051363,'239396','','kalies_family_2_at_10_by_8_inches_thumb.jpg',100, 125,15,'photo_4051363.html');
												thumbnails[7738216] = new thumbnail(7738216,'418522','','ipod_nano_thumb.jpg',95, 150,15,'photo_7738216.html');
												thumbnails[7738219] = new thumbnail(7738219,'418522','','tissot_watch_mono_thumb.jpg',100, 150,15,'photo_7738219.html');
												thumbnails[7738220] = new thumbnail(7738220,'418522','','tissot_watch_in_box_thumb.jpg',100, 67,15,'photo_7738220.html');
												thumbnails[7738222] = new thumbnail(7738222,'418522','','heinz_tomato_soup1_thumb.jpg',100, 150,15,'photo_7738222.html');
												thumbnails[7738223] = new thumbnail(7738223,'418522','','easter_eggs1_thumb.jpg',100, 67,15,'photo_7738223.html');

/***************************************************************************
* Create the array of Gallery objects                                      *
***************************************************************************/
var galleries = new Object();
				  					galleries[239396] = new gallery(239396,'3950305','Portraits','gallery',[4358561,4456511,4459459,5199530,5199532,5199534,5199535,5390148,5390153,5390156,5390160,5390171,5390203,5593335,5620117,5620118,5864479,5864481,5864482,5864483,5864485,3950305,3951841,3950313,3954704,3954747,3955091,3969752,3984208,4024260,4024264,4024267,4024268,4051357,4051363],0, 0, '', 'gallery.html',0,1);
				  					galleries[418522] = new gallery(418522,'7738223,7738222,7738220,7738219,7738216','Product Photography','section501421',[7738216,7738219,7738220,7738222,7738223],0, 0, '', 'section501421.html',0,1);
/***************************************************************************
* Create the array of image sets                                           *
***************************************************************************/
var imageSets = new Object();
imageSets[1] = '6858346,5864479,3950313,3950305';
imageSets[2] = '3950305';
imageSets[3] = '5390203,5390171,5390160,5390156,5390153,5390148,5199535,5199534,5199532,5199530,5199504,4459459,4358561';
 /***************************************************************************
* Get a server path given an ID                                            *
***************************************************************************/
function getServerPath(server_id) {
	var val = -1;
		switch (server_id) {
		case 21:
		val = 'http://www6.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 1:
		val = 'http://www1.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 2:
		val = 'http://admin.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 24:
		val = 'http://tpc15/clikpic/flynny123/images';
		break;
	}
		switch (server_id) {
		case 4:
		val = 'http://clikchurch.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 5:
		val = 'http://www2.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 22:
		val = 'http://tpc5/clikpic/flynny123/images';
		break;
	}
		switch (server_id) {
		case 23:
		val = 'http://tpc10/clikpic/flynny123/images';
		break;
	}
		switch (server_id) {
		case 25:
		val = 'http://tpc16/clikpic/flynny123/images';
		break;
	}
		switch (server_id) {
		case 40:
		val = 'http://www11.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 42:
		val = 'db2.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 15:
		val = 'http://www3.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 18:
		val = 'http://www4.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 19:
		val = 'http://www5.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 31:
		val = 'http://www7.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 32:
		val = 'http://admin2.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 33:
		val = 'http://www8.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 34:
		val = 'http://www9.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 35:
		val = 'http://admin3.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 37:
		val = 'http://admin4.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 38:
		val = 'http://admin5.clikpic.com/flynny123/images';
		break;
	}
		switch (server_id) {
		case 39:
		val = 'http://www10.clikpic.com/flynny123/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 = 'errolmcquinnphotography.co.uk: ' + 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 = 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>';
	}
					
	temp = temp + this.fnGetPaymentInfo();
				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>Buy now using PayPal:</p>';
				temp = temp + '<p class="imageinfo" id="imagePrice"><strong>' + this.purchase_instruction + '</strong> &pound;' + (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="updateCartValue(document.forms.paymentForm,this.form.payment_options_id.options[this.form.payment_options_id.options.selectedIndex].value); if(divShowing(\'paymentConfirm\')){fadeOut(\'paymentConfirm\', 3)};">';
				
		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 + '<form id="paymentForm" style="margin:0px;border:0px;" name="paymentForm">';
	temp = temp + '	<input type="hidden" name="item_option" value="' + item_option + '">';
	temp = temp + '	<input type="hidden" name="site" value="FLYNNY123">';
		temp = temp + '	<input type="hidden" name="item_number" value="'+ this.id +'">';
			temp = temp + '	<input type="hidden" name="quantity" value="1">';
								temp = temp + '	<input value="Add to cart" id="paymentAddButton" class="button" onmouseover="this.className=\'buttonHi\'\;" onmouseout="this.className=\'button\'\;" type="Button">';
			temp = temp + '	<input value="View cart" id="paymentViewButton" class="button" onmouseover="this.className=\'buttonHi\';" onmouseout="this.className=\'button\';" type="Button" onclick="javascript:window.location=\'cart.html\'">';
	temp = temp + '</form>';
		temp = temp + '<div class="clearing">&nbsp;</div>';
	temp = temp + '<div id="confirmContainer">';
	temp = temp + '<div id="paymentConfirm">Item added to cart</div>';
	temp = temp + '</div>';
			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;
	}
}

			

