Repository
odoo/odoo · module folder
Module version
1.0
Category
Hidden
Folder size
8.91 MB
License
LGPL-3
Application
No
Auto-installable
Yes
Website
https://www.odoo.com
Last tracking update
2026-08-20 22:13:22
Authors
odoo
Maintainers
odoo
Committers
Xavier Morel, Odoo Translation Bot, David Monjoie, Nicolas Martinelli, Nicolas Lempereur, Aaron Bohy, Géry Debongnie, Lucas Perais (lpe), qsm-odoo, Jorge Pinna Puissant, Lucas Perais, Julien Castiaux, Romeo Fragomeli, Julien Mougenot, Samuel Degueldre, std-odoo, Achraf (abz), Tiffany Chang (tic), Gorash, Mathieu Duckerts-Antoine, Pierre Paridans, abd-msyukyu-odoo, Romain Estievenart, Benjamin Vray, Benoit Socias, Antoine Guenet, Nicolas Bayet, Jinjiu Liu, Mathieu Walravens, luvi, Hubert Van De Walle, Renaud Thiry, Julien Banken, Louis Wicket (wil), alsh-odoo, Gaetan Vanden Bergh (gavb), Julien (jula), Mahamadasif Ansari, Robin Lejeune (role), Soukéina Bojabza, Louis (loco), Levi Siuzdak (sile), Sébastien Geelen (sge), Dylan Kiss (dyki), Mahdi cheikh rouhou (macr), FrancoisGe, Mayurrajsinh Rathod, Chong Wang (cwg), Odoo, Brieuc-brd, divy-odoo, Mahdi Cheikh Rouhou (macr), Zelong Lin, Walid (wasa), Deependra Solanki, Serge Bayet (seba), Bruno Boi (boi), dhba, Bastien Fafchamps (bafa), nihp-odoo, adch-odoo, Rodolpho Lima, Adnan Saiyed, Chrysanthe (chgo), Sanjay Sharma, mano-odoo, aamo-odoo, Joseph (jcb), thle-odoo, guce, Antoine (anso), Léo Gizard, Arib Ansari, Rahil Ghanchi, Sébastien (blse), paru-odoo, David Monnom, sben-odoo, pkgu-odoo, Bastien PIERRE, fdardenne, Corentin Heinix (cohe), pish-odoo, Panagiotis Kyriakou, Thomas Josse (THJO), Krzysztof Magusiak (krma), Ajit Singh, krip-odoo, Harrison Hutton, Rushil Patel, pajo, defl, MAGREMENT, Julien Launois (jula), Laetitia (ldau), rusp-odoo, aans-odoo, dtda-odoo, adip-odoo, Augustin (duau), Subhadeep R. Dev, Parth Pujara, Serhii Rubanskyi, chdh-odoo, romo, Davide Bonetto, Alessandro Lupo, kmdi-odoo, josv-odoo, Waleed Elgamal, Robert Smith (rosm), Benoit Socias (bso), Serge Bayet, Sébastien Geelen, Rudra Patel, Nguyen Nguyen (ngtpn), Omar Khalil (omkha), sbbh-odoo, assk-odoo, vega-odoo, Zachary (zavan), Kadam Darji, Julien (jdeh), Guillaume Jacquet, Dhruv Chauhan, Akshaya Patil, jeevanism, Pratik Raval (prra), emge-odoo
Odoo dependencies
odoo/odoo:
- bus
- web
Python dependencies
None
System dependencies
None
Required by
document_page, html_builder, mail, point_of_sale, portal, test_html_field_history, web_editor_class_selector, web_unsplash, website, website_form_require_legal, website_profile
Description
Html Editor
==========================
This addon provides an extensible, maintainable editor.
    

Code Analysis

Views touched (0)

No views found for this module.

HTTP endpoints (15)
Route(s)HandlerAuthTypeMethodsFlags
/web_editor/attachment/add_data, /html_editor/attachment/add_data HTML_Editor.add_data user jsonrpc POST website
/web_editor/attachment/add_url, /html_editor/attachment/add_url HTML_Editor.add_url user jsonrpc POST website
/web_editor/bus_broadcast, /html_editor/bus_broadcast HTML_Editor.bus_broadcast user jsonrpc ALL
/web_editor/generate_text, /html_editor/generate_text HTML_Editor.generate_text user jsonrpc ALL sudo
/web_editor/get_ice_servers, /html_editor/get_ice_servers HTML_Editor.get_ice_servers user jsonrpc ALL
/web_editor/get_image_info, /html_editor/get_image_info HTML_Editor.get_image_info user jsonrpc ALL website
/web_editor/image_shape/<string:img_key>/<module>/<path:filename>, /html_editor/image_shape/<string:img_key>/<module>/<path:filename> HTML_Editor.image_shape public http ALL website
/html_editor/link_preview_external HTML_Editor.link_preview_metadata public jsonrpc POST
/html_editor/link_preview_internal HTML_Editor.link_preview_metadata_internal user jsonrpc POST sudo
/html_editor/media_library_search HTML_Editor.media_library_search user jsonrpc ALL sudo website
/web_editor/modify_image/<model("ir.attachment"):attachment>, /html_editor/modify_image/<model("ir.attachment"):attachment> HTML_Editor.modify_image user jsonrpc ALL sudo website
/html_editor/attachment/remove HTML_Editor.remove user jsonrpc ALL website
/web_editor/save_library_media, /html_editor/save_library_media HTML_Editor.save_library_media user jsonrpc POST sudo
/web_editor/shape/<module>/<path:filename>, /html_editor/shape/<module>/<path:filename> HTML_Editor.shape public http ALL sudo website
/web_editor/video_url/data, /html_editor/video_url/data HTML_Editor.video_url_data user jsonrpc ALL website
Models touched (24)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • html_field_history Json
    prefetch=False readonly=True args: 'History data'
  • html_field_history_metadata Json
    compute='_compute_metadata' args: 'History metadata'
