swfobject.embedSWF('/flash/tis_nav.swf', 'navigation', '210', '445', '9.0.0', '/flash/expressinstall.swf');

function init_dw_Scroll() {
   var wndo1 = new dw_scrollObj('newscolumn', 'newscontent');
   wndo1.setUpScrollbar('dragBar', 'track', 'v', 1, 1);
   wndo1.setUpScrollControls('scrollbar', true, 'v');

   var wndo2 = new dw_scrollObj('newsdoublecolumn', 'newsdoublecontent');
   wndo2.setUpScrollbar('dragBar2', 'track2', 'v', 1, 1);
   wndo2.setUpScrollControls('scrollbar2', true, 'v');

   var wndo3 = new dw_scrollObj('showscolumn', 'showscontent');
   wndo3.setUpScrollbar('dragBar3', 'track3', 'v', 1, 1);
   wndo3.setUpScrollControls('scrollbar3', true, 'v');

   var wndo4 = new dw_scrollObj('showslargecolumn', 'showslargecontent');
   wndo4.setUpScrollbar('dragBar4', 'track4', 'v', 1, 1);
   wndo4.setUpScrollControls('scrollbar4', true, 'v');

   var wndo5 = new dw_scrollObj('musiccolumn', 'musiccontent');
   wndo5.setUpScrollbar('dragBar5', 'track5', 'v', 1, 1);
   wndo5.setUpScrollControls('scrollbar5', true, 'v');

   var wndo6 = new dw_scrollObj('musicdoublecolumn', 'musicdoublecontent');
   wndo6.setUpScrollbar('dragBar6', 'track6', 'v', 1, 1);
   wndo6.setUpScrollControls('scrollbar6', true, 'v');

   var wndo7 = new dw_scrollObj('gallerycolumn', 'gallerycontent');
   wndo7.setUpScrollbar('dragBar7', 'track7', 'v', 1, 1);
   wndo7.setUpScrollControls('scrollbar7', true, 'v');

   var wndo8 = new dw_scrollObj('gallerylargecolumn', 'gallerylargecontent');
   wndo8.setUpScrollbar('dragBar8', 'track8', 'v', 1, 1);
   wndo8.setUpScrollControls('scrollbar8', true, 'v');

   var wndo9 = new dw_scrollObj('reviewscolumn', 'reviewscontent');
   wndo9.setUpScrollbar('dragBar9', 'track9', 'v', 1, 1);
   wndo9.setUpScrollControls('scrollbar9', true, 'v');

   var wndo10 = new dw_scrollObj('reviewsdoublecolumn', 'reviewsdoublecontent');
   wndo10.setUpScrollbar('dragBar10', 'track10', 'v', 1, 1);
   wndo10.setUpScrollControls('scrollbar10', true, 'v');
}


dojo.registerModulePath('Vurig', '/scripts/Vurig');
dojo.registerModulePath('InlawSisters', '/scripts/InlawSisters');

dojo.require('Vurig.rpc.JsonRpc');
dojo.require('dojo.fx');
dojo.require('dojox.fx.scroll');
dojo.require('dojo.html');
dojo.require('dojo.date.locale');


