Example #1
0
def prestashop_product_pricelist_item_created(session,
                                              model_name,
                                              record_id,
                                              fields=None):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, fields)
def prestashop_attribute_option_written(session,
                                        model_name,
                                        record_id,
                                        fields=None):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, priority=20)
def prestashop_product_atrribute_value_created(session,
                                               model_name,
                                               record_id,
                                               fields=None):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, priority=20)
def product_product_write(session, model_name, record_id, fields):
    if session.context.get('connector_no_export'):
        return
    model = session.pool.get(model_name)
    record = model.browse(session.cr, session.uid,
                           record_id, context=session.context)
    for binding in record.prestashop_bind_ids:
        export_record.delay(session, 'prestashop.product.product', binding.id, fields, priority=20)
def attribute_option_written(session, model_name, record_id, fields=None):
    if session.context.get('connector_no_export'):
        return
    model = session.pool.get(model_name)
    record = model.browse(session.cr, session.uid,
                           record_id, context=session.context)
    for binding in record.prestashop_bind_ids:
        export_record.delay(session, 'prestashop.attribute.option', binding.id, fields, priority=20)
Example #6
0
def prestashop_product_combination_write(session, model_name,
                                         record_id, fields):
    if session.context.get('connector_no_export'):
        return
    fields = list(set(fields).difference(set(INVENTORY_FIELDS)))
    if fields:
        export_record.delay(session, model_name, record_id,
                            fields, priority=20)
Example #7
0
def product_template_write(session, model_name, record_id, fields):
    if session.context.get('connector_no_export'):
        return
    model = session.pool.get(model_name)
    record = model.browse(session.cr, session.uid,
                          record_id, context=session.context)
    for binding in record.prestashop_bind_ids:
        export_record.delay(session, 'prestashop.product.template', binding.id,
                            fields, priority=20)
def product_pricelist_item_written(session, model_name, record_id, fields):
    if session.context.get('connector_no_export'):
        return
    if set(fields).intersection(set(PRICELIST_FIELDS)):
        model = session.pool.get(model_name)
        record = model.browse(session.cr, session.uid,
                       record_id, context=session.context)
        for binding in record.prestashop_bind_ids:
            export_record.delay(session, 'prestashop.product.pricelist.item',
                                                            binding.id, fields)
Example #9
0
def product_product_write(session, model_name, record_id, fields):
    if session.context.get('connector_no_export'):
        return
    model = session.pool.get(model_name)
    record = model.browse(session.cr, session.uid,
                          record_id, context=session.context)
    if not record.is_product_variant:
        return
    for binding in record.prestashop_bind_ids:
        export_record.delay(session,
                            'prestashop.product.combination', binding.id,
                            fields, priority=20)
Example #10
0
def product_pricelist_item_written(session, model_name, record_id, fields):
    if session.context.get('connector_no_export'):
        return
    if set(fields).intersection(set(PRICELIST_FIELDS)):
        model = session.pool.get(model_name)
        record = model.browse(session.cr,
                              session.uid,
                              record_id,
                              context=session.context)
        for binding in record.prestashop_bind_ids:
            export_record.delay(session, 'prestashop.product.pricelist.item',
                                binding.id, fields)
def attribute_option_written(session, model_name, record_id, fields=None):
    if session.context.get('connector_no_export'):
        return
    model = session.pool.get(model_name)
    record = model.browse(session.cr,
                          session.uid,
                          record_id,
                          context=session.context)
    for binding in record.prestashop_bind_ids:
        export_record.delay(session,
                            'prestashop.attribute.option',
                            binding.id,
                            fields,
                            priority=20)
Example #12
0
def product_image_write(session, model_name, record_id, fields):
    if session.context.get('connector_no_export'):
        return
    model = session.pool.get(model_name)
    record = model.browse(session.cr, session.uid,
                          record_id, context=session.context)
    for binding in record.prestashop_bind_ids:
        export_record.delay(session, 'prestashop.product.image',
                            binding.id, record.file_db_store,
                            priority=20)
    for variant in record.products:
        for variant_bind in variant.prestashop_bind_ids:
            export_record.delay(session, 'prestashop.product.combination',
                                variant_bind.id, priority=20)
Example #13
0
 def check_images(self):
     ctx = self.session.context.copy()
     ctx['connector_no_export'] = True
     # self.check_front_image(ctx)
     if self.erp_record.image_ids:
         image_binder = self.get_binder_for_model(
             'prestashop.product.image')
         for image_line in self.erp_record.image_ids:
             image_ext_id = image_binder.to_backend(image_line.id,
                                                    unwrap=True)
             if not image_ext_id:
                 image_ext_id = self.session.pool[
                     'prestashop.product.image'].create(
                     self.session.cr, self.session.uid, {
                         'backend_id': self.backend_record.id,
                         'openerp_id': image_line.id},
                     context=ctx)
                 export_record.delay(self.session,
                                     'prestashop.product.image',
                                     image_ext_id, image_line.file_db_store)
Example #14
0
    def export_variants(self):
        combination_obj = self.session.pool['prestashop.product.combination']
        if self.erp_record.product_variant_ids:
            ctx = self.session.context.copy()
            ctx['connector_no_export'] = True
            for product in self.erp_record.product_variant_ids:
                if not product.attribute_value_ids:
                    continue
                combination_ext_id = combination_obj.search(
                    self.session.cr, self.session.uid,
                    [('backend_id', '=', self.backend_record.id),
                     ('openerp_id', '=', product.id)], context=ctx)
#                combination_ext_id = combination_binder.to_backend(
#                    product.id, unwrap=True)
                if not combination_ext_id:
                    combination_ext_id = combination_obj.create(
                        self.session.cr, self.session.uid, {
                            'backend_id': self.backend_record.id,
                            'openerp_id': product.id,
                            'main_template_id': self.binding_id}, context=ctx)
                    export_record.delay(self.session,
                                        'prestashop.product.combination',
                                        combination_ext_id)
def prestashop_attribute_option_created(session, model_name, record_id):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, priority=20)
Example #16
0
def prestashop_product_combination_create(session, model_name, record_id,
                                          fields=None):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, priority=20)
def prestashop_attribute_option_created(session, model_name, record_id):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, priority=20)
Example #18
0
def prestashop_product_product_create(session, model_name, record_id):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, priority=20)
Example #19
0
def prestashop_product_product_write(session, model_name, record_id, fields):
    if session.context.get('connector_no_export'):
        return
    fields = list(set(fields).difference(set(INVENTORY_FIELDS)))
    if fields:
        export_record.delay(session, model_name, record_id, fields, priority=20)
def prestashop_attribute_option_written(session, model_name, record_id, fields=None):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, priority=20)
def prestashop_product_pricelist_item_created(session, model_name, record_id, fields=None):
    if session.context.get('connector_no_export'):
        return
    export_record.delay(session, model_name, record_id, fields)