$( document ).ready( login_document_ready );

/*
 * страница загружена
 */
function login_document_ready() {

  $( '#login_form' ).submit( login_form_submit );
  $( '#login_form_auth' ).submit( login_form_submit_auth );
  $( '#login_form_logout' ).click( login_logout_cp );
  $( '#login_form_logout_user' ).click( login_logout_cp );
  
}

/*
 * отправка формы логина
 */
function login_form_submit() {
  var login = $( '#login' ).val();
  var password = $( '#password' ).val();

  var data = {
    'login'    : login,
    'password' : password,
    'a'        : '/check_login/',
  };

  $.ajax( {
    'url'      : $( '#submit_url' ).val() + '?callback=?',
    'dataType' : 'JSON',
    'cache'    : false,
    'data'     : data,
    'success'  : function( data ) {
      login_success( login, data );
    }
  } );

  return false;
}

/*
 * коллбек успешного вызова логина
 */
function login_success( login, data ) {
  // неправильный логин/пароль
  if ( !( data && data.success && data.success == 1 && data.id ) ) {
    alert( 'Неправильный логин/пароль' );
    return 0;
  }

  if ( $( '#login_form_user_host_name' ).val() == 1 ) {
    login_set_id( login, data.id );
    window.location = window.location;
    return 1;
  }
  
  document.cookie = 'login=' + login + '; expires=+365d; path=/';
  document.cookie = 'id=' + data.id + '; expires=+365d; path=/';

  window.location = window.location;

  return 1;
}

/*
 * ajax-запрос к основному сайту для установки аутентификации
 */
function login_set_id( login, id ) {
  var data = {
    'login'    : login,
    'id'       : id,
    'a'        : '/set_id/',
  };

  $.ajax( {
    'url'      : $( '#login_form_site_url' ).val() + '?callback=?',
    'dataType' : 'JSON',
    'cache'    : false,
    'data'     : data,
    'success'  : function( data ) {
    }
  } );
  
  return 1;  
}

/*
 * логаут
 */
function login_logout_cp () {
  jQuery("#login_AUTH").show();
  jQuery(".bg-shadow").show();
  jQuery(".pic_wait").show();
  jQuery("#login_AUTH").css("cursor", "progress");
  jQuery("#flashContent").css("visibility", "hidden");
  jQuery("#player").css("visibility", "hidden");

  $.ajax( {
    'url'      : $( '#login_form_cp_url' ).val() + 'logout/?callback=?',
    'dataType' : 'JSON',
    'cache'    : false,
    'data'     : '',
    'success'  : function( data ) {
      window.location = $( '#login_form_site_url' ).val();
    }
  } );

  if ( $( '#login_form_cp_host_name' ).val() == 1 ) {
    login_logout();
    return 1;
  }
  
  document.cookie = 'login=1' + '; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/';
  document.cookie = 'id=1' + '; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/';


  return 1;
}

/*
 * логаут на сайте
 */
function login_logout () {
  $.ajax( {
    'url'      : $( '#login_form_site_url' ).val() + '/logout/?callback=?',
    'dataType' : 'JSON',
    'cache'    : false,
    'data'     : '',
    'success'  : function( data ) {
      if ( $( '#login_form_cp_host_name' ).val() == 1 ) {
        return 1;
      }
      
      window.location = window.location;
    }
  } );
  return 1;

}

/*
 * отправка формы логина
 */
function login_form_submit_auth() {
  var login = $( '#login_auth' ).val();
  var password = $( '#password_auth' ).val();

  var data = {
    'login'    : login,
    'password' : password,
    'a'        : '/check_login/',
  };

  $.ajax( {
    'url'      : $( '#submit_url_auth' ).val() + '?callback=?',
    'dataType' : 'JSON',
    'cache'    : false,
    'data'     : data,
    'success'  : function( data ) {
      login_success_auth( login, data );
    }
  });
  return false;
}

/*
 * коллбек успешного вызова логина
 */
function login_success_auth( login, data ) {
  // неправильный логин/пароль
  if ( !( data && data.success && data.success == 1 && data.id ) ) {

    jQuery("#window_AUTH .pic_wait").hide();
    jQuery("#window_AUTH").css("cursor", "default");
    alert( 'Неправильный логин/пароль' );
    jQuery("#window_AUTH .bg-shadow").css("z-index", "100");

    return 0;
  }

  if ( $( '#login_form_user_host_name_auth' ).val() == 1 ) {
    login_set_id_auth( login, data.id );
    location.replace(path_auth_info);
    return 1;
  }
  
  document.cookie = 'login=' + login + '; expires=+365d; path=/';
  document.cookie = 'id=' + data.id + '; expires=+365d; path=/';

  /* window.location = window.location; */
  location.replace(path_auth_info);

  return 1;
}

/*
 * ajax-запрос к основному сайту для установки аутентификации
 */
function login_set_id_auth( login, id ) {
  var data = {
    'login'    : login,
    'id'       : id,
    'a'        : '/set_id/',
  };

  $.ajax( {
    'url'      : $( '#login_form_site_url_auth' ).val() + '?callback=?',
    'dataType' : 'JSON',
    'cache'    : false,
    'data'     : data,
    'success'  : function( data ) {
    }
  } );
  
  return 1;
}

/*
 * логаут
 */
function login_logout_cp_auth () {
  $.ajax( {
    'url'      : $( '#login_form_cp_url_auth' ).val() + '/logout/?callback=?',
    'dataType' : 'JSON',
    'cache'    : false,
    'data'     : '',
    'success'  : function( data ) {
      window.location = $( '#login_form_site_url_auth' ).val();
    }
  } );

  if ( $( '#login_form_cp_host_name_auth' ).val() == 1 ) {
    login_logout_auth();
    return 1;
  }
  
  document.cookie = 'login=1' + '; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/';
  document.cookie = 'id=1' + '; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/';

  return 1;  
}

/*
 * логаут на сайте
 */
function login_logout_auth () {
  $.ajax( {
    'url'      : $( '#login_form_site_ur_authl' ).val() + '/logout/?callback=?',
    'dataType' : 'JSON',
    'cache'    : false,
    'data'     : '',
    'success'  : function( data ) {
      window.location = window.location;
    }
  } );
  return 1;
}