// News section
dojo.addOnLoad(
	function(){
		Vurig.rpc.JsonRpc.getNewsList().addCallback(
			function(response) {
				var counter = 1;
				if (response.result) {
					dojo.forEach(response.result,
						function(object) {
							var parentNode = dojo.byId('news_list');					
							var li = document.createElement('li');
							var span = document.createElement('span');
							span.innerHTML = formatDate(object.published);
							dojo.addClass(span, 'sans');
							parentNode.appendChild(span);
							li.innerHTML = object.name;
							li.id = object.item_id;
							dojo.addClass(li, 'pointer');
							if (counter == 1) {
								dojo.addClass(li, 'active');
								Vurig.rpc.JsonRpc.getNews(Number(object.item_id)).addCallback(
									function(response) {
										if (response.result) {
											dojo.html.set(dojo.query('#newsdoublecontent .column2 > span')[0], formatDate(object.published));
											dojo.html.set(dojo.query('#newsdoublecontent .column2 > h2')[0], response.result.name);
											dojo.html.set(dojo.query('#newsdoublecontent .column2 > div')[0], response.result.description);
										}
									}
								);
								var column = dojo.query('#newsdoublecolumn > div .column3')[0];
								if (column.hasChildNodes()) {
									while (column.childNodes.length >= 1) {
											column.removeChild(column.firstChild);
									}
								}
								Vurig.rpc.JsonRpc.getLinks(Number(object.item_id)).addCallback(
									function(response) {
										if (response.result) {
											var span = document.createElement('span');
											span.innerHTML = 'Related links';
											dojo.addClass(span, 'sans');
											column.appendChild(span);
											dojo.forEach(response.result,
												function(object) {
													var ul = document.createElement('ul');
													ul.id = 'news_links';
													column.appendChild(ul);
													var li = document.createElement('li');
													var a = document.createElement('a');
													li.appendChild(a);
													a.href = object.url;
													a.target = '_blank';
													a.innerHTML = object.name;
													ul.appendChild(li);
												}
											);
										}
									}
								);
								Vurig.rpc.JsonRpc.getProperties(Number(object.item_id)).addCallback(
									function(response) {
										if (response.result) {
											if (response.result[0].value != null) {
												Vurig.rpc.JsonRpc.getAlbum(Number(response.result[0].value)).addCallback(
													function(response) {
														if (response.result) {
															var span = document.createElement('span');
															span.innerHTML = 'Related photos';
															dojo.addClass(span, 'sans');
															column.appendChild(span);
															dojo.forEach(response.result,
																function(object) {
																	var ul = document.createElement('ul');
																	ul.id = 'news_album';
																	column.appendChild(ul);
																	var li = document.createElement('li');
																	var image = document.createElement('img');
																	image.src = '/multimedia/image/static/' + object.image_id + '_130_130_resize.jpg';
																	li.appendChild(image);
																	ul.appendChild(li);
																}
															);
														}
													}
												);
											}
										}
									}
								);
							}
							counter++;
							parentNode.appendChild(li); 
						}
					);
				}
				updateScrollDiv('newscolumn');
				updateScrollDiv('newsdoublecolumn');
				dojo.query('#news_list > li').connect('onclick', 
					function(e) {
						dojo.forEach(dojo.query('#news_list > li'),
							function(childNode) {
								dojo.removeClass(childNode, 'active');
							}
						);
						dojo.addClass(e.target, 'active');
						Vurig.rpc.JsonRpc.getNews(Number(e.target.id)).addCallback(
							function(response) {
								if (response.result) {
									dojo.html.set(dojo.query('#newsdoublecontent .column2 > span')[0], formatDate(response.result.published));			
									dojo.html.set(dojo.query('#newsdoublecontent .column2 > h2')[0], response.result.name);
									dojo.html.set(dojo.query('#newsdoublecontent .column2 > div')[0], response.result.description);
								}
							}
						);
						var column = dojo.query('#newsdoublecolumn .column3')[0];
						if (column.hasChildNodes()) {
							while (column.childNodes.length >= 1) {
									column.removeChild(column.firstChild);
							}
						}
						Vurig.rpc.JsonRpc.getLinks(Number(e.target.id)).addCallback(
							function(response) {
								if (response.result) {
									var span = document.createElement('span');
									span.innerHTML = 'Related links';
									dojo.addClass(span, 'sans');
									column.appendChild(span);
									dojo.forEach(response.result,
										function(object) {
											var ul = document.createElement('ul');
											ul.id = 'news_links';
											column.appendChild(ul);
											var li = document.createElement('li');
											var a = document.createElement('a');
											li.appendChild(a);
											a.href = object.url;
											a.target = '_blank';
											a.innerHTML = object.name;
											ul.appendChild(li);
										}
									);
								}
							}
						);
						Vurig.rpc.JsonRpc.getProperties(Number(e.target.id)).addCallback(
							function(response) {
								if (response.result) {
									if (response.result[0].value != null) {
										Vurig.rpc.JsonRpc.getAlbum(Number(response.result[0].value)).addCallback(
											function(response) {
												if (response.result) {
													var span = document.createElement('span');
													span.innerHTML = 'Related photos';
													dojo.addClass(span, 'sans');
													column.appendChild(span);
													dojo.forEach(response.result,
														function(object) {
															var ul = document.createElement('ul');
															ul.id = 'news_album';
															column.appendChild(ul);
															var li = document.createElement('li');
															var image = document.createElement('img');
															image.src = '/multimedia/image/static/' + object.image_id + '_130_130_resize.jpg';
															li.appendChild(image);
															ul.appendChild(li);
														}
													);
												}
											}
										);
									}
								}
								updateScrollDiv('newsdoublecolumn');
							}
						);
					}
				);
			}
		);	
	}
);

