issues bulk front

stable
Juanfran 2014-07-29 12:56:46 +02:00
parent da6673a1f8
commit 12498811d7
3 changed files with 51 additions and 3 deletions

View File

@ -81,6 +81,42 @@ CreateIssueDirective = ($repo, $model, $rs, $rootscope) ->
return {link:link}
CreateBulkIssuesDirective = ($repo, $rs, $rootscope) ->
link = ($scope, $el, attrs) ->
$scope.form = {data: "", usId: null}
$scope.$on "issueform:bulk", (ctx, sprintId, usId)->
$el.removeClass("hidden")
$scope.form = {data: "", sprintId: sprintId, usId: usId}
$el.on "click", ".close", (event) ->
event.preventDefault()
$el.addClass("hidden")
$el.on "click", ".button-green", (event) ->
event.preventDefault()
form = $el.find("form").checksley()
if not form.validate()
return
data = $scope.form.data
projectId = $scope.projectId
promise = $rs.issues.bulkCreate(projectId, data)
promise.then (result) ->
$rootscope.$broadcast("issueform:bulk:success", result)
$el.addClass("hidden")
# TODO: error handling
promise.then null, ->
console.log "FAIL"
$scope.$on "$destroy", ->
$el.off()
return {link: link}
module.directive("tgLbCreateIssue", [
"$tgRepo",
"$tgModel",
@ -89,6 +125,13 @@ module.directive("tgLbCreateIssue", [
CreateIssueDirective
])
module.directive("tgLbCreateBulkIssues", [
"$tgRepo",
"$tgResources",
"$rootScope",
CreateBulkIssuesDirective
])
#############################################################################
## Issue Create Lightbox Directive
#############################################################################
@ -114,4 +157,3 @@ module.directive("tgLbCreateIssue", [
# "$rootScope",
# CreateIssueDirective
# ])

View File

@ -41,6 +41,7 @@ urls = {
"bulk-create-tasks": "/api/v1/tasks/bulk_create"
"tasks-restore": "/api/v1/tasks/%s/restore"
"issues": "/api/v1/issues"
"bulk-create-issues": "/api/v1/issues/bulk_create"
"issues-restore": "/api/v1/issues/%s/restore"
"wiki": "/api/v1/wiki"
"wiki-restore": "/api/v1/wiki/%s/restore"

View File

@ -22,7 +22,7 @@
taiga = @.taiga
resourceProvider = ($repo) ->
resourceProvider = ($repo, $http, $urls) ->
service = {}
service.get = (projectId, issueId) ->
@ -34,6 +34,11 @@ resourceProvider = ($repo) ->
params = _.extend({}, params, filters or {})
return $repo.queryPaginated("issues", params)
service.bulkCreate = (projectId, data) ->
url = $urls.resolve("bulk-create-issues")
params = {projectId: projectId, bulkIssues: data}
return $http.post(url, params)
service.stats = (projectId) ->
return $repo.queryOneRaw("projects", "#{projectId}/issues_stats")
@ -52,4 +57,4 @@ resourceProvider = ($repo) ->
module = angular.module("taigaResources")
module.factory("$tgIssuesResourcesProvider", ["$tgRepo", resourceProvider])
module.factory("$tgIssuesResourcesProvider", ["$tgRepo", "$tgHttp", "$tgUrls", resourceProvider])