/*  =========================================================

//  jquery.innerfade.js

// Datum:  2008-02-14
// Firma: Medienfreunde Hofmann & Baldes  GbR
// Author: Torsten Baldes
// Mail:  t.baldes@medienfreunde.com
// Web:  http://medienfreunde.com

// based on  the work of Matt Oakes  http://portfolio.gizone.co.uk/applications/slideshow/
//  and Ralf S. Engelschall http://trainofthoughts.org/

 *
 *  <ul  id="news">
 *      <li>content 1</li>
 *       <li>content 2</li>
 *       <li>content 3</li>
 *  </ul>
 *  
 *  $('#news').innerfade({  
 *    animationtype: Type of animation 'fade' or  'slide' (Default: 'fade'),
 *    speed:  Fading-/Sliding-Speed in milliseconds or keywords (slow, normal or fast)  (Default: 'normal'),
 *    timeout: Time between the  fades in milliseconds (Default: '2000'),
 *    type:  Type of slideshow: 'sequence', 'random' or 'random_start' (Default:  'sequence'),
 *     containerheight: Height of the  containing element in any css-height-value (Default: 'auto'),
 *     runningclass: CSS-Class which the container get’s applied (Default:  'innerfade'),
 *    children: optional children selector  (Default: null)
 *  });
 *

//  ========================================================= */


(function($)  {

    $.fn.innerfade =  function(options) {
        return this.each(function()  {   
            $.innerfade(this, options);
         });
    };

     $.innerfade = function(container, options) {
         var settings = {
            'animationtype':     'fade',
            'speed':            'normal',
             'type':             'sequence',
             'timeout':          2000,
             'containerheight':  'auto',
             'runningclass':     'innerfade',
             'children':         null
        };
         if (options)
            $.extend(settings,  options);
        if (settings.children === null)
             var elements = $(container).children();
         else
            var elements =  $(container).children(settings.children);
        if  (elements.length > 1) {
             $(container).css('position', 'relative').css('height',  settings.containerheight).addClass(settings.runningclass);
             for (var i = 0; i < elements.length; i++) {
                 $(elements[i]).css('z-index',  String(elements.length-i)).css('position', 'absolute').hide();
             };
            if (settings.type ==  "sequence") {
                setTimeout(function() {
                     $.innerfade.next(elements, settings, 1, 0);
                 }, settings.timeout);
                 $(elements[0]).show();
            } else if  (settings.type == "random") {
                var last =  Math.floor ( Math.random () * ( elements.length ) );
                 setTimeout(function() {
                     do {
                        current = Math.floor (  Math.random ( ) * ( elements.length ) );
                     } while (last == current );             
                     $.innerfade.next(elements, settings, current, last);
                 }, settings.timeout);
                 $(elements[last]).show();
            } else if (  settings.type == 'random_start' ) {
                 settings.type = 'sequence';
                var  current = Math.floor ( Math.random () * ( elements.length ) );
                 setTimeout(function(){
                   $.innerfade.next(elements, settings, (current + 1) %  elements.length,  current);
                }, settings.timeout);
                 $(elements[current]).show();
             }  else {
              alert('Innerfade-Type must  either be \'sequence\', \'random\' or \'random_start\'');
             }
        }
    };

     $.innerfade.next = function(elements, settings, current, last) {
         if (settings.animationtype == 'slide') {
             $(elements[last]).slideUp(settings.speed);
             $(elements[current]).slideDown(settings.speed);
         } else if (settings.animationtype == 'fade') {
             $(elements[last]).fadeOut(settings.speed);
             $(elements[current]).fadeIn(settings.speed, function() {
               removeFilter($(this)[0]);
            });
         } else
            alert('Innerfade-animationtype  must either be \'slide\' or \'fade\'');
        if  (settings.type == "sequence") {
            if ((current  + 1) < elements.length) {
                current =  current + 1;
                last = current - 1;
             } else {
                current = 0;
                 last = elements.length - 1;
            }
         } else if (settings.type == "random") {
             last = current;
            while (current == last)
                 current = Math.floor(Math.random() * elements.length);
         } else
            alert('Innerfade-Type must  either be \'sequence\', \'random\' or \'random_start\'');
         setTimeout((function() {
             $.innerfade.next(elements, settings, current, last);
         }), settings.timeout);
    };

})(jQuery);

//  **** remove Opacity-Filter in ie ****
function  removeFilter(element) {
  if(element.style.removeAttribute){
     element.style.removeAttribute('filter');
  }
}





//  Copied from Head tag of HTML Document by Sajjad

      $(document).ready(
        function(){
           $('#news').innerfade({
             animationtype: 'slide',
            speed: 750,
             timeout: 2000,
            type: 'random',
             containerheight: '1em'
          });
           
          $('ul.RotLogos').innerfade({
             animationtype: 'fade',
             speed: 300,
            timeout: 5000,
             type: 'sequence',
             containerheight: ''
          });
           
          $('.fade').innerfade({
             speed: 1000,
            timeout: 6000,
             type: 'random_start',
             containerheight: '1.5em'
          });
           
          $('.adi').innerfade({
             speed: 'slow',
            timeout: 5000,
             type: 'random',
            containerheight:  '150px'
          });

       });

