activateFunctions = []

function activateElements(root)
{
    $.each(activateFunctions, function() {
        this(root)
    })
}

function _log(message)
{
    if (window.console)
    {
        window.console.log(message)
    }
}


$(document).ready(function() {

  $("body").addClass("jsActive")

  function activateTooltips(root)
  {
    var titleElts
    if (root.parent().length)
    {
      titleElts = root.find('*[title]').andSelf().filter('*[title]')
    }
    else
    {
      titleElts = root.find('*[title]')
    }
    
    titleElts.hover(function(e) {
      var tooltip = $(this).attr("title");
      $("#tooltips span").text(tooltip);
      $('#tooltips').show();
    }, function(e) {
      $('#tooltips').hide();
    });
  }
  
  activateFunctions.push(activateTooltips)
  activateTooltips($(document))

  $(".circle h2").click(function(e) {
    $(this).siblings(".members").slideToggle('fast');
  });
  
  $(".userMessages").click(function(e) {
    $(".userMessages").fadeOut('medium');
  });

  $(".message_actions li.share, .actions li.share, .message_actions li.delete, .actions li.delete").click(function(e) {
      url = $(this).find("a").attr("href")
      showModal(url + " #modal .modal_content > *")
    
      return false
  });
  
  $(".shareEmbed input").click(function() {
      this.focus()
      this.select()
  })

  $(".preview .content").hover(function(e) {
     $(this).css("border-color","#09ABE2");
   }, function(e) {
     $(this).css("border-color","#FFFFFF");
  });

  $(".preview .content").click(function(e) {
     var link = $(this).parents(".message").find(".permalink").attr('href'); //  find("a").html();   // find(".permalink").attr('href');
     window.document.location = link;
  });

  $(".preview .content").hover(function(e) {
      var tooltip = "View this Message";
      $("#tooltips span").text(tooltip);
      $('#tooltips').show();
    }, function(e) {
      $('#tooltips').hide();
  });

  $("#primary .body .message").hover(function(e) {
    $(this).addClass("displayActions");
  }, function(e) {
    $(this).removeClass("displayActions");
  });



  $("#publishMessage button").hover(function(e) {
    $(this).addClass("pseduoHover");
  }, function(e) {
    $(this).removeClass("pseduoHover");
  });

  $("#loginButton").hover(function(e) {
    $(this).addClass("pseduoHover");
  }, function(e) {
    $(this).removeClass("pseduoHover");
  });
  
  $("#nav li.primary").click(function() {
      var self = $(this)
      $("#nav ul.active").removeClass("active")
      self.parent("ul").addClass("active")
      
      return false
  })
  
  function blockEnter(root)
  {
      function handler(event)
        {
            if (event.which == 13)
              {
                  return false
              } 
        }
        inputs = root.find("input[type='text']")
        inputs = inputs.not("#userSession input, #identity_search input")
        inputs.keypress(handler)
        inputs.keydown(handler)
        inputs.keyup(handler)
  }
  
  activateFunctions.push(blockEnter)
  blockEnter($(document))
  
  function pseudoHover(root)
  {
      root.find("*").andSelf().hover(function () {
          $(this).addClass("pseudo_hover")
      }, function () {
          $(this).removeClass("pseudo_hover")
      })
  }
  
  activateFunctions.push(pseudoHover)
  pseudoHover($(document))
  
});