// Shows section
dojo.addOnLoad(
	function(){
		Vurig.rpc.JsonRpc.getShowTimes().addCallback(
			function(response) {
				var counter = 1;
				if (response.result) {
					var nl = false;
					var ul = null;
					var currentYear = 0;			
					dojo.forEach(response.result,
						function(object) {
							if (object.year != currentYear){
								currentYear = object.year;
								nl = true;
								var span = document.createElement('span');
								dojo.html.set(span, object.year);
								dojo.addClass(span, 'sans');
								dojo.byId('showscontent').appendChild(span);
							}
							if (nl) {
								ul = document.createElement('ul');
								dojo.byId('showscontent').appendChild(ul);
								nl = false;
							}
							var li = document.createElement('li');
							li.innerHTML = object.month;
							li.id = object.timestamp;
							dojo.addClass(li, 'pointer');
							ul.appendChild(li); 
							if (counter == 1) {
								Vurig.rpc.JsonRpc.getShowList(Number(object.timestamp)).addCallback(
									function(response) {
										if (response.result) {
											dojo.addClass(li, 'active');
											parentUl = dojo.byId('shows_list');
											dojo.forEach(response.result,
												function(object) {
													var li = document.createElement('li');
													parentUl.appendChild(li);
													var currentNode  = li;
													Vurig.rpc.JsonRpc.getProperties(Number(object.item_id)).addCallback(
														function(response) {
															if (response.result) {
																var spanDate = document.createElement('span');
																dojo.addClass(spanDate,'sans');
																var date = new Date(Number(response.result.performance_time.value) * 1000);
																spanDate.innerHTML = dojo.date.locale.format(date, {datePattern: 'dd/MM/yy HH:mm', selector: 'date'}) + 'u';
																currentNode.appendChild(spanDate);
																var h2 = document.createElement('h2');
																h2.innerHTML = response.result.stage.value + ' - ' + response.result.city.value;
																currentNode.appendChild(h2);
																if (response.result.ticket_link.value != '') {
																	var link = document.createElement('a');
																	link.href = response.result.ticket_link.value;
																	link.target = '_blank';
																	link.innerHTML = 'Buy tickets';
																	currentNode.appendChild(link);
																}
																updateScrollDiv('showslargecolumn');
															}
														}
													); //callback
												}
											);
										}
									}
								);
							}
							counter++;
						}
					);
					updateScrollDiv('showscolumn');
				}
				dojo.query('#showscontent > ul > li').connect('onclick', 
					function(e) {
						Vurig.rpc.JsonRpc.getShowList(Number(e.target.id)).addCallback(
							function(response) {
								if (response.result) {
									dojo.forEach(dojo.query('#showscontent > ul > li'),
										function(childNode) {
											dojo.removeClass(childNode, 'active');
										}
									);
									dojo.addClass(e.target, 'active');
									parentUl = dojo.byId('shows_list');
									if (parentUl.hasChildNodes()) {
										while (parentUl.childNodes.length >= 1) {
												parentUl.removeChild(parentUl.firstChild);
										}
									}
									dojo.forEach(response.result,
										function(object) {
											var li = document.createElement('li');
											parentUl.appendChild(li);
											var currentNode  = li;
											Vurig.rpc.JsonRpc.getProperties(Number(object.item_id)).addCallback(
												function(response) {
													if (response.result) {
														var spanDate = document.createElement('span');
														dojo.addClass(spanDate,'sans');
														var date = new Date(Number(response.result.performance_time.value) * 1000);
														spanDate.innerHTML = dojo.date.locale.format(date, {datePattern: 'dd/MM/yy HH:mm', selector: 'date'}) + 'u';
														currentNode.appendChild(spanDate);
														var h2 = document.createElement('h2');
														h2.innerHTML = response.result.stage.value + ' - ' + response.result.city.value;
														currentNode.appendChild(h2);
														if (response.result.ticket_link.value != '') {
															var link = document.createElement('a');
															link.href = response.result.ticket_link.value;
															link.target = '_blank';
															link.innerHTML = 'Buy tickets';
															currentNode.appendChild(link);
														}
														updateScrollDiv('showslargecolumn');
													}
												}
											); //callback
										}
									);
									updateScrollDiv('showslargecolumn');
								}
							}
						);
					}
				);
			}
		);
	}
);

var firstSongLoaded = false;
var firstPlayListId = 0;

// Music section
dojo.addOnLoad(
	function(){
		Vurig.rpc.JsonRpc.getPlaylistList().addCallback(
			function(response) {
				if (response.result) {
					var counter = 1;
					dojo.forEach(response.result,
						function(playlist) {
							if (counter == 1) {
								firstPlayListId = playlist.playlist_id;
							}
							var parentNode = dojo.byId('musiccontent');
							var span = document.createElement('span');
							span.innerHTML = playlist.name;
							dojo.addClass(span, 'sans');
							parentNode.appendChild(span);
							var ul = document.createElement('ul');
							ul.id = 'playlist_' + playlist.playlist_id;
							parentNode.appendChild(ul);
							Vurig.rpc.JsonRpc.getPlaylist(playlist.playlist_id).addCallback(
								function(response) {
									if (response.result) {
										dojo.forEach(response.result,
											function(song) {
												if (firstSongLoaded == false && firstPlayListId == playlist.playlist_id) {
													getAudioInfo(song.audio_id, playlist.playlist_id, false);
													firstSongLoaded = true;
												}
												var li = document.createElement('li');
												li.innerHTML = song.name;
												li.id = 'audio_' + song.audio_id;
												dojo.addClass(li, 'pointer');
												dojo.addClass(li, 'play');
												dojo.connect(li, 'onclick', 
													function(e) {
														var params = e.target.id.split('_');
														getAudioInfo(params[1], playlist.playlist_id, true);
													}
												);
												ul.appendChild(li);
											}
										);
									}
								}
							);
							counter++;
						}
					);
					updateScrollDiv('musiccolumn');
					var playlists = dojo.query('#musiccontent > ul');
					activePlaylist = playlists[0].id.split('_');
				}
			}
		);
	}
);

