odoo-addon-l10n-th-base-utils


Nameodoo-addon-l10n-th-base-utils JSON
Version 18.0.2.0.0 PyPI version JSON
download
home_pagehttps://github.com/OCA/l10n-thailand
SummaryCollection of all Thai fonts, Convert month/year/number to thai
upload_time2025-08-09 06:02:27
maintainerNone
docs_urlNone
authorEcosoft, Odoo Community Association (OCA)
requires_python>=3.10
licenseAGPL-3
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://odoo-community.org/readme-banner-image
   :target: https://odoo-community.org/get-involved?utm_source=readme
   :alt: Odoo Community Association

===================================
Thai Localization - Base Utils Thai
===================================

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

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
    :target: https://odoo-community.org/page/development-status
    :alt: Beta
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
    :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
    :alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fl10n--thailand-lightgray.png?logo=github
    :target: https://github.com/OCA/l10n-thailand/tree/18.0/l10n_th_base_utils
    :alt: OCA/l10n-thailand
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
    :target: https://translation.odoo-community.org/projects/l10n-thailand-18-0/l10n-thailand-18-0-l10n_th_base_utils
    :alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
    :target: https://runboat.odoo-community.org/builds?repo=OCA/l10n-thailand&target_branch=18.0
    :alt: Try me on Runboat

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

This module is a utility package for Thailand, providing helper
functions commonly used in Thai-specific contexts.

It includes features such as:

- Conversion between Arabic and Thai numerals

- Thai month name and Buddhist calendar (Thai year) conversion

- Thai font support:

  - Font ``THSrisakdi``
  - Font ``THSarabunNew``
  - Font ``THSarabun``
  - Font ``THNiramitAS``
  - Font ``THMaliGrade6``
  - Font ``THKrub``
  - Font ``THKoHo``
  - Font ``THKodchasal``
  - Font ``THK2DJuly8``
  - Font ``THFahkwang``
  - Font ``THCharmonman``
  - Font ``THCharmofAU``
  - Font ``THChakraPetch``
  - Font ``THBaijam``
  - Font ``AngsanaNew``
  - Font ``Webdings``

**Table of contents**

.. contents::
   :local:

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

To configure the Thai font, go to Settings > General Settings > Business
Documents > Configure Document Layout, then select the desired font and
click Save.

Usage
=====

This module provides a utility model ``thai.utils`` for Thai
localization features such as number and date formatting. You can either
call the methods directly via the environment, or inherit the abstract
model in your own modules.

Example
=======

.. code:: python

   thai_utils = self.env["thai.utils"]

   # Convert Arabic to Thai numerals
   thai_number = thai_utils.to_thai_number("1234567890")  # → ๑๒๓๔๕๖๗๘๙๐

   # Convert Thai to Arabic numerals
   arabic_number = thai_utils.to_arabic_number("๐๘๙")  # → 089

   # Get Thai full month name
   month_name = thai_utils.thai_month_name(12)  # → ธันวาคม

   # Get Thai abbreviated month name
   month_abbr = thai_utils.thai_month_name(12, short=True)  # → ธ.ค.

   # Format date to Thai date string
   from datetime import date

   formatted_date = thai_utils.format_thai_date(date(2025, 7, 2))  # → 2 กรกฎาคม 2568

   formatted_date_short_month = thai_utils.format_thai_date(date(2025, 7, 2), month_format="short")  # → 2 ก.ค. 2568

   formatted_date_numeric_month = thai_utils.format_thai_date(date(2025, 7, 2), month_format="numeric", format_date="{day:02d}{month}{year}")  # → 02072568

   formatted_year_thai = thai_utils.format_thai_date(date(2025, 7, 2), format_date="{year}")  # → 2568

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

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

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

Credits
=======

Authors
-------

* Ecosoft

Contributors
------------

- Saran Lim. <saranl@ecosoft.co.th>
- Tharathip Chaweewongphan <tharathipc@ecosoft.co.th>
- Amin Cheloh <amincheloh@gmail.com>

