var redirect = function (url) {
	window.location = url; 
}

var Behaviors = Class.create();

Behaviors.prototype = {

	initialize : function () {
	
		Event.observe($('panel').getElementsByClassName('close').item(0), 'click', function (e) {
			$('panel').hide();
			
			cookie.set('panel_display', 'false');
			
			$('open-panel').show();
		}.bind(this));
		
		this.checkboxes();
		this.menuhovers();
		this.buttons();
		this.scrollbars();
		//this.synccontainer();
		this.backendcontainer();
		this.misc();
		
		this.createSelectbox($('selectboxCountry'));
	},
	
	createSelectbox : function (element) {
		return;
		var optionlist = '<ul>';
		
		// create the option list
		var i = 0;
		$A(element.getElementsByTagName('select').item(0).options).each(function(option) {
			if (option.selected) {
				
				element.getElementsByClassName('selectvalue').item(0).innerHTML = option.innerHTML;
			}
			
			optionlist += '<li id="'+i+'" class="selectItem">'+option.innerHTML+'</li>';
			i ++;
		});
		
		optionlist += '</ul>';
		
		element.getElementsByClassName('selectbox_items').item(0).innerHTML = optionlist;
		
		Event.observe(element.getElementsByClassName('selectbox').item(0), 'click', function (e) {
			Element.toggle(element.getElementsByClassName('selectbox_items').item(0));
		});
		
		$A(element.getElementsByTagName('li')).each(function(item) {
			Event.observe(item, 'click', function (e) {
				element.getElementsByTagName('select').item(0).selectedIndex = item.id;
				Element.toggle(element.getElementsByClassName('selectbox_items').item(0));
				element.getElementsByClassName('selectvalue').item(0).innerHTML = item.innerHTML;
			});
		});		
			
	},
	
	handleSelect : function () {
		
		
		
	},
	
	checkboxes : function () {
		
		$A($('panel').getElementsByClassName('checkbox')).each(function(checkbox) {
			Event.observe(checkbox, 'click', function (e) {
																		
				if (checkbox.descendants()[5].checked) {
					checkbox.descendants()[5].checked = false
					
					checkbox.descendants()[6].removeClassName('checkbox-image-checked-hover');
					checkbox.descendants()[6].addClassName('checkbox-image-unchecked-hover');
				} else {
					checkbox.descendants()[5].checked = true
					
					checkbox.descendants()[6].removeClassName('checkbox-image-unchecked-hover');
					checkbox.descendants()[6].addClassName('checkbox-image-checked-hover');
				}
				
			}.bind(this));
				
			if (checkbox.descendants()[5].checked) {
				checkbox.descendants()[6].removeClassName('checkbox-image-unchecked');
				checkbox.descendants()[6].addClassName('checkbox-image-checked');
			}
			
			Event.observe(checkbox, 'mouseover', function (e) {
				if (!checkbox.descendants()[6].hasClassName('ignore')) {
					if (checkbox.descendants()[5].checked) {
						checkbox.descendants()[6].removeClassName('checkbox-image-checked');
						checkbox.descendants()[6].addClassName('checkbox-image-checked-hover');
					} else {
						checkbox.descendants()[6].removeClassName('checkbox-image-unchecked');
						checkbox.descendants()[6].addClassName('checkbox-image-unchecked-hover');
					}
				}
			}.bind(this));
			
			Event.observe(checkbox, 'mouseout', function (e) {
				if (!checkbox.descendants()[6].hasClassName('ignore')) {
					if (checkbox.descendants()[5].checked) {
						checkbox.descendants()[6].removeClassName('checkbox-image-checked-hover');
						checkbox.descendants()[6].addClassName('checkbox-image-checked');
					} else {
						checkbox.descendants()[6].removeClassName('checkbox-image-unchecked-hover');
						checkbox.descendants()[6].addClassName('checkbox-image-unchecked');
					}
				}
			}.bind(this));

		});
		
	},
	
	menuhovers : function () {
		$A($('panel').getElementsByClassName('menu-item')).each(function(item) {
			
			Event.observe(item, 'mouseover', function (e) {
				item.descendants()[3].className = 'left-hover';
				item.descendants()[5].className = 'middle-hover';
				item.descendants()[13].className = 'right-hover';
			}.bind(this));
			
			Event.observe(item, 'mouseout', function (e) {
				item.descendants()[3].className = 'left';
				item.descendants()[5].className = 'middle';
				item.descendants()[13].className = 'right';
			}.bind(this));
			
		});
	},
	
	synccontainer : function () {
	
		var i = 0;

		$A($('sync-container').getElementsByTagName('tr')).each(function(item) {
			if (item.className != 'ignore') {
				i++;
			}
		});
		
		if (i > 6) {
			this.scrollbar = new Control.ScrollBar('sync-container','scrollbar_track');
			
			$A($('sync_scrollbar').getElementsByClassName('scroll-top')).each(function(scroltop) {
				Event.observe(scroltop, 'click', function (e) {
					this.scrollbar.scrollBy(-35);
					e.stop();
				}.bind(this));
			}.bind(this));
		
			$A($('sync_scrollbar').getElementsByClassName('scroll-bottom')).each(function(scrolbottom) {
				Event.observe(scrolbottom, 'click', function (e) {
					this.scrollbar.scrollBy(35);
					e.stop();
				}.bind(this));
			}.bind(this));
			
		} else {
			$('sync_scrollbar').setStyle({'display' : 'none'});
		}
				
		$A($('sync-container').getElementsByTagName('tr')).each(function(item) {
			if (item.className != 'ignore') {
				
				Event.observe(item, 'click', function (e) {
																			
					if (item.getElementsByClassName('synccheck').item(0).descendants()[1].checked) {
						item.getElementsByClassName('synccheck').item(0).descendants()[1].checked = false
						
						item.getElementsByClassName('synccheck').item(0).descendants()[2].removeClassName('checkbox-image-checked-hover');
						item.getElementsByClassName('synccheck').item(0).descendants()[2].addClassName('checkbox-image-unchecked-hover');
					} else {
						item.getElementsByClassName('synccheck').item(0).descendants()[1].checked = true
	
						item.getElementsByClassName('synccheck').item(0).descendants()[2].removeClassName('checkbox-image-unchecked-hover');
						item.getElementsByClassName('synccheck').item(0).descendants()[2].addClassName('checkbox-image-checked-hover');
						
					}
					
				}.bind(this));
				
				Event.observe(item, 'mouseover', function (e) {
					
					if (item.getElementsByClassName('synccheck').item(0).descendants()[1].checked) {
						item.getElementsByClassName('synccheck').item(0).descendants()[2].removeClassName('checkbox-image-checked');
						item.getElementsByClassName('synccheck').item(0).descendants()[2].addClassName('checkbox-image-checked-hover');
					} else {
						item.getElementsByClassName('synccheck').item(0).descendants()[2].removeClassName('checkbox-image-unchecked');
						item.getElementsByClassName('synccheck').item(0).descendants()[2].addClassName('checkbox-image-unchecked-hover');
					}
										
					item.setStyle({'background' : '#262d2e', 'cursor' : 'pointer'});
				}.bind(this));
				
				Event.observe(item, 'mouseout', function (e) {
				
					if (item.getElementsByClassName('synccheck').item(0).descendants()[1].checked) {
						item.getElementsByClassName('synccheck').item(0).descendants()[2].removeClassName('checkbox-image-checked-hover');
						item.getElementsByClassName('synccheck').item(0).descendants()[2].addClassName('checkbox-image-checked');
					} else {
						item.getElementsByClassName('synccheck').item(0).descendants()[2].removeClassName('checkbox-image-unchecked-hover');
						item.getElementsByClassName('synccheck').item(0).descendants()[2].addClassName('checkbox-image-unchecked');
					}
				
					item.setStyle({'background' : '#0e1311', 'cursor' : 'pointer'});
				}.bind(this));
								
				Event.observe(item.getElementsByClassName('info-icon').item(0), 'mouseover', function (e) {
					item.getElementsByClassName('info-icon').item(0).removeClassName('off');
					item.getElementsByClassName('info-icon').item(0).addClassName('on');
				}.bind(this));
				
				Event.observe(item.getElementsByClassName('info-icon').item(0), 'mouseout', function (e) {
					item.getElementsByClassName('info-icon').item(0).removeClassName('on');
					item.getElementsByClassName('info-icon').item(0).addClassName('off');
				}.bind(this));
									
			}
		});
	},
	
	backendcontainer : function () {
	
		var i = 0;

		$A($('backend-container').getElementsByTagName('tr')).each(function(item) {
			if (item.className != 'ignore') {
				i++;
			}
		});
		
		if (i > 6) {
			this.scrollbar = new Control.ScrollBar('sync-container','scrollbar_track');
			
			$A($('backend_scrollbar').getElementsByClassName('scroll-top')).each(function(scroltop) {
				Event.observe(scroltop, 'click', function (e) {
					this.scrollbar.scrollBy(-35);
					e.stop();
				}.bind(this));
			}.bind(this));
		
			$A($('backend_scrollbar').getElementsByClassName('scroll-bottom')).each(function(scrolbottom) {
				Event.observe(scrolbottom, 'click', function (e) {
					this.scrollbar.scrollBy(35);
					e.stop();
				}.bind(this));
			}.bind(this));
			
		} else {
			$('backend_scrollbar').setStyle({'display' : 'none'});
		}
				
		$A($('backend-container').getElementsByTagName('tr')).each(function(item) {
			if (item.className != 'ignore') {
				
/*
				Event.observe(item, 'click', function (e) {
																			
					if (item.getElementsByClassName('synccheck').item(0).descendants()[1].checked) {
						item.getElementsByClassName('synccheck').item(0).descendants()[1].checked = false
						
						item.getElementsByClassName('synccheck').item(0).descendants()[2].removeClassName('checkbox-image-checked-hover');
						item.getElementsByClassName('synccheck').item(0).descendants()[2].addClassName('checkbox-image-unchecked-hover');
					} else {
						item.getElementsByClassName('synccheck').item(0).descendants()[1].checked = true
	
						item.getElementsByClassName('synccheck').item(0).descendants()[2].removeClassName('checkbox-image-unchecked-hover');
						item.getElementsByClassName('synccheck').item(0).descendants()[2].addClassName('checkbox-image-checked-hover');
						
					}
					
				}.bind(this));
*/
				
				Event.observe(item, 'mouseover', function (e) {										
					item.setStyle({'background' : '#262d2e', 'cursor' : 'pointer'});
				}.bind(this));
				
				Event.observe(item, 'mouseout', function (e) {
					item.setStyle({'background' : '#0e1311', 'cursor' : 'pointer'});
				}.bind(this));
									
			}
		});
	},
	
	buttons : function () {
	
		$A($('panel').getElementsByClassName('panel-button')).each(function(button) {
		
			
		
			Event.observe(button, 'mouseover', function (e) {			
				button.descendants()[3].addClassName('l_hover');
				button.descendants()[5].addClassName('m_hover');
				button.descendants()[6].addClassName('r_hover');
			});
		
			Event.observe(button, 'mouseout', function (e) {
				button.descendants()[3].removeClassName('l_hover');
				button.descendants()[5].removeClassName('m_hover');
				button.descendants()[6].removeClassName('r_hover');
			});
			
		}.bind(this));
				
	},
	
	scrollbars : function () {
	
		$A($('panel').getElementsByClassName('scrollbar_handle')).each(function(scrollbar) {
			
			Event.observe(scrollbar, 'mouseover', function (e) {										
				scrollbar.addClassName('scrollbar_handle-hover');
			}.bind(this));
			
			Event.observe(scrollbar, 'mouseout', function (e) {										
				scrollbar.removeClassName('scrollbar_handle-hover');
			}.bind(this));
			
		}.bind(this));
		
		$A($('panel').getElementsByClassName('scroll-top')).each(function(scrolltop) {
			
			Event.observe(scrolltop, 'mouseover', function (e) {										
				scrolltop.addClassName('scroll-top-hover');
			}.bind(this));
			
			Event.observe(scrolltop, 'mouseout', function (e) {										
				scrolltop.removeClassName('scroll-top-hover');
			}.bind(this));
			
		}.bind(this));
		
		$A($('panel').getElementsByClassName('scroll-bottom')).each(function(scrollbottom) {
			
			Event.observe(scrollbottom, 'mouseover', function (e) {										
				scrollbottom.addClassName('scroll-bottom-hover');
			}.bind(this));
			
			Event.observe(scrollbottom, 'mouseout', function (e) {										
				scrollbottom.removeClassName('scroll-bottom-hover');
			}.bind(this));
			
		}.bind(this));
		
	},
	
	misc : function () {

		$A($('panel').getElementsByClassName('close')).each(function(close) {
			
			Event.observe(close, 'mouseover', function (e) {										
				close.addClassName('close-hover');
			}.bind(this));
			
			Event.observe(close, 'mouseout', function (e) {										
				close.removeClassName('close-hover');
			}.bind(this));
			
		}.bind(this));		

	}
	
}


