/*

E D I T A B L E     A R T L O O K     J A V A S C R I P T      F I L E
FOR USE WITH ARTLOOK GALLERY WEB

1. EACH EVENT FUNCTION NEEDS TO BE CODED - PLEASE CODE ACCORDINGLY
2. SETTINGS TO VARIABLES MAY BE CHANGED TO CHANGE BEHAVIOUR
3. ONE PRE_DEFINED VARIABLE IS AVAILABLE:
			galleryname - the name of the gallery
4. LINES SURROUNDED AS FOLLOWS:-
        //ESSENTIAL SYNTAX - DO NOT REMOVE
				    any code in between these statements must not be removed
				//ESSENTIAL SYNTAX - ENDS

NB. YOU MAY USE AJAX/SCRIPTACULOUS SYNTAX IF YOU WISH
*/

var item_in_window = true;

function onGetEvents(events, event) {
/*
AVAILABLE FIELDS:-
  EVENT_ID, NAME, DESCRIPTION, LOCATION_INFORMATION, DATE_START, DATE_END
*/

  var list = '';
  for (var i = 0, len = events.length; i < len; ++i) {
   		start_date_a = events[i].DATE_START.split('-');
   		end_date_a = events[i].DATE_END.split('-');
   		
   		start_date = new Date(Number(start_date_a[0]), Number(start_date_a[1]) - 1, Number(start_date_a[2]), 1, 1, 1, 1);
   		end_date = new Date(Number(end_date_a[0]), Number(end_date_a[1]) - 1, Number(end_date_a[2]), 1, 1, 1, 1);
		
     list = list + '<span class="exhib_list"><hr>'
					            + '<span class="right">[Click <a href="index.php?location=exhib&exhib='
																	+ events[i].EVENT_ID
																	+ '">here</a> for exhibition details]</span>'
																	+ '<h2>' + events[i].NAME + '</h2>'
																	+ start_date.toDateString() + ' to ' + end_date.toDateString() + '<BR>'
																	+ events[i].DESCRIPTION
																	+ '<hr></span>';
  }
  
  $('exhibs').innerHTML = list;
}


function onGetArtists(artists, artist) {
/*
AVAILABLE FIELDS:-
  ARTIST_ID, ARTIST_NAME
*/	
  var list = '<ul>';
  for (var i = 0, len = artists.length; i < len; ++i) {
			 list=list+'<li><a  class="galartslink" href="index.php?location=artist&artist=' + artists[i].ARTIST_ID + '">' 
  														 + artists[i].ARTIST_NAME + '</a></li>';
  }
  
 $('artist_list').innerHTML = list + '</ul>';

	//ESSENTIAL SYNTAX - DO NOT REMOVE
	if (artist > -2) 
	   getArtist(artist);
	//ESSENTIAL SYNTAX - ENDS
}

function onGetArtistsByBothTypes(artists, stockType) {
/*
AVAILABLE FIELDS:-
  GALLERY_ID ARTIST_ID FIRST_NAME LAST_NAME MIDDLE_NAME PREFIX HONOURS BIOGRAPHY NATIONALITY
  INTRODUCTION SHORT_DESCRIPTION BIBLIOGRAPHY SOLO_EXHIBITIONS GROUP_EXHIBITIONS ARTIST_STATEMENT
  DATES BIRTH_PLACE ARTIST_NAME FILEAS IMAGEFILE
*/
  var list = '<span class="columns">';	
		var dates = '';	
		var split_point = (artists.length / 2) - 1;
  for (var i = 0, len = artists.length; i < len; ++i) {
		  if (artists[i].DATES != '') {
				  dates = '(' + artists[i].DATES + ')';
				} else {
				  dates = '';
				}
			 list = list + '<a class="galartslink" href="index.php?location=artist&artist=' 
																+ artists[i].ARTIST_ID + '&stocktype=' + stockType + '">' 
  														+ artists[i].LAST_NAME + ', ' + artists[i].FIRST_NAME + '</a> ' + artists[i].HONOURS + ' ' + dates  + '<BR />';
				if (i == split_point) {
				   list = list + '</span><span class="columns">';
				}
  }
	list = list + '</span>';
  $('gallery_artists').innerHTML = list;
}

