You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.9 KiB

  1. ###################################################################################
  2. #
  3. # Copyright (c) 2017-2019 MuK IT GmbH.
  4. #
  5. # This file is part of MuK Web Refresh
  6. # (see https://mukit.at).
  7. #
  8. # This program is free software: you can redistribute it and/or modify
  9. # it under the terms of the GNU Affero General Public License as
  10. # published by the Free Software Foundation, either version 3 of the
  11. # License, or (at your option) any later version.
  12. #
  13. # This program is distributed in the hope that it will be useful,
  14. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. # GNU Affero General Public License for more details.
  17. #
  18. # You should have received a copy of the GNU Affero General Public License
  19. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  20. #
  21. ###################################################################################
  22. from odoo import api, SUPERUSER_ID
  23. from . import controllers
  24. from . import models
  25. REFRESH_RULE_MODELS = [
  26. 'account.bank.statement', 'account.invoice', 'account.journal',
  27. 'account.move', 'crm.lead', 'event.event', 'fleet.vehicle', 'hr.contract',
  28. 'hr.department', 'hr.employee', 'hr.job', 'hr.leave', 'lunch.order',
  29. 'mrp.bom', 'mrp.document', 'mrp.workorder', 'product.category',
  30. 'product.template', 'project.project', 'project.task', 'purchase.order',
  31. 'repair.order', 'res.partner', 'res.users', 'sale.order', 'slide.slide',
  32. 'stock.inventory', 'stock.move', 'survey.page', 'survey.survey',
  33. ]
  34. def _install_initialize_rules(cr, registry):
  35. env = api.Environment(cr, SUPERUSER_ID, {})
  36. for model_name in REFRESH_RULE_MODELS:
  37. env['base.automation'].create_refresh_rules(model_name)
  38. def _uninstall_remove_rules(cr, registry):
  39. env = api.Environment(cr, SUPERUSER_ID, {})
  40. env['base.automation'].search([('state', '=', 'refresh')]).unlink()