window.addEvent('domready', function(){
	url = document.location + '';
	var wraper = $$('div.wraper');
	var menu = $$('ul.menu');
	var links = $$('ul.menu li a');
	var container = $$('div#content')[0];
	var contents = $$('ul.content li');
	var images = $$('ul.content li div.image').fade('hide');
	
	var scroller = new Fx.Scroll(container, {
		duration: 700,
		transition: 'quad:out',
		link: 'chain' //lol :d
	});
	
	scroller.addEvent('complete', function(){
		ci = menu.getElement('li.active').getElement('a').get('class')[0]; //current item
		$$('ul.content li.' + ci).getElement('div.image').fade('in');
	});
	
	links.each(function(el){
		el.addEvent('click', function(){
			var li = el.getParent('li');
			var content = $$('ul.content li.' + el.get('class'));
			var old_link = menu.getElement('li.active');
			
			//avoid reloading current content
			if(li.hasClass('active')){
				return false;
			}
			
			//if there is any?!
			if(old_link[0] != null){
				//inactive previous link
				old_link.removeClass('active');
				images.fade('hide');
			}
			
			//set active link
			li.addClass('active');
			
			//set anchor
			set_anchor('page/' + content.get('class'));
			
			//show content
			scroller.toElement(content[0]);
			
			return false;
		});
	});
	
	//services accordin
	var titles = $$('ul.content li.services div.text > h3');
	var texts = $$('ul.content li.services div.text  > p');
	var srv_accrdn = new Fx.Accordion(titles, texts, {
		onActive: function(toggler, element){
			element.addClass('active');
		},
		onBackground:function(toggler, element){
			element.removeClass('active');
		}
	});
	
	//contact form
	var form = $$('form.contact');
	form.addEvent('submit', function(submit){
		submit.stop();
		var myform = this;
		
		//some validations please?!
		var reqs = myform.getElements('.required');
		reqs.removeClass('empty');
		var valid = true;
		reqs.each(function(el,i){
			if(el.get('value') == ''){
				el.addClass('empty');
				valid = false;
			}
		});
		
		var req = new Request({
			url: myform.get('action'),
			data: myform,
			onSuccess: function(response){
				show_msg(response);
			}
		})
		
		if(valid){
			req.send();
		} else {
			show_msg('Please fill marked fields.');
		}

	});
	
	//startup
	if(get_anchor()){
		var page = get_anchor().split('/').getLast();
	} else {
		//var page = $$('div.content > div')[0].get('id');
		var page = 'about';
	}
	
	//set active link
	$$('a.' + page).fireEvent('click', '', 300);
	
	//xhtml validation infintoolation :)
	$$('a.url').set('target', '_new');
	
});

//url manipulation (anchor)
function get_anchor(){
    anchor = url.split('#')[1];
    
    if (typeof(anchor) != 'undifined'){
        return anchor;
    } else {
        return false;
    }
}
function set_anchor(str){
    url = url.split('#');
    url = url[0] + '#' + str;
    
    document.location = url;
}

function show_msg(msg){
    var parent = $$('p.response').erase('text');
    parent.set('html', msg).fade('hide').fade('in');
}

