document.observe("dom:loaded", function() { 	
	Prototype.Browser.IE6 = Prototype.Browser.IE && parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5)) == 6;
	
	var version = parseFloat(navigator.appVersion.split('MSIE')[1]);		
	
	if ((version >= 5.5) && (version < 7) && (document.body.filters)) {document.getElementsByClassName('ie-fix-opacity').each(function(poElement){				
		var cBGImg = poElement.currentStyle.backgroundImage;				
		var cImage = cBGImg.substring(cBGImg.indexOf('"') + 1, cBGImg.lastIndexOf('"')); 				
		poElement.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + cImage + "', sizingMethod='scale')";							 	
		poElement.style.backgroundImage = "none";});
		
		if ($('collection-header-advertise')) {
			$('collection-header-advertise').observe('click', go_next_url);
		}
	}	
	
	//Facebook login-logout
    /*
    if($('fb-overlay')) {
		$('fb-overlay').observe('click', facebook_login);
	}
	*/
	
    if($('fconnect-login')) {
    	$('fconnect-login').observe('click', facebook_login);
    }
	
	// This happens after a uses press like
	/*
	if($$('connect_widget_like_button')){
		FB.Event.subscribe('edge.create', function(response) {
			// Do stuff		
		});
	}
	*/
	
	if($$('a.pop-up-link')) {
		$$('a.pop-up-link').invoke('observe', 'click', pop_up);
	}
	


	/* FLASH CONTENT 
	if ($('startpage-topcontent-top')) {
	 	swfobject.registerObject("startpage-topcontent-top-flash", "9.0.0");
	}
	*/
	
	if ($$('a.startpage-news-readmorelink')) {
		$$('.startpage-news-content').each(function (i){i.hide()});
		$$('a.startpage-news-readmorelink').invoke('observe', 'click', startpageNews_expand);
		
	}
	
	if ($('change-lang-form')) {
		$$('a.change-lang-link').invoke('observe', 'click', change_lang);
	}
	
	
	$$('div.headerpopup').each( function (i){i.hide();i.style.top="100%";});
	
 	if($('collection-header')) {
        $$('a.headerpopup-link').invoke('observe', 'click', collection_header_popup);
    }
       
    if($('collection-deals')) {
    	
    	var popUps = $$('div.collection-header-popup');
 
    	popUps.invoke('toggle');
        $$('a.a_view_promo_link','div.promotion').invoke('observe', 'click', load_promotion_collection);
        //open_first_promo();
        
    }
    
    if($$('a.collection-store-link')) {
    	$$('a.collection-store-link').invoke('observe', 'click', url_collection);
    }
    
    if($('blackout')) {

    	$$('a.close-popup').invoke('observe','click', close_popup);
    	$$('a.popup-link').invoke('observe','click', open_popup);
    	
    	$('blackout').hide();
    	$$('div.popup').each( function (i){i.hide();});
    }
});


function facebook_login(event) {
	Event.stop(event);
	var url = this;
	
	FB.login(function(response) {
	if (response.session) {
		var token = response.session.access_token;

		// Add token as a parameter to the url
		url = url + '&access_token='+token;
	
		new Ajax.Request(url, {
		  method: 'get',
		  onSuccess: function(transport) {
			window.location.reload();
		  },
		  onFailure: function(transport) {
			  FB.logout();
		  }
		});

	} else {
		// user cancelled login
	}});

}

function go_next_url(event) {
	Event.stop(event);
	var uri = Event.element(event).down('a').href;
	window.location = uri;
}

function pop_up_close (event) {
	$('pop-up-help').remove();
	$('blackout').fade();
	$('dimmer').remove();
}


