var jQ=jQuery.noConflict();
jQ(document).ready(function(){
	abspath='../../../../wp-content/themes/hellosonar';
	//================================================== borders-related
//	jQ('input#searchsubmit').corner('3px');
	jQ('form#newsletter p.ajax-response').corner('top 2px');
	//================================================== borders-related
	//================================================== shared-related
	jQ('.column.right .widget_rss a.rsswidget:first').remove();

	jQ('input[type="text"]').clearField();
	jQ('textarea#c_message').clearField();

	jQ('.fancy').fancybox({
		centerOnScroll:true,
		overlayShow:true,
		transitionIn:'elastic',
		transitionOut:'elastic',
		speedIn:300,
		speedOut:300,
		onComplete:function(){
			jQ('a#fancybox-close').attr('title','Close').before('<a id="fancybox-new" style="display:inline;" title="Open in new window"></a>');
		},
		onCleanup:function(){
			jQ('#fancybox-new').remove();
		}
	});
	
	jQ('#fancybox-new').live('click',function(){
		src=jQ(this).siblings('#fancybox-content').html();
		newW=window.open();
		newW.document.open;
		newW.document.write(src);
		newW.document.close;
		newW.focus();
	});

	jQ('.img-placeholder img').draggable({
		stop:function(e,ui){
			draggableCont=new Array();
			draggableCont['w']=jQ(this).parent('a.fancy').width();
			draggableCont['h']=jQ(this).parent('a.fancy').height();
			draggableCont['ml']=-(ui.helper.width()-draggableCont['w']);
			draggableCont['mt']=-(ui.helper.height()-draggableCont['h']);
			draggableCont['s']=250;
			if (ui.position.left>0 && ui.position.top>0){
				jQ(this).animate({
					'left':'0px',
					'top':'0px'
				},draggableCont['s']);
			}
			else if (ui.position.left<draggableCont['ml'] && ui.position.top>0){
				jQ(this).animate({
					'left':draggableCont['ml'],
					'top':'0px'
				},draggableCont['s']);
			}
			else if (ui.position.left<draggableCont['ml'] && ui.position.top<draggableCont['mt']){
				jQ(this).animate({
					'left':draggableCont['ml'],
					'top':draggableCont['mt']
				},draggableCont['s']);
			}
			else if (ui.position.left>0 && ui.position.top<draggableCont['mt']){
				jQ(this).animate({
					'left':'0px',
					'top':draggableCont['mt']
				},draggableCont['s']);
			}
			else if (ui.position.left>0){
				jQ(this).animate({
					'left':'0px'
				},draggableCont['s']);
			}
			else if (ui.position.top>0){
				jQ(this).animate({
					'top':'0px'
				},draggableCont['s']);
			}
			else if (ui.position.left<draggableCont['ml']){
				jQ(this).animate({
					'left':draggableCont['ml']
				},draggableCont['s']);
			}
			else if (ui.position.top<draggableCont['mt']){
				jQ(this).animate({
					'top':draggableCont['mt']
				},draggableCont['s']);
			}
		}
	});
	
	jQ('.img-placeholder').mouseenter(function(){
		jQ(this).find('.dragme').fadeOut(250);
	}).mouseleave(function(){
		jQ(this).find('.dragme').fadeIn(250);
	});
	
	jQ('.columns.two .column form.default label').hover(function(){
		jQ(this).toggleClass('hover');
	});
	//================================================== /shared-related
	//================================================== primary-menu-related
	jQ('.tier-1 > .menu-item').mouseenter(function(){
		if (jQ(this).find('.sub-menu'))
			jQ(this).find('.sub-menu').slideDown(250);
	}).mouseleave(function(){
		if (jQ(this).find('.sub-menu'))
			jQ(this).find('.sub-menu').slideUp(50);
	});
	jQ('.sub-menu').each(function(){
		jQ(this).find('.menu-item:last').css('borderBottom','0px none');
	});
	//================================================== /primary-menu-related
	//================================================== footer-menu-related
	jQ('.footer-menu .block').each(function(){
		jQ(this).find('a:last').css('borderBottom','0px none');
	});
	//================================================== /footer-menu-related
	//================================================== slider-related
	if (jQ('.slider').length){
		fx='scrollLeft';
		timeout=0;
		easing='easeOutBounce';
		speed=1000;
		jQ.ajax({
			type:'post',
			dataType:'json',
			data:{
				fetch:'cycle'
			},
			url:abspath+'/config/jsFetch.php',
			success:function(data){
				if (data.fx)
					fx=data.fx;
				if (data.timeout)
					timeout=data.timeout;
				if (data.speed)
					speed=data.speed;
				if (data.easing)
					easing=data.easing;
			},
			error:function(data,error){
			},
			complete:function(){
				jQ('.slider .nav .placeholder').cycle({
					fx:fx,
					timeout:timeout,
					speed:speed,
					easing:easing,
					cleartypeNoBg:true,
					slideExpr:'.block',
					pager:'.pager',
					pagerAnchorBuilder:function(idx,slide){
						return '<a href="#">&nbsp;</a>';
					}
				});
			}
		});
	};
	//================================================== /slider-related
	//================================================== newsletter-related
	if (jQ('form#newsletter').length){
		response=jQ('form#newsletter p.ajax-response').html();
		jQ('form#newsletter').submit(function(){
			if (jQ('form#newsletter input[type="text"]').val()==''||jQ('form#newsletter input[type="text"]').val()=='Enter your e-mail here...')
				return false;
			jQ('form#newsletter p.ajax-response').fadeOut(100);
			jQ('form#newsletter img.ajax-loader').fadeIn();
			jQ.ajax({
				type:'post',
				dataType:'json',
				data:{
					mail:jQ('form#newsletter input[type="text"]').val()
				},
				url:abspath+'/includes/shared/snippets/ajax-newsletter.php',
				success:function(data){
					jQ('form#newsletter img.ajax-loader').fadeOut(100);
					jQ('form#newsletter p.ajax-response').html(data.msg+response).fadeIn(500);
				},
				error:function(data,error){
					jQ('form#newsletter img.ajax-loader').fadeOut(100);
					jQ('form#newsletter p.ajax-response').html(data.msg+response).fadeIn(500);
				}
			});
			return false;
		});
		jQ('form#newsletter p.ajax-response').click(function(){
			jQ(this).hide();
		});
	}
	//================================================== /newsletter-related
	//================================================== products-related
	if (jQ('.jcarousel-skin-css').length){
		previewOffsetX=5;
		previewOffsetY=5;
		jQ('.jcarousel-skin-css').jcarousel({
			auto:0,
			scroll:1,
			visible:5,
			animation:'slow',
			wrap:'both'
		});
		jQ('.products.magento .jcarousel-skin-css .jcarousel-item').mouseenter(function(e){
			placeholderOffsetX=jQ(this).offset();
			placeholderOffsetY=placeholderOffsetX.top;
			placeholderOffsetX=placeholderOffsetX.left;
			previewText=jQ(this).find('.preview').attr('lang');
			previewText=previewText.split('##');
			previewText[0]='<img src="'+previewText[0]+'" alt="'+previewText[1]+' image" />';
			previewText[1]='<p>'+previewText[1]+'</p>';
			previewText[2]=Math.round(previewText[2]*100)/100;
			previewText[2]='<p class="price">$: '+previewText[2]+'</p>';
			jQ('body').append('<div id="preview">'+previewText[0]+previewText[1]+previewText[2]+'</div>');
			placeholderOffsetYRelative=Math.abs(jQ(document).scrollTop()-placeholderOffsetY);
			windowHeight=jQ(window).height()/2;
			jQ('#preview').corner('5px').css({
				'left':e.pageX+previewOffsetX+'px',
				'top':e.pageY+previewOffsetY+'px'
			});
			if (placeholderOffsetX>700){
				previewWidth=jQ('#preview').outerWidth();
				jQ('#preview').css({
					'left':e.pageX-previewOffsetX-previewWidth+'px'
				});
			}
			if (placeholderOffsetYRelative>windowHeight){
				previewHeight=jQ('#preview').outerHeight();
				jQ('#preview').css({
					'top':e.pageY-previewOffsetY-previewHeight+'px'
				});
			}
			jQ('#preview').fadeIn(250);
		}).mouseleave(function(){
			jQ('#preview').fadeOut(125).remove();
		}).mousemove(function(e){
			jQ('#preview').css({
				'left':e.pageX+previewOffsetX+'px',
				'top':e.pageY+previewOffsetY+'px'
			});
			if (placeholderOffsetX>700){
				previewWidth=jQ('#preview').outerWidth();
				jQ('#preview').css({
					'left':e.pageX-previewOffsetX-previewWidth+'px'
				});
			}
			if (placeholderOffsetYRelative>windowHeight){
				previewHeight=jQ('#preview').outerHeight();
				jQ('#preview').css({
					'top':e.pageY-previewOffsetY-previewHeight+'px'
				});
			}
		});
	};
	//================================================== /products-related
	//================================================== services-related
	if (jQ('.jcarousel-skin-services').length){
		jQ('.jcarousel-skin-services').jcarousel({
			auto:0,
			scroll:1,
			visible:3,
			animation:'slow',
			wrap:'both'
		});
	};
	//================================================== /services-related
	//================================================== portfolio-related
	if (jQ('.portfolio .block').length){
		//jScrollPane activated in portfolio.php to avoid .view-more from flickering in and out

		jQ('.portfolio .block').mouseenter(slideViewMore).mouseleave(function(){
			jQ(this).find('.view-more').hide('slide',100);
			jQ(this).bind('mouseenter',slideViewMore);
		});
		jQ('.portfolio .nav').masonry({
			columnWidth:100,
			itemSelector:'.block'
		});
	}
	//================================================== /portfolio-related
	//================================================== twitter-related
	if ((jQ('#twitter').length)&&(!jQ.browser.msie)){
		cfg_twitter_account=jQ('#twitter').attr('lang');
		cfg_twitter_account=cfg_twitter_account.split(',');
		cfg_twitter_posts=cfg_twitter_account[1];
		cfg_twitter_account=cfg_twitter_account[0];
		jQ('#twitter').removeAttr('lang');
		if ((cfg_twitter_account=='')||(cfg_twitter_posts==''))
			twitter='<ul id="twitter_update_list"><li><span>Could not connect to your Twitter account.<br />Check your settings in admin panel</span></li></ul>';
		else
			twitter='<script src="http://twitter.com/javascripts/blogger.js" type="text/javascript"></script><ul id="twitter_update_list"><script src="http://twitter.com/statuses/user_timeline/'+cfg_twitter_account+'.json?callback=twitterCallback2&amp;count='+cfg_twitter_posts+'" type="text/javascript">//<![CDATA[</ul>// ]]></script></ul>';
		jQ('#twitter').html(twitter);
	}
	//================================================== /twitter-related
});
//================================================== functions-related
jQ.fn.clearField=function(){
	return this.focus(function(){
		if(this.value==this.defaultValue){
			this.value='';
		}
	}).blur(function(){
		if(!this.value.length){
			this.value=this.defaultValue;
		}
	});
}
function slideViewMore(){
	jQ(this).find('.view-more').css({
		width:jQ(this).find('.view-more').width()
	}).show('slide',500);
	jQ(this).unbind('mouseenter',slideViewMore);
}
function toGrayscale(im,forcedWidth,forcedHeight){
	if (grayscaled[im]){
		if(document.createElement('canvas').getContext){
			jQ(im).parent('a').find('canvas').remove();
		}
		else{
			//im.style.filter='progid:DXImageTransform.Microsoft.BasicImage(grayscale=0)';
		}
		grayscaled[im]=false;
	}
	else{
		if(document.createElement('canvas').getContext){
			var ref=document.createElement("canvas");
			if (forcedWidth){
				ref.width=forcedWidth;
				im.width=forcedWidth;
			}
			else
				ref.width=im.width||im.offsetWidth;
			if (forcedHeight){
				ref.height=forcedHeight;
				im.height=forcedHeight;
			}
			else
				ref.height =im.height||im.offsetHeight;
			var context=ref.getContext('2d');
			context.drawImage(im,0,0);
			var iData=context.getImageData(0,0,ref.width,ref.height);
			im.parentNode.appendChild(ref);
			var data=iData.data;
			var length=data.length;
			for (var i=0;i<length;i+=4){
				var average=(data[i]+data[i+1]+data[i+2])/3;
				data[i]=average;
				data[i+1]=average;
				data[i+2]=average;
			}
			context.putImageData(iData,0,0);
		}
		else{
			//im.style.filter='progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)';
		}
		grayscaled[im]=true;
	}
}
//================================================== /functions-related

