/**
 * Extension of Prototype
 */
Object.extend(Element, {
   getClassParameters: function(element, prefix) {
     if (arguments.length < 2) {
       prefix = 'param';
     }
     var match = new RegExp(prefix + '-\\w*=\\S*', 'g');
     var attrs = element.className.match(match);
     var params = new Array();
     if (attrs) {
       for (var i=0;i<attrs.length;i++) {
           var match = new RegExp(prefix + '-(\\w*)=(\\S*)');
           var parts=attrs[i].match(match);
           params[parts[1]] = parts[2];
       }
     }
     return params;
   },
   getClassParameter: function(element, param, prefix) {
       if (arguments.length < 3) {
           prefix = 'param';
       }
       var match = new RegExp(prefix + '-' + param + '=(\\S*)');
       var parts=element.className.match(match);
       if (parts) {
           return parts[1];
       }
   },
   setClassParameter: function(element, param, value, prefix) {
       if (arguments.length < 4) {
           prefix = 'param';
       }
       var match = new RegExp(prefix + '-' + param + '=(\\S*)');
       var parts = element.className.replace(match);
       if (parts) {
         Element.removeClassName(element,parts[0]);
       }
       Element.addClassName(element, prefix + '-' + param + '=' + value);
   }
});