function onGetArtistsForStockTypeExcludeArtType(artists, divId, stockType) {
/*
AVAILABLE FIELDS:-
  GALLERY_ID ARTIST_ID FIRST_NAME LAST_NAME MIDDLE_NAME PREFIX HONOURS BIOGRAPHY NATIONALITY
  INTRODUCTION SHORT_DESCRIPTION BIBLIOGRAPHY SOLO_EXHIBITIONS GROUP_EXHIBITIONS ARTIST_STATEMENT
  DATES BIRTH_PLACE ARTIST_NAME FILEAS IMAGEFILE
*/

  var list = '<span class="columns">';	
		var dates = '';	
		var split_point = (artists.length / 2) - 1;
		
  for (var i = 0, len = artists.length; i < len; ++i) {
		  if (artists[i].DATES != '') {
				  dates = '(' + artists[i].DATES + ')';
				} else {
				  dates = '';
				}
			 list = list + '<a  class="galartslink" href="index.php?location=artist&artist=' 
																+ artists[i].ARTIST_ID + '&stocktype=' + stockType + '">' 
  														+ artists[i].LAST_NAME + ', ' + artists[i].FIRST_NAME + '</a> ' + artists[i].HONOURS + ' ' + dates  + '<BR />';
				if (i == split_point) {
				   list = list + '</span><span class="columns">';
				}
  }
 list = list + '</span>';
 $(divId).innerHTML = list;

}

function onGetArtistsByArtistType(artists) {
/*
AVAILABLE FIELDS:-
  ARTIST_ID, ARTIST_NAME
*/	
  var list = '<ul>';
  for (var i = 0, len = artists.length; i < len; ++i) {
			 list=list+'<li><a  class="galartslink" href="index.php?location=artist&artist=' + artists[i].ARTIST_ID + '">' 
  														 + artists[i].ARTIST_NAME + '</a></li>';
  }  
 $('artist_list').innerHTML = list + '</ul>';
}

function onGetArtistsByArtistType2(artists, artist, divId) {
/*
AVAILABLE FIELDS:-
  ARTIST_ID, ARTIST_NAME
*/	
  var list = '<span class="columns">';	
		var dates = '';			
		var split_point = Math.ceil(artists.length / 2) - 1;		
  for (var i = 0, len = artists.length; i < len; ++i) {
		  if (artists[i].DATES != '') {
				  dates = '(' + artists[i].DATES + ')';
				} else {
				  dates = '';
				}	
			 list = list + '<a  class="galartslink" href="index.php?location=artist&artist=' 
																+ artists[i].ARTIST_ID + '">' 
  														+ artists[i].LAST_NAME + ', ' + artists[i].FIRST_NAME + '</a> ' + artists[i].HONOURS + ' ' + dates  + '<BR />';
																
				if (i == split_point) {
				   list = list + '</span><span class="columns">';
				}
  }
 list = list + '</span>';
 $(divId).innerHTML = list;
}


function onGetArtistsForStockType(artists, stocktype) {
/*
AVAILABLE FIELDS:-
  ARTIST_ID, ARTIST_NAME
*/
  var list = '';
  for (var i = 0, len = artists.length; i < len; ++i) {
			 list=list+'<a href="index.php?location=artist&artist=' + artists[i].ARTIST_ID + '&stocktype=' + stocktype + '">' 
  														 + artists[i].ARTIST_NAME + '</a>&nbsp;&nbsp;';
  }
  
  $('artist').innerHTML = list;
}



function onGetArtist(artist, stockType) {
/*
AVAILABLE FIELDS:-
  GALLERY_ID ARTIST_ID FIRST_NAME LAST_NAME MIDDLE_NAME PREFIX HONOURS BIOGRAPHY NATIONALITY
  INTRODUCTION SHORT_DESCRIPTION BIBLIOGRAPHY SOLO_EXHIBITIONS GROUP_EXHIBITIONS ARTIST_STATEMENT
  DATES BIRTH_PLACE ARTIST_NAME FILEAS IMAGEFILE

*/
	 $('biog').innerHTML = artist.BIOGRAPHY;
}

function onGetEvent(event) {
/*
AVAILABLE FIELDS:-
   EVENT_ID, NAME, DESCRIPTION, LOCATION_INFORMATION, DATE_INFORMATION, TYPE_ID,
   SUB_TYPE_ID, DATE_START, DATE_END, IMAGEFILE	  
*/
  var start_date_a, end_date_a;
				
		start_date_a = event.DATE_START.split('-');
		end_date_a = event.DATE_END.split('-');
		
		start_date = new Date(Number(start_date_a[0]), Number(start_date_a[1]) - 1, Number(start_date_a[2]), 1, 1, 1, 1);
		end_date = new Date(Number(end_date_a[0]), Number(end_date_a[1]) - 1, Number(end_date_a[2]), 1, 1, 1, 1);


	$('exhib').innerHTML = '<h1 align="left">' + event.NAME + '</h1>'
	                     + '<p align="left"><span class="exhib_list">'
																						+ start_date.toDateString() + ' to ' + end_date.toDateString() + '<br />'
																						+ event.DESCRIPTION
																						+ '</span><br /><br />Click on the images for further details</p><br />';
  getEventItems(event.EVENT_ID, -1, -1);
}

