
/*
function getContent(module) {
    //$('loading').style.display = '';
    //var slide = new Fx.Slide('content', { duration:1000, transition:Fx.Transitions.Bounce.easeOut }).hide();
    $('loading').fade('show');
    $('content').fade('hide');
    new Request.HTML({
        url: '/' + module + '/js/',
        encoding: 'ISO-8859-1',
        evalScripts: true,
        evalResponse: true,
        update: $('content'),
        onComplete: function() {
            //slide.slideIn();
            //$('loading').style.display = 'none';
            $('loading').fade(0);
            $('content').fade(1);
        }
    }).get();
}
*/
var monateNamen = ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'];
function showmonat(m,j) {
    if ( !$defined(j) ) var j = jahr;
    if ( m == monat && j == jahr ) return false;
    if ( m == -1 ) {
        if (monat == 1) {
            m = 12;
            j = jahr -1;
        } else {
            m = monat -1;
            j = jahr;
        }
    } else if ( m == 0 ) {
        if ( monat == 12 ) {
            m = 1;
            j = jahr +1;
        } else {
            m = monat +1;
            j = jahr;
        }
    }
    // Lade Monat m j
    monat = m;
    jahr = j;
    $('monat').fade('hide');
    new Request.HTML({
        url: '/buchungskalender/1-'+m+'-'+j+'/?content=only',
        //encoding: 'ISO-8859-1',
        link: 'chain',
        evalScripts: true,
        evalResponse: false,
        update: $('monat'),
        onComplete: function() {
            $('monat').fade(1);
            eventes();
        }
    }).get();
    $('kmonat').set('text', monateNamen[m-1]+' '+j );
}


window.addEvent('domready', function() {

    //var els = $$('#kalender .tag');
    eventes();


    // Tipps
    var Tipps = new Tips('.tipp', {
        showDelay: 0,
        hideDelay: 0,
        className: 'tippbox'
    });

    $$('.fadeout').each(function(el) {
        el.fade('hide').setStyle('display','');
    });

});

var tmp = '';
var mode = 0; // 0:Anreise w�hlen, 1:Abreise, 2:fertig
var anreise, abreise;
var aktiv = 1; // aktiver (oberster) monat
var els = new Array();