function pop_up(event) {
	Event.stop(event);
	url=this;
	
	black = $('blackout');
	
	var dimmer = new Element('div', { 'id': 'dimmer'});
	dimmer.setStyle({
				backgroundColor: '#000',
				width:'100%',
				height:'100%',
				'position':'fixed',
					'left':'0px',
					'top':'0px',
					'z-index':'100',
				
				'visibility': 'hidden',
				
				'opacity': '0.0',
				'-moz-opacity':'0.0',
				'filter': 'alpha(opacity=0)'	
			});
			
			
			
	new Ajax.Request(url, {
		method: 'get',		
		onSuccess: function(transport) {
			
			// blackout
			black.appear().setStyle({'left': '0px'}).insert(dimmer);
			
			dimmer.setStyle({visibility: 'visible'});
			dimmer.appear({ 
					from: 0.0, 
      				to: 0.5,
      				duration: 1.0
   					});
   					
   			//update div with responsetext
			black.insert(transport.responseText);
			$('pop-up-help-close').observe('click', pop_up_close);
			$('dimmer').observe('click', pop_up_close);
			
		}
	});
	
}

function startpageNews_expand(event) {
	Event.stop(event);
	var el = Event.element(event);
	var txt = el.innerHTML;
	el.previous(0).toggle();
	el.update(el.rel);
	el.rel = txt;
}

function change_lang(event) {
	Event.stop(event);
	var el = Event.element(event);
	$(el.rev).value = el.rel;
	$(el.rev).up('form').submit();
}

function open_popup(event) {
	Event.stop(event);
	var el = Event.element(event);
	
	$(el.rel).up('div').appear().setStyle({
  		'left': '0px'
	});
	
	if(Prototype.Browser.IE6){
		$(el.rel).appear().setStyle({
  		'left': '0px'
		});
	} else {
		$(el.rel).appear().setStyle({
  		'left': '0px'
		});
	};
}

function close_popup(event) {
	Event.stop(event);	
	var el = Event.element(event);
	$(el.rel).up('div').hide().setStyle({
  		'left': '-100%'
	});
	
	$(el.rel).hide().setStyle({
  		'left': '-100%'
	});
}

// Toggles a promotion as a favorite.
function toggle_favorite(event) {
    Event.stop(event);
        
    var element = Event.element(event);
    var url = Event.element(event).href;
   
    new Ajax.Request(url, {
      method: 'get',
      onSuccess: function(transport) {
          
          if($(element).hasClassName('unmarked')) {
              
              $(element).removeClassName('unmarked').addClassName('marked');
              var title=gettext('Remove as favorite');
              if($(element.rel)) {
		          	$(element.rel).title = title;
		          	$(element.rel).removeClassName('unmarked').addClassName('marked');
              	}
              	
			  $(element).title = title;
            
          }
          
           else {
          
              if(location.pathname == '/service/favorites/') {
                  $(element.id).up('div').remove();
              }
              
              var title=gettext('Add as favorite');
              
              $(element).removeClassName('marked').addClassName('unmarked');              
              if($(element.rel)) {
		          $(element.rel).title = title;            
		          $(element.rel).removeClassName('marked').addClassName('unmarked');
			  }
			  $(element).title = title;  
		           
          }
      }
    });
}

function open_first_promo() {
	
	var rel = $$('div.promotion').first().down(0).rel;
	var url = $$('div.promotion').first().down(0).href;
	var port = $('viewport_content_'+rel);
	
	port.addClassName('viewport-active');
	
	new Ajax.Request(url, {
		method: 'get',
		onSuccess: function(transport) {
			port.down('div').update(transport.responseText);
		},
		onComplete: function() {
		  	//new Effect.SlideDown(port);
		  	port.show();
		  	port.down('a.map-link').observe('click', change_promo_viewport);
		  	port.down('a.info-link').observe('click', change_promo_viewport);
		  	$$('div#rating_' + rel + ' a').invoke('observe', 'click', rate_promotion);
        	$$('a.mark-promotion-link').invoke('observe', 'click', toggle_favorite);
		}
	});	 
	// activate the button
	port.previous('div').down('a.a_view_promo_link').removeClassName('a_view_promo_deactive_white').addClassName('a_view_promo_active_white'); 
}


function rate_promotion(event) {
	Event.stop(event);
	var rel = Event.element(event).rel;	
	var url = Event.element(event).href;
	var port = $('rating_a_tag_'+rel);

	new Ajax.Request(url, {
		method:'get',
	  	onSuccess: function(transport){
	    	port.replace(transport.responseText);
	    }
	});
}

