$(document).ready(function(){
	$.fn.myslider = function(options){
		var	options = $.extend({
			slider_size: 3,
			desc_template: '<div></div>',
			slide_template: '<li></li>',
			url: false,
			rating_url: false,
			complete: new Function(),
			slide_border: false
		}, options);

		var	$slider_container	= $(this);
		var	$slider_wrapper		= $slider_container.find('.wrapper');
		var	$slider				= $slider_wrapper.find('.slider');
		var	$slide_left			= $slider_container.find('.left');
		var	$slide_right		= $slider_container.find('.right');

		var	slider_length	= $slider.find('.slide').length;
		var	slider_position	= 0;
		var	prev_slide		= false;
		var	slides_list		= new Array();
		var	last_page		= 1;
		var	load_slides		= options.url?true:false;
		var	slide_width		= 360;
		
		//$slide_left	.hide();
		
		$slide_right.click(function(){
			
			slider_position++;
			$slide_left	.show();
			if (!load_slides){
				if (slider_position+options.slider_size==slider_length){
					$slide_right.addClass('inactive');
				}
			}
//			console.log(slider_position+' '+slider_length+' '+slider_size);
			if (slider_position>slider_length-options.slider_size){
				slider_position	= slider_length-options.slider_size;
				return	false;
			}
			if (slider_position==1){
				$slide_left.removeClass('inactive');
			}
			$l=slide_width+1;
			$slider.animate({
				marginLeft:'-='+$l
			}, 'slow', 'linear', function(){
				//	upload next slider_size slides
			});
			/*
			if (load_slides){
				if (slider_position + options.slider_size - slider_length==0){
					last_page++;
					if (options.url){
						get_slides(last_page);
					}
				}
			}
			stop_current_video(0);
			*/
		});
		$slide_left.click(function(){
			slider_position--;
			if (slider_position<=0){
				$slide_left.addClass('inactive');
			}
			if (slider_position<0){
				slider_position	= 0;
				return	false;
			}
			if (slider_position+options.slider_size<slider_length){
				$slide_right.removeClass('inactive');
			}

			$slider.animate({
				marginLeft:'+='+slide_width
			}, 'slow', 'linear', function(){
			});

			//stop_current_video(0);
		});
		
return	false;


		//options.categories[1] = '27';
		//console.log('categories: '+options.categories);
		if (options.url){
			var	get_slides	= function(page,ops){
				var	ops	= $.extend({
					complete: new Function()
				},ops);
				var data = {action: 'lastvideo', page: page, categories: options.categories, kind:'comment',limit: options.slider_size, approved: options.approve,all_cats: options.all_cats, sort: options.sort};
				$.ajax({
					type: 'POST',
					cache: false,
					url: options.url,
					data: data,
					dataType: 'json',
					success: function(data){
						if (data && data.length){
							
							if (data.length < options.slider_size){
								load_slides	= false;
							}
							for (var i in data){
								var	row = data[i];
								row.entered	= false;
								row.played	= false;
								row.rated	= false;
								slides_list[row.item_id]	= row;
								
								var	$slide = $(options.slide_template);
								$slide.find('.slide-title').text(row.author);
								$slide.find('img').attr('src',row.videocomment);
								$slide.find('.info a').text(row.title).attr('title',row.title);
								$slide.find('.info a').attr('href',row.post_url);
								$slide.attr('id','slide_'+row.item_id);
								
								$slider.append($slide);
								slider_length++;
							}
						} else {
							load_slides	= false;
						}
						ops.complete();
					}
				});
				return false;
			}
			get_slides(0,{
				complete: function(){
					get_slides(1);
				}
			});

			if (!slide_width || true){
				var	$slide_example	= $('.slide:eq(0)');
				//slide_width	= $slide_example.width()+$slide_example.css('margin-left')+$slide_example.css('margin-right');
			}
		}
		
		

		var	slide_enter	= function($slide){
			$prev_slide	= $slide;
			var	id		= Math.round($slide.attr('id').replace('slide_',''));
			if (playing_comment==id){
				return	false;
			}
			/*
			var	pos		= ($slide.index() - slider_position) % options.slider_size;
			if (pos == options.slider_size-1){
				var	$desc_slide	= $slide.prev();
			} else {
				var	$desc_slide	= $slide.next();
			}
			*/
			var	$desc	= $(options.desc_template);
			var	row		= slides_list[id];
			
			if (row.entered){
				return	false;
			}
			slides_list[id].entered	= true;
			
			if (!row.viewcount){
				row.viewcount	= slides_list[id].viewcount	= 0;
			}
			if (!row.rating){
				row.rating	= slides_list[id].rating	= 0;
			}

			$desc.find('.author').text(row.author);
			$desc.find('.comment').text(row.t);
			$desc.find('.rating').text(row.rating);
			$desc.find('.viewcount').text(row.viewcount);
			$desc.find('.play-btn').text(row.viewcount);
			$desc.find('.fav-btn').text(row.rating);
			$slide.append($desc);

			$slide.find('.frame').hide();
		};
		
		var	slide_leave	= function($slide){
			var	id		= Math.round($slide.attr('id').replace('slide_',''));
			slides_list[id].entered	= false;
			if (playing_comment==id){
				return	false;
			}
			/*
			var	pos		= ($slide.index() - slider_position) % options.slider_size;
			if (pos == options.slider_size-1){
				var	$desc_slide	= $slide.prev();
			} else {
				var	$desc_slide	= $slide.next();
			}
			*/
			$slide.find('.desc').remove();
			$slide.find('.frame').show();
			
			if ($prev_slide){
//				console.log($prev_slide);
				$prev_slide.find('img').show();
			}
		};

		$slider.find('.slide').live('mouseenter',function(){
			slide_enter($(this));
		});
		$slider.find('.slide').live('mouseleave',function(){
			slide_leave($(this));
		});

		$slider.find('.play-btn').live('mouseenter',function(){
			var	$desc	= $(this).parent();
			var	$play	= $desc.find('.play-btn');
			var	$fav	= $desc.find('.fav-btn');
			$desc.find('.play-tip').show();
			$desc.find('.fav-tip').hide();
			$play.removeClass('play-btn-hover');
			$fav.addClass('fav-btn-hover');
		});
		$slider.find('.fav-btn').live('mouseenter',function(){
			var	$desc	= $(this).parent();
			var	$play	= $desc.find('.play-btn');
			var	$fav	= $desc.find('.fav-btn');
			$desc.find('.play-tip').hide();
			$desc.find('.fav-tip').show();
			$play.addClass('play-btn-hover');
			$fav.removeClass('fav-btn-hover');
		});

		//	stop_current_video and set playing video id
		var	stop_current_video	= function(id){
			var	prev_comment= playing_comment;
			playing_comment	= id;	//	is playing

			if (prev_comment){
				swfobject.removeSWF("videocomment");
				//	force mouseleave on prev slide
				$prev_slide	= $('#slide_'+prev_comment);
				//$prev_slide.trigger('mouseleave');
				slide_leave($prev_slide);
			}
		}

		$slider.find('.play-btn').live('click',function(){
			var	$playbtn= $(this);
			var	$desc	= $playbtn.parent();
			var	$slide	= $desc.parent();

			var	id		= Math.round($slide.attr('id').replace('slide_',''));
			var	row		= slides_list[id];

			stop_current_video(id);

			$desc.remove();
			$slide.find('img').hide();

			var	$videocomment	= $('<div id="videocomment">');
			$slide.append($videocomment);
			//swfobject.removeSWF('videocomment');
			var	fv	= 'p=http://on-1.tv/swf/stable/1tv/videocomment&filename='+row.video+'&autoStart=true&endsignal=true';
			if (options.slide_border){
				fv	+= '&rounded=10&bColor='+options.slide_border+'&bWidth=3';
			}
			swfobject.createSWF({
				data: 'http://on-1.tv/swf/stable/1tv/videocomment.swf?'+Math.random(),
				width: '160',
				height: '120'
			}, {
				menu: 'false',
				allowScriptAccess: 'always',
				wmode: 'transparent',
				flashvars: fv
			}, 'videocomment');

			if (!row.played && options.view_url){
				$.ajax({
					type: 'POST',
					cache: false,
					url: options.view_url,
					data: {action: 'onsite_meta',comment: row.item_id,type:'v'},
					dataType: 'json',
					success: function(data){
						if (data && data.id){
							//	do some magic
							slides_list[id].viewcount++;
							$playbtn.text(slides_list[id].viewcount);
							$playbtn.die('click');	// figure out
							row.played	= true;
							$playbtn.css('cursor','default');
						}
					}
				});
			}
		});
		if (options.rating_url){
			$slider.find('.fav-btn').live('click',function(){
				var	$favbtn	= $(this);
				var	$desc	= $(this).parent();
				var	$slide	= $desc.parent();
				var	id		= Math.round($slide.attr('id').replace('slide_',''));
				var	row		= slides_list[id];
				if (row.rated){
					return	false;
				}
				$.ajax({
					type: 'POST',
					cache: false,
					url: options.rating_url,
					data: {action: 'onsite_meta',comment: row.item_id,type:'r'},
					dataType: 'json',
					success: function(data){
						if (data && data.id){
							//	do some magic
							
							slides_list[id].rating++;
							$favbtn.text(slides_list[id].rating);
							$favbtn.die('click');	// figure out
							row.rated	= true;
							$favbtn.css('cursor','default');
						}
					}
				});
			});
		}	//	end if (options.rating_url)
	}
	
	


$.fn.myVideoSlider = function(options){
	
		var	options = $.extend({
			slider_size: 1,
			desc_template: '<div></div>',
			slide_template: '<li></li>',
			url: false,
			rating_url: false,
			complete: new Function(),
			slide_border: false
		}, options);

		var	$slider_container	= $(this);
		var	$slider_wrapper		= $slider_container.find('.wrapper');
		var	$slider				= $slider_wrapper.find('.slider');
		var	$slide_left			= $slider_container.find('.left');
		var	$slide_right		= $slider_container.find('.right');
		var $point				=$(".point");

		var	slider_length	= $slider.find('.slide').length;
		var	slider_position	= 0;
		var	prev_slide		= false;
		var	slides_list		= new Array();
		var	last_page		= 1;
		var	load_slides		= options.url?true:false;
		var	slide_width		= 360;
		
		//console.log('l',slider_length);
		
		//$slide_left	.hide();
		for (var k=0;k<slider_length;k++){
			$(".toch_container").append("<a class='point'></a>");
			}
		get_active_point();
		$area=$(".toch_container");
		$("a.point").click(function(){
			$(".toch_container a.point").removeClass('active_point');
			$(this).addClass('active_point');
			ind=$("a.point").index(this);
			//console.log('index',ind);
			prev=slider_position;
			slider_position=ind;
			//console.log('slider_pos',slider_position);
		//	console.log('slider_prev',prev);
		//	console.log('slider_w',slider_position*slide_width);
			if (prev<slider_position){
			$slider.animate({
				marginLeft:'-='+(slider_position-prev)*slide_width
			}, 'slow', 'linear', function(){
				
				
				//	upload next slider_size slides
			});
			}
			if (prev>slider_position){
			$slider.animate({
				marginLeft:'+='+(prev-slider_position)*slide_width
			}, 'slow', 'linear', function(){
				
				
				//	upload next slider_size slides
			});
			}
			})
			
			function get_active_point(){
				$(".toch_container a.point").removeClass('active_point');
				$(".toch_container a.point").eq(slider_position).addClass('active_point');
				}
		
		//$(".toch_container a.point").eq(slider_position+1).addClass('active_point');	
		$slide_right.click(function(){
			//$(".toch_container a.point").removeClass('active_point');
			slider_position++;
		//	console.log('slider_pos',slider_position);
			get_active_point();
			///$(".toch_container a.point").eq(slider_position).addClass('active_point');
			$slide_left.show();
			if (!load_slides){
				if (slider_position+options.slider_size==slider_length){
					$slide_right.addClass('inactive');
					//get_active_point();
					
					
				}
			}
//			console.log(slider_position+' '+slider_length+' '+slider_size);
			if (slider_position>slider_length-options.slider_size){
				kp=slider_position-1;
				$(".toch_container a.point").eq(kp).addClass('active_point');
				slider_position	= slider_length-options.slider_size;
				return	false;
				
			}
			if (slider_position==1){
				$slide_left.removeClass('inactive');
			}
			$l=slide_width;
			
			//alert($l+" "+slider_position);
			$slider.animate({
				marginLeft:'-='+$l
			}, 'slow', 'linear', function(){
				
				
				//	upload next slider_size slides
			});
		
		});
		$slide_left.click(function(){
			prev_slide=true;
			slider_position--;
			//$(".toch_container a.point").removeClass('active_point');
			//console.log('slider_pos',slider_position);
			//$(".toch_container a.point").eq(slider_position).addClass('active_point');
			get_active_point();
			//alert(slider_position);
			if (slider_position<=0){
				$slide_left.addClass('inactive');
			}
			if (slider_position<0){
				$(".toch_container a.point").removeClass('active_point');
				kp=0;
				$(".toch_container a.point").eq(kp).addClass('active_point');
				slider_position	= 0;
				return	false;
			}
			if (slider_position+options.slider_size<slider_length){
				$slide_right.removeClass('inactive');
			}

			$slider.animate({
				marginLeft:'+='+slide_width
			}, 'slow', 'linear', function(){
			});

			
		});
		
return	false;

	}	


});




