var activeStyle = 'filip';
var kalender = Object();

/* lightbox CONF */
var fileLoadingImage = "/skins/filip/bilder/lightbox/loading.gif";		
var fileBottomNavCloseImage = "/skins/filip/bilder/lightbox/closelabel.gif";

var Fenster = {
  fertig : false,

  init : function() {
    this.fertig = true;
    this.externalLinks();

    kalender = new YAHOO.widget.Calendar_DE('kalender','kalenderContainer');
		kalender.minDate = YAHOO.widget.DateMath.add(new Date(), YAHOO.widget.DateMath.DAY, 0);
		kalender.setupConfig();
		kalender.Config.Options.NAV_ARROW_LEFT = '/skins/filip/bilder/callt.gif';
		kalender.Config.Options.NAV_ARROW_RIGHT = '/skins/filip/bilder/calrt.gif';
		kalender.onSelect = this.listeParties;

    /* Parties stylen */
		var renderSalsa = function(cal,cell) {
		  YAHOO.widget.Calendar_Core.addCssClass(cell, "calSalsa");
		}
		kalender.addWeekdayRenderer(1, renderSalsa);
		kalender.addWeekdayRenderer(5, renderSalsa);

		var renderHouse = function(cal,cell) {
		  YAHOO.widget.Calendar_Core.addCssClass(cell, "calHouse");
		}
		kalender.addWeekdayRenderer(6, renderHouse);

		var renderHifi = function(cal,cell) {
		  YAHOO.widget.Calendar_Core.addCssClass(cell, "calHifi");
		}
		kalender.addWeekdayRenderer(7, renderHifi);

		var renderSpecials = function(cal,cell) {
		  YAHOO.widget.Calendar_Core.addCssClass(cell, "calSpecials");
		}
		kalender.addRenderer( specials_list, renderSpecials ); // Specials highlighten

    /* Kalender anzeigen */
    kalender.render();
//    YAHOO.util.Event.addListener(window, 'mouseover', this.listeParties);


    if ( window.attachEvent && ( navigator.appName == "Microsoft Internet Explorer"  ) ) this.sfHover();

    Leiste.init();
    Leiste.animieren();

    SpecialFrame.init();
  },

  init_small : function() { // init ohne Kalender und SpecialFrame
    this.fertig = true;
    this.externalLinks();

    if ( window.attachEvent && ( navigator.appName == "Microsoft Internet Explorer"  ) ) this.sfHover(); // Suckerfish Dropdown 4 IE

    Leiste.init();
    Leiste.anschlag = 730; 
    Leiste.animieren();
  },

  listeParties : function() {
    var quelle = 'partylister.php5' + '?datum=' + kalender.selectedDates;
    SpecialFrame.launch(quelle);
  },

  externalLinks : function () {
    var anchors = document.getElementsByTagName("a");
    for (var i=0; i<anchors.length; i++) {
      var anker = anchors[i];
      if (anker.getAttribute("href") && anker.getAttribute("rel") == "external") {
        anker.target = "_blank";
        var titel = anker.getAttribute("title");
        if ( (titel == null) || (titel == '') ) titel = anker.getAttribute("href");
        anker.setAttribute("title", "externer Link: " + titel);
        anker.setAttribute("class", "external");
      } else if (anker.getAttribute("href") && anker.getAttribute("rel") == "download") {
        anker.target = "_blank";
      }
    }
  },

  sfHover : function() { // Suckerfish DropDown Menu revised 4 IE 6-
  	var sfEls = document.getElementById("nav").getElementsByTagName("li");
  	for (var i=0; i<sfEls.length; i++) {
  		sfEls[i].onmouseover=function() {
        this.className+=" sfhover";
      }
  		sfEls[i].onmouseout=function() {
        this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
      }
  		sfEls[i].onclick=function() {
        var anker=this.getElementsByTagName("a");
      	var verknuepfung=anker[0].getAttribute("href");
  			if ( this.parentNode.id != 'nav' ) {
          top.location.href=verknuepfung;
          return false;
        }
  		}
  	}
  },

  debug : function() {
    if ( arguments.length > 0 ) document.debug.ausgabe.value = arguments[0];
  }

}