function onGetMasterEvent(event) {
/*
AVAILABLE FIELDS:-
   EVENT_ID, NAME, DESCRIPTION, LOCATION_INFORMATION, DATE_INFORMATION, TYPE_ID,
   SUB_TYPE_ID, DATE_START, DATE_END, IMAGEFILE	  
*/
//  var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];

		
  var start_date_a, end_date_a;
				
		start_date_a = event.DATE_START.split('-');
		end_date_a = event.DATE_END.split('-');

		start_date = new Date(Number(start_date_a[0]), Number(start_date_a[1]) - 1, Number(start_date_a[2]), 1, 1, 1, 1);
		end_date = new Date(Number(end_date_a[0]), Number(end_date_a[1]) - 1, Number(end_date_a[2]), 1, 1, 1, 1);

  $('masterevent').innerHTML = '<h1 align="left">' + event.NAME + '</h1>'
		                           + '<p align="left">'
																													+ '<span class="exhib_list">'
																													+ start_date.toDateString() + ' to ' + end_date.toDateString() + '<br />'
																													+ event.DESCRIPTION + '</span><br />'
																													+ 'Click on the image for further details</p><br />';  

}



function onGetItem(item, sourceCall, sourceID) {
/*
AVAILABLE FIELDS:-
  GALLERY_ID ARTIST_ID ITEM_ID CATEGORY_ID TITLE YEAR_TEXT PRICE DESCRIPTION DIMENSIONS_TEXT
  MEDIUM PROVENANCE HISTORY LITERATURE NOTES CONDITION STATUS SEQUENCE EVENTS_ONLY LOCKED
  CREATOR REFERENCE YEAR_CREATED INTERNAL_UNITS MANUFACTURER INFORMATION REMAINING IMAGEFILE ARTIST_NAME BOF EOF

SOURCE CALL AND SOURCEid OPTIONS:-
  SOURCE CALL VALUE		SOURCE ID MEANING	
  artist							id of artist
	event								id of event
	type								id of stock type
	artist_type					id of artist
	
*/
 var title = '';
 if (item.TITLE != '') {
	   title = item.TITLE + '  &nbsp;&nbsp;  ' + item.YEAR_TEXT;
	}
	else {
	   title = item.YEAR_TEXT;
	}
	 
 $('art').innerHTML = '<h2>' + item.ARTIST_NAME 
	                     + '</h2><div id="displaysingle"><img id="mainimage" src="'
         		           + item.IMAGEFILE 
																						+ '" width="600" height="512" /></div><div  id="displaysingle_text">'
													         + title + '<br />'
													         + item.MEDIUM + ' &nbsp;&nbsp; ' + item.DIMENSIONS_TEXT + '<br />'
													         + item.DESCRIPTION + '</div>';
 getSubImages(item.ITEM_ID);
	document.title = galleryname + ': ' + item.ARTIST_NAME + ' - ' + item.TITLE;
}

function onGetItems(items, displayType, typeID) {
/*
AVAILABLE FIELDS:-
  GALLERY_ID ARTIST_ID ITEM_ID CATEGORY_ID TITLE YEAR_TEXT PRICE DESCRIPTION DIMENSIONS_TEXT
  MEDIUM PROVENANCE HISTORY LITERATURE NOTES CONDITION STATUS SEQUENCE EVENTS_ONLY LOCKED
  CREATOR REFERENCE YEAR_CREATED INTERNAL_UNITS MANUFACTURER INFORMATION REMAINING IMAGEFILE ARTIST_NAME BOF EOF
*/

  var list = '';
  for (var i = 0, len = items.length; i < len; ++i) {
		  list = list + '<span class="floatpic"><a href="index.php?location=art&amp;item=' + items[i].ITEM_ID + '"><img src="' + items[i].IMAGEFILE + '" width="200" height="171" /></a><BR />' + items[i].TITLE + '</span>\n';
		}
		
  $('items').innerHTML = list;
}

function onGetUnsignedItems(items, displayType, typeID) {
/*
AVAILABLE FIELDS:-
  GALLERY_ID ARTIST_ID ITEM_ID CATEGORY_ID TITLE YEAR_TEXT PRICE DESCRIPTION DIMENSIONS_TEXT
  MEDIUM PROVENANCE HISTORY LITERATURE NOTES CONDITION STATUS SEQUENCE EVENTS_ONLY LOCKED
  CREATOR REFERENCE YEAR_CREATED INTERNAL_UNITS MANUFACTURER INFORMATION REMAINING IMAGEFILE ARTIST_NAME BOF EOF
*/

  var list = '';
  for (var i = 0, len = items.length; i < len; ++i) {
		  list = list + '<a class="galartslink" href="index.php?location=art&amp;item=' 
				            + items[i].ITEM_ID 
																+ '">Inv.#: ' 
																+ items[i].ITEM_ID 
																+ ' - ' 
																+ items[i].TITLE 
																+ '</a><BR />\n';
		}
		
  $('artistslist').innerHTML = list;
}


