
	var objs= new Object();
	var objNames= 'viewport,moveable,static,mainbg,navbar,content,home,news,music,gallery,video,interaktiv,bio,contact,navprev,navnext';
	objNames+= ',sizeable1,sizeable2,newscontent,scroll1,content1,scr_track_1';
	objNames+= ',arrow_top1,arrow_btm1,track1,slider1';
	objNames+= ',musiccontent,sizeable3';
	objNames+= ',sizeable7,biocontent,scroll2,content2,scr_track_2,arrow_top2,arrow_btm2,track2,slider2';
	objNames+= ',contact_content,sizeable_contact,sizeableinteraktiv,interaktiv,iacontent';
	objNames+= ',sizeable_gallery,gallery_content,sizeable_video,video_content,home_content';
	objNames+= ',menu,discography,discdetails,tracktext,viewgallery,galleries,listing,videofile,videos,zoom_bar,transparent_prev,transparent_next,zoom_window,zoom_hint,hint';
    objNames+= ',prev,next,videos,videoScroll,scrollUp,scrollDown,videosList,trace';
    objNames+= ',MusvideoScroll,MusscrollUp,MusscrollDown,MusList'; 
	objNames+= ',development';
	// menu items
	for(var i=1; i<=7; i++) objNames+= ',menuitem'+i;
	
	var winDim= new Array();
	var winMinW= 780;
	var winMinH= 580;
	
	var parts= 'home,news,music,gallery,video,interaktiv,bio,contact';
	var thispart= 0;
	
	var interval,interval2;
	var timeout= 5;
	var step=50;
	
	var koef= 1;
	
	var prevInner= '', nextInner= '';
	
	var navArrow= new Object();
	navArrow._width= 21; 
    navArrow._height= 32;
    navArrow._offset= 3;
	
	objNames= objNames.split(',');
	parts= parts.split(',');
	
	var sliders= new Object();
	
	var chapters= new Array();

	var is_IE= false;

	function checkIE() {
		is_IE= navigator.appName=='Microsoft Internet Explorer';
	}
	
	function trace(text2trace) {
	   objs.trace.value+= text2trace + '\n';
	   objs.trace.scrollTop= objs.trace.scrollHeight;
    }
    
    function startScrollVideo(scrollPos, point1, point2, startPoint) { 
        var direct= scrollPos>objs.videosList.scrollTop ? 1 : -1;
        
        var topLimit= scrollPos + videoScrollStep;
        var bottomLimit= scrollPos - videoScrollStep;
        //alert(videoScrollStep);

        var nextScrollTop= objs.videosList.scrollTop + direct*videoScrollStep;
        
        //trace('speed= ' + videoScrollStep);
        //trace('top= ' + objs.videosList.scrollTop);
        
        //trace(nextScrollTop.inInterval(0,100) ? 'IN ---------' : 'NOT ---------');

        var endReached= nextScrollTop>=videoScrollBtmLimit;
        var beginReached= nextScrollTop<=0;

        if (endReached) {
            objs.videosList.scrollTop= videoScrollBtmLimit;
            scrollShow('scrollDown',false);
            scrollShow('scrollUp',true);
        }

        if (beginReached) {
            objs.videosList.scrollTop= 0;
            scrollShow('scrollUp',false);
            scrollShow('scrollDown',true);
        }
        
        // changing speed
        
        if (nextScrollTop.inInterval(startPoint,point1)) {
            videoScrollStep+= speedIncreaseKoef*videoScrollStep;
            //alert(videoScrollStep);
        }
        if (nextScrollTop.inInterval(point2, scrollPos)) {
            //if (speedIncreaseKoef*videoScrollStep>=videoScrollStepDef) 
                videoScrollStep-= speedDecreaseKoef*videoScrollStep;
                if (videoScrollStep<videoScrollStepDef) videoScrollStep= videoScrollStepDef;
            //else 
                //videoScrollStep= videoScrollStepDef;
        }
        

        if (endReached || beginReached) {
            clearInterval(videoInterval); 
            scrollEnable(true);
            videoScrollStep= videoScrollStepDef;
            return;
        } 
        if ( objs.videosList.scrollTop>=bottomLimit && objs.videosList.scrollTop<=topLimit ) {
            clearInterval(videoInterval);
            objs.videosList.scrollTop= scrollPos; 
            scrollEnable(true);
            videoScrollStep= videoScrollStepDef;
            scrollShow('scrollUp',true);
            scrollShow('scrollDown',true); 
            return;
        }
        else {
            objs.videosList.scrollTop= nextScrollTop; 
            return;
        }
    }
    /*
    Number.prototype.inInterval= function (intLimit1,intLimit2) {
        var startInterval= intLimit1<=intLimit2 ? intLimit1 : intLimit2;
        var endInterval= intLimit1<=intLimit2 ? intLimit2 : intLimit1;
        return (this>=startInterval && this<=endInterval);
    }*/

    function scrollEnable(status) {
        objs.scrollUp.onclick= status ? scrollClickUp : null;
        objs.scrollDown.onclick= status ? scrollClickDown : null;
    }
    
    function scrollShow(name,status) {
        objs[name].style.visibility= status ? 'visible' : 'hidden';
    }
    
    function scrollClickUp () {
        var newScrollPos= objs.videosList.scrollTop - videoRowHeight;
        var distance= Math.abs(newScrollPos - objs.videosList.scrollTop)/distanceIntNum;
        var startIncreaseSpeed= objs.videosList.scrollTop - distance;
        var endIncreaseSpeed= newScrollPos + 1.5*distance;
        
        //trace(objs.videosList.scrollTop + ' -> ' + startIncreaseSpeed + ' -> ' + endIncreaseSpeed + ' -> ' + newScrollPos);
        
        videoInterval= setInterval('startScrollVideo(' + newScrollPos + ',' + startIncreaseSpeed + ',' + endIncreaseSpeed + ', ' + objs.videosList.scrollTop + ')', videoScrollTimeout);
        scrollEnable(false);
    }

    function scrollClickDown () {
        var newScrollPos= objs.videosList.scrollTop + videoRowHeight;
        var distance= (newScrollPos - objs.videosList.scrollTop)/distanceIntNum;
        var startIncreaseSpeed= objs.videosList.scrollTop + distance;
        var endIncreaseSpeed= newScrollPos - 1.5*distance;
        
        //trace(objs.videosList.scrollTop + ' -> ' + startIncreaseSpeed + ' -> ' + endIncreaseSpeed + ' -> ' + newScrollPos);        

        videoInterval= setInterval('startScrollVideo(' + newScrollPos + ',' + startIncreaseSpeed + ',' + endIncreaseSpeed + ', ' + objs.videosList.scrollTop + ')', videoScrollTimeout);
        scrollEnable(false);
    }
    
    
    // MusScroll
        function startScrollMus(scrollPos, point1, point2, startPoint) { 
        var direct= scrollPos>objs.MusList.scrollTop ? 1 : -1;
        
        var topLimit= scrollPos + MusScrollStep;
        var bottomLimit= scrollPos - MusScrollStep;

        var nextScrollTop= objs.MusList.scrollTop + direct*MusScrollStep;
        


        var endReached= nextScrollTop>=MusScrollBtmLimit;
        var beginReached= nextScrollTop<=0;

        if (endReached) {
            objs.MusList.scrollTop= MusScrollBtmLimit;
            scrollShow('MusscrollDown',false);
            scrollShow('MusscrollUp',true);
        }

        if (beginReached) {
            objs.MusList.scrollTop= 0;
            scrollShow('MusscrollUp',false);
            scrollShow('MusscrollDown',true);
        }
        
        // changing speed
        
        if (nextScrollTop.inInterval(startPoint,point1)) {
            MusScrollStep+= speedIncreaseKoef*MusScrollStep;
        }
        if (nextScrollTop.inInterval(point2, scrollPos)) {
            //if (speedIncreaseKoef*videoScrollStep>=videoScrollStepDef) 
                MusScrollStep-= speedDecreaseKoef*MusScrollStep;
                if (MusScrollStep<MusScrollStepDef) MusScrollStep= MusScrollStepDef;
            //else 
                //videoScrollStep= videoScrollStepDef;
        }        

        if (endReached || beginReached) {
            clearInterval(MusInterval); 
            MusscrollEnable(true);
            MusScrollStep= MusScrollStepDef;
            return;
        } 
        if ( objs.MusList.scrollTop>=bottomLimit && objs.MusList.scrollTop<=topLimit ) {
            clearInterval(MusInterval);
            objs.MusList.scrollTop= scrollPos; 
            MusscrollEnable(true);
            MusScrollStep= MusScrollStepDef;
            scrollShow('MusscrollUp',true);
            scrollShow('MusscrollDown',true); 
            return;
        }
        else {
            objs.MusList.scrollTop= nextScrollTop; 
            return;
        }
    }
    
    Number.prototype.inInterval= function (intLimit1,intLimit2) {
        var startInterval= intLimit1<=intLimit2 ? intLimit1 : intLimit2;
        var endInterval= intLimit1<=intLimit2 ? intLimit2 : intLimit1;
        return (this>=startInterval && this<=endInterval);
    }

    function MusscrollEnable(status) {
        objs.MusscrollUp.onclick= status ? MusscrollClickUp : null;
        objs.MusscrollDown.onclick= status ? MusscrollClickDown : null;
    }
    
    function scrollShow(name,status) {
        objs[name].style.visibility= status ? 'visible' : 'hidden';
    }
    
    function MusscrollClickUp () {
        var newScrollPos= objs.MusList.scrollTop - MusRowHeight;
        var distance= Math.abs(newScrollPos - objs.MusList.scrollTop)/distanceIntNum;
        var startIncreaseSpeed= objs.MusList.scrollTop - distance;
        var endIncreaseSpeed= newScrollPos + 1.5*distance;
        
        MusInterval= setInterval('startScrollMus(' + newScrollPos + ',' + startIncreaseSpeed + ',' + endIncreaseSpeed + ', ' + objs.MusList.scrollTop + ')', MusScrollTimeout);
        MusscrollEnable(false);
    }

    function MusscrollClickDown () {
        var newScrollPos= objs.MusList.scrollTop + MusRowHeight;
        var distance= (newScrollPos - objs.MusList.scrollTop)/distanceIntNum;
        var startIncreaseSpeed= objs.MusList.scrollTop + distance;
        var endIncreaseSpeed= newScrollPos - 1.5*distance;

        MusInterval= setInterval('startScrollMus(' + newScrollPos + ',' + startIncreaseSpeed + ',' + endIncreaseSpeed + ', ' + objs.MusList.scrollTop + ')', MusScrollTimeout);
        MusscrollEnable(false);
    }
       
    var MusHeight, MusRowHeight, MusScrollHeight, isMusScrollNeeded, MusScrollTimeout= 1, MusScrollStepDef= MusScrollStep= 1, MusScrollBtmLimit;
    var MusInterval;
    var speedIncreaseKoef= 0.4;
    var speedDecreaseKoef= 0.25;
    var distanceIntNum= 5;
    
    var videoHeight, videoRowHeight, videoScrollHeight, isScrollNeeded, videoScrollTimeout= 1, videoScrollStepDef= videoScrollStep= 1, videoScrollBtmLimit;
    var videoInterval;

	window.onload= function() {
	
		checkIE();

		for(var index in objNames) objs[objNames[index]]= document.getElementById(objNames[index]);

        // 
        //  check if video needs scroll
        //        
        videoHeight= objs.videosList.offsetHeight;
        videoRowHeight= videoHeight/2;
        videoScrollHeight= objs.videosList.scrollHeight;
        isScrollNeeded= videoScrollHeight>videoHeight;
        videoScrollBtmLimit= videoScrollHeight - videoHeight;
        
        scrollShow('scrollUp',false);
        scrollShow('scrollDown',false);
        
        if (isScrollNeeded) {
            //objs.videoScroll.style.top= '0px';
            //objs.videoScroll.style.left= '0px';
            
            objs.scrollUp.onclick= scrollClickUp;
            objs.scrollDown.onclick= scrollClickDown;
            
            scrollShow('scrollDown',true);
        }
        
        
        // 
        //  check if music needs scroll
        // 
        MusHeight= objs.MusList.offsetHeight;
        MusRowHeight= MusHeight/2;
        MusScrollHeight= objs.MusList.scrollHeight;
        isMusScrollNeeded= MusScrollHeight>MusHeight;
        MusScrollBtmLimit= MusScrollHeight - MusHeight;
        
        scrollShow('MusscrollUp',false);
        scrollShow('MusscrollDown',false);
        
        if (isMusScrollNeeded) {
           
            objs.MusscrollUp.onclick= MusscrollClickUp;
            objs.MusscrollDown.onclick= MusscrollClickDown;
            
            scrollShow('MusscrollDown',true);
        }
     
         
         
         
        
	    //return;
	    
	    //  <----

		resizeViewport();
		
		// preload images
		var image_ba= new Image();
		image_ba.src= 'img/backward.gif';
		var image_bi= new Image();
		image_bi.src= 'img/backward_inact.gif';
		var image_fi= new Image();
		image_fi.src= 'img/forward_inact.gif';
		
		var bg_num= 9, bg_divs= '';
		//for(var i=1; i<=9; i++) bg_divs+= '<div style="background-image:url(\'img/mainbg/part'+i+'.jpg\');">&nbsp;</div>';
		//for(var i=1; i<=9; i++) bg_divs+= '<div><img src="img/mainbg/part'+i+'.jpg" /></div>';
		//objs.mainbg.innerHTML= bg_divs;
		
		// hide 'previous' link
		objs.navprev.style.display= 'none';
		
		// - - - All scrollers of the site - - -
		for(var m=1; m<=2; m++) setSiteScroller(m);
		
		// news section
		/*
		objs.content1.style.height= objs.scr_track_1.style.height= objs.scroll1.offsetHeight+'px';
		objs.content1.style.width= (objs.scroll1.offsetWidth-objs.scr_track_1.offsetWidth)+'px';
		objs.scr_track_1.style.left= objs.content1.offsetWidth+'px';
		objs.arrow_top1.style.top= -objs.arrow_top1.offsetHeight-4+'px';
		objs.arrow_btm1.style.top= objs.scr_track_1.offsetHeight+4+'px';
		objs.arrow_top1.style.left= objs.arrow_btm1.style.left= (objs.scr_track_1.offsetWidth-objs.arrow_top1.offsetWidth)/2 + 'px';
		objs.track1.style.height=objs.scr_track_1.offsetHeight+'px';
		objs.track1.style.left= (objs.scr_track_1.offsetWidth/2-1)+'px';
		
        objs.slider1.style.left= (objs.scr_track_1.offsetWidth-objs.slider1.offsetWidth)/2+'px';
		if (objs.content1.scrollHeight>objs.content1.offsetHeight) {
		  var percent= Math.floor((objs.content1.offsetHeight/objs.content1.scrollHeight)*100);
		  objs.slider1.style.height= (objs.track1.offsetHeight*percent)/100+'px';
        }
        else objs.scr_track_1.style.display= 'none';        
        
		sliders[1]= new Array(0,objs.scr_track_1.offsetHeight-objs.slider1.offsetHeight);

		// bio section
		objs.content2.style.height= objs.scr_track_2.style.height= objs.scroll2.offsetHeight+'px';
		objs.content2.style.width= (objs.scroll2.offsetWidth-objs.scr_track_2.offsetWidth)+'px';
		objs.scr_track_2.style.left= objs.content2.offsetWidth+'px';
		objs.arrow_top2.style.top= -objs.arrow_top2.offsetHeight-4+'px';
		objs.arrow_btm2.style.top= objs.scr_track_2.offsetHeight+4+'px';
		objs.arrow_top2.style.left= objs.arrow_btm2.style.left= (objs.scr_track_2.offsetWidth-objs.arrow_top2.offsetWidth)/2 + 'px';
		objs.track2.style.height=objs.scr_track_2.offsetHeight+'px';
		objs.track2.style.left= (objs.scr_track_2.offsetWidth/2-1)+'px';
		
        objs.slider2.style.left= (objs.scr_track_2.offsetWidth-objs.slider2.offsetWidth)/2+'px';
		if (objs.content2.scrollHeight>objs.content2.offsetHeight) {
		  var percent= Math.floor((objs.content2.offsetHeight/objs.content2.scrollHeight)*100);
		  objs.slider2.style.height= (objs.track2.offsetHeight*percent)/100+'px';
        }
        else objs.scr_track_2.style.display= 'none';
        
		sliders[2]= new Array(0,objs.scr_track_2.offsetHeight-objs.slider2.offsetHeight);
		*/
		
		// initialize scroll slider dragging ability
		initPage();
		// positioning for menuitems
	    var menuitemspos= new Array();
	    //                         left,top
	    menuitemspos[1]= new Array(45,100);    // novosti
	    menuitemspos[2]= new Array(15,15);     // muzika
	    menuitemspos[3]= new Array(115,55);    // galereja
	    menuitemspos[4]= new Array(200,0);     // video
	    menuitemspos[5]= new Array(240,75);    // interaktiv
	    menuitemspos[6]= new Array(315,120);   // biografija
	    menuitemspos[7]= new Array(160,145);   // kontakti
		for(var i=1; i<=7; i++) {
		  objs['menuitem'+i].style.top= menuitemspos[i][1]+'px';
		  objs['menuitem'+i].style.left= menuitemspos[i][0]+'px';
		  objs['menuitem'+i].onclick= function() { MoveContent(this.id.substr(this.id.length-1,1)); }
        }
       
        chapters[0]= new Array('',objs.home); 
        chapters[1]= new Array('',objs.news); 
        chapters[2]= new Array('',objs.music); 
        chapters[3]= new Array('',objs.gallery); 
        chapters[4]= new Array('',objs.video); 
        chapters[5]= new Array('',objs.interaktiv); 
        chapters[6]= new Array('',objs.bio); 
        chapters[7]= new Array('',objs.contact); 
        
		objs.hint.innerHTML= chapters[thispart][0];
        
        if (is_IE) correctPNG();
        var test = '';
        
        for (var k=1; k<=9; k++) {
//            test += document.getElementById('main_part_' + k).id + ' --- ' + '/img/mainbg/part' + k + '.jpg' +'\n';
            document.getElementById('main_part_' + k).style.backgroundImage = 'url(img/mainbg/part' + k + '.jpg)';
        }
        
        for (var k=1; k<=videos_amount; k++) {
            document.getElementById('video_preview_' + k).src = videos_bg[k];
//            test += document.getElementById('video_preview_' + k).src + ' --> ' + videos_bg[k]+ '\n';
        }
        for (var k=0; k<sections_amount; k++) {
            document.getElementById('section_preview_' + k).src = sections_bg[k];
//            test += document.getElementById('video_preview_' + k).src + ' --> ' + videos_bg[k]+ '\n';
        }
            document.getElementById('itvimg').src = 'img/interaktiv_tv.png';
		
//		setTimeout("correctPNG()", 5000);
        
//        alert(test);
        
		// correct png under IE
	}
	
	function setSiteScroller(m) {
          
          if (!objs['content'+m]) objs['content'+m]= document.getElementById('content'+m);
          if (!objs['scroll'+m]) objs['scroll'+m]= document.getElementById('scroll'+m);
          if (!objs['scr_track_'+m]) objs['scr_track_'+m]= document.getElementById('scr_track_'+m);
          if (!objs['arrow_top'+m]) objs['arrow_top'+m]= document.getElementById('arrow_top'+m);
          if (!objs['arrow_btm'+m]) objs['arrow_btm'+m]= document.getElementById('arrow_btm'+m);
          if (!objs['slider'+m]) objs['slider'+m]= document.getElementById('slider'+m);
          if (!objs['track'+m]) objs['track'+m]= document.getElementById('track'+m);
          
          objs['content'+m].style.height= objs['scr_track_'+m].style.height= objs['scroll'+m].offsetHeight+'px';
		  objs['content'+m].style.width= (objs['scroll'+m].offsetWidth-objs['scr_track_'+m].offsetWidth)+'px';
		  objs['scr_track_'+m].style.left= objs['content'+m].offsetWidth+'px';
		  objs['arrow_top'+m].style.top= -objs['arrow_top'+m].offsetHeight-4+'px';
		  objs['arrow_btm'+m].style.top= objs['scr_track_'+m].offsetHeight+4+'px';
		  objs['arrow_top'+m].style.left= objs['arrow_btm'+m].style.left= (objs['scr_track_'+m].offsetWidth-objs['arrow_top'+m].offsetWidth)/2 + 'px';
		  objs['track'+m].style.height=objs['scr_track_'+m].offsetHeight+'px';
		  objs['track'+m].style.left= (objs['scr_track_'+m].offsetWidth/2-1)+'px';
		
          objs['slider'+m].style.left= (objs['scr_track_'+m].offsetWidth-objs['slider'+m].offsetWidth)/2+'px';
		  if (objs['content'+m].scrollHeight>objs['content'+m].offsetHeight) {
		      var percent= Math.floor((objs['content'+m].offsetHeight/objs['content'+m].scrollHeight)*100);
		      objs['slider'+m].style.height= (objs['track'+m].offsetHeight*percent)/100+'px';
          }
          else objs['scr_track_'+m].style.display= 'none';        
        
		  sliders[m]= new Array(0,objs['scr_track_'+m].offsetHeight-objs['slider'+m].offsetHeight);
   }
	
	window.onresize= resizeViewport;                                                                           
	
	function resizeViewport() {
		winDim= getWindowInner();
		var newHeight= (winDim[1]>winMinH) ? winDim[1] : winMinH;
		objs.viewport.style.width= (winDim[0]<winMinW) ? winMinW+'px':'100%';
		objs.viewport.style.height= newHeight+'px';

        // nav bar (prev,next)
		//objs.navbar.style.top= (objs.viewport.offsetHeight-objs.navbar.offsetHeight-100)+'px';
		// zoom bar (preview site)
		objs.zoom_bar.style.left=objs.zoom_hint.style.left= (objs.viewport.offsetWidth-objs.zoom_bar.offsetWidth)/2+'px';
		objs.zoom_bar.style.top= (objs.viewport.offsetHeight-objs.zoom_bar.offsetHeight-objs.viewport.offsetHeight*0.05)+'px';
		objs.zoom_hint.style.top= (objs.zoom_bar.offsetTop-objs.zoom_hint.offsetHeight) + 'px';

		objs.navbar.style.width= (navArrow._width*2 + navArrow._offset*2 + objs.zoom_bar.offsetWidth)+'px';
		objs.navbar.style.height= objs.zoom_bar.offsetHeight+'px';
        objs.navbar.style.top= (objs.zoom_bar.offsetTop + (objs.navbar.offsetHeight - navArrow._height)/2)+'px';
        objs.navbar.style.left= (objs.zoom_bar.offsetLeft- navArrow._offset- navArrow._width)+'px';
        
        var padding_dev = 10;
		objs.development.style.top  = (winDim[1] - objs.development.offsetHeight - padding_dev)+'px';
		objs.development.style.left = (winDim[0] - objs.development.offsetWidth - padding_dev)+'px';
		
		koef= objs.moveable.offsetWidth/objs.zoom_bar.offsetWidth;
		objs.zoom_window.style.width= (objs.viewport.offsetWidth/koef)+ 'px';
		objs.transparent_prev.style.width= objs.transparent_next.style.width= (objs.zoom_bar.offsetWidth-objs.zoom_window.offsetWidth)+'px';
		update_hidden_zones();

        var opacity= 80;
        var object = objs.transparent_prev.style;
        object.opacity = (opacity / 100);
        object.MozOpacity = (opacity / 100);
        object.KhtmlOpacity = (opacity / 100);
        object.filter = "alpha(opacity=" + opacity + ")";
        
        var object = objs.transparent_next.style;
        object.opacity = (opacity / 100);
        object.MozOpacity = (opacity / 100);
        object.KhtmlOpacity = (opacity / 100);
        object.filter = "alpha(opacity=" + opacity + ")";

        var object = objs.hint.style;
        object.opacity = (opacity / 100);
        object.MozOpacity = (opacity / 100);
        object.KhtmlOpacity = (opacity / 100);
        object.filter = "alpha(opacity=" + opacity + ")";

        // home
        //objs.home_content.style.marginTop= (objs.viewport.offsetHeight-objs.home_content.offsetHeight)/2+'px';
		objs.sizeable1.style.width= ((winDim[0]>winMinW) ? (winDim[0]<objs.home.offsetWidth ? winDim[0]+'px' : '100%') : winMinW+'px');
		
		// Menu section
		objs.menu.style.top= objs.viewport.offsetHeight*0.18 + 'px';
		objs.menu.style.left= (objs.viewport.offsetWidth*0.48) + 'px';
		
		// part: News
		objs.newscontent.style.marginTop= (objs.viewport.offsetHeight*0.1) + 'px';//(objs.viewport.offsetHeight-objs.newscontent.offsetHeight)/2+'px';
		objs.sizeable2.style.width= ((winDim[0]>winMinW) ? (winDim[0]<objs.news.offsetWidth ? winDim[0]+'px' : '100%') : winMinW+'px');

		// Music
		objs.musiccontent.style.marginTop= (objs.viewport.offsetHeight*0.1) + 'px';//(objs.viewport.offsetHeight-objs.musiccontent.offsetHeight)/2+'px';
		objs.sizeable3.style.width= ((winDim[0]>winMinW) ? (winDim[0]<objs.music.offsetWidth ? winDim[0]+'px' : '100%') : winMinW+'px');
		//objs.discdetails.style.width= objs.discography.offsetWidth+'px';
		//objs.discdetails.style.height= objs.discography.offsetHeight+'px';

		// Bio
		objs.biocontent.style.marginTop= (objs.viewport.offsetHeight*0.1)+'px';//(objs.viewport.offsetHeight-objs.biocontent.offsetHeight)/2+'px';
		objs.sizeable7.style.width= ((winDim[0]>winMinW) ? (winDim[0]<objs.bio.offsetWidth ? winDim[0]+'px' : '100%') : winMinW+'px');
		
		// Gallery
		objs.gallery_content.style.marginTop= (objs.viewport.offsetHeight*0.1)+'px';//(objs.viewport.offsetHeight-objs.gallery_content.offsetHeight)/2+'px';
		objs.sizeable_gallery.style.width= ((winDim[0]>winMinW) ? (winDim[0]<objs.gallery.offsetWidth ? winDim[0]+'px' : '100%') : winMinW+'px');
		//objs.viewgallery.style.width= /*objs.galleries.offsetWidth+*/'600px';
		//objs.viewgallery.style.height= /*objs.galleries.offsetHeight+*/'400px';
        objs.viewgallery.style.left= '0px';
		//objs.viewgallery.style.top= '0px';

		// Video
		objs.video_content.style.marginTop= (objs.viewport.offsetHeight*0.1)+'px';//(objs.viewport.offsetHeight-objs.video_content.offsetHeight)/2+'px';
		objs.sizeable_video.style.width= ((winDim[0]>winMinW) ? (winDim[0]<objs.video.offsetWidth ? winDim[0]+'px' : '100%') : winMinW+'px');
		//objs.videofile.style.width= objs.videos.offsetWidth+'px';
		//objs.videofile.style.height= objs.videos.offsetHeight+'px';
		objs.videofile.style.top= '0px';
		objs.videofile.style.left= (is_IE==true) ? '-350px' : '0px';

		// interaktiv
		objs.iacontent.style.marginTop= (objs.viewport.offsetHeight*0.1)+'px';//(objs.viewport.offsetHeight-objs.iacontent.offsetHeight)/2+'px';
		objs.sizeableinteraktiv.style.width= ((winDim[0]>winMinW) ? (winDim[0]<objs.interaktiv.offsetWidth ? winDim[0]+'px' : '100%') : winMinW+'px');
		
		// contact
		objs.contact_content.style.marginTop= (objs.viewport.offsetHeight*0.1)+'px';//(objs.viewport.offsetHeight-objs.contact_content.offsetHeight)/2+'px';
		objs.sizeable_contact.style.width= ((winDim[0]>winMinW) ? (winDim[0]<objs.contact.offsetWidth ? winDim[0]+'px' : '100%') : winMinW+'px');
	}
	
	function letsMove(ahref) {
		MoveContent(thispart-(ahref.id=='prev' ? 1 : -1));
		return false;
	}
	
	function MoveContent(nextid) {
	    
	    var move_to_point= -1*objs[parts[nextid]].offsetLeft;
	    thispart= nextid;
        /*	
		var moveoffset= Math.abs(objs[parts[thispart]].offsetLeft-objs[parts[nextid]].offsetLeft);
		thispart= nextid;
		var nextpart= objs.moveable.offsetLeft+sign*moveoffset;
		*/

		prevInner= objs.navprev.innerHTML;
		nextInner= objs.navnext.innerHTML;
		objs.navprev.innerHTML= '<img src="img/backward_inact.gif" />';
		objs.navnext.innerHTML= '<img src="img/forward_inact.gif" />';
		
		interval= setInterval("moving("+move_to_point+","+(objs.moveable.offsetLeft>=move_to_point ? -1 : 1)+")",timeout);
		interval2= setInterval("moving("+move_to_point+","+(objs.moveable.offsetLeft>=move_to_point ? -1 : 1)+")",timeout);
		
		if (thispart==0) {
			if (objs.navprev.style.display=='') objs.navprev.style.display= 'none'; 
		}
		else if (thispart==parts.length-1) {
			if (objs.navprev.style.display=='none') objs.navprev.style.display= ''; 
			if (objs.navnext.style.display=='') objs.navnext.style.display= 'none'; 
		}
		else {
			if (objs.navprev.style.display=='none') objs.navprev.style.display= ''; 
			if (objs.navnext.style.display=='none') objs.navnext.style.display= ''; 
		}
		return false;
    }
	
	function moving(nextpart,sign) {
		var nextLeft= objs.moveable.offsetLeft+sign*step;
	    //alert(sign+':'+nextLeft+':'+nextpart); clearInterval(interval); return;
		if ((nextLeft>=nextpart && sign>0) || (nextLeft<=nextpart && sign<0)) {
			clearInterval(interval);
			clearInterval(interval2);
			objs.moveable.style.left=nextpart+'px';
			objs.navprev.innerHTML= prevInner;
			objs.navnext.innerHTML= nextInner;
		} 
		else {
            objs.moveable.style.left=nextLeft+'px';
        }
        objs.zoom_window.style.left= -1*objs.moveable.offsetLeft/koef + 'px';
        update_hidden_zones();
	}
	
	var object= null;
	var cY= 0, cX= 0;

	function initPage() {
		document.onmousedown = pickIt;
		document.onmousemove = dragIt;
		document.onmouseup   = dropIt;
	}

	function pickIt(evt) {
		evt= (evt) ? evt : ( (window.event) ? event : null );
		var objectID = (evt.target) ? evt.target.id : ((evt.srcElement) ? evt.srcElement.id:null);
		if(objectID.indexOf('slider')!=-1 || objectID=='zoom_window' ) object= document.getElementById(objectID);
		if ( object ) {
		    if (objectID=='zoom_window') { 
		      cX = evt.clientX - object.offsetLeft;
		      objs.zoom_hint.style.visibility= 'visible';
            } else {
			  cY = evt.clientY - object.offsetTop;
	        }
			return;
		} else {
			object= null;
			return;
		}
	}
	
	function dragIt(evt) {
		evt= (evt)?evt:((window.event)?event:null);
		if ( object ) {
		    if (object.id=='zoom_window') {
		      var next_x= evt.clientX - cX;
		      var max_x= objs.zoom_bar.offsetWidth-object.offsetWidth;
		      var min_x= 0;
		      if (next_x>=min_x && next_x<=max_x)
		        object.style.left= next_x+'px';
		      update_hidden_zones();
		      objs.moveable.style.left= -1*object.offsetLeft*koef + 'px';
		      change_hint();
            } else {
			  var nextY= evt.clientY - cY;
			  var slider_id= object.id.replace('slider','');
	 		  if (nextY>sliders[slider_id][0] && nextY<sliders[slider_id][1]) {
	 			object.style.top= nextY+'px';
		 		var nextScroll= (objs['content'+slider_id].scrollHeight*nextY)/objs['track'+slider_id].offsetHeight;
			 	objs['content'+slider_id].scrollTop= nextScroll;
        	  }
			  return false;
			}
		}
	}
	
	function dropIt() {
		if ( object ) {
            if (object.id=='zoom_window') {
                for(var i=0; i<chapters.length; i++) {
                    var right_end= chapters[i][1].offsetLeft/koef + chapters[i][1].offsetWidth/koef/2;
                    var left_end= chapters[i][1].offsetLeft/koef- ((chapters[i-1] ? chapters[i-1][1].offsetWidth : 0)/koef)/2;
                    if (object.offsetLeft>left_end && object.offsetLeft<right_end)
                        { 
                        //object.innerHTML= chapters[i][0]; 
                        MoveContent(i);
                        }
                }
                objs.zoom_hint.style.visibility= 'hidden';
            }
            
			object= null;
			return false;
		}
	}
	
	function change_hint() {
                for(var i=0; i<chapters.length; i++) {
                    var right_end= chapters[i][1].offsetLeft/koef + chapters[i][1].offsetWidth/koef/2;
                    var left_end= chapters[i][1].offsetLeft/koef- ((chapters[i-1] ? chapters[i-1][1].offsetWidth : 0)/koef)/2;
                    if (objs.zoom_window.offsetLeft>left_end && objs.zoom_window.offsetLeft<right_end)
                        objs.hint.innerHTML= chapters[i][0]; 
                }
    }
	
	function update_hidden_zones() {
		objs.transparent_prev.style.left= (objs.zoom_window.offsetLeft-objs.transparent_prev.offsetWidth)+'px';
		objs.transparent_next.style.left= (objs.zoom_window.offsetLeft+objs.zoom_window.offsetWidth)+'px';
		objs.hint.style.left= (objs.zoom_window.offsetLeft-(objs.hint.offsetWidth-objs.zoom_window.offsetWidth)/2)+'px';
    }

    function openAlbum(id) {
        if (thispart==2) {
            xajax_openAlbum(id);
		    hideStaticBar(0);
        }
        return false;
    }	
    
    function openTrackText(albumid,trackid) {
        //objs.tracktext.style.width= objs.discdetails.offsetWidth+'px';
        //objs.tracktext.style.height= objs.discdetails.offsetHeight+'px';
        xajax_openTrackText(albumid,trackid);
        return false;
    }
    
    function openGallery(gallery_id) {
        if (thispart==3) {
            xajax_openGallery(gallery_id);
		    hideStaticBar(0);
        }
        return false;
    }
	
	function viewPhoto(sectionid,subid,photoid){
	   xajax_changePhotoTo(sectionid,subid,photoid);
	   return false;
    }
    
    function openGalleryList(ahref,sectionid) {
        if (!objs['listing2']) objs['listing2']= document.getElementById('listing2');
        objs.listing2.style.visibility= 'hidden';

        objs['listing']= document.getElementById('listing');
        objs['gNamePoint']= document.getElementById('gNamePoint');
        var listY= objs.gNamePoint.offsetTop+objs.gNamePoint.offsetHeight-1;
        var listX= objs.gNamePoint.offsetLeft;
        objs.listing.style.top= listY+'px';
        objs.listing.style.left= listX+'px';
        xajax_openGalleryList(sectionid);
        return false;
    }
    
    function openSubsList(ahref,sectionid,subid) {
        objs['listing2']= document.getElementById('listing2');
        if (!objs['listing']) objs['listing']= document.getElementById('listing');
        objs['gSubNamePoint']= document.getElementById('gSubNamePoint');
        
        var listY= objs.gSubNamePoint.offsetTop+objs.gSubNamePoint.offsetHeight-1;
        var listX= objs.gSubNamePoint.offsetLeft;
        //alert(listX+' x '+listY);
        objs.listing.style.visibility= 'hidden';
        objs.listing2.style.top= listY+'px';
        objs.listing2.style.left= listX+'px';
        xajax_openSubList(sectionid,subid);
        return false;
    }
	
    function openSub(sectionid,subid) {
        objs.listing2.style.visibility='hidden';
        xajax_openSub(sectionid,subid);
        return false; 
    }
	
	var alpha_int= 1;
	function alphaListing(suf,num) {
	   if (num==0) 
	       alpha_int= setInterval("objs.listing"+suf+".style.visibility='hidden';clearInterval(alpha_int);",500);
       else {
           clearInterval(alpha_int);
           objs['listing'+suf].style.visibility='visible';
       }
    }
	
	function scrollMe(ahref) {
	  if (!objs.listing) objs['listing']= document.getElementById('listing'); 
	  if (!objs.thumbnails) objs['thumbnails']= document.getElementById('thumbnails'); 
	  var sign= ahref.id.substr(ahref.id.length-1,1)==0 ? -1 : 1;
	  objs.thumbnails.scrollTop+= sign*77;
	  return false;
    }
    
    function openVideo(videoid) {
        if (thispart==4) {
            xajax_openVideo(videoid);
            hideStaticBar(0);
        }
        return false;
    }
	
	function scrollGallery(drc) {
	   
	   objs['thumbnails']= document.getElementById('thumbnails'); 
	   objs['backward']= document.getElementById('backward'); 
	   objs['_forward']= document.getElementById('_forward'); 
	   
	   var sdwig= objs.thumbnails.offsetHeight;
	   var sign= drc==0 ? -1 : 1;
	   var thisScroll= objs.thumbnails.scrollTop+sign*sdwig;
	   thisScroll= Math.ceil(thisScroll/sdwig)*sdwig;

	   objs.thumbnails.scrollTop= thisScroll;
       objs.backward.style.visibility= 'visible';
	   objs._forward.style.visibility= 'visible';

	   if (thisScroll>=(objs.thumbnails.scrollHeight-sdwig)) objs._forward.style.visibility= 'hidden';
       if (thisScroll<sdwig) objs.backward.style.visibility= 'hidden';
    }
	
	function hideForward() {
	   objs['thumbnails']= document.getElementById('thumbnails'); 
	   objs['_forward']= document.getElementById('_forward'); 

	   var thumbs_all_height= objs.thumbnails.scrollHeight;	
	   var sdwig= objs.thumbnails.offsetHeight;

	   objs._forward.style.visibility= (thumbs_all_height<=sdwig) ? 'hidden' : 'visible';

	   objs.thumbnails.scrollTop= 0;
	   objs['backward']= document.getElementById('backward');
	   objs.backward.style.visibility= 'hidden';
    }
	
	function sendContact(object) {
	   xajax_SendContacts(xajax.getFormValues(object.id));
	   return false;
    }

	function hideStaticBar(status) {
		objs.static.style.visibility= status==1 ? 'visible' : 'hidden';
	}

	function align_full_video_box() {
		//videofile
		objs.videofile.style.left= (objs.videosList.offsetWidth - objs.videofile.offsetWidth)/2 + 'px';
		//objs.videofile.style.left= '0px';
		//alert(objs.videosList.offsetWidth);
	}
	
	
	
	
	
	
	

