addons-cm/README.md
GitHub Copilot 1d6f95bdb7
Some checks failed
CI / lint (pull_request) Successful in 31s
CI / test (pull_request) Failing after 10m57s
CI / review (pull_request) Has been skipped
[ADD] web_checkbox_contrast: visible border on unchecked backend checkboxes
Odoo 18 draws the unchecked checkboxes, radios and switches of the backend
with the separator gray (`--border-color`, gray-300): 1.3:1 on white, and
1.1:1 on readonly fields and list cells, which are dimmed to 50% on top.

CSS-only addon that redefines `--border-color` on `.form-check-input`:
gray-600 (4.7:1) when editable, gray-900 (3.1:1 after the dimming) when
disabled. Bootstrap reads the property only in the base border of the
control, so the checked, indeterminate, focus and hover states keep their
stock colours whatever the load order.

Closes #20

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 19:01:12 +02:00

5.1 KiB

Odoo Addons — Criptomart

Colección de addons Odoo 18.0 para Criptomart / Elika Bilbo. Incluye addons OCA incluidos como dependencias y addons custom desarrollados internamente.

Addons OCA (dependencias incluidas)

Addons del ecosistema OCA incorporados al repositorio. No se modifican salvo hotfixes puntuales.

Addon Versión Descripción
account_invoice_triple_discount 18.0.1.0.0 Triple descuento en líneas de factura
product_get_price_helper 18.0.1.1.0 Helper para obtener precios de producto respetando tarifas
product_main_seller 18.0.1.0.0 Campo "proveedor principal" en producto
product_origin_char 18.0.2.0.0 Campo de texto libre para origen del producto
product_price_category 18.0.1.0.0 Categoría de precio en producto + aplicación masiva vía tarifas
purchase_triple_discount 18.0.1.0.0 Triple descuento en líneas de pedido de compra

Addons Custom

Addons desarrollados por Criptomart para necesidades específicas del proyecto.

Addon Versión Descripción
account_invoice_triple_discount_readonly 18.0.1.0.0 Corrige bug de acumulación de descuentos y pone descuento total en solo lectura
membership_expiry_reminder 18.0.1.0.0 Recordatorio por email de membresías próximas a vencer
portal_event_registration 18.0.1.0.0 Vista portal de inscripciones a eventos con adjuntos al chatter
product_price_category_supplier 18.0.1.0.0 Categoría de precio por defecto en proveedor + actualización masiva de productos
product_pricelist_total_margin 18.0.1.2.0 Margen aditivo (no compuesto) en tarifas encadenadas, con límites globales
product_sale_price_from_pricelist 18.0.2.7.0 Calcula precio de venta desde último precio de compra vía tarifa configurable
stock_picking_batch_collect 18.0.2.0.0 Montaje de cestas en lotes: columnas extra, resumen por producto y vista operario
web_checkbox_contrast 18.0.1.0.0 Borde visible en casillas, radios e interruptores sin marcar del backend (sólo CSS)
web_list_striped 18.0.1.0.0 Efecto cebra y hover suave en todas las listas del backend (sólo CSS)
website_sale_aplicoop 18.0.1.17.0 Sistema de pedidos colaborativos para grupos de consumo (reemplazo de Aplicoop)

Dependencias entre addons custom

website_sale_aplicoop
  └── product_sale_price_from_pricelist
        └── product_pricelist_total_margin
              └── product_price_category
  └── product_main_seller
  └── product_price_category_supplier
        └── product_price_category
  └── stock_picking_batch_collect
        └── stock_move_manual_quantity

stock_picking_batch_collect
  └── stock_move_manual_quantity
  └── stock_picking_batch (Odoo core)

account_invoice_triple_discount_readonly
  └── account_invoice_triple_discount
  └── purchase_triple_discount

Desarrollo

Instalación / actualización de un addon

docker-compose exec -T odoo odoo -d odoo -u <nombre_addon> --stop-after-init

Tests

docker-compose exec -T odoo odoo -d odoo --test-enable --stop-after-init -u <nombre_addon>

Linters

# Python
black . && isort . && flake8 . && pylint --load-plugins=pylint_odoo <addon>/

# JS
npx eslint <addon>/static/src/

Ver docs/LINTERS_README.md para configuración completa.

Traducciones

Ver docs/TRANSLATIONS.md.

CI/CD (Forgejo Actions)

En .gitea/workflows/, sobre un runner (etiqueta issue-bot) registrado en la organización CriptoMart en la misma máquina e imagen que el de ecocentral; ver tools/issue_bot/README.md:

Workflow Cuándo Qué hace
ci.yml PR y push a 18.0 lint (pre-commit), test (tools/ci/run_tests.py) y review (bot de revisión, tras pasar los dos)
issue-bot.yml Incidencia abierta o comentada Bot de incidencias: responde o abre un PR en bot/issue-N
pr-bot.yml Se quita WIP o se pone la etiqueta i18n Bot de revisión, si el CI ya había pasado

El contexto que reciben los bots sobre este repo está en .gitea/issue-bot.md. Los repos OCA de los que dependen los tests y la imagen del runner se mantienen en el repo de ecocentral (tools/issue_bot/runner/).

Documentación técnica

Ver carpeta docs/ para documentación transversal (instalación, lazy loading, QWeb, etc.).