jQuery.noConflict();
var A$ = jQuery;

A$.data_loader = {
	init: function() {
		for (module in A$.data_loader) {
			if (A$.data_loader[module].init)
				A$.data_loader[module].init();
		}	
	}
};

A$(document).ready(A$.data_loader.init);

var domain = 'http://www.zed.co.jp';
var timer;
var _url = new Array();
var _activeID = 0;
var _activePhoto="";
var _initPhoto="";
A$.data_loader.load = {
	init: function() {
		A$('A.photoLoader')
			.bind('click', this.click);
		A$.ajax({
			url: domain+'/special/blogparts/photo/photoList.php',
			dataType: 'jsonp',
			jsonp: 'jsonp_callback',
			timeout: 5000,
 			error: function(){
 				A$('DIV.zedBP_view').html('Sorry.<br />ZED Server Busy now');
 				A$('DIV.zedBP_view').css('color','#ff0000');
			},
			success: function(json){
				var _display_tag="";
				A$('#zedBP_display_photo').css({opacity: 0});
        A$.each(json.items, function(i,item){
        	if(item){
						_title = item.title;
						_link = item.link;
						_guid = item.guid;
						_url[i] = domain+_link;
						if(!i){
							_initPhoto=_activePhoto = 'li.'+_guid+ ' img';
							photoChange();
						}else{
							var casheLoader = new Image();// preload image
							casheLoader.src=_url[i];
						}
					}
        });
				timer = setInterval(photoChange,10000);
			}
		});
	},
	click: function() {
		var st=A$(document.body).scrollTop();
		st = (!st)?document.documentElement.scrollTop:st;
		var l=this.href;
		var h=A$(window).height();
		var target=A$(this).attr('id');
		A$('body').append("<div id='zedBP_contents_block' style='position:absolute;top:"+st+"px;left:0;display:block;width:100%;height:100%;z-index:1000;text-align: center;'><div id='zedBP_background' style='position:absolute;top:0;left:0;display:block;width:100%;height:100%;background-color:#000;z-index:1001;cursor:hand;color:#ccc;line-height:2.0em;font-weight:bold;text-align:center;'></div><div id='zedBP_contents_main' style='position:relative;margin:0 auto;color:#fff;text-align:center;z-index:1002'></div></div>")
		A$('#zedBP_background').css({opacity: 0, height: h});
		A$('#zedBP_background').fadeTo("fast",0.8, function(){
			A$.ajax({
				url: l,
				dataType: 'script',
				data: null,
				timeout: 5000,
				error: function(){
					A$('#zedBP_contents_main').html('Sorry.<br />ZED Server Busy now');
				},
				success: function(){
					var imageW=A$('#zedBP_photo-main').width();
					var imageH=A$('#zedBP_contents_main').height();
					A$('#zedBP_contents_main').width(imageW);
					var t=(h/2)-(imageH/2);
					var t=(t<0)?0:t;
					A$('#zedBP_contents_main').css({top: t});
					A$(_activePhoto).fadeTo("fast",0.5);
					A$('#zedBP_rewind a').fadeTo("fast",0.25);
					if(_url.length<=6) A$('#zedBP_forward a').fadeTo("fast",0.25);
					A$('#zedBP_photos').width(94*_url.length);
				}
			});
		});
		A$('#zedBP_background').click( function() {
			A$('#zedBP_contents_main').remove();
			A$(this).fadeTo("fast",0, function(){A$('#zedBP_contents_block').remove();});
		});
		return false;
	}
}

var count = 0;
var w = 564;
function imageRewind() {
	var l=A$('#zedBP_photos').css('left');
	l=(l=='auto')?0:parseInt(l);
	A$('#zedBP_forward a').fadeTo("fast",1);
	p=l+564;
	if(p>=0){
		p=0;
		A$('#zedBP_rewind a').fadeTo("fast",0.25);
	}else{
		A$('#zedBP_rewind a').fadeTo("fast",1);
	}
	A$('#zedBP_photos').animate({ left:p },"slow");
};

function imageForward() {
	var w=A$('#zedBP_photos').width();
	if(w>564){
		w-=564;
		var l=A$('#zedBP_photos').css('left');
		l=(l=='auto')?0:parseInt(l);
		A$('#zedBP_rewind a').fadeTo("fast",1);
		p=l-564;
		if(p<=-w){
			p=-w;
			A$('#zedBP_forward a').fadeTo("fast",0.25);
		}
		A$('#zedBP_photos').animate({ left:p },"slow");
	}
};
function imageChange(n,u) {
	if(_activePhoto)A$(_activePhoto).fadeTo("fast",1);
	_activePhoto = 'li.'+n+' img';
	A$(_activePhoto).fadeTo("fast",0.5);
	A$('#zedBP_photo-main').fadeTo("fast",0, function(){
		A$.ajax({
			url: u,
			dataType: 'script',
			data: null,
			timeout: 5000,
			error: function(){
				A$('#zedBP_contents_main').html('Sorry.<br />ZED Server Busy now');
			},
			success: function(){
				A$('#zedBP_photo-main').fadeTo("fast",1);
			}
		});
	});
};


function photoChange() {
	if(A$('#zedBP_display_photo img').attr("src")!=undefined){
		_activeID++;
		if(_url.length<=_activeID){_activeID=0;}
		A$('#zedBP_display_photo').fadeTo("slow",0, function(){A$('#zedBP_display_photo img').remove();fadeInImage(_activeID);});
	}else{
		fadeInImage(_activeID);
	}
}
function fadeInImage(_id) {
	var imgLoader = new Image();// preload image
	imgLoader.onload = function() {
		A$('#zedBP_display_photo').prepend('<img src="'+_url[_id]+'" width="210" height="140" />');
		A$('#zedBP_display_photo').fadeTo("slow",1.0);
	};
	imgLoader.src=_url[_id];
}
function imageClose() {
	if(_activePhoto)A$(_activePhoto).fadeTo("fast",1);
	_activePhoto=_initPhoto;
	A$('#zedBP_contents_main').remove();
	A$('#zedBP_background').fadeTo("fast",0, function(){A$('#zedBP_contents_block').remove();});
};

A$.data_loader.resize = {
	init: function() {
		A$(window)
		.bind('resize', this.resize)
		.bind('scroll', this.scroll)
	},
	resize: function() {
		if(A$('#zedBP_background').css('opacity')!=undefined){
			var h=A$(window).height();
			A$('#zedBP_background').css({height: h});
			var t=h/2-(A$('#zedBP_contents_main').height()/2);
			var t=(t<0)?0:t;
			A$('#zedBP_contents_main').css({top: t});
		}
	},
	scroll: function() {
		if(A$('#zedBP_background').css('opacity')!=undefined){
			var st=A$(document.body).scrollTop();
			st = (!st)?document.documentElement.scrollTop:st;
			A$('#zedBP_contents_block').css({top: st});
		}
	}
};
