if (typeof(Jesper) == 'undefined')
    var Jesper = {};

if (typeof(Jesper.utils) == 'undefined')
    Jesper.utils = {};

Jesper.utils.ActionButton = new Class({
    initialize: function(el, url, data, method, success_msg) {
        var self = this;
        this.url = url;
        this.method = method;
        this.success_msg = success_msg;
        this.data = data;

        el.addEvent('click',
            function (e) {
                this.set('html', "<img src='http://static.jesper.nu/images/widgets-loading.gif' />");
                var el = this;
                var req = new Request.JSON({ 
                      'method': self.method,
                      'url': self.url,
                      'data': self.data,
                      onSuccess: function (d,s) {
                          var msg;
                          if (!d.success)
                              msg = "Ett fel uppstod.";
                          else
                              msg = self.success_msg;
                            (new Element('span', {'html': "<em>"+msg+"</em>"}))
                                .replaces(el);
                      }
                    });
                req.send();
                this.removeEvents();
                e.preventDefault();
            }
        );
    }
});
