@ -0,0 +1,42 @@ |
|||
Code Backend Theme Enterprise |
|||
============================= |
|||
* Code Backend Theme module for Odoo 16 enterprise editions |
|||
|
|||
Installation |
|||
============ |
|||
- www.odoo.com/documentation/16.0/setup/install.html |
|||
- Install our custom addon |
|||
|
|||
License |
|||
------- |
|||
General Public License, Version 3 (LGPL v3). |
|||
(https://www.odoo.com/documentation/user/16.0/legal/licenses/licenses.html) |
|||
|
|||
Company |
|||
------- |
|||
* 'Cybrosys Techno Solutions <https://cybrosys.com/>'__ |
|||
|
|||
Credits |
|||
------- |
|||
* 'Cybrosys Techno Solutions <https://cybrosys.com/>'__ |
|||
Credits : Abhijith KP @ Cybrosys |
|||
v16 Ahammed Harshad P @ Cybrosys |
|||
|
|||
Contacts |
|||
-------- |
|||
* Mail Contact : odoo@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 |
|||
========== |
|||
This module is maintained by Cybrosys Technologies. |
|||
|
|||
For support and more information, please visit https://www.cybrosys.com |
|||
|
|||
Further information |
|||
=================== |
|||
HTML Description: `<static/description/index.html>`__ |
|||
|
@ -0,0 +1,22 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2021-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from .hooks import test_pre_init_hook, test_post_init_hook |
@ -0,0 +1,67 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
|
|||
|
|||
{ |
|||
"name": "Code Backend Theme V16 Enterprise", |
|||
"summary": "Minimalist and elegant backend theme for Odoo 16 Enterprise", |
|||
"description": """Minimalist and elegant backend theme for Odoo 16 Backend Theme Enterprise, Enterprise Theme, Backend Theme, Enterprise Backend Theme, V16 Theme""", |
|||
"category": "Themes/Backend", |
|||
"version": "16.0.1.0.0", |
|||
'author': 'Cybrosys Techno Solutions', |
|||
'company': 'Cybrosys Techno Solutions', |
|||
'maintainer': 'Cybrosys Techno Solutions', |
|||
'website': "https://www.cybrosys.com", |
|||
"depends": ['base', 'web_enterprise', 'web'], |
|||
"data": [ |
|||
'views/icons.xml', |
|||
], |
|||
|
|||
'assets': { |
|||
'web.assets_backend': [ |
|||
"code_backend_theme_enterprise/static/src/scss/theme_accent.scss", |
|||
"code_backend_theme_enterprise/static/src/scss/navigation_bar.scss", |
|||
"code_backend_theme_enterprise/static/src/scss/datetimepicker.scss", |
|||
"code_backend_theme_enterprise/static/src/scss/theme.scss", |
|||
"code_backend_theme_enterprise/static/src/js/fields/basic_fields.js", |
|||
"code_backend_theme_enterprise/static/src/js/chrome/sidebar.js", |
|||
"code_backend_theme_enterprise/static/src/xml/top_bar.xml", |
|||
"code_backend_theme_enterprise/static/src/scss/sidebar.scss", |
|||
"code_backend_theme_enterprise/static/src/xml/sidebar.xml", |
|||
"https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap", |
|||
], |
|||
'web.assets_frontend': [ |
|||
"code_backend_theme_enterprise/static/src/scss/login.scss", |
|||
"https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap", |
|||
], |
|||
}, |
|||
'images': [ |
|||
'static/description/banner.png', |
|||
'static/description/theme_screenshot.png', |
|||
], |
|||
'license': 'LGPL-3', |
|||
'pre_init_hook': 'test_pre_init_hook', |
|||
'post_init_hook': 'test_post_init_hook', |
|||
'installable': True, |
|||
'application': False, |
|||
'auto_install': False, |
|||
} |
@ -0,0 +1,6 @@ |
|||
## Module <code_backend_theme_enterprise> |
|||
|
|||
#### 22.02.2023 |
|||
#### Version 16.0.1.0.0 |
|||
#### ADD |
|||
Initial Commit for 'Code Backend Theme V16 Enterprise' |
@ -0,0 +1,447 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2021-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL 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 LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
|
|||
import base64 |
|||
|
|||
from odoo import api, SUPERUSER_ID |
|||
from odoo.modules import get_module_resource |
|||
|
|||
|
|||
def test_pre_init_hook(cr): |
|||
"""Hooks for Changing Menu Web_icon""" |
|||
|
|||
env = api.Environment(cr, SUPERUSER_ID, {}) |
|||
menu_item = env['ir.ui.menu'].search([('parent_id', '=', False)]) |
|||
|
|||
for menu in menu_item: |
|||
if menu.name == 'Contacts': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'contacts.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Link Tracker': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'link.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Dashboards': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'dashboard.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Sales': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'sales.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Accounting': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'accounting.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Inventory': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'inventory.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Purchase': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'purchase.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Calendar': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'calendar.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'CRM': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'crm.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Note': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'notes.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Website': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'website.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Point of Sale': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'pos.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Manufacturing': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'manufacturing.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Repairs': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'repair.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Email Marketing': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'email-marketing.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'SMS Marketing': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'sms.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Project': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'project.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Surveys': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'survey.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Employees': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'employee.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Recruitment': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'recruitment.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Attendances': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'attendance.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Time Off': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'time-off.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Expenses': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'expense.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Maintenance': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'maintenance.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Live Chat': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'chat.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Lunch': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'restaurant.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Fleet': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'traffic.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Timesheets': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'timesheet.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Events': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'token.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'eLearning': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'elearning.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Members': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'user.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
|
|||
if menu.name == 'Subscriptions': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'subscription.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Documents': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'documents.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Rental': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'rental.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Marketing Automation': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'marketing_automation.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'IoT': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'iot.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Helpdesk': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'help.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Planning': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'planning.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Appraisal': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'appraisal.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Consolidation': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'consolidation.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Payroll': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'payroll.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Barcode': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'barcode.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Quality': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'quality.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'PLM': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'plm.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Field Service': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'field-service.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Data Cleaning': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'clean-code.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Approvals': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'approvals.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Referrals': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'referrals.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Discuss': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'discuss.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Social Marketing': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'like.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
|
|||
|
|||
def test_post_init_hook(cr, registry): |
|||
"""post init hook""" |
|||
|
|||
env = api.Environment(cr, SUPERUSER_ID, {}) |
|||
menu_item = env['ir.ui.menu'].search([('parent_id', '=', False)]) |
|||
|
|||
for menu in menu_item: |
|||
if menu.name == 'Contacts': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'contacts.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Link Tracker': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'link.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Dashboards': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'dashboard.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Sales': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'sales.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Accounting': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'accounting.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Inventory': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'inventory.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Purchase': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'purchase.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Calendar': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'calendar.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'CRM': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'crm.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Note': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'notes.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Website': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'website.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Point of Sale': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'pos.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Manufacturing': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'manufacturing.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Repairs': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'repair.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Email Marketing': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'email-marketing.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'SMS Marketing': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'sms.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Project': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'project.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Surveys': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'survey.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Employees': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'employee.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Recruitment': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'recruitment.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Attendances': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'attendance.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Time Off': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'time-off.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Expenses': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'expense.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Maintenance': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'maintenance.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Live Chat': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'chat.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Lunch': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'restuarant.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Fleet': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'traffic.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Timesheets': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'timesheet.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Events': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'token.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'eLearning': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'elearning.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Members': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'user.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
|
|||
if menu.name == 'Subscriptions': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'subscription.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Documents': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'documents.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Rental': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'rental.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Marketing Automation': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'marketing_automation.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'IoT': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'iot.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Helpdesk': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'help.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Planning': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'planning.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Appraisal': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'appraisal.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Consolidation': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'consolidation.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Payroll': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'payroll.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Barcode': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'barcode.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Quality': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'quality.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'PLM': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'plm.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Field Service': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'field-service.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Data Cleaning': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'clean-code.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Approvals': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'approvals.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Referrals': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'referrals.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Discuss': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'discuss.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
if menu.name == 'Social Marketing': |
|||
img_path = get_module_resource( |
|||
'code_backend_theme_enterprise', 'static', 'src', 'img', 'icons', 'like.png') |
|||
menu.write({'web_icon_data': base64.b64encode(open(img_path, "rb").read())}) |
|||
|
After Width: | Height: | Size: 120 KiB |
After Width: | Height: | Size: 168 KiB |
After Width: | Height: | Size: 1.1 MiB |
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: 6.3 KiB |
After Width: | Height: | Size: 66 KiB |
After Width: | Height: | Size: 722 KiB |
After Width: | Height: | Size: 88 KiB |
After Width: | Height: | Size: 986 KiB |
After Width: | Height: | Size: 104 KiB |
After Width: | Height: | Size: 112 KiB |
After Width: | Height: | Size: 241 KiB |
After Width: | Height: | Size: 96 KiB |
After Width: | Height: | Size: 175 KiB |
After Width: | Height: | Size: 144 KiB |
After Width: | Height: | Size: 216 KiB |
After Width: | Height: | Size: 964 KiB |
After Width: | Height: | Size: 66 KiB |
After Width: | Height: | Size: 123 KiB |
After Width: | Height: | Size: 152 KiB |
After Width: | Height: | Size: 612 KiB |
After Width: | Height: | Size: 707 KiB |
After Width: | Height: | Size: 153 KiB |
After Width: | Height: | Size: 169 KiB |
After Width: | Height: | Size: 65 KiB |
After Width: | Height: | Size: 699 KiB |
After Width: | Height: | Size: 128 KiB |
After Width: | Height: | Size: 349 KiB |
After Width: | Height: | Size: 169 KiB |
After Width: | Height: | Size: 132 KiB |
After Width: | Height: | Size: 181 KiB |
After Width: | Height: | Size: 220 KiB |
After Width: | Height: | Size: 326 KiB |
After Width: | Height: | Size: 199 KiB |
After Width: | Height: | Size: 359 KiB |
After Width: | Height: | Size: 242 KiB |
After Width: | Height: | Size: 85 KiB |
After Width: | Height: | Size: 1.8 MiB |
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 414 KiB |
@ -0,0 +1,93 @@ |
|||
Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) |
|||
|
|||
This Font Software is licensed under the SIL Open Font License, Version 1.1. |
|||
This license is copied below, and is also available with a FAQ at: |
|||
http://scripts.sil.org/OFL |
|||
|
|||
|
|||
----------------------------------------------------------- |
|||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 |
|||
----------------------------------------------------------- |
|||
|
|||
PREAMBLE |
|||
The goals of the Open Font License (OFL) are to stimulate worldwide |
|||
development of collaborative font projects, to support the font creation |
|||
efforts of academic and linguistic communities, and to provide a free and |
|||
open framework in which fonts may be shared and improved in partnership |
|||
with others. |
|||
|
|||
The OFL allows the licensed fonts to be used, studied, modified and |
|||
redistributed freely as long as they are not sold by themselves. The |
|||
fonts, including any derivative works, can be bundled, embedded, |
|||
redistributed and/or sold with any software provided that any reserved |
|||
names are not used by derivative works. The fonts and derivatives, |
|||
however, cannot be released under any other type of license. The |
|||
requirement for fonts to remain under this license does not apply |
|||
to any document created using the fonts or their derivatives. |
|||
|
|||
DEFINITIONS |
|||
"Font Software" refers to the set of files released by the Copyright |
|||
Holder(s) under this license and clearly marked as such. This may |
|||
include source files, build scripts and documentation. |
|||
|
|||
"Reserved Font Name" refers to any names specified as such after the |
|||
copyright statement(s). |
|||
|
|||
"Original Version" refers to the collection of Font Software components as |
|||
distributed by the Copyright Holder(s). |
|||
|
|||
"Modified Version" refers to any derivative made by adding to, deleting, |
|||
or substituting -- in part or in whole -- any of the components of the |
|||
Original Version, by changing formats or by porting the Font Software to a |
|||
new environment. |
|||
|
|||
"Author" refers to any designer, engineer, programmer, technical |
|||
writer or other person who contributed to the Font Software. |
|||
|
|||
PERMISSION & CONDITIONS |
|||
Permission is hereby granted, free of charge, to any person obtaining |
|||
a copy of the Font Software, to use, study, copy, merge, embed, modify, |
|||
redistribute, and sell modified and unmodified copies of the Font |
|||
Software, subject to the following conditions: |
|||
|
|||
1) Neither the Font Software nor any of its individual components, |
|||
in Original or Modified Versions, may be sold by itself. |
|||
|
|||
2) Original or Modified Versions of the Font Software may be bundled, |
|||
redistributed and/or sold with any software, provided that each copy |
|||
contains the above copyright notice and this license. These can be |
|||
included either as stand-alone text files, human-readable headers or |
|||
in the appropriate machine-readable metadata fields within text or |
|||
binary files as long as those fields can be easily viewed by the user. |
|||
|
|||
3) No Modified Version of the Font Software may use the Reserved Font |
|||
Name(s) unless explicit written permission is granted by the corresponding |
|||
Copyright Holder. This restriction only applies to the primary font name as |
|||
presented to the users. |
|||
|
|||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font |
|||
Software shall not be used to promote, endorse or advertise any |
|||
Modified Version, except to acknowledge the contribution(s) of the |
|||
Copyright Holder(s) and the Author(s) or with their explicit written |
|||
permission. |
|||
|
|||
5) The Font Software, modified or unmodified, in part or in whole, |
|||
must be distributed entirely under this license, and must not be |
|||
distributed under any other license. The requirement for fonts to |
|||
remain under this license does not apply to any document created |
|||
using the Font Software. |
|||
|
|||
TERMINATION |
|||
This license becomes null and void if any of the above conditions are |
|||
not met. |
|||
|
|||
DISCLAIMER |
|||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
|||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF |
|||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT |
|||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE |
|||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, |
|||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL |
|||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
|||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM |
|||
OTHER DEALINGS IN THE FONT SOFTWARE. |
After Width: | Height: | Size: 3.6 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 3.9 KiB |
After Width: | Height: | Size: 3.9 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 4.4 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 3.6 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 527 B |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 6.3 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 3.6 KiB |