/**
 * TikiCMS
 * Copyright (C) 2009, Tiki Web Inteligente Ltda.
 * @requires jQuery 1.3.2 or latter
 *
 * $Id$
 */

// define o namespace da aplicação
Application = {
    Controller: {}
};

/**
 * Retorna uma URL completa dado um caminho relativo.
 *
 * É importante que esta função seja definida antes
 * da definição das biliotecas "thickbox" e "sIFR",
 * pois alterei o código-fonte delas para que caminhos
 * relativos sejam convertidos em caminhos absolutos utilizando
 * esta função.
 *
 * @param  string url Um pedaço de URL (caminho relativo dentro do servidor)
 * @return string     Uma URL completa
 */
Application.build_url = function(url) {

    if (!Application.BASE_URL || !Application.BASE_URL.match(/^http/)) {
        Application.BASE_URL = $('meta[name=base_url]').attr('content');
    }

    return Application.BASE_URL + url; 
}

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

    // invoca o controlador e o método solicitados
    var controller = $('meta[name=camelized_controller]').attr('content');
    var method = $('meta[name=method]').attr('content');

    Application.Controller[controller] &&
    Application.Controller[controller][method] &&
    Application.Controller[controller][method].call();
        
    
    // Animação do topo
    $('body > header div.foto').animate({opacity: 1}, 1500, function(){
         $('body > header h1').animate({top: 0}, 750, 'easeOutCirc');
         $('body > header + nav').animate({backgroundPosition: '0 0'}, 1000, 'easeOutCirc', function(){
            animaFoto();
            setInterval(animaFoto, 35000);
            $(this).children('ul').fadeIn(1000);
        });
    });
    // função que move a foto do topo
    function animaFoto () {
        $('body > header div.foto').animate({backgroundPosition:'0 -320px'}, 10000, 'jswing').delay(5000).animate({backgroundPosition:'0 0'}, 10000, 'jswing');
    };
    
    // efeito de mouse over no menu principal   
    $('body > header + nav ul li a').hover(function(){
        $(this).animate({opacity: 1}, 500);
    },function(){
        $(this).animate({opacity: 0}, 500);
    });
    
    
    
    
    // deixa marcado o item do menu que for clicado
    $('body > header + nav ul li').click(function(){
        $('body > header + nav ul li').removeClass('current');
        $(this).addClass('current');
    });
        
});

