function delete_row(id, url, question) {
  var answer = confirm(question);
  
  if (answer) {
    new Ajax.Request(url, {
      method:'get',
      onSuccess: function(transport) {
        var response = transport.responseText || "no response text";
        Effect.Fade(id);
      },
      onFailure: function(){ alert('Something went wrong...') }
    });
  }
}

function validate_required(element, error_element, error_message) {
    if ($(element).value == "") {
        $(error_element).update(error_message);
        new Effect.Highlight(error_element, { startcolor: '#ffffff', endcolor: '#d06b84', restorecolor: '#d06b84' });
    } else {
        $(error_element).update('OK');
        new Effect.Highlight(error_element, { startcolor: '#ffffff', endcolor: '#66bc29', restorecolor: '#66bc29' });
    }
}

function solidmail_viewer(element, url) {
    Effect.BlindDown($('sm-wait'));
    new Ajax.Request(url, {
      method:'get',
      onSuccess: function(transport) {
        var response = transport.responseText || "no response text";
        $(element).update(response);
        Effect.BlindUp($('sm-wait'));
        Effect.BlindDown(element);
      },
      onFailure: function(){ alert('Something went wrong...') }
    });
}