function onGetEventItems(items) {
/*
AVAILABLE FIELDS:-
  GALLERY_ID ARTIST_ID ITEM_ID CATEGORY_ID TITLE YEAR_TEXT PRICE DESCRIPTION DIMENSIONS_TEXT
  MEDIUM PROVENANCE HISTORY LITERATURE NOTES CONDITION STATUS SEQUENCE EVENTS_ONLY LOCKED
  CREATOR REFERENCE YEAR_CREATED INTERNAL_UNITS MANUFACTURER INFORMATION REMAINING ARTIST_NAME IMAGEFILE EVENT_ID BOF EOF
*/

  var list = '';
  for (var i = 0, len = items.length; i < len; ++i)
     list = list + '<span class="floatpic"><a href="index.php?location=item&item=' 
					            + items[i].ITEM_ID + '">'
					            + '<img src="' + items[i].IMAGEFILE + '" border="0" alt="'
																	+ items[i].TITLE + '"></a><br />'
																	+ '<span class="exhib_details_artist">' + items[i].ARTIST_NAME + '</span><br />'
																	+ items[i].TITLE + '</span>';
  $('displaypic').innerHTML = list;
			
}

function onGetStockTypes(stocktypes) {
/*
AVAILABLE FIELDS:-
  ATYPE, TYPE_ID
*/	
  var list = '';
  for (var i = 0, len = stocktypes.length; i < len; ++i) {
     list=list+'<a id="type' + stocktypes[i].TYPE_ID + '" href="javascript:void%200" onclick="getItemsByType(' + stocktypes[i].TYPE_ID + ');">' 
  														 + stocktypes[i].ATYPE + '</a>&nbsp;&nbsp;';
  }
  
  $('artists').innerHTML = list;
	$('items').innerHTML = '';
	$('artist').innerHTML = '';
	$('artistimage').innerHTML = '';
}

function onGetStockTypesForArtist(stocktypes, artist) {
/*
AVAILABLE FIELDS:-
  ATYPE, TYPE_ID
*/	
  var list = '';
  for (var i = 0, len = stocktypes.length; i < len; ++i) {
     list=list+'<a class="types" id="type' + stocktypes[i].TYPE_ID + '" href="javascript:void%200" onclick="getItemsByArtistAndType(' + artist + ',' + stocktypes[i].TYPE_ID + ');">' 
  														 + stocktypes[i].ATYPE + '</a>&nbsp;&nbsp;';
  }
  list=list+'<a class="all" id="all" href="javascript:void%200" onclick="getItemsByArtistAndType(' + artist + ',-1);">ALL</a>&nbsp;&nbsp;';
	$('artist').innerHTML = list + $('artist').innerHTML;
}

function swapimage(srcimage) {
  var mainsource = $('mainimage').src;
  $('mainimage').src = $(srcimage).src;
		$(srcimage).src = mainsource;
}

function onGetSubImages(images) {
/*
AVAILABLE FIELDS:-
   ITEM_ID, IMAGE_ID, DESCRIPTION, SEQUENCE_NUMBER, TITLE, LONG_DESCRIPTION, IMAGEFILE
*/	

  var list = '';
  for (var i = 0, len = images.length; i < len; ++i) {	
          list = list + '<span style="float:left; margin-bottom:10px;">'
										            + '<a href="javascript:void%200" onclick="swapimage(\'sub' + i + '\')">'
																						+ '<img class="subimage" id="sub' + i + '" src="' 
																						+ images[i].IMAGEFILE + '" /></a></span>';

  }
		
	$('moreimages').innerHTML = list;
	 
}

function onGetArtistTypes(atypes) {
/*
AVAILABLE FIELDS:-
   TYPE_ID, TYPE_NAME
*/	

  var list = 'Click on a name to view available work<br><br>';
  for (var i = 0, len = atypes.length; i < len; ++i) {	
          list=list + '<h1 align="left">' + atypes[i].TYPE_NAME + '</h1>';

  }
  
	$('rightcolumn').innerHTML = list; 
}
		
function submitMailQuery() {
     var url = 'feedback.php';
     var pars = Form.serialize(document.contactform);
     var myAjax = new Ajax.Request(url, {method: 'post', parameters: pars,
		                        onComplete:function(request){
              														var resp = request.responseText; 
																												if ( resp.indexOf('Thank') == 0) {
																												   $('formcont').innerHTML = resp;
																												} else {																												             														
                 														$('errors').innerHTML = resp;
																												}														
              												 }
														});
}

