var idcount = 1;

function critSelect(idnum,c,cval)
{
	dd = document.getElementById('ddCrit'+idnum);
	for(var i = 0; i < dd.options.length; i++) {
		if (dd.options[i].value == c) {
			dd.options[i].selected = true;
			criteriaChange(dd);
			cc = document.getElementById('ddCritVal'+idnum);
			for(var j = 0; j < cc.options.length; j++) {
				if (cc.options[j].value == cval) {
					cc.options[j].selected = true;
					return true;
				}
			}
			return true;
		}
	}
}

function criteriaChange(crit)
{
	var id = crit.getAttribute('id');
	var idnum = id.substring(6,id.length);
	
	dd = document.getElementById('ddCritVal' + idnum);
	for(var i = dd.options.length-1; i >= 0; i--) {
		dd.remove(i);
	}
	if (crit.value == "ing")
	{
		setOptionList(dd,INGS,"Ingredient");
	}
	else if (crit.value == "theme") {
		setOptionList(dd,THEMES,"Theme");
	}
	else if (crit.value == "class") {
		setOptionList(dd,CLASSES,"Category");
	}
	else if (crit.value == "glass") {
		setOptionList(dd,GLASSES,"Glass");
	}
}

function setOptionList(dd,arr,msg)
{
	var o = new Option("-- Pick " + msg + " --","",true,true);
	dd.options[0] = o;
	for(i = 0; i < arr.length; i+=2) {
		o = new Option(arr[i],arr[i+1],false,false);
		dd.options[dd.options.length] = o;
	}
}

function addCriteria()
{	
	var tbody = document.getElementById('tblBodyCrit');
	var idnum = idcount;
	
	var newrow = document.createElement("tr");
	newrow.setAttribute('id','tblCritRow' + idnum);
	
	//add first table cell and criteria dropdown
	var newtd = document.createElement("td");
	var olddd = document.getElementById('ddCrit0');
	var newdd = olddd.cloneNode(true);
	newdd.setAttribute('name','crit[]');
	newdd.setAttribute('id','ddCrit' + idnum);
	newdd.setAttribute('class','smaller');
	newtd.appendChild(newdd);
	newrow.appendChild(newtd);
	
	newtd = document.createElement('td');
	newdd = document.createElement('select');
	newdd.setAttribute('name','critval[]');
	newdd.setAttribute('id','ddCritVal' + idnum);
	newdd.setAttribute('class','smaller');
	newdd.className = 'smaller';
	newo = new Option("<-- Select criteria","",true,true);
	newdd.options[newdd.options.length] = newo;
	newtd.appendChild(newdd);
	newrow.appendChild(newtd);
	
	newtd = document.createElement('td');
	newa = document.createElement('a');
	newa.setAttribute('innerHTML','&nbsp;');
	//unicode escape sequence for non-breaking space
	newa.appendChild(document.createTextNode('\u00a0'));
	newa.setAttribute('href','javascript: removeCriteria('+idnum+');');
	newa.setAttribute('class','remove');
	newa.className = 'remove';
	newtd.appendChild(newa);
	newrow.appendChild(newtd);
	tbody.appendChild(newrow);
	
	idcount++;
}

function removeCriteria(x)
{
	var tbody = document.getElementById('tblBodyCrit');
	for(var i = 1; i < tbody.rows.length; i++) {
		if (tbody.rows[i].id == ('tblCritRow' + x)) {
			tbody.deleteRow(i);
		}
	}
}