
//
// Relies on data provided in the 'entriesdata.js' files for each continent
//

var ITEMS_PER_JOURNAL = 3;
var INDEX_JOURNAL_NAME	= 0;
var INDEX_JOURNAL_ARRAY	= 1;
var INDEX_JOURNAL_COUNT	= 2;

var journalsList = new Array(
	"Merritt-Journal",	merrittEntries,		MERRITTENTRIESCOUNT,
	"Pierre-Journal",	pierreEntries,		PIERREENTRIESCOUNT
);
var JOURNALSCOUNT = journalsList.length / ITEMS_PER_JOURNAL;

function getCountryForEntry(url) {
	country = "?";
	for (i = 0; i < JOURNALSCOUNT; i++) {
		baseIndex = i * ITEMS_PER_JOURNAL;
		journalName = journalsList[baseIndex + INDEX_JOURNAL_NAME];
		if (url.indexOf(journalName) != -1) {
			entryList = journalsList[baseIndex + INDEX_JOURNAL_ARRAY];
			entryCount = journalsList[baseIndex + INDEX_JOURNAL_COUNT];
			for (j = 0; j < entryCount; j++) {
				baseIndex = j * ITEMS_PER_BLOGENTRY;
				entryID = entryList[baseIndex + INDEX_ENTRY_ID];
				if (url.indexOf(entryID) != -1) {
					country = entryList[baseIndex + INDEX_ENTRY_COUNTRY];
					return country;
				}
			}
		}
	}
	return country;
}

function fillUpCountry(url) {
	var elt = document.getElementById(url);
    	if (elt) {
		country = getCountryForEntry(url);
		elt.innerHTML = country;
	}
}


function getURLToEntry(url, offset) {
	url = String(url);
	for (i = 0; i < JOURNALSCOUNT; i++) {
		baseIndex = i * ITEMS_PER_JOURNAL;
		journalName = journalsList[baseIndex + INDEX_JOURNAL_NAME];
		if (url.indexOf(journalName) != -1) {
			entryList = journalsList[baseIndex + INDEX_JOURNAL_ARRAY];
			entryCount = journalsList[baseIndex + INDEX_JOURNAL_COUNT];
			for (j = 0; j < entryCount; j++) {
				baseIndex = j * ITEMS_PER_BLOGENTRY;
				entryID = entryList[baseIndex + INDEX_ENTRY_ID];
				if (url.indexOf(entryID) != -1) {
					j = j + offset;
					if (j < 0) j = (entryCount - 1);
					if (j >= entryCount) j = 0;
					baseIndex = j * ITEMS_PER_BLOGENTRY;
					newEntryID = entryList[baseIndex + INDEX_ENTRY_ID];
					url = url.replace(entryID, newEntryID);
					return url;
				}
			}
		}
	}
	return url;
}


function getURLToNextEntry(url) {
	return getURLToEntry(url, -1);
}

function getURLToPreviousEntry(url) {
	return getURLToEntry(url, +1);
}

function initializeEntriesNavigationLinks(url) {
	elt = document.getElementById('Previous');
	if (elt) elt.href = getURLToPreviousEntry(url);
	elt = document.getElementById('Next');
	if (elt) elt.href = getURLToNextEntry(url);
}


function showEntryPhotoButton(fakeUrl) {
	showGoogleJournalEntrySkyscraper();

	if (ITEMS_PER_BLOGENTRY < 3)
		return;

	LANGPATH = getLangBaseUrl();
	document.write('<div class=\"photoButton\" onClick=\"clickPhoto(\'' + fakeUrl + '\')\">');
	document.write('<span class=\"side\">');
	document.write(getCountryForEntry(fakeUrl));
	document.write('</span >');
	document.write('<img src=\"' + LANGPATH + 'photos.gif\">');
	document.write('</div>');
}


function getURLToSlideshow(fakeUrl) {
	fakeUrl = String(fakeUrl);
	var url = "";
	for (i = 0; i < JOURNALSCOUNT; i++) {
		baseIndex = i * ITEMS_PER_JOURNAL;
		journalName = journalsList[baseIndex + INDEX_JOURNAL_NAME];
		if (fakeUrl.indexOf(journalName) != -1) {
			entryList = journalsList[baseIndex + INDEX_JOURNAL_ARRAY];
			entryCount = journalsList[baseIndex + INDEX_JOURNAL_COUNT];
			for (j = 0; j < entryCount; j++) {
				baseIndex = j * ITEMS_PER_BLOGENTRY;
				entryID = entryList[baseIndex + INDEX_ENTRY_ID];
				if (fakeUrl.indexOf(entryID) != -1) {
					baseIndex = j * ITEMS_PER_BLOGENTRY;
					var slideshow = entryList[baseIndex + INDEX_ENTRY_SLIDESHOW];
					LANGPATH = getLangBaseUrl();
					url = LANGPATH + '../slideshows/slideshowindex.html?path=trip/' + slideshow;
					return url;
				}
			}
		}
	}
	return url;
}


function clickPhoto(fakeUrl) {
	fakeUrl = String(fakeUrl);
	window.open(getURLToSlideshow(fakeUrl), 'PictureWindow');
}
