if (!$j) var $j = jQuery.noConflict();

Date.prototype.setFromISO = function(s) {
	s = s.split('T');
	var d = s[0].split('-');
	var t = s[1].split('Z')[0].split('+')[0].split('-')[0].split('.')[0].split(':');
	this.setFullYear(d[0]); this.setMonth(d[1]*1-1); this.setDate(d[2]);
	this.setHours(t[0]); this.setMinutes(t[1]); this.setSeconds(t[2]);
	return this;
}

Date.prototype.format = function(f)
{
    if (!this.valueOf())
        return '&nbsp;';

    var d = this, ret = '';

	var fs = {
		d: function(d) { return (d.getDate() < 10 ? '0' : '') + d.getDate(); },
		m: function(d) { return (d.getMonth() < 9 ? '0' : '') + (d.getMonth() + 1); },
		H: function(d) { return (d.getHours() < 10 ? '0' : '') + d.getHours(); },
		i: function(d) { return (d.getMinutes() < 10 ? '0' : '') + d.getMinutes(); },
		s: function(d) { return (d.getSeconds() < 10 ? '0' : '') + d.getSeconds(); },
		Y: function(d) { return d.getFullYear(); }
	}

	for (var i = 0; i < f.length; i++) {
		var c = f.charAt(i);
		if (fs[c]) ret += fs[c](this);
		else ret += c;
	}
	return ret;
}


function feedFormat(i, hide) {
	return '<span class="newsItem' + (i['isRecent']?' recent':'') + '" ' +
		(hide?'style="display:none;"':'') +  '>' + 
		'<span class="newsTitle"><a href="' + i['link'].split('?')[0] + '">' + i['title'] + '</a></span>' +
		'<span class="newsDate">Actualizado em ' +
			i['modified'].format('Y/m/d - H:i:s')+'</span></span>';
}

function validateFeed(i) {
	var words = Array('wiki:', 'topbar', 'sidebar', ':nofeed:', 'playground');
	var hasWords = function (n,h) { return h.indexOf(n) >= 0; }
	for (wi in words) {
		if (hasWords(words[wi], i['title'])) return false;
	}
	return true;
}

function feedMeUp(xmlData) {
	var lastVisit = readCookie('lastVisitDate');
	var item = { modified: '', title: '', link: '', isRecent: false };
	var feedsHTML = '';
	var count = 1;
	if (lastVisit==null) lastVisit = new Date(); else lastVisit = new Date(lastVisit);
	jQuery(xmlData).find('item').each(function() {
		// in safari, .find() doesn't seem to work very well
		// neither for <title> nor for <link>
		if (jQuery.browser.safari) {
			for (var w = this.firstChild; w != null; w = w.nextSibling) {
				if (w.nodeName == 'title') {
					item['title'] = w.firstChild.nodeValue;
					break;
				}
			}
		} else {
			item['title'] = jQuery(jQuery(this).find('title')).text();
		}

		if (!validateFeed(item)) return;
		item['modified'] = (new Date()).setFromISO(jQuery(this).find(
			'date, dc\\:date').text());
		item['isRecent'] = (item['modified'] > lastVisit);
		item['link'] = jQuery(jQuery(this).find('link')).text();
		feedsHTML += feedFormat(item, count++>3);

	});
	var wo = jQuery('#feedsRUs').html( feedsHTML );
	if (count > 3) wo.after(jQuery('<a href="javascript:void(0);" title="expand">Mostrar mais...</a>').click(function() {
		this.disabled = true;
		jQuery(wo).find('span').slideDown('slow');
		jQuery(this).remove();
		return false;
	}))
}

function getNewDocuments() {
	jQuery(document).ready(function() {
		jQuery.ajax({
			type:	'GET',
			url:	'/feed.php',
			success:	feedMeUp,
			dataType:	'xml',
			error:	function(o,s,e) { jQuery('#feedsRUs').text(o+s+e.message/*'Impossível ligar ao servidor'*/); }
		});
	});
}

// cookie functions http://www.quirksmode.org/js/cookies.html
function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}
function eraseCookie(name)
{
	createCookie(name,"",-1);
}
// /cookie functions

