diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2024-01-29 16:04:47 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2024-01-29 16:04:47 +0700 |
| commit | 9c3ba66d67a91a3281f8fcb2c4956f69489600ab (patch) | |
| tree | 6a2e9b02ae1c77ba7f59c761fb0a0d7efcac7c36 | |
| parent | 3877bf37dae2db272b869f829ed52ef77689cc5d (diff) | |
Update import setting feature
| -rw-r--r-- | indoteknik_api/controllers/controller.py | 2 | ||||
| -rw-r--r-- | indoteknik_custom/models/base_import_import.py | 23 |
2 files changed, 13 insertions, 12 deletions
diff --git a/indoteknik_api/controllers/controller.py b/indoteknik_api/controllers/controller.py index fb07708e..bb060cf5 100644 --- a/indoteknik_api/controllers/controller.py +++ b/indoteknik_api/controllers/controller.py @@ -191,7 +191,7 @@ class Controller(http.Controller): image = model[field] if field in model else '' if model_name in ['product.template', 'product.product']: - version = '2' if field not in ['image_256', 'image_512', 'image_1024', 'image_1920'] else '1' + version = '1' if field in ['image_256', 'image_512', 'image_1024', 'image_1920'] else '2' ratio = kw.get('ratio', '') image = model['image_512'] or '' image = self.add_watermark_to_image(image, ratio, version) diff --git a/indoteknik_custom/models/base_import_import.py b/indoteknik_custom/models/base_import_import.py index bc3b0e37..043f860c 100644 --- a/indoteknik_custom/models/base_import_import.py +++ b/indoteknik_custom/models/base_import_import.py @@ -2,6 +2,7 @@ from datetime import datetime from odoo import models from odoo.exceptions import UserError +from pytz import timezone class Import(models.TransientModel): @@ -12,17 +13,21 @@ class Import(models.TransientModel): def _get_config_allowed_model(self): return self.env['ir.config_parameter'].sudo().get_param('base_import.import.allowed_model', '') + + def _get_config_always_allowed_model(self): + return self.env['ir.config_parameter'].sudo().get_param('base_import.import.always_allowed_model', '') def _check_time_range(self, config_string): - current_time = datetime.now().time() + current_time = datetime.now(tz=timezone('Asia/Jakarta')).time() ranges = config_string.split(' / ') for time_range in ranges: start_str, end_str = time_range.split(' - ') start_time = datetime.strptime(start_str, '%H:%M:%S').time() end_time = datetime.strptime(end_str, '%H:%M:%S').time() - - if start_time <= current_time and current_time <= end_time: + + # If current time in range of start and end time + if current_time >= start_time and current_time <= end_time: return True return False @@ -30,16 +35,12 @@ class Import(models.TransientModel): def _check_enable_import(self): enable_import = self._get_config_enable_import() allowed_model = self._get_config_allowed_model() + always_allowed_model = self._get_config_always_allowed_model() - is_allowed = False - if (allowed_model != '-' and self.res_model in allowed_model) or allowed_model == 'ALL': - is_allowed = True - - if enable_import.lower() == 'false': - return False - elif enable_import.lower() == 'true' and is_allowed: + if self.res_model in always_allowed_model or always_allowed_model == 'ALL': return True - elif '-' in enable_import and is_allowed: + + if self.res_model in allowed_model or allowed_model == 'ALL': return self._check_time_range(enable_import) return False |
