var topMenu = new function()
{
  this.hideLogin = function()
  {
    $(".login-container").hide('blind');
  }
  this.showLogin = function()
  {
    _setDivPosition("option-div", "login-container", 50);

    $(".login-container").toggle('blind', function(){
      $("#user-login").focus();
    });

    $(".login-error").html("");
    $(".login-success").html("");
  }
  this.login = function()
  {
    if ($.trim($("#user-login").val()) == "")
    {
      $(".login-error").show();
      $(".login-success").hide();
      $(".login-error").html("'Username' field empty!");
    }
    else if($.trim($("#pwd-login").val()) == "")
    {
      $(".login-error").show()
      $(".login-success").hide();
      $(".login-error").html("'Password' field empty!");
    }
    else
    {
      $.ajax({
        url: '../PHPClasses/NewLogin.php',
        type: 'POST',
        dataType: 'html',
        data: 'username=' + $("#user-login").val() + '&password=' + $("#pwd-login").val(),
        success: function(response){
          if (response == 'CONNECTION_KO' || response == 'POST_VALUES_KO')
          {
            $(".login-error").show()
            $(".login-success").hide();
            $(".login-error").html('Error connecting Database');
          }
          else if (response == 'LOGIN_KO')
          {
            $(".login-error").show()
            $(".login-success").hide();
            $(".login-error").html('Login incorrect or expired');
          }
          else if (response == 'LOGIN_OK')
          {
            $(".login-error").hide()
            $(".login-success").show();
            $(".login-success").html('Succesfull authentication');

            window.location.href = 'DICOMAnonymPro.php?panel=download';
          }
        },
        error: function(){
          alert('Error Login');
        }
      });
    }
  }

  this.search = function()
  {
    document.forms['searchForm'].submit();
  }

  this.logout = function()
  {
    $.ajax({
      url: '../PHPClasses/SetSessionVar.php',
      type: 'POST',
      dataType: 'html',
      data: 'operation=logout',
      success: function(){
        window.location.reload();
      },
      error: function(){

      }
    });
  }

  this.loginKeyListener = function(evt)
  {
    if (!evt)
    {
      evt = window.event;
    }
    if (evt.keyCode == 13)
    {
      topMenu.login();
    }
    else if (evt.keyCode == 27)
    {
      topMenu.hideLogin();
    }
  }

  this.showLanguages = function()
  {
    $(".select-lang-span").toggleClass('hide-lang-span');
    
    _setDivPosition("option-div", "language-container", 342);
    
    if ($(".language-container").css('display') == 'none')
    {
      $(".language-container").show('blind');
    }
    else
    {
      $(".language-container").hide('blind');
    }
  }
  
  this.changeLanguage = function(newLang)
  {
    var currentURL = document.URL;
    var pos = currentURL.indexOf('/eng/');
    
    var newURL = currentURL.substring(0, pos) + "/" + newLang + "/" + currentURL.substring(pos + 5);
    $.ajax({
      url: '../PHPClasses/SetSessionVar.php',
      type: 'POST',
      dataType: 'text',
      data: 'operation=changeLanguage&newLang=' + newLang,
      success: function(){
        window.location = newURL;
      },
      error: function(){
        alert('Error changing language');
      }
    });
  }

  function _setDivPosition(mainDivClass, targetDivClass, leftOffset)
  {
    var p = $("." + mainDivClass).position();
    var top = p.top + 58;
    var left = p.left + leftOffset;

    $("." + targetDivClass).css('top', top);
    $("." + targetDivClass).css('left', left);
  }
}


$(document).ready(function(){
  $('.menu-nav li').hover(
    function() {
      $(this).addClass("active");
      $(this).find('> .ulwrapper').stop(false, true).slideDown();
      Cufon.refresh();
    },
    function() {
      $(this).removeClass("active");
      $(this).find('div').stop(false, true).slideUp('fast');
      Cufon.refresh();
    }
  );

  $('.menu-nav li').click(
    function() {
      if ($(this).hasClass('active'))
      {
        $(this).removeClass('active');
        $(this).find('div').stop(false, true).slideUp('fast');
        Cufon.refresh();
      }
      else
      {
        $(this).addClass("active");
        $(this).find('> .ulwrapper').stop(false, true).slideDown();
        Cufon.refresh();
      }
    }
  );

  $("#user-login").keyup(topMenu.loginKeyListener);
  $("#pwd-login").keyup(topMenu.loginKeyListener);
});
