Effect.BlindUpTrigger = function(element, trigger) {
  var te = trigger.split('<');
  var i = 0;
  while (i < te.length)
  {
    Effect.DisableTrigger(te[i]);
    i++;
  }
   
  element = $(element);
  Element.makeClipping(element);
  return new Effect.Scale(element, 0, 
    Object.extend({ scaleContent: false, 
      scaleX: false, 
      restoreAfterFinish: true,
      afterFinishInternal: function(effect) { with(Element) {
        [hide, undoClipping].call(effect.element); 
        var be = trigger.split('<');
        var j = 0;
        while ( j < be.length)
        {
            Effect.EnableTrigger(be[j]);
            j++;
        }     
        }} 
    }, arguments[2] || {})
  );
}

Effect.BlindDownTrigger = function(element, trigger) {
  //Effect.DisableTrigger(trigger);
  var te = trigger.split('<');
  var i = 0;
  while (i < te.length)
  {
    Effect.DisableTrigger(te[i]);
    i++;
  }
  element = $(element);
  var oldHeight = Element.getStyle(element, 'height');
  var elementDimensions = Element.getDimensions(element);
  return new Effect.Scale(element, 100, 
    Object.extend({ scaleContent: false, 
      scaleX: false,
      scaleFrom: 0,
      scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width},
      restoreAfterFinish: true,
      afterSetup: function(effect) { with(Element) {
        makeClipping(effect.element);
        setStyle(effect.element, {height: '0px'});
        show(effect.element); 
      }},  
      afterFinishInternal: function(effect) { with(Element) {
        undoClipping(effect.element);
        setStyle(effect.element, {height: oldHeight});
        //Effect.EnableTrigger(trigger);
        var be = trigger.split('<');
        var j = 0;
        while ( j < be.length)
        {
            Effect.EnableTrigger(be[j]);
            j++;
        }    
      }}
    }, arguments[2] || {})
  );
}

Effect.DisableTrigger = function(element) {
    element = $(element);
    element.saveonclick = element.onclick;
    element.onclick = null;
}

Effect.EnableTrigger = function(element) {
    element = $(element);
    element.onclick = element.saveonclick;
}

Effect.BlindUpAndDown = function(element, trigger) {
    element = $(element);
    if(Element.visible(element)) 
		new Effect.BlindUpTrigger(element, trigger, arguments[2] || {});
    else 
		new Effect.BlindDownTrigger(element, trigger, arguments[2] || {});}

function checkHeight() {
	var h1 = Element.getHeight('right');
	var h2 = Element.getHeight('left');	

//	var h1 = document.getElementById('right').offsetHeight;
//	var h2 = document.getElementById('left').offsetHeight;	

	if( h1 < h2 ) {			
		document.getElementById('right').style.height = h2+'px';
	} else {
		document.getElementById('left').style.height = h1+'px';
	}
}

function getFAQ( id ) {
	var field = 'faq_'+id;
	var new_right_height;	
	var field_height 	= Element.getHeight(field);
	var left_height 	= Element.getHeight('left');
	var right_height 	= Element.getHeight('right');
	var faq_height 		= Element.getHeight('faq_section');

	if(Element.visible(field)) {
		new_right_height = right_height - field_height;
		
		if( new_right_height < left_height ) {
			new_right_heught = left_height;
		}
	} else {
		new_right_height = faq_height + field_height;
	}

	new Effect.BlindUpAndDown( field, field, {duration: 0.5, asynchronous: false} );

	document.getElementById('right').style.height = new_right_height+'px';	
	document.getElementById('left').style.height = left_height+'px';
}
