function initDirectory(){
	document.writeln('<table border=0 cellpadding=0 cellspacing=5>');
}
function addHeading(label) {
	document.writeln('<tr><td valign=top><img src="../images-new/blank.gif" width=1 height=20><br><img src="../images-new/orange.gif" width=570 height=1><br><span class="letter">'+label+'</span></td></tr>');
}
function closeDirectory() {
	document.writeln('</table>');
}

function showThesePubs(object) {
    window.location.href = "index.shtml?" + object.options[object.selectedIndex].value;
}

var splitter = /(\w+),(\w+)/;
var myarray = new Array();

function getNewSort(oldsort){
	myarray = splitter.exec(oldsort);
	return RegExp.$1;
}

function getCategory(oldsort){
	myarray = splitter.exec(oldsort);
	return RegExp.$2;
}

function showPubs(pubsort, headertext){
	var comma = /,/;
	var category = '';
	if (comma.test(pubsort)){
		category = getCategory(pubsort);
		pubsort = getNewSort(pubsort);
	}
	var re;
	var pubregexp = new RegExp(pubsort, "i");
	initDirectory();
	switch(pubsort){
		case "year":
			addHeading('2006');
			re=/2006/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('2005');
			re=/2005/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('2003');
			re=/2003/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('2002');
			re=/2002/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('2001');
			re=/2001/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('2000');
			re=/2000/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1999');
			re=/1999/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1998');
			re=/1998/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1997');
			re=/1997/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1996');
			re=/1996/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1995');
			re=/1995/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1994');
			re=/1994/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1993');
			re=/1993/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1992');
			re=/1992/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('1991');
			re=/1991/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].year)) publications[i].list();}
			addHeading('');
			break;
					
		case "pubtype":
			addHeading('Journal Articles');
			re=/journal/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].pubtype)) publications[i].list();}
			addHeading('Conference Papers');
			re=/conference/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].pubtype)) publications[i].list();}
			addHeading('Technical Reports');
			re=/technical/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].pubtype)) publications[i].list();}
			addHeading('');
			break;

		case "initiative":
			addHeading('Computer-aided Design');
			re=/CAD/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].details.initiative)) publications[i].list();}
			addHeading('Computer-aided Industrial Design');
			re=/CAID/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].details.initiative)) publications[i].list();}
			addHeading('Design Education');
			re=/DEd/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].details.initiative)) publications[i].list();}
			addHeading('Distributed Object-based Modeling Environment (DOME)');
			re=/DOME/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].details.initiative)) publications[i].list();}
			addHeading('Environmentally-conscious Design');
			re=/ECD/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].details.initiative)) publications[i].list();}
			addHeading('Genetic Algorithms');
			re=/GA/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].details.initiative)) publications[i].list();}
			addHeading('Product Design');
			re=/PD/i;
			for (var i=0; i<publications.length; i++ ){
				if (re.test(publications[i].details.initiative)) publications[i].list();}
			addHeading('');
			break;
		
		default:
			addHeading(headertext);
			switch(category){
				case "initiative":
					for (var i=0; i<publications.length; i++ ){
						if (pubregexp.test(publications[i].details.initiative)) publications[i].list();
					}
					break;
				case "keyword":
					for (var i=0; i<publications.length; i++ ){
						if (pubregexp.test(publications[i].details.keywords)) publications[i].list();
					}
					break;
				default:
					for (var i=0; i<publications.length; i++ ){
						if (pubregexp.test(publications[i].authors)) publications[i].list();
						if (pubregexp.test(publications[i].pubtype)) publications[i].list();
						if (pubregexp.test(publications[i].year)) publications[i].list();
						if (pubregexp.test(publications[i].details.initiative)) publications[i].list();
						if (pubregexp.test(publications[i].details.keywords)) publications[i].list();
					}
					break;
			}
			addHeading('');
			break;
			
	}
	closeDirectory();

}