$j(document).ready(function() {

	$j("#pageBody").corner("12px");

	// create stylesheet changers
	var scs = '<div class="stylechangers">' +
		'<img src="/lib/tpl/sidebar/images/stylechanger_yellow.gif" class="stylechanger" alt="sty_yellow" />' +
		'<img src="/lib/tpl/sidebar/images/stylechanger_green.gif" class="stylechanger" alt="sty_green"/>' +
		'<img src="/lib/tpl/sidebar/images/stylechanger_blue.gif" class="stylechanger" alt="sty_white"/>' +
		'<img src="/lib/tpl/sidebar/images/stylechanger_red.gif" class="stylechanger" alt="sty_red" />' +
		'<img src="/lib/tpl/sidebar/images/stylechanger_black.gif" class="stylechanger" alt="sty_default" />' +
		'</div>';
	// add to DOM and bind onclick event
	var scp = $j(".header").css('text-align','left').find('div.stylechangers');
	scp.replaceWith($j(scs));
	var imgs = $j('div.stylechangers').find('img').each(function(){
		$j(this).click(function(){
			styleChanger($j(this).attr('alt')); return false; })});
	//if (!(jQuery.browser.msie && jQuery.browser.version < 7.0))
		window.setTimeout(function() {imgs.eq(0).fadeOut(1000, function(){
			imgs.eq(0).fadeIn(1000); imgs.eq(1).fadeOut(1000, function() {
				imgs.eq(1).fadeIn('slow'); imgs.eq(2).fadeOut('slow', function() {
					imgs.eq(2).fadeIn('slow'); imgs.eq(3).fadeOut('slow', function() {
						imgs.eq(3).fadeIn('slow'); imgs.eq(4).fadeOut('slow', function() {
							imgs.eq(4).fadeIn('slow', function() {imgs.fadeOut('slow', function () {imgs.fadeIn('slow')})});
		})	})	})	})	}); }, 5000);
	// check if we ought to be using another style
	// no need... our php wrapper will do our work
	//var c = readCookie('style');
	//if (c) styleChanger(c);
	
	// now do some publicity to the style changers
	var pubbox = $j('<div class="tooltip">Mude o estilo da página:<br/>carregue na sua cor preferida!</div>')
		.appendTo($j('body'))
		.css({backgroundColor: '#fff', borderColor: '#888', borderSize: '6px', borderStyle: 'solid',
		 	position: 'absolute', display: 'none', opacity: 0.75, color: 'black'})
		.hide()
		.hover(function() {$j(this).stop();}, function() {});
	$j('.header').hover(function() {
			var pos = $j('div.stylechangers').position();
			pubbox.css({top: pos.top - 50,
			 	left: pos.left }).fadeIn(); },
			function() {pubbox.fadeOut();});
			
});

function doAnimation22Feb() {
	(function($){
		var im = null, tx = null, ln = null;
		var d1 = $('<div></div>').css( {
			left: 0, top: 0, position: "absolute",
			opacity: 0.9, backgroundColor: "black",
			width: $(document).width(), height: $(document).height()
			})
			.click(function(){$(this).fadeOut('slow');})
			.append(im = $('<div style="background-color:silver;display:none">&nbsp;</div>')
				.css({
					position: 'absolute', top: $(window).scrollTop()*1+200, left: $(window).scrollLeft()*1+200,
					display: 'none', opacity: 1, width: 200, height: 300
					})
				)
			.append(tx = $('<div style="text-align: left; color: white; font: large Verdana;">22 de Fevereiro<br/>'+
				'damos os parabéns<br/>ao nosso grande fundador</div>')
				.css({
					position: 'absolute', top: $(window).scrollTop()*1+200, left: $(window).scrollLeft()*1+450,
					display: 'none'
					})
				)
			.append(ln = $('<div style="text-align: left; color: white; font: large Verdana;">[<a href="#">mais sobre BP</a>]<br/>'+
				'<br/>[<a href="#">fechar</a>]</div>')
				.css({
					position: 'absolute', top: $(window).scrollTop()*1+350, left: $(window).scrollLeft()*1+450,
					display: 'none'
					})
					.find('a').each(function(){$(this).css('color','blue')}).end()
				)
			.appendTo(document.body);
		window.setTimeout(function() {im.show('drop', {direction: 'up', duration: 2000, callback: function() {
			tx.show('drop', {direction: 'left', duration: 2000, callback: function() {
				ln.show('drop', {direction: 'up', duration: 1000});
			}
			}); }});}, 1500);
	})($j);
	
}

function doAnimationJantar28Jun() {
	(function($){
		var im = null, tx = null, ln = null;
		
		// criar o overlay (d1)		
		var d1 = $('<div></div>').css( {
			left: 0, top: 0, position: "absolute",
			opacity: 0.9, backgroundColor: "black",
			width: $(document).width(), height: $(document).height(),
			overflow: 'hidden'
			})
			.click(function(){$(this).fadeOut('slow');})
			.append(im = $('<img src="/scripts/anim/jantar-gala_superior_esq.png" />')
				.css({
					position: 'absolute', top: -20, left: -20,
					display: 'none', opacity: 1, /*width: 244, height: 242*/
					})
				)
			.append(tx = $('<img src="/scripts/anim/jantar-gala_meio.png"></img>')
				.css({
					position: 'absolute', top: $(window).scrollTop()*1+200, left: $(window).scrollLeft()*1+350,
					display: 'none'
					})
				)
			.append(ln = $('<img src="/scripts/anim/jantar-gala_baixo-direita.png" />')
				.css({
					position: 'absolute', top: $(window).scrollTop()*1+$(window).height()*1-200, left: $(window).scrollLeft()*1+$(window).width()*1-100,
					display: 'none'
					})
					.find('a').each(function(){$(this).css('color','blue')}).end()
				);
		$(document).ready(function(){d1.appendTo(document.body)});
		window.setTimeout(function() {im.show('drop', {direction: 'left', duration: 2000, callback: function() {
			ln.show('drop', {direction: 'down', duration: 2000, callback: function() {
				tx.show('drop', {direction: 'right', duration: 1000});
			}
			}); }});}, 1500);
	})($j);
	
}