Maintainers
-----------

This module is maintained by the OCA.

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

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

.. |maintainer-Saran440| image:: https://github.com/Saran440.png?size=40px
    :target: https://github.com/Saran440
    :alt: Saran440

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-Saran440| 

This module is part of the `OCA/l10n-thailand <https://github.com/OCA/l10n-thailand/tree/18.0/l10n_th_base_utils>`_ project on GitHub.

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

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/OCA/l10n-thailand",
    "name": "odoo-addon-l10n-th-base-utils",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": "Ecosoft, Odoo Community Association (OCA)",
    "author_email": "support@odoo-community.org",
    "download_url": null,
    "platform": null,
    "description": ".. image:: https://odoo-community.org/readme-banner-image\n   :target: https://odoo-community.org/get-involved?utm_source=readme\n   :alt: Odoo Community Association\n\n===================================\nThai Localization - Base Utils Thai\n===================================\n\n.. \n   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n   !! This file is generated by oca-gen-addon-readme !!\n   !! changes will be overwritten.                   !!\n   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n   !! source digest: sha256:96043c8bec394d16ce5bd523dfbd6d4a82a89a7e3a93f193205cb66801de9eef\n   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n\n.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png\n    :target: https://odoo-community.org/page/development-status\n    :alt: Beta\n.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png\n    :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html\n    :alt: License: AGPL-3\n.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fl10n--thailand-lightgray.png?logo=github\n    :target: https://github.com/OCA/l10n-thailand/tree/18.0/l10n_th_base_utils\n    :alt: OCA/l10n-thailand\n.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png\n    :target: https://translation.odoo-community.org/projects/l10n-thailand-18-0/l10n-thailand-18-0-l10n_th_base_utils\n    :alt: Translate me on Weblate\n.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png\n    :target: https://runboat.odoo-community.org/builds?repo=OCA/l10n-thailand&target_branch=18.0\n    :alt: Try me on Runboat\n\n|badge1| |badge2| |badge3| |badge4| |badge5|\n\nThis module is a utility package for Thailand, providing helper\nfunctions commonly used in Thai-specific contexts.\n\nIt includes features such as:\n\n- Conversion between Arabic and Thai numerals\n\n- Thai month name and Buddhist calendar (Thai year) conversion\n\n- Thai font support:\n\n  - Font ``THSrisakdi``\n  - Font ``THSarabunNew``\n  - Font ``THSarabun``\n  - Font ``THNiramitAS``\n  - Font ``THMaliGrade6``\n  - Font ``THKrub``\n  - Font ``THKoHo``\n  - Font ``THKodchasal``\n  - Font ``THK2DJuly8``\n  - Font ``THFahkwang``\n  - Font ``THCharmonman``\n  - Font ``THCharmofAU``\n  - Font ``THChakraPetch``\n  - Font ``THBaijam``\n  - Font ``AngsanaNew``\n  - Font ``Webdings``\n\n**Table of contents**\n\n.. contents::\n   :local:\n\nConfiguration\n=============\n\nTo configure the Thai font, go to Settings > General Settings > Business\nDocuments > Configure Document Layout, then select the desired font and\nclick Save.\n\nUsage\n=====\n\nThis module provides a utility model ``thai.utils`` for Thai\nlocalization features such as number and date formatting. You can either\ncall the methods directly via the environment, or inherit the abstract\nmodel in your own modules.\n\nExample\n=======\n\n.. code:: python\n\n   thai_utils = self.env[\"thai.utils\"]\n\n   # Convert Arabic to Thai numerals\n   thai_number = thai_utils.to_thai_number(\"1234567890\")  # \u2192 \u0e51\u0e52\u0e53\u0e54\u0e55\u0e56\u0e57\u0e58\u0e59\u0e50\n\n   # Convert Thai to Arabic numerals\n   arabic_number = thai_utils.to_arabic_number(\"\u0e50\u0e58\u0e59\")  # \u2192 089\n\n   # Get Thai full month name\n   month_name = thai_utils.thai_month_name(12)  # \u2192 \u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21\n\n   # Get Thai abbreviated month name\n   month_abbr = thai_utils.thai_month_name(12, short=True)  # \u2192 \u0e18.\u0e04.\n\n   # Format date to Thai date string\n   from datetime import date\n\n   formatted_date = thai_utils.format_thai_date(date(2025, 7, 2))  # \u2192 2 \u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21 2568\n\n   formatted_date_short_month = thai_utils.format_thai_date(date(2025, 7, 2), month_format=\"short\")  # \u2192 2 \u0e01.\u0e04. 2568\n\n   formatted_date_numeric_month = thai_utils.format_thai_date(date(2025, 7, 2), month_format=\"numeric\", format_date=\"{day:02d}{month}{year}\")  # \u2192 02072568\n\n   formatted_year_thai = thai_utils.format_thai_date(date(2025, 7, 2), format_date=\"{year}\")  # \u2192 2568\n\nBug Tracker\n===========\n\nBugs are tracked on `GitHub Issues <https://github.com/OCA/l10n-thailand/issues>`_.\nIn case of trouble, please check there if your issue has already been reported.\nIf you spotted it first, help us to smash it by providing a detailed and welcomed\n`feedback <https://github.com/OCA/l10n-thailand/issues/new?body=module:%20l10n_th_base_utils%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.\n\nDo not contact contributors directly about support or help with technical issues.\n\nCredits\n=======\n\nAuthors\n-------\n\n* Ecosoft\n\nContributors\n------------\n\n- Saran Lim. <saranl@ecosoft.co.th>\n- Tharathip Chaweewongphan <tharathipc@ecosoft.co.th>\n- Amin Cheloh <amincheloh@gmail.com>\n\nMaintainers\n-----------\n\nThis module is maintained by the OCA.\n\n.. image:: https://odoo-community.org/logo.png\n   :alt: Odoo Community Association\n   :target: https://odoo-community.org\n\nOCA, or the Odoo Community Association, is a nonprofit organization whose\nmission is to support the collaborative development of Odoo features and\npromote its widespread use.\n\n.. |maintainer-Saran440| image:: https://github.com/Saran440.png?size=40px\n    :target: https://github.com/Saran440\n    :alt: Saran440\n\nCurrent `maintainer <https://odoo-community.org/page/maintainer-role>`__:\n\n|maintainer-Saran440| \n\nThis module is part of the `OCA/l10n-thailand <https://github.com/OCA/l10n-thailand/tree/18.0/l10n_th_base_utils>`_ project on GitHub.\n\nYou are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.\n",
    "bugtrack_url": null,
    "license": "AGPL-3",
    "summary": "Collection of all Thai fonts, Convert month/year/number to thai",
    "version": "18.0.2.0.0",
    "project_urls": {
        "Homepage": "https://github.com/OCA/l10n-thailand"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f13fae2ac2d7d91f31e5122e187191bc0b394e7e1a02bcda413ca60ac0f883df",
                "md5": "9bd68850e413b9ffbbd5bcb57e749cdc",
                "sha256": "4c6871d587ded8a5f8a7167077bdb4577320fc74c88750232f1063fd0e0cacba"
            },
            "downloads": -1,
            "filename": "odoo_addon_l10n_th_base_utils-18.0.2.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9bd68850e413b9ffbbd5bcb57e749cdc",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 1213925,
            "upload_time": "2025-08-09T06:02:27",
            "upload_time_iso_8601": "2025-08-09T06:02:27.557698Z",
            "url": "https://files.pythonhosted.org/packages/f1/3f/ae2ac2d7d91f31e5122e187191bc0b394e7e1a02bcda413ca60ac0f883df/odoo_addon_l10n_th_base_utils-18.0.2.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-09 06:02:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "OCA",
    "github_project": "l10n-thailand",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "odoo-addon-l10n-th-base-utils"
}
        
Elapsed time: 0.95815s