function eventes () {

	$$('.tag').each(function(tagel) {
		
		var exp = tagel.get('id').split('_');
		var time = new Date();
		time.set({'year':exp[1], 'mo':exp[2], 'date':exp[3]});
		
		tagel.addEvents({
			'mouseenter': function() {
				if (mode == 0) {
					this.setStyle('background-color','green');
				} else if (mode == 1) {
					while ( time.get() > anreise ) {
						$('tag_'+time.get('year')+'_'+time.get('month')+'_'+time.get('day')).setStyle('background-color','orange');
						time.decrement();
					}
				} else if ($mode == 2) {
				
				}
			},
			'mouseleave': function() {
				if (mode == 0) {
					this.setStyle('background-color','');
				} else if (mode == 1) {
					
				} else if ($mode == 2) {
				
				}
			},
			'click': function() {
				if (mode == 0) {
					anreise = time;
					mode++;
				} else if (mode == 1) {
					if ( time > anreise ) {
						abreise = time;
						mode++;
					}
				} else if ($mode == 2) {
				
				}
			}
		});
		
	});


//    var months = $('k'+aktiv).getElements('.monat');
//    months.combine( $('k'+(aktiv+1)).getElements('.monat') );
//
//    //els = $('k'+aktiv).getElements('.tag');
//    //els.combine( $('k'+(aktiv+1)).getElements('.tag') );
//
//    months.each(function(m) {
//
//        var jahr = m.getProperty('id').substr(1,4).toInt();
//        var monat = m.getProperty('id').substr(5).toInt();
//
//        els[monat] = m.getElements('.tag');
//
//        m.getElements('.tag').each(function(el,i) {
//
//            i++;
//            if ( mode == 2 ) {
//                if ( ( (i>=anreise[0] && monat==anreise[1] && jahr==anreise[2]) || (monat>anreise[1] && jahr==anreise[2]) || jahr>anreise[2] ) &&
//                     ( (i<=abreise[0] && monat==abreise[1] && jahr==abreise[2]) || (monat<abreise[1] && jahr==abreise[2]) || jahr<abreise[2] ) ) {
//                         e.setStyle('background-color','green');
//                     }
//            }
//            el.addEvents({
//              'click': function() {
//                switch (mode) {
//                    case 0:
//                        el.setStyle('background-color','green');
//                        $('anreise').set('text',i+'.'+monat+'.'+jahr);
//                        anreise = [i,monat,jahr];
//                        mode = 1;
//                        break;
//
//                    case 1:
//                        // Korrektur
//                        if ( i==anreise[0] && monat==anreise[1] && jahr==anreise[2] ) {
//                            el.setStyle('background-color','');
//                            $('anreise').set('text','-');
//                            mode = 0;
//                            break;
//                        }
//                        // Abreise < Anreise
//                        if ( (i<=anreise[0] && monat==anreise[1] && jahr==anreise[2]) || (monat<anreise[1] && jahr==anreise[2]) || jahr<anreise[2] ) {
//                            alert('Ihr Abreisedatum kann nicht vor der Anreise liegen!');
//                            break;
//                        }
//                        $('abreise').set('text', i+'.'+monat+'.'+jahr);
//                        abreise = [i,monat,jahr];
//                        for (var j=i; j>anreise[0]; j--) {
//                            els[j-1].setStyle('background-color','green');
//                        }
//                        var von = Date.UTC(anreise[2],anreise[1]-1,anreise[0]) / 1000;
//                        var bis = Date.UTC(abreise[2],abreise[1]-1,abreise[0]) / 1000;
//                        var j=0, c=0, p=50;
//                        for (j=von; j<bis; j+=86400) c++;
//                        if ( c <= 3 ) p = 70;
//                        $('info').set('html',c+' &Uuml;bernachtungen &agrave; '+p+' &euro; = '+(c*p)+' &euro;');
//                        mode = 2;
//                        break;
//                }
//              },
//              'mouseenter': function() {
//                  //tmp = e.get('html');
//                  switch(mode) {
//                      //case 0: e.set('html',tmp+' <i>ANREISE</i>'); break;
//                      case 0: el.setStyle('background-color','green'); break;
//                      case 1:
//                        //if ( (i>anreise[0] && monat==anreise[1] && jahr==anreise[2]) || (monat>anreise[1] && jahr==anreise[2]) || jahr>anreise[2] ) e.set('html', tmp+' <i>ABREISE</i>');
//                        els.each(function(e,m) {
//                            //if (  )
//                        });
//                        if ( monat==anreise[1] && jahr==anreise[2] ) var till = anreise[0];
//                        else var till = 0;
//                        if (monat>=anreise[1] && jahr==anreise[2] || jahr>anreise[2] ) for (var j=els.length; j>till; j--) {
//                            if (j>i) els[j-1].setStyle('background-color','');
//                            else els[j-1].setStyle('background-color','green');
//                        }
//                        if ( i==anreise[0] && monat==anreise[1] && jahr==anreise[2] ) {
//                            //e.set('html', tmp+' <i>KORREKTUR</i>');
//                            el.setStyle('background-color','orange');
//                        }
//                        break;
//                  }
//
//              },
//              'mouseleave': function() {
//                  //e.set('html',tmp);
//                  if (mode==0) el.setStyle('background-color','');
//                  if ( el.getStyle('background-color') == 'orange' ) el.setStyle('background-color','green');
//              }
//            });
//        });
//    });
}

function reset() {
    mode = 0;
    $('anreise').set('text', '-');
    $('abreise').set('text', '-');
    $('info').set('text', '');
    for (var j=1; j<=els.length; j++) {
        els[j-1].setStyle('background-color','');
    }
}


function showit( direction ) {

    if ( direction == 1 ) {
        if ( aktiv == 1 ) $('prev').fade('in');

        if ( !$defined($('k'+(aktiv+2))) ) {
            var next = $('k'+(aktiv+1)).clone(false).inject('kalender','bottom');
            next.setProperty('id','k'+(aktiv+2)).slide('hide');
            new Request.HTML({
                url: '/js/buchungskalender/' + next.getProperty('id').replace('k','') + '/',
                link: 'chain',
                evalScripts: true,
                update: next,
                onComplete: function() {
                    next.slide('in').fade('in');
                    eventes();
                }
            }).get();
        } else {
            var next = $('k'+(aktiv+2));
            next.slide('in').fade('in');
        }

        $('k'+aktiv).slide('out').fade('out');
        aktiv++;
    } else {
        if ( aktiv < 2 ) return false;
        if ( aktiv == 2 ) $('prev').fade('out');

        $('k'+(aktiv-1)).slide('in').fade('in');
        $('k'+(aktiv+1)).slide('out').fade('out');
        aktiv--;
    }

}
