/*
	javascript code for this project
*/

var cssNavi = Class.create();
cssNavi.prototype = {
	initialize: function(id) {
		this.naviId = id;
		this.duration = 0.3;
	},
	show: function(obj, level, effect) {
		var date = new Date();
		this.key = Math.random() + '_' + date.getMilliseconds();
		var uls = $(obj.parentNode).select('ul.level' + level);
		var object = this;
		uls.each(function(tobj) {
			while(true)
			{
				if(tobj.tagName == 'UL')
				{
					tobj.key = object.key;
					if(effect)
					{
						object.blindToggle(tobj,true);
					}
					else
					{
						object.toggle(tobj,true);
					}
					$(tobj.parentNode).childElements().each(function(el) {
						if(el.tagName == 'A')
						{
							el.addClassName('marked');
						}
					});
					
				}
				tobj = $(tobj.parentNode);
				if(tobj.hasClassName('navitop'))
				{
					break;
				}
			}
		});
	},
	hide: function(effect) {
		var current = $(this.naviId).select('ul');
		var object = this;
		if(current && current.length)
		{
			current.each(function (el) {
				if(el.key == object.key)
				{
					el.key = '';
					return;
				}
				if(effect)
				{
					object.blindToggle(el,false);
				}
				else
				{
					object.toggle(el,false);
				}
				$(el.parentNode).childElements().each(function(el) {
					if(el.tagName == 'A')
					{
						el.removeClassName('marked');
					}
				});
			});
		}
	},
	blindToggle: function(el,show) {
		if(show)
		{
			if(el.style.display == 'none')
			{
				Effect.BlindDown(el, {duration: this.duration});
			}
		}
		else
		{
			Effect.BlindUp(el, {duration: this.duration});
		}
	},
	toggle: function(el, show) {
		if(show)
		{
			el.style.display = '';
		}
		else
		{
			el.style.display = 'none';
		}
	}
};

function toggleSideNavi(obj, level, effect)
{
	var navi = new cssNavi('sideNavigation');
	navi.show(obj, level, effect);
	navi.hide(effect);
}

function sendTellafriend(form)
{
	form = $(form);
	var params = form.serialize();
	new Ajax.Request(form.action, {
		method:'post',
		postBody:params,
		onSuccess:function(t) {
			$('dialog_body').innerHTML = t.responseText;
		}
	});
	return false;
}


	function fillYear (id, startfrom)
	{
		select = document.getElementById(id);
		
		currentDate = new Date();
		currentYear = currentDate.getFullYear();
		
		if (select && currentYear)
		{
			for(i = startfrom; i <= currentYear; i++)
			{
				txt = val = i;
				var opt = new Option( txt, val, false, true);
				select.options[select.options.length]=opt;
			}
		}
	}
	
	function generatePdf(project_id)
	{
		window.open(absCorrect + "de/download.html?objects.id="+project_id+"&objects.clientname="+encodeURIComponent(getPersonalInfo()),"","");
	}
	
	function getPersonalInfo()
	{
		var name
		if($('fullname'))
		{
			name = $('fullname').value.replace(/^\s+|\s+$/g, '');
			//added to cookie for paging
			if (name.length)
			{
				createCookie('clientName',name,1);
			}
		}
		else
		{
			name = readCookie('clientName');
		}
		
		return name;
	}
		
	function generateMultiPdf(idList)
	{
		var idArr = [];
		
		var id;
		if(idList) {
			id = idList;
		}else {
			$('projectsGroup').getElementsBySelector('[name="checkbox"]').each(function(el) {
				if(el.checked == true)
				{
					idArr.push(el.value);
				}
			});
			id = idArr.join(',');

			createCookie('multiID',id,1);
		}
		
		//fb.start( { href: absCorrect + 'de/download.html', rev: 'color=#807253&shadowType=halo&width=720&height=500&roundCorners=none&outerBorder=0&innerBorder=0&controlPos=tr&infoPos=tr&enableDragMove=false&disableScroll=true&scrolling=no&enableDragResize=false&language=de'} );
		fb.start( { href: absCorrect + 'de/download.html', rev: 'width=712&height=463&panelPadding=0&padding=0&showClose=false&navType=none&roundCorners=none&outerBorder=0&innerBorder=0&controlPos=tr&infoPos=tr&enableDragMove=false&disableScroll=true&scrolling=no&enableDragResize=false&language=de'} );
		
		if (id != '')
		{
			new Ajax.Request('generatepdf.html',
				{
					method: 'post',
					asynchronous: true,
					postBody: "objects.id=" + id + "&objects.clientname=" + encodeURIComponent(getPersonalInfo()),
					onSuccess: function(transport){
						var response = eval(transport.responseText);
						if(response)
						{
							window.location= absCorrect + 'de/getpdf.html?f='+response;
						}
						fb.end();
					},
					
					onFailure: function(){
						$("loading").style.display = "none";
						$("error").style.display = "block";
						$('ajax-loader').hide();
						fb.end();
					}
				}
			);
			//window.open(absCorrect + "de/download.html?objects.id="+id+"&objects.clientname="+encodeURIComponent(getPersonalInfo()),"","");
		}
		return false;
	}
	
	function cleanSelected()
	{
		$('projectsGroup').getElementsBySelector('[name="checkbox"]').each(function(el) {
			el.checked = false;
		});
		createCookie('multiID',"",1);
	}

	
	function readCookie(name)
    {
        var nameEQ = name + "=";
        var ca = document.cookie.split(";");
        var freturn = '';
        ca.each(function(c)
        {
            while (c.charAt(0)==" ")
            {
            	c = c.substring(1,c.length);
            }
            if (c.indexOf(nameEQ) == 0)
            {
            	freturn = c.substring(nameEQ.length,c.length);
            }
        });
        return freturn;
    }

	 
	function createCookie(name,value,days)
    {
        if (days)
        {
            var date = new Date();
            date.setTime(date.getTime()+(days*24*60*60*1000));
            var expires = "; expires="+date.toGMTString();
        }
        else var expires = "";
        document.cookie = name+"="+value+expires+"; path=/";
    }
	
    function initialization()
	{
		var tempVal = readCookie('multiID');
		if(tempVal)
		{
			var idArr = tempVal.split(',');
			$('projectsGroup').getElementsBySelector('[name="checkbox"]').each(function(el) {
				if($(idArr).indexOf(el.value) != -1)
				{
					el.checked = true;
				}
			});
		}
		
		$('fullname').value = readCookie('clientName');
	}