﻿/* 20100705-1625 */ 

// GLOBAL
var tabSelected = "",
	tabPhotosClicked = false,
	ajaxBaseUrl = '',
	metricsLoaded = false,
	modulesArray = [],
	countryPage = window.location.hostname.split("."),
	
	AD_PLACEHOLDER_SELECTOR_PREFIX = "#tgm-",
	AD_CONTAINER_SELECTOR_PREFIX = "#ctn-tgm-",	
	VERTICAL_FLOATED_ADS = ['buttontools', 'bottom', 'textlinks'];
	
countryPage = countryPage[countryPage.length-1].replace("/", "");

// positionAds
var positionAds = function (selector, positioner) {
	if(!$(positioner).length || !$(selector).length) {
		modMan.log.critical(
			'Erro ao localizar container de origem ou destino para publicidade.\n'+
			'selector de origem: ' + selector + '\n'+
			'selector de destino: ' + positioner
		);
		return;
	}
	$(selector).css("top",$(positioner).offset().top);
}

var placeAds = function(){
	try {
		if(VERTICAL_FLOATED_ADS.length){
			window.setTimeout(function(){								
				for(var i = 0, currentTag; currentTag = VERTICAL_FLOATED_ADS[i]; i++){
					if($(AD_PLACEHOLDER_SELECTOR_PREFIX + currentTag).length && $(AD_CONTAINER_SELECTOR_PREFIX + currentTag).length)  {
						modMan.log.checkpoint('Reposicionando ad ' + currentTag);
						positionAds(AD_CONTAINER_SELECTOR_PREFIX + currentTag, AD_PLACEHOLDER_SELECTOR_PREFIX + currentTag);
					} else modMan.log.warning('Não foi possível encontrar a peça <strong>' + currentTag + '</strong> para reposicioná-la. <br/>Placeholder: ' + !!($(AD_PLACEHOLDER_SELECTOR_PREFIX + currentTag).length) + ' » Container: ' + !!($(AD_CONTAINER_SELECTOR_PREFIX+ currentTag).length));
				}
			}, 100);
		}
	} catch(e){
		modMan.log.critical('[Erro encontrado na placeAds] » ' + e.message);					
	}
}

var getMetricsTypeParam = function(tabSelected){
	tabSelected = tabSelected || '';
	var type = '';
	
	switch(tabSelected) {
		case "itm-article":
			type = "NOT";
			break;
		case "itm-video":
			type = "VID";
			break;
		case "itm-info":
			type = "IFG";
			break;
		case "itm-photos":
			type = "GAL";
			break;
		default:
			type = "NOT";
	}
	
	return type;	
}

// Font resize
var fontResize = function(selector) {
	var resize = function(element) {
		var range = 20;

		var indexSize = $(selector).find(".ctn-fontsize a").index(element);
		var newSize = indexSize * range + 80;

		// Active
		$(selector).find(".ctn-fontsize a").removeClass("act");
		element.addClass("act");
	
		// Adjust size
		$(selector).find(".fontsize").each(function() {
			$(this).css("font-size",newSize+"%");
		});
	}

	$(selector).find(".ctn-fontsize a").click(function(evt) {
		resize($(this));
		evt.preventDefault();
	});
}


// Pages
var navigationPages = function() {
	
	var $articleContainer = $("#article"),
		$anchor = $("a[name='header']"),
		$controls = $articleContainer.find(".pages"),
		$previousButton = $controls.find("a:first"),
		$nextButton = $controls.find("a:last"),
		$navigationLevel = $controls.find("strong"),		
		
		anchorPositionX = ($anchor.length) ? $anchor.offset().top : 0,
		currentPage = 1,
		TOTAL_PAGES = $navigationLevel.find("span").html(),
		OF = modMan.globals.page.lang == 'en' ? ' of ' : ' de ';

	var navigate = function(action) {
		$articleContainer.find(".p"+currentPage).hide();
		currentPage = currentPage+action;
		$articleContainer.find(".p"+currentPage).show();

		$navigationLevel.html(currentPage + OF + TOTAL_PAGES);

		// Class prev/next button
		if (currentPage == 1) $previousButton.removeClass("p").addClass("p-off");
		else $previousButton.removeClass("p-off").addClass("p");
		
		if (currentPage == TOTAL_PAGES) $nextButton.removeClass("n").addClass("n-off"); 
		else $nextButton.removeClass("n-off").addClass("n");
	}

	// navigation controls
	$controls.click(function(evt) {
		var target = evt.target;

		if(target.tagName == "A" && !(/-off$/).test(target.className)){
			if ($(target).hasClass("p")) navigate(-1);
			if ($(target).hasClass("n")) navigate(1);
			
			// scroll to anchor position
			scrollTo(0, anchorPositionX);
		}
		
		modMan.tools.metrics.regTraffic();
		
		placeAds();
		
		evt.preventDefault(); // prevent default behavior
	});
}();

