

;(function($){var o=$.scrollTo=function(a,b,c){o.window().scrollTo(a,b,c)};o.defaults={axis:'y',duration:1};o.window=function(){return $($.browser.safari?'body':'html')};$.fn.scrollTo=function(l,m,n){if(typeof m=='object'){n=m;m=0}n=$.extend({},o.defaults,n);m=m||n.speed||n.duration;n.queue=n.queue&&n.axis.length>1;if(n.queue)m/=2;n.offset=j(n.offset);n.over=j(n.over);return this.each(function(){var a=this,b=$(a),t=l,c,d={},w=b.is('html,body');switch(typeof t){case'number':case'string':if(/^([+-]=)?\d+(px)?$/.test(t)){t=j(t);break}t=$(t,this);case'object':if(t.is||t.style)c=(t=$(t)).offset()}$.each(n.axis.split(''),function(i,f){var P=f=='x'?'Left':'Top',p=P.toLowerCase(),k='scroll'+P,e=a[k],D=f=='x'?'Width':'Height';if(c){d[k]=c[p]+(w?0:e-b.offset()[p]);if(n.margin){d[k]-=parseInt(t.css('margin'+P))||0;d[k]-=parseInt(t.css('border'+P+'Width'))||0}d[k]+=n.offset[p]||0;if(n.over[p])d[k]+=t[D.toLowerCase()]()*n.over[p]}else d[k]=t[p];if(/^\d+$/.test(d[k]))d[k]=d[k]<=0?0:Math.min(d[k],h(D));if(!i&&n.queue){if(e!=d[k])g(n.onAfterFirst);delete d[k]}});g(n.onAfter);function g(a){b.animate(d,m,n.easing,a&&function(){a.call(this,l)})};function h(D){var b=w?$.browser.opera?document.body:document.documentElement:a;return b['scroll'+D]-b['client'+D]}})};function j(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);

;(function($){var a='serialScroll',b='.'+a,c='bind',u=$[a]=function(b){$.scrollTo.window()[a](b)};u.defaults={duration:1000,axis:'x',event:'click',start:0,step:1,lock:1,cycle:1};$.fn[a]=function(q){q=$.extend({},u.defaults,q);var r=q.event,s=q.step,t=q.duration/s;return this.each(function(){var h=$(this),j=q.lazy?q.items:$(q.items,h),k=q.start,l;if(q.force)n.call(this,{},k);$(q.prev||[])[c](r,-s,m);$(q.next||[])[c](r,s,m);h[c]('prev'+b,-s,m)[c]('next'+b,s,m)[c]('goto'+b,n)[c]('start'+b,function(e,i){if(!q.interval){q.interval=i||1000;p();o()}})[c]('stop'+b,function(){p();q.interval=0});if(!q.lazy&&q.jump)j[c](r,function(e){e.data=j.index(this);n(e,this)});function m(e){e.data+=k;n(e,this)};function n(e,a){if(typeof a=='number'){e.data=a;a=this}var b=e.data,c,d=e.type,f=$(j,h),g=f.length;if(d)e.preventDefault();b%=g;if(b<0)b+=g;c=f[b];if(q.interval){p();l=setTimeout(o,q.interval)}if(isNaN(b)||d&&k==b||q.lock&&h.is(':animated')||!q.cycle&&!f[e.data]||d&&q.onBefore&&q.onBefore.call(a,e,c,h,f,b)===!1)return;if(q.stop)h.queue('fx',[]).stop();q.duration=Math.abs(t*(k-b));h.scrollTo(c,q);k=b};function o(){h.trigger('next'+b)};function p(){clearTimeout(l)}})}})(jQuery);

(function($){var isMouseDown=false;var currentElement=null;var dropCallbacks={};var dragCallbacks={};var bubblings={};var lastMouseX;var lastMouseY;var lastElemTop;var lastElemLeft;var dragStatus={};var holdingHandler=false;$.getMousePosition=function(e){var posx=0;var posy=0;if(!e)var e=window.event;if(e.pageX||e.pageY){posx=e.pageX;posy=e.pageY;}
else if(e.clientX||e.clientY){posx=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft;posy=e.clientY+document.body.scrollTop+document.documentElement.scrollTop;}
return{'x':posx,'y':posy};};$.updatePosition=function(e){var pos=$.getMousePosition(e);var spanX=(pos.x-lastMouseX);var spanY=(pos.y-lastMouseY);$(currentElement).css("top",(lastElemTop+spanY));$(currentElement).css("left",(lastElemLeft+spanX));};$(document).mousemove(function(e){if(isMouseDown&&dragStatus[currentElement.id]!='false'){$.updatePosition(e);if(dragCallbacks[currentElement.id]!=undefined){dragCallbacks[currentElement.id](e,currentElement);}
return false;}});$(document).mouseup(function(e){if(isMouseDown&&dragStatus[currentElement.id]!='false'){isMouseDown=false;if(dropCallbacks[currentElement.id]!=undefined){dropCallbacks[currentElement.id](e,currentElement);}
return false;}});$.fn.ondrag=function(callback){return this.each(function(){dragCallbacks[this.id]=callback;});};$.fn.ondrop=function(callback){return this.each(function(){dropCallbacks[this.id]=callback;});};$.fn.dragOff=function(){return this.each(function(){dragStatus[this.id]='off';});};$.fn.dragOn=function(){return this.each(function(){dragStatus[this.id]='on';});};$.fn.setHandler=function(handlerId){return this.each(function(){var draggable=this;bubblings[this.id]=true;$(draggable).css("cursor","");dragStatus[draggable.id]="handler";$("#"+handlerId).css("cursor","move");$("#"+handlerId).mousedown(function(e){holdingHandler=true;$(draggable).trigger('mousedown',e);});$("#"+handlerId).mouseup(function(e){holdingHandler=false;});});}
$.fn.easydrag=function(allowBubbling){return this.each(function(){if(undefined==this.id||!this.id.length)this.id="easydrag"+(new Date().getTime());bubblings[this.id]=allowBubbling?true:false;dragStatus[this.id]="on";$(this).css("cursor","move");$(this).mousedown(function(e){if((dragStatus[this.id]=="off")||(dragStatus[this.id]=="handler"&&!holdingHandler))
return bubblings[this.id];$(this).css("position","absolute");$(this).css("z-index",parseInt(new Date().getTime()/1000));isMouseDown=true;currentElement=this;var pos=$.getMousePosition(e);lastMouseX=pos.x;lastMouseY=pos.y;lastElemTop=this.offsetTop;lastElemLeft=this.offsetLeft;$.updatePosition(e);return bubblings[this.id];});});};})(jQuery);

function initialize(){var latlng=new google.maps.LatLng(60.184233,24.96119);var myOptions={zoom:15,center:latlng,disableDefaultUI:true,streetViewControl:true,addressControl:false,mapTypeId:google.maps.MapTypeId.ROADMAP};var map=new google.maps.Map(document.getElementById("map_canvas"),myOptions);var marker=new google.maps.Marker({position:latlng,map:map,title:"Lintulahdenkatu 3"});var panorama=map.getStreetView();panorama.set('addressControl',false);}$(document).ready(function(){initialize();$("li.main").hover(function(){$('li.main a').addClass("hover");},function(){$('li.main a').removeClass("hover");});$("li.external").hover(function(){$('li.external a').addClass("hover");},function(){$('li.external a').removeClass("hover");});$("li.grey").hover(function(){$('li.grey a').addClass("hover");},function(){$('li.grey a').removeClass("hover");});$("#map_canvas").hover(function(){$(this).animate({height:"200px"},{queue:false,duration:1000})},function(){$(this).animate({height:"96px"},{queue:false,duration:1000})});$(".box").easydrag(true);$("#feed").setHandler('feed-heading');$("#contact").setHandler('contact-heading');$("#kuubilaiset").setHandler('kuubilaiset-heading');$('#status').css('background-image','url("./images/loader.gif")');$.getJSON('fb-graph-api.php',function(datas){$.each(datas.data,function(i,id){$('#status').css('background-image','none');type=datas.data[i].type;if(type=="photo"){if(datas.data[i].message!=undefined)$('#status').append('<li><span class="orange">Kuubi</span> <a href="'+datas.data[i].link+'" target="_blank">'+datas.data[i].message+'</a></li>');}
else if(type!="status"){if(datas.data[i].name!=undefined)$('#status').append('<li><span class="orange">Kuubi</span> <a href="'+datas.data[i].link+'" target="_blank">'+datas.data[i].name+'</a></li>');}else{if(datas.data[i].message!=undefined)$('#status').append('<li><span class="orange">Kuubi</span> '+datas.data[i].message+'</li>');}
if(i==15)return false;});});$('#status').serialScroll({items:'li',duration:1000,force:true,axis:'y',easing:'linear',lazy:true,interval:5000,step:1});});