├── .readthedocs.yaml ├── LICENSE ├── README.md ├── auth_signup_verify_email ├── README.rst ├── __init__.py ├── __manifest__.py ├── controllers │ ├── __init__.py │ └── main.py ├── i18n │ ├── ar.po │ ├── auth_signup_verify_email.pot │ ├── de.po │ ├── es.po │ ├── fr.po │ ├── hr.po │ ├── hr_HR.po │ ├── it.po │ ├── pt_BR.po │ ├── ro.po │ ├── sl.po │ └── tr.po ├── readme │ ├── CONFIGURE.rst │ ├── CONTRIBUTORS.rst │ ├── DESCRIPTION.rst │ ├── INSTALL.rst │ └── USAGE.rst ├── static │ └── description │ │ ├── icon.png │ │ ├── icon.svg │ │ └── index.html ├── tests │ ├── __init__.py │ └── test_verify_email.py └── views │ └── signup.xml ├── ct_client_backup ├── __init__.py ├── __manifest__.py ├── controllers │ └── __init__.py ├── data │ └── backup_ignite_cron.xml ├── models │ ├── __init__.py │ ├── models.py │ └── saas_app.py ├── security │ └── ir.model.access.csv ├── static │ └── description │ │ └── icon.png ├── views │ ├── app_views.xml │ └── views.xml └── wizards │ ├── __init__.py │ ├── backup_restore.py │ └── backup_restore.xml ├── docs ├── db_server.md ├── img │ ├── img1.png │ ├── img2.png │ ├── img3.png │ ├── img4.png │ ├── img5.png │ ├── k0.png │ ├── k1.png │ └── k2.png ├── index.md ├── k8s_cluster.md ├── manager.md ├── requirements.in └── requirements.txt ├── kk_odoo_saas ├── __init__.py ├── __manifest__.py ├── controllers │ ├── __init__.py │ └── logs_viewer.py ├── data │ ├── data.xml │ └── email_templates.xml ├── models │ ├── __init__.py │ ├── cluster.py │ ├── k8s_config.py │ ├── models.py │ ├── product_template.py │ ├── res_config_settings.py │ ├── res_users.py │ ├── saas_app_website.py │ ├── saas_package.py │ ├── saas_period_product_mixin.py │ ├── sale_order.py │ └── sale_subscription.py ├── security │ ├── ir.model.access.csv │ └── security.xml ├── static │ ├── description │ │ └── icon.png │ └── src │ │ ├── css │ │ ├── bootstrap.css │ │ ├── calculator.css │ │ ├── font-awesome.css │ │ └── logs-viewer.css │ │ ├── img │ │ ├── add-users.png │ │ ├── base.png │ │ ├── default.png │ │ ├── loader.gif │ │ ├── starter_pack.png │ │ ├── substr-users.png │ │ └── user.png │ │ ├── js │ │ ├── jquery.js │ │ ├── logs-viewer.js │ │ └── refresh_button.js │ │ └── xml │ │ └── base.xml ├── utils │ ├── __init__.py │ ├── del_git_code.py │ ├── deployment.py │ ├── ingress.py │ ├── k8s_deployment.py │ ├── logs.py │ ├── odoo_components.py │ ├── pg_query.py │ ├── pg_server.py │ ├── pv_claim.py │ ├── service.py │ └── utils.py ├── views │ ├── app_views.xml │ ├── assets.xml │ ├── config_views.xml │ ├── logs_viewer.xml │ ├── res_config_settings_views.xml │ ├── saas_app_website.xml │ ├── saas_package_views.xml │ ├── sale_subscription.xml │ └── templates.xml └── wizards │ ├── __init__.py │ ├── saas_app_delete.py │ ├── saas_app_delete.xml │ ├── update_docker_image.py │ └── update_docker_image.xml ├── mkdocs.yml ├── portal_stripe_payment ├── __init__.py ├── __manifest__.py ├── controllers │ ├── __init__.py │ └── stripe_payment.py ├── models │ ├── __init__.py │ ├── account_move.py │ ├── models.py │ ├── res_partner.py │ └── subscription.py ├── security │ └── ir.model.access.csv ├── static │ └── description │ │ └── icon.png └── views │ ├── account_move.xml │ ├── res_partner.xml │ ├── sale_subscription.xml │ └── views.xml ├── queue_job ├── README.rst ├── __init__.py ├── __manifest__.py ├── controllers │ ├── __init__.py │ └── main.py ├── data │ ├── queue_data.xml │ └── queue_job_function_data.xml ├── exception.py ├── fields.py ├── i18n │ ├── de.po │ ├── queue_job.pot │ └── zh_CN.po ├── job.py ├── jobrunner │ ├── __init__.py │ ├── channels.py │ └── runner.py ├── models │ ├── __init__.py │ ├── base.py │ ├── ir_model_fields.py │ ├── queue_job.py │ ├── queue_job_channel.py │ └── queue_job_function.py ├── post_init_hook.py ├── readme │ ├── CONFIGURE.rst │ ├── CONTRIBUTORS.rst │ ├── DESCRIPTION.rst │ ├── HISTORY.rst │ ├── INSTALL.rst │ ├── ROADMAP.rst │ └── USAGE.rst ├── security │ ├── ir.model.access.csv │ └── security.xml ├── static │ └── description │ │ ├── icon.png │ │ ├── icon.svg │ │ └── index.html ├── tests │ ├── __init__.py │ ├── common.py │ ├── test_json_field.py │ ├── test_model_job_channel.py │ ├── test_model_job_function.py │ ├── test_queue_job_protected_write.py │ ├── test_runner_channels.py │ └── test_runner_runner.py ├── views │ ├── queue_job_channel_views.xml │ ├── queue_job_function_views.xml │ ├── queue_job_menus.xml │ └── queue_job_views.xml └── wizards │ ├── __init__.py │ ├── queue_jobs_to_done.py │ ├── queue_jobs_to_done_views.xml │ ├── queue_requeue_job.py │ └── queue_requeue_job_views.xml ├── queue_job_cron ├── README.rst ├── __init__.py ├── __manifest__.py ├── data │ └── data.xml ├── i18n │ ├── de.po │ ├── queue_job_cron.pot │ └── zh_CN.po ├── models │ ├── __init__.py │ └── ir_cron.py ├── readme │ ├── CONFIGURATION.rst │ ├── CONTRIBUTORS.rst │ ├── DESCRIPTION.rst │ ├── INSTALL.rst │ └── USAGE.rst ├── static │ └── description │ │ ├── icon.png │ │ └── index.html ├── tests │ ├── __init__.py │ └── test_queue_job_cron.py └── views │ └── ir_cron_view.xml ├── queue_job_subscribe ├── README.rst ├── __init__.py ├── __manifest__.py ├── i18n │ ├── ar.po │ ├── bg.po │ ├── ca.po │ ├── da.po │ ├── de.po │ ├── el_GR.po │ ├── es.po │ ├── es_ES.po │ ├── fi.po │ ├── fr.po │ ├── fr_CH.po │ ├── hr.po │ ├── hr_HR.po │ ├── hu.po │ ├── it.po │ ├── nl.po │ ├── pt_BR.po │ ├── queue_job_subscribe.pot │ ├── sl.po │ ├── tr.po │ ├── tr_TR.po │ └── zh_CN.po ├── models │ ├── __init__.py │ ├── queue_job.py │ └── res_users.py ├── static │ └── description │ │ └── icon.png ├── tests │ ├── __init__.py │ └── test_job_subscribe.py └── views │ └── res_users_view.xml ├── smile_log ├── README.rst ├── __init__.py ├── __manifest__.py ├── i18n │ └── fr.po ├── models │ ├── __init__.py │ └── smile_log.py ├── security │ ├── ir.model.access.csv │ └── smile_log_security.xml ├── static │ └── description │ │ ├── action.png │ │ ├── exported_log.png │ │ ├── icon.png │ │ ├── index.html │ │ ├── inherit_and_import_smile_log.png │ │ ├── logs.png │ │ ├── manifest.png │ │ ├── scheduled_action.png │ │ └── smile_logs_user.png ├── tools │ ├── __init__.py │ ├── db_handler.py │ ├── db_logger.py │ └── misc.py └── views │ └── smile_log_view.xml └── tt_github_oauth_app ├── __init__.py ├── __manifest__.py ├── controllers ├── __init__.py └── tt_github_controller.py ├── data └── tt_github_auth.xml ├── models ├── __init__.py ├── tt_github_oauth_providers.py └── tt_users_git_authorisation.py ├── static ├── description │ ├── banner.gif │ ├── icon.png │ ├── images │ │ ├── FAQ.svg │ │ ├── Hot-Features-icon.svg │ │ ├── KeyHighlights.png │ │ ├── Odoo-Community-Apps.svg │ │ ├── Odoo-Customization.svg │ │ ├── Odoo-Developer-Outsourcing.svg │ │ ├── Odoo-Implementation.svg │ │ ├── Odoo-Integration-Services.svg │ │ ├── Odoo-Support-Maintenance.svg │ │ ├── Screenshot-icon.svg │ │ ├── Setup-icon.svg │ │ ├── WorkFlow-icon.svg │ │ ├── apps.png │ │ ├── auto-jobs.jpg │ │ ├── bidirectional-sync.jpg │ │ ├── custom.png │ │ ├── customer-service.png │ │ ├── customize.png │ │ ├── dashboard1.png │ │ ├── dashboard2.png │ │ ├── description-icon.svg │ │ ├── description.png │ │ ├── develop.png │ │ ├── dot-1.png │ │ ├── dot-2.png │ │ ├── dot-3.png │ │ ├── dot-4.png │ │ ├── floating-menu │ │ │ ├── Files.gif │ │ │ ├── Film.gif │ │ │ ├── Youtube.gif │ │ │ └── bg-float.svg │ │ ├── highlights.png │ │ ├── integrated.png │ │ ├── integration.png │ │ ├── keep-in-mind-image.png │ │ ├── key-higlight-updated.png │ │ ├── key-higlight.png │ │ ├── letter.svg │ │ ├── line.png │ │ ├── migrating.png │ │ ├── migration.png │ │ ├── new-tag.gif │ │ ├── order-management.jpg │ │ ├── release.png │ │ ├── s1.png │ │ ├── s2.png │ │ ├── s3.png │ │ ├── s4.png │ │ ├── smartphone.svg │ │ ├── support-1.png │ │ ├── support.png │ │ ├── support2.png │ │ ├── tortecs-logo.jpg │ │ ├── tortecs-logo1.jpg │ │ ├── tortecs_logo.jpg │ │ ├── webhook.jpg │ │ └── woocommerce-img-1.png │ ├── index.html │ ├── preview_images │ │ └── img │ │ │ ├── Export-Customer.jpg │ │ │ ├── Export-Order.jpg │ │ │ ├── Export-Product.jpg │ │ │ ├── Import-Customer.jpg │ │ │ ├── Import-Product.jpg │ │ │ ├── Import-Sale-Order.jpg │ │ │ ├── Sale-Order-Status.jpg │ │ │ └── webhook.jpg │ └── setup │ │ ├── github1.png │ │ ├── github2.png │ │ ├── github3.png │ │ ├── github4.png │ │ ├── github5.png │ │ ├── github6.png │ │ ├── setupa.png │ │ ├── setupb.png │ │ └── setupc.png └── icon.png └── views └── tt_github_oauth_providers_views.xml /.readthedocs.yaml: -------------------------------------------------------------------------------- 1 | # .readthedocs.yaml 2 | # Read the Docs configuration file 3 | # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details 4 | 5 | # Required 6 | version: 2 7 | 8 | # Set the version of Python and other tools you might need 9 | build: 10 | os: ubuntu-22.04 11 | tools: 12 | python: "3.10" 13 | 14 | mkdocs: 15 | configuration: mkdocs.yml 16 | 17 | # Optionally declare the Python requirements required to build your docs 18 | python: 19 | install: 20 | - requirements: docs/requirements.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Mohammad Awais 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # odoo-saas-kubernetes 2 | Production Ready Odoo SaaS based on Kubernetes 3 | 4 | All documentation needs to be added. 5 | 6 | if you have any questions contact us at https://cal.com/codetuple 7 | -------------------------------------------------------------------------------- /auth_signup_verify_email/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2015 Antiun Ingeniería, S.L. 2 | # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). 3 | 4 | from . import controllers 5 | -------------------------------------------------------------------------------- /auth_signup_verify_email/__manifest__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2015 Antiun Ingeniería, S.L. 2 | # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). 3 | { 4 | "name": "Verify email at signup", 5 | "summary": "Force uninvited users to use a good email for signup", 6 | "version": "14.0.1.0.0", 7 | "category": "Authentication", 8 | "website": "https://github.com/OCA/server-auth", 9 | "author": "Antiun Ingeniería S.L., " 10 | "Tecnativa, " 11 | "Odoo Community Association (OCA)", 12 | "license": "AGPL-3", 13 | "depends": ["auth_signup"], 14 | "external_dependencies": {"python": ["lxml", "email_validator"]}, 15 | "data": ["views/signup.xml"], 16 | "installable": True, 17 | } 18 | -------------------------------------------------------------------------------- /auth_signup_verify_email/controllers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2015 Antiun Ingeniería, S.L. 2 | # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). 3 | 4 | from . import main 5 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/ar.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: Odoo Server 13.0\n" 8 | "Report-Msgid-Bugs-To: \n" 9 | "PO-Revision-Date: 2021-01-06 13:44+0000\n" 10 | "Last-Translator: Rachid Al Assir \n" 11 | "Language-Team: none\n" 12 | "Language: ar\n" 13 | "MIME-Version: 1.0\n" 14 | "Content-Type: text/plain; charset=UTF-8\n" 15 | "Content-Transfer-Encoding: \n" 16 | "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " 17 | "&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" 18 | "X-Generator: Weblate 4.3.2\n" 19 | 20 | #. module: auth_signup_verify_email 21 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 22 | #, python-format 23 | msgid "Another user is already registered using this email address." 24 | msgstr "هنالك مستخدم أخر مسجل بهذا البريد الإلكتروني." 25 | 26 | #. module: auth_signup_verify_email 27 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 28 | #, python-format 29 | msgid "Check your email to activate your account!" 30 | msgstr "تحقق من بريدك الإلكتروني لتفعيل حسابك!" 31 | 32 | #. module: auth_signup_verify_email 33 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 34 | #, python-format 35 | msgid "Something went wrong, please try again later or contact us." 36 | msgstr "حدث خطأ ما، يرجى المحاولة مرة أخرى لاحقًا أو الاتصال بنا." 37 | 38 | #. module: auth_signup_verify_email 39 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 40 | #, python-format 41 | msgid "That does not seem to be an email address." 42 | msgstr "لا يبدو أن هذا عنوان بريد إلكتروني." 43 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/auth_signup_verify_email.pot: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: Odoo Server 13.0\n" 8 | "Report-Msgid-Bugs-To: \n" 9 | "Last-Translator: \n" 10 | "Language-Team: \n" 11 | "MIME-Version: 1.0\n" 12 | "Content-Type: text/plain; charset=UTF-8\n" 13 | "Content-Transfer-Encoding: \n" 14 | "Plural-Forms: \n" 15 | 16 | #. module: auth_signup_verify_email 17 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 18 | #, python-format 19 | msgid "Another user is already registered using this email address." 20 | msgstr "" 21 | 22 | #. module: auth_signup_verify_email 23 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 24 | #, python-format 25 | msgid "Check your email to activate your account!" 26 | msgstr "" 27 | 28 | #. module: auth_signup_verify_email 29 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 30 | #, python-format 31 | msgid "Something went wrong, please try again later or contact us." 32 | msgstr "" 33 | 34 | #. module: auth_signup_verify_email 35 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 36 | #, python-format 37 | msgid "That does not seem to be an email address." 38 | msgstr "" 39 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/de.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Rudolf Schnapka , 2016 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: server-tools (9.0)\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2016-06-09 12:31+0000\n" 12 | "PO-Revision-Date: 2016-05-31 14:47+0000\n" 13 | "Last-Translator: OCA Transbot \n" 14 | "Language-Team: German (http://www.transifex.com/oca/OCA-server-tools-9-0/" 15 | "language/de/)\n" 16 | "Language: de\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: \n" 20 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 21 | 22 | #. module: auth_signup_verify_email 23 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 24 | #, python-format 25 | msgid "Another user is already registered using this email address." 26 | msgstr "" 27 | 28 | #. module: auth_signup_verify_email 29 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 30 | #, python-format 31 | msgid "Check your email to activate your account!" 32 | msgstr "Prüfen Sie Ihre Email, um Ihr Konto zu aktivieren." 33 | 34 | #. module: auth_signup_verify_email 35 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 36 | #, python-format 37 | msgid "Something went wrong, please try again later or contact us." 38 | msgstr "" 39 | "Etwas ist schief gelaufen, bitte später nochmal versuchen oden an uns wenden." 40 | 41 | #. module: auth_signup_verify_email 42 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 43 | #, python-format 44 | msgid "That does not seem to be an email address." 45 | msgstr "Das schein keine Email-Adresse zu sein." 46 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/es.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Antonio Trueba, 2016 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: server-tools (9.0)\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2016-06-09 12:31+0000\n" 12 | "PO-Revision-Date: 2016-05-31 14:47+0000\n" 13 | "Last-Translator: OCA Transbot \n" 14 | "Language-Team: Spanish (http://www.transifex.com/oca/OCA-server-tools-9-0/" 15 | "language/es/)\n" 16 | "Language: es\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: \n" 20 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 21 | 22 | #. module: auth_signup_verify_email 23 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 24 | #, python-format 25 | msgid "Another user is already registered using this email address." 26 | msgstr "" 27 | 28 | #. module: auth_signup_verify_email 29 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 30 | #, python-format 31 | msgid "Check your email to activate your account!" 32 | msgstr "Revise su correo para activar su cuenta." 33 | 34 | #. module: auth_signup_verify_email 35 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 36 | #, python-format 37 | msgid "Something went wrong, please try again later or contact us." 38 | msgstr "Algo ha ido mal, por favor inténtelo de nuevo más tarde o contáctenos." 39 | 40 | #. module: auth_signup_verify_email 41 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 42 | #, python-format 43 | msgid "That does not seem to be an email address." 44 | msgstr "Eso no parece una dirección de email válida." 45 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/fr.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Alexandre Papin , 2017 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: Odoo Server 10.0\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2017-03-18 02:19+0000\n" 12 | "PO-Revision-Date: 2017-03-18 02:19+0000\n" 13 | "Last-Translator: Alexandre Papin , 2017\n" 14 | "Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n" 15 | "Language: fr\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: \n" 19 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 20 | 21 | #. module: auth_signup_verify_email 22 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 23 | #, python-format 24 | msgid "Another user is already registered using this email address." 25 | msgstr "" 26 | 27 | #. module: auth_signup_verify_email 28 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 29 | #, python-format 30 | msgid "Check your email to activate your account!" 31 | msgstr "Un email vous à été envoyé pour activer votre compte." 32 | 33 | #. module: auth_signup_verify_email 34 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 35 | #, python-format 36 | msgid "Something went wrong, please try again later or contact us." 37 | msgstr "" 38 | "Une erreur est survenue, veuillez réessayer plus tard ou contactez nous." 39 | 40 | #. module: auth_signup_verify_email 41 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 42 | #, python-format 43 | msgid "That does not seem to be an email address." 44 | msgstr "Veuillez fournir une adresse email valide." 45 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/hr.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Bole , 2017 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: Odoo Server 10.0\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2017-05-10 00:47+0000\n" 12 | "PO-Revision-Date: 2019-11-13 17:34+0000\n" 13 | "Last-Translator: Bole \n" 14 | "Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n" 15 | "Language: hr\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: \n" 19 | "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" 20 | "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" 21 | "X-Generator: Weblate 3.8\n" 22 | 23 | #. module: auth_signup_verify_email 24 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 25 | #, python-format 26 | msgid "Another user is already registered using this email address." 27 | msgstr "Drugi korisnik je već registriran sa ovom mail adresom." 28 | 29 | #. module: auth_signup_verify_email 30 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 31 | #, python-format 32 | msgid "Check your email to activate your account!" 33 | msgstr "Provjerite svoj e-mail za aktivaciu računa!" 34 | 35 | #. module: auth_signup_verify_email 36 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 37 | #, python-format 38 | msgid "Something went wrong, please try again later or contact us." 39 | msgstr "Nešto nije u redu, molimo pokušajte ponovo ili nas kontaktirajte." 40 | 41 | #. module: auth_signup_verify_email 42 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 43 | #, python-format 44 | msgid "That does not seem to be an email address." 45 | msgstr "Ovo ne izgleda kao e-mail adresa." 46 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/hr_HR.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Bole , 2016 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: server-tools (9.0)\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2016-06-29 00:48+0000\n" 12 | "PO-Revision-Date: 2016-06-13 08:38+0000\n" 13 | "Last-Translator: Bole \n" 14 | "Language-Team: Croatian (Croatia) (http://www.transifex.com/oca/OCA-server-" 15 | "tools-9-0/language/hr_HR/)\n" 16 | "Language: hr_HR\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: \n" 20 | "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" 21 | "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" 22 | 23 | #. module: auth_signup_verify_email 24 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 25 | #, python-format 26 | msgid "Another user is already registered using this email address." 27 | msgstr "" 28 | 29 | #. module: auth_signup_verify_email 30 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 31 | #, python-format 32 | msgid "Check your email to activate your account!" 33 | msgstr "Provjerite svoj mail za aktiviranje računa" 34 | 35 | #. module: auth_signup_verify_email 36 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 37 | #, python-format 38 | msgid "Something went wrong, please try again later or contact us." 39 | msgstr "" 40 | "Nešto nije u redu, molimo pokušajte se prijaviti kasnije ili nas " 41 | "kontaktirajte." 42 | 43 | #. module: auth_signup_verify_email 44 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 45 | #, python-format 46 | msgid "That does not seem to be an email address." 47 | msgstr "Ovo ne izgleda kao valjana mail adresa." 48 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/it.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Paolo Valier, 2016 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: server-tools (9.0)\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2016-06-09 12:31+0000\n" 12 | "PO-Revision-Date: 2016-05-31 14:47+0000\n" 13 | "Last-Translator: OCA Transbot \n" 14 | "Language-Team: Italian (http://www.transifex.com/oca/OCA-server-tools-9-0/" 15 | "language/it/)\n" 16 | "Language: it\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: \n" 20 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 21 | 22 | #. module: auth_signup_verify_email 23 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 24 | #, python-format 25 | msgid "Another user is already registered using this email address." 26 | msgstr "" 27 | 28 | #. module: auth_signup_verify_email 29 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 30 | #, python-format 31 | msgid "Check your email to activate your account!" 32 | msgstr "Controlla la tua email per attivare il tuo account!" 33 | 34 | #. module: auth_signup_verify_email 35 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 36 | #, python-format 37 | msgid "Something went wrong, please try again later or contact us." 38 | msgstr "" 39 | "Qualcosa non è funzionato, prego provare più tardi altrimenti mettiti in " 40 | "contatto con noi." 41 | 42 | #. module: auth_signup_verify_email 43 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 44 | #, python-format 45 | msgid "That does not seem to be an email address." 46 | msgstr "Questo non sembra essere un indirizzo email valido." 47 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/pt_BR.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: server-tools (8.0)\n" 9 | "Report-Msgid-Bugs-To: \n" 10 | "POT-Creation-Date: 2015-11-27 14:01+0000\n" 11 | "PO-Revision-Date: 2019-09-03 03:23+0000\n" 12 | "Last-Translator: Rodrigo Macedo \n" 13 | "Language-Team: Portuguese (Brazil) (http://www.transifex.com/oca/OCA-server-" 14 | "tools-8-0/language/pt_BR/)\n" 15 | "Language: pt_BR\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: \n" 19 | "Plural-Forms: nplurals=2; plural=n > 1;\n" 20 | "X-Generator: Weblate 3.8\n" 21 | 22 | #. module: auth_signup_verify_email 23 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 24 | #, python-format 25 | msgid "Another user is already registered using this email address." 26 | msgstr "Outro usuário já está registrado usando este endereço de email." 27 | 28 | #. module: auth_signup_verify_email 29 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 30 | #, python-format 31 | msgid "Check your email to activate your account!" 32 | msgstr "Verifique seu e-mail para ativar sua conta!" 33 | 34 | #. module: auth_signup_verify_email 35 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 36 | #, python-format 37 | msgid "Something went wrong, please try again later or contact us." 38 | msgstr "Ocorreu um erro. Tente novamente mais tarde ou entre em contato." 39 | 40 | #. module: auth_signup_verify_email 41 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 42 | #, python-format 43 | msgid "That does not seem to be an email address." 44 | msgstr "Esse não parece ser um endereço de email." 45 | 46 | #~ msgid "email" 47 | #~ msgstr "email" 48 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/ro.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Daniel Schweiger , 2017 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: Odoo Server 10.0\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2017-06-22 01:11+0000\n" 12 | "PO-Revision-Date: 2017-06-22 01:11+0000\n" 13 | "Last-Translator: Daniel Schweiger , 2017\n" 14 | "Language-Team: Romanian (https://www.transifex.com/oca/teams/23907/ro/)\n" 15 | "Language: ro\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: \n" 19 | "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?" 20 | "2:1));\n" 21 | 22 | #. module: auth_signup_verify_email 23 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 24 | #, python-format 25 | msgid "Another user is already registered using this email address." 26 | msgstr "" 27 | 28 | #. module: auth_signup_verify_email 29 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 30 | #, python-format 31 | msgid "Check your email to activate your account!" 32 | msgstr "Ati primit un email pentru activarea acestui cont!" 33 | 34 | #. module: auth_signup_verify_email 35 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 36 | #, python-format 37 | msgid "Something went wrong, please try again later or contact us." 38 | msgstr "" 39 | "Sa produs o eroare, va rugam sa incercati mai tarziu sau contacteaza-ne." 40 | 41 | #. module: auth_signup_verify_email 42 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 43 | #, python-format 44 | msgid "That does not seem to be an email address." 45 | msgstr "Nu ati introdus o directie email corespunzatoare." 46 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/sl.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Matjaž Mozetič , 2015 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: server-tools (9.0)\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2016-06-09 12:31+0000\n" 12 | "PO-Revision-Date: 2016-05-31 14:47+0000\n" 13 | "Last-Translator: OCA Transbot \n" 14 | "Language-Team: Slovenian (http://www.transifex.com/oca/OCA-server-tools-9-0/" 15 | "language/sl/)\n" 16 | "Language: sl\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: \n" 20 | "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n" 21 | "%100==4 ? 2 : 3);\n" 22 | 23 | #. module: auth_signup_verify_email 24 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 25 | #, python-format 26 | msgid "Another user is already registered using this email address." 27 | msgstr "" 28 | 29 | #. module: auth_signup_verify_email 30 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 31 | #, python-format 32 | msgid "Check your email to activate your account!" 33 | msgstr "Preverite svojo e-pošto za aktiviranje računa!" 34 | 35 | #. module: auth_signup_verify_email 36 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 37 | #, python-format 38 | msgid "Something went wrong, please try again later or contact us." 39 | msgstr "" 40 | "Nekaj je narobe. Ponovno poskusite kasneje ali pa stopite v stik z nami." 41 | 42 | #. module: auth_signup_verify_email 43 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 44 | #, python-format 45 | msgid "That does not seem to be an email address." 46 | msgstr "Kaže, da to ni e-poštni naslov." 47 | -------------------------------------------------------------------------------- /auth_signup_verify_email/i18n/tr.po: -------------------------------------------------------------------------------- 1 | # Translation of Odoo Server. 2 | # This file contains the translation of the following modules: 3 | # * auth_signup_verify_email 4 | # 5 | # Translators: 6 | # Ahmet Altınışık , 2016 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: server-tools (9.0)\n" 10 | "Report-Msgid-Bugs-To: \n" 11 | "POT-Creation-Date: 2016-06-09 12:31+0000\n" 12 | "PO-Revision-Date: 2016-05-31 14:47+0000\n" 13 | "Last-Translator: OCA Transbot \n" 14 | "Language-Team: Turkish (http://www.transifex.com/oca/OCA-server-tools-9-0/" 15 | "language/tr/)\n" 16 | "Language: tr\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: \n" 20 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 21 | 22 | #. module: auth_signup_verify_email 23 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 24 | #, python-format 25 | msgid "Another user is already registered using this email address." 26 | msgstr "" 27 | 28 | #. module: auth_signup_verify_email 29 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 30 | #, python-format 31 | msgid "Check your email to activate your account!" 32 | msgstr "Hesabınızı aktive etmek için e-postanızı kontrol edin!" 33 | 34 | #. module: auth_signup_verify_email 35 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 36 | #, python-format 37 | msgid "Something went wrong, please try again later or contact us." 38 | msgstr "Bişeyler ters gitti. Lütfen sonra tekrar deneyin ya da bize ulaşın." 39 | 40 | #. module: auth_signup_verify_email 41 | #: code:addons/auth_signup_verify_email/controllers/main.py:0 42 | #, python-format 43 | msgid "That does not seem to be an email address." 44 | msgstr "Bu bir e-posta adresi gözükmüyor." 45 | -------------------------------------------------------------------------------- /auth_signup_verify_email/readme/CONFIGURE.rst: -------------------------------------------------------------------------------- 1 | To configure this module, you need to: 2 | 3 | * `Properly configure your outgoing email server(s) 4 | `_. 5 | * Go to *Settings > General Settings -> General settings*, search for 6 | the *Users* section and enable *Free sign up* in *Customer account*. 7 | -------------------------------------------------------------------------------- /auth_signup_verify_email/readme/CONTRIBUTORS.rst: -------------------------------------------------------------------------------- 1 | * Rafael Blasco 2 | * Jairo Llopis 3 | * Simone Orsi 4 | * Alexandre Díaz 5 | * Eugene Molotov 6 | -------------------------------------------------------------------------------- /auth_signup_verify_email/readme/DESCRIPTION.rst: -------------------------------------------------------------------------------- 1 | This module extends the functionality of public sign up to force users to 2 | provide a valid email address. 3 | 4 | To achieve this, users are not required to provide a password at 5 | sign up: they are asked for only at first login attempt. 6 | -------------------------------------------------------------------------------- /auth_signup_verify_email/readme/INSTALL.rst: -------------------------------------------------------------------------------- 1 | * Install `email_validator `_ 2 | with ``pip install email_validator`` or equivalent. 3 | -------------------------------------------------------------------------------- /auth_signup_verify_email/readme/USAGE.rst: -------------------------------------------------------------------------------- 1 | To use this module, you need to: 2 | 3 | * Log out. 4 | * `Sign up `_ with a valid email. 5 | -------------------------------------------------------------------------------- /auth_signup_verify_email/static/description/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/herawais/odoo-saas-kubernetes/065ff3349439e5e51b541037835ff7661d47793a/auth_signup_verify_email/static/description/icon.png -------------------------------------------------------------------------------- /auth_signup_verify_email/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright 2016 Jairo Llopis 2 | # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). 3 | 4 | from . import test_verify_email 5 | -------------------------------------------------------------------------------- /auth_signup_verify_email/tests/test_verify_email.py: -------------------------------------------------------------------------------- 1 | # Copyright 2016 Jairo Llopis 2 | # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). 3 | 4 | from lxml.html import document_fromstring 5 | from mock import patch 6 | 7 | from odoo.tests.common import HttpCase 8 | from odoo.tools.misc import mute_logger 9 | 10 | from odoo.addons.mail.models import mail_template 11 | 12 | 13 | class UICase(HttpCase): 14 | def setUp(self): 15 | super().setUp() 16 | if "website" in self.env: 17 | # Enable public signup in website if it is installed; otherwise 18 | # tests here would fail 19 | current_website = self.env["website"].get_current_website() 20 | current_website.auth_signup_uninvited = "b2c" 21 | self.env["ir.config_parameter"].set_param("auth_signup.invitation_scope", "b2c") 22 | self.data = { 23 | "csrf_token": self.csrf_token(), 24 | "name": "Somebody", 25 | } 26 | 27 | def html_doc(self, url="/web/signup", data=None, timeout=30): 28 | """Get an HTML LXML document.""" 29 | with patch(mail_template.__name__ + ".MailTemplate.send_mail"): 30 | resp = self.url_open(url, data=data, timeout=timeout) 31 | return document_fromstring(resp.content) 32 | 33 | def csrf_token(self): 34 | """Get a valid CSRF token.""" 35 | doc = self.html_doc() 36 | return doc.xpath("//input[@name='csrf_token']")[0].get("value") 37 | 38 | def test_bad_email(self): 39 | """Test rejection of bad emails.""" 40 | self.data["login"] = "bad email" 41 | doc = self.html_doc(data=self.data) 42 | self.assertTrue(doc.xpath('//p[@class="alert alert-danger"]')) 43 | 44 | @mute_logger("odoo.addons.auth_signup_verify_email.controllers.main") 45 | def test_good_email(self): 46 | """Test acceptance of good emails.""" 47 | self.data["login"] = "good@example.com" 48 | doc = self.html_doc(data=self.data) 49 | self.assertTrue(doc.xpath('//p[@class="alert alert-success"]')) 50 | -------------------------------------------------------------------------------- /auth_signup_verify_email/views/signup.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 16 | 17 | -------------------------------------------------------------------------------- /ct_client_backup/__init__.py: -------------------------------------------------------------------------------- 1 | from . import models 2 | from . import wizards 3 | -------------------------------------------------------------------------------- /ct_client_backup/__manifest__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | { 3 | 'name': "Clients Periodic Backups | SaaS", 4 | 5 | 'summary': """ 6 | Take Periodic Backups of Client Instances""", 7 | 8 | 'description': """ 9 | Take Periodic Backups of Client Instances""", 10 | 11 | 'author': "Muhammad Awais", 12 | 'website': "https://codetuple.io", 13 | 'category': 'Uncategorized', 14 | 'version': '2.0.0', 15 | 16 | # any module necessary for this one to work correctly 17 | 'depends': ['base', 'kk_odoo_saas','queue_job'], 18 | 19 | # always loaded 20 | 'data': [ 21 | # "security/security.xml", 22 | 'security/ir.model.access.csv', 23 | 'wizards/backup_restore.xml', 24 | 'views/views.xml', 25 | 'views/app_views.xml', 26 | 'data/backup_ignite_cron.xml', 27 | ], 28 | "application": True, 29 | 30 | } 31 | -------------------------------------------------------------------------------- /ct_client_backup/controllers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/herawais/odoo-saas-kubernetes/065ff3349439e5e51b541037835ff7661d47793a/ct_client_backup/controllers/__init__.py -------------------------------------------------------------------------------- /ct_client_backup/data/backup_ignite_cron.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SaaS: Backup Process Ignite Cron 6 | 7 | code 8 | model.ignite_backup_server_cron() 9 | 1 10 | days 11 | -1 12 | 13 | 14 | -------------------------------------------------------------------------------- /ct_client_backup/models/__init__.py: -------------------------------------------------------------------------------- 1 | from . import saas_app 2 | from . import models 3 | -------------------------------------------------------------------------------- /ct_client_backup/security/ir.model.access.csv: -------------------------------------------------------------------------------- 1 | id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink 2 | access_saas_app_backups,access_saas_app_backups,model_kk_odoo_saas_app_backup,kk_odoo_saas.group_saas_manager,1,1,1,1 3 | access_saas_app_backup_restore_wizard,SaaS Manager Backup Restore Permissions,model_saas_client_backup_restore_wizard,kk_odoo_saas.group_saas_manager,1,1,1,1 4 | -------------------------------------------------------------------------------- /ct_client_backup/static/description/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/herawais/odoo-saas-kubernetes/065ff3349439e5e51b541037835ff7661d47793a/ct_client_backup/static/description/icon.png -------------------------------------------------------------------------------- /ct_client_backup/views/app_views.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | SaaS App inherit for Backups 7 | kk_odoo_saas.app 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 17 | 18 | 19 | 22 |