function change_promo_viewport(event) {
	Event.stop(event);
	
	var rel = Event.element(event).rel;	
	var url = Event.element(event).href;
	var port = $('viewport_content_'+rel);

	new Ajax.Request(url, {
		method:'get',
	  	onSuccess: function(transport){
	    	port.down('div').update(transport.responseText);
	    },
	    
		onComplete: function(transport){
			port.down('a.map-link').observe('click', change_promo_viewport);
		  	port.down('a.info-link').observe('click', change_promo_viewport);
		  	$$('div#rating_' + rel + ' a').invoke('observe', 'click', rate_promotion);
        	$$('a.mark-promotion-link').invoke('observe', 'click', toggle_favorite)
	    }
	});
	
}

function url_collection(event) {
	Event.stop(event);
	window.location = Event.element(event).href;
}

function collection_header_popup(event) {
    Event.stop(event);
    var el = $(this.rel);
    var nel = $$('div.' + el.classNames()).without(el);
    el.show();
    nel.invoke('hide');
	
	if (this.up(0).hasClassName('collection-header-button-wrap-popup-button-active')) {
		this.up(0).removeClassName('collection-header-button-wrap-popup-button-active');
		el.hide();
	} else {
		$$('span.collection-header-button-wrap-popup-button-active').invoke('removeClassName', 'collection-header-button-wrap-popup-button-active');
    	this.up(0).toggleClassName('collection-header-button-wrap-popup-button-active');
    }
}

function load_promotion_collection(event) {
    Event.stop(event);
    
    var port;
    var aports = $$('div.viewport-active');
    var rel;
    var url;
    var color;
		 
    if (this.hasClassName('promotion')) {
    	rel = this.down(0).rel;
    	url = this.down(0).href;
    	port = $('viewport_content_'+rel);
    	
    } else {
		var rel = this.rel;
		var url = this.href;
		port = $('viewport_content_'+rel);
	}
    
    // Swaps the buttons
	 var color;
	 if(port.previous(0).hasClassName('row-color1')) {
	 	color = 'white';
	 } else {
	 	color = 'blue';
	 }
	 
    //port.style.height = "250px";
	if(port.hasClassName('viewport-active')) {
		port.hide().removeClassName('viewport-active').addClassName('viewport-deactive');
		port.previous('div').down('a.a_view_promo_link').addClassName('a_view_promo_deactive_'+color).removeClassName('a_view_promo_active_'+color);
		
	} else {
	
		/* 
		 aports.each(function(i) {
		 	//new Effect.SlideUp(i,{ duration: 0.5 });
		 	port.hide();
		 	i.removeClassName('viewport-active');
		 });		 
		*/
		
		 port.addClassName('viewport-active');
 
		 // resets all buttons
		 $$('a.a_view_promo_link').each(function (i)  {
		 	if(i.up('div').hasClassName('row-color1')) i.removeClassName('a_view_promo_active_white').addClassName('a_view_promo_deactive_white');
		 	if(i.up('div').hasClassName('row-color2')) i.removeClassName('a_view_promo_active_blue').addClassName('a_view_promo_deactive_blue');
		 });
		 
		 // activate the button
		 port.previous('div').down('a.a_view_promo_link').removeClassName('a_view_promo_deactive_'+color).addClassName('a_view_promo_active_'+color);
		 
		new Ajax.Request(url, {
		  method: 'get',
		  onSuccess: function(transport) {
			  port.down('div').update(transport.responseText);
			  //assign_click_promotion_options();
			},
		  onComplete: function() {
		  	//new Effect.SlideDown(port);
			port.show();
			
		  	port.down('a.map-link').observe('click', change_promo_viewport);
		  	port.down('a.info-link').observe('click', change_promo_viewport);
		  	$$('div#rating_' + rel + ' a').invoke('observe', 'click', rate_promotion);
        	$$('a.mark-promotion-link').invoke('observe', 'click', toggle_favorite)
		  	}
		});
		
	}
}
