window.thumbnails = new Object();
												thumbnails[5726942] = new thumbnail(5726942,'324369','','1_thumb.jpg',130, 103,32,'photo_5726942.html');
												thumbnails[5726959] = new thumbnail(5726959,'324369','','2_thumb.jpg',130, 103,32,'photo_5726959.html');
												thumbnails[5726960] = new thumbnail(5726960,'324369','','3_thumb.jpg',130, 103,32,'photo_5726960.html');
												thumbnails[5726983] = new thumbnail(5726983,'324369','','4_thumb.jpg',130, 103,32,'photo_5726983.html');
												thumbnails[5726985] = new thumbnail(5726985,'324369','','5_thumb.jpg',130, 103,32,'photo_5726985.html');
												thumbnails[5726987] = new thumbnail(5726987,'324369','','6_thumb.jpg',130, 103,32,'photo_5726987.html');
												thumbnails[5726989] = new thumbnail(5726989,'324369','','7_thumb.jpg',130, 103,32,'photo_5726989.html');
												thumbnails[5726991] = new thumbnail(5726991,'324369','','8_thumb.jpg',130, 103,32,'photo_5726991.html');
												thumbnails[5726993] = new thumbnail(5726993,'324369','','9_thumb.jpg',130, 103,32,'photo_5726993.html');
												thumbnails[7133665] = new thumbnail(7133665,'339370','Synopsis','bartosz_nowicki_website_the_wall_of_silence_text_polish_thumb.jpg',130, 184,32,'photo_7133665.html');
												thumbnails[6036034] = new thumbnail(6036034,'339370','Mwanso Phiri','bartosz_nowicki__website_sciana_milczenia_01_mwanso_phiri_thumb.jpg',130, 184,32,'photo_6036034.html');
												thumbnails[6036037] = new thumbnail(6036037,'339370','Francis Santana','bartosz_nowicki_website_sciana_milczenia_02_francis_santana_thumb.jpg',130, 184,32,'photo_6036037.html');
												thumbnails[6036047] = new thumbnail(6036047,'339370','Alain Ngamayama','bartosz_nowicki_website_sciana_milczenia_08_alain_ngamayama_thumb.jpg',130, 184,32,'photo_6036047.html');
												thumbnails[6036049] = new thumbnail(6036049,'339370','Jean Bernard Diatta','bartosz_nowicki_website_sciana_milczenia_09_dr_jean_bernard_diatta_thumb.jpg',130, 186,32,'photo_6036049.html');
												thumbnails[6036041] = new thumbnail(6036041,'339370','Larry Uriri','bartosz_nowicki_website_sciana_milczenia_04_larry_uriri_thumb.jpg',130, 184,32,'photo_6036041.html');
												thumbnails[6036044] = new thumbnail(6036044,'339370','Killion Munyama','bartosz_nowicki__website_sciana_milczenia_07_dr_killion_munyama_thumb.jpg',130, 184,32,'photo_6036044.html');
												thumbnails[6036042] = new thumbnail(6036042,'339370','Paul & Amani Runiga','bartosz_nowicki_website_sciana_milczenia_06_paul__amani_ruinga_thumb.jpg',130, 184,32,'photo_6036042.html');
												thumbnails[7313635] = new thumbnail(7313635,'395608','20/01/2011','IMG_3704_small_website_thumb.jpg',130, 87,32,'photo_7313635.html');
												thumbnails[7146580] = new thumbnail(7146580,'386273','02/12/2010','2005_Prague_Chech_Republic21_thumb.jpg',130, 86,32,'photo_7146580.html');
												thumbnails[7154602] = new thumbnail(7154602,'386273','04/12/2010','2008_cardiff_wales1_thumb.jpg',130, 86,32,'photo_7154602.html');
												thumbnails[7166447] = new thumbnail(7166447,'386273','07/12/2010','2010_-_Poznan_Poland_thumb.jpg',130, 88,32,'photo_7166447.html');

/***************************************************************************
* Create the array of Gallery objects                                      *
***************************************************************************/
var galleries = new Object();
				  					galleries[386273] = new gallery(386273,'7166447,7154602,7146580','December 2010','section459325',[7146580,7154602,7166447],0, 0, '', 'section459325_386273.html',0,0);
				  					galleries[395608] = new gallery(395608,'7313635','January 2011','section459325',[7313635],0, 0, '', 'section459325_395608.html',0,0);
				  					galleries[339370] = new gallery(339370,'7133665,6036049,6036047,6036044,6036042,6036041,6036037,6036034','The wall of Silence (work in progress)','gallery',[7133665,6036034,6036037,6036047,6036049,6036041,6036044,6036042],0, 0, '', 'gallery_339370.html',0,0);
				  					galleries[324369] = new gallery(324369,'5726993,5726991,5726989,5726987,5726985,5726983,5726960,5726959,5726942','October','gallery',[5726942,5726959,5726960,5726983,5726985,5726987,5726989,5726991,5726993],0, 0, '', 'gallery_324369.html',0,0);
/***************************************************************************
* Create the array of image sets                                           *
***************************************************************************/
var imageSets = new Object();
imageSets[1] = '7154602';
imageSets[3] = '7313635,7166447,7154602,7146580,7133665,6036049,6036047,6036044,6036042,6036041,6036037,6036034,5726993,5726991,5726989,5726987,5726985,5726983,5726960,5726959,5726942';
 /***************************************************************************
* Get a server path given an ID                                            *
***************************************************************************/
function getServerPath(server_id) {
	var val = -1;
		switch (server_id) {
		case 21:
		val = 'http://www6.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 1:
		val = 'http://www1.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 2:
		val = 'http://admin.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 24:
		val = 'http://tpc15/clikpic/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 4:
		val = 'http://clikchurch.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 5:
		val = 'http://www2.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 22:
		val = 'http://tpc5/clikpic/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 23:
		val = 'http://tpc10/clikpic/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 25:
		val = 'http://tpc16/clikpic/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 40:
		val = 'http://www11.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 42:
		val = 'db2.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 15:
		val = 'http://www3.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 18:
		val = 'http://www4.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 19:
		val = 'http://www5.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 31:
		val = 'http://www7.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 32:
		val = 'http://admin2.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 33:
		val = 'http://www8.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 34:
		val = 'http://www9.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 35:
		val = 'http://admin3.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 37:
		val = 'http://admin4.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 38:
		val = 'http://admin5.clikpic.com/BartoszNowicki/images';
		break;
	}
		switch (server_id) {
		case 39:
		val = 'http://www10.clikpic.com/BartoszNowicki/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 = 'Bartosz Nowicki Photography: ' + 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>';
	}
					
				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;
	}
}

			

