jQuery('document').ready(function(){
    //SEARCH
    var searchBox = $('#q'),
        searchBoxText = 'Pesquisar';
    
    searchBox.focus(function(){
        var $this = $(this);
        
        if($this.val() == searchBoxText){
            $this.val('');
        }
    });

    searchBox.blur(function(){
        var $this = $(this);
        if($this.val() == ''){
            $this.val(searchBoxText);
        }
    });
    
    $('#search form').submit(function(){
        var eval = searchBox.val().length >= 4;
        
        if(!eval){
            alert('Desculpe, mas o termo de pesquisa precisa conter pelo menos 4 caracteres.')
            searchBox.focus();
        }
        
        return eval;
    });
    
    $('#search-button').click(function(){
        if(searchBox.val() == searchBoxText){
            searchBox.val('');
        }
        
        searchBox.val($.trim(searchBox.val()));
        $(this).closest('form').submit();
        
        return false;
    });
    
    $("a[rel=external]").click(function(){
        window.open($(this).prop('href'), 'external');
        return false;
    })
    
    //FOTOS
    $('select.selectbox').selectbox({
        effect: 'fade'
    });
    
    function attachMonthClick(){
        $('div.agenda ul.month a').click(function(){
            var $this = $(this)
                year = $('select#year').val().replace('y-', ''),
                month = $this.prop('id').replace('m-', ''),
                monthEls = $('div.agenda ul.month a');
            
            if(!$this.hasClass('disabled')){
                monthEls.removeClass('selected');
                $('div.agenda ul.month a#m-' + month).addClass('selected');

                $.ajax({
                    url: 'QuerySchedule',
                    type: 'POST',
                    dataType: 'json',
                    data: {
                        year: year,
                        month: month
                    },
                    
                    success: function(data){
                        if(data.success){
                            var items = data.items,
                                item,
                                x, 
                                l = items.length,
                                list = $('div.agenda ul.list');
                            
                            list.children().remove();
                            
                            console.log(data.items);
                            
                            for(x = 0; x < l; x++){
                                item = items[x];
                                list.append('<li><a href="AgendaItem?id=' + item.id + '" rel="frame"><span>' + item.date.replace('d-', '') + '</span>' + item.title + '</a></li>');
                            }
                            
                            $('a[rel=frame]').fancybox({
                                type: 'iframe'
                            });
                            
                        } else {
                            
                            alert(data.message);
                            
                        }
                    }
                });
            }
            
            return false;
        });
    }

    $('select#year').change(function(){
        var $this   = $(this)
            year    = $this.val().replace('y-', ''),
            month   = 1,
            monthEls = $('div.agenda ul.month a');
        
        monthEls.removeClass('selected');
        $('div.agenda ul.month a#m-1').addClass('selected');
        
        $.ajax({
            url: 'QuerySchedule',
            type: 'POST',
            dataType: 'json',
            data: {
                year: year
            },
            
            success: function(data){
                if(data.success){
                    var months = data.months,
                        x, 
                        l = months.length;

                    monthEls.addClass('disabled');
                    for(x = 0; x < l; x++){
                        $('div.agenda ul.month a#' + months[x]).removeClass('disabled');
                    }

                    if(data.currMonth){
                        monthEls.removeClass('selected');
                        $('div.agenda ul.month a#' + data.currMonth).addClass('selected');
                    }
                    
                    var items = data.items,
                        item,
                        l = items.length,
                        list = $('div.agenda ul.list');
                    
                    list.children().remove();
                    for(x = 0; x < l; x++){
                        item = items[x];
                        list.append('<li><a href="AgendaItem?id=' + item.id + '" rel="frame"><span>' + item.date.replace('d-', '') + '</span>' + item.title + '</a></li>');
                    }
                    
                    attachMonthClick();
                    
                    $('a[rel=frame]').fancybox({
                        type: 'iframe'
                    });
                    
                } else {
                    
                    alert(data.message);
                    
                }
            }
        });
        
    });
    
    attachMonthClick();
   
    $('select#album').change(function(){
        var $this = $(this),
            id = $this.val().replace('a-', '');
        
        $.ajax({
            url: 'QueryGallery',
            type: 'POST',
            dataType: 'json',
            data: {
                id: id
            },
            
            success: function(data){
                if(data.success){
                    var pics = $('ul#pics'),
                        x, 
                        l = data.images.length,
                        image;
                    
                    pics.children().remove();
                    
                    for(x = 0; x < l; x++){
                        image = data.images[x];
                        pics.append('<li><a href="Imagem?a=iwos&t=fb&h=' + image + '" class="gallery" rel="gallery" style="background-image: url(Imagem?a=iwos&t=photoList&h=' + image + ');"><img src="img/b-black2.png" /></a></li>');
                    }
                                        
                    
                    attachGalleryHover();
                    attachGalleryClick();
                    
                } else {
                    
                    alert(data.message);
                    
                }
            }
        });
    });
    
    function attachGalleryHover(){
        $('a.gallery').hover(
            function(){
                $('img', this).hide();
            },
            
            function(){
                $('img', this).show();
            }
            
        );
    }
    
    function attachGalleryClick(){
        $('a.gallery').fancybox({
            padding : 0,
            type: 'image'
        });
    }
    
    attachGalleryHover();
    attachGalleryClick();

    $('a.submit').click(function(){
        $(this).closest('form').submit();
    });
    
    $('a[rel=frame]').fancybox({
        type: 'iframe'
    });
    
    if(typeof ginfo === 'object'){
        var g = new google.maps.Geocoder();
                    
        g.geocode({
            address: ginfo.address
        }, function(results, status){
            if(status == google.maps.GeocoderStatus.OK){
                var o = {
                  zoom: 16,
                  center: results[0].geometry.location,
                  mapTypeId: google.maps.MapTypeId.ROADMAP
                };

                var map = new google.maps.Map(document.getElementById("map"), o);
                
                var marker = new google.maps.Marker({
                    map: map,
                    position: o.center,
                    title: ginfo.title
                });

                /*
                var infoWindow = new google.maps.InfoWindow({
                    map: map,
                    content: '<strong>' + ginfo.title + '</strong><br /><br />' + ginfo.datetime + '<br /></br >' + ginfo.iaddress,
                    position: o.center,
                    maxWidth: 300
                });
                */
                
            } else {
                alert(status);
            }
        });
    }
    
    $('#background').cycle({
        fx: 'fade',
        fit: true,
        width: '100%'
    });
    
    var show = $('#video-show');
    
    $('#video-playlist a').click(function(){
        show.children().remove();
        show.append('<iframe width="500" height="284" src="http://www.youtube.com/embed/' + $(this).prop('id').replace('v-', '') + '?rel=0" frameborder="0" allowfullscreen></iframe>')
        return false;
    });
});