function getAudioInfo(audioId, playlistId, play) {
	if (play) {
		playSong(audioId, true);
	}
	Vurig.rpc.JsonRpc.getSongInfo(audioId).addCallback(
		function(response) {
			if (response.result) {
				var column = dojo.query('#musicdoublecontent .column2')[0];
				if (column.hasChildNodes()) {
					while (column.childNodes.length >= 1) {
							column.removeChild(column.firstChild);
					}
				}
				var span = document.createElement('span');
				span.innerHTML = 'About the song';
				dojo.addClass(span, 'sans');
				column.appendChild(span);
				var div = document.createElement('div');
				div.innerHTML = response.result.description;
				column.appendChild(div);
				updateScrollDiv('musicdoublecolumn');
			}
			var parentNode = dojo.query('#musicdoublecontent .column3')[0];
			if (parentNode.hasChildNodes()) {
				while (parentNode.childNodes.length >= 1) {
						parentNode.removeChild(parentNode.firstChild);
				}
			}
			if (response.result.has_image == 1) {
				var span = document.createElement('span');
				span.innerHTML = 'From the album';
				dojo.addClass(span, 'sans');
				parentNode.appendChild(span);
				var h2 = document.createElement('h2');
				h2.setAttribute('id', 'music_album_title');
				var album = dojo.byId('playlist_' + playlistId);
				h2.innerHTML = album.previousSibling.innerHTML;	
				parentNode.appendChild(h2);
				var img = document.createElement('img');
				img.src = '/multimedia/audio/static/' + audioId + '_117_117_resize.jpg';
				parentNode.appendChild(img);
				var buy_text = document.createElement('p');
				buy_text.innerHTML = 'Buy your copy of this album.';
				parentNode.appendChild(buy_text);
				var form = document.createElement('form');
				form.setAttribute('id', 'music_buy_now_form');
				parentNode.appendChild(form);
				var input = document.createElement('input');
				input.setAttribute('type', 'text');
				input.setAttribute('id', 'music_buy_now_email');
				input.setAttribute('name', 'music_buy_now_email');
				input.setAttribute('value', 'my email');
				form.appendChild(input);
				var br = document.createElement('br');
				form.appendChild(br);
				var a = document.createElement('a');
				a.setAttribute('href', 'javascript:void(0);');
				a.setAttribute('id', 'music_buy_now_link');
				a.innerHTML = 'Buy now';
				form.appendChild(a);
				var p = document.createElement('p');
				p.setAttribute('id', 'music_buy_now_message');
				form.appendChild(p);
				var message = dojo.byId('music_buy_now_message');
				dojo.connect(dojo.byId('music_buy_now_email'), 'onfocus',
					function(e) {
						if (e.target.value == 'my email') {
							e.target.value = '';
						}
					}
				);
				dojo.connect(dojo.byId('music_buy_now_email'), 'onblur',
					function(e) {
						if (e.target.value == '') {
							e.target.value = 'my email';
						}
					}
				);
				dojo.connect(dojo.byId('music_buy_now_link'), 'onclick',
					function(e) {
						e.preventDefault();
						dojo.html.set(message, '');
						var album = dojo.byId('music_album_title').innerHTML;
						var object = dojo.formToObject(dojo.byId('music_buy_now_form'));
						orderAlbum(album, object.music_buy_now_email, 'music_buy_now_message');
					}
				);
				dojo.connect(dojo.byId('music_buy_now_form'), 'onsubmit',
					function(e) {
						e.preventDefault();
						dojo.html.set(message, '');
						var album = dojo.byId('music_album_title').innerHTML;
						var object = dojo.formToObject(dojo.byId('music_buy_now_form'));
						orderAlbum(album, object.music_buy_now_email, 'music_buy_now_message');
					}
				);
				updateScrollDiv('musicdoublecolumn');
			}
		}
	);
}

