From d92e74c280f11d1f7e9b6bab5d53979871192152 Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Mon, 11 Aug 2014 08:58:23 +0200 Subject: [PATCH] Fixing attachments on wiki edition --- app/coffee/modules/wiki/main.coffee | 69 +++++++++-------------------- 1 file changed, 22 insertions(+), 47 deletions(-) diff --git a/app/coffee/modules/wiki/main.coffee b/app/coffee/modules/wiki/main.coffee index f2f9317f..e5963dde 100644 --- a/app/coffee/modules/wiki/main.coffee +++ b/app/coffee/modules/wiki/main.coffee @@ -64,15 +64,7 @@ class WikiDetailController extends mixOf(taiga.Controller, taiga.PageMixin, taig @scope.membersById = groupBy(project.memberships, (x) -> x.user) return project - loadWiki: -> - return @rs.wiki.get(@scope.wikiId).then (wiki) => - @scope.wiki = wiki - - loadWikiLinks: -> - return @rs.wiki.listLinks(@scope.projectId).then (wikiLinks) => - @scope.wikiLinks = wikiLinks - - loadInitialData: -> + loadWikiSlug: -> params = { pslug: @params.pslug wikipage: @params.slug @@ -83,12 +75,32 @@ class WikiDetailController extends mixOf(taiga.Controller, taiga.PageMixin, taig @scope.projectId = data.project return data - promise.then null, => + promise.then null, => @location.path("/project/#{@params.pslug}/wiki/#{@params.slug}/edit") + loadWiki: -> + if @scope.wikiId + return @rs.wiki.get(@scope.wikiId).then (wiki) => + @scope.wiki = wiki + else + return @scope.wiki = { + content: "" + } + + loadWikiLinks: -> + return @rs.wiki.listLinks(@scope.projectId).then (wikiLinks) => + @scope.wikiLinks = wikiLinks + + loadInitialData: -> + # Resolve project slug + promise = @repo.resolve({pslug: @params.pslug}).then (data) => + @scope.projectId = data.project + return data + return promise.then(=> @.loadProject()) .then(=> @.loadUsersAndRoles()) .then(=> @.loadWikiLinks()) + .then(=> @.loadWikiSlug()) .then(=> @.loadWiki()) .then(=> @.loadAttachments(@scope.wikiId)) @@ -120,43 +132,6 @@ module.controller("WikiDetailController", WikiDetailController) ############################################################################# class WikiEditController extends WikiDetailController - loadInitialData: -> - deferred = @q.defer() - params = { - pslug: @params.pslug - } - - promise = @repo.resolve(params) - - promise.then (data) => - @scope.wikiId = data.wikipage - @scope.projectId = data.project - return data - - promise.then(=> @.loadProject()) - .then(=> @.loadUsersAndRoles()) - .then(=> @.loadWikiLinks()) - .then(=> @.loadAttachments(@scope.wikiId)) - - params = { - pslug: @params.pslug - wikipage: @params.slug - } - - promise2 = @repo.resolve(params) - - promise2.then (data) => - @scope.wikiId = data.wikipage - return data - - promise2.then => @.loadWiki() - promise2.then null, => - @scope.wiki = { - content: "" - } - - return @q.all(promise, promise2) - save: -> onSuccess = => @confirm.notify("success")