Es porque no le estas enviando los campos, no se de donde sacaste eso de fields.. pero con algo asi puedes:
Código Javascript
:
Ver originalvar activo = false;
function todo()
{
activo = (activo == false) ? true : false;
var fields = document.getElementsByName("checkbox[]");
for (i = 0; i < fields.length; i++)
fields[i].checked = activo ;
}
Cuando le das click calcula si esta seleccionado es deseleaccionar o viceversa.. y lo aplica a todos los checkboxes con el mismo name