@ -0,0 +1,50 @@ |
|||
.. image:: https://img.shields.io/badge/license-AGPL--3-blue.svg |
|||
:target: https://www.gnu.org/licenses/agpl-3.0-standalone.html |
|||
:alt: License: AGPL-3 |
|||
|
|||
Monday.com Odoo Connector |
|||
======================= |
|||
This module helps to import data from Monday.com to Odoo. |
|||
|
|||
Configuration |
|||
============= |
|||
* First you need to create Monday.com token. |
|||
1) Go to https://demos-team-team.monday.com/ and login to your account |
|||
2) Click on your profile picture at the right corner. |
|||
3) Click on Developers |
|||
4) Under My access token tab, you can see the Monday token |
|||
|
|||
License |
|||
------- |
|||
General Public License, Version 3 (AGPL v3). |
|||
(https://www.gnu.org/licenses/agpl-3.0-standalone.html) |
|||
|
|||
Company |
|||
------- |
|||
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__ |
|||
|
|||
Credits |
|||
------- |
|||
Developer: (V16) Unnimaya C O, Contact : odoo@cybrosys.com |
|||
|
|||
Contacts |
|||
-------- |
|||
* Mail Contact : odoo@cybrosys.com |
|||
* Website : https://cybrosys.com |
|||
|
|||
Bug Tracker |
|||
----------- |
|||
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. |
|||
|
|||
Maintainer |
|||
========== |
|||
.. image:: https://cybrosys.com/images/logo.png |
|||
:target: https://cybrosys.com |
|||
|
|||
This module is maintained by Cybrosys Technologies. |
|||
|
|||
For support and more information, please visit `Our Website <https://cybrosys.com/>`__ |
|||
|
|||
Further information |
|||
=================== |
|||
HTML Description: `<static/description/index.html>`__ |
@ -0,0 +1,22 @@ |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from . import models |
|||
from . import wizard |
@ -0,0 +1,51 @@ |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
{ |
|||
'name': "Monday.com Odoo Connector", |
|||
'version': '16.0.1.0.0', |
|||
'category': 'Productivity', |
|||
'summary': """Provides opportunity to connect with your Monday.com |
|||
account from Odoo""", |
|||
'description': """Monday.com Odoo connector module allows to connect with |
|||
your Monday.com account and import Users, Boards, Groups, Items and |
|||
Customers from Monday.com to Odoo""", |
|||
'author': 'Cybrosys Techno Solutions', |
|||
'company': 'Cybrosys Techno Solutions', |
|||
'maintainer': 'Cybrosys Techno Solutions', |
|||
'website': 'https://www.cybrosys.com', |
|||
'depends': ['contacts'], |
|||
'data': [ |
|||
'security/ir.model.access.csv', |
|||
'wizard/monday_connector_views.xml', |
|||
'views/monday_credential_views.xml', |
|||
'views/monday_board_views.xml', |
|||
'views/monday_group_views.xml', |
|||
'views/monday_item_views.xml', |
|||
'views/res_partner_views.xml', |
|||
'views/res_users_views.xml', |
|||
'views/item_column_value_views.xml' |
|||
], |
|||
'images': ['static/description/banner.jpg'], |
|||
'license': 'AGPL-3', |
|||
'installable': True, |
|||
'auto_install': False, |
|||
'application': True, |
|||
} |
@ -0,0 +1,7 @@ |
|||
## Module <monday_odoo_connector> |
|||
|
|||
#### 03.01.2024 |
|||
#### Version 16.0.1.0.0 |
|||
#### ADD |
|||
|
|||
- Initial commit for Monday.com Odoo Connector |
@ -0,0 +1,28 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from . import item_column_value |
|||
from . import monday_board |
|||
from . import monday_credential |
|||
from . import monday_group |
|||
from . import monday_item |
|||
from . import res_partner |
|||
from . import res_users |
@ -0,0 +1,36 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class ItemColumnValue(models.Model): |
|||
"""Class for storing Column Values of items received from Monday.com""" |
|||
_name = "item.column.value" |
|||
_description = "Monday Item Column Values" |
|||
_rec_name = "title" |
|||
|
|||
item_id = fields.Many2one('monday.item', string="Item", |
|||
help="It is the item of the group", readonly=True) |
|||
title = fields.Char(string="Title", help="Indicates title of the item", |
|||
readonly=True) |
|||
text = fields.Char(string="Text", help="Indicated text on the item", |
|||
readonly=True) |
@ -0,0 +1,43 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class MondayBoard(models.Model): |
|||
"""Class for storing Boards received from Monday.com""" |
|||
_name = "monday.board" |
|||
_description = "Monday Boards" |
|||
|
|||
name = fields.Char(string="Board", help="It is the name of the board") |
|||
board_reference = fields.Char(string="Board ID", |
|||
help="It is the reference number of the " |
|||
"board") |
|||
owner = fields.Char(string="Owner", help="It is the owner of the board") |
|||
description = fields.Char(string="Description", |
|||
help="It is the detailed description of the " |
|||
"board") |
|||
group_ids = fields.One2many('monday.group', |
|||
'board_id', string="Group", |
|||
help="It indicates the Groups of Board") |
|||
item_ids = fields.One2many('monday.item', |
|||
'board_id', string="Item", |
|||
help="It indicates the item of board") |
@ -0,0 +1,33 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class MondayCredential(models.Model): |
|||
"""Class containing Monday Credentials which is used to connect |
|||
with Monday.com""" |
|||
_name = "monday.credential" |
|||
_description = "Monday Credentials" |
|||
|
|||
name = fields.Char(string="Name", help="Account name") |
|||
token = fields.Char(string="Token", |
|||
help="Token for connecting with Monday.com") |
@ -0,0 +1,35 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class MondayGroup(models.Model): |
|||
"""Class for storing Groups received from Monday.com""" |
|||
_name = "monday.group" |
|||
_description = "Monday Groups" |
|||
|
|||
name = fields.Char(string="Name", help="It is the name of the group", |
|||
readonly=True) |
|||
group = fields.Char(string='Group ID', help="It is the id of the group", |
|||
readonly=True) |
|||
board_id = fields.Many2one('monday.board', string="Board", |
|||
help="It is the id of the board", readonly=True) |
@ -0,0 +1,39 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class MondayItem(models.Model): |
|||
"""Class for storing Items received from Monday.com""" |
|||
_name = "monday.item" |
|||
_description = "Monday Item" |
|||
|
|||
board_id = fields.Many2one('monday.board', string="Board", |
|||
help="This indicates the board") |
|||
group_id = fields.Many2one('monday.group', string="Group", |
|||
help="This indicates the group") |
|||
name = fields.Char(string="Item", help="ID of the item", readonly=True) |
|||
column_value_ids = fields.One2many('item.column.value', |
|||
'item_id', |
|||
string="Column Value", |
|||
help="It is the Column Value of the " |
|||
"item") |
@ -0,0 +1,31 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class ResPartner(models.Model): |
|||
"""Inherited to add Monday fields which helps to identify the partners |
|||
imported from Monday.com""" |
|||
_inherit = 'res.partner' |
|||
|
|||
monday_reference = fields.Boolean(string='Is Monday Contact', |
|||
help="True for contacts from Monday") |
@ -0,0 +1,31 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class ResUsers(models.Model): |
|||
"""Inherited to add Monday.com fields which is used to identify the users |
|||
inherited from Monday.com""" |
|||
_inherit = 'res.users' |
|||
|
|||
monday_reference = fields.Char(string='Monday ID', |
|||
help="It is the Monday id of the user") |
|
After Width: | Height: | Size: 3.6 KiB |
After Width: | Height: | Size: 310 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 576 B |
After Width: | Height: | Size: 733 B |
After Width: | Height: | Size: 911 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 673 B |
After Width: | Height: | Size: 878 B |
After Width: | Height: | Size: 653 B |
After Width: | Height: | Size: 905 B |
After Width: | Height: | Size: 839 B |
After Width: | Height: | Size: 427 B |
After Width: | Height: | Size: 627 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 988 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 4.4 KiB |
After Width: | Height: | Size: 589 B |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 967 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 144 KiB |
After Width: | Height: | Size: 257 KiB |
After Width: | Height: | Size: 88 KiB |
After Width: | Height: | Size: 147 KiB |
After Width: | Height: | Size: 146 KiB |
After Width: | Height: | Size: 74 KiB |
After Width: | Height: | Size: 353 KiB |
After Width: | Height: | Size: 63 KiB |
After Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 203 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 34 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 43 KiB |
After Width: | Height: | Size: 55 KiB |
After Width: | Height: | Size: 58 KiB |
After Width: | Height: | Size: 136 KiB |
After Width: | Height: | Size: 136 KiB |
After Width: | Height: | Size: 309 KiB |
After Width: | Height: | Size: 136 KiB |
After Width: | Height: | Size: 100 KiB |
After Width: | Height: | Size: 15 KiB |
@ -0,0 +1,677 @@ |
|||
<div style="background-color: #714B67; min-height: 600px; width: 100%; padding: 15px; position: relative;"> |
|||
<!-- TITLE BAR --> |
|||
<div |
|||
style="border-bottom: 1px solid #875A7B; padding: 15px; display: flex; justify-content: space-between; align-items: center;"> |
|||
<img src="assets/misc/cybrosys-logo.png" width="42" height="42" |
|||
style="width: 42px; height: 42px;"/> |
|||
<div> |
|||
<div style="color: #7C7BAD; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;" |
|||
class="mr-2"> |
|||
<i class="fa fa-check mr-1"></i>Community |
|||
</div> |
|||
<div style="color: #7C7BAD; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;" |
|||
class="mr-2"> |
|||
<i class="fa fa-check mr-1"></i>Enterprise |
|||
</div> |
|||
<div style="color: #7C7BAD; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;" |
|||
class="mr-2"> |
|||
<i class="fa fa-check mr-1"></i>Odoo.sh |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- END OF TITLE BAR --> |
|||
<!-- APP HERO --> |
|||
<h1 style="color: #FFFFFF; font-weight: bolder; font-size: 50px; text-align: center; margin-top: 50px;"> |
|||
Monday.com Odoo |
|||
Connector</h1> |
|||
<p style="color:#FFFFFF; padding: 8px 15px; text-align: center; font-size: 24px;"> |
|||
Odoo Users Can Sync Their Boards, Users, Items, Groups and Customers |
|||
From Monday.com to Odoo. </p> |
|||
<!-- END OF APP HERO --> |
|||
<img src="assets/screenshots/hero.gif" |
|||
style="width: 75%; height: auto; position: absolute; margin-left: auto; margin-right: auto; top: 45%; left: 12%; right: auto;"/> |
|||
</div> |
|||
<!-- NAVIGATION SECTION --> |
|||
<div class="d-flex align-items-center" |
|||
style="border-bottom: 2px solid #714B67; padding: 15px 0px; margin-top: 300px;"> |
|||
<div class="d-flex justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/compass.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Explore This |
|||
Module</h2> |
|||
</div> |
|||
<div class="row my-4" style="font-family: 'Montserrat', sans-serif;"> |
|||
<div class="col-sm-12 col-md-6 my-3"> |
|||
<a href="#overview"> |
|||
<div class="d-flex justify-content-between align-items-center" |
|||
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
|||
<div> |
|||
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Overview</span> |
|||
<span |
|||
style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">Learn |
|||
more about this |
|||
module</span> |
|||
</div> |
|||
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 col-md-6 my-3"> |
|||
<a href="#features"> |
|||
<div class="d-flex justify-content-between align-items-center" |
|||
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
|||
<div> |
|||
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Features</span> |
|||
<span |
|||
style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">View |
|||
features of this |
|||
module</span> |
|||
</div> |
|||
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 col-md-6 my-3"> |
|||
<a href="#screenshots"> |
|||
<div class="d-flex justify-content-between align-items-center" |
|||
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
|||
<div> |
|||
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Screenshots</span> |
|||
<span |
|||
style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">View |
|||
screenshots for this |
|||
module</span> |
|||
</div> |
|||
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
<!-- END OF NAVIGATION SECTION --> |
|||
<!-- OVERVIEW SECTION --> |
|||
<div class="d-flex align-items-center" |
|||
style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="overview"> |
|||
<div class="d-flex justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/pie-chart.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Overview |
|||
</h2> |
|||
</div> |
|||
<div class="row" |
|||
style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;"> |
|||
<div class="col-sm-12 py-4"> |
|||
Monday.com Odoo connector module allows to import Users, Boards, |
|||
Groups, Items and Customers from Monday to Odoo. The imported |
|||
features will be identified with a unique Monday id. |
|||
</div> |
|||
</div> |
|||
<!-- END OF OVERVIEW SECTION --> |
|||
<!-- FEATURES SECTION --> |
|||
<div class="d-flex align-items-center" |
|||
style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="features"> |
|||
<div class="d-flex justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/features.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Features |
|||
</h2> |
|||
</div> |
|||
<div class="row" |
|||
style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;"> |
|||
<div class="col-sm-12 col-md-6"> |
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 40px; margin-bottom: 40px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Imports Users from Monday.com</span> |
|||
</div> |
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 40px; margin-bottom: 40px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Imports Boards from Monday.com</span> |
|||
</div> |
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 30px; margin-bottom: 30px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Imports Groups from Monday.com</span> |
|||
</div> |
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 40px; margin-bottom: 40px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Imports Items from Monday.com</span> |
|||
</div> |
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 40px; margin-bottom: 40px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Imports Contacts from Monday.com</span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- END OF FEATURES SECTION --> |
|||
<!-- SCREENSHOTS SECTION --> |
|||
<div class="d-flex align-items-center" |
|||
style="border-bottom: 2px solid #714B67; padding: 15px 0px;" |
|||
id="screenshots"> |
|||
<div class="d-flex justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/pictures.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Screenshots |
|||
</h2> |
|||
</div> |
|||
<div class="row"> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Login to Monday.com account then click on the button in the top left |
|||
corner and click Explore more products. Then Select Sales |
|||
CRM.</h3> |
|||
<img src="assets/screenshots/Screenshot11.png" class="img-thumbnail"/> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Select the profile picture in the top right. Following that, select |
|||
Developers.</h3> |
|||
<img src="assets/screenshots/Screenshot.png" class="img-thumbnail"/> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
My access tokens tab will provide the access token.</h3> |
|||
<img src="assets/screenshots/Screenshot0.png" class="img-thumbnail"/> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Navigate to the Credentials menu under Configuration.</h3> |
|||
<img src="assets/screenshots/credential.png" class="img-thumbnail"/> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Add the Token to Monday Credentials</h3> |
|||
<img src="assets/screenshots/Screenshot1.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Navigate to the Connector menu under Configuration.</h3> |
|||
<img src="assets/screenshots/connector.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Import Users from Monday.com to Odoo</h3> |
|||
<p> |
|||
Choose Monday Credential and Tick Import User Checkbox |
|||
</p> |
|||
<img src="assets/screenshots/Screenshot2.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
All imported data will be available under the Imported menu.</h3> |
|||
<img src="assets/screenshots/imported.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Imported User</h3> |
|||
<img src="assets/screenshots/Screenshot3.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Import Boards from Monday.com</h3> |
|||
<p> |
|||
While ticking the checkbox Import Boards, the checkboxes for Groups |
|||
and Items enabled by default |
|||
</p> |
|||
<img src="assets/screenshots/Screenshot4.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Imported Boards</h3> |
|||
<img src="assets/screenshots/Screenshot5.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Group in imported Boards</h3> |
|||
<img src="assets/screenshots/Screenshot6.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Item in Imported Boards</h3> |
|||
<img src="assets/screenshots/Screenshot7.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Column Values that correspond to the imported Item</h3> |
|||
<img src="assets/screenshots/Screenshot8.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Import Customers from Monday.com</h3> |
|||
<img src="assets/screenshots/Screenshot9.png" class="img-thumbnail"> |
|||
</div> |
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Imported Customers</h3> |
|||
<img src="assets/screenshots/Screenshot10.png" class="img-thumbnail"> |
|||
</div> |
|||
</div> |
|||
<!-- END OF SCREENSHOTS SECTION --> |
|||
<!-- RELATED PRODUCTS --> |
|||
<div class="d-flex align-items-center" |
|||
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> |
|||
<div class="d-flex justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/categories.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Related |
|||
Products |
|||
</h2> |
|||
</div> |
|||
<div class="row"> |
|||
<div class="col-sm-12"> |
|||
<div id="demo1" class="row carousel slide" data-ride="carousel"> |
|||
<!-- The slideshow --> |
|||
<div class="carousel-inner" style="padding: 30px;"> |
|||
<div class="carousel-item" style="min-height: 198.656px;"> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/upcitemdb_integration/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/l1.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/education_erp_dashboard/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/l2.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/agriculture_management_odoo/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/l3.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
<div class="carousel-item active" |
|||
style="min-height: 198.656px;"> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/product_image_suggestion/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/l4.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/odoo_magento_2_4_5/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/l5.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/advanced_dynamic_dashboard/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/l6.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- Left and right controls --> |
|||
<a class="carousel-control-prev" href="#demo1" data-slide="prev" |
|||
style="width:35px; color:#000"> <span |
|||
class="carousel-control-prev-icon"><i |
|||
class="fa fa-chevron-left" |
|||
style="font-size:24px"></i></span> |
|||
</a> <a class="carousel-control-next" href="#demo1" |
|||
data-slide="next" style="width:35px; color:#000"> |
|||
<span class="carousel-control-next-icon"><i |
|||
class="fa fa-chevron-right" |
|||
style="font-size:24px"></i></span> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- END OF RELATED PRODUCTS --> |
|||
<!-- OUR SERVICES --> |
|||
<div class="d-flex align-items-center" |
|||
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> |
|||
<div class="d-flex justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/star.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Our Services |
|||
</h2> |
|||
</div> |
|||
<div class="container my-5"> |
|||
<div class="row"> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #1dd1a1 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/cogs.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Customization</h6> |
|||
</div> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #ff6b6b !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/wrench.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Implementation</h6> |
|||
</div> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #6462CD !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/lifebuoy.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Support</h6> |
|||
</div> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #ffa801 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/user.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Hire |
|||
Odoo |
|||
Developer</h6> |
|||
</div> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #54a0ff !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/puzzle.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Integration</h6> |
|||
</div> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #6d7680 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/update.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Migration</h6> |
|||
</div> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #786fa6 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/consultation.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Consultancy</h6> |
|||
</div> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #f8a5c2 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/training.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Implementation</h6> |
|||
</div> |
|||
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> |
|||
<div class="d-flex justify-content-center align-items-center mx-3 my-3" |
|||
style="background-color: #e6be26 !important; border-radius: 15px !important; height: 80px; width: 80px;"> |
|||
<img src="assets/icons/license.png" class="img-responsive" |
|||
height="48px" width="48px"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Licensing Consultancy</h6> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!--END OF OUR SERVICES --> |
|||
<!-- OUR INDUSTRIES --> |
|||
<div class="d-flex align-items-center" |
|||
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> |
|||
<div class="d-flex justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/corporate.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Our |
|||
Industries |
|||
</h2> |
|||
</div> |
|||
<div class="container my-5"> |
|||
<div class="row"> |
|||
<div class="col-lg-3"> |
|||
<div class="my-4 d-flex flex-column justify-content-center" |
|||
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
|||
<img src="assets/icons/trading-black.png" |
|||
class="img-responsive mb-3" height="48px" width="48px"> |
|||
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
|||
Trading |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Easily procure |
|||
and |
|||
sell your products</p> |
|||
</div> |
|||
</div> |
|||
<div class="col-lg-3"> |
|||
<div class="my-4 d-flex flex-column justify-content-center" |
|||
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
|||
<img src="assets/icons/pos-black.png" |
|||
class="img-responsive mb-3" height="48px" width="48px"> |
|||
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
|||
POS |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Easy |
|||
configuration |
|||
and convivial experience</p> |
|||
</div> |
|||
</div> |
|||
<div class="col-lg-3"> |
|||
<div class="my-4 d-flex flex-column justify-content-center" |
|||
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
|||
<img src="assets/icons/education-black.png" |
|||
class="img-responsive mb-3" height="48px" width="48px"> |
|||
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
|||
Education |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
A platform for |
|||
educational management</p> |
|||
</div> |
|||
</div> |
|||
<div class="col-lg-3"> |
|||
<div class="my-4 d-flex flex-column justify-content-center" |
|||
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
|||
<img src="assets/icons/manufacturing-black.png" |
|||
class="img-responsive mb-3" height="48px" |
|||
width="48px"> |
|||
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
|||
Manufacturing |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Plan, track and |
|||
schedule your operations</p> |
|||
</div> |
|||
</div> |
|||
<div class="col-lg-3"> |
|||
<div class="my-4 d-flex flex-column justify-content-center" |
|||
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
|||
<img src="assets/icons/ecom-black.png" |
|||
class="img-responsive mb-3" height="48px" width="48px"> |
|||
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
|||
E-commerce & Website |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Mobile |
|||
friendly, |
|||
awe-inspiring product pages</p> |
|||
</div> |
|||
</div> |
|||
<div class="col-lg-3"> |
|||
<div class="my-4 d-flex flex-column justify-content-center" |
|||
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
|||
<img src="assets/icons/service-black.png" |
|||
class="img-responsive mb-3" height="48px" width="48px"> |
|||
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
|||
Service Management |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Keep track of |
|||
services and invoice</p> |
|||
</div> |
|||
</div> |
|||
<div class="col-lg-3"> |
|||
<div class="my-4 d-flex flex-column justify-content-center" |
|||
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
|||
<img src="assets/icons/restaurant-black.png" |
|||
class="img-responsive mb-3" height="48px" width="48px"> |
|||
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
|||
Restaurant |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Run your bar or |
|||
restaurant methodically</p> |
|||
</div> |
|||
</div> |
|||
<div class="col-lg-3"> |
|||
<div class="my-4 d-flex flex-column justify-content-center" |
|||
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> |
|||
<img src="assets/icons/hotel-black.png" |
|||
class="img-responsive mb-3" height="48px" width="48px"> |
|||
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> |
|||
Hotel Management |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
An |
|||
all-inclusive |
|||
hotel management application</p> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- END OF OUR INDUSTRIES --> |
|||
<!-- SUPPORT --> |
|||
<div class="d-flex align-items-center" |
|||
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> |
|||
<div class="d-flex justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/customer-support.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Support |
|||
</h2> |
|||
</div> |
|||
<div class="container mt-5"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 col-md-6"> |
|||
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;"> |
|||
<div class="mr-4" |
|||
style="background-color: #714B67; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;"> |
|||
<img src="assets/misc/support.png" height="48" width="48" |
|||
style="width: 42px; height: 42px;"/> |
|||
</div> |
|||
<div> |
|||
<h4>Need Help?</h4> |
|||
<p style="line-height: 100%;">Got questions or need help? |
|||
Get in touch.</p> |
|||
<a href="mailto:odoo@cybrosys.com"> |
|||
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;"> |
|||
odoo@cybrosys.com</p> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="col-sm-12 col-md-6"> |
|||
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;"> |
|||
<div class="mr-4" |
|||
style="background-color: #2AC44D; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;"> |
|||
<img src="assets/misc/whatsapp.png" height="52" width="52" |
|||
style="width: 52px; height: 52px;"/> |
|||
</div> |
|||
<div> |
|||
<h4>WhatsApp</h4> |
|||
<p style="line-height: 100%;">Say hi to us on WhatsApp!</p> |
|||
<a href="https://api.whatsapp.com/send?phone=918606827707"> |
|||
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;"> |
|||
+91 86068 |
|||
27707</p> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="row"> |
|||
<div class="col-sm-12 my-5 d-flex justify-content-center align-items-center"> |
|||
<img src="assets/misc/logo.png" width="144" height="31" |
|||
style="width:144px; height: 31px; margin-top: 40px;"/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- END OF SUPPORT --> |
@ -0,0 +1,23 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<!-- Item Column Value form view--> |
|||
<record id="item_column_value_view_form" model="ir.ui.view"> |
|||
<field name="name">item.column.value.view.form</field> |
|||
<field name="model">item.column.value</field> |
|||
<field name="arch" type="xml"> |
|||
<form create="0"> |
|||
<sheet> |
|||
<group> |
|||
<group> |
|||
<field name="item_id"/> |
|||
<field name="title"/> |
|||
</group> |
|||
<group> |
|||
<field name="text"/> |
|||
</group> |
|||
</group> |
|||
</sheet> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,86 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<!-- Monday Board tree view--> |
|||
<record id="monday_board_view_tree" model="ir.ui.view"> |
|||
<field name="name">monday.board.view.tree</field> |
|||
<field name="model">monday.board</field> |
|||
<field name="arch" type="xml"> |
|||
<tree create="0" export_xlsx="0"> |
|||
<field name="board_reference"/> |
|||
<field name="name"/> |
|||
<field name="owner"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Board form view--> |
|||
<record id="monday_board_view_form" model="ir.ui.view"> |
|||
<field name="name">monday.board.view.form</field> |
|||
<field name="model">monday.board</field> |
|||
<field name="arch" type="xml"> |
|||
<form create="0"> |
|||
<sheet> |
|||
<group> |
|||
<field name="board_reference" readonly="1"/> |
|||
<field name="name" readonly="1"/> |
|||
<field name="owner" readonly="1"/> |
|||
</group> |
|||
<notebook> |
|||
<page string="Group"> |
|||
<field name="group_ids" readonly="1" |
|||
options="{'no_open': True, |
|||
'no_create': True}"> |
|||
<tree> |
|||
<field name="group"/> |
|||
<field name="name"/> |
|||
</tree> |
|||
</field> |
|||
</page> |
|||
<page string="Item"> |
|||
<field name="item_ids" options="{'create': False}"> |
|||
<tree> |
|||
<field name="name"/> |
|||
<field name="column_value_ids"/> |
|||
</tree> |
|||
</field> |
|||
</page> |
|||
</notebook> |
|||
</sheet> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Board search view--> |
|||
<record id="monday_board_view_search" model="ir.ui.view"> |
|||
<field name="name">monday.board.view.search</field> |
|||
<field name="model">monday.board</field> |
|||
<field name="arch" type="xml"> |
|||
<search> |
|||
<field name="board_reference"/> |
|||
<field name="name"/> |
|||
<field name="owner"/> |
|||
<field name="group_ids"/> |
|||
</search> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Board menu action--> |
|||
<record id="monday_board_action" model="ir.actions.act_window"> |
|||
<field name="name">Monday Boards</field> |
|||
<field name="res_model">monday.board</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="view_mode">tree,form</field> |
|||
</record> |
|||
<!-- Imported menu--> |
|||
<menuitem |
|||
id="monday_imported_menu" |
|||
name="Imported" |
|||
parent="monday_menu_root" |
|||
sequence="10" |
|||
/> |
|||
<!-- Boards menu--> |
|||
<menuitem |
|||
id="monday_board_menu" |
|||
name="Boards" |
|||
parent="monday_imported_menu" |
|||
action="monday_board_action" |
|||
sequence="1" |
|||
/> |
|||
</odoo> |
@ -0,0 +1,44 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<!-- Monday Credentials tree view--> |
|||
<record id="monday_credential_view_tree" model="ir.ui.view"> |
|||
<field name="name">monday.credential.view.tree</field> |
|||
<field name="model">monday.credential</field> |
|||
<field name="arch" type="xml"> |
|||
<tree export_xlsx="0"> |
|||
<field name="name"/> |
|||
<field name="token" password="True"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Credentials form view--> |
|||
<record id="monday_credential_view_form" model="ir.ui.view"> |
|||
<field name="name">monday.credential.view.form</field> |
|||
<field name="model">monday.credential</field> |
|||
<field name="arch" type="xml"> |
|||
<form create="0"> |
|||
<sheet> |
|||
<group> |
|||
<field name="name" string="Name"/> |
|||
<field name="token" password="True" required="1"/> |
|||
</group> |
|||
</sheet> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Credentials menu action--> |
|||
<record id="monday_credential_action" model="ir.actions.act_window"> |
|||
<field name="name">Monday Credential</field> |
|||
<field name="res_model">monday.credential</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="view_mode">tree,form</field> |
|||
</record> |
|||
<!-- Credentials menu--> |
|||
<menuitem |
|||
id="monday_credential_menu" |
|||
name="Credentials" |
|||
sequence="2" |
|||
parent="monday_configuration_menu" |
|||
action="monday_credential_action" |
|||
/> |
|||
</odoo> |
@ -0,0 +1,34 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<!-- Monday Group tree view--> |
|||
<record id="monday_group_view_tree" model="ir.ui.view"> |
|||
<field name="name">monday.group.view.tree</field> |
|||
<field name="model">monday.group</field> |
|||
<field name="arch" type="xml"> |
|||
<tree export_xlsx="0"> |
|||
<field name="name"/> |
|||
<field name="group"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Group form view--> |
|||
<record id="monday_group_view_form" model="ir.ui.view"> |
|||
<field name="name">monday.group.view.form</field> |
|||
<field name="model">monday.group</field> |
|||
<field name="arch" type="xml"> |
|||
<form create="0"> |
|||
<sheet> |
|||
<group> |
|||
<group> |
|||
<field name="name"/> |
|||
<field name="group"/> |
|||
</group> |
|||
<group> |
|||
<field name="board_id"/> |
|||
</group> |
|||
</group> |
|||
</sheet> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,40 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<!-- Monday Item tree view--> |
|||
<record id="monday_item_view_tree" model="ir.ui.view"> |
|||
<field name="name">monday.item.view.tree</field> |
|||
<field name="model">monday.item</field> |
|||
<field name="arch" type="xml"> |
|||
<tree create="0" export_xlsx="false"> |
|||
<field name="name"/> |
|||
<field name="column_value_ids" |
|||
options="{'no_create': True}"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Item form view--> |
|||
<record id="monday_item_view_form" model="ir.ui.view"> |
|||
<field name="name">monday.item.view.form</field> |
|||
<field name="model">monday.item</field> |
|||
<field name="arch" type="xml"> |
|||
<form create="0"> |
|||
<sheet> |
|||
<group> |
|||
<field name="name"/> |
|||
</group> |
|||
<notebook> |
|||
<page string="Colum Values"> |
|||
<field name="column_value_ids" |
|||
options="{'create': False}"> |
|||
<tree> |
|||
<field name="title"/> |
|||
<field name="text"/> |
|||
</tree> |
|||
</field> |
|||
</page> |
|||
</notebook> |
|||
</sheet> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,61 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<odoo> |
|||
<!-- Res partner form view inherited for disabling the create button--> |
|||
<record id="view_partner_form" model="ir.ui.view"> |
|||
<field name="name">res.partner.view.form.inherit.monday.odoo.connector |
|||
</field> |
|||
<field name="model">res.partner</field> |
|||
<field name="type">form</field> |
|||
<field name="inherit_id" ref="base.view_partner_form"/> |
|||
<field name="arch" type="xml"> |
|||
<xpath expr="//form" position="attributes"> |
|||
<attribute name="create">false</attribute> |
|||
</xpath> |
|||
</field> |
|||
</record> |
|||
<!-- Res partner kanban view inherited for disabling the create button--> |
|||
<record id="res_partner_kanban_view" model="ir.ui.view"> |
|||
<field name="name">res.partner.view.kanban.inherit.monday.odoo.connector |
|||
</field> |
|||
<field name="model">res.partner</field> |
|||
<field name="type">kanban</field> |
|||
<field name="inherit_id" ref="base.res_partner_kanban_view"/> |
|||
<field name="arch" type="xml"> |
|||
<xpath expr="//kanban" position="attributes"> |
|||
<attribute name="create">false</attribute> |
|||
</xpath> |
|||
</field> |
|||
</record> |
|||
<!-- Res partner tree inherited for disabling the create button--> |
|||
<record id="view_partner_tree" model="ir.ui.view"> |
|||
<field name="name">res.partner.view.tree.inherit.monday.odoo.connector |
|||
</field> |
|||
<field name="model">res.partner</field> |
|||
<field name="type">tree</field> |
|||
<field name="inherit_id" ref="base.view_partner_tree"/> |
|||
<field name="arch" type="xml"> |
|||
<xpath expr="//tree" position="attributes"> |
|||
<attribute name="create">false</attribute> |
|||
</xpath> |
|||
<xpath expr="//tree" position="attributes"> |
|||
<attribute name="export_xlsx">0</attribute> |
|||
</xpath> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Customer menu action--> |
|||
<record id="res_partner_action" model="ir.actions.act_window"> |
|||
<field name="name">Monday Customers</field> |
|||
<field name="res_model">res.partner</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="view_mode">kanban,tree,form</field> |
|||
<field name="domain">[('monday_reference', '=', True)]</field> |
|||
</record> |
|||
<!-- Customer menu--> |
|||
<menuitem |
|||
id="res_partner_menu" |
|||
name="Customers" |
|||
parent="monday_imported_menu" |
|||
action="res_partner_action" |
|||
sequence="3" |
|||
/> |
|||
</odoo> |
@ -0,0 +1,62 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<odoo> |
|||
<!-- Res user form inherited to disable |
|||
the create button --> |
|||
<record id="view_users_simple_form" model="ir.ui.view"> |
|||
<field name="name">res.users.view.form.inherit.monday.odoo.connector |
|||
</field> |
|||
<field name="model">res.users</field> |
|||
<field name="type">form</field> |
|||
<field name="inherit_id" ref="base.view_users_simple_form"/> |
|||
<field name="arch" type="xml"> |
|||
<xpath expr="//form" position="attributes"> |
|||
<attribute name="create">false</attribute> |
|||
</xpath> |
|||
</field> |
|||
</record> |
|||
<!-- Res User kanban view Inherited for disabling the create button--> |
|||
<record id="view_res_users_kanban" model="ir.ui.view"> |
|||
<field name="name">res.users.view.kanban.inherit.monday.odoo.connector |
|||
</field> |
|||
<field name="model">res.users</field> |
|||
<field name="type">kanban</field> |
|||
<field name="inherit_id" ref="base.view_res_users_kanban"/> |
|||
<field name="arch" type="xml"> |
|||
<xpath expr="//kanban" position="attributes"> |
|||
<attribute name="create">false</attribute> |
|||
</xpath> |
|||
</field> |
|||
</record> |
|||
<!-- Res User kanban tree inherited for disabling the create button--> |
|||
<record id="view_users_tree" model="ir.ui.view"> |
|||
<field name="name">res.users.view.tree.inherit.monday.odoo.connector |
|||
</field> |
|||
<field name="model">res.users</field> |
|||
<field name="type">tree</field> |
|||
<field name="inherit_id" ref="base.view_users_tree"/> |
|||
<field name="arch" type="xml"> |
|||
<xpath expr="//tree" position="attributes"> |
|||
<attribute name="create">false</attribute> |
|||
</xpath> |
|||
<xpath expr="//tree" position="attributes"> |
|||
<attribute name="export_xlsx">0</attribute> |
|||
</xpath> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Users menu action--> |
|||
<record id="res_user_action" model="ir.actions.act_window"> |
|||
<field name="name">Monday Users</field> |
|||
<field name="res_model">res.users</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="view_mode">kanban,tree,form</field> |
|||
<field name="domain">[('monday_reference', '!=', False)]</field> |
|||
</record> |
|||
<!-- Users menu--> |
|||
<menuitem |
|||
id="res_user_menu" |
|||
name="Users" |
|||
parent="monday_imported_menu" |
|||
action="res_user_action" |
|||
sequence="3" |
|||
/> |
|||
</odoo> |
@ -0,0 +1,22 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
from . import monday_connector |
@ -0,0 +1,140 @@ |
|||
# -*- coding: utf-8 -*- |
|||
################################################################################ |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>). |
|||
# Author: Unnimaya C O (odoo@cybrosys.com) |
|||
# |
|||
# You can modify it under the terms of the GNU AFFERO |
|||
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE |
|||
# (AGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
################################################################################ |
|||
import requests |
|||
from odoo import fields, models |
|||
from odoo.exceptions import ValidationError |
|||
|
|||
|
|||
class MondayConnector(models.TransientModel): |
|||
_name = 'monday.connector' |
|||
_description = 'Monday Connector' |
|||
_rec_name = 'credential_id' |
|||
|
|||
credential_id = fields.Many2one('monday.credential', required="True", |
|||
string="Monday Credentials", |
|||
help="Select the credential for connecting" |
|||
" with Monday.com") |
|||
import_user = fields.Boolean(string="Import User", |
|||
help="Check if you want to import user") |
|||
import_board = fields.Boolean(string="Import Board", |
|||
help="Check if you want to import board") |
|||
import_group = fields.Boolean(string="Import Group", |
|||
help="If you want to import the board, " |
|||
"groups will also imported", |
|||
readonly=True, default=True) |
|||
import_item = fields.Boolean(string="Import Item", |
|||
help="If you want to import the board, " |
|||
"items will also imported", |
|||
readonly=True, default=True) |
|||
import_contact = fields.Boolean(string="Import Customer", |
|||
help="Check if you want to import contact") |
|||
|
|||
def action_execute(self): |
|||
"""Function for executing Import and Export between Odoo and |
|||
Monday.com""" |
|||
if self.import_board: |
|||
self.get_boards("https://api.monday.com/v2", |
|||
{"Authorization": self.credential_id.token}) |
|||
if self.import_user: |
|||
self.get_users("https://api.monday.com/v2", |
|||
{"Authorization": self.credential_id.token}) |
|||
|
|||
def get_boards(self, url, headers): |
|||
"""Function for receiving Boards from Monday.com""" |
|||
vals = {} |
|||
response = requests.post(url=url, json={ |
|||
'query': '{boards{ name id owner{name} groups{title id} ' |
|||
'items { name column_values{title id type text } }} }'}, |
|||
headers=headers, timeout=10) |
|||
board = self.env['monday.board'].search([]).mapped('board_reference') |
|||
if 'error_code' in response.json().keys(): |
|||
raise ValidationError(response.json()['error_message']) |
|||
if 'errors' in response.json().keys(): |
|||
raise ValidationError(response.json()['errors']) |
|||
for rec in response.json()['data']['boards']: |
|||
if rec['id'] not in board: |
|||
# Create Board |
|||
board_obj = self.env['monday.board'].create([{ |
|||
'name': rec['name'], |
|||
'board_reference': rec['id'], |
|||
'owner': rec['owner']['name'] |
|||
}]) |
|||
else: |
|||
board_obj = self.env['monday.board'].search([('board_reference', |
|||
'=', rec['id'])]) |
|||
for item in rec['groups']: |
|||
board_obj.write({ |
|||
'group_ids': [ |
|||
(0, 0, |
|||
{'name': item['title'], |
|||
'group': item['id']}), |
|||
] |
|||
}) |
|||
for item in rec['items']: |
|||
# Update Items |
|||
board_obj.write({ |
|||
'item_ids': [ |
|||
(0, 0, |
|||
{'name': item['name'], |
|||
'column_value_ids': [ |
|||
(0, 0, |
|||
{'title': value['title'], |
|||
'item_id': value['id'], |
|||
'text': value['text'], |
|||
}) for value in item['column_values'] |
|||
] |
|||
}), ]}) |
|||
if rec['name'] == 'Contacts' and self.import_contact: |
|||
for value in item['column_values']: |
|||
vals[value['title']] = value['text'] |
|||
partner = self.env['res.partner'].search([]).mapped( |
|||
'monday_reference') |
|||
if vals['Email'] not in partner: |
|||
# Create User |
|||
self.env['res.partner'].create({ |
|||
'name': item['name'], |
|||
'phone': vals['Phone'], |
|||
'email': vals['Email'], |
|||
'company_name': vals[ |
|||
'Company'] if 'Company' in vals.keys() |
|||
else False, |
|||
'monday_reference': True |
|||
}) |
|||
|
|||
def get_users(self, apiurl, headers): |
|||
"""Function for receiving Users from Monday.com""" |
|||
response = requests.post(url=apiurl, |
|||
json={'query': '{users { id name email }}'}, |
|||
headers=headers, timeout=10) |
|||
if 'error_code' in response.json().keys(): |
|||
raise ValidationError(response.json()['error_message']) |
|||
if 'errors' in response.json().keys(): |
|||
raise ValidationError(response.json()['errors']) |
|||
for rec in response.json()['data']['users']: |
|||
if not self.env['res.users'].search([('login', '=', rec['email'])]): |
|||
self.env['res.users'].create({ |
|||
'name': rec['name'], |
|||
'email': rec['email'], |
|||
'login': rec['email'], |
|||
'password': 'demo_password', |
|||
'monday_reference': rec['id'] |
|||
}) |
@ -0,0 +1,75 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<!-- Monday Connector form view--> |
|||
<record id="monday_connector_view_form" model="ir.ui.view"> |
|||
<field name="name">monday.connector.view.form</field> |
|||
<field name="model">monday.connector</field> |
|||
<field name="arch" type="xml"> |
|||
<form create="0"> |
|||
<sheet> |
|||
<group> |
|||
<field name="credential_id" |
|||
options="{'no_create': True, |
|||
'no_create_edit':True}" |
|||
string="Monday Credentials"/> |
|||
</group> |
|||
<group> |
|||
<group> |
|||
<field name="import_user"/> |
|||
<field name="import_board"/> |
|||
<field name="import_contact" |
|||
attrs="{'invisible':[('import_board', |
|||
'=',False)]}"/> |
|||
</group> |
|||
<group> |
|||
<field name="import_group" |
|||
attrs="{'invisible':[('import_board', |
|||
'=',False)]}"/> |
|||
<field name="import_item" |
|||
attrs="{'invisible':[('import_board', |
|||
'=',False)]}"/> |
|||
</group> |
|||
</group> |
|||
<group> |
|||
</group> |
|||
<footer> |
|||
<button string="Execute" class="oe_highlight" |
|||
type="object" name="action_execute"/> |
|||
<button string="Cancel" special="cancel" |
|||
class="btn btn-secondary"/> |
|||
</footer> |
|||
</sheet> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
<!-- Monday Connector action--> |
|||
<record id="monday_connector_action" model="ir.actions.act_window"> |
|||
<field name="name">Monday Connector</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">monday.connector</field> |
|||
<field name="view_mode">form</field> |
|||
<field name="view_id" ref="monday_connector_view_form"/> |
|||
<field name="target">new</field> |
|||
</record> |
|||
<!-- Monday Root menu--> |
|||
<menuitem |
|||
id="monday_menu_root" |
|||
name="Monday" |
|||
web_icon="monday_odoo_connector,static/description/icon.png" |
|||
/> |
|||
<!-- Configuration menu--> |
|||
<menuitem |
|||
id="monday_configuration_menu" |
|||
name="Configuration" |
|||
parent="monday_menu_root" |
|||
sequence="20" |
|||
/> |
|||
<!-- Connector menu--> |
|||
<menuitem |
|||
id="monday_connector_menu" |
|||
name="Connector" |
|||
parent="monday_configuration_menu" |
|||
sequence="1" |
|||
action="monday_connector_action" |
|||
/> |
|||
</odoo> |