// Reviews section
dojo.addOnLoad(
	function(){
		Vurig.rpc.JsonRpc.getReviewsList().addCallback(
			function(response) {
				var counter = 1;
				if (response.result) {
					dojo.forEach(response.result,
						function(object) {
							var parentNode = dojo.byId('reviews_list');					
							var li = document.createElement('li');
							var span = document.createElement('span');
							span.innerHTML = formatDate(object.published);
							dojo.addClass(span, 'sans');
							parentNode.appendChild(span);
							li.innerHTML = object.name;
							li.id = object.item_id;
							dojo.addClass(li, 'pointer');
							if (counter == 1) {
								dojo.addClass(li, 'active');
								Vurig.rpc.JsonRpc.getReviews(Number(object.item_id)).addCallback(
									function(response) {
										if (response.result) {
											dojo.html.set(dojo.query('#reviewsdoublecontent .column2 > span')[0], formatDate(object.published));
											dojo.html.set(dojo.query('#reviewsdoublecontent .column2 > h2')[0], response.result.name);
											dojo.html.set(dojo.query('#reviewsdoublecontent .column2 > div')[0], response.result.description);
										}
									}
								);
								var column = dojo.query('#reviewsdoublecolumn > div .column3')[0];
								if (column.hasChildNodes()) {
									while (column.childNodes.length >= 1) {
											column.removeChild(column.firstChild);
									}
								}
								Vurig.rpc.JsonRpc.getLinks(Number(object.item_id)).addCallback(
									function(response) {
										if (response.result) {
											var span = document.createElement('span');
											span.innerHTML = 'Related links';
											dojo.addClass(span, 'sans');
											column.appendChild(span);
											dojo.forEach(response.result,
												function(object) {
													var ul = document.createElement('ul');
													ul.id = 'reviews_links';
													column.appendChild(ul);
													var li = document.createElement('li');
													var a = document.createElement('a');
													li.appendChild(a);
													a.href = object.url;
													a.target = '_blank';
													a.innerHTML = object.name;
													ul.appendChild(li);
													setTimeout('updateScrollDiv(\'reviewsdoublecolumn\');', 100);
												}
											);
										}
									}
								);
							}
							counter++;
							parentNode.appendChild(li); 
						}
					);
				}
				updateScrollDiv('reviewscolumn');
				dojo.query('#reviews_list > li').connect('onclick', 
					function(e) {
						dojo.forEach(dojo.query('#reviews_list > li'),
							function(childNode) {
								dojo.removeClass(childNode, 'active');
							}
						);
						dojo.addClass(e.target, 'active');
						Vurig.rpc.JsonRpc.getReviews(Number(e.target.id)).addCallback(
							function(response) {
								if (response.result) {
									dojo.html.set(dojo.query('#reviewsdoublecontent .column2 > span')[0], formatDate(response.result.published));			
									dojo.html.set(dojo.query('#reviewsdoublecontent .column2 > h2')[0], response.result.name);
									dojo.html.set(dojo.query('#reviewsdoublecontent .column2 > div')[0], response.result.description);
								}
							}
						);
						var column = dojo.query('#reviewsdoublecolumn .column3')[0];
						if (column.hasChildNodes()) {
							while (column.childNodes.length >= 1) {
									column.removeChild(column.firstChild);
							}
						}
						Vurig.rpc.JsonRpc.getLinks(Number(e.target.id)).addCallback(
							function(response) {
								if (response.result) {
									var span = document.createElement('span');
									span.innerHTML = 'Related links';
									dojo.addClass(span, 'sans');
									column.appendChild(span);
									dojo.forEach(response.result,
										function(object) {
											var ul = document.createElement('ul');
											ul.id = 'reviews_links';
											column.appendChild(ul);
											var li = document.createElement('li');
											var a = document.createElement('a');
											li.appendChild(a);
											a.href = object.url;
											a.target = '_blank';
											a.innerHTML = object.name;
											ul.appendChild(li);
										}
									);
								}
							setTimeout('updateScrollDiv(\'reviewsdoublecolumn\');', 100);
							}
						);
					}
				);
			}
		);	
	}
);

var hasVideos = false;

// Gallery section
dojo.addOnLoad(
	function() {
		Vurig.rpc.JsonRpc.getVideoList().addCallback(
			function(response) {
				var parent = dojo.byId('video_list');
				var counter = 1;
				if (response.result) {
					dojo.forEach(response.result,
						function(video) {
							var li = document.createElement('li');
							li.id = 'video_' + video.video_id;
							li.innerHTML = video.name;
							dojo.addClass(li, 'pointer');
							parent.appendChild(li);
							dojo.connect(li, 'onclick',
								function(e) {
									var params = e.target.id.split('_');
									getVideo(params[1], true);
								}
							);
							if (counter == 1) {
								hasVideos = true;
								getVideo(video.video_id, false);
							}
							counter++;
						}
					);
				}
			}
		);
	}
);

