﻿	var defineBlog = function() {
		var $j = jQuery.noConflict();
		
		switch(currentCountry){
		case 'br':
			var clickToVisite = "visitar blog &raquo;";
			var postsToday = "posts hoje";
			var blogsToday = "blogs hoje";
			var totalPosts = "posts";
			var totalBlogs = "blogs";
			break;
		default:
			var clickToVisite = "visitar el blog &raquo;";
			var postsToday = "posteos hoy";
			var blogsToday = "blogs hoy";
			var totalPosts = "posteos";
			var totalBlogs = "blogs";
		}
		
		
		var configs = {
				destacados: {
					mosaico: {
						divClass: "mosaico-destaques",
						ulClass: "mosaic",
						liClass: "ctn-imageoverzoom",
						aClass: "tmbImage",
						zoomClass: "ctn-zoom",
						template: "<li class=\"<!--#liClass#-->\"><a class=\"<!--#aClass#-->\" style=\"background:url(<!--#templateURL#-->/_img/destacados/<!--#country#-->/<!--#mosaicoIMG#-->) no-repeat center center;\"><!-- --></a><div class=\"<!--#zoomClass#--> <!--#mosaicoClass#-->\" style=\"display:none;\"><a href=\"javascript:showHideDest(<!--#incID#-->);\"><img src=\"<!--#templateURL#-->/_img/destacados/<!--#country#-->/<!--#mosaicoIMG#-->\" /></a></div></li>",
						templateClear: "<li class=\"clear\"><!-- --></li>"
						
					},
					conteudo: {
						divClass: "destacado",
						divID: "auto", //Automatic
						h2Class: "titulo-destacado",
						pClass: "texto-destacado",
						aClass: "link-visitar-blog",
						template: "	<div class=\"<!--#divClass#-->\" id=\"<!--#incID#-->\"  style=\"display: <!--#display-->;\"><h2 class=\"<!--#h2Class#-->\"><!--#title#--></h2><p class=\"<!--#pClass#-->\"><!--#body#--></p><p><a href=\"<!--#link#-->\" class=\"<!--#aClass#-->\">"+clickToVisite+"</a></p></div>"
					}
				},
				types: {			
					//Blogs Recentes
					//{"blog_counter": {"blogs_total": "", "blogs_today": "", "posts_total": "", "posts_today": ""}}
					
					"BLOG_COUNTS": {
						dataType: 'json',
						url: '../../../../ws/blog:blog_counters/'
					},
					
					//Blogs Recentes
					//{ "post_list": {"post": [{"username": "", "post_url": "", "post_name": "", "post_date": "", "blog_url": "", "blog_name": ""}, ...] } }
					
					"BLOG_RECT": {
								dataType: 'json',				
								url: 'ws/blog:blog_recent_blogs/maxitems=12'
					},
					
					//Posts Recentes
					//{ "blog_list": { "blog": [{"username": ["", ...], "blog_url": "", "blog_name": "", "blog_creation_date": "", "blog_last_updated_date": ""}, ...] } }
		
					"POST_RECT": {
								dataType: 'json',				
								url: 'ws/blog:blog_recent_posts/maxitems=12'
					}
				}
		}
		
		var regions = {
			ar:{id:1, country:"AR", lang:"ar", flag:"ARG", gmt:-180, file:"destacados_ar.js"},
			br:{id:2, country:"BR", lang:"br", flag:"BRA", gmt:-120, file:"destacados_br.js"},
			cl:{id:3, country:"CL", lang:"cl", flag:"CHI", gmt:-240, file:"destacados_cl.js"},
			co:{id:4, country:"CO", lang:"co", flag:"COL", gmt:-300, file:"destacados_co.js"},
			ec:{id:5, country:"EC", lang:"ec", flag:"ECU", gmt:-300, file:""},
			com:{id:6, country:"US", lang:"en", flag:"USA", gmt:-240, file:""},
			mx:{id:7, country:"MX", lang:"mx", flag:"MEX", gmt:-300, file:"destacados_mx.js"},
			pe:{id:8, country:"PE", lang:"pe", flag:"PER", gmt:-300, file:"destacados_pe.js"},
			ve:{id:9, country:"VE", lang:"ve", flag:"VEN", gmt:-270, file:""}
		};
				
		var getData = function(callback, opts) {
			var config = eval("configs.types."+opts);
	
			$j(".loader").ajaxStart(function(){
				$j(this).slideDown('normal');
			});		
			$j.ajax({
				type: 'GET',
				global: true,
				url: config.url,
				dataType: config.dataType,
				success: function(json){
					if (callback) callback(json);
				},
				error: function() {
					throw("Error: Corrupted json file or not found");
				}
		   });
			$j(".loader").ajaxStop(function(){
				$j(this).slideUp('normal');
			});
		}
			
		var setBLOG_RECT = function(objArr) {
			var conteudo = "";
			
			$j("#lnk_rnc_0").removeClass('ativo');  
			$j("#lnk_rnc_1").addClass('ativo');
	
			$j("#recentes .lista").fadeOut("fast");
			
			$j(objArr).each(function(i) {
				if (i <= 8) {
					var postName = "";
					var blogName = "";
					
					if (this.blog_name.length > 28) {
						blogName = this.blog_name.substr(0, 25)+"...";
					} else {
						blogName = this.blog_name;
					}

					if (this.post_name.length > 75) {
						postName = this.post_name.substr(0, 72)+"...";
					} else {
						postName = this.post_name;
					}
					conteudo += '<div id="itensOnList"><a href="'+this.blog_url+'" class="lnk-blogName" >'+blogName+'</a><a href="'+this.blog_url+'" class="lnk-speechBubble"><span class="txt-OnBubble">'+postName+'</span></a><span class="txt-username">'+this.username[0]+'</span></div>';
				}
			});
			$j("#recentes .lista").html(conteudo);
			$j("#recentes .lista").fadeIn("fast");
		}
		
		var setPOST_RECT = function(objArr) {
			var conteudo = "";
			
			$j("#lnk_rnc_0").addClass('ativo');
			$j("#lnk_rnc_1").removeClass('ativo');
			
			$j("#recentes .lista").fadeOut("fast");
			
			$j(objArr).each(function(i) {
				if (i <= 8) {
					
					var postName = "";
					var blogName = "";
					
					if (this.blog_name.length > 28) {
						blogName = this.blog_name.substr(0, 25)+"...";
					} else {
						blogName = this.blog_name;
					}
					
					if (this.post_name.length > 75) {
						postName = this.post_name.substr(0, 72)+"...";
					} else {
						postName = this.post_name;
					}
					
					//conteudo += "<div class=\"lista-item\"><a href=\""+this.blog_url+"\">"+blogName+"</a><a href=\""+this.blog_url+"\">"<span class=\"balao\">"+postName+"</span>"+this.username+"</a></div>";
					conteudo += '<div id="itensOnList"><a href="'+this.blog_url+'" class="lnk-blogName" >'+blogName+'</a><a href="'+this.blog_url+'" class="lnk-speechBubble"><span class="txt-OnBubble">'+postName+'</span></a><span class="txt-username">'+this.username+'</span></div>';
				}
			});
			$j("#recentes .lista").html(conteudo);
			$j("#recentes .lista").fadeIn("fast");
		}
				
		this.changeBlog = function(tipo) {
			getData(function(retorno) {
						switch(tipo) {
							case "BLOG_RECT":
								setBLOG_RECT(retorno.blog_list.blog);
								break;
							case "POST_RECT":
								setPOST_RECT(retorno.post_list.post);
								break;
						}
					},
					tipo
			);
		}
		
		this.setCountrys = function() {

			var domainSufix = (!!document.domain.replace(/.*\./,'') && (/\./).test(document.domain)) ? document.domain.replace(/.*\./,'') : 'br';
			var pageLang = regions[domainSufix].lang;
			
			$j(".lista-paises li").each(function() {
				if ($j(this).attr("lang") == pageLang) {
					$(this).remove();
				}
			});
		}
		
		this.setDestacados = function(objConf) {
			
			var conf = objConf;
			var mosaico = "";
			var destacados = "";
			var display = "";
			
			var domainSufix = (!!document.domain.replace(/.*\./,'') && (/\./).test(document.domain)) ? document.domain.replace(/.*\./,'') : 'br';
			
			var pageLang = regions[domainSufix].lang;
			
			$j.ajax({
				type: 'GET',
				global: true,
				url: conf.json+regions[domainSufix].file,
				dataType: "json",
				success: function(OBJ){
	
					$j(OBJ.mosaico).each(function(i, ret) {
						//Replace do Template de Mosáicos
						mosaico += configs.destacados.mosaico.template.replace(/<!--#liClass#-->/g, configs.destacados.mosaico.liClass)
							.replace(/<!--#aClass#-->/g, configs.destacados.mosaico.aClass)
							.replace(/<!--#templateURL#-->/g, conf.templateURL)
							.replace(/<!--#country#-->/g, pageLang)
							.replace(/<!--#mosaicoIMG#-->/g, ret.img)
							.replace(/<!--#zoomClass#-->/g, configs.destacados.mosaico.zoomClass)
							.replace(/<!--#mosaicoClass#-->/g, ret.cssClass)
							.replace(/<!--#incID#-->/g, i);
						
						if (i == 2) mosaico += configs.destacados.mosaico.templateClear;
					});
					
					$j(".mosaico-destaques .mosaic").html(mosaico);
					
					$j(OBJ.conteudo).each(function(j, ret) {
						//Replace do Template de Destacados
						
						display = (j==0) ? "block" : "none";
						
						destacados += configs.destacados.conteudo.template.replace(/<!--#divClass#-->/g, configs.destacados.conteudo.divClass)
							.replace(/<!--#incID#-->/g, j)
							.replace(/<!--#display-->/g, display)
							.replace(/<!--#h2Class#-->/g, configs.destacados.conteudo.h2Class)
							.replace(/<!--#title#-->/g, ret.title)
							.replace(/<!--#pClass#-->/g, configs.destacados.conteudo.pClass)
							.replace(/<!--#body#-->/g, ret.body)
							.replace(/<!--#link#-->/g, ret.link)
							.replace(/<!--#aClass#-->/g, configs.destacados.conteudo.aClass);
					});
					
					$j("#mosaico-body").html(destacados);
					
					if($j(".ctn-imageoverzoom").size() > 0) {
						
						var objsMosaic = $j(".mosaico-destaques").find(".mosaic > li");
						$j(objsMosaic).each(function(i) {
							$j(this).attr({id: 'ctn-zoom-'+i});
							$j(this).find(".ctn-zoom").attr({id: 'zoom-'+i});
							
							$j("#ctn-zoom-"+i).click(function(objEL) {
								zoomImageSet(this, i);
							});
						});
						
						$j(".ctn-imageoverzoom").hover(
							function(eventObj) {
								zoomImageThumb(this, 1);
							},
							function(eventObj) {
								zoomImageThumb(this, 0);
							}
						);
						
						//Define first mosaic item
						zoomImageThumb($j("#ctn-zoom-0"), 1);
						
						$j("#ctn-zoom-0 .ctn-zoom").attr({id:"marcado"});
						$j("#ctn-zoom-0 .ctn-zoom").css({"z-index":"10", "display":"block"});
						//------------------------------------------
					}
				},
				error: function() {
					throw("Error: Corrupted json file or not found");
				}
			});
		}
		
		this.setBLOG_COUNTS = function() {
	
			var config = configs.types.BLOG_COUNTS;
			var jsonOBJ = {};
	
			$j(".loader_counts").ajaxStart(function(){
				$j(this).css({"text-align": "left", "left" : 365, "top" : -2});
				$j(this).fadeIn('fast');
			});		
	
			$j.ajax({
				type: 'GET',
				global: true,
				url: config.url,
				dataType: config.dataType,
				success: function(json){
					jsonOBJ = json.blog_counter;
					$j(".estatisticas").html("<b>"+ jsonOBJ.posts_total +"</b> "+totalPosts+" <b>"+ jsonOBJ.posts_today +"</b> "+postsToday+" <b>"+ jsonOBJ.blogs_total +"</b> "+totalBlogs+"  <b>"+ jsonOBJ.blogs_today +"</b> "+blogsToday);			},
				error: function() {
					throw("Error: Corrupted json file or not found");
				}
			});
			
			$j(".loader_counts").ajaxStop(function(){
				$j(this).fadeOut('fast');
			});
			
		}
	};


	// Zoom in image thumbnail
	/*
	PARAMETERS
	- obj (Object)
	- action (hide = 0 / show = 1)
	*/
	function zoomImageThumb(obj, action) {
		
		var $j = jQuery.noConflict();
		
		divZoom = $j(obj).find(".ctn-zoom");
		containerDivZoom = $j(obj).parent();
		
		if (action == 1) { // Show
			if (divZoom.css("display") == "none") {
				containerDivZoom.find(".ctn-imageoverzoom").css("z-index","1");
				containerDivZoom.find(".ctn-zoom").hide();
				$j(obj).css("z-index","10");
				divZoom.fadeIn(200);
			} else {
				$j(obj).css("z-index","10");
			}
		}
		if (action == 0) {
			
			containerDivZoom.find(".ctn-imageoverzoom").css("z-index","1");
			containerDivZoom.find(".ctn-zoom").hide();
			$j(obj).css("z-index","1");
			
			var objsMosaic = $j(".mosaico-destaques").find(".mosaic > li");
			$j(objsMosaic).each(function(i) {
	
				var objectID = $j(this).find(".ctn-zoom");
				
				if (objectID.attr("id") == "marcado") {
					$j(objectID).parent().css("z-index","10");
					objectID.show();
				} else {
					$j(objectID).parent().css("z-index","1");				
				}
				
			});
	
		}
	}
	
	function zoomImageSet(obj, objID) {
		var $j = jQuery.noConflict();
		var objsMosaic = $j(".mosaico-destaques").find(".mosaic > li");
		$j(objsMosaic).each(function(i) {
			$j(this).find(".ctn-zoom").attr({id: 'zoom-'+i});
		});
			
		$j("#zoom-"+objID).attr("id", "marcado");
		$j(obj).css("z-index","10");
	}
			
	function showHideDest(elemento) {
		$j(".destacado").each(function(i, val) {
			($j(val).attr("id") == elemento) ? $j(val).css({"display":"block"}) : $j(val).css({"display":"none"});
		});
	}

				  					  