Sha256: 535a6611c54f5d58efb4d481d142435cd0b8b87c2b871b0ba8ab29b7c4783efe

Contents?: true

Size: 1015 Bytes

Versions: 1

Compression:

Stored size: 1015 Bytes

Contents

module = angular.module("mb.controllers")

class DatabasesController
  constructor: (@$scope, @Database, @confirmationDialog, @alerts) ->
    @loading = false
    @fetchDatabases()

    # Scope variables
    @$scope.filterValue = ""

    # Scope methods
    @$scope.isLoading = -> @loading
    @$scope.delete = (database) => @dropWithConfirmation(database)

  fetchDatabases: ->
    @loading = true
    @Database.query(@onLoadComplete)

  onLoadComplete: (data) =>
    @$scope.databases = data
    @loading = false

  dropWithConfirmation: (database) =>
    @confirmationDialog
      message: "Deleting #{database.name}. Are you sure?"
      onOk: => @drop(database)

  drop: (database) ->
    resource = new @Database()
    params = id: database.name

    resource.$delete params, =>
      @alerts.info("Database #{database.name} has been deleted.")
      @fetchDatabases()

DatabasesController.$inject = ["$scope",
  "Database", "confirmationDialog", "alerts"]

module.controller "databases", DatabasesController

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mongo_browser-0.2.0.rc2 app/assets/javascripts/app/controllers/databases.js.coffee