function getVideo(id, autoPlay) {
	dojo.forEach(dojo.query('#gallerycontent > ul > li'),
		function(childNode) {
			dojo.removeClass(childNode, 'active');
		}
	);
	dojo.addClass(dojo.byId('video_' + id), 'active');
	Vurig.rpc.JsonRpc.getVideo(id).addCallback(
		function(response) {
			if (response.result) {
				var parent = dojo.byId('gallerylargecontent');
				if (parent.hasChildNodes()) {
					while (parent.childNodes.length >= 1) {
							parent.removeChild(parent.firstChild);
					}
				}
				var h2 = document.createElement('h2');
				h2.innerHTML = response.result.name;
				parent.appendChild(h2);
				var div = document.createElement('div');
				div.id = 'videoplayer';
				parent.appendChild(div);
				swfobject.embedSWF('/flash/tis_videoplayer.swf', 'videoplayer', '400', '330', '9.0.0', false, {'configpath':'/settings.xml', 'videoId':id, 'autoPlay':(autoPlay) ? 1 : 0}, {bgcolor:'#000000', allowScriptAccess:'always', allownetworking:'all'}, {id:'videoplayer'});
				if (response.result.description) {
					var p = document.createElement('p');
					p.innerHTML = response.result.description;					
					parent.appendChild(p);				
				}
				updateScrollDiv('gallerylargecolumn');
			}
		}
	);				
}

dojo.addOnLoad(
	function() {
		Vurig.rpc.JsonRpc.getPhotoList().addCallback(
			function(response) {
				var parent = dojo.byId('photo_list');
				var counter = 1;
				if (response.result) {
					dojo.forEach(response.result,
						function(photo) {
							var li = document.createElement('li');
							li.id = 'photo_' + photo.image_id;
							li.innerHTML = photo.name;
							dojo.addClass(li, 'pointer');
							parent.appendChild(li);
							dojo.connect(li, 'onclick',
								function(e) {
									var params = e.target.id.split('_');
									getPhoto(params[1]);
								}
							);
							if (hasVideos == false) {
								getPhoto()(photo.image_id);
							}
							counter++;
						}
					);
				}
			}
		);
	}
);

function getPhoto(id) {
	dojo.forEach(dojo.query('#gallerycontent > ul > li'),
		function(childNode) {
			dojo.removeClass(childNode, 'active');
		}
	);
	dojo.addClass(dojo.byId('photo_' + id), 'active');
	Vurig.rpc.JsonRpc.getPhoto(id).addCallback(
		function(response) {
			if (response.result) {
				var parent = dojo.byId('gallerylargecontent');
				if (parent.hasChildNodes()) {
					while (parent.childNodes.length >= 1) {
							parent.removeChild(parent.firstChild);
					}
				}
				var h2 = document.createElement('h2');
				h2.innerHTML = response.result.name;
				var img = document.createElement('img');
				img.src = '/multimedia/image/static/' + id + '_400_400_resize.jpg';
				parent.appendChild(h2);				
				parent.appendChild(img);				
				if (response.result.description) {
					var p = document.createElement('p');
					p.innerHTML = response.result.description;					
					parent.appendChild(p);				
				}
				updateScrollDiv('gallerylargecolumn');
			}
		}
	);
}

/*
dojo.addOnLoad(
	function() {
		Vurig.rpc.JsonRpc.getMediaList().addCallback(
			function(response) {
				if (response.result) {
					var counter = 1;
					dojo.forEach(response.result,
						function(object) {					
							var li = document.createElement('li');
							li.innerHTML = object.name;
							li.id = object.item_id;
							dojo.addClass(li, 'pointer');
							dojo.byId('gallery_list').appendChild(li); 
							if (counter == 1) {
								dojo.addClass(li, 'active');
							
								Vurig.rpc.JsonRpc.getMedia(Number(object.item_id)).addCallback(
									function(response) {
										if (response.result) {
											
											conole.log(response);
											
											var mediaTitle = response.result.name;
											var mediaDate = response.result.published;
											var description = response.result.description;
											Vurig.rpc.JsonRpc.getProperties(Number(object.item_id)).addCallback(
												function(response) {
													if (response.result) {
														var imageId = response.result[0].value;
														Vurig.rpc.JsonRpc.getImage(imageId).addCallback(
															function(response) {
																if (response.result) {
																	var container = dojo.byId('gallerylargecontent');
																	if (container.hasChildNodes()) {
																		while (container.childNodes.length >= 1) {
																				container.removeChild(container.firstChild);
																		}
																	}
																	var date = document.createElement('p');
																	date.innerHTML = formatDate(mediaDate);
																	dojo.addClass(date, 'sans');
																	container.appendChild(date);
																	var title = document.createElement('h2');
																	title.innerHTML = mediaTitle;
																	container.appendChild(title);
																	var image = document.createElement('img');
																	image.src = '/multimedia/image/static/' + imageId + '_400_400_resize.jpg';
																	container.appendChild(image);
																	var descriptionP = document.createElement('p');
																	if (description != null) {
																		image.alt = description;
																		descriptionP.innerHTML = description;
																	}
																	container.appendChild(descriptionP);
																	setTimeout('updateScrollDiv(\'gallerylargecolumn\');', 100);
																}
															}
														);
													}
												}
											);
										}
									}
								);
							}
							counter++;
						}
					);
				}
				dojo.query('#gallery_list > li').connect('onclick', 
					function(e) {
						dojo.forEach(dojo.query('#gallery_list > li'),
							function(childNode) {
								dojo.removeClass(childNode, 'active');
							}
						);
						dojo.addClass(e.target, 'active');					
						Vurig.rpc.JsonRpc.getMedia(Number(e.target.id)).addCallback(
							function(response) {
								if (response.result) {
									var mediaTitle = response.result.name;
									var mediaDate = response.result.published;
									var description = response.result.description;
									Vurig.rpc.JsonRpc.getProperties(Number(e.target.id)).addCallback(
										function(response) {
											if (response.result) {
												var imageId = response.result[0].value;
												Vurig.rpc.JsonRpc.getImage(imageId).addCallback(
													function(response) {
														if (response.result) {
															var container = dojo.byId('gallerylargecontent');
															if (container.hasChildNodes()) {
																while (container.childNodes.length >= 1) {
																		container.removeChild(container.firstChild);
																}
															}
															var date = document.createElement('p');
															date.innerHTML = formatDate(mediaDate);
															dojo.addClass(date, 'sans');
															container.appendChild(date);
															var title = document.createElement('h2');
															title.innerHTML = mediaTitle;
															container.appendChild(title);
															var image = document.createElement('img');
															image.src = '/multimedia/image/static/' + imageId + '_400_400_resize.jpg';
															container.appendChild(image);
															var descriptionP = document.createElement('p');
															if (description != null) {
																image.alt = description;
																descriptionP.innerHTML = description;
															}
															container.appendChild(descriptionP);
															setTimeout('updateScrollDiv(\'gallerylargecolumn\');', 100);
														}
													}
												);
											}
										}
									);
								}
							}
						);
					}
				);
			}
		);	
	}
);
*/

