/*
 * utils.js
 *
 * Version: $Revision: 2081 $
 *
 * Date: $Date: 2007-07-20 13:52:58 -0700 (Fri, 20 Jul 2007) $
 *
 * Copyright (c) 2004, Hewlett-Packard Company and Massachusetts
 * Institute of Technology.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are
 * met:
 *
 * - Redistributions of source code must retain the above copyright
 * notice, this list of conditions and the following disclaimer.
 *
 * - Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 *
 * - Neither the name of the Hewlett-Packard Company nor the name of the
 * Massachusetts Institute of Technology nor the names of their
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
 * DAMAGE.
 */

/*
 * Utility Javascript methods for DSpace
 */

// Popup window - here so it can be referred to by several methods
var popupWindow;

// =========================================================
//  Methods for e-person popup window
// =========================================================

// Add to list of e-people on this page -- invoked by eperson popup window
function addEPerson(id, email, name) {
    var newplace = window.document.epersongroup.eperson_id.options.length;

    if (newplace > 0 && window.document.epersongroup.eperson_id.options[0].value == "") {
        newplace = 0;
    }

    // First we check to see if e-person is already there
    for (var i = 0; i < window.document.epersongroup.eperson_id.options.length; i++) {
        if (window.document.epersongroup.eperson_id.options[i].value == id)
        {
            newplace = -1;
        }
    }

    if (newplace > -1) {
        window.document.epersongroup.eperson_id.options[newplace] = new Option(name + " (" + email + ")", id);
    }
}

// Add to list of groups on this page -- invoked by eperson popup window
function addGroup(id, name) {
    var newplace = window.document.epersongroup.group_ids.options.length;

	if (newplace > 0 && window.document.epersongroup.group_ids.options[0].value == "") {
        newplace = 0;
    }

    // First we check to see if group is already there
    for (var i = 0; i < window.document.epersongroup.group_ids.options.length; i++) {
        // is it in the list already
        if (window.document.epersongroup.group_ids.options[i].value == id) {
            newplace = -1;
        }

        // are we trying to add the new group to the new group on an Edit Group page (recursive)
        if (window.document.epersongroup.group_id) {
            if (window.document.epersongroup.group_id.value == id) {
                newplace = -1;
            }
        }
    }

    if (newplace > -1) {
        window.document.epersongroup.group_ids.options[newplace] = new Option(name + " (" + id + ")", id);
    }
}

// This needs to be invoked in the 'onClick' javascript event for buttons
// on pages with a dspace:selecteperson element in them
function finishEPerson() {
    selectAll(window.document.epersongroup.eperson_id);

	if (popupWindow != null) {
		popupWindow.close();
	}
}

// This needs to be invoked in the 'onClick' javascript event for buttons
// on pages with a dspace:selecteperson element in them
function finishGroups() {
    selectAll(window.document.epersongroup.group_ids);

    if (popupWindow != null) {
		popupWindow.close();
    }
}

// =========================================================
//  Miscellaneous utility methods
// =========================================================

// Open a popup window (or bring to front if already open)
function popup_window(winURL, winName) {
    var props = 'scrollBars=yes,resizable=yes,toolbar=no,menubar=no,location=no,directories=no,width=640,height=480';
    popupWindow = window.open(winURL, winName, props);
    popupWindow.focus();
}


// Select all options in a <SELECT> list
function selectAll(sourceList) {
    for(var i = 0; i < sourceList.options.length; i++) {
        if ((sourceList.options[i] != null) && (sourceList.options[i].value != ""))
            sourceList.options[i].selected = true;
    }
    return true;
}

// Deletes the selected options from supplied <SELECT> list
function removeSelected(sourceList) {
    var maxCnt = sourceList.options.length;
    for(var i = maxCnt - 1; i >= 0; i--) {
        if ((sourceList.options[i] != null) && (sourceList.options[i].selected == true))
        {
            sourceList.options[i] = null;
        }
    }
}


// Disables accidentally submitting a form when the "Enter" key is pressed.
// Just add "onkeydown='return disableEnterKey(event);'" to form.
function disableEnterKey(e) {
     var key;
     if(window.event)
          key = window.event.keyCode;     //Internet Explorer
     else
          key = e.which;     //Firefox & Netscape

     if(key == 13)  //if "Enter" pressed, then disable!
          return false;
     else
          return true;
}


// ******************************************************
// Functions used by controlled vocabulary add-on
// There might be overlaping with existing functions
// ******************************************************

function expandCollapse(node, contextPath) {
	node = node.parentNode;
	var childNode  = (node.getElementsByTagName("ul"))[0];

	if(!childNode) return false;

	var image = node.getElementsByTagName("img")[0];
	
	if(childNode.style.display != "block") {
		childNode.style.display  = "block";
		image.src = contextPath + "/image/controlledvocabulary/m.gif";
		image.alt = "Collapse search term category";
	} else {
		childNode.style.display  = "none";
		image.src = contextPath + "/image/controlledvocabulary/p.gif";
		image.alt = "Expand search term category";
	}
	
	return false;
}

function getAnchorText(ahref) {
 	if (isMicrosoft()) 
		return ahref.childNodes.item(0).nodeValue;
	else return ahref.text;
}

function getTextValue(node) {
 	if(node.nodeName == "A") {
 		return getAnchorText(node);
 	} else {
 		return "";
 	}
 	
}

function getParentTextNode(node) {
	var parentNode = node.parentNode.parentNode.parentNode;
	var children = parentNode.childNodes;
	var textNode;
	for(var i=0; i< children.length; i++) {
		var child = children.item(i);
		if(child.className == "value") {
			return child;
		}
	}
	return null;
}

function ec(node, contextPath) {
	expandCollapse(node, contextPath);
	return false;
}


function i(node) {
	return sendBackToParentWindow(node);
}


function getChildrenByTagName(rootNode, tagName) {
	var children = rootNode.childNodes;
	var result = new Array(0);
	if(children == null) return result;
	for(var i=0; i<children.length; i++) {
		if(children[i].tagName == tagName) {
			var elementArray = new Array(1);
			elementArray[0] = children[i];
			result = result.concat(elementArray);
		}
	}
	return result;
}

