function update_user_pref(form_element,pref_name,original_value)
    {
    value=form_element.value
    if (form_element.type=="checkbox") value=form_element.checked ? "true" : "false"
    url="/protected/update_user_pref/"+pref_name+"?value="+value
//    alert("pref_name:"+pref_name+" original_value:"+original_value+"\n"+url);

    $(pref_name+"_saving").innerHTML="<span class='saving'>saving...</span>";

    ajaxExecFunction
      (
      url,
      function(URL,response)
        {
//        alert(response);


        //result
        res=eval('('+response+')');
        if (res.result=="success")
          {
          $(pref_name+"_saving").innerHTML="<span class='saved'>saved</span>";
          }
        else
          {
          $(pref_name+"_saving").innerHTML="<span class='error'>error: "+res.result+"</span>";
          if (original_value)
            {
            if (form_element.tagName=="SELECT")
              set_select_value(form_element,original_value);
            else
              form_element.value=original_value;
            }
          }
        if (res.info) alert(res.info);
        //setTimeout(function(){$(pref_name+"_saving").innerHTML="";},5000);
        }
      );
    };
