function Videos(){
	var self = this;
	
	
	/* =CONFIGURAÇÕES INICIAIS
	---------------------------------------*/
	this.um_types = "V";
	this.um_order_by = "mostPopular";
	this.um_current_page = 1;
	this.um_i_per_page = 8;
	this.um_cod_profile = {};
	this.um_response_list = {};
	this.um_response_media = {};
	
	this.init = function(){
		self.um_cod_profile["shopping"] = "eecvodxsik4y"
		self.um_cod_profile["jogos"]    = "3mk9h8436th5";
		
		if(location.href.toLowerCase().indexOf("mediaid=") > -1){
			self.get_media();
		}else{
			self.get_list_videos();
		}
	};
	
	
	/* =FUNÇÃO QUE RECEBE A RESPOSTA DA API PARA A LISTATEM DE VÍDEOS
	---------------------------------------*/
	this.set_response_list = function(obj){
		self.um_response_list = obj;
		$("head script:last").remove();
		
		self.insert_videos_related();
	};
	
	
	/* =FUNÇÃO QUE RECEBE A RESPOSTA DA API PARA UMA MÍDIA ESPECÍFICA
	---------------------------------------*/
	this.set_response_media = function(obj){
		self.um_response_media = obj;
		$("head script:last").remove();
		
		self.show_media();
	};
	
	
	/* =VÍDEOS RELACIONADOS
	---------------------------------------*/
	this.insert_videos_related = function(){
		if(!self.um_response_list.list){
			return;
		}
	
		var i = 0;
		var list = self.um_response_list.list;
		var html = [];
		var loc = location.href.replace(/\?.*/gim,'');
		var product_offers = $("#product").size() > 0;
		var thumbnail_size = product_offers ? "small" : "medium";
		
		if(list.length == 0 && $("#conteudo").attr('class') == "jogos"){
			$("#conteudo").removeClass("jogos").addClass("null");
			self.get_list_videos();
			return;
		}
		
		if(list.length == 0){
			return;
		}
		
		var url_video = loc.indexOf('videos/') > -1 ? loc : loc.replace('uol.com.br/','uol.com.br/videos/');
		
		if(product_offers){
			html.push('<div id="product-videos">');
			html.push('<h4 class="tl">Vídeos Relacionados</h4>');
			
			var pv_height = list.length * 88 > 295 ? 295 : list.length * 88;
			html.push('<ul style="height:'+ pv_height +'px;">');
		}else{
			html.push('<ul>');
		}
		
		while(i < list.length){
			var current = list[i];
			var current_url = url_video +'?mediaId='+ current.mediaId;
			
			html.push('<li>');
			
			html.push('<a class="image" href="'+ current_url +'">');
			html.push('<img src="'+ current.thumbnail +'-'+ thumbnail_size +'.jpg" />');
			html.push('</a><a class="stats" href="'+ current_url +'">');
			html.push('<span class="title">'+ current.title +'</span>');
			html.push('<span class="views">');
			html.push('Visualiza&ccedil;&otilde;es: '+ current.views);
			html.push('</span>');
			html.push('</a>');
			
			html.push('</li>');

			i ++;
		}
		
		html.push('</ul>');
		
		if(product_offers){
			html.push('</div>');
			$('#vertical-cross-selling').before(html.join(""));
			var link_button = $('#product-videos ul li:eq(0) a').attr('href');
			var button = '<li class="go-to-videos"><span></span><a href="'+ link_button +'" rel="nofollow">Vídeo do produto</a></li>';
			$('#menu').prepend(button);
		}else{
			if($('#related-videos-mask').size() > 0){
				$('#related-videos-mask').append(html.join("")).find('a').click(self.click_related);
				$('#related-videos-mask ul').width($('#related-videos-mask ul li').size() * 135);
			}
		}
		
		$('#product-videos ul li:last').addClass('last');
	};
	
	
	/* =FAZ REQUISICAO NA API PARA UMA MÍDIA ESPECÍFICA
	---------------------------------------*/
	this.get_media = function(id){
		var url_media = "http://mais.uol.com.br/apiuol/chooseContents.js";
		var media_id = id || location.href.replace(/.*mediaId=([0-9]{1,})/gim,"$1");
		var iefix = ($.browser.msie && $.browser.version == 6 ? "start=new Date().getTime();for(i=0;i<1e7;i++){if((new Date().getTime()-start)>100)break;}" : "");
		
		var params = []
			params.push("ids="+ media_id);
			params.push("callback="+ iefix +"shop_videos.set_response_media");
			params.push("type=media");
			params.push("jsoncallback=?");
		
		var jsonp_url = url_media +"?"+ params.join('&');
		
		$.getJSON(jsonp_url);
	};
	
	
	/* =INSERI O LINK "VER NOVAMENTE" QUANDO O VÍDEO ACABA
	---------------------------------------*/
	this.end_video = function(){
		var html = '<a href="'+ window.location.toString() +'#ver-novamente" id="ver-novamente">Ver novamente</a>'
		var container = $("#player");
		container.html(html).find('a').click(function(e){
			e.stopPropagation(); e.preventDefault();
			self.show_media();
		});
	}
	
	
	/* =RETORNA O CÓDIGO DO PROFILE DEPENDENDO DA CATEGORIA
	---------------------------------------*/
	this.get_cod_profile = function(){
		var category = $("#conteudo").attr('class');
		var cod_profile = self.um_cod_profile["shopping"];
		
		if(self.um_cod_profile[category]){
			cod_profile = self.um_cod_profile[category];
		}
		
		return cod_profile;
	}
	
	
	/* =FAZ REQUISICAO NA API PARA UMA LISTAGEM DE VÍDEOS
	---------------------------------------*/
	this.get_list_videos = function(){
		if(!self.get_tags()) return;
		
		var url_list = "http://mais.uol.com.br/apiuol/mediasByTags.js";
		var iefix = ($.browser.msie && $.browser.version == 6 ? "start=new Date().getTime();for(i=0;i<1e7;i++){if((new Date().getTime()-start)>100)break;}" : "");
		
		var params = []
			params.push("tagIds="+ self.get_tags());
			params.push("index.orderBy="+ self.um_order_by);
			params.push("index.currentPage="+ self.um_current_page);
			params.push("index.itemsPerPage="+ self.um_i_per_page);
			params.push("codProfile="+ self.get_cod_profile());
			params.push("show=fromAuthor");
			params.push("callback="+ iefix +"shop_videos.set_response_list");
			params.push("jsoncallback=?");
			
		var jsonp_url = url_list +"?"+ params.join('&');
		$.getJSON(jsonp_url);
	};
	
	
	/* =EXIBE SWF COM PLAYER DE VÍDEO
	---------------------------------------*/
	this.show_media = function(){
		if(!self.um_response_media.list) return;
		
		var media = self.um_response_media.list[0];
		
		um_player = new SWFObject(media.player, "uol_media", "100%", "100%", "9", "#000000");
		
		um_player.addVariable("mediaId",media.id);
		um_player.addVariable("start_loading","true");
		um_player.addVariable("start_paused","false");
		um_player.addVariable("show_related","false");
		um_player.addVariable("embed","false");

		um_player.addParam("menu","false");
		um_player.addParam("quality","high");
		um_player.addParam("allowScriptAccess","always");
		um_player.addParam("allowFullScreen", "true");
		um_player.addParam("wmode","transparent");
		
		um_player.write("player");
		
		if($('#related-videos-mask ul, #product-videos').size() == 0) self.get_list_videos();
	};
	
	
	/* =PEGA OS ID DA TAG NA PÁGINA
	---------------------------------------*/
	this.get_tags = function(){
		if($.trim($('input[@name=productVideoTagId]').val()) == "") return;
		
		var tag_id = $('input[@name=productVideoTagId]').val();
		return tag_id;
	};
	
	
	/* =FUNÇÃO DISPARADA QUANDO UM VÍDEO RELACIONADO É CLICADO
	---------------------------------------*/
	this.click_related = function(e){
		e.stopPropagation(); e.preventDefault();
		
		var media_id = $(this).attr('href').replace(/.*mediaId=([0-9]{1,})/gim,"$1");
		
		if(!media_id){
			return;
		}
		
		self.get_media(media_id);
	};
};
var shop_videos = new Videos();
var uolmais = uolmais || {};
uolmais.player = uolmais.player || {};
uolmais.player.onEnd = shop_videos.end_video;

$(function(){
	shop_videos.init();
});



















































