dojo.provide("parus.negotiateRegistrationDialog");

dojo.require("dijit.Dialog");
dojo.require("dijit.form.Button");

dojo.require("parus.parus8");
dojo.require("parus.database");
dojo.require("parus.dialog");

dojo.declare("parus.negotiateRegistrationDialog", [parus.Dialog], {

  sizeable: null,

  handler: null,
  currentUserName: null,
  login: null,
  password: null,

  //получение и установка логина текущего пользователя в сессии на сервере
  assignCurrentNegotiateUserName: function() {
    var result = parus.database.connect(this.handler, null, null, null, true);
    if (result) {
      this.currentUserName = parus.database.attributes.negotiateUserName;
      this.accountEdit.attr("value", this.currentUserName);
    }
    else {
      if (!parus.database.authException) alert("Текущий пользователь ОС не может быть авторизован как пользователь домена. Обратитесь к администратору.");
    }

    return result;
  },

  apply: function() {
    if (!this.validate()) return;

    if (parus.database.connect(this.handler, this.login, this.password)) {
      var response = parus.database._xhr("registerNegotiateAccount.xml", null, {
        description: this.descriptionEdit.value
      });

      if (!response) return;

      parus.parus8.notificationMessage("Пользователь домена Windows \"" + this.currentUserName + "\" зарегистрирован.");
    }
    else {
      if (!parus.database.authException) alert("Регистрационные данные не верны. Проверьте пожалуйста правильность ввода.");
    }

    return this.inherited(arguments);
  }
});