// $Id: paint_changes.js,v 1.6 2008-01-05 20:40:18 patrick Exp $

function paint_changes_setup(name)
{
 var f=document.forms[name];
 if (f==null) return;

 for (var i=0; i<f.length; i++)
 {
  if (f[i].tagName == 'fieldset' || f[i].tagName == 'FIELDSET' ) continue;
  add_event(f[i],'change',paint_changes_do_change); // defined in util.js
 }
}

function paint_changes_add_element(el)
{
 if (el==null) return;
 add_event(el,'change',paint_changes_do_change);
}

function paint_changes_do_change (e)
{
  this.className=this.className? this.className+' forms_notify_change' : 'forms_notify_change';
  var id=this.id;

  // Find the corresponding label
  var ls=document.getElementsByTagName('label');
  for(var j=0;j<ls.length;j++)
  {
   if (ls[j].getAttribute('for') != id) continue;
   ls[j].className=ls[j].className? ls[j].className+' forms_notify_change' : 'forms_notify_change';
   break;
  }

  e.stopPropagation();
}

