

var Accordo = (function() {
  var _site;
  var _cMargin;
  
  return {
    
    // Viene eseguita alla fine del caricamento del layout (non onReady, ma quasi)
    init: function(site) {
      _site = site;
     
     // _fix_content_height();      
      
      _lavalamp();

      _fakeLinks();

      _confirms();

      _newbies();
      
      _block_collapsers();

      _share_tools();
      
      _dimensions();
      
    }
    
  }
  
  function _dimensions() {
    // Lo disattiviamo perché crea un problema di taglio dei bottoni di submit
    // delle form.    
    return; 
      
    var h1 = $('#content').height();
    var h2 = $('#sidebar-right').height();
    if (h1 < h2 || $('#content').hasClass('resized')) {
      if (typeof _cMargin == 'undefined') {
        _cMargin = h2 - h1;
      }      
      else {
        _cMargin = Math.abs(_cMargin + h2 - h1 - 15);
      }
      $('#content').height((h2 - 15) + "px");
      $('#page-footer').animate({"margin-top": _cMargin + "px"}, 1000);
      $('#content').addClass('resized');
    }
  }
  
  function _share_tools() {
    $('#sharingTools a.share-tool').click(function() {
      var url = $(this).attr('href');
      var width = (window.screen.width/2) - (425 + 10);
      var height = (window.screen.height/2) - (370 + 50);
      window.open(url, 'sharer', "status=no,height=740,width=810,resizable=yes,left=" + width + ",top=" + height + ",screenX=" + width + ",screenY=" + height + ",toolbar=no,menubar=no,scrollbars=no,location=no,directories=no").focus();
      return false;
    });
  }
  
  function _block_collapsers() {
    $(".block .collapser").click(function() {
      var $me = $(this);
      var $block = $me.closest('.block');
      var state = 'open';
        
      if ($block.hasClass('close')) {
        $block.find('div.body').slideDown('slow', function() {_dimensions()});
        state = 'open';
      } else {
        $block.find('div.body').slideUp('fast', function() {_dimensions()});
        state = 'close';
      }
      
      $.cookie($block.attr('id'), state, {expires: 365, path: '/', domain: location.hostname.replace(/^\w+\./,'.')});

      $block.toggleClass('open').toggleClass('close');
    });
  }
  
  function _newbies() {
    $('a.role-newbie').attr('title', function() {
      this.title = this.title.replace('Vai al profilo di','') + " (NUOVO accordiano)";
    });
  }

  function _confirms() {
    $('form .confirm, a.confirm').click(function() {
      if (confirm('Confermi ' + this.title + '?')) {
        $(this).parent().append('<input type="hidden" name="confirmed" value="1">');
        this.form.submit();
      }
      return false;
    });
  }

  function _lavalamp() {
    // Attiva l'effetto lavalamp sul menu principale
    $("#primary-nav").lavaLamp({startItem: _site, speed: 500})
  }
  
  function _fakeLinks() {
    $('.fake-link').click(function() {
      var toggle = this.className.match(/toggle-([\w-]+)/);
      if (toggle) {
        $('#' + toggle[1]).toggleClass('open');
      }
    });
  }
 
})();