Public methods (5)
  • create(self, vals_list)
    @api.model_create_multi
  • html_field_history_get_comparison_at_revision(self, field_name, revision_id)
    For the requested field, Get a comparison between the current content of the field and the content restored at the requested revision_id. :param str field_name: the name of the field :param int revision_id: id of the last revision to compare :return: string: the comparison
  • html_field_history_get_content_at_revision(self, field_name, revision_id)
    Get the requested field content restored at the revision_id. :param str field_name: the name of the field :param int revision_id: id of the last revision to restore :return: string: the restored content
  • html_field_history_get_unified_diff_at_revision(self, field_name, revision_id)
    For the requested field, Get a unified diff between the current content of the field and the content restored at the requested revision_id. :param str field_name: the name of the field :param int revision_id: id of the last revision to compare :return: string: the unified diff
  • write(self, vals)

New fields (11)
  • binary Binary
    attachment=False
  • char Char
  • date Date
  • datetime Datetime
  • float Float
  • html Html
  • integer Integer
  • many2one Many2one → html_editor.converter.test.sub
    args: 'html_editor.converter.test.sub'
  • numeric Float
    digits=(16, 2)
  • selection_str Selection
    string="Lorsqu'un pancake prend l'avion à destination de Toronto et qu'il fait une escale technique à St Claude, on dit:" args: [('A', "Qu'il n'est pas arrivé à Toronto"), ('B', "Qu'il était supposé arriver à Toronto"), ('C', "Qu'est-ce qu'il fout ce maudit pancake, tabernacle ?"), ('D', 'La réponse D')]
  • text Text
Public methods (0)

No public methods.

New fields (1)
  • name Char
Public methods (0)

No public methods.

New fields (5)
  • image_height Integer
    compute='_compute_image_size'
  • image_src Char
    compute='_compute_image_src'
  • image_width Integer
    compute='_compute_image_size'
  • local_url Char
    compute='_compute_local_url' args: 'Attachment URL'
  • original_id Many2one → ir.attachment
    index='btree_not_null' string='Original (unoptimized, unresized) attachment' args: 'ir.attachment'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (3)
  • attributes(self, record, field_name, options, values=None)
    @api.model
  • from_html(self, model, field, element)
    @api.model
  • value_from_string(self, value)

New fields (0)

No new fields.

Public methods (2)
  • attributes(self, record, field_name, options, values=None)
    @api.model
  • get_record_to_html(self, contact_ids, options=None)
    @api.model
    Helper to call the rendering of contact field.

New fields (0)

No new fields.

Public methods (2)
  • attributes(self, record, field_name, options, values=None)
    @api.model
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (2)
  • attributes(self, record, field_name, options, values=None)
    @api.model
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (2)
  • attributes(self, record, field_name, options, values=None)
    @api.model
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (1)
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (2)
  • attributes(self, record, field_name, options, values=None)
    @api.model
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (3)
  • from_html(self, model, field, element)
    @api.model
  • load_local_url(self, url)
  • load_remote_url(self, url)

New fields (0)

No new fields.

Public methods (1)
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (2)
  • attributes(self, record, field_name, options, values=None)
    @api.model
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (1)
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (1)
  • from_html(self, model, field, element)
    @api.model

New fields (0)

No new fields.

Public methods (13)
  • delete_snippet(self, view_id, template_key)
    @api.model
  • extract_embedded_fields(self, arch)
    @api.model
  • extract_oe_structures(self, arch)
    @api.model
  • get_default_lang_code(self)
    @api.model
  • get_related_views(self, key, bundles=False)
    @api.model
    Get inherit view's informations of the template ``key``. returns templates info (which can be active or not) ``bundles=True`` returns also the asset bundles
  • rename_snippet(self, name, view_id, template_key)
    @api.model
  • replace_arch_section(self, section_xpath, replacement, replace_tail=False)
  • save(self, value, xpath=None)
    Update a view section. The view section may embed fields to write Note that `self` record might not exist when saving an embed field :param str xpath: valid xpath to the tag to replace
  • save_embedded_field(self, el)
    @api.model
  • save_oe_structure(self, el)
  • save_snippet(self, name, arch, template_key, snippet_key, thumbnail_url)
    @api.model
    Saves a new snippet arch so that it appears with the given name when using the given snippets template. :param name: the name of the snippet to save :param arch: the html structure of the snippet to save :param template_key: the key of the view regrouping all snippets in which the snippet to save is meant to appear :param snippet_key: the key (without module part) to identify the snippet from which the snippet to save originates :param thumbnail_url: the url of the thumbnail to use when displaying the snippet to save
  • to_empty_oe_structure(self, el)
    @api.model
  • to_field_ref(self, el)
    @api.model

New fields (0)

No new fields.

Public methods (0)

No public methods.

Loading…