Ma perche` aggiungi, togli, mescoli, ...
Hai fatto un bel minestrone.

Il numero di pulsanti lo puo` ricavare da solo il JS, invece l'oggetto da verificare glie lo devi dire:
codice:
function gestEmail(){
	var totmail = "";
	var cb = document.NOMEFORM.email["id_categ[]"];
	for(i=0;i<cb.length;i++){
		if(cb[i].checked){
			totmail += cb[i].value + "|";
		}
	}
	window.opener.document.selectmail.idcategmail.value=totmail;
	window.close();
}