// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)
// Contributors:
//  Justin Palmer (http://encytemedia.com/)
//  Mark Pilgrim (http://diveintomark.org/)
//  Martin Bialasinki
// 
// See scriptaculous.js for full license.  

/* ------------- element ext -------------- */  
 
// converts rgb() and #xxx to #xxxxxx format,  
// returns self (or first argument) if not convertable  

Effect.SlideUpAndDown = function(element) {
  element = $(element);
  if(element.style.display != 'none') new Effect.SlideUp(element);
  else new Effect.SlideDown(element);
}


Effect.PhaseIn = function(element) {
  element = $(element);
  new Effect.BlindDown(element, arguments[1] || {});
  new Effect.Appear(element, arguments[1] || {});
}

Effect.PhaseOut = function(element) {
  element = $(element);
  new Effect.Fade(element, arguments[1] || {});
  new Effect.BlindUp(element, arguments[1] || {});
}

Effect.Phase = function(element) {
  element = $(element);
  if(element.style.display == 'none') { new Effect.PhaseIn(element, arguments[1] || {}); }
  else { new Effect.PhaseOut(element, arguments[1] || {}); }
}

Effect.Show = function(element) {
  element = $(element);
    Element.show(element);
}
Effect.Hide = function(element) {
  element = $(element);
  Element.hide(element);
}

Effect.GrowHide = function(element) {
  element = $(element);
  if(element.style.display == 'none') { new Effect.Grow(element, arguments[1] || {}); }
  else { new Effect.Shrink(element, arguments[1] || {}); }
}



Effect.Center = function(element)
{
    try
    {
        element = $(element);
    }
    catch(e)
    {
        return;
    }
    
    var my_width  = 0;
    var my_height = 0;
    
    if ( typeof( window.innerWidth ) == 'number' )
    {
        
        my_width  = window.innerWidth;
        my_height = window.innerHeight;
    }
    else if ( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )
    {
        
        my_width  = document.documentElement.clientWidth;
        my_height = document.documentElement.clientHeight;
    }
    else if ( document.body && ( document.body.clientWidth || document.body.clientHeight ) )
    {
                
        my_width  = document.body.clientWidth;
        my_height = document.body.clientHeight;
    }
    
    element.style.position = 'absolute';
    element.style.display  = 'block';
    element.style.zIndex   = 99;
    
    
    var divheight = parseInt( element.style.height );
    var divwidth  = parseInt( element.style.width );

    divheight = divheight ? divheight : 200;
    divwidth  = divwidth  ? divwidth  : 150;
    
    var scrollY = 0;
    
    if ( document.documentElement && document.documentElement.scrollTop )
    {
        scrollY = document.documentElement.scrollTop;
    }
    else if ( document.body && document.body.scrollTop )
    {
        scrollY = document.body.scrollTop;
    }
    else if ( window.pageYOffset )
    {
        scrollY = window.pageYOffset;
    }
    else if ( window.scrollY )
    {
        scrollY = window.scrollY;
    }
    
    
    var setX = ( my_width  - divwidth  ) / 2;
    var setY = ( my_height - divheight ) / 2 + scrollY;
    
    setX = ( setX < 0 ) ? 0 : setX;
    setY = ( setY < 0 ) ? 0 : setY;
    
    element.style.left = setX + "px";
    element.style.top  = setY + "px";
}



Effect.PopupDHTML = function(element, contenu)
{
    OldElement = element;
    element = $(element);
    element.innerHTML = '<div class="ombre"><div class="faussePopup"><div class="faussePopupButon"><span class="handle"><img src="images/icones/drag.gif" alt="" style="border:0px; vertical-align:middle" /></span><a href="javascript:;" id="F'+OldElement+'" onclick="document.getElementById(this.id.substr(1)).innerHTML=\'\'"><img src="images/icones/close.gif" alt="" style="border:0px; vertical-align:middle" /></a></div><p>'+contenu+'</p><div style="text-align:right"><a href="javascript:;" id="F'+OldElement+'" onclick="document.getElementById(this.id.substr(1)).innerHTML=\'\'"><img src="images/icones/close.gif" alt="" style="border:0px; vertical-align:middle" /></a></div></div></div>';
    Effect.Center(element);
    new Draggable(element, { handle:"handle" });
}


