| spp.approval.tier |
Individual tier in a multi-tier
@@ -478,8 +478,8 @@ Tabs
Security
-
-
+
+
| Group |
@@ -487,19 +487,23 @@ Security
-| spp_approval.group_approval_viewer |
+ | spp_
+approval.group_approval_viewer |
Read approval records |
-| spp_approval.group_approval_officer |
+ | spp_a
+pproval.group_approval_officer |
Read/Write/Create (no delete) |
-| spp_approval.group_approval_manager |
+ | spp_a
+pproval.group_approval_manager |
Read/Write/Create on all models
(delete only for reviews/config;
definitions and freezes require
admin) |
-| spp_approval.group_approval_approver |
+ | spp_ap
+proval.group_approval_approver |
Approve/reject assigned reviews |
diff --git a/spp_area/README.rst b/spp_area/README.rst
index 53f6c857..a5f81632 100644
--- a/spp_area/README.rst
+++ b/spp_area/README.rst
@@ -46,29 +46,29 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------------+----------------------------------+
-| Model | Description |
-+=====================================+==================================+
-| ``spp.area`` | Hierarchical geographical area |
-| | with code and name |
-+-------------------------------------+----------------------------------+
-| ``spp.area.kind`` | Area type definition (country, |
-| | province, district, etc.) |
-+-------------------------------------+----------------------------------+
-| ``spp.area.tag`` | Classification tags for areas |
-+-------------------------------------+----------------------------------+
-| ``spp.area.import`` | Excel import wizard with |
-| | validation and bulk processing |
-+-------------------------------------+----------------------------------+
-| ``spp.area.import.raw`` | Staging table for import |
-| | validation |
-+-------------------------------------+----------------------------------+
-| ``spp.area.import.json`` | Parsed JSON storage from Excel |
-| | files |
-+-------------------------------------+----------------------------------+
-| ``spp.area.import.language.wizard`` | Wizard for activating languages |
-| | during import |
-+-------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Model | Description |
++==================================+==================================+
+| ``spp.area`` | Hierarchical geographical area |
+| | with code and name |
++----------------------------------+----------------------------------+
+| ``spp.area.kind`` | Area type definition (country, |
+| | province, district, etc.) |
++----------------------------------+----------------------------------+
+| ``spp.area.tag`` | Classification tags for areas |
++----------------------------------+----------------------------------+
+| ``spp.area.import`` | Excel import wizard with |
+| | validation and bulk processing |
++----------------------------------+----------------------------------+
+| ``spp.area.import.raw`` | Staging table for import |
+| | validation |
++----------------------------------+----------------------------------+
+| ``spp.area.import.json`` | Parsed JSON storage from Excel |
+| | files |
++----------------------------------+----------------------------------+
+| ``s | Wizard for activating languages |
+| pp.area.import.language.wizard`` | during import |
++----------------------------------+----------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_area/static/description/index.html b/spp_area/static/description/index.html
index 06d6fed3..5cd5d7ee 100644
--- a/spp_area/static/description/index.html
+++ b/spp_area/static/description/index.html
@@ -395,8 +395,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -427,7 +427,8 @@ Key Models
Parsed JSON storage from Excel
files |
-| spp.area.import.language.wizard |
+ | s
+pp.area.import.language.wizard |
Wizard for activating languages
during import |
diff --git a/spp_area_hdx/README.rst b/spp_area_hdx/README.rst
index 8efd2692..e86b7d9d 100644
--- a/spp_area_hdx/README.rst
+++ b/spp_area_hdx/README.rst
@@ -46,21 +46,21 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Model | Description |
-+===============================+======================================+
-| ``spp.hdx.cod.source`` | Tracks COD datasets available from |
-| | HDX (one per country) |
-+-------------------------------+--------------------------------------+
-| ``spp.hdx.cod.resource`` | Individual admin level dataset |
-| | within a COD (e.g., Level 3) |
-+-------------------------------+--------------------------------------+
-| ``spp.hdx.cod.import.wizard`` | Multi-step wizard to download from |
-| | HDX or upload GeoJSON |
-+-------------------------------+--------------------------------------+
-| ``spp.area`` (extended) | Adds ``hdx_pcode`` field and GPS |
-| | lookup methods |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Description |
++===============================+=====================================+
+| ``spp.hdx.cod.source`` | Tracks COD datasets available from |
+| | HDX (one per country) |
++-------------------------------+-------------------------------------+
+| ``spp.hdx.cod.resource`` | Individual admin level dataset |
+| | within a COD (e.g., Level 3) |
++-------------------------------+-------------------------------------+
+| ``spp.hdx.cod.import.wizard`` | Multi-step wizard to download from |
+| | HDX or upload GeoJSON |
++-------------------------------+-------------------------------------+
+| ``spp.area`` (extended) | Adds ``hdx_pcode`` field and GPS |
+| | lookup methods |
++-------------------------------+-------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -87,14 +87,14 @@ UI Location
Security
~~~~~~~~
-+-----------------------+----------------------------------------------+
-| Group | Access |
-+=======================+==============================================+
-| ``group_hdx_user`` | Read access to COD sources and resources |
-+-----------------------+----------------------------------------------+
-| ``group_hdx_manager`` | Full CRUD on sources/resources, sync from |
-| | HDX, run imports |
-+-----------------------+----------------------------------------------+
++-----------------------+---------------------------------------------+
+| Group | Access |
++=======================+=============================================+
+| ``group_hdx_user`` | Read access to COD sources and resources |
++-----------------------+---------------------------------------------+
+| ``group_hdx_manager`` | Full CRUD on sources/resources, sync from |
+| | HDX, run imports |
++-----------------------+---------------------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_audit/README.rst b/spp_audit/README.rst
index b0de36ad..c19a2b5c 100644
--- a/spp_audit/README.rst
+++ b/spp_audit/README.rst
@@ -52,15 +52,15 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+--------------------+-------------------------------------------------+
-| Model | Description |
-+====================+=================================================+
-| ``spp.audit.rule`` | Defines which models and operations to audit, |
-| | with field filters |
-+--------------------+-------------------------------------------------+
-| ``spp.audit.log`` | Database-stored audit entries with old/new |
-| | value comparison |
-+--------------------+-------------------------------------------------+
++--------------------+------------------------------------------------+
+| Model | Description |
++====================+================================================+
+| ``spp.audit.rule`` | Defines which models and operations to audit, |
+| | with field filters |
++--------------------+------------------------------------------------+
+| ``spp.audit.log`` | Database-stored audit entries with old/new |
+| | value comparison |
++--------------------+------------------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -103,15 +103,15 @@ UI Location
Security
~~~~~~~~
-+-----------------------------------+----------------------------------+
-| Group | Access |
-+===================================+==================================+
-| ``spp_audit.group_audit_manager`` | Full CRUD on audit rules and |
-| | logs |
-+-----------------------------------+----------------------------------+
-| ``spp_security.group_spp_admin`` | Includes audit manager |
-| | privileges (via imply) |
-+-----------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ` | Full CRUD on audit rules and |
+| `spp_audit.group_audit_manager`` | logs |
++----------------------------------+----------------------------------+
+| ``spp_security.group_spp_admin`` | Includes audit manager |
+| | privileges (via imply) |
++----------------------------------+----------------------------------+
Audit logs cannot be deleted by default (``ALLOW_DELETE = False`` in
code, despite ``perm_unlink=1`` in access rules).
diff --git a/spp_audit/static/description/index.html b/spp_audit/static/description/index.html
index 56bb0104..29283bde 100644
--- a/spp_audit/static/description/index.html
+++ b/spp_audit/static/description/index.html
@@ -464,8 +464,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -473,7 +473,8 @@ Security
-| spp_audit.group_audit_manager |
+ | `
+spp_audit.group_audit_manager` |
Full CRUD on audit rules and
logs |
diff --git a/spp_banking/README.rst b/spp_banking/README.rst
index a16a04c4..dbe328c1 100644
--- a/spp_banking/README.rst
+++ b/spp_banking/README.rst
@@ -41,12 +41,11 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+----------------------+-----------------------------------------------+
-| Model | Description |
-+======================+===============================================+
-| ``res.partner.bank`` | Bank account details with automatic IBAN |
-| | computation |
-+----------------------+-----------------------------------------------+
++----------------------+------------------------------------------------------+
+| Model | Description |
++======================+======================================================+
+| ``res.partner.bank`` | Bank account details with automatic IBAN computation |
++----------------------+------------------------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_banking/static/description/index.html b/spp_banking/static/description/index.html
index 9fa29261..645bda63 100644
--- a/spp_banking/static/description/index.html
+++ b/spp_banking/static/description/index.html
@@ -390,8 +390,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -400,8 +400,7 @@ Key Models
| res.partner.bank |
-Bank account details with automatic IBAN
-computation |
+Bank account details with automatic IBAN computation |
diff --git a/spp_base_common/README.rst b/spp_base_common/README.rst
index 85003af2..a253c7d2 100644
--- a/spp_base_common/README.rst
+++ b/spp_base_common/README.rst
@@ -44,12 +44,12 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+--------------------------+-------------------------------------------+
-| Model | Description |
-+==========================+===========================================+
-| ``spp.phone.validation`` | Configurable phone validation rule |
-| | (prefix, digits) |
-+--------------------------+-------------------------------------------+
++--------------------------+------------------------------------------+
+| Model | Description |
++==========================+==========================================+
+| ``spp.phone.validation`` | Configurable phone validation rule |
+| | (prefix, digits) |
++--------------------------+------------------------------------------+
**Extensions:**
diff --git a/spp_branding_kit/README.rst b/spp_branding_kit/README.rst
index 4c61d197..987f7be8 100644
--- a/spp_branding_kit/README.rst
+++ b/spp_branding_kit/README.rst
@@ -51,21 +51,21 @@ Key Models
This module does not introduce new models. It extends existing models:
-+-------------------------+--------------------------------------------+
-| Model | Extension Purpose |
-+=========================+============================================+
-| ``res.users`` | Custom email signature, removes Odoo |
-| | account URL |
-+-------------------------+--------------------------------------------+
-| ``res.config.settings`` | Adds branding and telemetry configuration |
-| | fields |
-+-------------------------+--------------------------------------------+
-| ``ir.http`` | Injects OpenSPP branding into web client |
-| | session info |
-+-------------------------+--------------------------------------------+
-| ``ir.module.module`` | Provides utility to count paid/proprietary |
-| | apps |
-+-------------------------+--------------------------------------------+
++-------------------------+-------------------------------------------+
+| Model | Extension Purpose |
++=========================+===========================================+
+| ``res.users`` | Custom email signature, removes Odoo |
+| | account URL |
++-------------------------+-------------------------------------------+
+| ``res.config.settings`` | Adds branding and telemetry configuration |
+| | fields |
++-------------------------+-------------------------------------------+
+| ``ir.http`` | Injects OpenSPP branding into web client |
+| | session info |
++-------------------------+-------------------------------------------+
+| ``ir.module.module`` | Provides utility to count |
+| | paid/proprietary apps |
++-------------------------+-------------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_case_base/README.rst b/spp_case_base/README.rst
index 0dacf2ba..1411b475 100644
--- a/spp_case_base/README.rst
+++ b/spp_case_base/README.rst
@@ -45,42 +45,43 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+--------------------------------+-------------------------------------+
-| Model | Description |
-+================================+=====================================+
-| ``spp.case`` | Core case record with client and |
-| | assignment |
-+--------------------------------+-------------------------------------+
-| ``spp.case.type`` | Case type with default intensity |
-| | and caseload |
-+--------------------------------+-------------------------------------+
-| ``spp.case.stage`` | Workflow stage with phase and |
-| | requirements |
-+--------------------------------+-------------------------------------+
-| ``spp.case.assessment`` | Assessment with risk score and |
-| | findings |
-+--------------------------------+-------------------------------------+
-| ``spp.case.intervention.plan`` | Versioned plan with approval |
-| | workflow |
-+--------------------------------+-------------------------------------+
-| ``spp.case.intervention`` | Individual intervention with status |
-| | tracking |
-+--------------------------------+-------------------------------------+
-| ``spp.case.visit`` | Client visit with type and notes |
-+--------------------------------+-------------------------------------+
-| ``spp.case.note`` | Case note with confidentiality flag |
-+--------------------------------+-------------------------------------+
-| ``spp.case.referral`` | External service referral with |
-| | status |
-+--------------------------------+-------------------------------------+
-| ``spp.case.team`` | Team with supervisor and members |
-+--------------------------------+-------------------------------------+
-| ``spp.case.risk.factor`` | Risk factor with severity weight |
-+--------------------------------+-------------------------------------+
-| ``spp.case.vulnerability`` | Vulnerability for assessment |
-+--------------------------------+-------------------------------------+
-| ``spp.case.closure.reason`` | Closure reason with outcome type |
-+--------------------------------+-------------------------------------+
++--------------------------------+------------------------------------+
+| Model | Description |
++================================+====================================+
+| ``spp.case`` | Core case record with client and |
+| | assignment |
++--------------------------------+------------------------------------+
+| ``spp.case.type`` | Case type with default intensity |
+| | and caseload |
++--------------------------------+------------------------------------+
+| ``spp.case.stage`` | Workflow stage with phase and |
+| | requirements |
++--------------------------------+------------------------------------+
+| ``spp.case.assessment`` | Assessment with risk score and |
+| | findings |
++--------------------------------+------------------------------------+
+| ``spp.case.intervention.plan`` | Versioned plan with approval |
+| | workflow |
++--------------------------------+------------------------------------+
+| ``spp.case.intervention`` | Individual intervention with |
+| | status tracking |
++--------------------------------+------------------------------------+
+| ``spp.case.visit`` | Client visit with type and notes |
++--------------------------------+------------------------------------+
+| ``spp.case.note`` | Case note with confidentiality |
+| | flag |
++--------------------------------+------------------------------------+
+| ``spp.case.referral`` | External service referral with |
+| | status |
++--------------------------------+------------------------------------+
+| ``spp.case.team`` | Team with supervisor and members |
++--------------------------------+------------------------------------+
+| ``spp.case.risk.factor`` | Risk factor with severity weight |
++--------------------------------+------------------------------------+
+| ``spp.case.vulnerability`` | Vulnerability for assessment |
++--------------------------------+------------------------------------+
+| ``spp.case.closure.reason`` | Closure reason with outcome type |
++--------------------------------+------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_case_base/static/description/index.html b/spp_case_base/static/description/index.html
index 135d3408..c5c2c385 100644
--- a/spp_case_base/static/description/index.html
+++ b/spp_case_base/static/description/index.html
@@ -394,8 +394,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -424,14 +424,15 @@ Key Models
workflow
| spp.case.intervention |
-Individual intervention with status
-tracking |
+Individual intervention with
+status tracking |
| spp.case.visit |
Client visit with type and notes |
| spp.case.note |
-Case note with confidentiality flag |
+Case note with confidentiality
+flag |
| spp.case.referral |
External service referral with
diff --git a/spp_case_cel/README.rst b/spp_case_cel/README.rst
index 93baf8fb..a8ab0bff 100644
--- a/spp_case_cel/README.rst
+++ b/spp_case_cel/README.rst
@@ -44,18 +44,18 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+------------------------------+---------------------------------------+
-| Model | Description |
-+==============================+=======================================+
-| ``spp.case.triage.rule`` | CEL-based rule for automatic case |
-| | categorization and risk tagging |
-+------------------------------+---------------------------------------+
-| ``spp.case.assignment.rule`` | CEL-based rule for automatic case |
-| | assignment with workload balancing |
-+------------------------------+---------------------------------------+
-| ``spp.case`` | Extended to apply triage and |
-| | assignment rules on creation |
-+------------------------------+---------------------------------------+
++------------------------------+--------------------------------------+
+| Model | Description |
++==============================+======================================+
+| ``spp.case.triage.rule`` | CEL-based rule for automatic case |
+| | categorization and risk tagging |
++------------------------------+--------------------------------------+
+| ``spp.case.assignment.rule`` | CEL-based rule for automatic case |
+| | assignment with workload balancing |
++------------------------------+--------------------------------------+
+| ``spp.case`` | Extended to apply triage and |
+| | assignment rules on creation |
++------------------------------+--------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_case_cel/static/description/index.html b/spp_case_cel/static/description/index.html
index 85416fbc..dff11d09 100644
--- a/spp_case_cel/static/description/index.html
+++ b/spp_case_cel/static/description/index.html
@@ -393,8 +393,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_case_demo/README.rst b/spp_case_demo/README.rst
index af487498..59dbb391 100644
--- a/spp_case_demo/README.rst
+++ b/spp_case_demo/README.rst
@@ -50,15 +50,15 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-----------------------------+----------------------------------------+
-| Model | Description |
-+=============================+========================================+
-| ``spp.case.demo.generator`` | Core logic for configuring and |
-| | generating demo data |
-+-----------------------------+----------------------------------------+
-| ``spp.case.demo.wizard`` | Wizard interface for demo data |
-| | generation (inherits generator) |
-+-----------------------------+----------------------------------------+
++-----------------------------+---------------------------------------+
+| Model | Description |
++=============================+=======================================+
+| ``spp.case.demo.generator`` | Core logic for configuring and |
+| | generating demo data |
++-----------------------------+---------------------------------------+
+| ``spp.case.demo.wizard`` | Wizard interface for demo data |
+| | generation (inherits generator) |
++-----------------------------+---------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_case_demo/static/description/index.html b/spp_case_demo/static/description/index.html
index b2131a12..dbb49c1a 100644
--- a/spp_case_demo/static/description/index.html
+++ b/spp_case_demo/static/description/index.html
@@ -399,8 +399,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_case_entitlements/README.rst b/spp_case_entitlements/README.rst
index 5fe10e1e..632bf7a1 100644
--- a/spp_case_entitlements/README.rst
+++ b/spp_case_entitlements/README.rst
@@ -42,12 +42,11 @@ Key Capabilities
Extended Models
~~~~~~~~~~~~~~~
-+--------------+-------------------------------------------------------+
-| Model | Description |
-+==============+=======================================================+
-| ``spp.case`` | Extended with entitlement relationships and computed |
-| | metrics |
-+--------------+-------------------------------------------------------+
++--------------+--------------------------------------------------------------+
+| Model | Description |
++==============+==============================================================+
+| ``spp.case`` | Extended with entitlement relationships and computed metrics |
++--------------+--------------------------------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_case_entitlements/static/description/index.html b/spp_case_entitlements/static/description/index.html
index 963d26a6..c281957d 100644
--- a/spp_case_entitlements/static/description/index.html
+++ b/spp_case_entitlements/static/description/index.html
@@ -391,8 +391,8 @@ Key Capabilities
Extended Models
-
-
+
+
| Model |
@@ -401,8 +401,7 @@ Extended Models
| spp.case |
-Extended with entitlement relationships and computed
-metrics |
+Extended with entitlement relationships and computed metrics |
diff --git a/spp_case_graduation/README.rst b/spp_case_graduation/README.rst
index 38aa7503..dcd18414 100644
--- a/spp_case_graduation/README.rst
+++ b/spp_case_graduation/README.rst
@@ -42,14 +42,14 @@ Key Models
This module extends existing models without introducing new ones:
-+-------------------------------+--------------------------------------+
-| Model | Extension |
-+===============================+======================================+
-| ``spp.case`` | Adds graduation assessment tracking |
-| | and computed status fields |
-+-------------------------------+--------------------------------------+
-| ``spp.graduation.assessment`` | Adds case linkage field |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Extension |
++===============================+=====================================+
+| ``spp.case`` | Adds graduation assessment tracking |
+| | and computed status fields |
++-------------------------------+-------------------------------------+
+| ``spp.graduation.assessment`` | Adds case linkage field |
++-------------------------------+-------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_case_graduation/static/description/index.html b/spp_case_graduation/static/description/index.html
index 728b147a..05cd5c57 100644
--- a/spp_case_graduation/static/description/index.html
+++ b/spp_case_graduation/static/description/index.html
@@ -390,8 +390,8 @@ Key Models
This module extends existing models without introducing new ones:
-
-
+
+
| Model |
diff --git a/spp_case_programs/README.rst b/spp_case_programs/README.rst
index 554552b5..324b08d9 100644
--- a/spp_case_programs/README.rst
+++ b/spp_case_programs/README.rst
@@ -46,13 +46,13 @@ Key Models
This module extends existing models and does not introduce new ones.
-+--------------+-------------------------------------------------------+
-| Model | Extension |
-+==============+=======================================================+
-| ``spp.case`` | Adds ``program_membership_ids``, |
-| | ``triggered_by_program_id``, and computed enrollment |
-| | fields |
-+--------------+-------------------------------------------------------+
++--------------+------------------------------------------------------+
+| Model | Extension |
++==============+======================================================+
+| ``spp.case`` | Adds ``program_membership_ids``, |
+| | ``triggered_by_program_id``, and computed enrollment |
+| | fields |
++--------------+------------------------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_case_programs/static/description/index.html b/spp_case_programs/static/description/index.html
index a6bcf4f5..f6d4a698 100644
--- a/spp_case_programs/static/description/index.html
+++ b/spp_case_programs/static/description/index.html
@@ -394,8 +394,8 @@ Key Models
This module extends existing models and does not introduce new ones.
-
-
+
+
| Model |
diff --git a/spp_case_registry/README.rst b/spp_case_registry/README.rst
index c8902d47..a9be19b8 100644
--- a/spp_case_registry/README.rst
+++ b/spp_case_registry/README.rst
@@ -43,15 +43,15 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-----------------+----------------------------------------------------+
-| Model | Description |
-+=================+====================================================+
-| ``spp.case`` | Extended with registrant_id, household_id, |
-| | area_id, and previous case detection |
-+-----------------+----------------------------------------------------+
-| ``res.partner`` | Extended with case counts and relationships to |
-| | cases as registrant or household |
-+-----------------+----------------------------------------------------+
++-----------------+---------------------------------------------------+
+| Model | Description |
++=================+===================================================+
+| ``spp.case`` | Extended with registrant_id, household_id, |
+| | area_id, and previous case detection |
++-----------------+---------------------------------------------------+
+| ``res.partner`` | Extended with case counts and relationships to |
+| | cases as registrant or household |
++-----------------+---------------------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_cel_domain/README.rst b/spp_cel_domain/README.rst
index f9ce7aa3..5b48bfd0 100644
--- a/spp_cel_domain/README.rst
+++ b/spp_cel_domain/README.rst
@@ -48,32 +48,34 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Model | Description |
-+===============================+======================================+
-| ``spp.cel.variable`` | Variable definitions with source |
-| | type, CEL accessor, and caching |
-+-------------------------------+--------------------------------------+
-| ``spp.cel.variable.category`` | Variable categories for organization |
-+-------------------------------+--------------------------------------+
-| ``spp.cel.expression`` | Business rule expressions with CEL |
-| | syntax and variable tracking |
-+-------------------------------+--------------------------------------+
-| ``spp.data.provider`` | External data provider configuration |
-| | with auth and connection settings |
-+-------------------------------+--------------------------------------+
-| ``spp.data.credential`` | Secure encrypted credential storage |
-| | for external providers |
-+-------------------------------+--------------------------------------+
-| ``spp.data.value`` | Cached variable values with period |
-| | keys and expiration tracking |
-+-------------------------------+--------------------------------------+
-| ``spp.cel.service`` | Service facade for compiling and |
-| | evaluating CEL expressions |
-+-------------------------------+--------------------------------------+
-| ``spp.cel.variable.resolver`` | Resolves variable references into |
-| | expanded CEL expressions |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Description |
++===============================+=====================================+
+| ``spp.cel.variable`` | Variable definitions with source |
+| | type, CEL accessor, and caching |
++-------------------------------+-------------------------------------+
+| ``spp.cel.variable.category`` | Variable categories for |
+| | organization |
++-------------------------------+-------------------------------------+
+| ``spp.cel.expression`` | Business rule expressions with CEL |
+| | syntax and variable tracking |
++-------------------------------+-------------------------------------+
+| ``spp.data.provider`` | External data provider |
+| | configuration with auth and |
+| | connection settings |
++-------------------------------+-------------------------------------+
+| ``spp.data.credential`` | Secure encrypted credential storage |
+| | for external providers |
++-------------------------------+-------------------------------------+
+| ``spp.data.value`` | Cached variable values with period |
+| | keys and expiration tracking |
++-------------------------------+-------------------------------------+
+| ``spp.cel.service`` | Service facade for compiling and |
+| | evaluating CEL expressions |
++-------------------------------+-------------------------------------+
+| ``spp.cel.variable.resolver`` | Resolves variable references into |
+| | expanded CEL expressions |
++-------------------------------+-------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -103,19 +105,19 @@ UI Location
Security
~~~~~~~~
-+---------------------------------------------+----------------------------------+
-| Group | Access |
-+=============================================+==================================+
-| ``spp_cel_domain.group_cel_domain_viewer`` | Read variables, expressions, and |
-| | data cache |
-+---------------------------------------------+----------------------------------+
-| ``spp_cel_domain.group_cel_domain_manager`` | Full CRUD on variables, |
-| | expressions, providers, and |
-| | cache |
-+---------------------------------------------+----------------------------------+
-| ``spp_cel_domain.group_cel_domain_admin`` | Full CRUD on credentials and |
-| | sensitive configs |
-+---------------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``spp_cel_ | Read variables, expressions, and |
+| domain.group_cel_domain_viewer`` | data cache |
++----------------------------------+----------------------------------+
+| ``spp_cel_d | Full CRUD on variables, |
+| omain.group_cel_domain_manager`` | expressions, providers, and |
+| | cache |
++----------------------------------+----------------------------------+
+| ``spp_cel | Full CRUD on credentials and |
+| _domain.group_cel_domain_admin`` | sensitive configs |
++----------------------------------+----------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_cel_domain/static/description/index.html b/spp_cel_domain/static/description/index.html
index 7f31d741..6b64b8ac 100644
--- a/spp_cel_domain/static/description/index.html
+++ b/spp_cel_domain/static/description/index.html
@@ -397,8 +397,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -411,15 +411,17 @@ Key Models
type, CEL accessor, and caching
| spp.cel.variable.category |
-Variable categories for organization |
+Variable categories for
+organization |
| spp.cel.expression |
Business rule expressions with CEL
syntax and variable tracking |
| spp.data.provider |
-External data provider configuration
-with auth and connection settings |
+External data provider
+configuration with auth and
+connection settings |
| spp.data.credential |
Secure encrypted credential storage
@@ -470,8 +472,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -479,16 +481,19 @@ Security
-| spp_cel_domain.group_cel_domain_viewer |
+ | spp_cel_
+domain.group_cel_domain_viewer |
Read variables, expressions, and
data cache |
-| spp_cel_domain.group_cel_domain_manager |
+ | spp_cel_d
+omain.group_cel_domain_manager |
Full CRUD on variables,
expressions, providers, and
cache |
-| spp_cel_domain.group_cel_domain_admin |
+ | spp_cel
+_domain.group_cel_domain_admin |
Full CRUD on credentials and
sensitive configs |
diff --git a/spp_cel_registry_search/README.rst b/spp_cel_registry_search/README.rst
index 29ad63d2..0e877d6b 100644
--- a/spp_cel_registry_search/README.rst
+++ b/spp_cel_registry_search/README.rst
@@ -66,14 +66,15 @@ UI Location
Security
~~~~~~~~
-+---------------------------------------------------+----------------------------------+
-| Group | Access |
-+===================================================+==================================+
-| ``spp_cel_registry_search.group_cel_search_user`` | Access to Advanced Search portal |
-+---------------------------------------------------+----------------------------------+
-| ``spp_registry.group_registry_officer`` | Automatically includes CEL |
-| | Search access |
-+---------------------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``spp_cel_registr | Access to Advanced Search portal |
+| y_search.group_cel_search_user`` | |
++----------------------------------+----------------------------------+
+| ``spp_r | Automatically includes CEL |
+| egistry.group_registry_officer`` | Search access |
++----------------------------------+----------------------------------+
The ``group_cel_search_user`` group implies
``spp_registry.group_registry_viewer``, ensuring users can only search
diff --git a/spp_cel_registry_search/static/description/index.html b/spp_cel_registry_search/static/description/index.html
index 900c4765..40c0cb97 100644
--- a/spp_cel_registry_search/static/description/index.html
+++ b/spp_cel_registry_search/static/description/index.html
@@ -414,8 +414,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -423,10 +423,12 @@ Security
-| spp_cel_registry_search.group_cel_search_user |
+ | spp_cel_registr
+y_search.group_cel_search_user |
Access to Advanced Search portal |
-| spp_registry.group_registry_officer |
+ | spp_r
+egistry.group_registry_officer |
Automatically includes CEL
Search access |
diff --git a/spp_cel_widget/README.rst b/spp_cel_widget/README.rst
index a8a48469..8abc9a4f 100644
--- a/spp_cel_widget/README.rst
+++ b/spp_cel_widget/README.rst
@@ -47,16 +47,16 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-----------------------------+----------------------------------------+
-| Model | Description |
-+=============================+========================================+
-| ``spp.cel.symbol.provider`` | Abstract model that extracts symbols |
-| | for autocompletion and validates |
-| | expressions |
-+-----------------------------+----------------------------------------+
-| ``spp.cel.widget.demo`` | Transient wizard for testing the |
-| | widget (debug mode only) |
-+-----------------------------+----------------------------------------+
++-----------------------------+---------------------------------------+
+| Model | Description |
++=============================+=======================================+
+| ``spp.cel.symbol.provider`` | Abstract model that extracts symbols |
+| | for autocompletion and validates |
+| | expressions |
++-----------------------------+---------------------------------------+
+| ``spp.cel.widget.demo`` | Transient wizard for testing the |
+| | widget (debug mode only) |
++-----------------------------+---------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -102,19 +102,20 @@ Tabs in Demo Wizard
Security
~~~~~~~~
-+--------------------+-------------------------+------------------------+
-| Group | Model | Access |
-+====================+=========================+========================+
-| Internal User | HTTP endpoints | Can call widget |
-| | | JSONRPC endpoints |
-| | | (auth="user") |
-+--------------------+-------------------------+------------------------+
-| Settings | ``spp.cel.widget.demo`` | Full CRUD (read, |
-| | | write, create, delete) |
-+--------------------+-------------------------+------------------------+
-| Technical Features | Menu visibility | Can see demo menu in |
-| | | Settings > Technical |
-+--------------------+-------------------------+------------------------+
++--------------------+-----------------------+-----------------------+
+| Group | Model | Access |
++====================+=======================+=======================+
+| Internal User | HTTP endpoints | Can call widget |
+| | | JSONRPC endpoints |
+| | | (auth="user") |
++--------------------+-----------------------+-----------------------+
+| Settings | `` | Full CRUD (read, |
+| | spp.cel.widget.demo`` | write, create, |
+| | | delete) |
++--------------------+-----------------------+-----------------------+
+| Technical Features | Menu visibility | Can see demo menu in |
+| | | Settings > Technical |
++--------------------+-----------------------+-----------------------+
HTTP Endpoints
~~~~~~~~~~~~~~
diff --git a/spp_cel_widget/static/description/index.html b/spp_cel_widget/static/description/index.html
index f1f236d9..312b532e 100644
--- a/spp_cel_widget/static/description/index.html
+++ b/spp_cel_widget/static/description/index.html
@@ -396,8 +396,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -462,8 +462,8 @@ Tabs in Demo Wizard
Security
-
-
+
+
@@ -480,9 +480,11 @@ Security
(auth=”user”)
| Settings |
-spp.cel.widget.demo |
+``
+spp.cel.widget.demo`` |
Full CRUD (read,
-write, create, delete) |
+write, create,
+delete)
| Technical Features |
Menu visibility |
diff --git a/spp_change_request_v2/README.rst b/spp_change_request_v2/README.rst
index 8f2a4a5f..26688d87 100644
--- a/spp_change_request_v2/README.rst
+++ b/spp_change_request_v2/README.rst
@@ -50,63 +50,63 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------------+----------------------------------+
-| Model | Description |
-+=====================================+==================================+
-| ``spp.change.request`` | Main change request record with |
-| | approval workflow |
-+-------------------------------------+----------------------------------+
-| ``spp.change.request.type`` | Configuration for CR types: |
-| | target, detail model, workflow |
-+-------------------------------------+----------------------------------+
-| ``spp.change.request.type.mapping`` | Field mappings for automatic |
-| | application |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.conflict.rule`` | Rules for detecting conflicting |
-| | change requests |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.duplicate.config`` | Configuration for duplicate |
-| | detection thresholds |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.conflict.mixin`` | Mixin providing conflict and |
-| | duplicate detection |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.base`` | Base model for all change |
-| | request detail types |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.add_member`` | Detail model for adding members |
-| | to groups |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.edit_individual`` | Detail model for editing |
-| | individual registrant data |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.edit_group`` | Detail model for editing |
-| | group/household data |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.remove_member`` | Detail model for removing |
-| | members from groups |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.change_hoh`` | Detail model for changing head |
-| | of household |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.exit_registrant`` | Detail model for marking |
-| | registrants as exited |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.transfer_member`` | Detail model for transferring |
-| | members between groups |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.update_id`` | Detail model for updating |
-| | registrant ID numbers |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.create_group`` | Detail model for creating new |
-| | groups/households |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.merge_registrants`` | Detail model for merging |
-| | duplicate registrant records |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.split_household`` | Detail model for splitting |
-| | households into separate groups |
-+-------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Model | Description |
++==================================+==================================+
+| ``spp.change.request`` | Main change request record with |
+| | approval workflow |
++----------------------------------+----------------------------------+
+| ``spp.change.request.type`` | Configuration for CR types: |
+| | target, detail model, workflow |
++----------------------------------+----------------------------------+
+| ``s | Field mappings for automatic |
+| pp.change.request.type.mapping`` | application |
++----------------------------------+----------------------------------+
+| ``spp.cr.conflict.rule`` | Rules for detecting conflicting |
+| | change requests |
++----------------------------------+----------------------------------+
+| ``spp.cr.duplicate.config`` | Configuration for duplicate |
+| | detection thresholds |
++----------------------------------+----------------------------------+
+| ``spp.cr.conflict.mixin`` | Mixin providing conflict and |
+| | duplicate detection |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.base`` | Base model for all change |
+| | request detail types |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.add_member`` | Detail model for adding members |
+| | to groups |
++----------------------------------+----------------------------------+
+| ` | Detail model for editing |
+| `spp.cr.detail.edit_individual`` | individual registrant data |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.edit_group`` | Detail model for editing |
+| | group/household data |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.remove_member`` | Detail model for removing |
+| | members from groups |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.change_hoh`` | Detail model for changing head |
+| | of household |
++----------------------------------+----------------------------------+
+| ` | Detail model for marking |
+| `spp.cr.detail.exit_registrant`` | registrants as exited |
++----------------------------------+----------------------------------+
+| ` | Detail model for transferring |
+| `spp.cr.detail.transfer_member`` | members between groups |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.update_id`` | Detail model for updating |
+| | registrant ID numbers |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.create_group`` | Detail model for creating new |
+| | groups/households |
++----------------------------------+----------------------------------+
+| ``s | Detail model for merging |
+| pp.cr.detail.merge_registrants`` | duplicate registrant records |
++----------------------------------+----------------------------------+
+| ` | Detail model for splitting |
+| `spp.cr.detail.split_household`` | households into separate groups |
++----------------------------------+----------------------------------+
Form Tabs
~~~~~~~~~
@@ -161,25 +161,25 @@ UI Location
Security
~~~~~~~~
-+------------------------------------------------------+----------------------------------+
-| Group | Access |
-+======================================================+==================================+
-| ``spp_change_request_v2.group_cr_user`` | Create and submit change |
-| | requests (read/write/create) |
-+------------------------------------------------------+----------------------------------+
-| ``spp_change_request_v2.group_cr_validator`` | Approve/reject, field-level |
-| | validation (read/write/create) |
-+------------------------------------------------------+----------------------------------+
-| ``spp_change_request_v2.group_cr_validator_hq`` | HQ-level approval with registry |
-| | write (read/write/create) |
-+------------------------------------------------------+----------------------------------+
-| ``spp_change_request_v2.group_cr_manager`` | Full CRUD including |
-| | configuration |
-+------------------------------------------------------+----------------------------------+
-| ``spp_change_request_v2.group_cr_conflict_approver`` | Override blocking conflict |
-| | detections |
-| | (specialized/functional) |
-+------------------------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``spp_c | Create and submit change |
+| hange_request_v2.group_cr_user`` | requests (read/write/create) |
++----------------------------------+----------------------------------+
+| ``spp_change | Approve/reject, field-level |
+| _request_v2.group_cr_validator`` | validation (read/write/create) |
++----------------------------------+----------------------------------+
+| ``spp_change_re | HQ-level approval with registry |
+| quest_v2.group_cr_validator_hq`` | write (read/write/create) |
++----------------------------------+----------------------------------+
+| ``spp_chan | Full CRUD including |
+| ge_request_v2.group_cr_manager`` | configuration |
++----------------------------------+----------------------------------+
+| ``spp_change_request | Override blocking conflict |
+| _v2.group_cr_conflict_approver`` | detections |
+| | (specialized/functional) |
++----------------------------------+----------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
@@ -221,20 +221,20 @@ multi-tier workflows.
A CR type consists of four parts:
-+----------------------+-----------------------------------------------+
-| Part | What it does |
-+======================+===============================================+
-| **Detail model** | Python model holding the proposed changes |
-| | (inherits ``spp.cr.detail.base``) |
-+----------------------+-----------------------------------------------+
-| **Detail form view** | XML view rendered inside the CR form |
-+----------------------+-----------------------------------------------+
-| **CR type record** | XML data linking the detail model, view, |
-| | approval workflow, and field mappings |
-+----------------------+-----------------------------------------------+
-| **Field mappings** | XML records defining how detail fields map to |
-| | registrant fields at apply time |
-+----------------------+-----------------------------------------------+
++----------------------+----------------------------------------------+
+| Part | What it does |
++======================+==============================================+
+| **Detail model** | Python model holding the proposed changes |
+| | (inherits ``spp.cr.detail.base``) |
++----------------------+----------------------------------------------+
+| **Detail form view** | XML view rendered inside the CR form |
++----------------------+----------------------------------------------+
+| **CR type record** | XML data linking the detail model, view, |
+| | approval workflow, and field mappings |
++----------------------+----------------------------------------------+
+| **Field mappings** | XML records defining how detail fields map |
+| | to registrant fields at apply time |
++----------------------+----------------------------------------------+
When a user creates a change request, the system:
@@ -622,26 +622,26 @@ fallback.
CEL conditions have access to these variables:
-+--------------------------------+--------+------------------------------+
-| Variable | Type | Description |
-+================================+========+==============================+
-| ``record.selected_field_name`` | string | Technical field name the |
-| | | user selected |
-+--------------------------------+--------+------------------------------+
-| ``old_value`` | typed | Current value on the |
-| | | registrant |
-+--------------------------------+--------+------------------------------+
-| ``new_value`` | typed | Proposed value from the |
-| | | detail record |
-+--------------------------------+--------+------------------------------+
-| ``record`` | dict | All fields on the |
-| | | ``spp.change.request`` |
-| | | record |
-+--------------------------------+--------+------------------------------+
-| ``user`` | dict | Current user |
-+--------------------------------+--------+------------------------------+
-| ``company`` | dict | Current company |
-+--------------------------------+--------+------------------------------+
++-----------------------------+--------+-----------------------------+
+| Variable | Type | Description |
++=============================+========+=============================+
+| ``r | string | Technical field name the |
+| ecord.selected_field_name`` | | user selected |
++-----------------------------+--------+-----------------------------+
+| ``old_value`` | typed | Current value on the |
+| | | registrant |
++-----------------------------+--------+-----------------------------+
+| ``new_value`` | typed | Proposed value from the |
+| | | detail record |
++-----------------------------+--------+-----------------------------+
+| ``record`` | dict | All fields on the |
+| | | ``spp.change.request`` |
+| | | record |
++-----------------------------+--------+-----------------------------+
+| ``user`` | dict | Current user |
++-----------------------------+--------+-----------------------------+
+| ``company`` | dict | Current company |
++-----------------------------+--------+-----------------------------+
Many2one values are dicts with ``id`` and ``name`` (display_name) keys.
Vocabulary models (``spp.vocabulary.code``) additionally include
@@ -728,101 +728,120 @@ Methods Reference
Methods available for override on detail models (all inherited from
``spp.cr.detail.base``):
-+--------------------------------------+----------------+--------------------------------------+-----------------+
-| Method | Decorator | Returns | When to |
-| | | | override |
-+======================================+================+======================================+=================+
-| ``_get_field_to_modify_selection()`` | ``@api.model`` | ``[(field, label), ...]`` | Dynamic |
-| | | | approval: |
-| | | | define |
-| | | | selectable |
-| | | | fields |
-+--------------------------------------+----------------+--------------------------------------+-----------------+
-| ``_get_prefill_mapping()`` | instance | ``{detail_field: registrant_field}`` | Pre-fill detail |
-| | | | from registrant |
-| | | | on creation |
-+--------------------------------------+----------------+--------------------------------------+-----------------+
-| ``prefill_from_registrant()`` | instance | None | Detail has |
-| | | | boolean fields |
-| | | | that need |
-| | | | ``False`` |
-| | | | pre-filled |
-+--------------------------------------+----------------+--------------------------------------+-----------------+
++----------------+----------------+----------------+----------------+
+| Method | Decorator | Returns | When to |
+| | | | override |
++================+================+================+================+
+| ``_get_f | ``@api.model`` | ``[(field, | Dynamic |
+| ield_to_modify | | label), ...]`` | approval: |
+| _selection()`` | | | define |
+| | | | selectable |
+| | | | fields |
++----------------+----------------+----------------+----------------+
+| ``_get_prefi | instance | ``{detai | Pre-fill |
+| ll_mapping()`` | | l_field: regis | detail from |
+| | | trant_field}`` | registrant on |
+| | | | creation |
++----------------+----------------+----------------+----------------+
+| ` | instance | None | Detail has |
+| `prefill_from_ | | | boolean fields |
+| registrant()`` | | | that need |
+| | | | ``False`` |
+| | | | pre-filled |
++----------------+----------------+----------------+----------------+
Related fields available on all detail models (from
``spp.cr.detail.base``):
-+----------------------------+-----------+------------------------------------------------------------+
-| Field | Type | Source |
-+============================+===========+============================================================+
-| ``change_request_id`` | Many2one | Direct link to parent CR |
-+----------------------------+-----------+------------------------------------------------------------+
-| ``registrant_id`` | Many2one | ``change_request_id.registrant_id`` |
-+----------------------------+-----------+------------------------------------------------------------+
-| ``approval_state`` | Selection | ``change_request_id.approval_state`` |
-+----------------------------+-----------+------------------------------------------------------------+
-| ``is_applied`` | Boolean | ``change_request_id.is_applied`` |
-+----------------------------+-----------+------------------------------------------------------------+
-| ``use_dynamic_approval`` | Boolean | ``change_request_id.request_type_id.use_dynamic_approval`` |
-+----------------------------+-----------+------------------------------------------------------------+
-| ``field_to_modify`` | Selection | Dynamic field selector (populated by |
-| | | ``_get_field_to_modify_selection``) |
-+----------------------------+-----------+------------------------------------------------------------+
++--------------------------+-----------+---------------------------+
+| Field | Type | Source |
++==========================+===========+===========================+
+| ``change_request_id`` | Many2one | Direct link to parent CR |
++--------------------------+-----------+---------------------------+
+| ``registrant_id`` | Many2one | ``change_r |
+| | | equest_id.registrant_id`` |
++--------------------------+-----------+---------------------------+
+| ``approval_state`` | Selection | ``change_re |
+| | | quest_id.approval_state`` |
++--------------------------+-----------+---------------------------+
+| ``is_applied`` | Boolean | ``chang |
+| | | e_request_id.is_applied`` |
++--------------------------+-----------+---------------------------+
+| ``use_dynamic_approval`` | Boolean | ``change |
+| | | _request_id.request_type_ |
+| | | id.use_dynamic_approval`` |
++--------------------------+-----------+---------------------------+
+| ``field_to_modify`` | Selection | Dynamic field selector |
+| | | (populated by |
+| | | ``_get_fie |
+| | | ld_to_modify_selection``) |
++--------------------------+-----------+---------------------------+
CR Type Fields Reference
~~~~~~~~~~~~~~~~~~~~~~~~
-+------------------------------+-----------+---------------------+----------------------+
-| Field | Type | Default | Description |
-+==============================+===========+=====================+======================+
-| ``name`` | Char | required | Display name |
-+------------------------------+-----------+---------------------+----------------------+
-| ``code`` | Char | required | Unique identifier |
-| | | | (lowercase, |
-| | | | underscores) |
-+------------------------------+-----------+---------------------+----------------------+
-| ``target_type`` | Selection | ``"both"`` | ``"individual"``, |
-| | | | ``"group"``, or |
-| | | | ``"both"`` |
-+------------------------------+-----------+---------------------+----------------------+
-| ``detail_model`` | Char | required | Technical name of |
-| | | | the detail model |
-+------------------------------+-----------+---------------------+----------------------+
-| ``detail_form_view_id`` | Many2one | required | Reference to the |
-| | | | detail form view |
-+------------------------------+-----------+---------------------+----------------------+
-| ``apply_strategy`` | Selection | ``"field_mapping"`` | ``"field_mapping"``, |
-| | | | ``"custom"``, or |
-| | | | ``"manual"`` |
-+------------------------------+-----------+---------------------+----------------------+
-| ``auto_apply_on_approve`` | Boolean | ``True`` | Apply changes |
-| | | | automatically after |
-| | | | final approval |
-+------------------------------+-----------+---------------------+----------------------+
-| ``approval_definition_id`` | Many2one | required | Static/fallback |
-| | | | approval workflow |
-+------------------------------+-----------+---------------------+----------------------+
-| ``use_dynamic_approval`` | Boolean | ``False`` | Enable field-level |
-| | | | approval routing |
-+------------------------------+-----------+---------------------+----------------------+
-| ``candidate_definition_ids`` | Many2many | empty | Candidate |
-| | | | definitions for |
-| | | | dynamic routing |
-+------------------------------+-----------+---------------------+----------------------+
-| ``icon`` | Char | optional | FontAwesome icon |
-| | | | class (e.g., |
-| | | | ``"fa-cog"``) |
-+------------------------------+-----------+---------------------+----------------------+
-| ``sequence`` | Integer | ``10`` | Display order in |
-| | | | type lists |
-+------------------------------+-----------+---------------------+----------------------+
-| ``is_system_type`` | Boolean | ``False`` | Installed by a |
-| | | | module (not |
-| | | | user-created) |
-+------------------------------+-----------+---------------------+----------------------+
-| ``source_module`` | Char | optional | Module that |
-| | | | installed this type |
-+------------------------------+-----------+---------------------+----------------------+
++-----------------+-----------+-----------------+-----------------+
+| Field | Type | Default | Description |
++=================+===========+=================+=================+
+| ``name`` | Char | required | Display name |
++-----------------+-----------+-----------------+-----------------+
+| ``code`` | Char | required | Unique |
+| | | | identifier |
+| | | | (lowercase, |
+| | | | underscores) |
++-----------------+-----------+-----------------+-----------------+
+| ``target_type`` | Selection | ``"both"`` | `` |
+| | | | "individual"``, |
+| | | | ``"group"``, or |
+| | | | ``"both"`` |
++-----------------+-----------+-----------------+-----------------+
+| ` | Char | required | Technical name |
+| `detail_model`` | | | of the detail |
+| | | | model |
++-----------------+-----------+-----------------+-----------------+
+| ``detail | Many2one | required | Reference to |
+| _form_view_id`` | | | the detail form |
+| | | | view |
++-----------------+-----------+-----------------+-----------------+
+| ``a | Selection | ``"f | ``"fi |
+| pply_strategy`` | | ield_mapping"`` | eld_mapping"``, |
+| | | | ``"custom"``, |
+| | | | or ``"manual"`` |
++-----------------+-----------+-----------------+-----------------+
+| ``auto_app | Boolean | ``True`` | Apply changes |
+| ly_on_approve`` | | | automatically |
+| | | | after final |
+| | | | approval |
++-----------------+-----------+-----------------+-----------------+
+| ``approval_ | Many2one | required | Static/fallback |
+| definition_id`` | | | approval |
+| | | | workflow |
++-----------------+-----------+-----------------+-----------------+
+| ``use_dyn | Boolean | ``False`` | Enable |
+| amic_approval`` | | | field-level |
+| | | | approval |
+| | | | routing |
++-----------------+-----------+-----------------+-----------------+
+| ``candidate_d | Many2many | empty | Candidate |
+| efinition_ids`` | | | definitions for |
+| | | | dynamic routing |
++-----------------+-----------+-----------------+-----------------+
+| ``icon`` | Char | optional | FontAwesome |
+| | | | icon class |
+| | | | (e.g., |
+| | | | ``"fa-cog"``) |
++-----------------+-----------+-----------------+-----------------+
+| ``sequence`` | Integer | ``10`` | Display order |
+| | | | in type lists |
++-----------------+-----------+-----------------+-----------------+
+| ``i | Boolean | ``False`` | Installed by a |
+| s_system_type`` | | | module (not |
+| | | | user-created) |
++-----------------+-----------+-----------------+-----------------+
+| `` | Char | optional | Module that |
+| source_module`` | | | installed this |
+| | | | type |
++-----------------+-----------+-----------------+-----------------+
Checklist
~~~~~~~~~
diff --git a/spp_change_request_v2/static/description/index.html b/spp_change_request_v2/static/description/index.html
index 0ef9486d..31cbce91 100644
--- a/spp_change_request_v2/static/description/index.html
+++ b/spp_change_request_v2/static/description/index.html
@@ -399,8 +399,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -416,7 +416,8 @@ Key Models
Configuration for CR types:
target, detail model, workflow |
-| spp.change.request.type.mapping |
+ | s
+pp.change.request.type.mapping |
Field mappings for automatic
application |
@@ -440,7 +441,8 @@ Key Models
Detail model for adding members
to groups |
-| spp.cr.detail.edit_individual |
+ | `
+spp.cr.detail.edit_individual` |
Detail model for editing
individual registrant data |
@@ -456,11 +458,13 @@ Key Models
Detail model for changing head
of household |
-| spp.cr.detail.exit_registrant |
+ | `
+spp.cr.detail.exit_registrant` |
Detail model for marking
registrants as exited |
-| spp.cr.detail.transfer_member |
+ | `
+spp.cr.detail.transfer_member` |
Detail model for transferring
members between groups |
@@ -472,11 +476,13 @@ Key Models
Detail model for creating new
groups/households |
-| spp.cr.detail.merge_registrants |
+ | s
+pp.cr.detail.merge_registrants |
Detail model for merging
duplicate registrant records |
-| spp.cr.detail.split_household |
+ | `
+spp.cr.detail.split_household` |
Detail model for splitting
households into separate groups |
@@ -538,8 +544,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -547,23 +553,28 @@ Security
-| spp_change_request_v2.group_cr_user |
+ | spp_c
+hange_request_v2.group_cr_user |
Create and submit change
requests (read/write/create) |
-| spp_change_request_v2.group_cr_validator |
+ | spp_change
+_request_v2.group_cr_validator |
Approve/reject, field-level
validation (read/write/create) |
-| spp_change_request_v2.group_cr_validator_hq |
+ | spp_change_re
+quest_v2.group_cr_validator_hq |
HQ-level approval with registry
write (read/write/create) |
-| spp_change_request_v2.group_cr_manager |
+ | spp_chan
+ge_request_v2.group_cr_manager |
Full CRUD including
configuration |
-| spp_change_request_v2.group_cr_conflict_approver |
+ | spp_change_request
+_v2.group_cr_conflict_approver |
Override blocking conflict
detections
(specialized/functional) |
@@ -631,8 +642,8 @@ Developer Guide: Creating Custom CR Types
approval workflow, and field mappings
| Field mappings |
-XML records defining how detail fields map to
-registrant fields at apply time |
+XML records defining how detail fields map
+to registrant fields at apply time |
@@ -993,9 +1004,9 @@ Example 3: Dynamic Approval
CEL conditions have access to these variables:
-
-
-
+
+
+
| Variable |
@@ -1004,7 +1015,8 @@ Example 3: Dynamic Approval
-| record.selected_field_name |
+ | r
+ecord.selected_field_name |
string |
Technical field name the
user selected |
@@ -1115,10 +1127,10 @@ Methods Reference
spp.cr.detail.base):
-
-
-
-
+
+
+
+
| Method |
@@ -1129,23 +1141,32 @@ Methods Reference
-| _get_field_to_modify_selection() |
+ | _get_f
+ield_to_modify
+_selection() |
@api.model |
-[(field, label), ...] |
+[(field,
+label), ...] |
Dynamic
approval:
define
selectable
fields |
-| _get_prefill_mapping() |
+ | _get_prefi
+ll_mapping() |
instance |
-{detail_field: registrant_field} |
-Pre-fill detail
-from registrant
-on creation |
+{detai
+l_field: regis
+trant_field} |
+Pre-fill
+detail from
+registrant on
+creation |
-| prefill_from_registrant() |
+ | `
+prefill_from_
+registrant()` |
instance |
None |
Detail has
@@ -1160,9 +1181,9 @@ Methods Reference
spp.cr.detail.base):
-
-
-
+
+
+
| Field |
@@ -1177,24 +1198,31 @@ Methods Reference
| registrant_id |
Many2one |
-change_request_id.registrant_id |
+change_r
+equest_id.registrant_id |
| approval_state |
Selection |
-change_request_id.approval_state |
+change_re
+quest_id.approval_state |
| is_applied |
Boolean |
-change_request_id.is_applied |
+chang
+e_request_id.is_applied |
| use_dynamic_approval |
Boolean |
-change_request_id.request_type_id.use_dynamic_approval |
+change
+_request_id.request_type_
+id.use_dynamic_approval |
| field_to_modify |
Selection |
-Dynamic field selector (populated by
-_get_field_to_modify_selection) |
+Dynamic field selector
+(populated by
+_get_fie
+ld_to_modify_selection) |
@@ -1203,10 +1231,10 @@ Methods Reference
CR Type Fields Reference
-
-
-
-
+
+
+
+
| Field |
@@ -1224,56 +1252,73 @@ CR Type Fields Reference
|---|
| code |
Char |
required |
-Unique identifier
+ | Unique
+identifier
(lowercase,
underscores) |
| target_type |
Selection |
"both" |
-"individual",
-"group", or
+ | ``
+“individual”,
+``"group", or
"both" |
-| detail_model |
+ | `
+detail_model` |
Char |
required |
-Technical name of
-the detail model |
+Technical name
+of the detail
+model |
-| detail_form_view_id |
+ | detail
+_form_view_id |
Many2one |
required |
-Reference to the
-detail form view |
+Reference to
+the detail form
+view |
-| apply_strategy |
+ | a
+pply_strategy |
Selection |
-"field_mapping" |
-"field_mapping",
-"custom", or
-"manual" |
+"f
+ield_mapping" |
+"fi
+eld_mapping",
+"custom",
+or "manual" |
-| auto_apply_on_approve |
+ | auto_app
+ly_on_approve |
Boolean |
True |
Apply changes
-automatically after
-final approval |
+automatically
+after final
+approval
-| approval_definition_id |
+ | approval_
+definition_id |
Many2one |
required |
Static/fallback
-approval workflow |
+approval
+workflow
-| use_dynamic_approval |
+ | use_dyn
+amic_approval |
Boolean |
False |
-Enable field-level
-approval routing |
+Enable
+field-level
+approval
+routing |
-| candidate_definition_ids |
+ | candidate_d
+efinition_ids |
Many2many |
empty |
Candidate
@@ -1283,28 +1328,32 @@ CR Type Fields Reference
| | icon |
Char |
optional |
-FontAwesome icon
-class (e.g.,
+ | FontAwesome
+icon class
+(e.g.,
"fa-cog") |
| sequence |
Integer |
10 |
-Display order in
-type lists |
+Display order
+in type lists |
-| is_system_type |
+ | i
+s_system_type |
Boolean |
False |
Installed by a
module (not
user-created) |
-| source_module |
+ | ``
+source_module`` |
Char |
optional |
Module that
-installed this type |
+installed this
+type
diff --git a/spp_claim_169/README.rst b/spp_claim_169/README.rst
index 7e7a74ad..1d959d04 100644
--- a/spp_claim_169/README.rst
+++ b/spp_claim_169/README.rst
@@ -47,27 +47,27 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------------+----------------------------------+
-| Model | Description |
-+=====================================+==================================+
-| ``spp.claim169.credential`` | Stores issued credentials with |
-| | QR codes and validity dates |
-+-------------------------------------+----------------------------------+
-| ``spp.claim169.issuer.config`` | Defines issuer identity and |
-| | signing keys |
-+-------------------------------------+----------------------------------+
-| ``spp.claim169.attribute.mapping`` | Maps partner fields to claim |
-| | attribute numbers |
-+-------------------------------------+----------------------------------+
-| ``spp.claim169.service`` | Service for credential |
-| | generation and verification |
-+-------------------------------------+----------------------------------+
-| ``spp.claim169.generate.qr.wizard`` | Wizard for batch credential |
-| | generation |
-+-------------------------------------+----------------------------------+
-| ``spp.claim169.verify.qr.wizard`` | Wizard for credential |
-| | verification |
-+-------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Model | Description |
++==================================+==================================+
+| ``spp.claim169.credential`` | Stores issued credentials with |
+| | QR codes and validity dates |
++----------------------------------+----------------------------------+
+| ``spp.claim169.issuer.config`` | Defines issuer identity and |
+| | signing keys |
++----------------------------------+----------------------------------+
+| `` | Maps partner fields to claim |
+| spp.claim169.attribute.mapping`` | attribute numbers |
++----------------------------------+----------------------------------+
+| ``spp.claim169.service`` | Service for credential |
+| | generation and verification |
++----------------------------------+----------------------------------+
+| ``s | Wizard for batch credential |
+| pp.claim169.generate.qr.wizard`` | generation |
++----------------------------------+----------------------------------+
+| ` | Wizard for credential |
+| `spp.claim169.verify.qr.wizard`` | verification |
++----------------------------------+----------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -102,13 +102,15 @@ UI Location
Security
~~~~~~~~
-+------------------------------------------+--------------+---------------+-----------+
-| Group | Credentials | Configuration | Wizards |
-+==========================================+==============+===============+===========+
-| ``spp_claim_169.group_claim169_user`` | Read, Create | Read only | Full CRUD |
-+------------------------------------------+--------------+---------------+-----------+
-| ``spp_claim_169.group_claim169_manager`` | Full CRUD | Full CRUD | Full CRUD |
-+------------------------------------------+--------------+---------------+-----------+
++------------------------+--------------+---------------+-----------+
+| Group | Credentials | Configuration | Wizards |
++========================+==============+===============+===========+
+| ``spp_claim_169 | Read, Create | Read only | Full CRUD |
+| .group_claim169_user`` | | | |
++------------------------+--------------+---------------+-----------+
+| ``spp_claim_169.gr | Full CRUD | Full CRUD | Full CRUD |
+| oup_claim169_manager`` | | | |
++------------------------+--------------+---------------+-----------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_consent/README.rst b/spp_consent/README.rst
index 1e15c975..6b6bbf0b 100644
--- a/spp_consent/README.rst
+++ b/spp_consent/README.rst
@@ -54,44 +54,44 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+------------------------------------+----------------------------------+
-| Model | Description |
-+====================================+==================================+
-| ``spp.consent`` | Consent record implementing ISO |
-| | 27560 structure with DPV fields |
-+------------------------------------+----------------------------------+
-| ``spp.consent.history`` | Audit trail of consent changes |
-| | (action, status, user, |
-| | timestamp) |
-+------------------------------------+----------------------------------+
-| ``spp.consent.notice`` | Privacy notices per ISO 29184 |
-| | with version tracking |
-+------------------------------------+----------------------------------+
-| ``spp.consent.purpose`` | DPV-aligned purpose taxonomy |
-| | (service delivery, research, |
-| | etc.) |
-+------------------------------------+----------------------------------+
-| ``spp.consent.personal.data`` | DPV-aligned data categories |
-| | (GDPR Article 9 sensitivity |
-| | tagging) |
-+------------------------------------+----------------------------------+
-| ``spp.consent.processing`` | DPV-aligned processing |
-| | operations (collect, store, |
-| | share, etc.) |
-+------------------------------------+----------------------------------+
-| ``spp.consent.org.type`` | Organization type categories for |
-| | category-based consent |
-+------------------------------------+----------------------------------+
-| ``spp.consent.mixin`` | Abstract mixin to add consent |
-| | tracking to any model |
-+------------------------------------+----------------------------------+
-| ``spp.record.consent.wizard`` | Wizard for recording individual |
-| | consent |
-+------------------------------------+----------------------------------+
-| ``spp.bulk.record.consent.wizard`` | Wizard for bulk consent |
-| | recording across multiple |
-| | beneficiaries |
-+------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Model | Description |
++==================================+==================================+
+| ``spp.consent`` | Consent record implementing ISO |
+| | 27560 structure with DPV fields |
++----------------------------------+----------------------------------+
+| ``spp.consent.history`` | Audit trail of consent changes |
+| | (action, status, user, |
+| | timestamp) |
++----------------------------------+----------------------------------+
+| ``spp.consent.notice`` | Privacy notices per ISO 29184 |
+| | with version tracking |
++----------------------------------+----------------------------------+
+| ``spp.consent.purpose`` | DPV-aligned purpose taxonomy |
+| | (service delivery, research, |
+| | etc.) |
++----------------------------------+----------------------------------+
+| ``spp.consent.personal.data`` | DPV-aligned data categories |
+| | (GDPR Article 9 sensitivity |
+| | tagging) |
++----------------------------------+----------------------------------+
+| ``spp.consent.processing`` | DPV-aligned processing |
+| | operations (collect, store, |
+| | share, etc.) |
++----------------------------------+----------------------------------+
+| ``spp.consent.org.type`` | Organization type categories for |
+| | category-based consent |
++----------------------------------+----------------------------------+
+| ``spp.consent.mixin`` | Abstract mixin to add consent |
+| | tracking to any model |
++----------------------------------+----------------------------------+
+| ``spp.record.consent.wizard`` | Wizard for recording individual |
+| | consent |
++----------------------------------+----------------------------------+
+| `` | Wizard for bulk consent |
+| spp.bulk.record.consent.wizard`` | recording across multiple |
+| | beneficiaries |
++----------------------------------+----------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -137,30 +137,33 @@ UI Location
Security
~~~~~~~~
-+-----------------------------------------+-------------------------+----------------------+
-| Group | Model | Access |
-+=========================================+=========================+======================+
-| ``spp_registry.group_registry_viewer`` | All models | Read |
-+-----------------------------------------+-------------------------+----------------------+
-| ``spp_registry.group_registry_officer`` | ``spp.consent`` | Read/Write/Create |
-| | | (no delete) |
-+-----------------------------------------+-------------------------+----------------------+
-| ``spp_registry.group_registry_officer`` | Wizards | Read/Write/Create |
-| | | (no delete) |
-+-----------------------------------------+-------------------------+----------------------+
-| ``spp_registry.group_registry_officer`` | DPV taxonomies and | Read |
-| | notices | |
-+-----------------------------------------+-------------------------+----------------------+
-| ``spp_registry.group_registry_manager`` | ``spp.consent`` | Full CRUD |
-+-----------------------------------------+-------------------------+----------------------+
-| ``spp_registry.group_registry_manager`` | ``spp.consent.history`` | Read/Create (no |
-| | | write/delete) |
-+-----------------------------------------+-------------------------+----------------------+
-| ``spp_registry.group_registry_manager`` | Taxonomies, notices, | Full CRUD |
-| | org types | |
-+-----------------------------------------+-------------------------+----------------------+
-| ``spp_security.group_spp_admin`` | All models | Full CRUD |
-+-----------------------------------------+-------------------------+----------------------+
++----------------------+----------------------+----------------------+
+| Group | Model | Access |
++======================+======================+======================+
+| ``spp_registry.gro | All models | Read |
+| up_registry_viewer`` | | |
++----------------------+----------------------+----------------------+
+| ``spp_registry.grou | ``spp.consent`` | Read/Write/Create |
+| p_registry_officer`` | | (no delete) |
++----------------------+----------------------+----------------------+
+| ``spp_registry.grou | Wizards | Read/Write/Create |
+| p_registry_officer`` | | (no delete) |
++----------------------+----------------------+----------------------+
+| ``spp_registry.grou | DPV taxonomies and | Read |
+| p_registry_officer`` | notices | |
++----------------------+----------------------+----------------------+
+| ``spp_registry.grou | ``spp.consent`` | Full CRUD |
+| p_registry_manager`` | | |
++----------------------+----------------------+----------------------+
+| ``spp_registry.grou | ``s | Read/Create (no |
+| p_registry_manager`` | pp.consent.history`` | write/delete) |
++----------------------+----------------------+----------------------+
+| ``spp_registry.grou | Taxonomies, notices, | Full CRUD |
+| p_registry_manager`` | org types | |
++----------------------+----------------------+----------------------+
+| ``spp_securi | All models | Full CRUD |
+| ty.group_spp_admin`` | | |
++----------------------+----------------------+----------------------+
Note: Configuration menu requires ``spp_security.group_spp_admin`` or
``spp_registry.group_registry_config_admin``.
diff --git a/spp_consent/static/description/index.html b/spp_consent/static/description/index.html
index c5fe084b..618fa051 100644
--- a/spp_consent/static/description/index.html
+++ b/spp_consent/static/description/index.html
@@ -403,8 +403,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -452,7 +452,8 @@ Key Models
Wizard for recording individual
consent |
-| spp.bulk.record.consent.wizard |
+ | ``
+spp.bulk.record.consent.wizard`` |
Wizard for bulk consent
recording across multiple
beneficiaries |
@@ -506,9 +507,9 @@ UI Location
Security
-
-
-
+
+
+
| Group |
@@ -517,40 +518,49 @@ Security
-| spp_registry.group_registry_viewer |
+ | spp_registry.gro
+up_registry_viewer |
All models |
Read |
-| spp_registry.group_registry_officer |
+ | spp_registry.grou
+p_registry_officer |
spp.consent |
Read/Write/Create
(no delete) |
-| spp_registry.group_registry_officer |
+ | spp_registry.grou
+p_registry_officer |
Wizards |
Read/Write/Create
(no delete) |
-| spp_registry.group_registry_officer |
+ | spp_registry.grou
+p_registry_officer |
DPV taxonomies and
notices |
Read |
-| spp_registry.group_registry_manager |
+ | spp_registry.grou
+p_registry_manager |
spp.consent |
Full CRUD |
-| spp_registry.group_registry_manager |
-spp.consent.history |
+ | spp_registry.grou
+p_registry_manager |
+s
+pp.consent.history |
Read/Create (no
write/delete) |
-| spp_registry.group_registry_manager |
+ | spp_registry.grou
+p_registry_manager |
Taxonomies, notices,
org types |
Full CRUD |
-| spp_security.group_spp_admin |
+ | spp_securi
+ty.group_spp_admin |
All models |
Full CRUD |
diff --git a/spp_cr_types_advanced/README.rst b/spp_cr_types_advanced/README.rst
index f770738f..16b85c75 100644
--- a/spp_cr_types_advanced/README.rst
+++ b/spp_cr_types_advanced/README.rst
@@ -51,33 +51,33 @@ This module does not define models. It provides data records for
``spp.change.request.type`` and security rules for detail/apply models
defined in ``spp_change_request_v2``:
-+-------------------------------------+------------------------------------+----------------------+
-| Detail Model | Apply Model | Purpose |
-+=====================================+====================================+======================+
-| ``spp.cr.detail.add_member`` | ``spp.cr.apply.add_member`` | Add new member to |
-| | | group |
-+-------------------------------------+------------------------------------+----------------------+
-| ``spp.cr.detail.remove_member`` | ``spp.cr.apply.remove_member`` | Remove member from |
-| | | group |
-+-------------------------------------+------------------------------------+----------------------+
-| ``spp.cr.detail.change_hoh`` | ``spp.cr.apply.change_hoh`` | Change head of |
-| | | household |
-+-------------------------------------+------------------------------------+----------------------+
-| ``spp.cr.detail.transfer_member`` | ``spp.cr.apply.transfer_member`` | Transfer member |
-| | | between groups |
-+-------------------------------------+------------------------------------+----------------------+
-| ``spp.cr.detail.exit_registrant`` | ``spp.cr.apply.exit_registrant`` | Deactivate |
-| | | registrant |
-+-------------------------------------+------------------------------------+----------------------+
-| ``spp.cr.detail.create_group`` | ``spp.cr.apply.create_group`` | Create new |
-| | | group/household |
-+-------------------------------------+------------------------------------+----------------------+
-| ``spp.cr.detail.split_household`` | ``spp.cr.apply.split_household`` | Split household into |
-| | | two groups |
-+-------------------------------------+------------------------------------+----------------------+
-| ``spp.cr.detail.merge_registrants`` | ``spp.cr.apply.merge_registrants`` | Merge duplicate |
-| | | registrant records |
-+-------------------------------------+------------------------------------+----------------------+
++----------------------+----------------------+----------------------+
+| Detail Model | Apply Model | Purpose |
++======================+======================+======================+
+| ``spp.cr | ``spp.c | Add new member to |
+| .detail.add_member`` | r.apply.add_member`` | group |
++----------------------+----------------------+----------------------+
+| ``spp.cr.de | ``spp.cr.a | Remove member from |
+| tail.remove_member`` | pply.remove_member`` | group |
++----------------------+----------------------+----------------------+
+| ``spp.cr | ``spp.c | Change head of |
+| .detail.change_hoh`` | r.apply.change_hoh`` | household |
++----------------------+----------------------+----------------------+
+| ``spp.cr.deta | ``spp.cr.app | Transfer member |
+| il.transfer_member`` | ly.transfer_member`` | between groups |
++----------------------+----------------------+----------------------+
+| ``spp.cr.deta | ``spp.cr.app | Deactivate |
+| il.exit_registrant`` | ly.exit_registrant`` | registrant |
++----------------------+----------------------+----------------------+
+| ``spp.cr.d | ``spp.cr. | Create new |
+| etail.create_group`` | apply.create_group`` | group/household |
++----------------------+----------------------+----------------------+
+| ``spp.cr.deta | ``spp.cr.app | Split household into |
+| il.split_household`` | ly.split_household`` | two groups |
++----------------------+----------------------+----------------------+
+| ``spp.cr.detail | ``spp.cr.apply | Merge duplicate |
+| .merge_registrants`` | .merge_registrants`` | registrant records |
++----------------------+----------------------+----------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_cr_types_advanced/static/description/index.html b/spp_cr_types_advanced/static/description/index.html
index 64c913ee..f2b3ca34 100644
--- a/spp_cr_types_advanced/static/description/index.html
+++ b/spp_cr_types_advanced/static/description/index.html
@@ -399,9 +399,9 @@ Models Secured by This Module
defined in spp_change_request_v2:
-
-
-
+
+
+
| Detail Model |
@@ -410,43 +410,59 @@ Models Secured by This Module
-| spp.cr.detail.add_member |
-spp.cr.apply.add_member |
+ | spp.cr
+.detail.add_member |
+spp.c
+r.apply.add_member |
Add new member to
group |
-| spp.cr.detail.remove_member |
-spp.cr.apply.remove_member |
+ | spp.cr.de
+tail.remove_member |
+spp.cr.a
+pply.remove_member |
Remove member from
group |
-| spp.cr.detail.change_hoh |
-spp.cr.apply.change_hoh |
+ | spp.cr
+.detail.change_hoh |
+spp.c
+r.apply.change_hoh |
Change head of
household |
-| spp.cr.detail.transfer_member |
-spp.cr.apply.transfer_member |
+ | spp.cr.deta
+il.transfer_member |
+spp.cr.app
+ly.transfer_member |
Transfer member
between groups |
-| spp.cr.detail.exit_registrant |
-spp.cr.apply.exit_registrant |
+ | spp.cr.deta
+il.exit_registrant |
+spp.cr.app
+ly.exit_registrant |
Deactivate
registrant |
-| spp.cr.detail.create_group |
-spp.cr.apply.create_group |
+ | spp.cr.d
+etail.create_group |
+spp.cr.
+apply.create_group |
Create new
group/household |
-| spp.cr.detail.split_household |
-spp.cr.apply.split_household |
+ | spp.cr.deta
+il.split_household |
+spp.cr.app
+ly.split_household |
Split household into
two groups |
-| spp.cr.detail.merge_registrants |
-spp.cr.apply.merge_registrants |
+ | spp.cr.detail
+.merge_registrants |
+spp.cr.apply
+.merge_registrants |
Merge duplicate
registrant records |
diff --git a/spp_cr_types_base/README.rst b/spp_cr_types_base/README.rst
index 87f3e7d4..38efda35 100644
--- a/spp_cr_types_base/README.rst
+++ b/spp_cr_types_base/README.rst
@@ -48,24 +48,24 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------------+----------------------------------+
-| Model | Description |
-+=====================================+==================================+
-| ``spp.cr.detail.edit_individual`` | Detail form for individual |
-| | information changes |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.edit_group`` | Detail form for group/household |
-| | information |
-+-------------------------------------+----------------------------------+
-| ``spp.cr.detail.update_id`` | Detail form for ID document |
-| | operations |
-+-------------------------------------+----------------------------------+
-| ``spp.change.request.type`` | CR type configurations (defined |
-| | in parent) |
-+-------------------------------------+----------------------------------+
-| ``spp.change.request.type.mapping`` | Field mappings for field_mapping |
-| | strategy |
-+-------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Model | Description |
++==================================+==================================+
+| ` | Detail form for individual |
+| `spp.cr.detail.edit_individual`` | information changes |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.edit_group`` | Detail form for group/household |
+| | information |
++----------------------------------+----------------------------------+
+| ``spp.cr.detail.update_id`` | Detail form for ID document |
+| | operations |
++----------------------------------+----------------------------------+
+| ``spp.change.request.type`` | CR type configurations (defined |
+| | in parent) |
++----------------------------------+----------------------------------+
+| ``s | Field mappings for field_mapping |
+| pp.change.request.type.mapping`` | strategy |
++----------------------------------+----------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -93,14 +93,15 @@ UI Location
Security
~~~~~~~~
-+--------------------------------------------+----------------------------------+
-| Group | Access |
-+============================================+==================================+
-| ``spp_change_request_v2.group_cr_user`` | Read/write/create detail models |
-| | (no delete) |
-+--------------------------------------------+----------------------------------+
-| ``spp_change_request_v2.group_cr_manager`` | Full CRUD on detail models |
-+--------------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``spp_c | Read/write/create detail models |
+| hange_request_v2.group_cr_user`` | (no delete) |
++----------------------------------+----------------------------------+
+| ``spp_chan | Full CRUD on detail models |
+| ge_request_v2.group_cr_manager`` | |
++----------------------------------+----------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_cr_types_base/static/description/index.html b/spp_cr_types_base/static/description/index.html
index 9c90a59c..0901a368 100644
--- a/spp_cr_types_base/static/description/index.html
+++ b/spp_cr_types_base/static/description/index.html
@@ -397,8 +397,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -406,7 +406,8 @@ Key Models
-| spp.cr.detail.edit_individual |
+ | `
+spp.cr.detail.edit_individual` |
Detail form for individual
information changes |
@@ -422,7 +423,8 @@ Key Models
CR type configurations (defined
in parent) |
-| spp.change.request.type.mapping |
+ | s
+pp.change.request.type.mapping |
Field mappings for field_mapping
strategy |
@@ -457,8 +459,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -466,11 +468,13 @@ Security
-| spp_change_request_v2.group_cr_user |
+ | spp_c
+hange_request_v2.group_cr_user |
Read/write/create detail models
(no delete) |
-| spp_change_request_v2.group_cr_manager |
+ | spp_chan
+ge_request_v2.group_cr_manager |
Full CRUD on detail models |
diff --git a/spp_custom_field/README.rst b/spp_custom_field/README.rst
index dfee7594..016153b9 100644
--- a/spp_custom_field/README.rst
+++ b/spp_custom_field/README.rst
@@ -44,18 +44,18 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+------------------------------+---------------------------------------+
-| Model | Description |
-+==============================+=======================================+
-| ``spp.custom.field.group`` | Groups custom fields for organized |
-| | display in UI |
-+------------------------------+---------------------------------------+
-| ``ir.model.fields`` (extend) | Adds ``field_group_id`` and |
-| | ``sequence`` for field order |
-+------------------------------+---------------------------------------+
-| ``res.partner`` (extend) | Dynamically injects custom fields |
-| | into forms |
-+------------------------------+---------------------------------------+
++------------------------------+--------------------------------------+
+| Model | Description |
++==============================+======================================+
+| ``spp.custom.field.group`` | Groups custom fields for organized |
+| | display in UI |
++------------------------------+--------------------------------------+
+| ``ir.model.fields`` (extend) | Adds ``field_group_id`` and |
+| | ``sequence`` for field order |
++------------------------------+--------------------------------------+
+| ``res.partner`` (extend) | Dynamically injects custom fields |
+| | into forms |
++------------------------------+--------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_custom_field/static/description/index.html b/spp_custom_field/static/description/index.html
index 180382d8..425dba44 100644
--- a/spp_custom_field/static/description/index.html
+++ b/spp_custom_field/static/description/index.html
@@ -393,8 +393,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_dci/README.rst b/spp_dci/README.rst
index 68cc1d7e..c5de78da 100644
--- a/spp_dci/README.rst
+++ b/spp_dci/README.rst
@@ -46,12 +46,12 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------+--------------------------------------------+
-| Model | Description |
-+=========================+============================================+
-| ``spp.dci.signing.key`` | Cryptographic signing key with lifecycle |
-| | state management |
-+-------------------------+--------------------------------------------+
++-------------------------+-------------------------------------------+
+| Model | Description |
++=========================+===========================================+
+| ``spp.dci.signing.key`` | Cryptographic signing key with lifecycle |
+| | state management |
++-------------------------+-------------------------------------------+
Pydantic Schemas
~~~~~~~~~~~~~~~~
diff --git a/spp_dci/static/description/index.html b/spp_dci/static/description/index.html
index 1e960153..dd2deb89 100644
--- a/spp_dci/static/description/index.html
+++ b/spp_dci/static/description/index.html
@@ -395,8 +395,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_dci_client/README.rst b/spp_dci_client/README.rst
index acc336cf..192cae01 100644
--- a/spp_dci_client/README.rst
+++ b/spp_dci_client/README.rst
@@ -45,12 +45,12 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------+--------------------------------------------+
-| Model | Description |
-+=========================+============================================+
-| ``spp.dci.data.source`` | Connection configuration for external DCI |
-| | registries |
-+-------------------------+--------------------------------------------+
++-------------------------+-------------------------------------------+
+| Model | Description |
++=========================+===========================================+
+| ``spp.dci.data.source`` | Connection configuration for external DCI |
+| | registries |
++-------------------------+-------------------------------------------+
Python Service Classes
~~~~~~~~~~~~~~~~~~~~~~
diff --git a/spp_dci_client/static/description/index.html b/spp_dci_client/static/description/index.html
index baaa3245..d6420f96 100644
--- a/spp_dci_client/static/description/index.html
+++ b/spp_dci_client/static/description/index.html
@@ -394,8 +394,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_dci_client_crvs/README.rst b/spp_dci_client_crvs/README.rst
index 054e0c3e..5cbba06b 100644
--- a/spp_dci_client_crvs/README.rst
+++ b/spp_dci_client_crvs/README.rst
@@ -46,15 +46,15 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------+--------------------------------------------+
-| Model | Description |
-+=========================+============================================+
-| ``spp.dci.crvs.event`` | Vital event log with identifier, type, |
-| | date, processing state |
-+-------------------------+--------------------------------------------+
-| ``spp.dci.crvs.sender`` | Trusted CRVS registry with sender ID and |
-| | public key |
-+-------------------------+--------------------------------------------+
++-------------------------+-------------------------------------------+
+| Model | Description |
++=========================+===========================================+
+| ``spp.dci.crvs.event`` | Vital event log with identifier, type, |
+| | date, processing state |
++-------------------------+-------------------------------------------+
+| ``spp.dci.crvs.sender`` | Trusted CRVS registry with sender ID and |
+| | public key |
++-------------------------+-------------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_dci_client_crvs/static/description/index.html b/spp_dci_client_crvs/static/description/index.html
index 2f0c61ac..aaa7da4a 100644
--- a/spp_dci_client_crvs/static/description/index.html
+++ b/spp_dci_client_crvs/static/description/index.html
@@ -395,8 +395,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_dci_client_dr/README.rst b/spp_dci_client_dr/README.rst
index ecc9fdb4..c806bb79 100644
--- a/spp_dci_client_dr/README.rst
+++ b/spp_dci_client_dr/README.rst
@@ -42,17 +42,17 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Model | Description |
-+===============================+======================================+
-| ``spp.dci.disability.status`` | Cached disability data: PWD flag, |
-| | disability types, functional scores, |
-| | raw data |
-+-------------------------------+--------------------------------------+
-| ``spp.dci.dr.sender`` | Trusted DR registry entries with |
-| | sender_id, public keys, and JWKS |
-| | endpoints |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Description |
++===============================+=====================================+
+| ``spp.dci.disability.status`` | Cached disability data: PWD flag, |
+| | disability types, functional |
+| | scores, raw data |
++-------------------------------+-------------------------------------+
+| ``spp.dci.dr.sender`` | Trusted DR registry entries with |
+| | sender_id, public keys, and JWKS |
+| | endpoints |
++-------------------------------+-------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -108,15 +108,15 @@ DR Sender form:
Security
~~~~~~~~
-+-----------------------+----------------------------------------------+
-| Group | Access |
-+=======================+==============================================+
-| ``base.group_system`` | Full CRUD on disability status and DR sender |
-| | registry |
-+-----------------------+----------------------------------------------+
-| ``base.group_user`` | Read/Write/Create disability status, |
-| | read-only DR sender registry |
-+-----------------------+----------------------------------------------+
++-----------------------+---------------------------------------------+
+| Group | Access |
++=======================+=============================================+
+| ``base.group_system`` | Full CRUD on disability status and DR |
+| | sender registry |
++-----------------------+---------------------------------------------+
+| ``base.group_user`` | Read/Write/Create disability status, |
+| | read-only DR sender registry |
++-----------------------+---------------------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_dci_client_dr/static/description/index.html b/spp_dci_client_dr/static/description/index.html
index f73ca1e2..a5b386bd 100644
--- a/spp_dci_client_dr/static/description/index.html
+++ b/spp_dci_client_dr/static/description/index.html
@@ -391,8 +391,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -402,8 +402,8 @@ Key Models
| spp.dci.disability.status |
Cached disability data: PWD flag,
-disability types, functional scores,
-raw data |
+disability types, functional
+scores, raw data
| spp.dci.dr.sender |
Trusted DR registry entries with
@@ -467,8 +467,8 @@ Tabs
Security
-
-
+
+
| Group |
@@ -477,8 +477,8 @@ Security
| base.group_system |
-Full CRUD on disability status and DR sender
-registry |
+Full CRUD on disability status and DR
+sender registry |
| base.group_user |
Read/Write/Create disability status,
diff --git a/spp_dci_client_ibr/README.rst b/spp_dci_client_ibr/README.rst
index c97544b6..c8752134 100644
--- a/spp_dci_client_ibr/README.rst
+++ b/spp_dci_client_ibr/README.rst
@@ -45,18 +45,18 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Model | Description |
-+===============================+======================================+
-| ``spp.dci.duplication.check`` | Stores duplication check requests |
-| | and results from IBR |
-+-------------------------------+--------------------------------------+
-| ``spp.dci.ibr.sender`` | Registry of trusted IBR systems with |
-| | public keys |
-+-------------------------------+--------------------------------------+
-| ``fastapi.endpoint`` | Inherited to add IBR callback router |
-| | to DCI API endpoint |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Description |
++===============================+=====================================+
+| ``spp.dci.duplication.check`` | Stores duplication check requests |
+| | and results from IBR |
++-------------------------------+-------------------------------------+
+| ``spp.dci.ibr.sender`` | Registry of trusted IBR systems |
+| | with public keys |
++-------------------------------+-------------------------------------+
+| ``fastapi.endpoint`` | Inherited to add IBR callback |
+| | router to DCI API endpoint |
++-------------------------------+-------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -83,20 +83,24 @@ UI Location
Security
~~~~~~~~
-+-----------------------------------------+-------------------------------+----------------------+
-| Group | Model | Access |
-+=========================================+===============================+======================+
-| ``spp_registry.group_registry_viewer`` | ``spp.dci.duplication.check`` | Read |
-+-----------------------------------------+-------------------------------+----------------------+
-| ``spp_registry.group_registry_officer`` | ``spp.dci.duplication.check`` | Read/Write/Create |
-| | | (no delete) |
-+-----------------------------------------+-------------------------------+----------------------+
-| ``spp_registry.group_registry_manager`` | ``spp.dci.duplication.check`` | Full CRUD |
-+-----------------------------------------+-------------------------------+----------------------+
-| ``base.group_system`` | ``spp.dci.ibr.sender`` | Full CRUD |
-+-----------------------------------------+-------------------------------+----------------------+
-| ``base.group_user`` | ``spp.dci.ibr.sender`` | Read |
-+-----------------------------------------+-------------------------------+----------------------+
++----------------------+----------------------+----------------------+
+| Group | Model | Access |
++======================+======================+======================+
+| ``spp_registry.gro | ``spp.dci | Read |
+| up_registry_viewer`` | .duplication.check`` | |
++----------------------+----------------------+----------------------+
+| ``spp_registry.grou | ``spp.dci | Read/Write/Create |
+| p_registry_officer`` | .duplication.check`` | (no delete) |
++----------------------+----------------------+----------------------+
+| ``spp_registry.grou | ``spp.dci | Full CRUD |
+| p_registry_manager`` | .duplication.check`` | |
++----------------------+----------------------+----------------------+
+| ` | `` | Full CRUD |
+| `base.group_system`` | spp.dci.ibr.sender`` | |
++----------------------+----------------------+----------------------+
+| ``base.group_user`` | `` | Read |
+| | spp.dci.ibr.sender`` | |
++----------------------+----------------------+----------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_dci_client_ibr/static/description/index.html b/spp_dci_client_ibr/static/description/index.html
index 62bb4fb2..1d891626 100644
--- a/spp_dci_client_ibr/static/description/index.html
+++ b/spp_dci_client_ibr/static/description/index.html
@@ -394,8 +394,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -408,12 +408,12 @@ Key Models
and results from IBR
| spp.dci.ibr.sender |
-Registry of trusted IBR systems with
-public keys |
+Registry of trusted IBR systems
+with public keys |
| fastapi.endpoint |
-Inherited to add IBR callback router
-to DCI API endpoint |
+Inherited to add IBR callback
+router to DCI API endpoint |
@@ -445,9 +445,9 @@ UI Location
Security
-
-
+
+
| Group |
@@ -456,25 +456,34 @@ Security
-| spp_registry.group_registry_viewer |
-spp.dci.duplication.check |
+ | spp_registry.gro
+up_registry_viewer |
+spp.dci
+.duplication.check |
Read |
-| spp_registry.group_registry_officer |
-spp.dci.duplication.check |
+ | spp_registry.grou
+p_registry_officer |
+spp.dci
+.duplication.check |
Read/Write/Create
(no delete) |
-| spp_registry.group_registry_manager |
-spp.dci.duplication.check |
+ | spp_registry.grou
+p_registry_manager |
+spp.dci
+.duplication.check |
Full CRUD |
-| base.group_system |
-spp.dci.ibr.sender |
+ | `
+base.group_system` |
+``
+spp.dci.ibr.sender`` |
Full CRUD |
| base.group_user |
-spp.dci.ibr.sender |
+``
+spp.dci.ibr.sender`` |
Read |
diff --git a/spp_dci_server/README.rst b/spp_dci_server/README.rst
index 4f378a40..31e7e059 100644
--- a/spp_dci_server/README.rst
+++ b/spp_dci_server/README.rst
@@ -51,24 +51,24 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+------------------------------+---------------------------------------+
-| Model | Description |
-+==============================+=======================================+
-| ``spp.dci.sender.registry`` | External DCI senders with public keys |
-| | for signature verification |
-+------------------------------+---------------------------------------+
-| ``spp.dci.transaction`` | Async DCI request tracking (search, |
-| | subscribe, unsubscribe) |
-+------------------------------+---------------------------------------+
-| ``spp.dci.subscription`` | Event subscriptions with callback |
-| | URIs and filter expressions |
-+------------------------------+---------------------------------------+
-| ``spp.dci.notification.log`` | Audit trail of sent notifications |
-| | with receipt tracking |
-+------------------------------+---------------------------------------+
-| ``spp.dci.server.key`` | Server signing keys for outbound |
-| | responses and notifications |
-+------------------------------+---------------------------------------+
++------------------------------+--------------------------------------+
+| Model | Description |
++==============================+======================================+
+| ``spp.dci.sender.registry`` | External DCI senders with public |
+| | keys for signature verification |
++------------------------------+--------------------------------------+
+| ``spp.dci.transaction`` | Async DCI request tracking (search, |
+| | subscribe, unsubscribe) |
++------------------------------+--------------------------------------+
+| ``spp.dci.subscription`` | Event subscriptions with callback |
+| | URIs and filter expressions |
++------------------------------+--------------------------------------+
+| ``spp.dci.notification.log`` | Audit trail of sent notifications |
+| | with receipt tracking |
++------------------------------+--------------------------------------+
+| ``spp.dci.server.key`` | Server signing keys for outbound |
+| | responses and notifications |
++------------------------------+--------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_dci_server/static/description/index.html b/spp_dci_server/static/description/index.html
index 8475eace..437c31a1 100644
--- a/spp_dci_server/static/description/index.html
+++ b/spp_dci_server/static/description/index.html
@@ -400,8 +400,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -410,8 +410,8 @@ Key Models
| spp.dci.sender.registry |
-External DCI senders with public keys
-for signature verification |
+External DCI senders with public
+keys for signature verification |
| spp.dci.transaction |
Async DCI request tracking (search,
diff --git a/spp_demo/README.rst b/spp_demo/README.rst
index 92e150a7..448e9bf3 100644
--- a/spp_demo/README.rst
+++ b/spp_demo/README.rst
@@ -46,27 +46,27 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+----------------------------------+-----------------------------------+
-| Model | Description |
-+==================================+===================================+
-| ``spp.demo.data.generator`` | Main generator with configuration |
-| | and batch controls |
-+----------------------------------+-----------------------------------+
-| ``spp.demo.data.generation.log`` | Logs failed generation attempts |
-| | with diagnostics |
-+----------------------------------+-----------------------------------+
-| ``spp.demo.data.id.types`` | ID type configuration for |
-| | individual/group generation |
-+----------------------------------+-----------------------------------+
-| ``spp.demo.data.bank.types`` | Bank type configuration for |
-| | account generation |
-+----------------------------------+-----------------------------------+
-| ``spp.apps.wizard`` | Wizard for installing missing |
-| | demo modules |
-+----------------------------------+-----------------------------------+
-| ``spp.missing.module`` | Transient model for tracking |
-| | missing modules |
-+----------------------------------+-----------------------------------+
++----------------------------------+----------------------------------+
+| Model | Description |
++==================================+==================================+
+| ``spp.demo.data.generator`` | Main generator with |
+| | configuration and batch controls |
++----------------------------------+----------------------------------+
+| ``spp.demo.data.generation.log`` | Logs failed generation attempts |
+| | with diagnostics |
++----------------------------------+----------------------------------+
+| ``spp.demo.data.id.types`` | ID type configuration for |
+| | individual/group generation |
++----------------------------------+----------------------------------+
+| ``spp.demo.data.bank.types`` | Bank type configuration for |
+| | account generation |
++----------------------------------+----------------------------------+
+| ``spp.apps.wizard`` | Wizard for installing missing |
+| | demo modules |
++----------------------------------+----------------------------------+
+| ``spp.missing.module`` | Transient model for tracking |
+| | missing modules |
++----------------------------------+----------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -99,19 +99,20 @@ UI Location
Security
~~~~~~~~
-+----------------------------------------+----------------------------------+
-| Group | Access |
-+========================================+==================================+
-| ``base.group_system`` | Full CRUD on all models |
-+----------------------------------------+----------------------------------+
-| ``spp_registry.group_registry_read`` | Read access to all models |
-+----------------------------------------+----------------------------------+
-| ``spp_registry.group_registry_write`` | Read/Write on generator and logs |
-| | (delete ID/Bank types) |
-+----------------------------------------+----------------------------------+
-| ``spp_registry.group_registry_create`` | Read/Create access (delete |
-| | ID/Bank types) |
-+----------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``base.group_system`` | Full CRUD on all models |
++----------------------------------+----------------------------------+
+| ``sp | Read access to all models |
+| p_registry.group_registry_read`` | |
++----------------------------------+----------------------------------+
+| ``spp | Read/Write on generator and logs |
+| _registry.group_registry_write`` | (delete ID/Bank types) |
++----------------------------------+----------------------------------+
+| ``spp_ | Read/Create access (delete |
+| registry.group_registry_create`` | ID/Bank types) |
++----------------------------------+----------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_demo/static/description/index.html b/spp_demo/static/description/index.html
index 0ece0bdb..14b2537a 100644
--- a/spp_demo/static/description/index.html
+++ b/spp_demo/static/description/index.html
@@ -395,8 +395,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -405,8 +405,8 @@ Key Models
| spp.demo.data.generator |
-Main generator with configuration
-and batch controls |
+Main generator with
+configuration and batch controls |
| spp.demo.data.generation.log |
Logs failed generation attempts
@@ -464,8 +464,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -476,14 +476,17 @@ Security
|---|
| base.group_system |
Full CRUD on all models |
-| spp_registry.group_registry_read |
+ | sp
+p_registry.group_registry_read |
Read access to all models |
-| spp_registry.group_registry_write |
+ | spp
+_registry.group_registry_write |
Read/Write on generator and logs
(delete ID/Bank types) |
-| spp_registry.group_registry_create |
+ | spp_
+registry.group_registry_create |
Read/Create access (delete
ID/Bank types) |
diff --git a/spp_dms/README.rst b/spp_dms/README.rst
index c6247498..6367730c 100644
--- a/spp_dms/README.rst
+++ b/spp_dms/README.rst
@@ -46,24 +46,24 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+------------------------------------+----------------------------------+
-| Model | Description |
-+====================================+==================================+
-| ``spp.dms.directory`` | Directory with parent/child |
-| | hierarchy and file storage |
-+------------------------------------+----------------------------------+
-| ``spp.dms.file`` | File record with binary content |
-| | and optional versioning |
-+------------------------------------+----------------------------------+
-| ``spp.dms.file.version`` | Version snapshot with content, |
-| | checksum, and comment |
-+------------------------------------+----------------------------------+
-| ``spp.dms.category`` | File classification with |
-| | validation rules |
-+------------------------------------+----------------------------------+
-| ``spp.dms.restore.version.wizard`` | Transient wizard for restoring |
-| | file versions |
-+------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Model | Description |
++==================================+==================================+
+| ``spp.dms.directory`` | Directory with parent/child |
+| | hierarchy and file storage |
++----------------------------------+----------------------------------+
+| ``spp.dms.file`` | File record with binary content |
+| | and optional versioning |
++----------------------------------+----------------------------------+
+| ``spp.dms.file.version`` | Version snapshot with content, |
+| | checksum, and comment |
++----------------------------------+----------------------------------+
+| ``spp.dms.category`` | File classification with |
+| | validation rules |
++----------------------------------+----------------------------------+
+| `` | Transient wizard for restoring |
+| spp.dms.restore.version.wizard`` | file versions |
++----------------------------------+----------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -89,18 +89,18 @@ UI Location
Security
~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Group | Access |
-+===============================+======================================+
-| ``spp_dms.group_dms_viewer`` | Read directories, files, versions, |
-| | categories |
-+-------------------------------+--------------------------------------+
-| ``spp_dms.group_dms_officer`` | Create/edit files and directories |
-| | (no delete) |
-+-------------------------------+--------------------------------------+
-| ``spp_dms.group_dms_manager`` | Full CRUD on all models including |
-| | categories |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Group | Access |
++===============================+=====================================+
+| ``spp_dms.group_dms_viewer`` | Read directories, files, versions, |
+| | categories |
++-------------------------------+-------------------------------------+
+| ``spp_dms.group_dms_officer`` | Create/edit files and directories |
+| | (no delete) |
++-------------------------------+-------------------------------------+
+| ``spp_dms.group_dms_manager`` | Full CRUD on all models including |
+| | categories |
++-------------------------------+-------------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_dms/static/description/index.html b/spp_dms/static/description/index.html
index 18eead21..cd6eb13b 100644
--- a/spp_dms/static/description/index.html
+++ b/spp_dms/static/description/index.html
@@ -395,8 +395,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -420,7 +420,8 @@ Key Models
File classification with
validation rules |
-| spp.dms.restore.version.wizard |
+ | ``
+spp.dms.restore.version.wizard`` |
Transient wizard for restoring
file versions |
@@ -453,8 +454,8 @@ UI Location
Security
-
-
+
+
| Group |
diff --git a/spp_drims/README.rst b/spp_drims/README.rst
index df30ccf9..62ebed85 100644
--- a/spp_drims/README.rst
+++ b/spp_drims/README.rst
@@ -123,31 +123,31 @@ UI Location
Security
~~~~~~~~
-+--------------------------------------------------+----------------------------------+
-| Group | Access |
-+==================================================+==================================+
-| ``spp_drims.group_drims_viewer`` | Read-only access to donations, |
-| | requests, dispatches |
-+--------------------------------------------------+----------------------------------+
-| ``spp_drims.group_drims_officer`` | Create and edit donations, |
-| | requests, returns (no delete) |
-+--------------------------------------------------+----------------------------------+
-| ``spp_drims.group_drims_approver`` | Approve or reject supply |
-| | requests |
-+--------------------------------------------------+----------------------------------+
-| ``spp_drims.group_drims_manager`` | Full CRUD including deletion and |
-| | configuration |
-+--------------------------------------------------+----------------------------------+
-| ``spp_drims.group_drims_warehouse_worker`` | Receive donations, manage stock, |
-| | process dispatches |
-+--------------------------------------------------+----------------------------------+
-| ``spp_drims.group_drims_field_officer`` | Create requests and confirm |
-| | deliveries in the field |
-+--------------------------------------------------+----------------------------------+
-| ``spp_drims.group_drims_coordinator_supervisor`` | Coordinate requests and |
-| | distributions within assigned |
-| | areas |
-+--------------------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``spp_drims.group_drims_viewer`` | Read-only access to donations, |
+| | requests, dispatches |
++----------------------------------+----------------------------------+
+| ` | Create and edit donations, |
+| `spp_drims.group_drims_officer`` | requests, returns (no delete) |
++----------------------------------+----------------------------------+
+| `` | Approve or reject supply |
+| spp_drims.group_drims_approver`` | requests |
++----------------------------------+----------------------------------+
+| ` | Full CRUD including deletion and |
+| `spp_drims.group_drims_manager`` | configuration |
++----------------------------------+----------------------------------+
+| ``spp_drim | Receive donations, manage stock, |
+| s.group_drims_warehouse_worker`` | process dispatches |
++----------------------------------+----------------------------------+
+| ``spp_d | Create requests and confirm |
+| rims.group_drims_field_officer`` | deliveries in the field |
++----------------------------------+----------------------------------+
+| ``spp_drims.grou | Coordinate requests and |
+| p_drims_coordinator_supervisor`` | distributions within assigned |
+| | areas |
++----------------------------------+----------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_drims/static/description/index.html b/spp_drims/static/description/index.html
index 5e4ac297..44d4467f 100644
--- a/spp_drims/static/description/index.html
+++ b/spp_drims/static/description/index.html
@@ -492,8 +492,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -505,27 +505,33 @@ Security
Read-only access to donations,
requests, dispatches |
-| spp_drims.group_drims_officer |
+ | `
+spp_drims.group_drims_officer` |
Create and edit donations,
requests, returns (no delete) |
-| spp_drims.group_drims_approver |
+ | ``
+spp_drims.group_drims_approver`` |
Approve or reject supply
requests |
-| spp_drims.group_drims_manager |
+ | `
+spp_drims.group_drims_manager` |
Full CRUD including deletion and
configuration |
-| spp_drims.group_drims_warehouse_worker |
+ | spp_drim
+s.group_drims_warehouse_worker |
Receive donations, manage stock,
process dispatches |
-| spp_drims.group_drims_field_officer |
+ | spp_d
+rims.group_drims_field_officer |
Create requests and confirm
deliveries in the field |
-| spp_drims.group_drims_coordinator_supervisor |
+ | spp_drims.grou
+p_drims_coordinator_supervisor |
Coordinate requests and
distributions within assigned
areas |
diff --git a/spp_drims_sl/README.rst b/spp_drims_sl/README.rst
index 3bcab5e9..bae4bfa7 100644
--- a/spp_drims_sl/README.rst
+++ b/spp_drims_sl/README.rst
@@ -61,19 +61,19 @@ Key Configuration Data
Approval Workflow Tiers
~~~~~~~~~~~~~~~~~~~~~~~
-+------------------------------+------------------------------+--------+
-| Condition | Approvers | SLA |
-+==============================+==============================+========+
-| Priority = Life-Threatening | Single manager (fast-track) | 0 days |
-+------------------------------+------------------------------+--------+
-| Value < 100,000 LKR | District approver | 1 day |
-+------------------------------+------------------------------+--------+
-| Value 100,000 - 500,000 LKR | District → Provincial | 2 days |
-| | (2-tier) | |
-+------------------------------+------------------------------+--------+
-| Value > 500,000 LKR | District → Provincial → | 3 days |
-| | National DMC (3-tier) | |
-+------------------------------+------------------------------+--------+
++-----------------------------+-----------------------------+--------+
+| Condition | Approvers | SLA |
++=============================+=============================+========+
+| Priority = Life-Threatening | Single manager (fast-track) | 0 days |
++-----------------------------+-----------------------------+--------+
+| Value < 100,000 LKR | District approver | 1 day |
++-----------------------------+-----------------------------+--------+
+| Value 100,000 - 500,000 LKR | District → Provincial | 2 days |
+| | (2-tier) | |
++-----------------------------+-----------------------------+--------+
+| Value > 500,000 LKR | District → Provincial → | 3 days |
+| | National DMC (3-tier) | |
++-----------------------------+-----------------------------+--------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_drims_sl_demo/README.rst b/spp_drims_sl_demo/README.rst
index a0acfad7..4f2106d4 100644
--- a/spp_drims_sl_demo/README.rst
+++ b/spp_drims_sl_demo/README.rst
@@ -51,15 +51,15 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Model | Description |
-+===============================+======================================+
-| ``spp.drims.demo.generator`` | Transient wizard that orchestrates |
-| | demo data generation |
-+-------------------------------+--------------------------------------+
-| ``spp.gis.report`` (extended) | Adds ``spp.drims.request`` as |
-| | supported GIS report data source |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Description |
++===============================+=====================================+
+| ``spp.drims.demo.generator`` | Transient wizard that orchestrates |
+| | demo data generation |
++-------------------------------+-------------------------------------+
+| ``spp.gis.report`` (extended) | Adds ``spp.drims.request`` as |
+| | supported GIS report data source |
++-------------------------------+-------------------------------------+
Usage
~~~~~
diff --git a/spp_drims_sl_demo/static/description/index.html b/spp_drims_sl_demo/static/description/index.html
index 797d1207..65e5bd08 100644
--- a/spp_drims_sl_demo/static/description/index.html
+++ b/spp_drims_sl_demo/static/description/index.html
@@ -400,8 +400,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_event_data/README.rst b/spp_event_data/README.rst
index 485a4f5f..6f20b18c 100644
--- a/spp_event_data/README.rst
+++ b/spp_event_data/README.rst
@@ -53,24 +53,24 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-----------------------------+----------------------------------------+
-| Model | Description |
-+=============================+========================================+
-| ``spp.event.data`` | Event record with registrant link, |
-| | collection metadata |
-+-----------------------------+----------------------------------------+
-| ``spp.event.type`` | Event type configuration (category, |
-| | lifecycle, source) |
-+-----------------------------+----------------------------------------+
-| ``spp.event.field`` | Custom field definition for JSON-based |
-| | event types |
-+-----------------------------+----------------------------------------+
-| ``spp.event.type.mapping`` | Field mapping for external source data |
-| | transformation |
-+-----------------------------+----------------------------------------+
-| ``spp.create.event.wizard`` | Wizard to create new event records |
-| | from registrant form |
-+-----------------------------+----------------------------------------+
++-----------------------------+---------------------------------------+
+| Model | Description |
++=============================+=======================================+
+| ``spp.event.data`` | Event record with registrant link, |
+| | collection metadata |
++-----------------------------+---------------------------------------+
+| ``spp.event.type`` | Event type configuration (category, |
+| | lifecycle, source) |
++-----------------------------+---------------------------------------+
+| ``spp.event.field`` | Custom field definition for |
+| | JSON-based event types |
++-----------------------------+---------------------------------------+
+| ``spp.event.type.mapping`` | Field mapping for external source |
+| | data transformation |
++-----------------------------+---------------------------------------+
+| ``spp.create.event.wizard`` | Wizard to create new event records |
+| | from registrant form |
++-----------------------------+---------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_event_data/static/description/index.html b/spp_event_data/static/description/index.html
index a42a92ab..e8e00698 100644
--- a/spp_event_data/static/description/index.html
+++ b/spp_event_data/static/description/index.html
@@ -402,8 +402,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -420,12 +420,12 @@ Key Models
lifecycle, source)
| spp.event.field |
-Custom field definition for JSON-based
-event types |
+Custom field definition for
+JSON-based event types |
| spp.event.type.mapping |
-Field mapping for external source data
-transformation |
+Field mapping for external source
+data transformation |
| spp.create.event.wizard |
Wizard to create new event records
diff --git a/spp_gis/README.rst b/spp_gis/README.rst
index 300826d8..5c053da6 100644
--- a/spp_gis/README.rst
+++ b/spp_gis/README.rst
@@ -47,21 +47,21 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Model | Description |
-+===============================+======================================+
-| ``spp.gis.raster.layer`` | Background map layers (OSM, WMS, |
-| | image) |
-+-------------------------------+--------------------------------------+
-| ``spp.gis.data.layer`` | Vector data layers referencing geo |
-| | fields from any model |
-+-------------------------------+--------------------------------------+
-| ``spp.gis.color.scheme`` | Color palettes for choropleth and |
-| | thematic visualizations |
-+-------------------------------+--------------------------------------+
-| ``spp.gis.raster.layer.type`` | Raster layer type definitions (WMS |
-| | services) |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Description |
++===============================+=====================================+
+| ``spp.gis.raster.layer`` | Background map layers (OSM, WMS, |
+| | image) |
++-------------------------------+-------------------------------------+
+| ``spp.gis.data.layer`` | Vector data layers referencing geo |
+| | fields from any model |
++-------------------------------+-------------------------------------+
+| ``spp.gis.color.scheme`` | Color palettes for choropleth and |
+| | thematic visualizations |
++-------------------------------+-------------------------------------+
+| ``spp.gis.raster.layer.type`` | Raster layer type definitions (WMS |
+| | services) |
++-------------------------------+-------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -89,19 +89,19 @@ UI Location
Security
~~~~~~~~
-+--------------------------------------+----------------------------------+
-| Group | Access |
-+======================================+==================================+
-| ``spp_security.group_spp_admin`` | Full CRUD on all GIS models |
-+--------------------------------------+----------------------------------+
-| ``spp_registry.group_registry_read`` | Read-only on color schemes and |
-| | layers |
-+--------------------------------------+----------------------------------+
-| ``spp_gis.group_gis_user`` | View GIS data and maps |
-+--------------------------------------+----------------------------------+
-| ``spp_gis.group_gis_admin`` | Full GIS management including |
-| | configuration |
-+--------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``spp_security.group_spp_admin`` | Full CRUD on all GIS models |
++----------------------------------+----------------------------------+
+| ``sp | Read-only on color schemes and |
+| p_registry.group_registry_read`` | layers |
++----------------------------------+----------------------------------+
+| ``spp_gis.group_gis_user`` | View GIS data and maps |
++----------------------------------+----------------------------------+
+| ``spp_gis.group_gis_admin`` | Full GIS management including |
+| | configuration |
++----------------------------------+----------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_gis/static/description/index.html b/spp_gis/static/description/index.html
index b428fb13..7c0ce3aa 100644
--- a/spp_gis/static/description/index.html
+++ b/spp_gis/static/description/index.html
@@ -396,8 +396,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -452,8 +452,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -464,7 +464,8 @@ Security
|---|
| spp_security.group_spp_admin |
Full CRUD on all GIS models |
-| spp_registry.group_registry_read |
+ | sp
+p_registry.group_registry_read |
Read-only on color schemes and
layers |
diff --git a/spp_gis_report/README.rst b/spp_gis_report/README.rst
index f956ef5c..ab22d2f5 100644
--- a/spp_gis_report/README.rst
+++ b/spp_gis_report/README.rst
@@ -51,27 +51,27 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+------------------------------+---------------------------------------+
-| Model | Description |
-+==============================+=======================================+
-| ``spp.gis.report`` | Report configuration defining source, |
-| | aggregation, and display |
-+------------------------------+---------------------------------------+
-| ``spp.gis.report.data`` | Cached computed values for each area, |
-| | updated on schedule |
-+------------------------------+---------------------------------------+
-| ``spp.gis.report.template`` | Pre-built report definitions with |
-| | JSON configuration |
-+------------------------------+---------------------------------------+
-| ``spp.gis.report.category`` | Categories for organizing reports and |
-| | templates |
-+------------------------------+---------------------------------------+
-| ``spp.gis.report.threshold`` | Color threshold definitions for map |
-| | visualization |
-+------------------------------+---------------------------------------+
-| ``spp.gis.report.wizard`` | Three-step wizard for creating |
-| | reports from templates |
-+------------------------------+---------------------------------------+
++------------------------------+--------------------------------------+
+| Model | Description |
++==============================+======================================+
+| ``spp.gis.report`` | Report configuration defining |
+| | source, aggregation, and display |
++------------------------------+--------------------------------------+
+| ``spp.gis.report.data`` | Cached computed values for each |
+| | area, updated on schedule |
++------------------------------+--------------------------------------+
+| ``spp.gis.report.template`` | Pre-built report definitions with |
+| | JSON configuration |
++------------------------------+--------------------------------------+
+| ``spp.gis.report.category`` | Categories for organizing reports |
+| | and templates |
++------------------------------+--------------------------------------+
+| ``spp.gis.report.threshold`` | Color threshold definitions for map |
+| | visualization |
++------------------------------+--------------------------------------+
+| ``spp.gis.report.wizard`` | Three-step wizard for creating |
+| | reports from templates |
++------------------------------+--------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -94,22 +94,23 @@ UI Location
Security
~~~~~~~~
-+-----------------------------------------+----------------------------------+
-| Group | Access |
-+=========================================+==================================+
-| ``base.group_user`` | Read reports and data |
-+-----------------------------------------+----------------------------------+
-| ``group_gis_report_user`` | Read reports, write data for |
-| | refresh |
-+-----------------------------------------+----------------------------------+
-| ``group_gis_report_officer`` | Read/Write/Create (no delete) |
-+-----------------------------------------+----------------------------------+
-| ``group_gis_report_manager`` | Full CRUD |
-+-----------------------------------------+----------------------------------+
-| ``spp_registry.group_registry_officer`` | Read reports and data |
-+-----------------------------------------+----------------------------------+
-| ``spp_security.group_spp_admin`` | Full CRUD and configuration |
-+-----------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``base.group_user`` | Read reports and data |
++----------------------------------+----------------------------------+
+| ``group_gis_report_user`` | Read reports, write data for |
+| | refresh |
++----------------------------------+----------------------------------+
+| ``group_gis_report_officer`` | Read/Write/Create (no delete) |
++----------------------------------+----------------------------------+
+| ``group_gis_report_manager`` | Full CRUD |
++----------------------------------+----------------------------------+
+| ``spp_r | Read reports and data |
+| egistry.group_registry_officer`` | |
++----------------------------------+----------------------------------+
+| ``spp_security.group_spp_admin`` | Full CRUD and configuration |
++----------------------------------+----------------------------------+
API Endpoints
~~~~~~~~~~~~~
diff --git a/spp_gis_report/static/description/index.html b/spp_gis_report/static/description/index.html
index bc29408d..b586ed20 100644
--- a/spp_gis_report/static/description/index.html
+++ b/spp_gis_report/static/description/index.html
@@ -400,8 +400,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -410,20 +410,20 @@ Key Models
| spp.gis.report |
-Report configuration defining source,
-aggregation, and display |
+Report configuration defining
+source, aggregation, and display |
| spp.gis.report.data |
-Cached computed values for each area,
-updated on schedule |
+Cached computed values for each
+area, updated on schedule |
| spp.gis.report.template |
Pre-built report definitions with
JSON configuration |
| spp.gis.report.category |
-Categories for organizing reports and
-templates |
+Categories for organizing reports
+and templates |
| spp.gis.report.threshold |
Color threshold definitions for map
@@ -458,8 +458,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -480,7 +480,8 @@ Security
|---|
| group_gis_report_manager |
Full CRUD |
-| spp_registry.group_registry_officer |
+ | spp_r
+egistry.group_registry_officer |
Read reports and data |
| spp_security.group_spp_admin |
diff --git a/spp_graduation/README.rst b/spp_graduation/README.rst
index d81a083c..316156de 100644
--- a/spp_graduation/README.rst
+++ b/spp_graduation/README.rst
@@ -48,21 +48,21 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+--------------------------------------+----------------------------------+
-| Model | Description |
-+======================================+==================================+
-| ``spp.graduation.pathway`` | Defines a graduation pathway |
-| | with criteria and exit type |
-+--------------------------------------+----------------------------------+
-| ``spp.graduation.criteria`` | Individual criterion within a |
-| | pathway with weight and method |
-+--------------------------------------+----------------------------------+
-| ``spp.graduation.assessment`` | Assessment of a beneficiary |
-| | against a pathway with scores |
-+--------------------------------------+----------------------------------+
-| ``spp.graduation.criteria.response`` | Response to a specific criterion |
-| | within an assessment |
-+--------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Model | Description |
++==================================+==================================+
+| ``spp.graduation.pathway`` | Defines a graduation pathway |
+| | with criteria and exit type |
++----------------------------------+----------------------------------+
+| ``spp.graduation.criteria`` | Individual criterion within a |
+| | pathway with weight and method |
++----------------------------------+----------------------------------+
+| ``spp.graduation.assessment`` | Assessment of a beneficiary |
+| | against a pathway with scores |
++----------------------------------+----------------------------------+
+| ``sp | Response to a specific criterion |
+| p.graduation.criteria.response`` | within an assessment |
++----------------------------------+----------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -93,16 +93,16 @@ UI Location
Security
~~~~~~~~
-+-------------------------------------------------+----------------------------------+
-| Group | Access |
-+=================================================+==================================+
-| ``spp_graduation.group_spp_graduation_user`` | Read pathways/criteria; |
-| | create/edit own assessments (no |
-| | delete) |
-+-------------------------------------------------+----------------------------------+
-| ``spp_graduation.group_spp_graduation_manager`` | Full CRUD on all graduation data |
-| | and configuration |
-+-------------------------------------------------+----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``spp_gradua | Read pathways/criteria; |
+| tion.group_spp_graduation_user`` | create/edit own assessments (no |
+| | delete) |
++----------------------------------+----------------------------------+
+| ``spp_graduatio | Full CRUD on all graduation data |
+| n.group_spp_graduation_manager`` | and configuration |
++----------------------------------+----------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
diff --git a/spp_graduation/static/description/index.html b/spp_graduation/static/description/index.html
index 6e33b82e..b36444b2 100644
--- a/spp_graduation/static/description/index.html
+++ b/spp_graduation/static/description/index.html
@@ -397,8 +397,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -418,7 +418,8 @@ Key Models
Assessment of a beneficiary
against a pathway with scores |
-| spp.graduation.criteria.response |
+ | sp
+p.graduation.criteria.response |
Response to a specific criterion
within an assessment |
@@ -456,8 +457,8 @@ UI Location
Security
-
-
+
+
| Group |
@@ -465,12 +466,14 @@ Security
-| spp_graduation.group_spp_graduation_user |
+ | spp_gradua
+tion.group_spp_graduation_user |
Read pathways/criteria;
create/edit own assessments (no
delete) |
-| spp_graduation.group_spp_graduation_manager |
+ | spp_graduatio
+n.group_spp_graduation_manager |
Full CRUD on all graduation data
and configuration |
diff --git a/spp_grm/README.rst b/spp_grm/README.rst
index bb58317a..7caede66 100644
--- a/spp_grm/README.rst
+++ b/spp_grm/README.rst
@@ -55,33 +55,33 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+--------------------------------+-------------------------------------+
-| Model | Description |
-+================================+=====================================+
-| ``spp.grm.ticket`` | Main complaint/grievance with SLA |
-| | tracking and decision fields |
-+--------------------------------+-------------------------------------+
-| ``spp.grm.ticket.stage`` | Workflow stage with access control |
-| | and closure configuration |
-+--------------------------------+-------------------------------------+
-| ``spp.grm.ticket.category`` | Primary classification with |
-| | hierarchical structure |
-+--------------------------------+-------------------------------------+
-| ``spp.grm.ticket.subcategory`` | Second-level classification under |
-| | category |
-+--------------------------------+-------------------------------------+
-| ``spp.grm.team`` | Team of handlers with manager and |
-| | geographic areas |
-+--------------------------------+-------------------------------------+
-| ``spp.grm.sla.rule`` | Conditional SLA rules with |
-| | escalation targets |
-+--------------------------------+-------------------------------------+
-| ``spp.grm.ticket.tag`` | Tags for flexible ticket |
-| | classification |
-+--------------------------------+-------------------------------------+
-| ``spp.grm.ticket.channel`` | Communication channel (email, |
-| | phone, walk-in, portal, etc.) |
-+--------------------------------+-------------------------------------+
++--------------------------------+------------------------------------+
+| Model | Description |
++================================+====================================+
+| ``spp.grm.ticket`` | Main complaint/grievance with SLA |
+| | tracking and decision fields |
++--------------------------------+------------------------------------+
+| ``spp.grm.ticket.stage`` | Workflow stage with access control |
+| | and closure configuration |
++--------------------------------+------------------------------------+
+| ``spp.grm.ticket.category`` | Primary classification with |
+| | hierarchical structure |
++--------------------------------+------------------------------------+
+| ``spp.grm.ticket.subcategory`` | Second-level classification under |
+| | category |
++--------------------------------+------------------------------------+
+| ``spp.grm.team`` | Team of handlers with manager and |
+| | geographic areas |
++--------------------------------+------------------------------------+
+| ``spp.grm.sla.rule`` | Conditional SLA rules with |
+| | escalation targets |
++--------------------------------+------------------------------------+
+| ``spp.grm.ticket.tag`` | Tags for flexible ticket |
+| | classification |
++--------------------------------+------------------------------------+
+| ``spp.grm.ticket.channel`` | Communication channel (email, |
+| | phone, walk-in, portal, etc.) |
++--------------------------------+------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_grm/static/description/index.html b/spp_grm/static/description/index.html
index 6d81d79a..771c4dde 100644
--- a/spp_grm/static/description/index.html
+++ b/spp_grm/static/description/index.html
@@ -404,8 +404,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_grm_case_link/README.rst b/spp_grm_case_link/README.rst
index 5ac460a3..949e1e7b 100644
--- a/spp_grm_case_link/README.rst
+++ b/spp_grm_case_link/README.rst
@@ -47,18 +47,18 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Model | Description |
-+===============================+======================================+
-| ``spp.grm.escalate.wizard`` | Transient wizard to configure and |
-| | execute escalation |
-+-------------------------------+--------------------------------------+
-| ``spp.grm.ticket`` (extended) | Adds ``case_id`` field and |
-| | escalation/view case actions |
-+-------------------------------+--------------------------------------+
-| ``spp.case`` (extended) | Adds ``source_grm_ticket_id``, |
-| | ``grm_ticket_ids``, and count |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Description |
++===============================+=====================================+
+| ``spp.grm.escalate.wizard`` | Transient wizard to configure and |
+| | execute escalation |
++-------------------------------+-------------------------------------+
+| ``spp.grm.ticket`` (extended) | Adds ``case_id`` field and |
+| | escalation/view case actions |
++-------------------------------+-------------------------------------+
+| ``spp.case`` (extended) | Adds ``source_grm_ticket_id``, |
+| | ``grm_ticket_ids``, and count |
++-------------------------------+-------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_grm_case_link/static/description/index.html b/spp_grm_case_link/static/description/index.html
index 8dca3de8..aae3fada 100644
--- a/spp_grm_case_link/static/description/index.html
+++ b/spp_grm_case_link/static/description/index.html
@@ -396,8 +396,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
diff --git a/spp_grm_cel/README.rst b/spp_grm_cel/README.rst
index 94ebeb17..f5d0320b 100644
--- a/spp_grm_cel/README.rst
+++ b/spp_grm_cel/README.rst
@@ -46,21 +46,21 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+-------------------------------+--------------------------------------+
-| Model | Description |
-+===============================+======================================+
-| ``spp.grm.routing.rule`` | Routing rule with CEL condition that |
-| | assigns tickets to teams/users |
-| | (first match wins) |
-+-------------------------------+--------------------------------------+
-| ``spp.grm.escalation.rule`` | Escalation rule with CEL condition |
-| | and time trigger that escalates |
-| | tickets |
-+-------------------------------+--------------------------------------+
-| ``spp.grm.ticket`` (extended) | Adds ``routing_rule_id`` and |
-| | ``escalation_rule_ids`` fields to |
-| | track applied rules |
-+-------------------------------+--------------------------------------+
++-------------------------------+-------------------------------------+
+| Model | Description |
++===============================+=====================================+
+| ``spp.grm.routing.rule`` | Routing rule with CEL condition |
+| | that assigns tickets to teams/users |
+| | (first match wins) |
++-------------------------------+-------------------------------------+
+| ``spp.grm.escalation.rule`` | Escalation rule with CEL condition |
+| | and time trigger that escalates |
+| | tickets |
++-------------------------------+-------------------------------------+
+| ``spp.grm.ticket`` (extended) | Adds ``routing_rule_id`` and |
+| | ``escalation_rule_ids`` fields to |
+| | track applied rules |
++-------------------------------+-------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_grm_cel/static/description/index.html b/spp_grm_cel/static/description/index.html
index 7c686d6a..6ee26fe1 100644
--- a/spp_grm_cel/static/description/index.html
+++ b/spp_grm_cel/static/description/index.html
@@ -395,8 +395,8 @@ Key Capabilities
Key Models
-
-
+
+
| Model |
@@ -405,8 +405,8 @@ Key Models
| spp.grm.routing.rule |
-Routing rule with CEL condition that
-assigns tickets to teams/users
+ | Routing rule with CEL condition
+that assigns tickets to teams/users
(first match wins) |
| spp.grm.escalation.rule |
diff --git a/spp_grm_demo/README.rst b/spp_grm_demo/README.rst
index be88bc6d..bc3ecc16 100644
--- a/spp_grm_demo/README.rst
+++ b/spp_grm_demo/README.rst
@@ -47,15 +47,15 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+----------------------------+-----------------------------------------+
-| Model | Description |
-+============================+=========================================+
-| ``spp.grm.demo.generator`` | Transient model containing generation |
-| | logic and workflow simulation |
-+----------------------------+-----------------------------------------+
-| ``spp.grm.demo.wizard`` | Transient model inheriting from |
-| | generator for wizard UI configuration |
-+----------------------------+-----------------------------------------+
++----------------------------+----------------------------------------+
+| Model | Description |
++============================+========================================+
+| ``spp.grm.demo.generator`` | Transient model containing generation |
+| | logic and workflow simulation |
++----------------------------+----------------------------------------+
+| ``spp.grm.demo.wizard`` | Transient model inheriting from |
+| | generator for wizard UI configuration |
++----------------------------+----------------------------------------+
Configuration
~~~~~~~~~~~~~
diff --git a/spp_grm_registry/README.rst b/spp_grm_registry/README.rst
index f8662444..0615284e 100644
--- a/spp_grm_registry/README.rst
+++ b/spp_grm_registry/README.rst
@@ -45,15 +45,15 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+--------------------+-------------------------------------------------+
-| Model | Description |
-+====================+=================================================+
-| ``spp.grm.ticket`` | Adds registrant/household links, repeat |
-| | detection fields |
-+--------------------+-------------------------------------------------+
-| ``res.partner`` | Adds GRM ticket relationships and computed |
-| | count fields |
-+--------------------+-------------------------------------------------+
++--------------------+------------------------------------------------+
+| Model | Description |
++====================+================================================+
+| ``spp.grm.ticket`` | Adds registrant/household links, repeat |
+| | detection fields |
++--------------------+------------------------------------------------+
+| ``res.partner`` | Adds GRM ticket relationships and computed |
+| | count fields |
++--------------------+------------------------------------------------+
UI Location
~~~~~~~~~~~
diff --git a/spp_hazard/README.rst b/spp_hazard/README.rst
index 5f12ee79..3c5882a0 100644
--- a/spp_hazard/README.rst
+++ b/spp_hazard/README.rst
@@ -1,13 +1,17 @@
+.. image:: https://odoo-community.org/readme-banner-image
+ :target: https://odoo-community.org/get-involved?utm_source=readme
+ :alt: Odoo Community Association
+
=====================================
OpenSPP Hazard & Emergency Management
=====================================
-..
+..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- !! source digest: sha256:6c799a070608a2c41e92173cb6e13783cda3e3e01c784f1d94decc3c6391a182
+ !! source digest: sha256:a8c431bd5b3d9af3ed97d2c211663e30be9d94121f66c6bb1f83369c1cfe43d3
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -47,27 +51,27 @@ Key Capabilities
Key Models
~~~~~~~~~~
-+------------------------------+---------------------------------------+
-| Model | Description |
-+==============================+=======================================+
-| ``spp.hazard.category`` | Hierarchical classification of hazard |
-| | types |
-+------------------------------+---------------------------------------+
-| ``spp.hazard.incident`` | Specific disaster event with dates, |
-| | severity, and affected areas |
-+------------------------------+---------------------------------------+
-| ``spp.hazard.incident.area`` | Links incident to area with |
-| | area-specific details |
-+------------------------------+---------------------------------------+
-| ``spp.hazard.impact`` | Records impact on a registrant (type, |
-| | damage level, verification) |
-+------------------------------+---------------------------------------+
-| ``spp.hazard.impact.type`` | Classification of impact types by |
-| | category |
-+------------------------------+---------------------------------------+
-| ``res.partner`` (extended) | Adds hazard impact tracking fields to |
-| | registrants |
-+------------------------------+---------------------------------------+
++------------------------------+--------------------------------------+
+| Model | Description |
++==============================+======================================+
+| ``spp.hazard.category`` | Hierarchical classification of |
+| | hazard types |
++------------------------------+--------------------------------------+
+| ``spp.hazard.incident`` | Specific disaster event with dates, |
+| | severity, and affected areas |
++------------------------------+--------------------------------------+
+| ``spp.hazard.incident.area`` | Links incident to area with |
+| | area-specific details |
++------------------------------+--------------------------------------+
+| ``spp.hazard.impact`` | Records impact on a registrant |
+| | (type, damage level, verification) |
++------------------------------+--------------------------------------+
+| ``spp.hazard.impact.type`` | Classification of impact types by |
+| | category |
++------------------------------+--------------------------------------+
+| ``res.partner`` (extended) | Adds hazard impact tracking fields |
+| | to registrants |
++------------------------------+--------------------------------------+
Configuration
~~~~~~~~~~~~~
@@ -96,20 +100,20 @@ UI Location
Security
~~~~~~~~
-+----------------------------------+-----------------------------------+
-| Group | Access |
-+==================================+===================================+
-| ``group_hazard_viewer`` | Read-only access to all hazard |
-| | records |
-+----------------------------------+-----------------------------------+
-| ``group_hazard_officer`` | Create and manage incidents and |
-| | impacts (no delete) |
-+----------------------------------+-----------------------------------+
-| ``group_hazard_manager`` | Full CRUD access including |
-| | configuration |
-+----------------------------------+-----------------------------------+
-| ``spp_security.group_spp_admin`` | Inherits manager access |
-+----------------------------------+-----------------------------------+
++----------------------------------+----------------------------------+
+| Group | Access |
++==================================+==================================+
+| ``group_hazard_viewer`` | Read-only access to all hazard |
+| | records |
++----------------------------------+----------------------------------+
+| ``group_hazard_officer`` | Create and manage incidents and |
+| | impacts (no delete) |
++----------------------------------+----------------------------------+
+| ``group_hazard_manager`` | Full CRUD access including |
+| | configuration |
++----------------------------------+----------------------------------+
+| ``spp_security.group_spp_admin`` | Inherits manager access |
++----------------------------------+----------------------------------+
Extension Points
~~~~~~~~~~~~~~~~
@@ -172,4 +176,4 @@ Current maintainers:
This module is part of the `OpenSPP/OpenSPP2 `_ project on GitHub.
-You are welcome to contribute.
\ No newline at end of file
+You are welcome to contribute.
diff --git a/spp_hazard/security/compliance.yaml b/spp_hazard/security/compliance.yaml
index eb4e05ca..be2b1859 100644
--- a/spp_hazard/security/compliance.yaml
+++ b/spp_hazard/security/compliance.yaml
@@ -104,7 +104,7 @@ record_rules: []
menus:
# Main Hazard menu - accessible to all hazard groups
- id: hazard_main_menu_root
- name: "Hazard & Emergency"
+ name: "Hazard and Emergency"
groups:
[
spp_security.group_spp_admin,
diff --git a/spp_hazard/static/description/index.html b/spp_hazard/static/description/index.html
index c4bd810a..a0c53e0b 100644
--- a/spp_hazard/static/description/index.html
+++ b/spp_hazard/static/description/index.html
@@ -3,7 +3,7 @@
-OpenSPP Hazard & Emergency Management
+README.rst
-
- OpenSPP Hazard & Emergency Management
+
+
+
+
+
+
+ OpenSPP Hazard & Emergency Management

Records disaster events and tracks their impact on individual
@@ -375,7 +380,7 @@ OpenSPP Hazard & Emergency Management
scope tracking, severity levels, and verification workflows to enable
targeted emergency response and humanitarian assistance.
- Key Capabilities
+ Key Capabilities
- Define hazard categories in a tree structure (e.g., Natural > Storm >
Typhoon)
@@ -393,11 +398,11 @@ Key Capabilities
- Key Models
+ Key Models
-
-
+
+
| Model |
@@ -406,8 +411,8 @@ Key Models
| spp.hazard.category |
-Hierarchical classification of hazard
-types |
+Hierarchical classification of
+hazard types |
| spp.hazard.incident |
Specific disaster event with dates,
@@ -418,22 +423,22 @@ Key Models
area-specific details |
| spp.hazard.impact |
-Records impact on a registrant (type,
-damage level, verification) |
+Records impact on a registrant
+(type, damage level, verification) |
| spp.hazard.impact.type |
Classification of impact types by
category |
| res.partner (extended) |
-Adds hazard impact tracking fields to
-registrants |
+Adds hazard impact tracking fields
+to registrants |
- Configuration
+ Configuration
After installing:
- Navigate to Hazard & Emergency > Configuration > Hazard
@@ -446,7 +451,7 @@
Configuration
- UI Location
+ UI Location
- Menu: Hazard & Emergency (top-level application menu)
- Incidents: Hazard & Emergency > Incidents > All Incidents
@@ -458,11 +463,11 @@ UI Location
- Security
+ Security
-
-
+
+
| Group |
@@ -489,7 +494,7 @@ Security
|---|
- Extension Points
+ Extension Points
- Inherit spp.hazard.incident and override
identify_potentially_affected_registrants() to customize targeting
@@ -501,7 +506,7 @@
Extension Points
- Dependencies
+ Dependencies
base, spp_security, spp_registry, spp_area
Table of contents
@@ -515,7 +520,7 @@ Dependencies
-
+
Bugs are tracked on GitHub 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
@@ -523,15 +528,15 @@
Do not contact contributors directly about support or help with technical issues.
-
+
-
+
Current maintainers:

This module is part of the OpenSPP/OpenSPP2 project on GitHub.
@@ -540,5 +545,6 @@
+
|---|
|---|
|
|---|
|
|---|
|---|
| | | |
|---|
|---|
|---|
|---|
|
|---|
|
|---|
|---|
|---|
|---|
| |