From efbc6521cde61f5873a33a1d2bce1f4fb6b51794 Mon Sep 17 00:00:00 2001 From: Jeremi Joslin Date: Wed, 21 Aug 2024 22:05:39 +0700 Subject: [PATCH] fix indentation of titles --- docs/modules/g2p_bank.md | 8 ++++---- docs/modules/g2p_encryption_keymanager.md | 8 ++++---- docs/modules/g2p_encryption_rest_api.md | 12 ++++++------ docs/modules/g2p_payment_phee.md | 12 ++++++------ docs/modules/g2p_program_autoenrol.md | 8 ++++---- docs/modules/g2p_program_registrant_info_rest_api.md | 8 ++++---- docs/modules/g2p_programs.md | 8 ++++---- docs/modules/g2p_registry_addl_info_rest_api.md | 6 +++--- docs/modules/g2p_registry_base.md | 8 ++++---- docs/modules/g2p_registry_group.md | 8 ++++---- docs/modules/g2p_registry_individual.md | 8 ++++---- docs/modules/g2p_registry_membership.md | 8 ++++---- docs/modules/spp_api_records.md | 8 ++++---- docs/modules/spp_area_gis.md | 12 ++++++------ docs/modules/spp_audit_post.md | 8 ++++---- docs/modules/spp_base.md | 8 ++++---- docs/modules/spp_base_demo.md | 8 ++++---- docs/modules/spp_base_gis_demo.md | 10 +++++----- docs/modules/spp_base_gis_rest.md | 10 +++++----- docs/modules/spp_base_setting.md | 10 +++++----- docs/modules/spp_basic_cash_entitlement_spent.md | 10 +++++----- docs/modules/spp_change_request.md | 6 +++--- docs/modules/spp_change_request_add_farmer.md | 4 ++-- docs/modules/spp_custom_field.md | 10 +++++----- docs/modules/spp_custom_field_recompute_daily.md | 12 ++++++------ docs/modules/spp_custom_filter_ui.md | 10 +++++----- docs/modules/spp_demo.md | 8 ++++---- docs/modules/spp_eligibility_sql.md | 8 ++++---- docs/modules/spp_eligibility_tags.md | 8 ++++---- docs/modules/spp_encryption.md | 8 ++++---- docs/modules/spp_entitlement_basket.md | 8 ++++---- docs/modules/spp_entitlement_cash.md | 8 ++++---- docs/modules/spp_entitlement_in_kind.md | 10 +++++----- docs/modules/spp_event_data.md | 8 ++++---- docs/modules/spp_event_data_program_membership.md | 10 +++++----- docs/modules/spp_event_demo.md | 6 +++--- docs/modules/spp_exclusion_filter.md | 8 ++++---- docs/modules/spp_farmer_registry_base.md | 10 +++++----- docs/modules/spp_import_dci_api.md | 12 ++++++------ docs/modules/spp_import_match.md | 10 +++++----- docs/modules/spp_manual_entitlement.md | 8 ++++---- docs/modules/spp_openid_vci_group.md | 12 ++++++------ docs/modules/spp_openid_vci_individual.md | 10 +++++----- docs/modules/spp_program_id.md | 8 ++++---- docs/modules/spp_programs.md | 8 ++++---- docs/modules/spp_programs_compliance_criteria.md | 8 ++++---- docs/modules/spp_registrant_import.md | 8 ++++---- docs/modules/spp_registrant_tag.md | 8 ++++---- docs/modules/spp_registry_group_hierarchy.md | 8 ++++---- docs/modules/spp_scan_id_document.md | 8 ++++---- docs/modules/spp_service_point_device.md | 8 ++++---- docs/modules/spp_service_points.md | 8 ++++---- docs/modules/spp_starter.md | 10 +++++----- 53 files changed, 231 insertions(+), 231 deletions(-) diff --git a/docs/modules/g2p_bank.md b/docs/modules/g2p_bank.md index c47c819b..eba6ba77 100644 --- a/docs/modules/g2p_bank.md +++ b/docs/modules/g2p_bank.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **G2P Bank** module within the OpenSPP framework. This module extends the functionality of individual and group registries to manage their bank details. -### Purpose +## Purpose The **G2P Bank** module aims to: @@ -15,7 +15,7 @@ The **G2P Bank** module aims to: * Ensure data consistency and accuracy by calculating and displaying IBANs based on provided bank details. * Integrate seamlessly with existing individual and group registry views to provide a consolidated view of registrant information. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **Contacts (res.partner)**: This module directly leverages the Odoo Contacts module and its inherent bank account management features (`res.partner.bank`). This ensures consistency and avoids data redundancy by utilizing the existing framework for storing bank information. @@ -23,12 +23,12 @@ The **G2P Bank** module aims to: 3. **[g2p_registry_group](g2p_registry_group)**: Similar to its integration with the individual registry, this module extends the group registrant view to include a bank details management section. This facilitates the tracking of bank accounts associated with groups, such as cooperatives or farmer groups. -### Additional Functionality +## Additional Functionality * **IBAN Calculation**: The module automatically calculates and displays the International Bank Account Number (IBAN) based on the entered bank account number and bank details. This feature leverages the `schwifty` Python library for accurate IBAN generation, ensuring data consistency and reducing manual errors. * **Integrated Bank Details Views**: The module seamlessly integrates bank details management into both the individual and group registry views. This provides a unified and centralized location for managing all aspects of a registrant's profile, including their bank information. -### Conclusion +## Conclusion The **G2P Registry: Bank Details** module enhances OpenSPP by providing a structured and efficient way to manage bank account information for both individual and group registrants. Its tight integration with existing core modules ensures data consistency, simplifies data entry, and improves the overall user experience for managing registrant information within the platform. diff --git a/docs/modules/g2p_encryption_keymanager.md b/docs/modules/g2p_encryption_keymanager.md index e027b6ba..07a8a5f9 100644 --- a/docs/modules/g2p_encryption_keymanager.md +++ b/docs/modules/g2p_encryption_keymanager.md @@ -7,7 +7,7 @@ This module extends the functionality of the [g2p_encryption](g2p_encryption) module by providing integration with a Keymanager service for encryption and signing operations. This allows OpenSPP to leverage external key management systems for enhanced security and compliance. -### Purpose +## Purpose The primary purpose of this module is to: @@ -15,7 +15,7 @@ The primary purpose of this module is to: * **Provide a configurable interface:** System administrators can configure various parameters of the Keymanager integration, such as API endpoints, authentication credentials, and application-specific identifiers. * **Seamlessly integrate with the existing encryption framework:** The module extends the existing encryption provider mechanism in OpenSPP, allowing for easy switching between different encryption providers, including the Keymanager-based provider. -### Functionality +## Functionality The [g2p_encryption_keymanager](g2p_encryption_keymanager) module provides the following features: @@ -24,7 +24,7 @@ The [g2p_encryption_keymanager](g2p_encryption_keymanager) module provides the f * **Keymanager Authentication and Authorization:** The module implements secure communication with the Keymanager service using OAuth 2.0 client credentials grant type for authentication and authorization. * **Configuration Options for Keymanager Integration:** The module provides a user-friendly interface within the OpenSPP settings to configure various aspects of the Keymanager integration, including API endpoints, authentication credentials, and application-specific identifiers for encryption and signing. -### Integration with Other Modules +## Integration with Other Modules This module directly interacts with the [g2p_encryption](g2p_encryption) module: @@ -32,7 +32,7 @@ This module directly interacts with the [g2p_encryption](g2p_encryption) module: * It provides a new "Keymanager" option for the encryption provider type. * It overrides the default encryption and signing methods to utilize the Keymanager API when selected. -### Benefits of Using Keymanager Integration +## Benefits of Using Keymanager Integration * **Enhanced Security:** Key management is handled by a dedicated service, potentially with stronger security measures than what might be feasible within the OpenSPP application itself. * **Centralized Key Management:** Provides a central location for managing encryption keys across different parts of the OpenSPP system or even across multiple applications. diff --git a/docs/modules/g2p_encryption_rest_api.md b/docs/modules/g2p_encryption_rest_api.md index ac73ffd6..48214b52 100644 --- a/docs/modules/g2p_encryption_rest_api.md +++ b/docs/modules/g2p_encryption_rest_api.md @@ -7,11 +7,11 @@ This document provides an overview of the `g2p_encryption_rest_api` module within the OpenSPP ecosystem. -### Overview +## Overview The `g2p_encryption_rest_api` module extends the functionality provided by the [g2p_encryption](./g2p_encryption.md) module by exposing its encryption and security functionalities through a RESTful API. This allows external systems and applications to securely interact with OpenSPP's encryption mechanisms. -### Purpose +## Purpose The primary purpose of this module is to facilitate secure data exchange and integration with external systems that require access to OpenSPP's encryption capabilities. This could include: @@ -19,7 +19,7 @@ The primary purpose of this module is to facilitate secure data exchange and int - **Third-party Systems:** Enabling integration with other government or partner systems that require secure communication channels. - **Data Analytics:** Providing a secure way to extract encrypted data for analysis and reporting purposes. -### Functionality +## Functionality The module exposes a set of REST endpoints under the `/api/v1/security/` path. These endpoints allow authorized clients to: @@ -29,15 +29,15 @@ The module exposes a set of REST endpoints under the `/api/v1/security/` path. T - **Verify JWT Tokens:** Verify the authenticity and integrity of JWTs received from external systems. - **Retrieve JWKS:** Access OpenSPP's JSON Web Key Set (JWKS) for verifying JWT signatures. -### Integration +## Integration The `g2p_encryption_rest_api` module seamlessly integrates with the [g2p_encryption](./g2p_encryption.md) module, leveraging its existing encryption provider framework and configurations. It utilizes Odoo's `base_rest` module to expose the REST API endpoints. -### Dependencies +## Dependencies - [g2p_encryption](./g2p_encryption.md): Provides the core encryption functionalities and provider management. - `base_rest`: Offers the framework for building RESTful APIs within Odoo. -### Security +## Security The module inherits the security mechanisms provided by Odoo's `base_rest` module, including user authentication and authorization. Access to the API endpoints can be restricted based on user roles and permissions. Additionally, the module utilizes the encryption providers configured in the [g2p_encryption](./g2p_encryption.md) module to ensure secure data transmission. diff --git a/docs/modules/g2p_payment_phee.md b/docs/modules/g2p_payment_phee.md index c56337ae..941ca53f 100644 --- a/docs/modules/g2p_payment_phee.md +++ b/docs/modules/g2p_payment_phee.md @@ -7,11 +7,11 @@ This module extends the OpenG2P platform to integrate with the **Payment Hub Enterprise Edition (PHEE)** for disbursing payments to beneficiaries. -### Overview +## Overview The [g2p_payment_phee](g2p_payment_phee) module provides a dedicated payment manager for interacting with the PHEE API. This manager enables automated batch creation, payment preparation, and secure transmission of payment instructions to the PHEE system. -### Key Features +## Key Features * **PHEE Integration:** Enables seamless integration with the PHEE platform for efficient payment processing. * **Payment Manager:** Introduces a specialized `G2PPaymentHubEEManager` model that handles PHEE-specific payment operations. @@ -19,12 +19,12 @@ The [g2p_payment_phee](g2p_payment_phee) module provides a dedicated payment man * **CSV File Generation:** Generates CSV files containing payment instructions in the format required by PHEE. * **Configuration Settings:** Allows administrators to configure PHEE API endpoints, authentication credentials, and other payment-related parameters. -### Dependencies +## Dependencies * **[g2p_registry_base](g2p_registry_base):** Provides core registry functionality. * **[g2p_programs](g2p_programs):** Manages social protection programs, cycles, entitlements, and payments. -### Functionality and Integration +## Functionality and Integration This module extends the functionality of the [g2p_programs](g2p_programs) module by adding a PHEE-specific payment manager. It leverages existing data structures for programs, cycles, entitlements, and payments to generate payment instructions. @@ -35,10 +35,10 @@ The module's payment manager automates the process of: 3. **Generating CSV Files:** Creating CSV files containing payment details in the PHEE-compliant format. 4. **Sending Payments:** Transmitting payment batches to the PHEE API for processing. -### Configuration +## Configuration The module provides configuration settings for specifying PHEE API endpoints, authentication credentials, and other parameters. This allows administrators to tailor the integration to their specific PHEE environment. -### Usage +## Usage Once configured, the PHEE payment manager can be used to prepare, batch, and send payments to beneficiaries. The module's automated features streamline the disbursement process, enhancing efficiency and reducing manual intervention. diff --git a/docs/modules/g2p_program_autoenrol.md b/docs/modules/g2p_program_autoenrol.md index c35142d7..a3b265b0 100644 --- a/docs/modules/g2p_program_autoenrol.md +++ b/docs/modules/g2p_program_autoenrol.md @@ -7,7 +7,7 @@ This module extends the functionality of the [g2p_programs](g2p_programs) module to enable automatic enrollment of registrants into social protection programs based on predefined criteria. This feature simplifies program management by automating the enrollment process for eligible individuals. -### Purpose +## Purpose The main purpose of the `g2p_program_autoenrol` module is to streamline and automate the process of enrolling beneficiaries into social protection programs. It achieves this by providing the following capabilities: @@ -16,7 +16,7 @@ The main purpose of the `g2p_program_autoenrol` module is to streamline and auto - **Program-Specific Enrollment:** Auto-enrollment can be enabled or disabled on a per-program basis, providing flexibility in managing different types of programs. - **Optional Removal of Ineligible Registrants:** Administrators have the option to automatically remove registrants from a program's membership list if they do not meet the defined eligibility criteria. This ensures that only eligible individuals are considered beneficiaries. -### Functionality +## Functionality The module introduces the following key features: @@ -33,11 +33,11 @@ The module introduces the following key features: - **Impact on Program Statistics:** - The module ensures that program statistics, such as the count of eligible and total beneficiaries, are updated dynamically to reflect the results of the automatic enrollment process. -### Integration +## Integration The [g2p_program_autoenrol](g2p_program_autoenrol) module works seamlessly with the [g2p_programs](g2p_programs) module. It leverages the existing program and registrant data structures and extends their functionality. -### Benefits +## Benefits - **Reduced Administrative Burden:** Automating the enrollment process significantly reduces the manual effort required by program administrators. - **Improved Accuracy:** By automating enrollment based on pre-defined criteria, the module minimizes the risk of human error and ensures consistent application of eligibility rules. diff --git a/docs/modules/g2p_program_registrant_info_rest_api.md b/docs/modules/g2p_program_registrant_info_rest_api.md index 1dc89469..365cd0c0 100644 --- a/docs/modules/g2p_program_registrant_info_rest_api.md +++ b/docs/modules/g2p_program_registrant_info_rest_api.md @@ -7,21 +7,21 @@ This module extends the functionality of the [g2p_programs_rest_api](g2p_programs_rest_api) and [g2p_program_registrant_info](g2p_program_registrant_info) modules to expose program registrant information via a REST API. This allows external systems to interact with and manage program-specific data associated with registrants. -### Functionality: +## Functionality: - **Exposes Program Registrant Info:** Provides API endpoints to access and manipulate program-specific information of registrants within a program. This includes data such as enrollment status, benefit level, and other custom fields defined for the program. -### Integration: +## Integration: - **[g2p_programs_rest_api](g2p_programs_rest_api):** This module extends the existing API endpoints for managing program memberships. It adds fields to include program registrant information when retrieving or updating memberships. - **[g2p_program_registrant_info](g2p_program_registrant_info):** This module utilizes the data models defined in `g2p_program_registrant_info` to represent and handle program-specific information. -### Data Models: +## Data Models: - **ProgramRegistrantInfoOut:** Represents the output format of program registrant information returned by the API. It includes fields like `state` and a dictionary or list of dictionaries for `program_registrant_info`. - **ProgramMembershipIn/Out:** Extends the existing input and output models for program memberships defined in [g2p_programs_rest_api](g2p_programs_rest_api). The `ProgramMembershipIn` model adds an optional field `program_registrant_info` for receiving program-specific data. The `ProgramMembershipOut` model includes a list of `ProgramRegistrantInfoOut` objects under the field `program_registrant_info_ids`. -### Benefits: +## Benefits: - **Seamless Integration:** Enables external applications to access and manage program-specific registrant data directly. - **Enhanced Data Management:** Facilitates efficient handling and updating of program-related information for individual registrants. diff --git a/docs/modules/g2p_programs.md b/docs/modules/g2p_programs.md index d4102d0d..7f1d8473 100644 --- a/docs/modules/g2p_programs.md +++ b/docs/modules/g2p_programs.md @@ -7,7 +7,7 @@ This document details the **G2P Programs** module within the OpenSPP platform. This module is responsible for defining and managing the core aspects of social protection programs, including eligibility criteria, program cycles, entitlement management, and payment processing. -### Purpose +## Purpose The **G2P Programs** module provides a comprehensive framework for: @@ -18,7 +18,7 @@ The **G2P Programs** module provides a comprehensive framework for: * **Facilitating Payments**: Streamlines the disbursement of benefits to beneficiaries, either through cash transfers or other delivery mechanisms. * **Monitoring and Reporting**: Offers tools for tracking program progress, beneficiary participation, and financial transactions, facilitating program evaluation and accountability. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **G2P Registry: Base ([g2p_registry_base](g2p_registry_base))**: * Leverages the base registry module for core registrant management functionalities. @@ -56,7 +56,7 @@ The **G2P Programs** module provides a comprehensive framework for: * Enables SMS notifications for program-related events, including enrollment confirmations, eligibility updates, payment notifications, and reminders. * Leverages the module's SMS gateway integration for efficient and timely communication with beneficiaries. -### Additional Functionality +## Additional Functionality * **Program Model (g2p.program)**: * Defines the structure and attributes of social protection programs, including name, description, target type (individual or group), delivery mechanisms, and associated managers. @@ -91,6 +91,6 @@ The **G2P Programs** module provides a comprehensive framework for: * The module's flexible architecture allows administrators to define program-specific workflows, tailoring the sequence and execution of tasks like eligibility verification, entitlement generation, and payment processing. * Supports various program models and operational requirements. -### Conclusion +## Conclusion The **G2P Programs** module is the cornerstone of the OpenSPP platform, providing the essential tools for managing every stage of a social protection program's lifecycle. Its comprehensive functionality, integration with other core modules, and customizable workflows make it a powerful and adaptable solution for delivering social protection benefits effectively and efficiently. diff --git a/docs/modules/g2p_registry_addl_info_rest_api.md b/docs/modules/g2p_registry_addl_info_rest_api.md index 8c4e0575..3e1151ef 100644 --- a/docs/modules/g2p_registry_addl_info_rest_api.md +++ b/docs/modules/g2p_registry_addl_info_rest_api.md @@ -7,7 +7,7 @@ This module extends the functionality of the [g2p_registry_rest_api](g2p_registry_rest_api) and [g2p_registry_addl_info](g2p_registry_addl_info) modules by providing API endpoints for managing additional G2P (Government-to-Person) information associated with registrants and group memberships. -### Functionality and Integration +## Functionality and Integration This module introduces two new classes: @@ -17,13 +17,13 @@ This module introduces two new classes: By integrating with the core registry and REST API modules, this module enables a seamless flow of additional G2P data, ensuring that external systems can access and manage this crucial information alongside the standard registry data. -### Key Features: +## Key Features: - **API Endpoints for Additional G2P Info:** Provides dedicated API endpoints for managing additional G2P information related to individual registrants and group memberships. - **Data Model Extension:** Extends the existing data models for registrants and group memberships to accommodate additional G2P information. - **Seamless Integration:** Integrates smoothly with the [g2p_registry_rest_api](g2p_registry_rest_api) module, leveraging its existing infrastructure for authentication, authorization, and data handling. -### Benefits: +## Benefits: - **Enhanced Data Management:** Enables efficient management of custom G2P data alongside standard registry information. - **Improved Interoperability:** Facilitates data exchange with external systems that require access to additional G2P information. diff --git a/docs/modules/g2p_registry_base.md b/docs/modules/g2p_registry_base.md index c993cf48..e565e595 100644 --- a/docs/modules/g2p_registry_base.md +++ b/docs/modules/g2p_registry_base.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **G2P Registry: Base** module within the OpenSPP ecosystem. This module is the foundational layer upon which other OpenSPP registry modules are built. It provides core features for managing registrant data, relationships, and identification, leaving specialized functionalities to dependent modules. -### Purpose +## Purpose The **G2P Registry: Base** module aims to: @@ -15,7 +15,7 @@ The **G2P Registry: Base** module aims to: * Provide essential fields and functionalities common to various registry types. * Enable flexible extension and customization through dependent modules. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **Contacts (res.partner)**: This module extends the Odoo Contacts functionality by adding fields specific to registrants, including: * **Registration Date**: Records the date a registrant was added to the system. @@ -29,7 +29,7 @@ The **G2P Registry: Base** module aims to: 3. **Portal (portal)**: The Portal module is utilized for potential future features, enabling secure access to registry data for external stakeholders (e.g., registrants themselves) through a dedicated online portal. -### Additional Functionality +## Additional Functionality Beyond extending the Contacts module, the **G2P Registry: Base** module introduces: @@ -39,6 +39,6 @@ Beyond extending the Contacts module, the **G2P Registry: Base** module introduc * **Tags ([g2p.registrant.tags](g2p.registrant.tags))**: Provides a flexible tagging system to categorize and filter registrants based on specific criteria. * **Districts ([g2p.district](g2p.district))**: Adds the capability to define and manage geographical districts, allowing for location-based organization of registrants. -### Conclusion +## Conclusion The **G2P Registry: Base** module lays the groundwork for building robust and adaptable registries within OpenSPP. By focusing on core registry features and integrating seamlessly with essential Odoo modules, it provides a solid foundation for specialized registry applications. diff --git a/docs/modules/g2p_registry_group.md b/docs/modules/g2p_registry_group.md index ba1f4d9e..9a33a96d 100644 --- a/docs/modules/g2p_registry_group.md +++ b/docs/modules/g2p_registry_group.md @@ -7,7 +7,7 @@ This document describes the **G2P Registry: Groups** module within the OpenSPP framework. This module builds upon the **G2P Registry: Base** module to provide specific functionality for managing groups of registrants. -### Purpose +## Purpose The **G2P Registry: Groups** module focuses on: @@ -15,13 +15,13 @@ The **G2P Registry: Groups** module focuses on: * **Representing Groups as Registrants**: Extends the concept of a "registrant" from the **G2P Registry: Base** module to include groups, enabling groups to be managed alongside individual registrants. * **Categorizing Groups**: Associates each group with a specific group type, providing structure and context to group data. -### Dependencies and Integration +## Dependencies and Integration 1. **[g2p_registry_base](g2p_registry_base)**: This module inherits directly from the **G2P Registry: Base** module, leveraging its core features for managing registrant information, IDs, relationships, and more. This inheritance model ensures that groups can be managed using the same tools and workflows as individual registrants, providing a consistent user experience. 2. **Contacts (res.partner)**: Similar to the **G2P Registry: Base** module, this module utilizes the Odoo Contacts module to represent groups as entities. The group-specific functionalities are added as extensions to the existing contact model. -### Additional Functionality +## Additional Functionality * **Group Kinds ([g2p.group.kind](g2p.group.kind))**: * Introduces a new model to define and manage different types of groups within the system. @@ -31,6 +31,6 @@ The **G2P Registry: Groups** module focuses on: * Leverages the `res.partner` model (inherited from **Contacts**) to represent groups as entities. * Adds a dedicated field (`kind`) to link each group to its designated group type. -### Conclusion +## Conclusion The **G2P Registry: Groups** module enhances the OpenSPP platform by providing a structured way to manage groups of registrants. It integrates seamlessly with the **G2P Registry: Base** module, maintaining consistency in data management and user experience. This module is essential for social protection programs and farmer registries where group-level management is crucial. diff --git a/docs/modules/g2p_registry_individual.md b/docs/modules/g2p_registry_individual.md index ce88f058..1f0fd0c6 100644 --- a/docs/modules/g2p_registry_individual.md +++ b/docs/modules/g2p_registry_individual.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **G2P Registry: Individual** module within the OpenSPP ecosystem. Building upon the foundation provided by the **[G2P Registry: Base](g2p_registry_base)** module, this module focuses specifically on managing **individual registrant** data. -### Purpose +## Purpose The **G2P Registry: Individual** module aims to: @@ -15,7 +15,7 @@ The **G2P Registry: Individual** module aims to: * Provide a dedicated interface for managing and viewing individual registrant profiles. * Enhance data integrity through validation rules and constraints related to individual attributes. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[G2P Registry: Base](g2p_registry_base)**: This module inherits from the core functionalities provided by the base module, including: * **Registrant Management**: Leverages the base registrant model, inheriting features for managing registration dates, disabling/enabling registrants, tags, IDs, phone numbers, and relationships. @@ -27,7 +27,7 @@ The **G2P Registry: Individual** module aims to: * **Age**: Calculates and displays the registrant's age based on their birthdate. * **Gender**: Provides a field for recording gender information. -### Additional Functionality +## Additional Functionality The module introduces: @@ -36,6 +36,6 @@ The module introduces: * **Age Calculation and Validation**: Calculates the age of the individual based on their birthdate and includes validation to ensure the entered age is a valid number. * **Birthdate Validation**: Restricts the selection of future dates for the birthdate field. -### Conclusion +## Conclusion The **G2P Registry: Individual** module enhances the OpenSPP platform by providing a dedicated and feature-rich system for managing individual registrant data. By extending the base registry functionality and integrating seamlessly with Odoo's Contacts module, it ensures comprehensive and efficient handling of individual profiles within social protection programs and farmer registries. diff --git a/docs/modules/g2p_registry_membership.md b/docs/modules/g2p_registry_membership.md index 4f2c3ace..94dccaac 100644 --- a/docs/modules/g2p_registry_membership.md +++ b/docs/modules/g2p_registry_membership.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **G2P Registry: Membership** module within the OpenSPP ecosystem. This module focuses on managing relationships between individual registrants and groups, adding an essential layer of organization and data management to the platform. -### Purpose +## Purpose The **G2P Registry: Membership** module aims to: @@ -15,7 +15,7 @@ The **G2P Registry: Membership** module aims to: * **Track Group Members:** Enable the system to associate individual registrants with specific groups. * **Manage Membership Timeframes:** Record start and end dates for each membership, allowing for accurate historical tracking of group composition over time. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **G2P Registry: Individual ([g2p_registry_individual](g2p_registry_individual))**: This module relies on the individual registrant data managed by the **G2P Registry: Individual** module. It directly links individuals to groups, leveraging the individual profiles created and managed within that module. @@ -23,7 +23,7 @@ The **G2P Registry: Membership** module aims to: 3. **Contacts (res.partner)**: Leverages the Odoo Contacts module to access and display information about individuals and groups within the membership management interface. -### Additional Functionality +## Additional Functionality The module introduces the following key elements: @@ -44,6 +44,6 @@ The module introduces the following key elements: * Adds dedicated tabs or sections within both the Individual and Group forms to display and manage memberships. * Provides views (tree, form) to manage group memberships directly. -### Conclusion +## Conclusion The **G2P Registry: Membership** module is crucial for representing and managing the complex relationships between individuals and groups within OpenSPP. It integrates seamlessly with other core registry modules, providing a comprehensive system for tracking group composition, roles within groups, and membership history. This functionality is essential for social protection programs and farmer registries that rely on accurate and up-to-date information about individuals' group affiliations. diff --git a/docs/modules/spp_api_records.md b/docs/modules/spp_api_records.md index 2bcc4a39..a1cab85c 100644 --- a/docs/modules/spp_api_records.md +++ b/docs/modules/spp_api_records.md @@ -7,7 +7,7 @@ This document details the **OpenSPP API Records** module within the OpenSPP platform. This module is responsible for defining and exposing API endpoints that provide access to records and data related to OpenSPP's core functionalities, including service points, programs, entitlements, and registries. -### Purpose +## Purpose The **OpenSPP API Records** module aims to: @@ -15,7 +15,7 @@ The **OpenSPP API Records** module aims to: * **Standardize Data Exchange:** Define consistent data formats and structures for API requests and responses, ensuring interoperability with various systems. * **Support Integration Efforts:** Facilitate the integration of OpenSPP with other systems used by governments, NGOs, and other stakeholders involved in social protection programs and farmer registries. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[spp_api](spp_api.md)**: * This module builds directly upon the **[spp_api](spp_api)** module, inheriting its core API framework, security features (OAuth 2.0), and documentation generation capabilities. @@ -44,7 +44,7 @@ The **OpenSPP API Records** module aims to: * Accesses data from the **[g2p_registry_base](g2p_registry_base)** module to potentially expose limited and anonymized registrant information through the API, strictly adhering to privacy and data protection regulations. * API endpoints in this area would require robust authentication and authorization mechanisms to control access and prevent unauthorized data exposure. -### Additional Functionality +## Additional Functionality * **API Endpoints for Record Access:** * Defines and implements specific API endpoints to retrieve, search, and potentially modify data related to OpenSPP's core entities (service points, programs, products, entitlements, etc.). @@ -58,6 +58,6 @@ The **OpenSPP API Records** module aims to: * Adheres to best practices for API versioning, allowing for backward compatibility and controlled evolution of the API over time. * Leverages the documentation generation capabilities of [spp_api](spp_api) to provide comprehensive and up-to-date documentation for all exposed endpoints, including request/response formats, authentication requirements, and example usage. -### Conclusion +## Conclusion The **OpenSPP API Records** module plays a vital role in extending OpenSPP's reach and interoperability. By exposing core data through a well-defined and secure API, it enables seamless integration with other systems, facilitating data exchange, automating processes, and empowering external stakeholders to interact with OpenSPP in a standardized and controlled manner. diff --git a/docs/modules/spp_area_gis.md b/docs/modules/spp_area_gis.md index 32fd3761..84b11d85 100644 --- a/docs/modules/spp_area_gis.md +++ b/docs/modules/spp_area_gis.md @@ -7,7 +7,7 @@ The **OpenSPP Area GIS** module extends the functionality of the [OpenSPP Area](link-to-area-module-documentation) module by integrating Geographical Information System (GIS) capabilities. This module allows users to visualize and interact with geographical areas on a map, providing a spatial dimension to area management within OpenSPP. -### Purpose +## Purpose The main purpose of the **OpenSPP Area GIS** module is to: @@ -16,12 +16,12 @@ The main purpose of the **OpenSPP Area GIS** module is to: * **Define Area Polygons:** Allow for the creation and editing of polygon geometries that accurately represent the boundaries of areas. * **Integrate with OpenSPP Base GIS:** Leverage the functionality provided by the [OpenSPP Base GIS](spp_base_gis) module to display areas as data layers on maps, enabling users to overlay them with other relevant data. -### Dependencies and Integration +## Dependencies and Integration * **OpenSPP Area ([spp_area](spp_area)):** This module directly depends on the OpenSPP Area module, inheriting its core functionality for managing area hierarchies and information. * **OpenSPP Base GIS ([spp_base_gis](spp_base_gis)):** The module integrates with the OpenSPP Base GIS module to utilize its GIS capabilities, such as map views, raster layers, and data layer management. -### Functionality and Features +## Functionality and Features * **Area Coordinates (spp.area):** * Adds two fields to the `spp.area` model: @@ -38,19 +38,19 @@ The main purpose of the **OpenSPP Area GIS** module is to: * Enables users to overlay area data layers with other relevant data layers, such as beneficiary locations, program intervention zones, or environmental data. * Facilitates spatial analysis by allowing users to visualize and analyze the relationships between areas and other geospatial data. -### Benefits +## Benefits * **Improved Visualization:** Provides a clear and intuitive way to visualize area hierarchies and boundaries on a map, enhancing understanding of geographical coverage. * **Enhanced Targeting and Analysis:** Enables location-based targeting by visualizing the spatial distribution of areas in relation to beneficiary locations or other relevant factors. * **Improved Data Management:** Allows for more precise and efficient management of area data by integrating geographical coordinates and polygons. * **Enhanced Monitoring and Evaluation:** Facilitates spatial analysis for monitoring and evaluation purposes, allowing users to assess program coverage, identify gaps and overlaps, and track progress over time. -### Example Use Cases +## Example Use Cases * **Visualizing Administrative Boundaries:** Displaying a hierarchy of administrative areas, such as provinces, districts, and villages, on a map to understand their geographical distribution. * **Targeting Interventions:** Overlapping area boundaries with beneficiary locations to identify areas with high concentrations of target populations for program interventions. * **Monitoring Program Coverage:** Visualizing the spatial extent of program implementation areas in relation to target areas to assess coverage and identify gaps. -### Conclusion +## Conclusion The OpenSPP Area GIS module empowers OpenSPP with valuable GIS capabilities for managing and visualizing geographical areas. This integration of spatial data enhances the platform's ability to support effective and efficient program planning, implementation, monitoring, and evaluation for social protection programs and farmer registries. diff --git a/docs/modules/spp_audit_post.md b/docs/modules/spp_audit_post.md index dc372069..f0404d9e 100644 --- a/docs/modules/spp_audit_post.md +++ b/docs/modules/spp_audit_post.md @@ -7,16 +7,16 @@ This document outlines the **G2P Registry: Audit Post** module within the OpenSPP platform. This module extends the functionality of the audit log by enabling the posting of audit log messages to related parent records. -### Purpose +## Purpose The module's primary goal is to provide a comprehensive overview of changes not just within a single record, but also across related records in a parent-child relationship. By posting audit log information to parent records, it offers a centralized view of how modifications cascade through interconnected data. -### Module Integration and Dependencies +## Module Integration and Dependencies * **[spp_audit_log](spp_audit_log)**: This module directly depends on the audit log module. It leverages the existing audit log framework to capture and display change information. * **Mail (mail)**: The module utilizes the standard Odoo Mail module to post audit log messages as messages on parent records. This integration ensures that relevant stakeholders are notified about changes impacting related data. -### Additional Functionality +## Additional Functionality 1. **Parent-Child Rule Association**: * Allows users to define parent-child relationships between audit rules. @@ -36,6 +36,6 @@ The module's primary goal is to provide a comprehensive overview of changes not * When a change is audited and a parent rule is defined, the module automatically generates a message on the parent record's message thread. * The message includes detailed information about the change, including the model, field, old value, and new value, presented in a user-friendly HTML format. -### Conclusion +## Conclusion The **G2P Registry: Audit Post** module enhances data transparency and traceability within OpenSPP by extending audit logging to encompass related records. This functionality provides valuable insights into how modifications propagate through the system, facilitating better data management and analysis. This is particularly beneficial in complex data structures where understanding the impact of changes across related records is crucial. diff --git a/docs/modules/spp_base.md b/docs/modules/spp_base.md index 0bd95fae..005f82f3 100644 --- a/docs/modules/spp_base.md +++ b/docs/modules/spp_base.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **OpenSPP Base** module, the core module for the OpenSPP system. It builds upon existing G2P Registry modules, providing essential customizations and configurations for OpenSPP's specialized functionalities. -### Purpose +## Purpose The **OpenSPP Base** module serves as the foundation for other OpenSPP modules, offering: @@ -15,7 +15,7 @@ The **OpenSPP Base** module serves as the foundation for other OpenSPP modules, - **UI modifications**: Customizes the user interface (UI) to align with OpenSPP's look and feel, enhancing user experience. - **Extension points**: Acts as a base for other modules to inherit and extend functionalities specific to OpenSPP requirements. -### Module Dependencies and Integration +## Module Dependencies and Integration The **OpenSPP Base** module depends on several other modules, integrating their features and extending them for OpenSPP: @@ -31,7 +31,7 @@ The **OpenSPP Base** module depends on several other modules, integrating their - [utm](utm): Leverages this module for tracking and managing UTM (Urchin Tracking Module) parameters, commonly used in digital marketing campaigns. - [g2p_registry_individual](g2p_registry_individual): Integrates with this module to manage individual registrant data, including specific attributes and validations. -### Additional Functionality +## Additional Functionality The **OpenSPP Base** module introduces the following key functionalities: @@ -40,6 +40,6 @@ The **OpenSPP Base** module introduces the following key functionalities: - **Menu Icon Customization**: Replaces the default icon for the "Registry" menu item with a custom OpenSPP icon, enhancing visual branding. - **Menu Item Hiding**: Hides specific menu items related to "Link Tracker" and "Discuss" to streamline the OpenSPP user interface and focus on relevant functionalities. -### Conclusion +## Conclusion The **OpenSPP Base** module acts as the backbone of the OpenSPP system, integrating and extending the functionalities of its dependencies to create a cohesive and tailored platform. Its role in providing central configurations, UI modifications, and extension points makes it essential for the proper functioning and customization of OpenSPP's specialized features. diff --git a/docs/modules/spp_base_demo.md b/docs/modules/spp_base_demo.md index 3466163b..5134e57d 100644 --- a/docs/modules/spp_base_demo.md +++ b/docs/modules/spp_base_demo.md @@ -7,7 +7,7 @@ This module provides demonstration data for the OpenSPP system. It populates the database with sample records for various entities, allowing users to explore the system's functionalities with pre-populated data. -### Purpose +## Purpose The primary purpose of the **[spp_base_demo](spp_base_demo)** module is to: @@ -15,14 +15,14 @@ The primary purpose of the **[spp_base_demo](spp_base_demo)** module is to: * **Facilitate user training and exploration:** Allows new users to familiarize themselves with the system's interface, data structures, and workflows without having to manually create large amounts of test data. * **Showcase system capabilities:** Demonstrates the potential of OpenSPP by illustrating how different modules interact and how data flows through the system. -### Module Dependencies and Integration +## Module Dependencies and Integration * **[g2p_registry_base](g2p_registry_base)** (G2P Registry: Base): Utilizes the base registry module to populate the system with sample registrant data, including individuals and potentially groups. * **[g2p_programs](g2p_programs)** (G2P Programs): Leverages the programs module to create demo programs, define eligibility criteria, and potentially simulate program cycles and beneficiary enrollment. * **[product](product)** (Products): Utilizes the product module to create sample products, potentially representing goods or services distributed through social protection programs. * **[stock](stock)** (Inventory): May potentially integrate with the inventory module to manage and track the stock levels of goods related to program benefits. -### Additional Functionality and Data Examples +## Additional Functionality and Data Examples The **[spp_base_demo](spp_base_demo)** module includes data files that populate the database with sample records for various entities. Here are some examples: @@ -30,6 +30,6 @@ The **[spp_base_demo](spp_base_demo)** module includes data files that populate * **Gender Data (data/gender_data.xml):** Defines common gender options used for registrant demographic information. * **Product Data (data/product_data.xml):** Creates sample product records, potentially categorized by type, to represent goods distributed through programs. -### Conclusion +## Conclusion The **[spp_base_demo](spp_base_demo)** module serves as a valuable tool for users, implementers, and trainers to understand and explore the OpenSPP platform's capabilities. By providing realistic demo data, the module accelerates the learning curve and allows users to experience the system's full potential firsthand. diff --git a/docs/modules/spp_base_gis_demo.md b/docs/modules/spp_base_gis_demo.md index bd11770b..9cbdad68 100644 --- a/docs/modules/spp_base_gis_demo.md +++ b/docs/modules/spp_base_gis_demo.md @@ -7,7 +7,7 @@ This module serves as a demonstration of the GIS capabilities provided by the [OpenSPP Base GIS](OpenSPP Base GIS)(./openspp-base-gis) module. It extends the functionality of the base module by adding practical examples and use cases. -### Purpose +## Purpose The [spp_base_gis_demo](spp_base_gis_demo) module aims to: @@ -15,14 +15,14 @@ The [spp_base_gis_demo](spp_base_gis_demo) module aims to: - Provide concrete examples of using GIS views, data layers, and raster layers. - Offer a starting point for developers to build upon and customize for specific project needs. -### Integration with Other Modules +## Integration with Other Modules This module directly interacts with: - **[spp_base_gis](spp_base_gis)**: It utilizes the core GIS functionality provided by this module, such as GIS views, data layers, and raster layers. - **contacts**: It extends the `res.partner` model from the `contacts` module to include geographic fields, demonstrating how to add GIS capabilities to existing models. -### Additional Functionality +## Additional Functionality The [spp_base_gis_demo](spp_base_gis_demo) module offers: @@ -38,10 +38,10 @@ The [spp_base_gis_demo](spp_base_gis_demo) module offers: - **Data and Raster Layers:** The module configures data layers to represent partners on the map using different geometric representations. It also sets up a raster layer to provide a background map for context. -### Example +## Example The module demonstrates how to visualize the location of a partner (e.g., a beneficiary or a farmer) on a map. Users can view and interact with the partner data in a geospatial context, gaining insights into their distribution and spatial relationships. -### Conclusion +## Conclusion The [spp_base_gis_demo](spp_base_gis_demo) module serves as a practical guide for implementing GIS features within the OpenSPP ecosystem. It provides tangible examples and building blocks for developers to leverage the power of geospatial data in social protection programs and farmer registries. diff --git a/docs/modules/spp_base_gis_rest.md b/docs/modules/spp_base_gis_rest.md index 3a6ee03a..286ffda5 100644 --- a/docs/modules/spp_base_gis_rest.md +++ b/docs/modules/spp_base_gis_rest.md @@ -10,7 +10,7 @@ This module extends the [spp_base_gis](spp_base_gis) by providing RESTful API en - **[spp_base_gis](spp_base_gis):** Provides the core GIS functionalities and data models. - **[spp_oauth](spp_oauth):** Enables secure authentication and authorization for API requests using OAuth 2.0. -### Functionality +## Functionality The `spp_base_gis_rest` module offers a set of RESTful API endpoints that allow external applications and services to: @@ -19,14 +19,14 @@ The `spp_base_gis_rest` module offers a set of RESTful API endpoints that allow - **Execute Attribute Queries:** Allows filtering data based on attribute values using operators such as equals, not equals, greater than, etc. - **Retrieve Feature Data:** Returns geospatial data in standard formats like GeoJSON, suitable for consumption by GIS clients or other applications. -### Integration with Other Modules +## Integration with Other Modules The `spp_base_gis_rest` module seamlessly integrates with: - **OpenSPP Base GIS:** It directly leverages the GIS functionalities and data models provided by this module to process queries and return geospatial information. - **OpenSPP API: Oauth Module:** It relies on the [spp_oauth](spp_oauth) module for handling API authentication, ensuring that only authorized clients can access the GIS data. -### API Endpoints +## API Endpoints The module exposes the following key API endpoints: @@ -34,10 +34,10 @@ The module exposes the following key API endpoints: - `/v1/gisBB/query/locationalQuery`: Performs locational queries based on coordinates and spatial relationships. - `/v1/gisBB/query/attributeQuery`: Executes attribute-based queries to filter data. -### Security +## Security The module inherits its security model from the [spp_oauth](spp_oauth) module. All API endpoints are protected and require valid access tokens for authorization. This ensures that only authorized clients and applications can access and query the geospatial data. -### Conclusion +## Conclusion The `spp_base_gis_rest` module enhances the OpenSPP Base GIS module by providing a secure and standardized way to access and query geospatial data through RESTful API endpoints. This empowers external applications, services, and GIS clients to integrate with OpenSPP and leverage its geospatial capabilities. diff --git a/docs/modules/spp_base_setting.md b/docs/modules/spp_base_setting.md index ee60cb49..83344ead 100644 --- a/docs/modules/spp_base_setting.md +++ b/docs/modules/spp_base_setting.md @@ -7,20 +7,20 @@ This document outlines the functionality and purpose of the **OpenSPP Base Settings** module within the OpenSPP ecosystem. This module builds upon the foundational [g2p_registry_base](g2p_registry_base) module to provide essential configuration options for OpenSPP deployments. -### Purpose +## Purpose The **OpenSPP Base Settings** module aims to: * **Customize the Odoo interface for OpenSPP:** Adapts existing Odoo views and menus to align with OpenSPP terminology and workflows. * **Centralize OpenSPP-specific configurations:** Provides a dedicated location for managing settings relevant to OpenSPP implementations. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. [g2p_registry_base](g2p_registry_base): This module inherits the core registry functionalities provided by the **G2P Registry: Base** module, including managing registrants, relationships, and identification. 2. **Base (base):** Leverages the core Odoo [Base](Base) module for data models, views, and basic functionalities. -### Additional Functionality +## Additional Functionality The **OpenSPP Base Settings** module introduces: @@ -30,10 +30,10 @@ The **OpenSPP Base Settings** module introduces: * Adds a dedicated menu item for managing Country Offices. * Integrates User and Group management within the OpenSPP configuration menu structure. -### Key Concepts +## Key Concepts * **Country Offices:** The module redefines the standard Odoo "Company" as a "Country Office," reflecting the organizational structure common in OpenSPP deployments. This allows administrators to manage settings and data specific to each country office. -### Conclusion +## Conclusion The **OpenSPP Base Settings** module provides the necessary configurations and customizations to tailor the Odoo environment for OpenSPP implementations. By building upon existing modules and adapting core functionalities, it streamlines the setup and management of OpenSPP deployments. diff --git a/docs/modules/spp_basic_cash_entitlement_spent.md b/docs/modules/spp_basic_cash_entitlement_spent.md index b65eb270..947cb2ad 100644 --- a/docs/modules/spp_basic_cash_entitlement_spent.md +++ b/docs/modules/spp_basic_cash_entitlement_spent.md @@ -7,7 +7,7 @@ This document details the **SPP Program Entitlement Basic Cash Spent** module within the OpenSPP platform. This module extends the functionality of the [g2p_programs](g2p_programs) module to specifically handle the tracking of cash spent for basic cash entitlement programs. -### Purpose +## Purpose The **SPP Program Entitlement Basic Cash Spent** module provides a straightforward mechanism for: @@ -15,20 +15,20 @@ The **SPP Program Entitlement Basic Cash Spent** module provides a straightforwa * **Calculating Remaining Balances**: Automatically calculates the remaining balance for each entitlement based on the initial amount and the recorded spending. * **Monitoring Entitlement Utilization**: Facilitates the monitoring of how beneficiaries are utilizing their allocated cash benefits. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **G2P Registry: Base ([g2p_registry_base](g2p_registry_base))**: Inherits core registry functionality for managing beneficiary information. 2. **[g2p_programs](g2p_programs)**: * Extends the **Entitlement (g2p.entitlement)** model to include cash spending tracking. * Leverages program and cycle structures for organizing and managing entitlements. -### Additional Functionality +## Additional Functionality * **Spent Amount Tracking**: Introduces a new field, `spent_amount`, within the **Entitlement (g2p.entitlement)** model to record the amount of cash spent by the beneficiary. * **Automatic Balance Calculation**: Automatically computes the remaining balance (`balance`) for each entitlement by subtracting the `spent_amount` from the `initial_amount`. * **Currency Support**: Utilizes the existing `currency_id` field from the **Entitlement** model to ensure accurate tracking of spending in the appropriate currency. -### Integration with Other Modules +## Integration with Other Modules This module seamlessly integrates with the [g2p_programs](g2p_programs) module by directly extending the **Entitlement** model. This integration allows for: @@ -36,6 +36,6 @@ This module seamlessly integrates with the [g2p_programs](g2p_programs) module b * **Streamlined Reporting**: Enables the generation of reports that combine entitlement data (initial amount, validity period) with spending information (spent amount, balance). * **Enhanced Monitoring and Evaluation**: Provides program administrators with a comprehensive view of entitlement utilization, supporting better decision-making and program adjustments. -### Conclusion +## Conclusion The **SPP Program Entitlement Basic Cash Spent** module offers a simple yet effective solution for tracking cash spending within basic cash entitlement programs. By extending the core functionality of the [g2p_programs](g2p_programs) module, it ensures seamless integration and enhances the overall management and monitoring of program benefits. diff --git a/docs/modules/spp_change_request.md b/docs/modules/spp_change_request.md index 31af142c..f80074b5 100644 --- a/docs/modules/spp_change_request.md +++ b/docs/modules/spp_change_request.md @@ -40,20 +40,20 @@ The [spp_change_request](spp_change_request) module leverages and extends the fu ## Additional Functionality -### Change Request Management +## Change Request Management * **Change Request Model (`spp.change.request`)**: A central model for tracking all change requests, storing details like request type, status, applicant, assigned personnel, approval history, and related documents. * **Configurable Workflow**: Supports customizable multi-stage approval processes, allowing administrators to define the required steps and user roles involved in validating change requests. * **Status Tracking**: Monitors the progress of change requests through various states (Draft, Pending Validation, Validated, Applied, Rejected, Cancelled), providing real-time visibility into the process. * **Audit Trail**: Maintains a comprehensive history of all actions related to a change request, including submission, validation, approvals, rejections, and application, ensuring accountability and transparency. -### Integration with Registrant Data +## Integration with Registrant Data * **Dynamic Form Generation**: The module allows for defining different change request types, each associated with a specific form that captures the necessary data for that type of modification. * **Data Validation**: Implements validation rules to ensure the data entered in change request forms meet specific criteria, such as data type, format, or range, before submission for approval. * **Automatic Data Update**: Upon approval and application of a change request, the module automatically updates the corresponding registrant data in the relevant G2P Registry module, ensuring data consistency. -### User Interface and Experience +## User Interface and Experience * **Dedicated Change Request Menu**: Provides a centralized location within the OpenSPP interface for accessing and managing change requests. * **User-Friendly Forms**: Offers intuitive and easy-to-use forms for submitting different types of change requests, guiding users through the required information. diff --git a/docs/modules/spp_change_request_add_farmer.md b/docs/modules/spp_change_request_add_farmer.md index dee6d8f3..a904efbf 100644 --- a/docs/modules/spp_change_request_add_farmer.md +++ b/docs/modules/spp_change_request_add_farmer.md @@ -18,7 +18,7 @@ The [spp_change_request_add_farmer](spp_change_request_add_farmer) module extend ## Module Integration -### Dependencies +## Dependencies The module relies heavily on the following modules: @@ -30,7 +30,7 @@ The module relies heavily on the following modules: * **[g2p_registry_individual](g2p_registry_individual)**: Leverages individual registrant management features, inheriting from the individual registrant model. * **[spp_service_points](spp_service_points)**: Integrates with service points, allowing change requests to be initiated and managed through designated service points. -### Additional Functionality +## Additional Functionality * **Custom Change Request Model**: Introduces the `spp.change.request.add.farmer` model, inheriting from the base `spp.change.request` model and adding fields specific to adding farmers, such as farmer-specific details and group membership information. * **Tailored Forms**: Provides specialized views for creating, displaying, and validating `Add Farmer` change requests, including a dedicated form (`view_change_request_add_farmer_form`) with relevant fields and a validation-focused form (`view_change_request_add_farmer_validation_form`). diff --git a/docs/modules/spp_custom_field.md b/docs/modules/spp_custom_field.md index b65b2774..3b3c6b83 100644 --- a/docs/modules/spp_custom_field.md +++ b/docs/modules/spp_custom_field.md @@ -7,15 +7,15 @@ This document describes the **OpenSPP Custom Field** module, which extends the functionality of OpenSPP by adding customizable fields to registrant profiles. This module is specifically designed to work with the **[g2p_registry_base](g2p_registry_base)** module and leverages its features for managing registrant data. -### Purpose +## Purpose The **OpenSPP Custom Field** module enables administrators to define and manage custom fields for capturing additional information about registrants. This allows for greater flexibility and adaptability in tailoring the registry system to specific program needs and data collection requirements. -### Integration with [g2p_registry_base](g2p_registry_base) +## Integration with [g2p_registry_base](g2p_registry_base) This module directly integrates with the **[g2p_registry_base](g2p_registry_base)** module by extending the functionality of the `res.partner` model, which is the core model for managing registrants within OpenSPP. Instead of creating new models or data structures, it adds custom fields directly onto the registrant profile, ensuring data consistency and ease of management. -### Key Functionality +## Key Functionality * **Custom Field Creation**: Administrators can create various types of custom fields (e.g., text fields, booleans, dates) through Odoo's standard field creation mechanisms. * **Field Categorization**: Custom fields are categorized as either "Custom Details" or "Indicators." This allows for logical grouping and display of information within the registrant profile. @@ -23,12 +23,12 @@ This module directly integrates with the **[g2p_registry_base](g2p_registry_base * **Indicators as Read-Only**: Fields categorized as "Indicators" are automatically set as read-only on the user interface. This is particularly useful for displaying calculated metrics or data points derived from other system information. * **Seamless UI Integration**: Custom fields are integrated directly into the registrant profile form within the Odoo interface. This provides a user-friendly experience for data entry and management without requiring navigation to separate sections or modules. -### Benefits +## Benefits * **Enhanced Data Collection**: Capture program-specific information beyond the standard fields provided by the **[g2p_registry_base](g2p_registry_base)** module. * **Improved Targeting and Analysis**: Utilize custom fields to segment registrants, analyze trends, and support data-driven decision-making. * **Flexibility and Adaptability**: Easily modify and extend the registry system to accommodate evolving program needs and data collection requirements. -### Conclusion +## Conclusion The **OpenSPP Custom Field** module provides a powerful and flexible way to customize the OpenSPP registry system. By seamlessly integrating with the **[g2p_registry_base](g2p_registry_base)** module and leveraging Odoo's existing framework, it empowers administrators to tailor data collection and management processes to meet the specific requirements of their social protection programs. diff --git a/docs/modules/spp_custom_field_recompute_daily.md b/docs/modules/spp_custom_field_recompute_daily.md index 624d8a38..e4e4d6c4 100644 --- a/docs/modules/spp_custom_field_recompute_daily.md +++ b/docs/modules/spp_custom_field_recompute_daily.md @@ -7,7 +7,7 @@ This module extends the functionality of OpenSPP by introducing a mechanism to recompute specific fields on a daily basis. This is particularly useful for maintaining up-to-date values for fields that are computationally intensive or rely on frequently changing data. -### Purpose +## Purpose The primary goal of this module is to: @@ -15,24 +15,24 @@ The primary goal of this module is to: * **Improve performance:** By offloading computationally expensive field calculations to a scheduled task, the module prevents performance bottlenecks during regular system operations. * **Ensure data accuracy:** Regular recomputation ensures that fields relying on dynamic data remain consistent and reflect the latest information. -### Functionality and Integration +## Functionality and Integration -#### Integration with `queue_job` +### Integration with `queue_job` This module leverages the `queue_job` module to handle the asynchronous recomputation of fields. When a field marked for "Daily Recompute" needs updating, the module creates a background job using `queue_job`. This approach prevents the recomputation process from impacting the system's responsiveness, especially when dealing with large datasets. -#### Integration with `base_setup` +### Integration with `base_setup` The module integrates with `base_setup` to provide configuration options for daily recomputation. Administrators can set the "Maximum Daily Recompute Records Count" through the "Settings" menu. This parameter limits the number of records processed synchronously during each recomputation cycle, preventing potential performance issues. -### Key Features +## Key Features * **Field level configuration:** The module adds a "Daily Recompute" checkbox to the field definition in the Odoo interface. Enabling this option marks the field for daily recomputation. * **Cron Job:** A scheduled task runs daily to trigger the recomputation of marked fields. * **Performance optimization:** The recomputation process is designed to be asynchronous and utilizes the `queue_job` framework to minimize the impact on system performance. * **Configuration options:** Administrators can define the maximum number of records to be recomputed synchronously, allowing for fine-tuning based on system capacity. -### Usage +## Usage 1. **Enable "Daily Recompute":** In the Odoo interface, navigate to the technical settings of the desired model. Locate the field you want to recompute daily and enable the "Daily Recompute" option. 2. **Configure Recomputation Settings (Optional):** Access the "Settings" menu and locate the "Daily Recomputing" section. Adjust the "Maximum Daily Recompute Records Count" based on your system's capacity and performance requirements. diff --git a/docs/modules/spp_custom_filter_ui.md b/docs/modules/spp_custom_filter_ui.md index 5bd16624..6ff23738 100644 --- a/docs/modules/spp_custom_filter_ui.md +++ b/docs/modules/spp_custom_filter_ui.md @@ -5,13 +5,13 @@ **Work in Progress**: This document is actively being developed and updated. Content may be incomplete or subject to change. ``` -### Overview +## Overview The **SPP Custom Filter UI** module customizes the user interface (UI) for filtering in specific OpenSPP modules, enhancing usability and simplifying data management. It builds upon the [spp_custom_filter](spp_custom_filter) module, which provides the underlying functionality for controlling which fields are displayed in filter dropdown menus. This module focuses specifically on tailoring the filtering UI for the **Res Partner** model, which is extensively used within OpenSPP, particularly for representing registrants. By selectively exposing relevant fields for filtering, the module aims to streamline user workflows and improve the overall experience within the OpenSPP system. -### Purpose +## Purpose The primary purpose of the **SPP Custom Filter UI** module is to: @@ -19,7 +19,7 @@ The primary purpose of the **SPP Custom Filter UI** module is to: * **Improve Efficiency**: Enable users to find and filter data more quickly and effectively, particularly when working with models containing numerous fields. * **Customize UI for OpenSPP**: Tailor the filtering UI to align with the specific data structures and user workflows within the OpenSPP platform. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[spp_custom_filter](spp_custom_filter)**: This module directly depends on the **SPP Custom Filter** module, inheriting its core functionality for managing the visibility of fields in filter dropdown menus. The **SPP Custom Filter UI** module leverages this capability to configure the UI for specific models. @@ -27,7 +27,7 @@ The primary purpose of the **SPP Custom Filter UI** module is to: 3. **[g2p_programs](g2p_programs)**: The module interacts with the **G2P Programs** module to ensure that the filtering UI aligns with program-specific data and workflows. This integration is crucial for users managing registrant data within the context of social protection programs. -### Additional Functionality +## Additional Functionality The **SPP Custom Filter UI** module provides the following additional functionality: @@ -35,6 +35,6 @@ The **SPP Custom Filter UI** module provides the following additional functional * **Integration with OpenSPP Modules**: The module's UI configurations are designed to seamlessly integrate with the [g2p_registry_group](g2p_registry_group) and [g2p_programs](g2p_registry_group](g2p_programs](g2p_registry_group) and [g2p_programs) modules. This ensures that the filtering experience is consistent and user-friendly across different parts of the OpenSPP system. -### Conclusion +## Conclusion The **SPP Custom Filter UI** module plays a crucial role in enhancing the usability and efficiency of the OpenSPP platform. By customizing the filtering UI for key models like **Res Partner**, the module simplifies data management tasks for users, particularly those working with registrant information within the context of social protection programs. Its integration with other core OpenSPP modules ensures a cohesive and user-centric experience across the platform. diff --git a/docs/modules/spp_demo.md b/docs/modules/spp_demo.md index c66a6f45..71d8bf70 100644 --- a/docs/modules/spp_demo.md +++ b/docs/modules/spp_demo.md @@ -7,13 +7,13 @@ The `spp_demo` module serves as a demonstration and testing ground for the OpenSPP system, showcasing its capabilities with pre-populated data. It builds upon core OpenSPP modules to create a realistic simulation of social protection programs and registries in action. -### Purpose +## Purpose * **Illustrate OpenSPP Functionality:** The module provides tangible examples of how various OpenSPP components work together, demonstrating data flow and interactions between modules. * **Facilitate User Exploration:** Pre-populated data allows users to explore the system's interface, features, and data structures without manually creating extensive test data. * **Accelerate Training:** The demo module serves as a valuable tool for training users on OpenSPP, providing a controlled environment to practice workflows and tasks. -### Dependencies and Integration +## Dependencies and Integration The `spp_demo` module relies heavily on the following OpenSPP modules: @@ -29,7 +29,7 @@ The `spp_demo` module relies heavily on the following OpenSPP modules: * [spp_base_demo](spp_base_demo): This module provides basic demonstration data for the OpenSPP system, including users, gender options and products. * [g2p_programs](g2p_programs) (G2P Programs): Utilizes this module extensively to define and demonstrate social protection programs, eligibility criteria, program cycles, and potentially beneficiary enrollment and entitlement processes. -### Additional Functionality +## Additional Functionality * **Data Generation Utilities:** The module includes Python scripts and functions within the `models/` directory to generate a variety of sample data, such as: * **Randomized Registrant Data:** Creates individual and group registrants with realistic names, demographics, contact information, and relationships, often leveraging external libraries like `faker` for randomized data generation. @@ -40,6 +40,6 @@ The `spp_demo` module relies heavily on the following OpenSPP modules: * **Data Generation Actions:** Adds buttons or menu items within relevant sections of the interface to trigger data generation scripts. This provides an easy way for users to populate the demo environment with sample data. * **Custom Views:** May include custom views or modifications to existing views to highlight specific aspects of the demo data or showcase particular functionalities. -### Conclusion +## Conclusion The `spp_demo` module is an essential component of the OpenSPP ecosystem for demonstration, testing, and training purposes. It provides a rich and interactive environment for users to explore the system's capabilities and understand how different modules work together to manage social protection programs and registries. diff --git a/docs/modules/spp_eligibility_sql.md b/docs/modules/spp_eligibility_sql.md index f2aafd53..9ac3e3eb 100644 --- a/docs/modules/spp_eligibility_sql.md +++ b/docs/modules/spp_eligibility_sql.md @@ -7,7 +7,7 @@ This document describes the **OpenSPP SQL Query Eligibility Manager** module. This module enhances the **[g2p_programs](g2p_programs)** module by introducing a flexible way to define program eligibility criteria using SQL queries. -### Purpose +## Purpose The **OpenSPP SQL Query Eligibility Manager** module enables program administrators to: @@ -16,7 +16,7 @@ The **OpenSPP SQL Query Eligibility Manager** module enables program administrat * **Test Eligibility Criteria**: Administrators can test SQL queries against the registrant database to preview the number of beneficiaries who would be eligible based on the defined criteria. * **Automate Enrollment**: The module can automatically enroll registrants who meet the criteria specified in the SQL query, streamlining the beneficiary enrollment process. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[g2p_registry_base](g2p_registry_base)**: This module relies on the base registry for access to registrant data, which is queried against the SQL-based eligibility criteria. @@ -28,7 +28,7 @@ The **OpenSPP SQL Query Eligibility Manager** module enables program administrat 4. **[queue_job](queue_job)**: Employs the queue job framework to handle the asynchronous execution of SQL queries and the enrollment of eligible registrants, particularly for large datasets. -### Additional Functionality +## Additional Functionality * **[g2p.program_membership.manager.sql](g2p.program_membership.manager.sql)**: A new eligibility manager model specifically designed to store and execute SQL queries for eligibility determination. @@ -45,6 +45,6 @@ The **OpenSPP SQL Query Eligibility Manager** module enables program administrat * **Fetch Eligible Registrants**: Retrieve a list of registrant IDs who match the criteria. * **Create Program Memberships**: Automatically enroll eligible registrants in the associated program. -### Conclusion +## Conclusion The **OpenSPP SQL Query Eligibility Manager** module significantly enhances the flexibility and efficiency of managing program eligibility within OpenSPP. By leveraging the power of SQL queries, administrators can define complex eligibility rules and automate the beneficiary enrollment process, saving time and ensuring accuracy. diff --git a/docs/modules/spp_eligibility_tags.md b/docs/modules/spp_eligibility_tags.md index b0383eba..bfaaabf0 100644 --- a/docs/modules/spp_eligibility_tags.md +++ b/docs/modules/spp_eligibility_tags.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **OpenSPP Tag Based Eligibility Manager** module within the OpenSPP ecosystem. This module extends the eligibility management capabilities of OpenSPP, providing a flexible and efficient way to define eligibility criteria based on registrant tags and geographical areas. -### Purpose +## Purpose The **OpenSPP Tag Based Eligibility Manager** module allows program administrators to: @@ -15,7 +15,7 @@ The **OpenSPP Tag Based Eligibility Manager** module allows program administrato * **Incorporate geographical targeting:** Administrators can further refine eligibility criteria by specifying geographical areas. This enables programs to target beneficiaries residing within specific districts or regions, enhancing the precision of program targeting and resource allocation. * **Simplify and automate eligibility verification:** By defining eligibility rules based on tags and areas, the module automates the process of identifying eligible beneficiaries. This reduces manual effort, minimizes errors, and ensures consistent application of eligibility criteria. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **G2P Registry: Base ([g2p_registry_base](g2p_registry_base)(./g2p_registry_base.md))**: * Utilizes the tagging functionality of the base registry module to define eligibility rules based on registrant tags. @@ -29,7 +29,7 @@ The **OpenSPP Tag Based Eligibility Manager** module allows program administrato * Leverages the functionality of the OpenSPP Programs module, particularly its handling of program memberships and beneficiary enrollment. * Ensures compatibility with both cash and in-kind entitlement programs, allowing for tag-based eligibility determination across different program types. -### Additional Functionality +## Additional Functionality * **Tag Based Eligibility Manager Model (g2p.program_membership.manager.tags):** * This model extends the base **Eligibility Manager** model within G2P Programs, introducing fields for selecting tags and areas to define eligibility criteria. @@ -47,6 +47,6 @@ The **OpenSPP Tag Based Eligibility Manager** module allows program administrato * By leveraging tags and areas, programs can target specific segments of the population more effectively, ensuring that benefits reach the intended recipients. * This targeted approach enhances program impact and optimizes resource allocation by focusing on beneficiaries who are most likely to benefit from the program's interventions. -### Conclusion +## Conclusion The **OpenSPP Tag Based Eligibility Manager** module empowers program implementers to define sophisticated eligibility criteria using a flexible and efficient tag-based approach. By seamlessly integrating with existing OpenSPP modules and automating key processes, it simplifies program administration, enhances targeting accuracy, and contributes to the overall effectiveness of social protection and agricultural support programs. diff --git a/docs/modules/spp_encryption.md b/docs/modules/spp_encryption.md index 3d53fb94..ec517c73 100644 --- a/docs/modules/spp_encryption.md +++ b/docs/modules/spp_encryption.md @@ -7,7 +7,7 @@ The [spp_encryption](spp_encryption) module extends the encryption capabilities of OpenSPP by adding support for the [JWCrypto](https://jwcrypto.readthedocs.io/en/latest/) library. This module builds upon the foundation provided by the [g2p_encryption](g2p-encryption) and offers a concrete implementation of an encryption provider utilizing JWCrypto's functionalities. -### Purpose and Functionality +## Purpose and Functionality The primary purpose of this module is to enable secure encryption, decryption, signing, and verification of data within the OpenSPP ecosystem using JWCrypto. It provides the following functionalities: @@ -16,7 +16,7 @@ The primary purpose of this module is to enable secure encryption, decryption, s - **JWT Signing and Verification:** Utilizes JWCrypto's JWT (JSON Web Token) capabilities to sign and verify data, ensuring data integrity and authenticity. - **Key Management:** Provides functionalities to generate, store, and manage JWCrypto keys within the OpenSPP database. -### Integration and Usage +## Integration and Usage The [spp_encryption](spp_encryption) module extends the `g2p.encryption.provider` model introduced by the [g2p_encryption](g2p-encryption). It adds a new encryption provider type, "JWCrypto," which users can select and configure through the Odoo interface. @@ -26,7 +26,7 @@ Here's how this module integrates with other OpenSPP components: 2. **Configuration:** Administrators would configure a new encryption provider of type "JWCrypto" within the OpenSPP settings, providing the necessary JWCrypto key information. 3. **Utilization:** Modules requiring encryption can then utilize the configured JWCrypto provider through the standard encryption methods provided by the `g2p.encryption.provider` model. -### Example Usage Scenario +## Example Usage Scenario Let's consider a module responsible for handling beneficiary payment data. This module needs to encrypt sensitive financial information before storing or transmitting it. @@ -35,7 +35,7 @@ Let's consider a module responsible for handling beneficiary payment data. This 3. Using the provider's `encrypt_data_jwcrypto` method, the module can securely encrypt the payment data. 4. Upon retrieval, the module would use the corresponding `decrypt_data_jwcrypto` method to decrypt the data. -### Benefits of using spp_encryption: +## Benefits of using spp_encryption: - **Enhanced Security:** Leverages JWCrypto's robust cryptographic algorithms to provide strong encryption and data protection. - **Standardized Implementation:** Adheres to established standards like JWE and JWT, ensuring interoperability and security best practices. diff --git a/docs/modules/spp_entitlement_basket.md b/docs/modules/spp_entitlement_basket.md index 814a3a7c..59c0bad9 100644 --- a/docs/modules/spp_entitlement_basket.md +++ b/docs/modules/spp_entitlement_basket.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **OpenSPP Entitlement Basket** module. This module extends OpenSPP's program management by introducing the concept of predefined "baskets" of goods and services that beneficiaries are entitled to receive. -### Purpose +## Purpose The **OpenSPP Entitlement Basket** module aims to: @@ -15,7 +15,7 @@ The **OpenSPP Entitlement Basket** module aims to: * **Simplify In-Kind Entitlement Management:** Streamline the assignment of multiple products to beneficiaries using a single basket. * **Integrate with Program Cycles and Inventory:** Seamlessly connect entitlement baskets to program cycles and leverage existing inventory management features. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[g2p_registry_base](g2p_registry_base)**: Uses the base registry for core beneficiary information and links basket entitlements to beneficiary profiles. @@ -29,7 +29,7 @@ The **OpenSPP Entitlement Basket** module aims to: 6. **[stock](stock)**: Integrates with the stock module to manage inventory levels of basket products, generate procurement requests, and track stock movements upon entitlement approval. -### Additional Functionality +## Additional Functionality * **Entitlement Basket Model (spp.entitlement.basket):** Introduces a new model to define entitlement baskets, capturing: * **Products:** A list of products included in the basket. @@ -48,6 +48,6 @@ The **OpenSPP Entitlement Basket** module aims to: * **Beneficiary Entitlement View:** Extends the beneficiary profile to display a history of received entitlement baskets and the individual product entitlements within each basket. -### Conclusion +## Conclusion The **OpenSPP Entitlement Basket** module simplifies the management and distribution of complex in-kind entitlements. By bundling products into predefined baskets, it streamlines program configuration, improves efficiency, and enhances transparency for both program administrators and beneficiaries. The integration with existing OpenSPP modules ensures a cohesive and robust system for managing diverse social protection programs. diff --git a/docs/modules/spp_entitlement_cash.md b/docs/modules/spp_entitlement_cash.md index 15933021..55396c2b 100644 --- a/docs/modules/spp_entitlement_cash.md +++ b/docs/modules/spp_entitlement_cash.md @@ -7,11 +7,11 @@ This document outlines the functionality of the **OpenSPP Program Entitlement (Cash)** module. This module extends the **G2P Programs** module, providing specialized features for managing cash-based entitlements within social protection programs. -### Purpose +## Purpose The **OpenSPP Program Entitlement (Cash)** module enables the definition, calculation, and management of cash entitlements for beneficiaries enrolled in social protection programs. It streamlines the process of determining eligibility, calculating entitlement amounts based on predefined rules, and facilitating the disbursement of funds. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **G2P Registry: Base ([g2p_registry_base](g2p_registry_base)(LINK_TO_G2P_REGISTRY_BASE))**: This module utilizes the base registry to access and manage beneficiary data, ensuring that entitlements are linked to the correct individuals or households. @@ -24,7 +24,7 @@ The **OpenSPP Program Entitlement (Cash)** module enables the definition, calcul * Generating payment batches for disbursement. * Updating beneficiary records with entitlement and payment information. -### Additional Functionality +## Additional Functionality * **Cash Entitlement Manager Model (`g2p.program.entitlement.manager.cash`)**: * Extends the generic entitlement manager model (`g2p.program.entitlement.manager`) to provide cash-specific configurations and functionalities. @@ -55,6 +55,6 @@ The **OpenSPP Program Entitlement (Cash)** module enables the definition, calcul * Cash pickup points * Tracks payment status and provides reconciliation tools to manage disbursements effectively. -### Conclusion +## Conclusion The **OpenSPP Program Entitlement (Cash)** module provides a specialized toolkit for managing cash-based social assistance within a broader social protection program. Its integration with other OpenSPP modules and its flexible rule-based system make it a valuable asset for organizations seeking to deliver cash transfers efficiently and transparently. diff --git a/docs/modules/spp_entitlement_in_kind.md b/docs/modules/spp_entitlement_in_kind.md index 2fbe67f2..1d133084 100644 --- a/docs/modules/spp_entitlement_in_kind.md +++ b/docs/modules/spp_entitlement_in_kind.md @@ -7,11 +7,11 @@ This document outlines the **OpenSPP In-Kind Entitlement ([spp_entitlement_in_kind](spp_entitlement_in_kind))** module, which extends the OpenSPP platform to manage the distribution of in-kind entitlements within social protection programs. -### Purpose +## Purpose The [spp_entitlement_in_kind](spp_entitlement_in_kind) module enhances the existing **[g2p_programs](g2p_programs) (Programs)** module by introducing specific features and workflows for handling in-kind entitlements, where beneficiaries receive goods or services instead of cash transfers. -### Role and Functionality +## Role and Functionality This module builds upon the foundation established by its dependencies, focusing specifically on in-kind entitlement management: @@ -22,7 +22,7 @@ This module builds upon the foundation established by its dependencies, focusing * **[spp_service_points](spp_service_points) (OpenSPP Service Points)**: Allows for the designation of service points where beneficiaries can redeem their in-kind entitlements. * **Queue Job (queue_job)**: Employs the queue job framework to handle potentially resource-intensive operations, such as generating entitlements or updating inventory, asynchronously in the background. -### Key Features +## Key Features 1. **In-Kind Entitlement Definition:** * Extends the `g2p.entitlement.inkind` model from [g2p_programs](g2p_programs) to specifically manage in-kind entitlements. @@ -43,13 +43,13 @@ This module builds upon the foundation established by its dependencies, focusing * While not directly handled by this module, it lays the groundwork for beneficiaries to redeem their entitlements at specified service points. * Service points can use the existing **Stock** module functionality to record the outgoing delivery of goods to beneficiaries, completing the distribution cycle. -### Benefits +## Benefits * **Streamlined In-Kind Distribution:** Provides a structured approach to managing in-kind entitlements within existing social protection programs. * **Inventory Control:** Leverages Odoo's inventory management capabilities to track stock levels, movements, and potential procurement needs. * **Transparency and Accountability:** Enhances the transparency of in-kind distributions and facilitates accurate reporting on program operations. * **Improved Efficiency:** Automates key processes, such as entitlement generation and inventory updates, reducing manual effort and potential errors. -### Conclusion +## Conclusion The **OpenSPP In-Kind Entitlement ([spp_entitlement_in_kind](spp_entitlement_in_kind))** module is a valuable addition to the OpenSPP platform, extending its capabilities to effectively manage and track the distribution of in-kind benefits. By integrating with core modules like **Stock** and **[spp_service_points](spp_service_points) (OpenSPP Service Points)**, it provides a comprehensive solution for organizations implementing programs that involve the delivery of goods or services to beneficiaries. diff --git a/docs/modules/spp_event_data.md b/docs/modules/spp_event_data.md index 065d76e2..0ae0c9b1 100644 --- a/docs/modules/spp_event_data.md +++ b/docs/modules/spp_event_data.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **[spp_event_data](spp_event_data)** module within the OpenSPP ecosystem. This module is designed to record and track specific events related to registrants, building upon the functionalities offered by the base registry modules. -### Purpose +## Purpose The **[spp_event_data](spp_event_data)** module allows users to associate significant events with both individual and group registrants, enhancing the system's capacity to capture a chronological history of changes and actions. It aims to: @@ -15,14 +15,14 @@ The **[spp_event_data](spp_event_data)** module allows users to associate signif * Link these events to the specific data entries they affect, creating a clear audit trail. * Offer tools to view and navigate the event history of a registrant. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[g2p_registry_base](g2p_registry_base)**: This module relies on the foundational structure and functionalities provided by the **[g2p_registry_base](g2p_registry_base](g2p_registry_base](g2p_registry_base)**: This module relies on the foundational structure and functionalities provided by the **[g2p_registry_base)** module, specifically leveraging: * **Registrant Data**: Utilizes the core registrant information to associate events with the correct individuals or groups. 2. **[g2p_registry_group](g2p_registry_group)**: Extends its functionality by allowing event data to be linked to group registrants. 3. **Contacts (res.partner)**: Integrates with the standard Odoo Contacts module, enabling the module to link event data to the respective contact records, enriching the overall profile of the registrant. -### Additional Functionality +## Additional Functionality * **Event Data Model (spp.event.data)**: * Introduces a new data model to store event-specific information. @@ -45,6 +45,6 @@ The **[spp_event_data](spp_event_data)** module allows users to associate signif * Automatically ends the previous active event of the same type when a new one is created for the same registrant. * Provides a clear view of the current status of events related to a specific data point. -### Conclusion +## Conclusion The **[spp_event_data](spp_event_data)** module enhances OpenSPP by introducing a robust system for tracking and managing significant events throughout the lifecycle of registrants. Its tight integration with core registry modules and the Contacts module ensures that event data is seamlessly incorporated into the platform, enriching data integrity and providing a comprehensive view of registrant history. diff --git a/docs/modules/spp_event_data_program_membership.md b/docs/modules/spp_event_data_program_membership.md index 24746f43..944722a3 100644 --- a/docs/modules/spp_event_data_program_membership.md +++ b/docs/modules/spp_event_data_program_membership.md @@ -7,7 +7,7 @@ This module enhances the functionality of OpenSPP by integrating the **Event Data** module ([spp_event_data](spp_event_data)) with the **G2P Programs** module ([g2p_programs](spp_event_data](g2p_programs](spp_event_data)) with the **G2P Programs** module ([g2p_programs)). It allows users to record and track program membership-related events within the OpenSPP system. -### Purpose +## Purpose The **spp_event_data_program_membership** module serves to: @@ -15,12 +15,12 @@ The **spp_event_data_program_membership** module serves to: * **Link Events to Program Memberships:** Associate these events with the corresponding program membership records in the [g2p_programs](g2p_programs) module. * **Provide an Event History:** Offer a comprehensive history of events associated with each program membership, facilitating tracking and auditing. -### Module Integration +## Module Integration 1. **[spp_event_data](spp_event_data):** This module leverages the event data framework provided by the [spp_event_data](spp_event_data](spp_event_data](spp_event_data):** This module leverages the event data framework provided by the [spp_event_data) module to record and manage event information. 2. **[g2p_programs](g2p_programs):** It integrates directly with the [g2p_programs](g2p_programs](g2p_programs](g2p_programs):** It integrates directly with the [g2p_programs) module, linking event data to the relevant program membership records (`g2p.program_membership` model). -### Additional Functionality +## Additional Functionality * **Program Membership Field in Event Data:** * Adds a `program_membership_id` field to the `spp.event.data` model, allowing users to directly associate an event with a specific program membership. @@ -34,7 +34,7 @@ The **spp_event_data_program_membership** module serves to: * Modifies the registrant form view (`view_groups_event_data_form_custom`) to display event data in read-only mode. * Prevents accidental modification of event data from the registrant's profile. -### Usage Example +## Usage Example 1. **Recording an Enrollment Event:** A program officer enrolls a beneficiary into a social assistance program. Using this module, they can create a new event of type "Enrollment," link it to the beneficiary's newly created program membership record, and record relevant details, such as the enrollment date. @@ -42,6 +42,6 @@ The **spp_event_data_program_membership** module serves to: 3. **Viewing Event History:** Program staff can access a beneficiary's program membership record and view a chronological list of all events, providing a clear audit trail of their participation in the program. -### Conclusion +## Conclusion The **spp_event_data_program_membership** module enhances the tracking and management of program membership events within OpenSPP. By integrating event data with program memberships, it improves data integrity, transparency, and the overall efficiency of program administration. diff --git a/docs/modules/spp_event_demo.md b/docs/modules/spp_event_demo.md index 477363cd..34f4fe90 100644 --- a/docs/modules/spp_event_demo.md +++ b/docs/modules/spp_event_demo.md @@ -11,7 +11,7 @@ This module, **[spp_event_demo](spp_event_demo)**, provides demonstration data a This module directly depends on and builds upon the functionalities of the **[spp_event_data](spp_event_data)** module. While **[spp_event_data](spp_event_data)** provides the core structure for recording and managing events related to registrants, **[spp_event_demo](spp_event_data](spp_event_demo](spp_event_data)** module. While **[spp_event_data](spp_event_data)** provides the core structure for recording and managing events related to registrants, **[spp_event_demo)** demonstrates practical applications of this system through concrete examples. -### Additional Functionality and Demonstrations +## Additional Functionality and Demonstrations 1. **Predefined Event Types**: * Introduces several predefined event types, including: @@ -32,10 +32,10 @@ This module directly depends on and builds upon the functionalities of the **[sp 4. **Integration with Registrant Profiles**: * Extends the registrant profiles to display active events of each type, providing a quick overview of the latest events associated with a particular registrant. -### Example Scenario +## Example Scenario This module demonstrates how a program might use the **[spp_event_data](spp_event_data)** module. For example, a user could record a series of house visits with a beneficiary. Each house visit would be linked to the beneficiary's profile and the program could then query for all beneficiaries who have had at least one house visit, or all beneficiaries who have not had a house visit in the last 6 months. -### Conclusion +## Conclusion The **[spp_event_demo](spp_event_demo)** module serves as a practical guide and starting point for implementing custom event tracking within OpenSPP. By providing concrete examples and pre-built components, it empowers users to leverage the full potential of the **[spp_event_data](spp_event_demo](spp_event_data](spp_event_demo)** module serves as a practical guide and starting point for implementing custom event tracking within OpenSPP. By providing concrete examples and pre-built components, it empowers users to leverage the full potential of the **[spp_event_data)** module and tailor it to their specific program needs. diff --git a/docs/modules/spp_exclusion_filter.md b/docs/modules/spp_exclusion_filter.md index e09c5060..2d29c939 100644 --- a/docs/modules/spp_exclusion_filter.md +++ b/docs/modules/spp_exclusion_filter.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **OpenSPP Exclusion Filter** module. This module enhances the program creation process within OpenSPP by introducing exclusion filters during the program wizard. -### Purpose +## Purpose The **OpenSPP Exclusion Filter** module aims to: @@ -15,7 +15,7 @@ The **OpenSPP Exclusion Filter** module aims to: * **Improve Efficiency**: Reduce manual effort required to identify and exclude ineligible registrants from new programs. * **Enhance Program Accuracy**: Minimize the risk of including ineligible beneficiaries by applying pre-defined exclusion criteria. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[spp_programs](spp_programs)**: * Integrates with the OpenSPP program creation wizard, adding a dedicated step for configuring exclusion filters. @@ -29,7 +29,7 @@ The **OpenSPP Exclusion Filter** module aims to: * Extends the functionality of OpenG2P's program creation process. * Ensures compatibility with existing program management features and workflows. -### Additional Functionality +## Additional Functionality * **Program Wizard Integration**: * Adds a dedicated step to the program creation wizard, allowing program managers to select and configure exclusion filters. @@ -43,6 +43,6 @@ The **OpenSPP Exclusion Filter** module aims to: * Upon program creation, the module automatically applies the selected exclusion filters to the registry. * Flags registrants who meet the exclusion criteria, preventing them from being considered for enrollment in the program. -### Conclusion +## Conclusion The **OpenSPP Exclusion Filter** module streamlines program targeting by introducing a structured approach to excluding ineligible registrants during program creation. Its integration with the OpenSPP program wizard, reliance on registry data, and potential integration with eligibility managers enhance the efficiency and accuracy of program implementation. diff --git a/docs/modules/spp_farmer_registry_base.md b/docs/modules/spp_farmer_registry_base.md index fd6442cc..bfbbacad 100644 --- a/docs/modules/spp_farmer_registry_base.md +++ b/docs/modules/spp_farmer_registry_base.md @@ -28,30 +28,30 @@ This module aims to: ## Functionality and Integration Details -### Farmer Information +## Farmer Information * Extends the `res.partner` model (from [g2p_registry_base](g2p_registry_base)) to include farmer-specific details like years of experience, formal agricultural training, household size, etc. * Introduces a temporary model `spp.farmer` to store farmer-specific information that can be later transferred to the main `res.partner` model, ensuring data consistency. * Integrates with [g2p_registry_individual](g2p_registry_individual) to leverage existing features for managing individual registrant profiles. -### Farm Management +## Farm Management * Introduces the `Farm` model (inheriting from `res.partner`) to represent individual farms. * Links farms to land records using the `spp.land.record` model, enabling the tracking of land parcels associated with each farm. * Allows recording details about farm types, sizes, legal status, and other relevant information. -### Agricultural Activities +## Agricultural Activities * Introduces the `spp.farm.activity` model to record information about agricultural activities undertaken on each farm. * Captures data on crop cultivation, livestock rearing, and aquaculture practices. * Links activities to specific land parcels using the `spp.land.record` model, providing a granular view of land use within a farm. -### Farm Assets and Inputs +## Farm Assets and Inputs * Introduces models for managing farm assets (`spp.farm.asset`) and inputs like fertilizers (`spp.fertilizer`), chemicals (`spp.farm.chemical`), and feed items (`spp.feed.items`). * Allows associating these assets and inputs with specific farms and, optionally, to specific land parcels within a farm. -### GIS Integration +## GIS Integration * Leverages the [spp_base_gis](spp_base_gis) module to enable visualization of farm locations and land boundaries on a map. * Provides a dedicated GIS view for `res.partner` to display farms and their associated land parcels. diff --git a/docs/modules/spp_import_dci_api.md b/docs/modules/spp_import_dci_api.md index 62acfe0c..f7268eef 100644 --- a/docs/modules/spp_import_dci_api.md +++ b/docs/modules/spp_import_dci_api.md @@ -27,34 +27,34 @@ This module streamlines the process of importing and synchronizing registrant da ## Dependencies and Integration -### 1. G2P Programs ([g2p_programs](g2p_programs.md)) +## 1. G2P Programs ([g2p_programs](g2p_programs.md)) * **Integration:** Utilizes program definitions and eligibility criteria from [g2p_programs](g2p_programs.md) to potentially assign imported registrants to relevant programs based on their DCI attributes. -### 2. SPP Programs ([spp_programs](spp_programs.md)) +## 2. SPP Programs ([spp_programs](spp_programs.md)) * **Integration:** Similar to [g2p_programs](g2p_programs.md), this module might utilize in-kind entitlement logic from [spp_programs](spp_programs.md) if the imported DCI data includes information relevant to in-kind benefits. -### 3. G2P Registry: Base ([g2p_registry_base](g2p_registry_base.md)) +## 3. G2P Registry: Base ([g2p_registry_base](g2p_registry_base.md)) * **Integration:** Relies heavily on [g2p_registry_base](g2p_registry_base.md) for core registry functionality: * **Registrant Creation:** Creates new registrant records using the base model provided by [g2p_registry_base](g2p_registry_base.md). * **ID Management:** Leverages `g2p.reg.id` from [g2p_registry_base](g2p_registry_base.md) to store and manage DCI-provided identifiers. * **Relationships:** Potentially utilizes the `g2p.reg.rel` model to establish relationships between imported registrants based on DCI data. -### 4. SPP Registry Data Source ([spp_registry_data_source](spp_registry_data_source.md)) +## 4. SPP Registry Data Source ([spp_registry_data_source](spp_registry_data_source.md)) * **Integration:** Depends on [spp_registry_data_source](spp_registry_data_source.md) for: * **Data Source Configuration:** Retrieves connection details and API specifications of the external DCI registry from data source configurations defined in this module. -### 5. G2P Registry: Individual ([g2p_registry_individual](g2p_registry_individual.md)) +## 5. G2P Registry: Individual ([g2p_registry_individual](g2p_registry_individual.md)) * **Integration:** Extends the individual registrant model (`res.partner`) from [g2p_registry_individual](g2p_registry_individual.md): * **Data Population:** Populates individual-specific fields within the OpenSPP registry using mapped DCI data (e.g., name, birthdate, gender). ## Additional Functionality -### CRVS Integration +## CRVS Integration The module includes specialized components for interacting with CRVS (Civil Registration and Vital Statistics) systems, which are often DCI-compliant. These components include: diff --git a/docs/modules/spp_import_match.md b/docs/modules/spp_import_match.md index d3df9ace..2fcac934 100644 --- a/docs/modules/spp_import_match.md +++ b/docs/modules/spp_import_match.md @@ -7,7 +7,7 @@ The [spp_import_match](spp_import_match) module enhances the data import functionality within OpenSPP by enabling the matching of imported records with existing records in the database. This helps prevent duplicate entries and ensures data integrity during import processes. -### Purpose +## Purpose The primary goals of the [spp_import_match](spp_import_match) module are: @@ -15,7 +15,7 @@ The primary goals of the [spp_import_match](spp_import_match) module are: - **Improve Data Accuracy:** Ensure that imported data is linked to the correct existing records, enhancing overall data quality. - **Streamline Import Processes:** Provide a mechanism for automating record matching, reducing manual reconciliation efforts. -### Dependencies and Integration +## Dependencies and Integration 1. **[queue_job](queue_job):** This module leverages the [queue_job](queue_job](queue_job](queue_job):** This module leverages the [queue_job) module to handle asynchronous import processes. This enables the processing of large datasets in the background, preventing system slowdowns. @@ -23,7 +23,7 @@ The primary goals of the [spp_import_match](spp_import_match) module are: 3. **[base_import](base_import):** The core import functionality is inherited and extended from Odoo's built-in [base_import](base_import) module. [spp_import_match](base_import](spp_import_match](base_import):** The core import functionality is inherited and extended from Odoo's built-in [base_import](base_import) module. [spp_import_match) enhances this with capabilities for record matching during the import process. -### Functionality and Integration +## Functionality and Integration * **Import Matching Rules (spp.import.match):** This model defines the rules for matching imported data with existing records. Users can define matching criteria based on various fields and conditions. * It allows specifying which model to match against, ensuring the flexibility to work with different data types. @@ -38,7 +38,7 @@ The primary goals of the [spp_import_match](spp_import_match) module are: * **Overwriting Existing Data:** The module provides an option to overwrite existing data with imported data when a match is found. This allows users to update existing records with new information from imports while still leveraging the matching capabilities to prevent duplicates. -### Workflow Example +## Workflow Example 1. **Define Matching Rules:** An administrator configures import matching rules for the `res.partner` model (used for registrants) in the `spp.import.match` model. They specify that matching should occur based on the "National ID Number" and "Date of Birth" fields. @@ -48,6 +48,6 @@ The primary goals of the [spp_import_match](spp_import_match) module are: 4. **Data Update (Optional):** If the "Overwrite Match" option is enabled in the matching rules, the module updates the existing registrant's record with any new information from the import file. -### Conclusion +## Conclusion The [spp_import_match](spp_import_match) module significantly enhances data management within OpenSPP by providing a robust and configurable system for matching imported records with existing data. This contributes to a more accurate, reliable, and efficient data ecosystem for social protection programs. diff --git a/docs/modules/spp_manual_entitlement.md b/docs/modules/spp_manual_entitlement.md index 7be4e13e..7cdaad66 100644 --- a/docs/modules/spp_manual_entitlement.md +++ b/docs/modules/spp_manual_entitlement.md @@ -7,7 +7,7 @@ This document describes the **OpenSPP Manual Entitlement** module, which extends the OpenSPP system to allow for manual entitlement creation within social protection programs. -### Purpose +## Purpose The **OpenSPP Manual Entitlement** module aims to: @@ -17,7 +17,7 @@ The **OpenSPP Manual Entitlement** module aims to: * **Enhance Flexibility in Entitlement Management:** Offer a more flexible approach to entitlement management, accommodating situations where automated rules might not cover all beneficiary scenarios. -### Dependencies and Integration +## Dependencies and Integration 1. **Queue Job** ([queue_job](queue_job)): Utilizes the Queue Job module for asynchronous processing of entitlement creation, preventing performance issues when handling large numbers of beneficiaries. @@ -27,7 +27,7 @@ The **OpenSPP Manual Entitlement** module aims to: 4. **G2P Programs** ([g2p_programs](g2p_programs)): Extends the G2P Programs module by adding functionality to create manual entitlements within the existing program and cycle structures. -### Additional Functionality +## Additional Functionality * **Manual Entitlement Wizard:** * Introduces a wizard that guides users through the manual entitlement creation process. @@ -43,6 +43,6 @@ The **OpenSPP Manual Entitlement** module aims to: * Modifies the program cycle view to include a button to trigger the manual entitlement wizard. * Provides a visual cue within the cycle view to indicate if manual entitlement is enabled for the program. -### Conclusion +## Conclusion The **OpenSPP Manual Entitlement** module enhances the flexibility of OpenSPP's entitlement management system. By enabling manual entitlement creation, it empowers program administrators to handle situations where automated rules might not be sufficient, ensuring that all eligible beneficiaries receive their entitled benefits. This module contributes to a more inclusive and adaptable social protection program implementation. diff --git a/docs/modules/spp_openid_vci_group.md b/docs/modules/spp_openid_vci_group.md index 3c746d73..d4398d3a 100644 --- a/docs/modules/spp_openid_vci_group.md +++ b/docs/modules/spp_openid_vci_group.md @@ -5,31 +5,31 @@ **Work in Progress**: This document is actively being developed and updated. Content may be incomplete or subject to change. ``` -### Overview +## Overview The `spp_openid_vci_group` module extends the functionality of the [spp_openid_vci](spp_openid_vci) module to enable the issuance of Verifiable Credentials (VCs) specifically for groups of registrants, building upon the group management capabilities provided by the [g2p_registry_group](g2p_registry_group) module to enable the issuance of Verifiable Credentials (VCs) specifically for groups of registrants, building upon the group management capabilities provided by the [g2p_registry_group](g2p_registry_group) module. This module leverages the existing VC issuance framework to provide a streamlined process for issuing VCs that represent a group's identity and attributes. -### Purpose +## Purpose This module's primary purpose is to: - **Issue Group-Specific VCs:** Generate and issue VCs that contain information relevant to a registered group, such as the group's name, type, members, or other relevant attributes. - **Integrate with Group Management:** Seamlessly integrate with the group management functionality provided by the [g2p_registry_group](g2p_registry_group) module, allowing users to issue VCs directly from a group's profile. -### Role and Integration +## Role and Integration The `spp_openid_vci_group` module works in conjunction with the following modules: - **[spp_openid_vci](spp_openid_vci):** Inherits the core VC issuance logic, issuer management, and QR code generation functionality from this module, ensuring consistency in the issuance process for both individuals and groups. - **[g2p_registry_group](g2p_registry_group):** Fetches group-related data, such as group type and member information, to populate the claims within the VCs. The module also integrates into the group profile view to provide a user-friendly way to issue VCs. -### Additional Functionality +## Additional Functionality - **Group VCI Issuer Type:** Introduces a new "GroupRegistry" issuer type within the VCI issuer settings, allowing administrators to configure issuers specifically for generating group-related VCs. - **Group-Specific VC Issuance:** Modifies the VC issuance logic to accommodate group-related data, ensuring that the issued VCs contain information specific to the group, such as group name, type, and potentially a list of members. - **Group Profile Integration:** Adds a button to the group profile view within the [g2p_registry_group](g2p_registry_group) module to initiate the VC issuance process directly from the group's record. -### Example Usage Scenario +## Example Usage Scenario 1. **Configuration:** An administrator configures a VCI issuer with the type "GroupRegistry" and specifies the data fields for the group VC, including the group name, type, and any other relevant attributes. 2. **Data Retrieval:** When a user initiates the VC issuance process for a group, the module retrieves the necessary information from the group's record, including the group's name, type, and potentially a list of its members. @@ -37,6 +37,6 @@ The `spp_openid_vci_group` module works in conjunction with the following module 4. **QR Code Generation:** A QR code representing the issued VC is generated and associated with the group's record. 5. **Presentation on Group Profile:** The generated VC or its QR code representation can be displayed on the group's profile within the registry, allowing for easy access and verification. -### Conclusion +## Conclusion The `spp_openid_vci_group` module enhances OpenSPP's Verifiable Credential issuance capabilities by extending them to groups of registrants. It leverages the existing VC infrastructure and seamlessly integrates with the group management functionality to provide a streamlined process for issuing and managing group-specific VCs. This integration further strengthens OpenSPP's ability to provide secure and verifiable digital identities within its ecosystem, encompassing both individual and group-level representations. diff --git a/docs/modules/spp_openid_vci_individual.md b/docs/modules/spp_openid_vci_individual.md index 8ebdc8a9..b9579093 100644 --- a/docs/modules/spp_openid_vci_individual.md +++ b/docs/modules/spp_openid_vci_individual.md @@ -7,14 +7,14 @@ This module extends the OpenSPP platform's Verifiable Credentials (VC) capabilities to specifically handle VC issuance for **individual registrants**. It seamlessly integrates the OpenID Connect for Verifiable Presentations (OpenID4VP) and Decentralized Identifiers (DIDs) framework with individual registrant data managed within the OpenSPP system. -### Purpose +## Purpose The `spp_openid_vci_individual` module aims to: - **Bridge Individual Data with VCs:** Connect the VC issuance process directly to individual registrant profiles, allowing for the generation of VCs containing individual-specific attributes. - **Streamline Issuance for Individuals:** Provide a simplified and dedicated interface within the individual registrant profile for issuing VCs, enhancing user experience. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[spp_openid_vci](spp_openid_vci)**: This module inherits core functionalities from [spp_openid_vci](spp_openid_vci`](`spp_openid_vci`](`spp_openid_vci)**: This module inherits core functionalities from [`spp_openid_vci`), including: - **VCI Issuer Management:** Leverages the existing infrastructure for managing VCI issuers and their configurations. @@ -25,14 +25,14 @@ The `spp_openid_vci_individual` module aims to: - **Individual Attributes:** Fetches data fields like full name, birthdate, gender, and other relevant attributes from the individual's registry profile to populate the claims within the VC. - **Issuance Interface:** Extends the individual registrant's profile view to include an "Issue Card" button, providing a direct and contextual point for VC issuance. -### Additional Functionality +## Additional Functionality This module enhances the VC issuance process for individuals by: - **Contextual Issuance Button:** Introduces an "Issue Card" button directly within the individual registrant's profile view in the registry, making the issuance process more intuitive and user-friendly. - **Seamless Data Flow:** Automatically retrieves the necessary individual-specific attributes from the [g2p_registry_individual](g2p_registry_individual) module during VC generation, streamlining the issuance workflow. -### Example Usage Scenario +## Example Usage Scenario 1. An administrator configures a VCI issuer within the [spp_openid_vci](spp_openid_vci) module, defining the format and data fields for a "Proof of Identity" VC intended for individual registrants. 2. A user navigates to an individual's profile within the OpenSPP registry. @@ -40,6 +40,6 @@ This module enhances the VC issuance process for individuals by: 4. The module automatically fetches the individual's name, birthdate, and other relevant attributes from the [g2p_registry_individual](g2p_registry_individual) data. 5. A VC containing the individual's information is generated, signed, and encoded into a QR code, ready for display on a digital card or printed ID. -### Conclusion +## Conclusion The `spp_openid_vci_individual` module simplifies the issuance and management of Verifiable Credentials for individual registrants within the OpenSPP ecosystem. By tightly integrating with the VC infrastructure and individual registry, it empowers organizations to extend the benefits of verifiable credentials to individuals, enhancing trust and streamlining identity verification processes. diff --git a/docs/modules/spp_program_id.md b/docs/modules/spp_program_id.md index 6a5f6ab0..37fda870 100644 --- a/docs/modules/spp_program_id.md +++ b/docs/modules/spp_program_id.md @@ -7,7 +7,7 @@ This document describes the **OpenSPP Program ID** module, an extension to the OpenSPP platform. This module enhances the existing **OpenG2P: Programs** functionality by adding unique, system-generated IDs to each program for improved tracking and reference. -### Purpose +## Purpose The **OpenSPP Program ID** module aims to: @@ -15,7 +15,7 @@ The **OpenSPP Program ID** module aims to: * **Enhance Data Management**: Improve the organization and management of program data by introducing a standardized identification system. * **Facilitate Integration**: Enable seamless integration with other systems or modules by providing a consistent program identifier. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[spp_programs](spp_programs)**: * Leverages the core program management features provided by the OpenSPP Programs module. @@ -25,7 +25,7 @@ The **OpenSPP Program ID** module aims to: * Builds upon the program structure and functionality provided by the G2P Programs module. * Integrates with program views to display the generated program ID. -### Additional Functionality +## Additional Functionality * **Program ID Generation**: * Automatically generates a unique program ID using a defined sequence (`program.id.sequence`) upon program creation. @@ -41,6 +41,6 @@ The **OpenSPP Program ID** module aims to: * **List View**: Displays the `program_id` alongside other program details in the program list view. * **Form View**: Shows the `program_id` prominently within the program form view. -### Conclusion +## Conclusion The **OpenSPP Program ID** module enhances the OpenSPP platform by providing a simple yet powerful mechanism for uniquely identifying programs. This enhancement contributes to better data management, easier referencing, and smoother integration with other systems, ultimately improving the efficiency and usability of the OpenSPP platform. diff --git a/docs/modules/spp_programs.md b/docs/modules/spp_programs.md index 809c1cf8..ee58a4dd 100644 --- a/docs/modules/spp_programs.md +++ b/docs/modules/spp_programs.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **OpenSPP Programs** module. This module extends the **OpenG2P: Programs** functionality, introducing in-kind entitlement management alongside existing cash-based features. -### Purpose +## Purpose The **OpenSPP Programs** module aims to: @@ -15,7 +15,7 @@ The **OpenSPP Programs** module aims to: * **Integrate with Inventory**: Link in-kind entitlements to the Odoo Inventory module, enabling stock management, procurement, and tracking of distributed items. * **Enhance Existing Program Features**: Extend OpenG2P's program management with capabilities tailored for in-kind distributions. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[g2p_registry_base](g2p_registry_base)** : Leverages the base registry for core registrant information and extends it by adding in-kind entitlement tracking to registrant profiles. @@ -31,7 +31,7 @@ The **OpenSPP Programs** module aims to: * Links in-kind entitlements to the stock module, enabling the generation of stock movements upon entitlement approval. * Allows for the tracking of inventory levels, procurement needs, and the flow of goods from warehouses to beneficiaries. -### Additional Functionality +## Additional Functionality * **In-Kind Entitlement Model (g2p.entitlement.inkind)**: Introduces a new model specifically for managing in-kind entitlements, capturing data such as: * **Product**: The specific good or service being distributed. @@ -59,6 +59,6 @@ The **OpenSPP Programs** module aims to: * Inventory levels and procurement needs. * Service point activity and redemption rates. -### Conclusion +## Conclusion The **OpenSPP Programs** module significantly expands the OpenG2P platform's capabilities by incorporating in-kind entitlement management. This integration with inventory management and the enhancements to existing program features make OpenSPP a comprehensive solution for managing a wider range of social protection and agricultural support programs. diff --git a/docs/modules/spp_programs_compliance_criteria.md b/docs/modules/spp_programs_compliance_criteria.md index 696f77c9..ea4775ca 100644 --- a/docs/modules/spp_programs_compliance_criteria.md +++ b/docs/modules/spp_programs_compliance_criteria.md @@ -7,11 +7,11 @@ This document describes the **OpenSPP Programs: Compliance Criteria** module, an extension to the OpenSPP framework. This module adds functionality to manage compliance criteria within social protection programs. -### Purpose +## Purpose The **OpenSPP Programs: Compliance Criteria** module allows program administrators to define and enforce additional eligibility requirements beyond the initial criteria defined in the [g2p_programs](g2p_programs) module. This ensures that beneficiaries continuously meet specific conditions throughout their program participation. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. [g2p_registry_base](g2p_registry_base): Leverages basic registrant information and relationships defined in the base registry module. @@ -27,7 +27,7 @@ The **OpenSPP Programs: Compliance Criteria** module allows program administrato 6. [spp_eligibility_tags](spp_eligibility_tags): Utilizes tag-based eligibility rules as potential compliance criteria, adding another layer of flexibility. -### Additional Functionality +## Additional Functionality * **Compliance Managers (spp.compliance.manager)**: A new model that links to specific eligibility managers (SQL-based, Tag-based, etc.) and defines them as compliance criteria for a program. * **Program Compliance Configuration (g2p.program)**: Extends the program model to include a list of compliance managers, defining the specific criteria that beneficiaries must meet. @@ -37,6 +37,6 @@ The **OpenSPP Programs: Compliance Criteria** module allows program administrato * **On Entitlement Creation**: Verifies compliance before an entitlement is generated for a beneficiary. * **Beneficiary State Management**: Transitions beneficiaries between 'enrolled' and 'paused' states within a program cycle based on their compliance status. -### Conclusion +## Conclusion The **OpenSPP Programs: Compliance Criteria** module adds a crucial layer of control and flexibility to program management within OpenSPP. By allowing administrators to define and enforce ongoing compliance criteria, it ensures program integrity, targets benefits more effectively, and strengthens accountability within social protection programs. diff --git a/docs/modules/spp_registrant_import.md b/docs/modules/spp_registrant_import.md index ea88ae37..1eb52657 100644 --- a/docs/modules/spp_registrant_import.md +++ b/docs/modules/spp_registrant_import.md @@ -7,14 +7,14 @@ This document describes the **OpenSPP Registrant Import** module, which enhances the import functionality within the OpenSPP system, specifically focusing on streamlining the process of importing registrant data. It builds upon the existing import capabilities and introduces features to improve data mapping and ID management. -### Purpose +## Purpose The **OpenSPP Registrant Import** module aims to: * **Simplify Data Mapping**: Provide a more intuitive way to map imported data fields to corresponding fields in OpenSPP's registrant models. This reduces the complexity of data preparation and ensures accurate data import. * **Enhance ID Management**: Introduce a mechanism to generate and assign unique OpenSPP IDs (spp_id) to registrants during the import process. This ensures data integrity and facilitates efficient tracking and management of registrants within the system. -### Dependencies and Integration +## Dependencies and Integration 1. **OpenSPP Base** ([spp_base](spp_base)): Inherits core functionalities from the **OpenSPP Base** module, including access to registrant models and configurations. @@ -26,7 +26,7 @@ The **OpenSPP Registrant Import** module aims to: 5. **G2P Registry: Individual** ([g2p_registry_individual](g2p_registry_individual)): Integrates with the **G2P Registry: Individual** module to import individual registrant data and assign individual-specific IDs. -### Additional Functionality +## Additional Functionality * **Unique ID Generation and Assignment**: * Automatically generates unique OpenSPP IDs (spp_id) for registrants during import if an ID is not provided in the import file. @@ -36,6 +36,6 @@ The **OpenSPP Registrant Import** module aims to: * Enhances the existing import mapping interface to allow users to directly map columns from their import file to the corresponding fields in OpenSPP's registrant models. * Provides visual cues and validation during the mapping process to minimize errors and ensure accurate data association. -### Conclusion +## Conclusion The **OpenSPP Registrant Import** module streamlines the process of importing registrant data into the OpenSPP system. By simplifying data mapping and automating unique ID generation and assignment, this module enhances data integrity, reduces manual effort, and improves the overall efficiency of data management within OpenSPP. diff --git a/docs/modules/spp_registrant_tag.md b/docs/modules/spp_registrant_tag.md index 1cc031fa..a1c4903a 100644 --- a/docs/modules/spp_registrant_tag.md +++ b/docs/modules/spp_registrant_tag.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **OpenSPP Registrant Tags** module within the OpenSPP ecosystem. This module extends the tagging capabilities of the [g2p_registry_base](g2p_registry_base) module, enabling more organized and efficient management of registrant data. -### Purpose +## Purpose The **OpenSPP Registrant Tags** module aims to: @@ -15,11 +15,11 @@ The **OpenSPP Registrant Tags** module aims to: * Enhance the organization and categorization of registrants within the OpenSPP system. * Facilitate efficient searching and filtering of registrants based on assigned tags. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[g2p_registry_base](g2p_registry_base)**: This module builds upon the foundational registry functionalities provided by the **G2P Registry: Base** module. It leverages the existing tagging infrastructure within that module to ensure seamless integration. -### Functionality +## Functionality The **OpenSPP Registrant Tags** module primarily focuses on providing a dedicated interface for managing registrant tags. This includes: @@ -27,6 +27,6 @@ The **OpenSPP Registrant Tags** module primarily focuses on providing a dedicate * **Assigning Tags to Registrants**: When adding or editing registrant information, users can select and assign relevant tags from the available list. * **Filtering and Searching by Tags**: The module enables users to quickly search for registrants associated with specific tags. This streamlines data management and analysis within the registry. -### Conclusion +## Conclusion The **OpenSPP Registrant Tags** module, while seemingly simple, provides valuable functionality for organizing and managing large datasets of registrants within OpenSPP. By offering a focused approach to registrant tagging, it enhances the usability and efficiency of the overall registry system. diff --git a/docs/modules/spp_registry_group_hierarchy.md b/docs/modules/spp_registry_group_hierarchy.md index 95c2b31c..8ef205a7 100644 --- a/docs/modules/spp_registry_group_hierarchy.md +++ b/docs/modules/spp_registry_group_hierarchy.md @@ -7,7 +7,7 @@ This module builds upon the existing OpenSPP group and membership management functionalities to introduce a hierarchical structure for groups. It allows groups to be nested within other groups, creating a parent-child relationship between them. This hierarchy is beneficial for representing complex organizational structures within social protection programs or farmer registries. -### Purpose +## Purpose The **SPP Registry Group Hierarchy** module aims to: @@ -15,7 +15,7 @@ The **SPP Registry Group Hierarchy** module aims to: * **Flexible Membership**: Allow both individuals and groups to be members of a group, providing flexibility in representing different organizational models. * **Enhanced Data Management**: Improve the organization and management of groups by providing a visual representation of the group hierarchy. -### Dependencies and Integration +## Dependencies and Integration 1. **G2P Registry: Base ([g2p_registry_base](g2p_registry_base))**: Inherits core registry functionalities for managing registrant information, IDs, and relationships. @@ -25,7 +25,7 @@ The **SPP Registry Group Hierarchy** module aims to: 4. **G2P Registry: Membership ([g2p_registry_membership](g2p_registry_membership))**: Extends the membership functionality to allow groups to be members of other groups, establishing the parent-child relationship. -### Additional Functionality +## Additional Functionality * **Flexible Group Membership (`g2p.group.kind`)**: * Introduces a new field (`allow_all_member_type`) in the `g2p.group.kind` model. @@ -45,6 +45,6 @@ The **SPP Registry Group Hierarchy** module aims to: * Extends the group form view to visually represent the group hierarchy, allowing users to easily navigate between parent and child groups. * Provides clear indicators of a group's parent and child groups. -### Conclusion +## Conclusion The **SPP Registry Group Hierarchy** module adds significant value to OpenSPP by introducing the concept of nested groups. This allows for a more accurate and organized representation of complex structures commonly found in social protection programs and farmer cooperatives. The module integrates seamlessly with existing OpenSPP components, providing a user-friendly experience for managing multi-level group structures. diff --git a/docs/modules/spp_scan_id_document.md b/docs/modules/spp_scan_id_document.md index 4041adbd..f54df0a2 100644 --- a/docs/modules/spp_scan_id_document.md +++ b/docs/modules/spp_scan_id_document.md @@ -7,7 +7,7 @@ This document outlines the functionality of the **OpenSPP Registry - Scan ID Document** module. This module enhances the registrant registration process by enabling users to scan physical ID documents directly into a registrant's profile. -### Purpose +## Purpose The **OpenSPP Registry - Scan ID Document** module aims to: @@ -15,17 +15,17 @@ The **OpenSPP Registry - Scan ID Document** module aims to: * **Improve data accuracy:** Capture information directly from the source, ensuring the fidelity of ID data. * **Enhance user experience:** Provide a convenient and intuitive way for users to associate scanned ID documents with registrant records. -### Module Dependencies and Integration +## Module Dependencies and Integration 1. **[g2p_registry_base](g2p_registry_base):** Utilizes the base registrant model to store and manage the scanned ID document data. 2. **[g2p_registry_individual](g2p_registry_individual):** Integrates with the individual registrant form to provide a seamless document scanning experience. -### Additional Functionality +## Additional Functionality * **ID Document Scanning Widget:** Introduces a new widget ("id_document_reader") on the individual registrant form. This widget allows users to initiate the scanning process for physical ID documents. * **Data Extraction and Storage:** Upon scanning, the module extracts relevant information from the ID document, such as name, date of birth, and ID number. This extracted data is then automatically populated into the corresponding fields within the registrant's profile. * **Document Image Storage:** The scanned ID document is stored as an image file linked to the registrant's record, allowing for future reference and verification. -### User Interface Changes +## User Interface Changes The module adds a new button labeled "Scan Document" to the individual registrant form. Clicking this button activates the ID document scanning widget, enabling users to scan physical documents directly into the system. diff --git a/docs/modules/spp_service_point_device.md b/docs/modules/spp_service_point_device.md index 27cbc13d..274b4248 100644 --- a/docs/modules/spp_service_point_device.md +++ b/docs/modules/spp_service_point_device.md @@ -7,7 +7,7 @@ This document outlines the **OpenSPP Service Point Device** module, which extends the functionality of the **[spp_service_points](spp_service_points)** module to manage terminal devices associated with each service point. It allows for the registration and tracking of devices used at service points, including their model, Android version, and active status. -### Purpose +## Purpose The **OpenSPP Service Point Device** module aims to: @@ -16,11 +16,11 @@ The **OpenSPP Service Point Device** module aims to: * **Monitor Device Status:** Track the active status of devices to identify and manage any inactive or unavailable devices. * **Integrate with Service Points:** Seamlessly connect device information to its corresponding service point for centralized management and reporting. -### Dependencies and Integration +## Dependencies and Integration 1. **[spp_service_points](spp_service_points)**: This module directly builds upon the **OpenSPP Service Points** module. It utilizes the `spp.service.point` model to link devices to their respective service points using the `service_point_id` field. -### Additional Functionality +## Additional Functionality * **Device Management (spp.service.point.device):** * Introduces a new model (`spp.service.point.device`) specifically for managing terminal device information. @@ -31,6 +31,6 @@ The **OpenSPP Service Point Device** module aims to: * Extends the `spp.service.point` model with a new button to access and manage the associated terminal devices. * Offers a dedicated view to list and manage all devices linked to a specific service point. -### Conclusion +## Conclusion The **OpenSPP Service Point Device** module enhances the OpenSPP system by providing a structured way to manage and monitor terminal devices deployed at various service points. By centralizing device information and linking it to service points, this module contributes to better hardware resource management and supports the efficient operation of social protection programs and farmer registries. diff --git a/docs/modules/spp_service_points.md b/docs/modules/spp_service_points.md index 7799f4c7..d97ae241 100644 --- a/docs/modules/spp_service_points.md +++ b/docs/modules/spp_service_points.md @@ -7,7 +7,7 @@ This document outlines the **OpenSPP Service Points** module, which adds functionality to manage service points and their agents within the OpenSPP ecosystem. It enables the registration and tracking of service points, their associated areas, offered services, and their connection to company entities and their respective contacts. -### Purpose +## Purpose The **OpenSPP Service Points** module is designed to: @@ -17,7 +17,7 @@ The **OpenSPP Service Points** module is designed to: * **Connect with Company Entities**: Establish a relationship between service points and formal company entities within the system. * **Manage User Accounts for Contacts**: Facilitate the creation and management of user accounts for individuals associated with the company linked to a service point. -### Dependencies and Integration +## Dependencies and Integration 1. **G2P Registry: Base ([g2p_registry_base](g2p_registry_base))**: Leverages the core registrant management features provided by the **G2P Registry: Base** module. This includes the use of the `res.partner` model to represent both companies and individuals associated with service points. @@ -27,7 +27,7 @@ The **OpenSPP Service Points** module is designed to: 4. **Auth Signup (auth_signup)**: Integrates with the **Auth Signup** module to streamline the creation of user accounts for contacts associated with companies linked to service points. -### Additional Functionality +## Additional Functionality * **Service Point Management (spp.service.point)**: * Introduces a dedicated model (`spp.service.point`) for storing and managing service point data. @@ -41,6 +41,6 @@ The **OpenSPP Service Points** module is designed to: * Offers a streamlined process to automatically create user accounts for contacts associated with the company linked to a service point. * Assigns appropriate security groups to newly created users to manage access permissions. -### Conclusion +## Conclusion The **OpenSPP Service Points** module streamlines the management of service points and their agents within the OpenSPP system. It provides a structured approach to track service point details, connect them to geographical locations and company entities, and manage user accounts for individuals involved in service delivery. This contributes to a more organized and efficient operation of social protection programs and farmer registries. diff --git a/docs/modules/spp_starter.md b/docs/modules/spp_starter.md index 685092c5..00a4b0e9 100644 --- a/docs/modules/spp_starter.md +++ b/docs/modules/spp_starter.md @@ -7,24 +7,24 @@ This module serves as the starting point for configuring and launching a new OpenSPP instance. It doesn't introduce any specific business logic or data models related to social protection programs or farmer registries. Instead, it focuses on providing a basic setup and customization options for the OpenSPP platform. -### Functionality +## Functionality * **Configuration:** The module allows administrators to enable or disable the display of a custom menu entry that directs users to the OpenSPP modules and functionalities. * **User Interface:** It can replace the standard Odoo "Management" menu with a dedicated OpenSPP menu, guiding users towards the relevant features for managing social protection programs and farmer registries. -### Dependencies +## Dependencies * **base:** This module depends on the Odoo base module, inheriting its functionality for menus and user interface elements. -### Integration +## Integration The [spp_starter](spp_starter) module doesn't directly integrate with other specific modules related to social protection or farmer registries. However, it acts as a foundation upon which other modules can build and extend the platform's capabilities. By modifying the menu structure and providing configuration options, it prepares the system for the installation and utilization of more specialized modules. -### Key Components +## Key Components * **ir.config_parameter:** Utilizes configuration parameters to control the visibility of the OpenSPP menu entry, allowing administrators to customize the user experience based on the specific implementation needs. * **ir.ui.menu:** Inherits from the `ir.ui.menu` model to override the default menu visibility, replacing the standard "Management" menu with an OpenSPP-specific menu when configured. -### Usage +## Usage Once the module is installed, administrators can configure the visibility of the OpenSPP menu entry by accessing the system parameters. Depending on the chosen configuration, users will see either the standard Odoo "Management" menu or a custom OpenSPP menu, guiding them to the relevant sections for managing social protection programs and farmer registries.