function formatDate(timestamp) {
	var date = new Date(Number(timestamp) * 1000);
	return dojo.date.locale.format(date, {datePattern: 'dd/MM/yy', selector: 'date'});	
}

function updateScrollDiv(div) { 
    var wndo = dw_scrollObj.col[div];
	if (wndo != undefined) {
	    wndo.updateDims();
	    var x = wndo.getX();
	    var y = wndo.getY();

	    if ( wndo.vBarId ) {
	        var barObj = dw_Slidebar.col[wndo.vBarId];
	        dw_Scrollbar_Co.setBarSize(wndo, barObj);
	        dw_Scrollbar_Co.updateScrollbar(wndo, x, y);
	    }
	   
	    
	}

}


function goTo(id){
	var offset = 10;
	switch(id) {
		case 'home':
			var node = dojo.byId('header');
			offset = 0;
			break;
		case 'news':
			var node = dojo.byId('news');
			break;
		case 'shows':
			var node = dojo.byId('shows');
			break;
		case 'music':
			var node = dojo.byId('music');
			break;
		case 'gallery':
			var node = dojo.byId('gallery');
			break;
		case 'biography':
			var node = dojo.byId('biography');
			break;
		case 'contact':
			var node = dojo.byId('contact');
			break;
		case 'reviews':
			var node = dojo.byId('reviews');
			break;
		case 'links':
			var node = dojo.byId('links');
			break;
	}
			var current = dojo._abs(dojo.byId('navigation'), true);
			var target = { x:node.offsetLeft, y:node.offsetTop };
			target.y = target.y + offset;
			
			if (current.y != target.y) {

				var time = Math.abs(current.y - target.y) / 3;
				dojo.fx.chain([
					dojox.fx.smoothScroll({
		            	                    node: node,
	                    	                win:window,
											target:target, 
											duration:time
										}),
					dojo.fx.slideTo({
									node:dojo.byId('navigation'), 
									left:0, 
									top:target.y, 
									unit:'px', 
									duration: 500
									})
				]).play();
			}
}

dojo.addOnLoad(
	function() {
		var navigation = dojo.byId('navigation');
		var current = dojo._abs(dojo.byId('navigation'), true);
		
		dojo.connect(null, 'onscroll',
			function(e) {
					var scrollTop = document.body.scrollTop;
 
					if (scrollTop == 0) {
					    if (window.pageYOffset)
					        scrollTop = window.pageYOffset;
					    else
					        scrollTop = (document.body.parentElement) ? document.body.parentElement.scrollTop : 0;
					}
					
					dojo.fx.slideTo({
									node:navigation, 
									left:navigation.x, 
									top:scrollTop, 
									unit:'px', 
									duration: 500
									}).play();
			}
		);
	}
);