var Leiste = {
  /* INIT 4 animierte Leiste */
  x : 0,
  delay : 50, // ms
  steps : 1, // px
  running : 0, // controller
  bild : Object, // das "Leistenbild", welches immer wieder hinten angestellt wird
  bild_width : 1725,
  thebox : Object,  // der "Bilderrahmen"
  anschlag : 853, // wann ist das erste Bild "am Ende"

  init : function() {
    this.bild = document.createElement('img');
    this.bild.alt = '';
    this.bild.className ='leistenBild';
    this.bild.src ='/skins/filip/bilder/leiste.jpg';

    this.thebox = document.getElementById( "leistenFrame" );
    this.thebox.style.width = this.bild_width + 'px';
    this.thebox.appendChild( this.bild );
  },

  animieren : function() {
    if ( this.running ) {
      clearTimeout( this.running );
      this.running = 0;
    }
    this.running = setTimeout( "Leiste.animieren()", this.delay );
    this.x = this.x - this.steps;
    this.thebox.style.left = this.x + 'px';
    if ( this.x < -this.anschlag ) {
      var neu_width = parseInt( this.thebox.style.width ) + this.bild_width;
      this.thebox.style.width = neu_width + 'px';

      this.bild = document.createElement('img');
      this.bild.alt = 'Impressions of Soda';
      this.bild.className ='leistenBild';
      this.bild.src ='/skins/filip/bilder/leiste.jpg';

      this.thebox.appendChild( this.bild );
      this.anschlag += this.bild_width;
    }
  }
}

/* PopUpFrame */
var SpecialFrame = {
  effect : null,
  sichtbar : false,
  iFenster : Object,
  Rahmen : Object,
  RahmenStil : Object,
  theTop : null,

  ieFixedPos : function() {
    if (document.documentElement && document.documentElement.scrollTop) this.theTop = document.documentElement.scrollTop + 15;
    else this.theTop = document.body.scrollTop + 15;
    this.Rahmen = document.getElementById('SpecialsFrame');
    this.Rahmen.style.top = this.theTop;
  },

  init : function() {
 		if (Fenster.fertig) this.iFenster = document.getElementById('Special');

    this.Rahmen = document.getElementById('SpecialsFrame');
    if ( navigator.appName == "Microsoft Internet Explorer"  ) {
      if ( document.documentElement && document.documentElement.scrollTop ) this.theTop = document.documentElement.scrollTop + 15;
      else this.theTop = document.body.scrollTop + 15;
      this.Rahmen.style.top = this.theTop;
      YAHOO.util.Event.addListener( window, 'scroll', this.ieFixedPos );
    } else this.Rahmen.style.position = 'fixed';

  },

  launch : function() {
  	if (Fenster.fertig) {
      var jetzt = new Date(); // Controller
      var quelle = (arguments.length == 0)? 'leer.html' : arguments[0];
  		
      if (this.iFenster.src) this.iFenster.src = '/popups/' + quelle;
      else window.Special.location.href = '/popups/' + quelle;

  		if ( this.effect == null ) {
        if ( navigator.appName == "Microsoft Internet Explorer" ) this.effect = Effect.Grow('SpecialsFrame');
  			else this.effect = Effect.Appear('SpecialsFrame');
  			this.sichtbar = true;
  		} else if ( ( this.sichtbar == false ) && ( ( jetzt.getTime() - this.effect.finishOn ) > 0 ) ) {
        if ( navigator.appName == "Microsoft Internet Explorer" ) this.effect = Effect.Grow('SpecialsFrame');
  			else this.effect = Effect.Appear('SpecialsFrame');
  			this.sichtbar = true;
  		}

  		return false;

  	} else return true;

  },
    
  schliessen : function () {
  	if ( navigator.appName == "Microsoft Internet Explorer"  )  this.effect = Effect.Shrink('SpecialsFrame');
  	else this.effect = Effect.Fade('SpecialsFrame');
  	this.sichtbar = false;
  	return false;
  }

}

if ( navigator.appName == "Microsoft Internet Explorer" ) YAHOO.util.Event.addListener(window, 'scroll', SpecialFrame.ieFixedPos);
