Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-05-19 18:44:42 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2021-05-19 18:44:42 +0300
commit4555e1b21c365ed8303ffb7a3325d773c9b8bf31 (patch)
tree5423a1c7516cffe36384133ade12572cf709398d /app/services/wiki_pages
parente570267f2f6b326480d284e0164a6464ba4081bc (diff)
Add latest changes from gitlab-org/gitlab@13-12-stable-eev13.12.0-rc42
Diffstat (limited to 'app/services/wiki_pages')
-rw-r--r--app/services/wiki_pages/base_service.rb2
-rw-r--r--app/services/wiki_pages/update_service.rb14
2 files changed, 11 insertions, 5 deletions
diff --git a/app/services/wiki_pages/base_service.rb b/app/services/wiki_pages/base_service.rb
index fd234630633..4ec884469eb 100644
--- a/app/services/wiki_pages/base_service.rb
+++ b/app/services/wiki_pages/base_service.rb
@@ -61,4 +61,4 @@ module WikiPages
end
end
-WikiPages::BaseService.prepend_if_ee('EE::WikiPages::BaseService')
+WikiPages::BaseService.prepend_mod_with('WikiPages::BaseService')
diff --git a/app/services/wiki_pages/update_service.rb b/app/services/wiki_pages/update_service.rb
index f2fc6b37c34..88275f8c417 100644
--- a/app/services/wiki_pages/update_service.rb
+++ b/app/services/wiki_pages/update_service.rb
@@ -2,6 +2,8 @@
module WikiPages
class UpdateService < WikiPages::BaseService
+ UpdateError = Class.new(StandardError)
+
def execute(page)
# this class is not thread safe!
@old_slug = page.slug
@@ -10,11 +12,15 @@ module WikiPages
execute_hooks(page)
ServiceResponse.success(payload: { page: page })
else
- ServiceResponse.error(
- message: _('Could not update wiki page'),
- payload: { page: page }
- )
+ raise UpdateError, s_('Could not update wiki page')
end
+ rescue UpdateError, WikiPage::PageChangedError, WikiPage::PageRenameError => e
+ page.update_attributes(@params) # rubocop:disable Rails/ActiveRecordAliases
+
+ ServiceResponse.error(
+ message: e.message,
+ payload: { page: page }
+ )
end
def usage_counter_action