text: "use strict";
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
      var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
      if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
      else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
      return c > 3 && r && Object.defineProperty(target, key, r), r;
  };
  var __metadata = (this && this.__metadata) || function (k, v) {
      if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
  };
  Object.defineProperty(exports, "__esModule", { value: true });
  var core_1 = require("@angular/core");
  var router_1 = require("@angular/router");
  var index_1 = require("../../_services/index");
  var events_manager_1 = require("../../_events/events.manager");
  var LoginComponent = (function () {
      function LoginComponent(route, router, globalEventsManager, authenticationService, alertService) {
          this.route = route;
          this.router = router;
          this.globalEventsManager = globalEventsManager;
          this.authenticationService = authenticationService;
          this.alertService = alertService;
          this.model = {};
          this.loading = false;
      }
      LoginComponent.prototype.ngOnInit = function () {
          this.authenticationService.logout();
          this.globalEventsManager.showNavBar(false);
          this.returnUrl = this.route.snapshot.queryParams['returnUrl'] || '/';
      };
      LoginComponent.prototype.login = function () {
          var _this = this;
          this.loading = true;
          this.globalEventsManager.showNavBar(true);
          this.authenticationService.login(this.model.username, this.model.password)
              .subscribe(function (data) {
              _this.router.navigate([_this.returnUrl]);
          }, function (error) {
              _this.alertService.error(error._body);
              _this.loading = false;
          });
      };
      return LoginComponent;
  }());
  LoginComponent = __decorate([
      core_1.Component({
          moduleId: module.id,
          templateUrl: 'login.component.html'
      }),
      __metadata("design:paramtypes", [router_1.ActivatedRoute,
          router_1.Router,
          events_manager_1.GlobalEventsManager,
          index_1.AuthenticationService,
          index_1.AlertService])
  ], LoginComponent);
  exports.LoginComponent = LoginComponent;
  //# sourceMappingURL=login.component.js.map