dojo.addOnLoad(
	function(){
		var message = dojo.byId('buy_now_message');
		dojo.connect(dojo.byId('buy_now_email'), 'onfocus',
			function(e) {
				if (e.target.value == 'my email') {
					e.target.value = '';
				}
			}
		);
		dojo.connect(dojo.byId('buy_now_email'), 'onblur',
			function(e) {
				if (e.target.value == '') {
					e.target.value = 'my email';
				}
			}
		);
		dojo.connect(dojo.byId('buy_now_link'), 'onclick',
			function(e) {
				e.preventDefault();
				dojo.html.set(message, '');
				var album = dojo.byId('albumTitle').innerHTML;
				var object = dojo.formToObject(dojo.byId('buynowform'));
				orderAlbum(album, object.buy_now_email, 'buy_now_message');
			}
		);
		dojo.connect(dojo.byId('buynowform'), 'onsubmit',
			function(e) {
				e.preventDefault();
				dojo.html.set(message, '');
				var album = dojo.byId('albumTitle').innerHTML;
				var object = dojo.formToObject(dojo.byId('buynowform'));
				orderAlbum(album, object.buy_now_email, 'buy_now_message');
			}
		);
	}
);

dojo.addOnLoad(
	function(){
		var message = dojo.byId('email_message');
		dojo.connect(dojo.byId('email'), 'onfocus',
			function(e) {
				if (e.target.value == 'my email') {
					e.target.value = '';
				}
			}
		);
		dojo.connect(dojo.byId('email'), 'onblur',
			function(e) {
				if (e.target.value == '') {
					e.target.value = 'my email';
				}
			}
		);
		dojo.connect(dojo.byId('email_link'), 'onclick',
			function(e) {
				e.preventDefault();
				dojo.html.set(message, '');
				var object = dojo.formToObject(dojo.byId('newsletterform'));
				newsletterSignup(object.email);
			}
		);
		dojo.connect(dojo.byId('newsletterform'), 'onsubmit',
			function(e) {
				e.preventDefault();
				dojo.html.set(message, '');
				var object = dojo.formToObject(dojo.byId('newsletterform'));
				newsletterSignup(object.email);
			}
		);
	}
);

dojo.addOnLoad(
	function(e){
		var link = dojo.byId('nextprev');
		dojo.connect(link, 'onclick',
			function(e) {
				e.preventDefault();
				var nodes = dojo.query('.biography1');
				dojo.forEach(nodes,
					function(node) {
						dojo.toggleClass(node, 'hidden');
					}
				);
				var nodes = dojo.query('.biography2');
				dojo.forEach(nodes,
					function(node) {
						dojo.toggleClass(node, 'hidden');
					}
				);
				link.innerHTML = (link.innerHTML == 'Back') ? 'Read more' : 'Back';
			}
		);
		
	}
);

function orderAlbum(albumName, email, messageContainer) {
	var message = dojo.byId(messageContainer);
	Vurig.rpc.JsonRpc.orderAlbum(albumName, email).addCallback(
		function(response) {
			dojo.html.set(message, response.message);
			dojo.fx.chain([
				dojo.fadeIn({
							node: message,
							duration: 1000
				}),
				dojo.fadeOut({
							node: message,
							duration: 1000,
							delay: 2500
				})
			]).play();
		}
	);
}

function newsletterSignup(email) {
	var message = dojo.byId('email_message');
	Vurig.rpc.JsonRpc.newsletterSignup(email).addCallback(
		function(response) {
			dojo.html.set(message, response.message);
			dojo.fx.chain([
				dojo.fadeIn({
							node: message,
							duration: 1000
				}),
				dojo.fadeOut({
							node: message,
							duration: 1000,
							delay: 2500
				})
			]).play();
		}									
	);
}

function playSong(songId, toFlash) {
	var currentSongId = 0;
	var song = dojo.query('#musiccontent #' + 'audio_' + songId)[0];
	if (dojo.query('#musiccontent .pause').length > 0) {
		var params = dojo.query('#musiccontent .pause')[0].id.split('_'); 
		currentSongId = params[1];
	}
	dojo.forEach(dojo.query('#musiccontent > ul > li'),
					function(childNode) {
						dojo.removeClass(childNode, 'active');
						dojo.removeClass(song, 'play');
						dojo.removeClass(childNode, 'pause');
					}
				);
				
	dojo.addClass(song, 'active');
	dojo.addClass(song, 'pause');
	
	dojo.forEach(dojo.query('#musiccontent > ul > li'),
		function(childNode) {
			dojo.addClass(childNode, 'play');
		}
	);
	
	if (currentSongId == songId) {
		dojo.removeClass(song, 'pause');
		dojo.addClass(song, 'play');
	}
	if (toFlash) {
		dojo.byId('navigation').playSong(songId);
	}
}

dojo.addOnLoad(
	function() {
		updateLinks();
	}
);	

function updateLinks() {
	dojo.forEach(dojo.query('a'),
		function(node) {
			if (node.target != '_blank') {
				node.target = '_blank';
			}
		}
	);	
}