// Layers
var createLayer = function(url,callback) {
	var info_service = (window.terra_info_service) ? window.terra_info_service['itm-article'] || terra_info_service : '';
	if(modMan && modMan.globals.page.country == "US" && info_service && info_service.match(/PubUS/i)) url = '/shared_tpl/' + url;
	else if(modMan && info_service && info_service.match(/PubMX/i)) url = '/' + url;
	$(".ctn-over").remove();
	$.ajax({
		url: url,
		cache: false,
		success: function(html){
			$("#trr-ctn-body").prepend(html);

			// Close layer
			$(".ctn-over .lnk-close").click(function(evt) {
				$(".ctn-over").remove();

				evt.preventDefault(); // prevent default behavior
			});

			if (typeof(callback) != "undefined") callback();
		}
	});
}

// Printing
$(".ico-print").click(function(evt) {
	createLayer("printing.html",function() {
		// Position
		$(".ctn-print").css("top",$(".mod-content:eq(1)").offset().top+"px");

		//  Title
		$(".ctn-print .mod-content").before($(".mod-title").clone());

		// Content
		$(".col-left-full .printing").each(function() {
			$(".ctn-print .mod-content").append($(this).clone());
		});

		// Mirror content classes inside the printable div
		$(".ctn-print .mod-content:eq(0)").attr('class', $(".mod-content:eq(1)").attr('class'));

		// Remove links
		$(".ctn-print .contextlink").each(function() {$(this).replaceWith("<span>"+$(this).text()+"</span>");});

		// Links
		$(".ctn-print .mod-links li a").each(function() {
			$(this).after("<cite>"+$(this).attr("href")+"</cite>");
		});

		// Bottom
		$(".ctn-bottom span").html($(".ctn-print .mod-title a strong").html());
		$(".ctn-bottom strong").html(window.location.href);
		if ($("#article").size() > 0) {
			$(".ctn-bottom .txt-gallery").hide();
		} else {
			$(".ctn-bottom .txt-article").hide();
		}

		if ($(".img-article").size() > 0) {
			$.checkboxRadiobutton($(".ctn-print"));
		} else {
			$(".ctn-commands label, input").hide();
		}
		fontResize(".ctn-print");
		$.include(["_js/jquery.jqdnr.js","_js/jquery.wheel.js","_js/jquery.elementposition.js","_js/jquery.scrolling.js"], function(){
			$(".ctn-print .scrolling").scrolling();
		});

		// Print
		$(".ctn-print .btn-print").click(function() {
			window.print();
			return false;
		});

		// Show hide photo
		$(".ctn-print .chk-replace, .ctn-print input:checkbox + label").mouseup(function() {
			// objCheckbox
			var objCheckbox = null;
			if ($(this).is("label")) {
				objCheckbox = $(this).prev();
			} else {
				objCheckbox = $(this).next();
			}

			if (objCheckbox.attr("checked")) {
				$(".ctn-print .img-article").show();
			} else {
				$(".ctn-print .img-article").hide();
			}
		});
	});
	
	modMan.tools.metrics.regEvent('Imprimir'); // hit metrics
	
	evt.preventDefault(); // prevent default behavior
});

fontResize(".col-left-full");

