======================
Base Binary URL Import
======================

.. 
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! This file is generated by oca-gen-addon-readme !!
   !! changes will be overwritten.                   !!
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! source digest: sha256:98aa6009c212e72aa0059f3e08631c8656ff33fa1892e7a1c6005bc4d0e79e33
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Alpha-red.png
    :target: https://odoo-community.org/page/development-status
    :alt: Alpha
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
    :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
    :alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--ux-lightgray.png?logo=github
    :target: https://github.com/OCA/server-ux/tree/16.0/base_binary_url_import
    :alt: OCA/server-ux
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
    :target: https://translation.odoo-community.org/projects/server-ux-16-0/server-ux-16-0-base_binary_url_import
    :alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
    :target: https://runboat.odoo-community.org/builds?repo=OCA/server-ux&target_branch=16.0
    :alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This modules provides a wizard that allows mass importation of Binary files
from URLs into selected model/field of multiple records.

As the standard CSV import only allows to import Binaries from URLs into image
fields, this module provides the possibility to import any kind of Binary such
as Texts, PDFs, and anything else.

.. IMPORTANT::
   This is an alpha version, the data model and design can change at any time without warning.
   Only for development or testing purpose, do not use in production.
   `More details on development status <https://odoo-community.org/page/development-status>`_

**Table of contents**

.. contents::
   :local:

Configuration
=============

Configuration shouldn't be needed, however you can customize the import using
following `ir.config_parameter`:

* `binary.url.import.max.size`: Maximum size (in Bytes) of imported Binaries.
  (default = 10485760 = 10MB)

* `binary.url.import.timeout`: Timeout limit (in seconds) for HTTP requests to
  get an answer.
  (default = 5)

Usage
=====

The importation wizard will be available in the Settings > Technical menu.

An admin user can select the target model and field of the importation, and
select a Char field where to store the file name of the Binary being downloaded.

He can then list record IDs (either using Database ID or XML ID) and the URL
of the file to download and write into these records.

To create new records, a standard import can be made without the binary field first,
then a CSV like list can be copy pasted into the wizard to allow mass importation
without having to upload or list URLs one by one.

Known issues / Roadmap
======================

* No check is done on the target records if the target field is not empty.
* Target records can not be created and must be created first before being
  able to import Binaries from URL on it.
* Restriction of models to be selected could be improved

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-ux/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/server-ux/issues/new?body=module:%20base_binary_url_import%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
~~~~~~~

* Camptocamp

Contributors
~~~~~~~~~~~~

* Akim Juillerat <akim.juillerat@camptocamp.com>
* `Trobz <https://trobz.com>`_:
    * Jack Le <anlh@trobz.com>

Other credits
~~~~~~~~~~~~~

The migration of this module from 13.0 to 16.0 was financially supported by Camptocamp

Maintainers
~~~~~~~~~~~

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
   :alt: Odoo Community Association
   :target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/server-ux <https://github.com/OCA/server-ux/tree/16.0/base_binary_url_import>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
