  /**
   * Insert a new line in the multi line text.
   * @param HTMLButtonObject buttonObject
   * @param string value
   */
  function addMultidataLine(buttonObject, id, value, label) {
	var buttonEl = new Element(buttonObject);
	
	if (value == "") {
	  return;
	}
 	
	 //buttonObject = $(buttonObject);
	value = $defined(value) ? value : '';
	
	var inputField = id + "_input";
	var ifield = document.getElementById(inputField);
	ifield.value = "";
	
	var dd = document.getElementsByTagName('dd');
	var num = 0;
	for (var i = 0; i < dd.length; i++) {
	  if (dd[i].id.indexOf(id) != -1) {
	    num++;
	  }
	} 
	
	// create new dd element
	var myDd = new Element('dd', {
	  id: id + num	
	});
	var myText = new Element('p');
	var myHiddenInput = new Element('input', {
	  type: 'hidden',
	  name: id + '[]',
	  value: value
	});
	myText.appendText(value);
	
	var removeButton = new Element('button', {
      'class': 'md_remove',
	  'type': 'button',
      'events': {
        'click': function() {
		  removeMultidataLine(this, id);
	    }
	  }
	}	);
	removeButton.appendText(label);
	removeButton.inject(myText);
	
	myText.inject(myDd);
	myHiddenInput.inject(myDd);
		
	// append new dd element
	ddEl = buttonEl.getParent();
	
	myDd.inject(ddEl, 'after');
  }

  function removeMultidataLine(buttonObject, id) {
	  
	var buttonEl = new Element(buttonObject);
	
	var pEl = buttonEl.getParent();
	var ddEl = pEl.getParent();
	
	pEl.destroy();
  }