var $articleContainer = $("#article");
if(!$articleContainer.length) modMan.tools.metrics.regTraffic();
else {
	$(".col-left-full .tabs").tabs();

	// Author + About info > V6 Compliance
	var misplacedTag = $("#SearchKey_Text1 dl");
	if (misplacedTag.length){
		var missplacedHTML = misplacedTag.html() || null,
			authorInformationTag = $('dl.author:first');
		if(missplacedHTML) {
			authorInformationTag.html(missplacedHTML);
			misplacedTag.remove();
		}
		if(!authorInformationTag.find('dt').length){
			authorInformationTag.html("<dt>&nbsp;</dt><dd>&nbsp;</dd>");
		}
	}

	// Tabs events		
	$(".col-left-full .tab-list li a").click(function() {
		tabSelected = $(this).attr("class").split(" ")[0];
		
		// Hit metrics
		if(!window.trrMetrics){ // old way (trecho mantido para facilitar a implementação em produção)
			if(metricsLoaded) modMan.tools.metrics.regTraffic({terra_info_type:getMetricsTypeParam(tabSelected)});
			else {
				modMan.tools.metrics.regTraffic({ 
					terra_info_service : (window.terra_info_service || {})[tabSelected] || window.terra_info_service,
					terra_info_channel: (window.terra_info_channel || {})[tabSelected] || window.terra_info_channel,
					terra_info_channeldetail: (window.terra_info_channeldetail || {})[tabSelected] || window.terra_info_channeldetail,
					terra_info_type: (window.terra_info_type || {})[tabSelected] || getMetricsTypeParam(tabSelected),
					terra_info_id: (window.terra_info_id || {})[tabSelected] || window.terra_info_id,
					
					terra_stats_regCLK: (window.terra_stats_regCLK || {})[tabSelected] || window.terra_stats_regCLK,
					terra_stats_idCrtfc: (window.terra_stats_idCrtfc || {})[tabSelected] || window.terra_stats_idCrtfc,
					terra_stats_uv_c: (window.uv_c || window.terra_stats_uv_c || {})[tabSelected] || window.terra_stats_uv_c || window.uv_c
				});
				metricsLoaded = true;
			}
		} else {
		
			var tabName = tabSelected.match(/article|video|photos|info$/) || 'article',
				metricsDeclarationScope = (window.trrMetrics && window.trrMetrics[tabName]) ? window.trrMetrics[tabName] : window;
			
			// Hit metrics
			modMan.tools.metrics.regTraffic({ 
				terra_info_service: metricsDeclarationScope.terra_info_service || '',
				terra_info_channel: metricsDeclarationScope.terra_info_channel || '',
				terra_info_channeldetail: metricsDeclarationScope.terra_info_channeldetail || '',
				terra_info_type: metricsDeclarationScope.terra_info_type || '',
				terra_info_id: metricsDeclarationScope.terra_info_id || '',
				
				terra_stats_regCLK: metricsDeclarationScope.terra_stats_regCLK || '',
				terra_stats_idCrtfc: metricsDeclarationScope.terra_stats_idCrtfc || '',
				terra_stats_uv_c: metricsDeclarationScope.terra_stats_uv_c || metricsDeclarationScope.uv_c || ''
			});
		}

		// Create / destroy video
		var objLink = $(this);
		$(".ctn-video").each(function() {
			// Destroy
			if ($(this).find("iframe").size() > 0) {
				$(this).prepend('<a href="'+$(".ctn-video iframe").attr("src")+'"></a>');
				$(this).find("iframe").remove();
			}
		});

		// Create
		$(objLink.attr("href").replace("#t","#")).find(".ctn-video").prepend('<iframe height="386" frameborder="0" width="480" scrolling="no" src="'+$(objLink.attr("href").replace("#t","#")).find(".ctn-video a").attr("href")+'">');
		$(objLink.attr("href").replace("#t","#")).find(".ctn-video a").remove();

		// Show hide divAnnotatio
		if ($(this).hasClass("itm-article")) {
			$("#divAnnotatio").show();
			$("#divAnnotatio").next().show();
		} else {
			$("#divAnnotatio").hide();
			$("#divAnnotatio").next().hide();
		}
		
		// Show hide tgm-buttontools
		var deployPlaceHolder = $("#tgm-buttontools"),
			deployConainer = $("#ctn-tgm-buttontools");			
		if(deployPlaceHolder.length && !deployConainer.length && tabSelected == "itm-article"){
			$(document).ready(function(){
				var containerTag = document.createElement('div');
					containerTag.id = "ctn-tgm-buttontools";
					containerTag.className = "ctn-tgm-advertising";
					containerTag.innerHTML = "<!-- AD tgm-buttontools PLACEHOLDER -->";
				
				$('#trr-ctn-advertising').append(containerTag);	
				reloadADS(["buttontools"]);
		
				placeAds();
				deployConainer = $("#ctn-tgm-buttontools");			
			});
		}
		if(deployConainer.length){
			if ($(this).hasClass("itm-article")) {
				$("#ctn-tgm-buttontools").show();
			} else {
				$("#ctn-tgm-buttontools").hide();
			}		
		}
		
		// Place Ads
		placeAds();
	});

	// Photos
	var setPhotos = function() {

		objGalleryModule = (
			{
				id:"modPhotoGallery",
				selector:'.mod-photos',
				loadSkin:false,
				params:{
					type:"gallery",
					mediaType:"photo",
					autoplay:false,
					carousel:false,
					effects:true,
					onImageLoad:function(imageSrc, loadedImagesNumber){
						placeAds();
						
						if(loadedImagesNumber > 1) modMan.tools.metrics.regTraffic();
					}
				}
			}
		);

		if ((/#tphotos/).test(document.location)) {
			modulesArray.push(objGalleryModule);
		} else {
			modMan.load([objGalleryModule]);
		}

		$('.col-left-full .tab-list a.itm-photos').unbind("click",setPhotos);
	}
	$('.col-left-full .tab-list a.itm-photos').bind("click",setPhotos);

	// Start
	$(".col-left-full .tab-list li.selected a").click();

	// Aux tabs
	$(".nav .cross a").click(function() {
		$(".tab-list ."+$(this).attr("class")).trigger("click");
		window.scrollTo(0,0);
	});

}

if ($(".col-left-full .combolist").size() > 0) {
	$(".col-left-full .combolist").combobox();
	$(".col-left-full .combolist .scrolling").scrolling();
	$(".col-left-full .combolist .clickout, .col-left-full .combolist .cmb-value").initClickOut();
}

if ($(".mod-latestnews").size() > 0) {
	$(".mod-latestnews").tabs();
}

// MODMAN
if (typeof(modMan) != "undefined"){

	if($('.mod-gallery').length) {
		modulesArray.push(
			{
				id:"modPhotoGallery",
				selector:'.mod-gallery',
				loadSkin:false,
				params:{				
					onImageLoad:function(imageSrc, loadedImagesNumber){
						placeAds();
						
						if(loadedImagesNumber > 1) modMan.tools.metrics.regTraffic();
					},
					type:"gallery",
					mediaType:"photo",
					autoplay:false,
					carousel:false,
					effects:true
				}
			}
		);
	}
	
	if($('.mod-photoslist').length) {
		modulesArray.push(
			{
				id:"modPhotoGallery",
				selector:'.mod-photoslist',
				loadSkin:false,
				params:{						
					type:"list",
					mediaType:"photo",
					autoplay:true,
					carousel:true,
					effects:true,
					onImageLoad:function(imageSrc, loadedImagesNumber){
						placeAds();
						
						if(loadedImagesNumber > 1) modMan.tools.metrics.regTraffic();
					}
				}
			}
		);
	}
	
	if($('.mod-videoslist').length) {
		modulesArray.push(
			{
				id:"modPhotoGallery",
				selector:'.mod-videoslist',
				loadSkin:false,
				params:{						
					type:"list",
					mediaType:"video",
					autoplay:true,
					carousel:true,
					effects:true,
					onImageLoad:function(imageSrc, loadedImagesNumber){
						placeAds();
						
						if(loadedImagesNumber > 1) modMan.tools.metrics.regTraffic();
					}
				}
			}
		);
	}
	
	if($(".mod-poll").length){
		modulesArray.push(
			{
				id:"modPoll",
				selector:'.mod-poll',
				loadSkin:false
			}
		);
	}
	

	if($(".mod-audience_pulse_ver").length){
		modulesArray.push(
			{
				id:"modAudiencePulseVertical",
				selector:'.mod-audience_pulse_ver:first',
				loadSkin:false
			}
		);
	}
	
	if($(".mod-clock").length){
		modulesArray.push(
			{
				id:"modClock",
				selector:'.mod-clock',
				skinName:"default",
				loadSkin:false
			}
		);
	}
	
	if($(".mod-terratvsonora .mod-terratv .tab-content").length){
		modulesArray.push(
			{
				id:"modMulti",
				selector:'.mod-terratvsonora',
				loadSkin:false,
				params:{
				modules:[
			{
			id:"modTerraTv",
			loadSkin:false,
			skinName:"multi_abas",
			selector:'.mod-terratv',
			params:{
				width:296,
				height:222,
				request_url: (window.Feeds && window.Feeds.terraTV) ?  window.Feeds.terraTV : "http://s1.trrsf.com.br/carousel/br/terratv/br_diversao_terratv.js"
			}
		},
		{
			id:"modSonora",
			loadSkin:true,
			skinName:"2010"
		}
	]
	}
	}
	);
	} else {
		modulesArray.push(
		{
		id:"modMulti",
		selector:'.mod-terratvsonora',
		loadSkin:false,
		params:{
		modules:[
		{
		id:"modTerraTv",
		selector:'.mod-terratv',
		loadSkin:false,
		params:{
		request_url: (window.Feeds && window.Feeds.terraTV) ?  window.Feeds.terraTV : "http://s1.trrsf.com.br/carousel/br/terratv/br_diversao_terratv.js"
		}
		},
		{
		id:"modSonora",
		loadSkin:true,
		skinName:"multi"
		}
		]
		}
		}
		);
	}


	modMan.start({
		configs:{
			//baseURL:((/hlg\./).exec(document.location)) ? "http://hlg.trrsf.com.br/atm/2/core/" : 'http://s2.trrsf.com.br/atm/2/core/',
			pageLang:'pt',
			pageCountry:'BR',
			lazyLoad:false,
			transitionEffects:false
		},
		modules:modulesArray
	});
}

// Socialize
var $contentSharerTrigger = $('.itm-socialize a:first');
if($contentSharerTrigger.length){
	$contentSharerTrigger.one('click', function(evt){
		if(evt.target.href){
			evt.preventDefault();
			
			modMan.load([
				{
					id:'contentSharer',
					selector:$contentSharerTrigger,
					loadSkin:true,
					params:{
						onLoad:function(commandsOBJ){
							commandsOBJ.toggleLayer();
							$contentSharerTrigger = $('.itm-socialize a:first');
						}
					}
				}
			]);
			
			evt.stopPropagation();			
		}
	});
	
	$('.itm-socialize a:eq(1)').click(function(evt){
		evt.preventDefault();
		$contentSharerTrigger.click();
		window.scrollTo(0,0);
	});
	
}

// Show banner
var showBanner = function(selector) {
	window.setTimeout(function(){
		if (countryPage == "br") {
			$(selector).attr("src","http://s1.trrsf.com.br/atm/2/core/_tpl/advertising.html?tag="+tgmKey+"&area=comments&site="+(typeof(site)!="undefined"?site:"")+"&zone="+(typeof(zone)!="undefined"?zone:""));
		} else {
			$(selector).attr("src","http://s1.trrsf.com/atm/2/core/_tpl/advertising.html?tag="+tgmKey+"&area=comments&site="+(typeof(site)!="undefined"?site:"")+"&zone="+(typeof(zone)!="undefined"?zone:""));
		}
	},1000);
}

// Reload ADS
var reloadADS = function(arrADS) {
	if(!arrADS.length) modMan.log.critical('Parâmetro incorreto transmitido à função "reloadADS". O objeto deve ser do tipo Array. Valor atual: <strong>' + typeof(arrADS)+'</strong>.');

	var CONTAINER_SELECTOR_PREFIX = '#ctn-tgm-',
		PLACEHOLDER_SELECTOR_PREFIX = '#tgm-',
		
		PROXY_TEMPLATE_URL = (/BR/i).test(modMan.globals.page.country) ? 'http://s1.trrsf.com.br/atm/2/core/_tpl/' : 'http://s1.trrsf.com/atm/2/core/_tpl/';
		
		PROXY_TEMPLATE_URL += 'advertising.html';
		
	var framedAdUrlTPL = PROXY_TEMPLATE_URL+"?tag="+tgmKey+"&area=#area#&site="+(window.site || '')+"&zone="+(window.zone || '');
	
	var constructor = function(){
		while(arrADS.length){
			var currentArea = arrADS.shift(),
				$container = $(CONTAINER_SELECTOR_PREFIX + currentArea),
				$placeholder = $(PLACEHOLDER_SELECTOR_PREFIX + currentArea);
			
			if($container.length && $placeholder.length){
				var $framedAdElement = $container.find('iframe:first');
				
				if($framedAdElement.length) $framedAdElement.attr("src",framedAdUrlTPL.replace("#area#",currentArea));
				else $container.html('<iframe src="'+framedAdUrlTPL.replace("#area#",currentArea)+'" scrolling="no" width="'+$placeholder.width()+'" height="'+$placeholder.height()+'" allowtransparency="yes" frameborder="0"></iframe>');
			} else {
				modMan.log.warning('Não foi possível localizar a publicidade com os seletores <strong>'+CONTAINER_SELECTOR_PREFIX + currentArea+'</strong> ou <strong>'+PLACEHOLDER_SELECTOR_PREFIX + currentArea+'</strong>.');
			}
		}
	}
	
	return constructor();
}

$(".lst-photos a, .col-left-full .tab-list li a, .nav .controls a:eq(1), .nav .controls a:eq(2)").click(function() {
	var adsList = ["top", "right", "pbuttons1", "pbuttons2", "textlinks"];
	
	var tgmDeployContainer = $('#ctn-tgm-buttontools');
	if(tgmDeployContainer.length && $(this).hasClass('itm-article')) adsList.push("buttontools");
	
	window.setTimeout(function(){
		reloadADS(adsList);
	},700);
});

// ANNOTATIO
var $annotatioContainer = $("#divAnnotatio");
if(!$annotatioContainer.length) modMan.log.critical('Não foi possível localizar o elemento container para o módulo de comentários');
else if(!window.TrrTransversais) modMan.log.critical('Não foi possível localizar o objecto <strong>TrrTransversais</strong>. Por favor, verifique se o include correspondente foi realizado.');
else {
	try { // extra care
		modMan.log.checkpoint('Carregando sistema de comentários.');
		
		window.showBanner = function(selector) {
			var $selector = $(selector);
			window.setTimeout(function(){
				if (modMan.globals.page.country == "BR") {
					$selector.attr("src","http://s1.trrsf.com.br/atm/3/core/_tpl/advertising.html?tag="+tgmKey+"&area=comments&site="+(typeof(site)!="undefined"?site:"")+"&zone="+(typeof(zone)!="undefined"?zone:""));
				} else {
					$selector.attr("src","http://s1.trrsf.com/atn/3/core/_tpl/advertising.html?tag="+tgmKey+"&area=comments&site="+(typeof(site)!="undefined"?site:"")+"&zone="+(typeof(zone)!="undefined"?zone:""));
				}
			},1000);
		}

		var annotatio = new function(){
		
			var annotatioInstance = null,
				metricsValues = modMan.tools.metrics.getCurrentValues(),
				tplUrl = (TrrTransversais.Annotatio.version && TrrTransversais.Annotatio.version.match && TrrTransversais.Annotatio.version.match(/^\d/) >= 3) ? 'http://s2.trrsf.com.br/transversais/comments/v3.0/templates/templateFull.htm' : "http://s2.trrsf.com.br/transversais/comments/v2.1/templates/templateFull.htm",
				contextParams = { 
					//"application": metricsValues.terra_info_service || '',
					"application": 'Pubv6',
					"objectId": metricsValues.terra_info_id || 'teste_webdev',
					"objectType" : (metricsValues.terra_info_type == 'GAL') ? 'GAL' : 'NOT',
					"pageSize": 10,
					"pageNum": 1,
					"orderby": "datedesc",
					"uri" : location.href || '',
					"groupPath" : window.Terra_info_channel || window.annotatio_groupPath || metricsValues.terra_info_channel || '',
					"objectDescription" : window.annotatio_objectDescription || '',
					"imgThumbPath" : window.annotatio_imgThumbPath || '',
					"absDescription" : window.annotatio_absDescription || ''
				},
				interfaceParams = { 
					 "lang": (modMan.globals.page.country == 'BR') ? "PT-BR" : (modMan.globals.page.lang == 'es' ? 'ES-ES' : 'EN-US'),
					 "wsUrl": "http://comments.wsv.terra.com",
					 "callback": {
						"init": function(data){
							modMan.log.checkpoint('[Annotatio] » Disparando callback do init.');
							try{
								$annotatioContainer.find('#socialCommentBox a, .btComment').bind('click', function(){
									modMan.tools.metrics.regEvent('Comentar');
								});
								
								var arrBtComments = ["btComment1", "btComment2"]; // ID´s dos elementos que serão exibidos ao carregar-se o transversal de comentários.
								for(var a=0;a < arrBtComments.length;a++){
									var commentButton = document.getElementById(arrBtComments[a]);
									if(commentButton) commentButton.style.display = '';
								}
								
								// Popula divs que necessitem do total de comentarios
								var arrTotalComments = ["dd-total-comments"]; // ID´s dos elementos que serão receberão o total de comentários
								for(var a=0;a < arrTotalComments.length;a++){
									document.getElementById(arrTotalComments[a]).innerHTML = data.total_comments;									
								}
							}catch(e){
								modMan.log.critical('[Erro encontrado na função de callback do sistema de comentários] » ' + e.message);								
							} finally {
								placeAds();									
							}
						},
						"replies": function() {
							placeAds();
						}
					 }
				};
			
			var load = function(){
				if(!annotatioInstance) annotatioInstance = new TrrTransversais.AnnotatioInterface(interfaceParams);
				annotatioInstance.mountTransversal(tplUrl,"divAnnotatio",contextParams);
			}
			
			this.reload = load;
			
			// constructor >>
				$(document).ready(function(){
					// double-check for wrong templates
					if(window.tpl) return modMan.log.critical('Annotatio instanciado via tag SCRIPT contida no template. Cancelando chamada do deployment.js');
				
					// double-check for affectedAds
					if(!VERTICAL_FLOATED_ADS.length) modMan.log.warning('Nenhuma publicidade será reposicionada pelo sistema de comentários.' );
				
					load();	
					
					// Attach comment triggers
					var $jumpToTabTrigger = $('.col-left-full ol a:first')
					$(".mod-socialize .itm-comment a, a.btComment").unbind('click').click(function(evt) {
						
						modMan.tools.metrics.regEvent('Comentar'); // hit metrics
						
						if(!$articleContainer.is(':visible')) $jumpToTabTrigger.trigger('click'); // return to article's tab

						// scroll to anchor position (comments)
						//var anchor = $("a[name='"+this.href.match(/[^#]*$/)+"']"),
						var anchor = $annotatioContainer,
							anchorPositionX = (anchor.length) ? anchor.offset().top : 0;
							
						scrollTo(0, anchorPositionX); 

						try{ annotatioInstance.showModalForm('insert'); }catch(e){} // opens Annotatio's new message layer

						evt.preventDefault(); // prevent default behavior
					});
				});
			// constructor <<
		}
		
	} catch(e) {
		e.message = "[Erro na configuração do API do Annotatio] » " + e.message;
		throw e;
	}
}

$(".ctn-fontsize a, .col-left-full .tab-list li a, .mod-audience_pulse_ver .tab-list:first li a").bind('click', function() {
	placeAds();
});

var $sendMailTrigger = $('#sendMailTrigger');
if($sendMailTrigger.length){
	$sendMailTrigger.one('click', function(evt){
		
		var target = evt.target,
			tagNameLimitEXP = /^(a|li)$/i;
		
		while(!target.tagName.match(tagNameLimitEXP)) {
			target = target.parentNode;
		}
		
		if(target.href){
			evt.preventDefault();
			
			modMan.load([			
				{
					id:'sendMail',
					selector:$sendMailTrigger,
					loadSkin:false,
					params:{
						sendTo:'faleconosco.eleicoes2010@corp.terra.com.br',											  
						onLoad:function(commandsOBJ){
							commandsOBJ.toggleLayer();
						},
						onToggle:function(){
							
						}
					}
				}
			]);
			
			evt.stopPropagation();			
		}
	});
}

/***** CONTEXTLINK TEMP *****/
$(".contextlink").click(function() {
	var element = $(this);
	createLayer("context-links.html",function() {
		// Position
		$(".mod-contextlinks").css({
			"left":element.offset().left+"px",
			"top":element.offset().top+element.height()+"px"
		});
	});
	return false;
});

$(document).ready(function() { placeAds();} );
$(window).load(function(){ placeAds(); });