/*
	File Name:		projects.js
	Description:	Traffic Online Projects Portfolio
	Version:		1
	Author:		Dmitry Korsunov
	E-mail:		dmitry.korsunov@gmail.com
	
	No Rights Reserved.
	But some credit would be appreciated.
*/

	tmp = $('op_pages').getWidth();
	$('op_pages').setStyle({
		width: tmp+'px',
		float: 'none'
	});
	
	var ptMove = 0, marg = 0, actP = 1, ptID = 1;
	
	var ptArr = $('onlineProject').childElements();
	
	var ptMax = (ptArr.length-1)*-705;	
	var ptWidth = ptArr.length*705;
	
	$('onlineProject').setStyle({
		width: ptWidth+'px'
	});
	
	function pt(mLeft, step) {

		var ptPos = parseInt($('onlineProject').getStyle('left'));	
		if ( ( (ptPos%705)!=0) && ptPos!=0 ) return;

		if(mLeft) {
			ptMove = ptPos + 705 * step;
		} else {
			ptMove = ptPos - 705 * step;
		}
		
		if ( (ptPos == ptMax) && !mLeft ) {
			ptMove = 0;
		}
		
		if ( (ptMove > 0) && mLeft ) {
			ptMove = 0;
			return;
		}
		
		marg = 0;		
		ptBounce(mLeft, ptMove, 1);
	}
	
	function ptBounce(mLeft, pMove, ptFl) {	
	
		if(ptFl == 1) {
		
			if ( (marg>=10) || (marg<=-10) ) {
				ptBounce(mLeft, pMove, 2);			
				return;
			} 	
					
			marg = marg + 2 * (mLeft ? -1 : 1);					
			$('onlineProject').setStyle({ marginLeft: '' + marg + 'px' });		
						
			setTimeout("ptBounce("+mLeft+", "+pMove+", 1)", 20);
				
		} else if (ptFl == 2) {
		
			marg = marg * -1;	
			$('onlineProject').morph('left: ' + ptMove + 'px; margin-left: ' + marg + 'px;');

			setTimeout("ptBounce("+mLeft+", "+pMove+", 3);ptHglight();", 1000);
			
		} else if (ptFl == 3) {
			
			if ( marg==0 ) return;
					
			marg = marg + 2 * (mLeft ? -1 : 1);				
			$('onlineProject').setStyle({ marginLeft: '' + marg + 'px' });		
						
			setTimeout("ptBounce("+mLeft+", "+pMove+", 3)", 20);			
		}		
	}
	
	function ptPages(id) {
	
		var ptPos = parseInt($('onlineProject').getStyle('left'));	
		if ( ( (ptPos%705)!=0) && ptPos!=0 ) return;
	
		for (i=1;i<=ptArr.length;i++) {
			if ( $('op_page' + i).hasClassName('act') ) {
				actP = $('op_page' + i).readAttribute('rel');	
			}
		}
		
		if (id == actP) return;

		if (id > actP) {
			tmp = id - actP;
			pt(false, tmp);
		} else if (id < actP) {
			tmp = actP - id;
			pt(true, tmp);
		}
		
	}
	
	function ptHglight() {
		var ptPos = parseInt($('onlineProject').getStyle('left'));		
		
		tmp = Math.round(ptPos / -705) + 1;		
		for (i=1;i<=ptArr.length;i++) {
			if (i == tmp) {
				$('op_page' + i).className = 'act';
			} else {
				$('op_page' + i).className = '';
			}
		}		
	}
