summaryrefslogtreecommitdiff
path: root/fixco_custom/models/ir_attachment.py
blob: 6417fa3f64665b6944b843f43ccb2bc5b77cfbe7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from odoo import api, fields, models, _
import logging

_logger = logging.getLogger(__name__)


class Attachment(models.Model):
    _inherit = 'ir.attachment'

    @api.autovacuum
    def _gc_file_store(self):
        _logger.info("filestore gc checked, removed - override")

    def is_found(self, model, field, id):
        attachment = self.search([
            ('res_model', '=', model),
            ('res_field', '=', field),
            ('res_id', '=', int(id))
        ])
        return True if attachment else False

    def api_image(self, model, field, id):
        base_url = self.env['ir.config_parameter'].get_param('web.base.url')
        is_found = self.is_found(model, field, id)
        return base_url + 'api/image/' + model + '/' + field + '/' + str(id) if is_found else ''
    
    def api_image_local(self, model, field, id):
        base_url = self.env['ir.config_parameter'].get_param('web.base.local_url')
        is_found = self.is_found(model, field, id)
        return base_url + 'api/image/' + model + '/' + field + '/' + str(id) if is_found else ''