function popUp(URL) {
	var page;
	page = window.open(URL, 'controlledvocabulary', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=650,height=450');
}


function isNetscape(v) {
		  return isBrowser("Netscape", v);
}
	
function isMicrosoft(v) {
		  return isBrowser("Microsoft", v);
}

function isMicrosoft() {
		  return isBrowser("Microsoft", 0);
}


function isBrowser(b,v) {
		  browserOk = false;
		  versionOk = false;

		  browserOk = (navigator.appName.indexOf(b) != -1);
		  if (v == 0) versionOk = true;
		  else  versionOk = (v <= parseInt(navigator.appVersion));
		  return browserOk && versionOk;
}


////////////////////////////////////////////////////////////////////////////////////////////


//FUNCTIONS FOR THE ADVANCED SERACH EFFECTS////////////////////////////////

function onFieldChange(searchLabel) {
	var selectedIndex = document.getElementById('tfield1').selectedIndex;
	if (selectedIndex == 8){
		document.getElementById('tfield4_column').style.display = "block";
		document.getElementById('tfield4_label').style.display = "block";
		document.getElementById('tfield4').style.display = "block";	
	} else {
		document.getElementById('tfield4_column').style.display = "none";
		document.getElementById('tfield4_label').style.display = "none";
		document.getElementById('tfield4').style.display = "none";
		document.getElementById('tquery1_label').innerHTML = searchLabel;
		document.getElementById('tquery4_label').style.display = "none";
		document.getElementById('tquery4').style.display = "none";
		document.getElementById('date_row').setAttribute('height','25');
		document.getElementById('tfield4').selectedIndex = 0;
		document.getElementById('tfield4').options[0].selected = true;
		document.getElementById('tquery4').value = "";
	}	
	
	if (selectedIndex == 1) {
		document.getElementById('radio1').checked = false;
		document.getElementById('radio2').checked = true;
		document.getElementById('radio1').disabled = true;
		document.getElementById('radio2').disabled = true;
	}

	if (selectedIndex != 1) {
		var selectedIndex2 = document.getElementById('tfield2').selectedIndex;
		var selectedIndex3 = document.getElementById('tfield3').selectedIndex;
		if (selectedIndex2 != 1 && selectedIndex3 != 1){
			document.getElementById('radio1').checked = true;
			document.getElementById('radio2').checked = false;
			document.getElementById('radio1').disabled = false;
			document.getElementById('radio2').disabled = false;
		}
	}
}

function onFieldChange2(){
	var selectedIndex = document.getElementById('tfield2').selectedIndex;
	if (selectedIndex == 8) {
		document.getElementById('tfield5_column').style.display = "block";
		document.getElementById('tfield5_label').style.display = "none";
		document.getElementById('tfield5').style.display = "block";
	} else {
		document.getElementById('tfield5_column').style.display = "none";
		document.getElementById('tfield5_label').style.display = "none";
		document.getElementById('tfield5').style.display = "none";
		document.getElementById('tquery2_label').style.display = "none";
		document.getElementById('tquery5_label').style.display = "none";
		document.getElementById('tquery5').style.display = "none";
		document.getElementById('date_row2').setAttribute('height','25');
		document.getElementById('tfield5').selectedIndex = 0;
		document.getElementById('tfield5').options[0].selected = true;
		document.getElementById('tquery5').value = "";
	}
	
	if (selectedIndex == 1) {
		document.getElementById('radio1').checked = false;
		document.getElementById('radio2').checked = true;
		document.getElementById('radio1').disabled = true;
		document.getElementById('radio2').disabled = true;
	}
	
	if (selectedIndex != 1) {
		var selectedIndex2 = document.getElementById('tfield1').selectedIndex;
		var selectedIndex3 = document.getElementById('tfield3').selectedIndex;
		if (selectedIndex2 != 1 && selectedIndex3 != 1){
			document.getElementById('radio1').checked = true;
			document.getElementById('radio2').checked = false;
			document.getElementById('radio1').disabled = false;
			document.getElementById('radio2').disabled = false;
		}
	}
}

function onFieldChange3() {
	var selectedIndex = document.getElementById('tfield3').selectedIndex;
	if (selectedIndex == 8){
		document.getElementById('tfield6_column').style.display = "block";
		document.getElementById('tfield6_label').style.display = "none";
		document.getElementById('tfield6').style.display = "block";
	}
	else{
		document.getElementById('tfield6_column').style.display = "none";
		document.getElementById('tfield6_label').style.display = "none";
		document.getElementById('tfield6').style.display = "none";
		document.getElementById('tquery3_label').style.display = "none";
		document.getElementById('tquery6_label').style.display = "none";
		document.getElementById('tquery6').style.display = "none";
		document.getElementById('date_row3').setAttribute('height','25');
		document.getElementById('tfield6').selectedIndex = 0;
		document.getElementById('tfield6').options[0].selected = true;
		document.getElementById('tquery6').value = "";
	}
	if (selectedIndex == 1)
	{
		document.getElementById('radio1').checked = false;
		document.getElementById('radio2').checked = true;
		document.getElementById('radio1').disabled = true;
		document.getElementById('radio2').disabled = true;
	}
	if (selectedIndex != 1)
	{
		var selectedIndex2 = document.getElementById('tfield1').selectedIndex;
		var selectedIndex3 = document.getElementById('tfield2').selectedIndex;
		if (selectedIndex2 != 1 && selectedIndex3 != 1){
			document.getElementById('radio1').checked = true;
			document.getElementById('radio2').checked = false;
			document.getElementById('radio1').disabled = false;
			document.getElementById('radio2').disabled = false;
		}
	}
}

function onOptionChange(fromLabel, searchLabel){
	var selectedIndex = document.getElementById('tfield4').selectedIndex;
	if (selectedIndex == 3){
		document.getElementById('tquery1_label').innerHTML = fromLabel;
		document.getElementById('tquery4_label').style.display = "block";
		document.getElementById('tquery4').style.display = "block";
		document.getElementById('date_row').setAttribute('height','50');
	} else {
		document.getElementById('tquery1_label').innerHTML = searchLabel;
		document.getElementById('tquery4_label').style.display = "none";
		document.getElementById('tquery4').style.display = "none";
		document.getElementById('date_row').setAttribute('height','25');
		document.getElementById('tquery4').value = "";
	}	
}

function onOptionChange2(fromLabel, searchLabel){
	var selectedIndex = document.getElementById('tfield5').selectedIndex;
	if (selectedIndex == 3){
		document.getElementById('tquery2_label').innerHTML = fromLabel;
		document.getElementById('tquery2_label').style.display = "block";
		document.getElementById('tquery5_label').style.display = "block";
		document.getElementById('tquery5').style.display = "block";
		document.getElementById('date_row2').setAttribute('height','50');
	}
	else{
		document.getElementById('tquery2_label').style.display = "none";
		document.getElementById('tquery5_label').style.display = "none";
		document.getElementById('tquery5').style.display = "none";
		document.getElementById('date_row2').setAttribute('height','25');
		document.getElementById('tquery5').value = "";
	}	
}

function onOptionChange3(fromLabel, searchLabel){
	var selectedIndex = document.getElementById('tfield6').selectedIndex;
	if (selectedIndex == 3){
		document.getElementById('tquery3_label').innerHTML = fromLabel;
		document.getElementById('tquery3_label').style.display = "block";
		document.getElementById('tquery6_label').style.display = "block";
		document.getElementById('tquery6').style.display = "block";
		document.getElementById('date_row3').setAttribute('height','50');
	}
	else{
		document.getElementById('tquery3_label').style.display = "none";
		document.getElementById('tquery6_label').style.display = "none";
		document.getElementById('tquery6').style.display = "none";
		document.getElementById('date_row3').setAttribute('height','25');
		document.getElementById('tquery6').value = "";
	}	
}

function onResetClick(searchLabel){
	document.getElementById('tfield4_column').style.display = "none";
	document.getElementById('tfield4_label').style.display = "none";
	document.getElementById('tfield4').style.display = "none";
	document.getElementById('tquery1_label').innerHTML = searchLabel;
	document.getElementById('tquery4_label').style.display = "none";
	document.getElementById('tquery4').style.display = "none";
	document.getElementById('date_row').setAttribute('height','25');
	document.getElementById('tfield4').selectedIndex = 0;
	document.getElementById('tfield4').options[0].selected = true;
	document.getElementById('tquery4').value = "";
	document.getElementById('tfield5_column').style.display = "none";
	document.getElementById('tfield5_label').style.display = "none";
	document.getElementById('tfield5').style.display = "none";
	document.getElementById('tquery2_label').style.display = "none";
	document.getElementById('tquery5_label').style.display = "none";
	document.getElementById('tquery5').style.display = "none";
	document.getElementById('date_row2').setAttribute('height','25');
	document.getElementById('tfield5').selectedIndex = 0;
	document.getElementById('tfield5').options[0].selected = true;
	document.getElementById('tquery5').value = "";
	document.getElementById('tfield6_column').style.display = "none";
	document.getElementById('tfield6_label').style.display = "none";
	document.getElementById('tfield6').style.display = "none";
	document.getElementById('tquery3_label').style.display = "none";
	document.getElementById('tquery6_label').style.display = "none";
	document.getElementById('tquery6').style.display = "none";
	document.getElementById('date_row3').setAttribute('height','25');
	document.getElementById('tfield6').selectedIndex = 0;
	document.getElementById('tfield6').options[0].selected = true;
	document.getElementById('tquery6').value = "";
}

function validateDateNumber(check) {
	if (document.getElementById('tfield1').selectedIndex == 8){
		var date1 = document.getElementById('tquery1').value;
		var date2 = document.getElementById('tquery4').value;
		if (!isNaN(date1) && !isNaN(date2)){
			document.getElementById('error_log').style.display = "none";
			document.getElementById('adv_search_submit').disabled = false;
			if (check){
				validateDateNumber2(false);
				validateDateNumber3(false);	
			}
		}
		else{
			document.getElementById('error_log').innerHTML = "Please, insert a valid year!";
			document.getElementById('error_log').style.display = "block";
			document.getElementById('adv_search_submit').disabled = true;
		}
	}
}

function validateDateNumber2(check){
	if (document.getElementById('tfield2').selectedIndex == 8){
		var date1 = document.getElementById('tquery2').value;
		var date2 = document.getElementById('tquery5').value;
		if (!isNaN(date1) && !isNaN(date2)){
			document.getElementById('error_log').style.display = "none";
			document.getElementById('adv_search_submit').disabled = false;
			if (check){
				validateDateNumber(false);
				validateDateNumber3(false);
			}
		}
		else{
			document.getElementById('error_log').innerHTML = "Please, insert a valid year!";
			document.getElementById('error_log').style.display = "block";
			document.getElementById('adv_search_submit').disabled = true;
		}
	}	
}

function validateDateNumber3(check){
	if (document.getElementById('tfield3').selectedIndex == 8){
		var date1 = document.getElementById('tquery3').value;
		var date2 = document.getElementById('tquery6').value;
		if (!isNaN(date1) && !isNaN(date2)){
			document.getElementById('error_log').style.display = "none";
			document.getElementById('adv_search_submit').disabled = false;
			if (check){
				validateDateNumber(false);
				validateDateNumber2(false);
			}
		}
		else{
			document.getElementById('error_log').innerHTML = "Please, insert a valid year!";
			document.getElementById('error_log').style.display = "block";
			document.getElementById('adv_search_submit').disabled = true;
		}
	}	
}


//////////////////////////////////////////////////////////////////////////


///Added to support popups///


function PopupCenter(pageURL, title,w,h) {
var left = (screen.width/2)-(w/2);
var top = (screen.height/2)-(h/2);
var targetWin = window.open (pageURL, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+top+', left='+left);
} 

/////

////////////////////////////////////////////////////////////////////////

// ADDED FOR SELF-ARCHIVE FORMS

var authorId = 2;
var stepAuthor = 0;
var contributorId = 2;
var contributorIndex = 6;

function addAuthor(add, remove, locale) {

	var parentTable = document.getElementById('bas_info_table');
	var r = parentTable.insertRow((authorId+stepAuthor+3));
	r.setAttribute('id', "author_" + authorId);
	//document.getElementById('author'+authorId).innerHTML = '<td></td><td><div><input style="width:90%" type="text" name="author" id="author_id_'+authorId+'" onclick="makeCurrent(this);" onfocus="makeCurrent(this);" onkeyup="checkCompletion("'+locale+'");"/></div></td><td><div id="addremove_author_'+authorId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addAuthor(\''+add+'\',\''+remove+'\',locale);" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeAuthor(\''+locale+'\');" class="normal_button"/></div></td>';
	var authorTitle;
	var affiliationTitle;
	
	if (document.getElementById('myLocale').value == 'en')
	{
		authorTitle = "Author";
		affiliationTitle = "Author Affiliation";
	}
	else{
		authorTitle = "Συγγραφεας";
		affiliationTitle = "Ιδιοτητα Συγγραφεα";
	}
		
	$("#author_"+authorId).html('<td><div class="field-label">'+ authorTitle +'</div></td><td colspan=2><div><input style="width:90%" type="text" name="author" id="author_id_'+authorId+'" onclick="makeCurrent(this);" onfocus="makeCurrent(this);" onkeyup="checkCompletion("'+locale+'");"/></div></td>');

	var options_xml = {
		script: function (input) { return "AuthorityFileServlet?input="+input+"&index=1003"; },
		varname:"input",
		shownoresults:false,
		minchars:3,
		delay:200,
		cache:false,
		timeout:2000
	};
	var as_xml = new bsn.AutoSuggest('author_id_' + authorId, options_xml);
	
	r = parentTable.insertRow((authorId+stepAuthor+4));
	r.setAttribute('id', "affiliation_" + authorId);
	$("#affiliation_"+authorId).html('<td><div class="field-label">'+ affiliationTitle +'</div></td><td><div><input style="width:90%" type="text" name="affiliation" value="" id="affiliation_id_'+authorId+'" onclick="makeCurrent(this);" onfocus="makeCurrent(this);" onkeyup="checkCompletion("'+locale+'");"/><input type="hidden" name="affiliation_hidden" id="affiliation_hidden_id_'+authorId+'"/></div></td><td><div id="addremove_author_'+authorId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addAuthor(\''+add+'\',\''+remove+'\',\''+locale+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeAuthor(\''+locale + '\');" class="normal_button"/></div></td>');

	stepAuthor = stepAuthor + 1;
	var prev_author_id = authorId-1;
	document.getElementById('addremove_author_'+prev_author_id).style.display = 'none';
	authorId = authorId+1;
	
	contributorIndex = contributorIndex+2;
	checkCompletion(locale);
	
	
}

function removeAuthor(locale) {
	var parentTable = document.getElementById('bas_info_table');
	//var rowToRemove = authorId+1;
	var rowToRemove = authorId+stepAuthor+1;
	
	parentTable.deleteRow(rowToRemove);
	parentTable.deleteRow(rowToRemove);
	
	authorId = authorId-1;
	stepAuthor = stepAuthor -1;
	contributorIndex = contributorIndex - 2;
	
	var prev_author_id = authorId -1;
	document.getElementById('addremove_author_'+prev_author_id).style.display = 'block';
	checkCompletion(locale);
}

function addContributor(add, remove) {
	var parentTable = document.getElementById('bas_info_table');
	var r = parentTable.insertRow(contributorIndex);
	r.setAttribute('id', "contributor_" + contributorId);
	$("#contributor_"+contributorId).html('<td></td><td><div><input style="width:90%" type="text" name="contributor" id="contributor_id_'+contributorId+'" onclick="makeCurrent(this);" onfocus="makeCurrent(this);" /></div></td><td><div id="addremove_contributor_'+contributorId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addContributor(\''+add+'\',\''+remove+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeContributor();" class="normal_button"/></div></td>');
    var prev_contributor_id = contributorId-1;
	document.getElementById('addremove_contributor_'+prev_contributor_id).style.display = 'none';
	contributorId = contributorId+1;	
	contributorIndex = contributorIndex + 1;
}

function removeContributor() {
	var parentTable = document.getElementById('bas_info_table');
	var rowToRemove = contributorIndex-1;
	parentTable.deleteRow(rowToRemove);
	contributorId = contributorId-1;
	contributorIndex = contributorIndex-1;
	var prev_contributor_id = contributorId-1;
	document.getElementById('addremove_contributor_'+prev_contributor_id).style.display = 'block';
}


var keywId = 2;

function addKeyw(add, remove) {
	var parentTable = document.getElementById('subject_table');
	var r = parentTable.insertRow(keywId);
	r.setAttribute('id', "keyw_" + keywId);
	$("#keyw_"+keywId).html('<td></td><td><div><input style="width:90%" type="text" name="keyw" id="keyw_id_'+keywId+'" onclick="makeCurrent(this);"/></div></td><td style="width:40%"><div id="addremove_keyw_'+keywId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addKeyw(\''+add+'\',\''+remove+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeKeyw();" class="normal_button"/></div></td>');
	
    var prev_keyw_id = keywId-1;
	document.getElementById('addremove_keyw_'+prev_keyw_id).style.display = 'none';
		
		var options_xml = {
			script: function (input) { return "AuthorityFileServlet?input="+input+"&index=1005"; },
			varname:"input",
			shownoresults:false,
			minchars:3,
			delay:200,
			cache:false,
			timeout:2000
		};
		var as_xml = new bsn.AutoSuggest('keyw_id_'+keywId, options_xml);

		keywId = keywId+1;
}

function removeKeyw() {
	var parentTable = document.getElementById('subject_table');
	var rowToRemove = keywId-1;
	parentTable.deleteRow(rowToRemove);
	keywId = keywId-1;
	var prev_keyw_id = rowToRemove-1;
	document.getElementById('addremove_keyw_'+prev_keyw_id).style.display = 'block';
}



var descriptionIndex = 1;
var descriptionId = 2;

function addDescription(add, remove) {
	var parentTable = document.getElementById('katingko_table');
	var r = parentTable.insertRow(descriptionIndex);
	r.setAttribute('id', "description_" + descriptionId);
	$("#description_"+descriptionId).html('<td></td><td><div><input style="width:90%" type="text" name="descr" id="description_id_'+descriptionId+'" onclick="makeCurrent(this);"/></div></td><td><div id="addremove_description_'+descriptionId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addDescription(\''+add+'\',\''+remove+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeDescription();" class="normal_button"/></div></td>');
	
	var prev_description_id = descriptionId-1;
	document.getElementById('addremove_description_'+prev_description_id).style.display = 'none';
	descriptionId = descriptionId+1;
	descriptionIndex = descriptionIndex+1;
	alternativeLocationIndex = alternativeLocationIndex+1;
	coverageSpatialIndex = coverageSpatialIndex+1;
	coverageTemporalIndex = coverageTemporalIndex+1;
}

function removeDescription() {
	var parentTable = document.getElementById('katingko_table');
	descriptionIndex = descriptionIndex-1;
	alternativeLocationIndex = alternativeLocationIndex-1;
	coverageSpatialIndex = coverageSpatialIndex-1;
	coverageTemporalIndex = coverageTemporalIndex-1;
	parentTable.deleteRow(descriptionIndex);
	descriptionId = descriptionId-1;
	var prev_description_id = descriptionId-1;
	document.getElementById('addremove_description_'+prev_description_id).style.display = 'block';
}

var notesIndex = 1;
var notesId = 2;

function addNotes(add, remove) {
	var parentTable = document.getElementById('table_notes');
	var r = parentTable.insertRow(notesIndex);
	r.setAttribute('id', "notes_" + notesId);
	$("#notes_"+notesId).html('<td></td><td><span style="width:98%; float:left"><textarea name="notes" id="notes_id_'+notesId+'" style="width: 100%" rows="2" cols="100" onclick="makeCurrent(this);" onfocus="makeCurrent(this);"></textarea></span></td><td><div id="addremove_notes_'+notesId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addNotes(\''+add+'\',\''+remove+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeNotes();" class="normal_button"/></div></td>');
	
	var prev_notes_id = notesId-1;
	document.getElementById('addremove_notes_'+prev_notes_id).style.display = 'none';
	notesId = notesId+1;
	notesIndex = notesIndex+1;
}

function removeNotes() {
	var parentTable = document.getElementById('table_notes');
	notesIndex = notesIndex-1;
	parentTable.deleteRow(notesIndex);
	notesId = notesId-1;
	var prev_notes_id = notesId-1;
	document.getElementById('addremove_notes_'+prev_notes_id).style.display = 'block';
}

var alternativeLocationIndex = 1;
var alternativeLocationId = 2;

function addAlternativeLocation(add, remove) {
	var parentTable = document.getElementById('alt_url_table');
	var r = parentTable.insertRow(alternativeLocationIndex);
	r.setAttribute('id', "alternative_location_" + alternativeLocationId);
	$("#alternative_location_"+alternativeLocationId).html('<td></td><td><div><input style="width:90%" type="text" name="alternative_location" id="alternative_location_id_'+alternativeLocationId+'" onclick="extentResolve(this);makeCurrent(this);" onchange="extentResolve(this);" onkeyup="extentResolve(this);""/></div></td><td><div id="addremove_alternative_location_'+alternativeLocationId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addAlternativeLocation(\''+add+'\',\''+remove+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeAlternativeLocation();" class="normal_button"/></div></td>');
	
	var prev_alternative_location_id = alternativeLocationId-1;
	document.getElementById('addremove_alternative_location_'+prev_alternative_location_id).style.display = 'none';
	alternativeLocationId = alternativeLocationId+1;	
	alternativeLocationIndex = alternativeLocationIndex + 1;
	//coverageSpatialIndex = coverageSpatialIndex+1;
	//coverageTemporalIndex = coverageTemporalIndex+1;
}

function removeAlternativeLocation() {
	var parentTable = document.getElementById('alt_url_table');
	alternativeLocationIndex = alternativeLocationIndex-1;
	//coverageSpatialIndex = coverageSpatialIndex-1;
	//coverageTemporalIndex = coverageTemporalIndex-1;
	parentTable.deleteRow(alternativeLocationIndex);
	alternativeLocationId = alternativeLocationId-1;
	var prev_alternative_location_id = alternativeLocationId-1;
	document.getElementById('addremove_alternative_location_'+prev_alternative_location_id).style.display = 'block';
}

var coverageSpatialIndex = 4;
var coverageSpatialId = 2;

function addCoverageSpatial(add, remove) {
	var parentTable = document.getElementById('subject_table');
	var r = parentTable.insertRow(coverageSpatialIndex+keywId-2);
	r.setAttribute('id', "coverage_spatial_" + coverageSpatialId);
	$("#coverage_spatial_"+coverageSpatialId).html('<td></td><td><div><input style="width:90%" type="text" name="coverage_spatial" name="coverage_spatial_id_'+coverageSpatialId+'" onclick="makeCurrent(this);"/></div></td><td><div id="addremove_coverage_spatial_'+coverageSpatialId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addCoverageSpatial(\''+add+'\',\''+remove+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeCoverageSpatial();" class="normal_button"/></div></td>');

	var prev_coverage_spatial_id = coverageSpatialId-1;
	document.getElementById('addremove_coverage_spatial_' + prev_coverage_spatial_id).style.display = 'none';
	var options_xml = {
		script: function (input) { return "AuthorityFileServlet?input="+input+"&index=1012"; },
		varname:"input",
		shownoresults:false,
		minchars:3,
		delay:200,
		cache:false,
		timeout:2000
	};
	var as_xml = new bsn.AutoSuggest('coverage_spatial_id_' + coverageSpatialId, options_xml);
	
	coverageSpatialId = coverageSpatialId+1;
	coverageSpatialIndex = coverageSpatialIndex+1;
	coverageTemporalIndex = coverageTemporalIndex+1;
}

function removeCoverageSpatial() {
	var parentTable = document.getElementById('subject_table');
	coverageSpatialIndex = coverageSpatialIndex-1;
	coverageTemporalIndex = coverageTemporalIndex-1;
	parentTable.deleteRow(coverageSpatialIndex);
	coverageSpatialId = coverageSpatialId-1;
	var prev_coverage_spatial_id = coverageSpatialId-1;
	document.getElementById('addremove_coverage_spatial_'+prev_coverage_spatial_id).style.display = 'block';
}


var coverageTemporalIndex = 2;
var coverageTemporalId = 2;

function addCoverageTemporal(add, remove) {
	var parentTable = document.getElementById('temporalCoverage');
	var r = parentTable.insertRow(coverageTemporalIndex);
	r.setAttribute('id', "coverage_temporal_" + coverageTemporalId);
	$("#coverage_temporal_"+coverageTemporalId).html('<td></td><td><div><input style="width:90%" type="text" name="coverage_temporal" id="coverage_temporal_id_'+coverageTemporalId+'" onclick="makeCurrent(this);"/></div></td><td><div id="addremove_coverage_temporal_'+coverageTemporalId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addCoverageTemporal(\''+add+'\',\''+remove+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeCoverageTemporal();" class="normal_button"/></div></td>');
	
	var prev_coverage_temporal_id = coverageTemporalId-1;
	document.getElementById('addremove_coverage_temporal_' + prev_coverage_temporal_id).style.display = 'none';
	coverageTemporalId = coverageTemporalId+1;
	coverageTemporalIndex = coverageTemporalIndex+1;
}

function removeCoverageTemporal() {
	var parentTable = document.getElementById('temporalCoverage');
	coverageTemporalIndex = coverageTemporalIndex-1;
	parentTable.deleteRow(coverageTemporalIndex);
	coverageTemporalId = coverageTemporalId-1;
	var prev_coverage_temporal_id = coverageTemporalId-1;
	document.getElementById('addremove_coverage_temporal_'+prev_coverage_temporal_id).style.display = 'block';
}

var haspartIndex = 2;
var haspartId = 2;

function addHaspart(add, remove) {
	var parentTable = document.getElementById('relation');
	var r = parentTable.insertRow(haspartIndex);
	r.setAttribute('id', "haspart_" + haspartId);
	$("#haspart_"+haspartId).html('<td></td><td><div><input style="width:90%" type="text" name="hasPart" id="haspart_id_'+haspartId+'" onclick="makeCurrent(this);"/></div></td><td><div id="addremove_haspart_'+haspartId+'"><input type="button" value="'+add+'" style="padding: 0.2em;" onClick="addHaspart(\''+add+'\',\''+remove+'\');" class="normal_button"/><input type="button" value="'+remove+'" style="padding: 0.2em;" onClick="removeHaspart();" class="normal_button"/></div></td>');
	
	var prev_haspart_id = haspartId-1;
	document.getElementById('addremove_haspart_' + prev_haspart_id).style.display = 'none';
	haspartId = haspartId+1;
	haspartIndex = haspartIndex+1;
}

function removeHaspart() {
	var parentTable = document.getElementById('relation');
	haspartIndex = haspartIndex-1;
	parentTable.deleteRow(haspartIndex);
	haspartId = haspartId-1;
	var prev_haspart_id = haspartId-1;
	document.getElementById('addremove_haspart_'+prev_haspart_id).style.display = 'block';
}


var fileId = 1;

function addItemFile(add, remove, clear, locale, filelocation, filedescription, cleanLink) {
	var parentTable = document.getElementById('file_table_up');
	var r = parentTable.insertRow(fileId);
	r.setAttribute('id', "file_table_row_" + fileId);
	$("#file_table_row_" + fileId).html('<td style="width:70%"><table id="file_table_' + fileId 
				+ '" style="border:1px solid #EA9C2F"><tr><td style="width:20%">'
				+ '<div class="field-label">'+filelocation+' </div></td>'
				+ '<td style="width:70%"><div id="file_uploader_' + fileId+'"><input size="40" type="file" name="file_' + fileId+'"'
				+ 'id="tfile_' + fileId+'" onchange="makeCurrent(this); fileSelected(this, document.getElementById(\'remove_file_' + fileId+'\'), document.getElementById(\'add_file_' + fileId+'\')); checkCompletion(\''+locale+'\');" /></div></td>'
				//+ '<td colspan="3">'
				//+'<div>'
				//+ '<input id="clear_file_link_'+ fileId+'" style="display:none" type="button" value="'+cleanLink+'" style="padding: 0.2em;" onClick="clearFile(document.getElementById(\'tfile_'+ fileId+'\'),this,'+fileId+'); checkCompletion(\''+locale+'\');" class="normal_button"/>'
				//+ '</div>
				//+'</td>
				+'</tr><tr><td><div class="field-label">'+filedescription+' </div></td><td colspan="4"><div><input type="text" name="file_descr_'+ fileId+'" onclick="makeCurrent(this);" onfocus="makeCurrent(this);" style="width:66%"/></div></td></tr></table></td>'
				+ '<td>	<div style="display:block;" id="addremove_file_'+ fileId+'"><input type="button" style="display:none;" id="add_file_'+fileId+'" value="'+add+'" style="padding: 0.2em;" onClick="addItemFile(\''+add+'\',\''+remove+'\',\''+clear+'\', \''+locale+'\', \''+filelocation+'\', \''+filedescription+'\', \''+cleanLink+'\');" class="normal_button"/>'
				+ '<input type="button" style="display:none;" id="remove_file_'+fileId+'" value="'+remove+'" style="padding: 0.2em;" onClick="removeItemFile();" class="normal_button"/></div><div id="remove_file_'+ fileId+'"></div></td>');

/*
	$("#clear_file_link_"+fileId).click(function() {
		clearFile(document.getElementById('tfile_' + fileId), this); 
		checkCompletion();
	});
	$("#file_add_link_"+fileId).click(function() {
		addItemFile(add, remove); 
		checkCompletion();
	});*/
	var prev_file_id = fileId-1;
	document.getElementById('add_file_' + prev_file_id).style.display = 'none';
	document.getElementById('remove_file_' + prev_file_id).style.display = 'none';
	fileId = fileId + 1; 
}

function removeItemFile() {
	var parentTable = document.getElementById('file_table_up');
	fileId = fileId-1;
	parentTable.deleteRow(fileId);
	var prev_file_id = fileId-1;
	document.getElementById('add_file_'+prev_file_id).style.display = 'block';
	if (prev_file_id >= 0) {
		document.getElementById('remove_file_'+prev_file_id).style.display = 'block';
	}
}

function sourceJournalPressed() {
	var stringToBeShown ='';
	if (document.getElementById('myLocale').value == 'en')
	{
		stringToBeShown = 'Source: ';
		checkCompletionEng();
	}
	else{
		stringToBeShown = 'Πηγή: ';
		checkCompletionGre();
	}

	if (document.getElementById('journal_title').value != '')
		stringToBeShown += document.getElementById('journal_title').value + " ";

	var volumeIssue = false;
	if (document.getElementById('journal_volume').value != ''){
		stringToBeShown += document.getElementById('journal_volume').value;
		volumeIssue = true;
	}

	if (document.getElementById('journal_issue').value != ''){
		stringToBeShown += ":" + document.getElementById('journal_issue').value;
		volumeIssue = true;
	}

	var dates = '(';	
	if (document.getElementById('main_month').selectedIndex != 0)
		dates += document.getElementById('main_month').value;	

	if (document.getElementById('main_year').selectedIndex != 0)
		dates += document.getElementById('main_year').value;	

	dates += ')';
	var date=false;
	if (dates != "()") {
		  date=true;
	}

	var pages = '';
	var page = false;
	if (document.getElementById('journal_pages').value != ''){
		pages += document.getElementById('journal_pages').value;
		page = true;
	}

	  if (volumeIssue && date){
		stringToBeShown += dates;
		if (page)
		  {
			  stringToBeShown += ":" + pages;
		  }
	  }
	  else if (volumeIssue)
	  {
		  if (page)
		  {
			  stringToBeShown += ":" + pages;
		  }
	  }
	  else if (date){
		stringToBeShown += dates;
		if (page)
		  {
			  stringToBeShown += ":" + pages;
		  }
	  }
	  else{
		if (page)
		  {
			  stringToBeShown += ":" + pages;
		  }
	  }

	  if (stringToBeShown == '')
	  {
		document.getElementById('source_journal_edited').style.borderWidth = "0px";
	  }
	  else {
		document.getElementById('source_journal_edited').style.borderWidth = "0.3em";
	  }

	  document.getElementById('source_journal_edited').innerHTML = stringToBeShown;
	  document.getElementById('source').value = stringToBeShown;
}


function sourceVideoPressed() {
	var selectedValue = $("#type").val();
	if(selectedValue == "Βίντεο" || selectedValue == "Video"){
	var stringToBeShown ='';
	var dates='';	
	
	
	if (document.getElementById('myLocale').value == 'en')
	{
		stringToBeShown = 'Source: ';
		//checkCompletionEng();
	}
	else{
		stringToBeShown = 'Πηγή: ';
		//checkCompletionGre();
	}

	if (document.getElementById('source_title_wide').value != '')
		stringToBeShown += document.getElementById('source_title_wide').value ;

	var volumeIssue = false;
	stringToBeShown += "|";
	if (document.getElementById('source_video_place').value != ''){
		stringToBeShown += document.getElementById('source_video_place').value;
		volumeIssue = true;
	}
	
	stringToBeShown += "|";
	
var source_video_start_year = document.getElementById("source_video_start_year").options[document.getElementById("source_video_start_year").selectedIndex].value;
var source_video_start_month  = document.getElementById("source_video_start_month").options[document.getElementById("source_video_start_month").selectedIndex].value;
var source_video_start_day  = document.getElementById("source_video_start_day").options[document.getElementById("source_video_start_day").selectedIndex].value;
var source_video_end_year = document.getElementById("source_video_end_year").options[document.getElementById("source_video_end_year").selectedIndex].value;
var source_video_end_month  = document.getElementById("source_video_end_month").options[document.getElementById("source_video_end_month").selectedIndex].value;
var source_video_end_day  = document.getElementById("source_video_end_day").options[document.getElementById("source_video_end_day").selectedIndex].value;
var dates="";
if (source_video_start_year !='0000') {

		dates="start="
		dates += source_video_start_year;	

	
		dates += "-" + source_video_start_month;	
	
		dates += "-" + source_video_start_day;	

if (source_video_end_year !='0000') {
	dates+="; end="
		dates += source_video_start_year;	
	
		dates += "-" + source_video_end_month;	
	
		dates += "-" + source_video_end_day;	
}
}
else dates="";
if (dates!='')
{
	dates+= "; scheme=W3C-DTF;"
	stringToBeShown +=dates;
}




	/*if (document.getElementById('source_video_date1').value !='') {
		dates += document.getElementById('source_video_date1').value;	
	
	if (document.getElementById('source_video_date2').value !=''){
		dates +=" - " + document.getElementById('source_video_date2').value;	
	}
	stringToBeShown +=", " +dates;
	}*/

	  if (stringToBeShown == '')
	  {
		document.getElementById('source_video_edited').style.borderWidth = "0px";
	  }
	  else {
		document.getElementById('source_video_edited').style.borderWidth = "0.3em";
	  }

	  document.getElementById('source_video_edited').innerHTML = stringToBeShown;
	  document.getElementById('source').value = stringToBeShown;
	}
}





function sourceProceedingsPressed() {
	var finalString = "";
	if (document.getElementById('conference_name').value != '') {
		finalString = document.getElementById('conference_name').value;
	}

	if ((finalString != '') && (document.getElementById('conference_place').value != '')) {
		finalString = finalString + ", ";
	}

	if (document.getElementById('conference_place').value != '') {
		finalString = finalString + document.getElementById('conference_place').value;
	}

	if ((finalString != '') && (document.getElementById('conference_date').value != '')) {
		finalString = finalString + " ";
	}

	if (document.getElementById('conference_date').value != '') {
		finalString = finalString + document.getElementById('conference_date').value;
	}

	if ((finalString != '') && (document.getElementById('conference_volume').value != '')) {
		finalString = finalString + ", ";
	}

	if (document.getElementById('conference_volume').value != '') {
		finalString = finalString + "vol. " + document.getElementById('conference_volume').value;
	}

	if ((finalString != '') && (document.getElementById('conference_pages').value != '')) {
		finalString = finalString + ", ";
	}

	if (document.getElementById('conference_pages').value != '') {
		finalString = finalString + "pp. " + document.getElementById('conference_pages').value;
	}
	
	if (finalString == '') {
		document.getElementById('source_conf_edited').style.borderWidth = "0px";
	} else {
		finalString = finalString + ".";
		document.getElementById('source_conf_edited').style.borderWidth = "0.3em";
	}

	document.getElementById('source_conf_edited').innerHTML = finalString;
	document.getElementById('source').value = finalString;
}

function sourceBookPressed() {
	var finalString = "";
	if (document.getElementById('book_title').value != '') {
		finalString = document.getElementById('book_title').value;
	}

	if ((finalString != '') && (document.getElementById('book_volume').value != '')) {
		finalString = finalString + ", ";
	}

	if (document.getElementById('book_volume').value != '') {
		finalString = finalString + "vol. " + document.getElementById('book_volume').value;
	}

	if ((finalString != '') && (document.getElementById('book_chapter').value != '')) {
		finalString = finalString + ", ";
	}

	if (document.getElementById('book_chapter').value != '') {
		finalString = finalString + "ch. " + document.getElementById('book_chapter').value;
	}

	if ((finalString != '') && (document.getElementById('book_pages').value != '')) {
		finalString = finalString + ", ";
	}

	if (document.getElementById('book_pages').value != '') {
		finalString = finalString + "pp. " + document.getElementById('book_pages').value;
	}
	
	if (finalString == '') {
		document.getElementById('source_book_edited').style.borderWidth = "0px";
	} else {
		finalString = finalString + ".";
		document.getElementById('source_book_edited').style.borderWidth = "0.3em";
	}

	document.getElementById('source_book_edited').innerHTML = finalString;
	document.getElementById('source').value = finalString;
}

function sourceBookBookPressed() {
	document.getElementById('source').value = document.getElementById('bookbook_source').value;
}

function sourcePatentPressed() {
	document.getElementById('source').value = document.getElementById('patent_source').value;
}

function sourceOtherPressed() {
	document.getElementById('source').value = document.getElementById('other_source').value;
}

function addRemoveFirstAltTitle() {
	if (document.getElementById('mytitle').value == "" && document.getElementById('mytitle_otherlang').value == "" && document.getElementById('mytitle_otherlang2').value == ""){
		document.getElementById('first_alt_title1').style.display = "none";
		document.getElementById('first_alt_title2').style.display = "none";
		document.getElementById('first_alt_title3').style.display = "none";
	}
	else{
		document.getElementById('first_alt_title1').style.display = "block";
		document.getElementById('first_alt_title2').style.display = "block";
		document.getElementById('first_alt_title3').style.display = "block";
	}
}

function addRemoveSecondAltTitle() {
	if (document.getElementById('mytitle_otherlang').value == "" && document.getElementById('mytitle_otherlang2').value == ""){
		document.getElementById('sec_alt_title1').style.display = "none";
		document.getElementById('sec_alt_title2').style.display = "none";
		document.getElementById('sec_alt_title3').style.display = "none";
	}
	else{
		document.getElementById('sec_alt_title1').style.display = "block";
		document.getElementById('sec_alt_title2').style.display = "block";
		document.getElementById('sec_alt_title3').style.display = "block";
	}
}

function addRemoveSecondAltTitleSelf() {
	if (document.getElementById('mytitle_otherlang').value == "" && document.getElementById('mytitle_otherlang2').value == ""){
		document.getElementById('sec_alt_title1').style.display = "none";
		document.getElementById('sec_alt_title2').style.display = "none";
		document.getElementById('sec_alt_title3').style.display = "none";
	}
}

function checkForSecondAbstract(){
	if (document.getElementById('abstract').value == ""){
		//document.getElementById('abstract_otherlang').style.display = "none";
		$("#abstract_otherlang").hide("normal");
	}
	else{
		//document.getElementById('abstract_otherlang').style.display = "block";
		$("#abstract_otherlang").show("normal");
	}
}

// Deprecated with the new item types... As the new form is being reconstructed the if statements will be fixed!
function typeChanged() {
	var selectedValue = $("#type").val();
		// PUBLISHER ----------
		if (selectedValue == "Annual" || selectedValue == "Report") {  // CORRECT item type
				var parentTable = document.getElementById('publisher_info_table');
				var r = parentTable.insertRow(2);
				r.setAttribute('id', "extra_publisher");
				$("#extra_publisher").html('<td style="width:20%"><div class="field-label">Volume"/></div></td><td style="width:30%"><div><input style="width:90%" type="text" id="special_volume" onclick="makeCurrent(this);" onfocus="makeCurrent(this);"/><td style="width:20%"><div class="field-label">Issue</div></td><td style="width:30%"><div><input style="width:90%" type="text" id="special_issue" onclick="makeCurrent(this);" onfocus="makeCurrent(this);"/>');
		}
		else if (selectedValue == "Επετηρίδα" || selectedValue == "Έκθεση") {  // CORRECT item type
				var parentTable = document.getElementById('publisher_info_table');
				var r = parentTable.insertRow(2);
				r.setAttribute('id', "extra_publisher");
				$("#extra_publisher").html('<td style="width:20%"><div class="field-label">Τoμος</div></td><td style="width:30%"><div><input style="width:90%" type="text" id="special_volume" onclick="makeCurrent(this);" onfocus="makeCurrent(this);"/><td style="width:20%"><div class="field-label">Τευχος</div></td><td style="width:30%"><div><input style="width:90%" type="text" id="special_issue" onclick="makeCurrent(this);" onfocus="makeCurrent(this);"/>');
		}
		else{
			var rowToBeDeleted = document.getElementById('extra_publisher');
			if (rowToBeDeleted != null){
				var parentTable = document.getElementById('publisher_info_table');
				parentTable.deleteRow(2);
			}
		}
		
		// ISSN - ISBN
		if (selectedValue == "Journal article" || selectedValue == "Άρθρο σε επιστημονικό περιοδικό" || selectedValue == "Άρθρο σε Περιοδικό & Ημερήσιο τύπο" || selectedValue == "Magazine/Newspaper article"
			|| selectedValue == "Serial" || selectedValue == "Περιοδικο" || selectedValue == "Μελέτη" || selectedValue == "Survey"
			|| selectedValue == "Ενημερωτικό δελτίο & δελτίο" || selectedValue == "Newsletter & bulletin") {	// CORRECT item type
			document.getElementById('isbn_title').innerHTML = 'ISSN';
			document.getElementById('isbn').style.display = "none";
			document.getElementById('issn_title').style.display = "none";
			document.getElementById('issn').style.display = "block";
			document.getElementById('issnisbn_table').style.display = "block";
		}
		else if (selectedValue == "Διδακτορική διατριβή" || selectedValue == "Thesis" || selectedValue == "Μεταπτυχιακή εργασία" || selectedValue == "Master thesis" || selectedValue == "Ημερολόγιο" || selectedValue == "Diary"){
			document.getElementById('isbn_title').innerHTML = 'ISBN';
			document.getElementById('isbn').style.display = "block";
			document.getElementById('issn_title').style.display = "none";
			document.getElementById('issn').style.display = "none";
			document.getElementById('issnisbn_table').style.display = "block";
		}
		else if (selectedValue == "Κείμενο εργασίας" || selectedValue == "Working paper" || selectedValue == "Ενιαίο σύνολο δεδομένων" || selectedValue == "Dataset" || selectedValue == "Βίντεο" || selectedValue == "Video"
			|| selectedValue == "Ηχητικό υλικό" || selectedValue == "Sound recording" || selectedValue == "Ευρεσιτεχνία" || selectedValue == "Patent"){
			document.getElementById('issnisbn_table').style.display = "none";
		}
		else{
			document.getElementById('isbn_title').innerHTML = 'ISBN';
			document.getElementById('isbn').style.display = "block";
			document.getElementById('issn_title').style.display = "block";
			document.getElementById('issn').style.display = "block";
			document.getElementById('issnisbn_table').style.display = "block";
		}
	
		// SOURCE ----------
		if (selectedValue == "conference_article") {  // not correct item type
			document.getElementById('journal_source_table').style.display = "none";
		} else if (selectedValue == "Journal article" || selectedValue == "Άρθρο σε επιστημονικό περιοδικό" || selectedValue == "Άρθρο σε Περιοδικό & Ημερήσιο τύπο" || selectedValue == "Magazine/Newspaper article") {	// CORRECT item type
			document.getElementById('journal_source_table').style.display = "block";
		} else if (selectedValue == "book_chapter") {	// not correct item type
			document.getElementById('journal_source_table').style.display = "none";
		} else if (selectedValue == "book") {	// not correct item type
			document.getElementById('journal_source_table').style.display = "none";
		} else if (selectedValue == "patent") {	 // not correct item type
			document.getElementById('journal_source_table').style.display = "none";
		} else {
			if (selectedValue == "Other" ||  selectedValue == "Άλλο"){
				document.getElementById('type_other_display').style.display = "block";
			}
			else{
				document.getElementById('type_other_display').style.display = "none";
			}
			document.getElementById('journal_source_table').style.display = "none";
		}
		
		if(selectedValue == "Βίντεο" || selectedValue == "Video"){
			document.getElementById('video_details').style.display = "block";
			document.getElementById('relation_metadata').style.display = "block";
			document.getElementById('isan_table').style.display = "block";
			document.getElementById('doi_table').style.display = "none";
			document.getElementById('referred_table').style.display = "none";
		//	document.getElementById('toc_table').style.display = "block";
			document.getElementById('video_source_table').style.display = "block";
			document.getElementById('publisher1').style.width = "80%";
			document.getElementById('publisher2a').style.display = "none";
			document.getElementById('publisher2b').style.display = "none";
			document.getElementById('publisher3a').style.display = "none";
			document.getElementById('publisher3b').style.display = "none";
			document.getElementById('publisher3c').style.display = "none";
			document.getElementById('publisher3d').style.display = "none";
			document.getElementById('author_required').style.display = "none";
			document.getElementById('toc_row').style.display = "none";
			document.getElementById('source_video_place').value = "Αθήνα, Εθνικό Ιδρυμα Ερευνών";
			
			var tmp;
			if(document.getElementById("collectionName").title != ""){
				
				tmp = document.getElementById("collectionName").title;
			}
			else{
				tmp = document.getElementById("tcollection").options[document.getElementById("tcollection").selectedIndex].text.replace("- - - ","");
				tmp = tmp.replace("- ","");
			}
			
			if(tmp == "Συλλογή Μορφωτικών Εκδηλώσεων"){
				document.getElementById('source_title_wide').value = "Επιστήμης κοινωνία: ειδικές μορφωτικές εκδηλώσεις, " + tmp;
				document.getElementById('notes').value = "Υπεύθυνη Μορφωτικών Εκδηλώσεων ΕΙΕ: κ. Ελένη Γραμματικοπούλου, Τηλ . 210.7273.501, fax: 210.72.46.618, E-mail: gramma@eie.gr.";
			}
			else{
				document.getElementById('source_title_wide').value = "";
				document.getElementById('notes').value = "";
			}
			
			/*var tmp = document.getElementById("tcollection").options[document.getElementById("tcollection").selectedIndex].text.replace("- - - ","");
			tmp = tmp.replace("- ","");
			document.getElementById('source_title_wide').value = "Επιστήμης κοινωνία: ειδικές μορφωτικές εκδηλώσεις, " + tmp;*/
			
			
			//sourceVideoPressed();
		}
		else{
			document.getElementById('video_details').style.display = "none";
			document.getElementById('relation_metadata').style.display = "none";
			document.getElementById('isan_table').style.display = "none";
			document.getElementById('video_source_table').style.display = "none";
			document.getElementById('publisher1').style.width = "30%";
			document.getElementById('publisher2a').style.display = "table-cell";
			document.getElementById('publisher2b').style.display = "table-cell";
			document.getElementById('publisher3a').style.display = "table-cell";
			document.getElementById('publisher3b').style.display = "table-cell";
			document.getElementById('publisher3c').style.display = "table-cell";
			document.getElementById('publisher3d').style.display = "table-cell";
			document.getElementById('author_required').style.display = "inline";
			document.getElementById('toc_row').style.display = "table-row";
			document.getElementById('notes').value = "";
			document.getElementById('source_video_place').value = "";
			document.getElementById('source_title_wide').value = "";
		}
	//}
		
}

function instituteChanged() {
	
	var selectedIndex = document.getElementById("tcollection").selectedIndex;
	
	document.getElementById('ibrb_res_group').style.display = "none";
	document.getElementById('ibr_res_group').style.display = "none";
	document.getElementById('igra_res_group').style.display = "none";
	document.getElementById('tcpi_res_group').style.display = "none";
	document.getElementById('inr_res_group').style.display = "none";
	document.getElementById('iopc_res_group').style.display = "none";
	document.getElementById('research_group_line').style.display = "none";
	
	if (selectedIndex == 4) {
		document.getElementById('ibrb_res_group').style.display = "block";
		document.getElementById('research_group_line').style.display = "block";
	} else if (selectedIndex == 2) {
		document.getElementById('ibr_res_group').style.display = "block";
		document.getElementById('research_group_line').style.display = "block";
	} else if (selectedIndex == 1) {
		document.getElementById('igra_res_group').style.display = "block";
		document.getElementById('research_group_line').style.display = "block";
	} else if (selectedIndex == 5) {
		document.getElementById('tcpi_res_group').style.display = "block";
		document.getElementById('research_group_line').style.display = "block";
	} else if (selectedIndex == 3) {
		document.getElementById('inr_res_group').style.display = "block";
		document.getElementById('research_group_line').style.display = "block";
	} else if (selectedIndex == 6) {
		document.getElementById('iopc_res_group').style.display = "block";
		document.getElementById('research_group_line').style.display = "block";
	}
	
	var tmp = document.getElementById("tcollection").options[document.getElementById("tcollection").selectedIndex].text.replace("- - - ","");
	tmp = tmp.replace("- ","");
	if(tmp == "Συλλογή Μορφωτικών Εκδηλώσεων"){
		document.getElementById('source_title_wide').value = "Επιστήμης κοινωνία: ειδικές μορφωτικές εκδηλώσεις, " + tmp;
		document.getElementById('notes').value = "Υπεύθυνη Μορφωτικών Εκδηλώσεων ΕΙΕ: κ. Ελένη Γραμματικοπούλου, Τηλ . 210.7273.501, fax: 210.72.46.618, E-mail: gramma@eie.gr.";
	}
	else{
		document.getElementById('source_title_wide').value = "";
		document.getElementById('notes').value = "";
	}
	//sourceVideoPressed();
}

var current;

function makeCurrent(input) {
	if (current !== undefined) {
		loseFocus(current);
	}
	current = input;
	input.style.borderWidth = "0.15em";
	input.style.borderColor = "#EA9C2F";
	input.style.borderStyle = "solid";
}

function loseFocus(input) {
	input.style.borderWidth = "0.15em";
	input.style.borderColor = "#bcbcbc";
	input.style.borderStyle = "solid";
}

function syncDates(input, sel1, sel2) {
	var out1 = document.getElementById(sel1);
	out1.selectedIndex = input.selectedIndex;

	sourceJournalPressed();
	sourceProceedingsPressed()
	sourceBookPressed()
}

function syncSubjectCategories () {	
	$(".hidden_sub_cats").remove();
	
	var primaryList = document.getElementById("sub_cat");
	var secondaryList = document.getElementById("sub_cat_alternative");

	for (var count = 0; count < primaryList.options.length; count++) {
		var selection = primaryList.options[count];
		var selectionAlter = secondaryList.options[count];
		if (selection.selected) {
			$('#subject_cats_td').append('<input type="hidden" name="sub_cat_alter" class="hidden_sub_cats" value="' + selectionAlter.value + '"/>');
		}
	}
}

var xmlHttp = null;

function GetXmlHttpObject() {
	//var xmlHttp=null;
	if (window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
		// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return xmlHttp;
}

function extentResolve(input){
	if(input.value.indexOf("RTSP://") == '0' || input.value.indexOf("rtsp://") == '0' || input.value.indexOf(".rm") > '0'){
		if((input.value.indexOf("start=") > 0 || input.value.indexOf("START=") > 0) && (input.value.indexOf("&end=") > 0 || input.value.indexOf("&END=") > 0)){
			var startStr,endStr;
			if(input.value.indexOf("start=") > 0 && input.value.indexOf("&end=") > 0){ 
				startStr = input.value.substring((input.value.indexOf("start=")+6),input.value.indexOf("&end="));
				endStr = input.value.substring(input.value.indexOf("&end=")+5);
			}
			
			else if(input.value.indexOf("START=") > 0 && input.value.indexOf("&END=") > 0){ 
				startStr = input.value.substring((input.value.indexOf("START=")+6),input.value.indexOf("&END="));
				endStr = input.value.substring(input.value.indexOf("&END=")+5);
			}
			
			var startHour,startMin,startSec;
			var endHour,endMin,endSec;
			
			var durHour = 0;
			var durMin = 0;
			var durSec;
			
			var duration;
			
			
			startMin = startStr.substring(0,startStr.lastIndexOf(":"));
			if(startMin.indexOf(":") > 0){
				startHour = startStr.substring(0,startStr.indexOf(":"));
				startMin = startStr.substring(startStr.indexOf(":")+1,startStr.lastIndexOf(":"));
			}
			else{
				startHour = "00";
			}
			startSec = startStr.substring(startStr.lastIndexOf(":")+1);
			
			endMin = endStr.substring(0,endStr.lastIndexOf(":"));
			if(endMin.indexOf(":") > 0){
				endHour = endStr.substring(0,endStr.indexOf(":"));
				endMin = endStr.substring(endStr.indexOf(":")+1,endStr.lastIndexOf(":"));
			}
			else{
				endHour = "00";
			}
			endSec = endStr.substring(endStr.lastIndexOf(":")+1);
			
			startHour = parseInt(startHour);
			startMin = parseInt(startMin);
			startSec = parseInt(startSec);
			endHour = parseInt(endHour);
			endMin = parseInt(endMin);
			endSec = parseInt(endSec);
			
			if(endSec < startSec){
				durSec = (endSec + 60) - startSec;
				startMin = startMin + 1;
			}
			else{
				durSec = endSec - startSec;				
			}
			
			if(endMin < startMin){
				durMin = (endMin + 60) - startMin;
				startHour = startHour + 1;
			}
			else{
				durMin = endMin - startMin;				
			}
			
			durHour = endHour - startHour;
			
			if(durHour.toString().length == '1')
				durHour = "0" + durHour;
			if(durMin.toString().length == '1')
				durMin = "0" + durMin;
			if(durSec.toString().length == '1')
				durSec = "0" + durSec;
			duration = durHour + ":" + durMin + ":" + durSec;
			
			document.getElementById("extent").value = duration;
		}
		else
			document.getElementById("extent").value = "";
	}
}


function sourceResolve(input) {
	var pos =input.value.indexOf('10442');
	
	if(pos >= 0){
		var url='';
		url="ispartof="+escape(input.value);
	
		$.ajax({
		   type: "GET",
		   url: "sourceresolve",
		   data: url,
		   success: function(xml){
			   stateChanged_sourceResolve(xml);
		   }
		});
	}
	else{
		document.getElementById('source_video_place').value = "Αθήνα, Εθνικό Ιδρυμα Ερευνών";
		var tmp;
		if(document.getElementById("collectionName").title != null){
			
			tmp = document.getElementById("collectionName").title;
		}
		else{
			tmp = document.getElementById("tcollection").options[document.getElementById("tcollection").selectedIndex].text.replace("- - - ","");
			tmp = tmp.replace("- ","");
		}
		document.getElementById('source_title_wide').value = "Επιστήμης κοινωνία: ειδικές μορφωτικές εκδηλώσεις, " + tmp;
		
				
		document.getElementById('source_video_start_year').value = "0000";
		document.getElementById('source_video_start_month').value = "-1";
		document.getElementById('source_video_start_day').value = "-1";
		
		document.getElementById('source_video_end_year').value = "0000";
		document.getElementById('source_video_end_month').value = "-1";
		document.getElementById('source_video_end_day').value = "-1";
		
		sourceVideoPressed();
	}
	
}

function stateChanged_sourceResolve(xml) { 
	var xmlDoc;

	try {  //Internet Explorer
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async="false";
		xmlDoc.loadXML(xml);
	} catch(e) {
		try { //Firefox, Mozilla, Opera, etc.
			parser=new DOMParser();
			xmlDoc=parser.parseFromString(xml,"text/xml");
		} catch(e) {
			alert(e.message);
			return;
		}
	}
	var books = xmlDoc.getElementsByTagName('result');
	var sourceTitleChild="";
	for (i=0; i<books.length; i++){
		var source = books[i].childNodes[0].childNodes[0].nodeValue;
		var title = books[i].childNodes[1].childNodes[0].nodeValue;
		var startDay = books[i].childNodes[2].childNodes[0].nodeValue;
		var startMonth = books[i].childNodes[3].childNodes[0].nodeValue;
		var startYear = books[i].childNodes[4].childNodes[0].nodeValue;
		var endDay = books[i].childNodes[5].childNodes[0].nodeValue;
		var endMonth = books[i].childNodes[6].childNodes[0].nodeValue;
		var endYear = books[i].childNodes[7].childNodes[0].nodeValue;
		
		
		if(source!="-"){
			sourceTitleChild = source + ", ";
		}
		sourceTitleChild += title;
				
		if(document.getElementById('source_title_wide').value == "" || document.getElementById('source_title_wide').value.indexOf(sourceTitleChild)<0)
			document.getElementById('source_title_wide').value = sourceTitleChild;
		
		document.getElementById('source_video_start_year').value = startYear;
		document.getElementById('source_video_start_month').value = startMonth;
		document.getElementById('source_video_start_day').value = startDay;
		
		document.getElementById('source_video_end_year').value = endYear;
		document.getElementById('source_video_end_month').value = endMonth;
		document.getElementById('source_video_end_day').value = endDay;
	}
	
	sourceVideoPressed();

}



function issnResolve(what, input) {
	var url='';
	if (what == "issn") {
		url="what="+what+"&issn="+escape(input.value);
	} else if (what == "journal") {
		url="what="+what+"&journal="+escape(input.value);
	} else {
		url="what="+what;
	}

	$.ajax({
	   type: "GET",
	   url: "issnresolve",
	   data: url,
	   success: function(xml){
		   stateChanged_issnResolve(xml);
	   }
	});

}

function stateChanged_issnResolve(xml) { 
	var xmlDoc;

	try {  //Internet Explorer
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async="false";
		xmlDoc.loadXML(xml);
	} catch(e) {
		try { //Firefox, Mozilla, Opera, etc.
			parser=new DOMParser();
			xmlDoc=parser.parseFromString(xml,"text/xml");
		} catch(e) {
			alert(e.message);
			return;
		}
	}

	var books = xmlDoc.getElementsByTagName('result');
	for (i=0; i<books.length; i++){
		var issn = books[i].childNodes[0].childNodes[0].nodeValue;
		var journal = books[i].childNodes[1].childNodes[0].nodeValue;
		var url = books[i].childNodes[2].childNodes[0].nodeValue;
		var publisher = books[i].childNodes[3].childNodes[0].nodeValue;

		document.getElementById('issn').value = issn;
		document.getElementById('journal_title').value = journal;
		document.getElementById('journal_url').value = url;
		document.getElementById('pub_name').value = publisher;
	}

	sourceJournalPressed();
}

function fileSelected(tfile, clearLink, addLink) {
	if (tfile.value != '') {
		if (clearLink != null) {
			clearLink.style.display = 'block';
		}
		if (addLink != null) {
			addLink.style.display = 'block';
			addLink.size = 0;
		}
	}
}

function clearFile(tfile, clearLink, index) {
	//1. not working
	//tfile.clear();
	//clearLink.style.display = 'none';
	
	//2. reseting the whole form
	//tfile.form.reset();
	//tfile.focus();

	//3. not working
	//tfile.innerHTML = tfile.innerHTML;

	clearLink.style.display = 'none';

	var u = document.getElementById('file_uploader_'+index);
	u.innerHTML="<input size=\"40\" type=\"file\" name=\"file_"+index+"\" id=\"tfile_"+index+"\" onchange=\"makeCurrent(this); fileSelected(this, document.getElementById('remove_file_"+index+"'), document.getElementById('add_file_"+index+"')); checkCompletion('<%= locale %>');\" />";
	document.getElementById('add_file_0').style.display="none";
}

function submit_button_mouse_over() {
	document.getElementById('ekt_submit_button').style.backgroundColor = "#8F8B8A";
	document.getElementById('ekt_submit_button').style.color = "#E6E6E6";
	document.getElementById('ekt_submit_button').style.borderColor = "rgb(234, 156, 47) rgb(246, 217, 179) #F6D9B3 rgb(234, 156, 47)";
}

function submit_button_mouse_out() {
	document.getElementById('ekt_submit_button').style.backgroundColor = "#E6E6E6";
	document.getElementById('ekt_submit_button').style.color = "#5F5B5A";
	document.getElementById('ekt_submit_button').style.borderColor = "#F6D9B3 rgb(234, 156, 47) rgb(234, 156, 47) rgb(246, 217, 179)";
}

function clear_button_mouse_over() {
	document.getElementById('ekt_clear_button').style.backgroundColor = "#8F8B8A";
	document.getElementById('ekt_clear_button').style.color = "#E6E6E6";
	document.getElementById('ekt_clear_button').style.borderColor = "rgb(234, 156, 47) rgb(246, 217, 179) #F6D9B3 rgb(234, 156, 47)";
}

function clear_button_mouse_out() {
	document.getElementById('ekt_clear_button').style.backgroundColor = "#E6E6E6";
	document.getElementById('ekt_clear_button').style.color = "#5F5B5A";
	document.getElementById('ekt_clear_button').style.borderColor = "#F6D9B3 rgb(234, 156, 47) rgb(234, 156, 47) rgb(246, 217, 179)";
}

function checkLanguage(){
	var selectedValues = $("#language").val();
	var selectedType = $("#type").val();
	
	if(selectedType =='Video' || selectedType =='Βίντεο'){
		if(selectedValues.length >= 2){
			for(var i=0; i<selectedValues.length; i++){
				if(selectedValues[i] == 'gre'){
					document.getElementById('pub_name').value = "Εθνικό Κέντρο Τεκμηρίωσης (ΕΚΤ) = National Documentation Centre (ΕΚΤ)";
					return;
				}
			}
			document.getElementById('pub_name').value = "";
		}
		else{
			if(selectedValues[0] == 'gre'){
				document.getElementById('pub_name').value = "Εθνικό Κέντρο Τεκμηρίωσης (ΕΚΤ)";
				return;
			}
			else
				document.getElementById('pub_name').value = "";
		}
	}
	else{
		if(document.getElementById('pub_name').value == 'Εθνικό Κέντρο Τεκμηρίωσης (ΕΚΤ) = National Documentation Centre (ΕΚΤ)' || document.getElementById('pub_name').value == 'Εθνικό Κέντρο Τεκμηρίωσης (ΕΚΤ)')
			document.getElementById('pub_name').value = "";
	}	
}

function checkCompletion(locale) {
	
	for (var i = 1; i <= authorId; i++){
		if(document.getElementById('affiliation_id_'+i) != null){
			if(document.getElementById('affiliation_id_'+i).value ==''){
				document.getElementById('affiliation_hidden_id_'+i).value = "-";
			}
			else{
				document.getElementById('affiliation_hidden_id_'+i).value = document.getElementById('affiliation_id_'+i).value;
			}
		}
	}
	
	if (locale == "en") {
		checkCompletionEng();
	} else {
		checkCompletionGre();
	}
}

function checkCompletionEng() {
	document.getElementById('check_results').innerHTML = "";
	var selectedValue = $("#type").val();
	var m = 1;
	var hasAtLeastOneAuthor = false;
	
	if(selectedValue == "Βίντεο" || selectedValue == "Video"){
		hasAtLeastOneAuthor = true;
	}
	else{
		for (m = 1; m < authorId; m++) {
			var authorElementId = "author_id_" + m;
			if (document.getElementById(authorElementId).value != '') {
				hasAtLeastOneAuthor = true;
				break;
			}
		}
		if (!hasAtLeastOneAuthor) {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
					"<br/><b>Author:</b> You have not specified an author for this item.";
		}
	}

	if (document.getElementById('mytitle').value == '') {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
			"<br/><b>Title:</b> Not specified for this item.";
	}

	/*if (document.getElementById('rights').value == '') {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
			"<br/><b>Availability:</b> Not specified for this item.";
	}*/

var myType = document.getElementById('type').value;
	if (myType == "Journal article") {
		if (document.getElementById('journal_title').value == "") {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Journal title:</b> Not specified for this item.";
		}
	} /*else if (document.getElementById('type').value == "book_chapter") {
		if (document.getElementById('book_title').value == "") {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Book title:</b> Not specified for this book chapter.";
		}
	} else if (document.getElementById('type').value == "journal_article") {
		if (document.getElementById('journal_title').value == "") {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Journal title:</b> Not specified for this journal article.";
		}
	} else if (document.getElementById('type').value == "book") {
		if (document.getElementById('bookbook_source').value == "") {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Source:</b> Not specified for this book.";
		}
	} else if (document.getElementById('type').value == "patent") {
		if (document.getElementById('patent_source').value == "") {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Source:</b> Not specified for this patent.";
		}
	} else {
		if (document.getElementById('other_source').value == '') {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Source:</b> Not specified for this source.";
		}
	}*/

	if (document.getElementById('tcollection') != null){
		if (document.getElementById('tcollection').value == '-1') {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Collection:</b> Not specified for this item.";
		}
	}

	if (document.getElementById('start_main_year') != null){
		if (document.getElementById('start_main_year').value == '0000') {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Year:</b> Not specified for this item.";
		}
	}

	if (document.getElementById('type').value == '-1') {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
			"<br/><b>Type:</b> Not specified for this item.";
	}
	
	if ($('#asmList1').html() != null) {
		if ($('#asmList1').text() == "") {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
					"<br/><b>Language:</b> Not specified for this item.";
		}
	} else {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
					"<br/><b>Language:</b> Not specified for this item.";
	}
	
	//if ($('#asmList1').html() == null || $('#asmList1').html() == "") {
	//	document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
	//		"<br/><b>Subject categories:</b> Not specified for this item.";
	//}

	if (document.getElementById('license_accepted').checked == false) {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
			"<br/><b>Deposit Agreement:</b> You have not accepted this agreement.";
	}

	if (document.getElementById('check_results').innerHTML == "") {
		document.getElementById('ekt_submit_button').disabled = false;
		document.getElementById('ekt_submit_button').style.color = '#5F5B5A';
	} else {
		document.getElementById('ekt_submit_button').disabled = true;
		document.getElementById('ekt_submit_button').style.color = '#9F9B9A';
	}

	document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML + "<br/><br/>";
}

function checkCompletionGre() {
	document.getElementById('check_results').innerHTML = "";
	var selectedValue = $("#type").val();
	var m = 1;
	var hasAtLeastOneAuthor = false;
	
	if(selectedValue == "Βίντεο" || selectedValue == "Video"){
		hasAtLeastOneAuthor = true;
	}
	else{
		for (m = 1; m < authorId; m++) {
			var authorElementId = "author_id_" + m;
			if (document.getElementById(authorElementId).value != '') {
				hasAtLeastOneAuthor = true;
				break;
			}
		}
		if (!hasAtLeastOneAuthor) {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
					"<br/><b>Συγγραφέας:</b> Δεν έχει οριστεί συγγραφέας για το τεκμήριο αυτό.";
		}
	}

	if (document.getElementById('mytitle').value == '') {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
			"<br/><b>Τίτλος:</b> Δεν έχει οριστεί για αυτό το τεκμήριο.";
	}
	
	/*if (document.getElementById('rights').value == '') {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
			"<br/><b>Διαθεσιμότητα:</b> Δεν έχει οριστεί για αυτό το τεκμήριο.";
	}*/

	var myType = document.getElementById('type').value;
	if ( myType =="Άρθρο σε επιστημονικό περιοδικό") {
		if (document.getElementById('journal_title').value == "") {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Τίτλος περιοδικού:</b> Δεν έχει οριστεί για αυτό το άρθρο.";
		}
	} 

	if (document.getElementById('tcollection') != null){
		if (document.getElementById('tcollection').value == '-1') {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Συλλογή:</b> Δεν έχει οριστεί για αυτό το τεκμήριο.";
		}
	}

	if (document.getElementById('start_main_year') != null){
		if (document.getElementById('start_main_year').value == '0000') {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
				"<br/><b>Έτος:</b> Δεν έχει οριστεί για αυτό το τεκμήριο.";
		}
	}

	if (document.getElementById('type').value == '-1') {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
			"<br/><b>Τύπος:</b> Δεν έχει οριστεί για αυτό το τεκμήριο.";
	}
	
	if ($('#asmList1').html() != null) {
		if ($('#asmList1').text() == "") {
			document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
					"<br/><b>Γλώσσα:</b> Δεν έχει οριστεί για αυτό το τεκμήριο.";
		}
	} else {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
					"<br/><b>Γλώσσα:</b> Δεν έχει οριστεί για αυτό το τεκμήριο.";
	}
	
	//if ($('#asmList1').html() == null || $('#asmList1').html() == "") {
	//	document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
	//		"<br/><b>Θεματικές Κατηγορίες:</b> Δεν έχουν οριστεί για αυτό το τεκμήριο.";
	//}

	if (document.getElementById('license_accepted').checked == false) {
		document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML +
			"<br/><b>Άδεια Κατάθεσης Έργου:</b> Δεν έχει γίνει αποδεκτή.";
	}

	if (document.getElementById('check_results').innerHTML == "") {
		document.getElementById('ekt_submit_button').disabled = false;
		document.getElementById('ekt_submit_button').style.color = '#5F5B5A';
	} else {
		document.getElementById('ekt_submit_button').disabled = true;
		document.getElementById('ekt_submit_button').style.color = '#9F9B9A';
	}

	document.getElementById('check_results').innerHTML = document.getElementById('check_results').innerHTML + "<br/><br/>";
}

function resetCheck() {
	document.getElementById('check_results').innerHTML = "";
	document.getElementById('ekt_submit_button').disabled = true;
	document.getElementById('ekt_submit_button').style.color = '#9F9B9A';
}

function stopRKey(evt) {
	var evt = (evt) ? evt : ((event) ? event : null);
	var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
	if ((evt.keyCode == 13) && (node.type=="text"))  {return false;}
}

function startRKey(evt) {
	document.onkeypress = startRKey2;
}

function startRKey2(evt) {
	var evt = (evt) ? evt : ((event) ? event : null);
	var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
	if ((evt.keyCode == 13) && (node.type=="text"))  {return true;}
}

function toggleCheck(locale) {
	if (locale == "en") {
		toggleCheckEng();
	} else {
		toggleCheckGre();
	}
}

function toggleCheckGre() {
	$("#check_results").toggle("slow");
	if ($("#show_hide_check_results").text() == "Εμφάνιση")
		$("#show_hide_check_results").text("Κρύψιμο");
	else
		$("#show_hide_check_results").text("Εμφάνιση");
}

function toggleCheckEng() {
	$("#check_results").toggle("slow");
	if ($("#show_hide_check_results").text() == "Show")
		$("#show_hide_check_results").text("Hide");
	else
		$("#show_hide_check_results").text("Show");
}

function availabilityChanged() {
	if ($("#open_access_lt").attr("checked") == true) {
		$("#open_access_suboptions").show();
		$("#limited_avail_suboptions").hide("fast");
		$("#closed_suboptions").hide("fast");
	} else if ($("#lim_avail_lt").attr("checked") == true) {
		$("#open_access_suboptions").hide("fast");
		$("#limited_avail_suboptions").show();
		$("#closed_suboptions").hide("fast");
	} else if ($("#closed_lt").attr("checked") == true) {
		$("#open_access_suboptions").hide("fast");
		$("#limited_avail_suboptions").hide("fast");
		$("#closed_suboptions").show();
	}
}

function populateAccessRights () {
	var rights = "";
	if ($("#open_access_lt").attr("checked") == true) {
		if ($("#cc_checkbox").attr("checked") == true) {
			if ($("#a-nc-cc_type").attr("checked") == true) {
				rights = "ccanc";
			} else if ($("#a-nc-nd-cc_type").attr("checked") == true) {
				rights = "ccancndw";
			} else {
				rights = "ccancsa";
			}
		} else {
			rights = "oa";
		}
	} else if ($("#lim_avail_lt").attr("checked") == true) {
		if ($("#NHRF_avail_rb").attr("checked") == true) {
			rights = "nhrfonly";
		} else {
			rights = "communityonly";
		}
	} else if ($("#closed_lt").attr("checked") == true) {
		if ($("#embargo_checkbox").attr("checked") == true) {
			rights = "embargoed " + $("#embargo_date").val();
		} else {
			rights = "closed";
		}
	}
	$("#accessRights").val(rights);
}

function composeTemporal() {
	if ($("#date_1")) {
		if ($("#date_2")){
			$("#date_composite").val($("#date_1").val() + "-" + $("#date_2").val());
		} else {
			$("#date_composite").val($("#date_1").val());
		}
	}
}

function validateForm (locale) {
	if (locale == "en") {
		validateFormEN();
	} else {
		validateFormGR();
	}
}

function validateFormEN () {
	var why = "";

	why += checkStringEN(document.getElementById("userLastName").value, "Last Name");
	why += checkStringEN(document.getElementById("userFirstName").value, "First Name(s)");
	why += checkEmailEN(document.getElementById("userEmail").value);
	why += checkStringEN(document.getElementById("userMessage").value, "Your message");

	if (why != "") {
		alert(why);
	 	return false;
	} else {
		document.getElementById("feedback_form").submit();
	}
}

function validateFormGR () {
	var why = "";

	why += checkStringGR(document.getElementById("userLastName").value, "Επώνυμο");
	why += checkStringGR(document.getElementById("userFirstName").value, "Όνομα");
	why += checkEmailGR(document.getElementById("userEmail").value);
	why += checkStringGR(document.getElementById("userMessage").value, "Το μήνυμά σας");

	if (why != "") {
		alert(why);
	 	return false;
	} else {
		document.getElementById("feedback_form").submit();
	}
}

function checkStringEN (strng, field) {
	var error = "";
 	if (strng == "") {
 		error = "The '" + field + "' field is compulsory.\n";
 	}
 
    if (strng.length < 1) {
 		error = "The '" + field + "' field is compulsory.\n";
 	}
 
 	/*var illegalChars = /\W/;
 	// allow only letters, numbers, and underscores
 	if (illegalChars.test(strng)) {
 		error = "Το πεδίο " + field + " περιέχει μη επιτρεπτούς χαρακτήρες.\n";
 	}*/
 
 	return error;
}

function checkStringGR (strng, field) {
	var error = "";
 	if (strng == "") {
 		error = "Το πεδίο '" + field + "' είναι υποχρεωτικό.\n";
 	}
 
    if (strng.length < 1) {
 		error = "Το πεδίο '" + field + "' είναι υποχρεωτικό.\n";
 	}
 
 	/*var illegalChars = /\W/;
 	// allow only letters, numbers, and underscores
 	if (illegalChars.test(strng)) {
 		error = "Το πεδίο " + field + " περιέχει μη επιτρεπτούς χαρακτήρες.\n";
 	}*/
 
 	return error;
}

function checkEmailEN (strng) {
	var error = "";
 	var emailFilter = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;

 	if (!(emailFilter.test(strng))) {
 		error = "The email address that you entered is not valid.\n";
 	}

 	var illegalChars = /[\(\)\<\>\,\;\:\\\/\"\[\]]/
 	if (strng.match(illegalChars)) {
 		error = "The email address contains invalid characters.\n";
 	}
 	
	if (strng == "") {
 		error = "The Email field is compulsory.\n";
 	}
 	return error;
}

function checkEmailGR (strng) {
	var error = "";
 	var emailFilter = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;

 	if (!(emailFilter.test(strng))) {
 		error = "Η μορφή του E-mail δεν είναι έγκυρη.\n";
 	}

 	var illegalChars = /[\(\)\<\>\,\;\:\\\/\"\[\]]/
 	if (strng.match(illegalChars)) {
 		error = "Το E-mail περιέχει μη επιτρεπτούς χαρακτήρες.\n";
 	}
 	
	if (strng == "") {
 		error = "Το πεδίο E-mail είναι υποχρεωτικό.\n";
 	}
 	return error;
}
/////////////////////////////////////////////////////////////////////////