/*!
 * Rheingau Music Festival (RMF)
 * JavaScript Settings
 * vor allem für jQuery JavaScript Library v1.3.2
 *
 * Copyright (c) 2009 Piccobello
 *
 * Date: 2009-10-09 13:43:21
 */
 
$(document).ready(function(){
						
				// DATEPICKER SETTINGS
    			$("#f_startdatum").datepicker(
    				{ dateFormat: 'dd.mm.yy' }
    			);
    			$("#f_enddatum").datepicker(
    				{ dateFormat: 'dd.mm.yy' }
    			);
    			
    			
    			if(global_language=='de'){
    				$.datepicker.regional['de'] = {
						clearText: 'löschen', clearStatus: 'aktuelles Datum löschen',
						closeText: 'schließen', closeStatus: 'ohne Änderungen schließen',
						prevText: '&#x3c;zurück', prevStatus: 'letzten Monat zeigen',
						nextText: 'Vor&#x3e;', nextStatus: 'nächsten Monat zeigen',
						currentText: 'heute', currentStatus: '',
						monthNames: ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'],
						monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez'],
						monthStatus: 'anderen Monat anzeigen', yearStatus: 'anderes Jahr anzeigen',
						weekHeader: 'Wo', weekStatus: 'Woche des Monats',
						dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
						dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
						dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
						dayStatus: 'Setze DD als ersten Wochentag', dateStatus: 'Wähle D, M d',
						dateFormat: 'dd.mm.yy', firstDay: 1, 
						initStatus: 'Wähle ein Datum', isRTL: false
					};
					$.datepicker.setDefaults($.datepicker.regional['de']);
				}
				
				$(".datebutton").click(function() {
					var currentId = $(this).attr('id');
					$('#f_'+currentId).datepicker('show');
				});
				
				// NUTZER STECKBRIEF SETTINGS
				$(".togglebutton").click(function () {
					var currentId = $(this).attr('id');
					$('#steckbrief_'+currentId).toggle("slow");
    			}); 
    			
    			// GALLERY SETTINGS
    			$("a.gallery-box").fancybox({
					'hideOnContentClick': false
				});
				
				// SHARE LAYER
				$("a.rmf-share").fancybox({
					'hideOnOverlayClick': true,
					'width'				: 320,
					'height'			: '80%',
					'autoScale'			: true,
					'transitionIn'		: 'fade',
					'transitionOut'		: 'fade',
					'type'				: 'iframe',
					'overlayColor'		: '#434343',
					'centerOnScroll'	: true
					 	
				});
     			 
  				// MAIN MENU
  				jQuery.each(jQuery.browser, function(i, val) {
  					mybrowser = i;
  					if(i!="msie" && jQuery.browser.version.substr(0,3)!="6.0" ){
    				
    	
  				
  				// MAIN MENU
  				// Highlight des Hauptmenüpunkts bei Scroll über entsprechendem Submenü aktivieren
  				$("#menu .submenu").mouseover(function () {
					var currentId = $(this).attr('id');
					currentId = currentId.replace(/submenu-/g, "");
					activateMenu(currentId);
					//$("#menu #submenu-"+currentId).css({'display': 'block', 'opacity': '1.0'});
    			}); 
    			
    			$("#menu .menubtn").mouseover(function () {
    				resetMenuIntro();
					var currentId = $(this).attr('id');
					currentId = currentId.replace(/menu-/g, "");
					currentMain = currentId;
					$("#menu .menubtn").removeClass('activated');
					fixMenuPos(currentId);
    			});
    			
    			
    			// Bei Verlassen des Hauptmenüs ausgewählten Menüpunkt wieder highlighten    			
    			$("#menu").mouseout(function () {
					var active = page_m1;
    				activateMenu(active);
    			});
    			
    			
    				
    				
    			} // END if(i!="msie" && jQuery.browser.version.substr(0,3)!="6.0")
    			else{
    				
    				
    				$("#menu .submenu").mouseover(function () {
    					resetMenuIntro();
    				});
    				$("#menu .menubtn").mouseover(function () {
    					resetMenuIntro();
    				});
    			}
    			
				});
    			
  				function activateMenu(active){
  					resetMenuIntro();
  					//$("#menu .submenu").css('opacity','1.0').stop(true, true);
					if((active!="" && typeof active!="undefined") && (active=="rheingau" || active=="musik" || active=="festival")){
						if($("#menu #menu-"+active+".menubtn").hasClass('activated')==false) $("#menu #menu-"+active+".menubtn").addClass('activated');
					}
				 }

				function fixMenuPos(id){
					if(typeof id!="undefined" && (id=="rheingau" || id=="musik" || id=="festival")){
						var  submenu_id = "submenu-"+id;
						var submenu = document.getElementById(submenu_id);
						var teaserHeight = document.getElementById('teaserflash').offsetHeight;
						var headerHeight = document.getElementById('header').offsetHeight;
						var menuTop = document.getElementById('menu').offsetTop;
						var submenuHeight = submenu.offsetHeight;
						if(submenuHeight<=350){ submenuHeight = 350; }
						var submenuTop = submenu.offsetTop;
						if(submenuTop<=0){ submenuTop = 40; }
						if(submenuTop<0){ submenuTop = submenuHeight+submenuTop; }
						
						var browserHeight = getBrowserHeight();
						var browserScrollY = getBrowserScrollTop();
						
						var absoluteSubmenuTop = teaserHeight+menuTop+submenuTop;
						var showAreaUp = absoluteSubmenuTop-browserScrollY;
						var showAreaDown = browserHeight+browserScrollY-absoluteSubmenuTop;
						
						if(showAreaDown>=submenuHeight){
							// Genug Platz nach unten
							submenu.className = 'submenu';
						}
						else if(showAreaUp>submenuHeight && showAreaDown<submenuHeight){
							// Genug Platz nach oben, zu wenig nach unten
							submenu.className = 'submenu uppos';
						}
						else{
							submenu.className = 'submenu';
							document.getElementById('menu').scrollIntoView(true);
						}
						//alert("submenu_id:"+submenu_id+"\n"+"browserHeight:"+browserHeight+"\n"+"teaserHeight:"+teaserHeight+"\n"+"headerHeight:"+headerHeight+"\n"+"menuTop:"+menuTop+"\n"+"submenuTop:"+submenuTop+"\n"+"browserScrollY:"+browserScrollY+"\n"+"absoluteSubmenuTop:"+absoluteSubmenuTop+"\n"+"showAreaUp:"+showAreaUp+"\n"+"showAreaDown:"+showAreaDown+"\n"+"submenuHeight:"+submenuHeight+"\n");
					}
				}
				 
				 
				function explainMenu(){
						
						var topBase = ($('body').hasClass('home')) ? 90 : 100;
						var leftBase = 100;
						
						
						
						// Note: only use 5% intervals (10% for <500ms durations)!
						$('#cursorhand').css({'position':'absolute', 'top':topBase+'px', 'left': leftBase+'px', 'z-index':'999', 'width':'21px', 'height': '27px', 'background':'transparent url(img_style/cursor_hand.png) top left no-repeat'});
						
						menuIntro.reset();
						//menuIntro.addKey('5%', function(){ $('#cursorhand').animate( { top: topBase, left: leftBase }, 1000);  });
						menuIntro.addKey('5%', function(){ animateMenu('rheingau','fadeIn'); });
						menuIntro.addKey('20%', function(){ $('#cursorhand').animate( { top: topBase, left: (leftBase+300) }, 3500);  });
						
						menuIntro.addKey('30%', function(){ animateMenu('rheingau','fadeOut'); animateMenu('musik','fadeIn'); });
						menuIntro.addKey('40%', function(){ animateMenu('musik','fadeOut'); animateMenu('festival','fadeIn'); });
						menuIntro.addKey('45%', function(){ $('#cursorhand').animate( { top: topBase, left: (leftBase+200) }, 1000);  });
						menuIntro.addKey('60%', function(){ animateMenu('festival','fadeOut'); animateMenu('musik','fadeIn'); });
						menuIntro.addKey('65%', function(){ $('#cursorhand').animate( { top: (topBase+45), left: (leftBase+200) }, 1000); });
						menuIntro.addKey('75%', function(){ $('#submenu-musik ul li:first-child a').css('color','#000000'); });
						menuIntro.addKey('90%', function(){ $('#cursorhand').animate( { top: (topBase+45), left: (leftBase+50), opacity: 0 }, 500); $('#submenu-musik ul li:first-child a').removeAttr('style'); });
						menuIntro.addKey('95%', function(){ animateMenu('musik','fadeOut');   });
						menuIntro.addKey('100%', function(){ var active = page_m1; activateMenu(active); });
						
						$('#header').delay(2000).show('10', function(){
							$("#menu .menubtn").removeClass('activated');
							if(mybrowser=='msie') { $('#cursorhand').fadeIn(1000); } else { $('#cursorhand').show(); }
							menuIntro.play(10000); // duration set in milliseconds
						});
									
				}
				
				function resetMenuIntro(){
					/*
					$("#menu .menubtn").removeClass('activated');
  					$("#menu .submenu").removeAttr('style');
  					$('#submenu-musik ul li:first-child a').removeAttr('style');
  					$('#cursorhand').hide();
  					menuIntro.reset();
  					menuIntro.pause();
  					*/
				}
				
				function animateMenu(menu,status){
					/*
					if(status=='fadeOut'){
						$("#menu-"+menu).removeClass('activated');
						//$("#submenu-"+menu).stop(true, true).animate({ opacity: 0.0 }, 500);
						$("#submenu-"+menu).hide();
					}else{
						$("#menu-"+menu).addClass('activated');
						//$("#submenu-"+menu).css({'display': 'block', 'opacity': '0'});
						//$("#submenu-"+menu).stop(true, true).animate({opacity: 1.0 }, 500);
						$("#submenu-"+menu).show();
					}
					*/
					
				}
				
				
				
				
				
				//var menuIntro = jQuery.runloop();
				//explainMenu();
	 			if(menu_intro<2){ explainMenu(); }
	 			
	 			
				function getBrowserWidth() {
					if (window.innerWidth) return window.innerWidth;
					else if (document.documentElement && document.documentElement.clientWidth != 0) return document.documentElement.clientWidth;
					else if (document.body) return document.body.clientWidth;
					else return 0;
				}

				function getBrowserHeight() {
					if (window.innerHeight) return window.innerHeight;
					else if (document.documentElement && document.documentElement.clientHeight != 0) return document.documentElement.clientHeight;
					else if (document.body) return document.body.clientHeight;
					return 0;
				}
				
				function getBrowserScrollTop() {
					if (window.pageYOffset) return window.pageYOffset;
					else if (document.documentElement && document.documentElement.scrollTop != 0) return document.documentElement.scrollTop;
					else if (document.body) return document.body.scrollTop;
					return 0;
				}
				
				function mytrim(zeichenkette) {
					return zeichenkette.replace (/^\s+/, '').replace (/\s+$/, '');
				}
				
				
				function checkMyCookie(cookieName,cookieValue){
				
					var a = document.cookie+";";
					var res = false;
	
					while(a != ''){
  						var cname = a.substring(0,a.search('='));
  						var cwert = a.substring(a.search('=')+1,a.search(';'));
 						if(cwert == ''){
 							cwert = a.substring(a.search('=')+1,a.length);
 						}
 						//alert('cookieName: '+cookieName+' cname: '+cname + ' cookieValue: '+cookieValue+' cwert: '+cwert);
 						if( cookieValue != ''){
							if(mytrim(cookieName) == mytrim(cname) && mytrim(cookieValue) == mytrim(cwert) ){ res = true; }
						}else{
							if(mytrim(cookieName) == mytrim(cname)){ res = true; }
						}

						var i = a.search(';')+1;
						if(i == 0){ i = a.length; }
						a = a.substring(i,a.length);
					}
					return(res);
				}
				
				// Wurde der SESSION-COOKIE GESETZT?
				cookieEnabled = checkMyCookie('PHPSESSID','');
				
				
				
				
				
				
					var headTimeoutID;
					var selected=0;
					var vertical=false;
					var headimg = $('.jquery-item img');
					var loadimg;
					var dots = $(".jquery-nav a");
					var i = 0;
					var textblock = $('.jquery-textblock-text');
					var oldimg;
					var direction=1;
					var imgcontainer=$('#jquery-slider ul');
					if(vertical==false){
						imgcontainer.css('width',910*arr.length);
						$("li", imgcontainer).css('float','left');
					}
					function setText(){
						textblock.find('p').each(function() {
							$(this).html(arr[selected][textblock.find('p').index($(this))+1]);
						});	
					}
					function showItem(s){
						window.clearTimeout(headTimeoutID);
						if(vertical==false){
							//imgcontainer.css('marginLeft',-910*selected);
						}else{
							//imgcontainer.css('marginTop',-430*selected);
						}							
						selected=s;
						dots.each(function(i) {
							$(this).removeClass('isactivated');
							if(i==selected){
								$(this).addClass('isactivated');
							}
						});	
						
						$('.jquery-textblock').animate({opacity: 0},500,function() {
							setText();
							animation=0;
							var p;
							if(vertical==false){
								p = -selected*910;
								imgcontainer.animate({ marginLeft: p},1000,function() {
									//alert("COMPLETE");
								});
							}else{
								p = -selected*430;
								imgcontainer.animate({ marginTop: p},1000,function() {
								});
							}
							$('.jquery-textblock').animate({opacity: 1},1000,function() {
								 headTimeoutID = window.setTimeout(selectNextItem, 9000); 
							});	
							
						});									
					}
					function selectNextItem(){ 
						var s = selected+direction;
						if(s>=arr.length){
							s=0;
						}else if(s<0){
							s=arr.length-1;
						}
						showItem(s);
					}
					function selectItem(me){
									
							var s=dots.index($(me));						
							showItem(s);	
					}
					function preloadNext(){
					loadimg = $('.jquery-item img.loading:first');
					i = $('.jquery-item img').index(loadimg);
					if(isNaN(i)||i<0){
						showItem(selected);
					}else{
						$('.jquery-nav a:eq('+i+')').removeClass('hidden');
						var url = arr[i][0];
						
						loadimg.attr('src', url);
						loadimg.bind('load', function(){											
							loadimg.removeClass('loading')
							.css('marginLeft',(910-loadimg.width())/2)
							.addClass('ready')
							.unbind("load");
							preloadNext();
						});
						}
					}					
					preloadNext();
					dots.click(function (event) {	
						event.preventDefault();
						selectItem($(this));
						$(this).blur();
    				});
    				
    				
    				
    				
    				
    				
                    var headStageTimeoutID;
                    var selectedstage=0;
                    var ix=0;
                    var verticalStage=false;
                    var stageheadimg = $('.jquery-stageitem img');
                    var stageloadimg;
                    var stagedots = $(".jquery-stage-nav a");
                    var stagedirection=1;
                    var stageimgcontainer=$('#jquery-stage-slider ul');
                    if(verticalStage==false){
                        stageimgcontainer.css('width',910*arr.length);
                        $("li", stageimgcontainer).css('float','left');
                    }
                    function showStageItem(s){
                        window.clearTimeout(headStageTimeoutID);
                                            
                        selectedstage=s;
                        stagedots.each(function(i) {
                            $(this).removeClass('isactivated');
                            if(i==selectedstage){
                                $(this).addClass('isactivated');
                            }
                        });    
                        
                        var p;
                            
                            if(verticalStage==false){
                                p = -selectedstage*910;
                                stageimgcontainer.animate({ marginLeft: p},1000,function() {
                                     headStageTimeoutID = window.setTimeout(selectNextStageItem, 9000); 
                                });
                            }else{
                                p = -selectedstage*340;
                                stageimgcontainer.animate({ marginTop: p},1000,function() {
                                     headStageTimeoutID = window.setTimeout(selectNextStageItem, 9000); 
                                });
                            }
                        
                    }
                    function selectNextStageItem(){ 
                        var s = selectedstage+stagedirection;
                        if(s>=arr.length){
                            s=0;
                        }else if(s<0){
                            s=arr.length-1;
                        }
                        showStageItem(s);
                    }
                    function selectStageItem(me){
                                    
                            var s=stagedots.index($(me));
                            showStageItem(s);    
                    }
                    function preloadNextStageImage(){
                    stageloadimg = $('.jquery-stageitem img.loading:first');
                    ix = $('.jquery-stageitem img').index(stageloadimg);
                    if(isNaN(ix)||ix<0){
                        showStageItem(selectedstage);
                    }else{
                        $('.jquery-stage-nav a:eq('+ix+')').removeClass('hidden');
                        var url = arr[ix];
                        stageloadimg.attr('src', url);
                        stageloadimg.bind('load', function(){                                            
                            stageloadimg.removeClass('loading')
                            .css('marginLeft',(910-stageloadimg.width())/2)
                            .addClass('ready')
                            .unbind("load");
                            preloadNextStageImage();
                        });
                        }
                    }                    
                    preloadNextStageImage();
                    stagedots.click(function (event) {    
                        event.preventDefault();
                        selectStageItem($(this));
                        $(this).blur();
                    });
                
                
                
                
                
				
			});
