Skip to content

Commit

Permalink
[10.0][IMP] Use the technical user to recompute and export (buttons o…
Browse files Browse the repository at this point in the history
…n shopinvader backend view)
  • Loading branch information
acsonefho committed Nov 18, 2019
1 parent 43201c5 commit 3fef3ad
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 3 deletions.
6 changes: 5 additions & 1 deletion shopinvader_search_engine/__manifest__.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,11 @@
"website": "www.akretion.com",
"license": "AGPL-3",
"category": "Generic Modules",
"depends": ["shopinvader", "connector_search_engine"],
"depends": [
"shopinvader",
"connector_search_engine",
"base_technical_user",
],
"data": [
"views/shopinvader_backend_view.xml",
"views/product_view.xml",
Expand Down
20 changes: 18 additions & 2 deletions shopinvader_search_engine/models/shopinvader_backend.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,31 @@ def _get_default_models(self):

@api.multi
def force_recompute_all_binding_index(self):
self.mapped("se_backend_id.index_ids").force_recompute_all_binding()
self_sudoer = self._use_technical_user_if_set()
self_sudoer.mapped(
"se_backend_id.index_ids"
).force_recompute_all_binding()
return True

@api.multi
def force_batch_export_index(self):
for index in self.mapped("se_backend_id.index_ids"):
self_sudoer = self._use_technical_user_if_set()
for index in self_sudoer.mapped("se_backend_id.index_ids"):
index.force_batch_export()
return True

def _use_technical_user_if_set(self):
"""
Change the current user by the technical user if it's set on the
current user's company.
:return: self
"""
self_sudoer = self
tech_user = self.env.user.company_id.user_tech_id
if tech_user:
self_sudoer = self.sudo(tech_user.id)
return self_sudoer

@api.multi
def clear_index(self):
for index in self.mapped("se_backend_id.index_ids"):
Expand Down

0 comments on commit 3fef3ad

Please sign in to comment.