Browse Source

Oct 15 [ADD] :Initial Commit

18.0
AjmalCybro 4 days ago
parent
commit
24e8067cf8
  1. 49
      theme_classic_store/README.rst
  2. 23
      theme_classic_store/__init__.py
  3. 77
      theme_classic_store/__manifest__.py
  4. 22
      theme_classic_store/controllers/__init__.py
  5. 101
      theme_classic_store/controllers/theme_classic_store.py
  6. 12
      theme_classic_store/data/classic_store_config_data.xml
  7. 5
      theme_classic_store/doc/RELEASE_NOTES.md
  8. 25
      theme_classic_store/models/__init__.py
  9. 42
      theme_classic_store/models/classic_store_config.py
  10. 45
      theme_classic_store/models/product_category.py
  11. 32
      theme_classic_store/models/product_template.py
  12. 52
      theme_classic_store/models/theme_classic_store.py
  13. 2
      theme_classic_store/security/ir.model.access.csv
  14. BIN
      theme_classic_store/static/description/assets/icons/check.png
  15. BIN
      theme_classic_store/static/description/assets/icons/chevron.png
  16. BIN
      theme_classic_store/static/description/assets/icons/cogs.png
  17. BIN
      theme_classic_store/static/description/assets/icons/consultation.png
  18. BIN
      theme_classic_store/static/description/assets/icons/ecom-black.png
  19. BIN
      theme_classic_store/static/description/assets/icons/education-black.png
  20. BIN
      theme_classic_store/static/description/assets/icons/hotel-black.png
  21. BIN
      theme_classic_store/static/description/assets/icons/license.png
  22. BIN
      theme_classic_store/static/description/assets/icons/lifebuoy.png
  23. BIN
      theme_classic_store/static/description/assets/icons/manufacturing-black.png
  24. BIN
      theme_classic_store/static/description/assets/icons/pos-black.png
  25. BIN
      theme_classic_store/static/description/assets/icons/puzzle.png
  26. BIN
      theme_classic_store/static/description/assets/icons/restaurant-black.png
  27. BIN
      theme_classic_store/static/description/assets/icons/service-black.png
  28. BIN
      theme_classic_store/static/description/assets/icons/trading-black.png
  29. BIN
      theme_classic_store/static/description/assets/icons/training.png
  30. BIN
      theme_classic_store/static/description/assets/icons/update.png
  31. BIN
      theme_classic_store/static/description/assets/icons/user.png
  32. BIN
      theme_classic_store/static/description/assets/icons/wrench.png
  33. BIN
      theme_classic_store/static/description/assets/misc/categories.png
  34. BIN
      theme_classic_store/static/description/assets/misc/check-box.png
  35. BIN
      theme_classic_store/static/description/assets/misc/compass.png
  36. BIN
      theme_classic_store/static/description/assets/misc/corporate.png
  37. BIN
      theme_classic_store/static/description/assets/misc/customer-support.png
  38. BIN
      theme_classic_store/static/description/assets/misc/cybrosys-logo.png
  39. BIN
      theme_classic_store/static/description/assets/misc/features.png
  40. BIN
      theme_classic_store/static/description/assets/misc/logo.png
  41. BIN
      theme_classic_store/static/description/assets/misc/pictures.png
  42. BIN
      theme_classic_store/static/description/assets/misc/pie-chart.png
  43. BIN
      theme_classic_store/static/description/assets/misc/right-arrow.png
  44. BIN
      theme_classic_store/static/description/assets/misc/star.png
  45. BIN
      theme_classic_store/static/description/assets/misc/support.png
  46. BIN
      theme_classic_store/static/description/assets/misc/whatsapp.png
  47. BIN
      theme_classic_store/static/description/assets/modules/1.png
  48. BIN
      theme_classic_store/static/description/assets/modules/2.png
  49. BIN
      theme_classic_store/static/description/assets/modules/3.png
  50. BIN
      theme_classic_store/static/description/assets/modules/4.png
  51. BIN
      theme_classic_store/static/description/assets/modules/5.gif
  52. BIN
      theme_classic_store/static/description/assets/modules/6.png
  53. BIN
      theme_classic_store/static/description/banner.jpg
  54. BIN
      theme_classic_store/static/description/icon.png
  55. BIN
      theme_classic_store/static/description/images/1.jpg
  56. BIN
      theme_classic_store/static/description/images/2.jpg
  57. BIN
      theme_classic_store/static/description/images/3.jpg
  58. BIN
      theme_classic_store/static/description/images/4.png
  59. BIN
      theme_classic_store/static/description/images/5.png
  60. BIN
      theme_classic_store/static/description/images/6.jpg
  61. BIN
      theme_classic_store/static/description/images/Cybrosys R.png
  62. BIN
      theme_classic_store/static/description/images/Cybrosys.png
  63. BIN
      theme_classic_store/static/description/images/Poster-modal.psd
  64. BIN
      theme_classic_store/static/description/images/Shop_page.png
  65. BIN
      theme_classic_store/static/description/images/blog.png
  66. BIN
      theme_classic_store/static/description/images/capture (1).png
  67. BIN
      theme_classic_store/static/description/images/categories.jpg
  68. BIN
      theme_classic_store/static/description/images/categories.png
  69. BIN
      theme_classic_store/static/description/images/check.png
  70. BIN
      theme_classic_store/static/description/images/chevron.png
  71. BIN
      theme_classic_store/static/description/images/cogs.png
  72. BIN
      theme_classic_store/static/description/images/consultation.png
  73. BIN
      theme_classic_store/static/description/images/cybro-logo-oca-no-text.png
  74. BIN
      theme_classic_store/static/description/images/cybro-logo-oca.png
  75. BIN
      theme_classic_store/static/description/images/demo1.png
  76. BIN
      theme_classic_store/static/description/images/demo2.png
  77. BIN
      theme_classic_store/static/description/images/demo3.png
  78. BIN
      theme_classic_store/static/description/images/demo4.png
  79. BIN
      theme_classic_store/static/description/images/ecom-black.png
  80. BIN
      theme_classic_store/static/description/images/education-black.png
  81. 33
      theme_classic_store/static/description/images/email.svg
  82. BIN
      theme_classic_store/static/description/images/hero.png
  83. BIN
      theme_classic_store/static/description/images/home.png
  84. BIN
      theme_classic_store/static/description/images/homepage.png
  85. BIN
      theme_classic_store/static/description/images/hotel-black.png
  86. BIN
      theme_classic_store/static/description/images/laptop-screenshots.jpg
  87. BIN
      theme_classic_store/static/description/images/license.png
  88. BIN
      theme_classic_store/static/description/images/lifebuoy.png
  89. BIN
      theme_classic_store/static/description/images/manufacturing-black.png
  90. BIN
      theme_classic_store/static/description/images/phone-screenshots.jpg
  91. 3
      theme_classic_store/static/description/images/phone.svg
  92. BIN
      theme_classic_store/static/description/images/photo-capture.png
  93. BIN
      theme_classic_store/static/description/images/pos-black.png
  94. BIN
      theme_classic_store/static/description/images/poster.psd
  95. BIN
      theme_classic_store/static/description/images/product_preview.png
  96. BIN
      theme_classic_store/static/description/images/puzzle.png
  97. BIN
      theme_classic_store/static/description/images/restaurant-black.png
  98. BIN
      theme_classic_store/static/description/images/service-black.png
  99. BIN
      theme_classic_store/static/description/images/shop.png
  100. 9
      theme_classic_store/static/description/images/star (1) 2.svg

49
theme_classic_store/README.rst

@ -0,0 +1,49 @@
.. image:: https://img.shields.io/badge/license-LGPL--3-green.svg
:target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
Theme Classic Store
===================
* Design Web Pages with theme classic store
Installation
============
- www.odoo.com/documentation/17.0/setup/install.html
- Install our custom addon
License
-------
General Public License, Version 3 (LGPL v3).
(https://www.gnu.org/licenses/lgpl-3.0-standalone.html)
Company
-------
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__
Credits
-------
* Developer: (V17) Vivek, Jumana Jabin MP, Sruthi M
(V18) Akhil Ashok
* 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 https://www.cybrosys.com
Further information
===================
HTML Description: `<static/description/index.html>`__

23
theme_classic_store/__init__.py

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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 . import controllers
from . import models

77
theme_classic_store/__manifest__.py

@ -0,0 +1,77 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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': 'Theme Classic Store',
'version': '18.0.1.0.0',
'category': 'Theme/eCommerce',
'summary': 'Theme Classic Store for Odoo Website and e-Commerce',
'description': 'Theme Classic Store is an attractive eCommerce theme.'
'The theme comes with many useful and stylish snippets',
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'maintainer': 'Cybrosys Techno Solutions',
'images': [
'static/description/banner.jpg',
'static/description/theme_screenshot.jpg',
],
'website': 'https://www.cybrosys.com',
'depends': ['website_blog', 'website_sale_wishlist','website_sale',
'website_sale_comparison'],
'data': [
'security/ir.model.access.csv',
'data/classic_store_config_data.xml',
'views/classic_store_config_views.xml',
'views/website_templates.xml',
'views/website_contactus_templates.xml',
'views/website_blog_templates.xml',
'views/http_routing_templates.xml',
'views/website_sale_templates.xml',
'views/snippets/snippets_templates.xml',
'views/snippets/classic_store_aboutus_templates.xml',
'views/snippets/classic_store_banner_templates.xml',
'views/snippets/classic_store_categories_templates.xml',
'views/snippets/classic_store_listing_templates.xml',
'views/snippets/classic_store_package_templates.xml',
'views/snippets/classic_store_team_templates.xml',
'views/snippets/classic_store_counter_templates.xml',
'views/snippets/classic_store_subheader_templates.xml',
'views/snippets/classic_store_search_templates.xml',
'views/snippets/classic_store_trending_templates.xml',
],
'assets': {
'web.assets_frontend': [
"/theme_classic_store/static/src/css/style.css",
"/theme_classic_store/static/src/css/style.css.map",
"/theme_classic_store/static/src/css/animate.min.css",
"/theme_classic_store/static/src/css/classic_store.css",
"/theme_classic_store/static/src/css/owl.carousel.min.css",
"/theme_classic_store/static/src/css/owl.theme.default.min.css",
"/theme_classic_store/static/src/js/owl.carousel.js",
"/theme_classic_store/static/src/js/snippets_category.js",
"/theme_classic_store/static/src/js/snippets_trending.js",
],
},
'license': 'LGPL-3',
'installable': True,
'auto_install': False,
'application': False,
}

22
theme_classic_store/controllers/__init__.py

@ -0,0 +1,22 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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 . import theme_classic_store

101
theme_classic_store/controllers/theme_classic_store.py

@ -0,0 +1,101 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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 datetime
from odoo import fields, http
from odoo.http import request
class WebsiteClassicCategory(http.Controller):
"""This controller method returns a JSON object that categorizes products based
on their product categories.
:return: a JSON object containing the main product categories and their
respective product counts
:rtype: dict"""
@http.route('/classic_product_category', auth="public", type='json')
def get_product_categories(self):
"""Categorize products based on product categories
The counter "category_counter" is used to keep track of the product
count in each category"""
product_ids = request.env['product.template'].sudo().search(
[('website_published', '=', True)])
product_category_ids = request.env[
'product.public.category'].sudo().search([])
product_categories_main_list = [rec for rec in product_category_ids if
rec.child_id]
category_counter = {rec: 0 for rec in product_category_ids}
for rec in product_ids:
for cat in rec.public_categ_ids:
if cat in product_category_ids:
category_counter[cat] += 1
values = {
'product_categories_main': product_categories_main_list,
'counter': category_counter
}
response = http.Response(
template='theme_classic_store.s_classic_store_categories',
qcontext=values)
return response.render()
class WebsiteClassicTrending(http.Controller):
"""This module defines a controller for the website that showcases trending
products.
It contains a class `WebsiteClassicTrending` with a method
`get_trending_products()`
that is called when the route `/classic_product_trending` is accessed."""
@http.route('/classic_product_trending', auth="public", type='json',
website=True)
def get_trending_products(self):
"""
Showcase trending products based on their number of views between a
defined period
number of views for a product is tracked and then the most viewed
products are shown in order of views
"""
classic_config = request.env[
'classic.store.config'].sudo().search([])
trending_products = classic_config.trending_product_ids
if not trending_products:
products = request.env['product.template'].sudo().search([])
for product in products:
product.views = 0
product.most_viewed = False
date_before = fields.Datetime.now() - datetime.timedelta(days=7)
products = request.env['website.track'].sudo().search(
[('visit_datetime', '<=', fields.Datetime.now()),
('visit_datetime', '>=', date_before),
('product_id', '!=', False)])
for product in products:
product.product_id.views = product.product_id.views + 1
trending_products = request.env['product.template'].sudo().search(
[('is_published', '=', True),
('views', '!=', 0)],
order='views desc', limit=4)
values = {
'trending_products': trending_products
}
response = http.Response(
template='theme_classic_store.s_classic_store_trending',
qcontext=values)
return response.render()

12
theme_classic_store/data/classic_store_config_data.xml

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<data noupdate="1">
<!-- Configuration data for Classic Store -->
<record id="classic_store_config_data" model="classic.store.config">
<!-- Name of the Classic Store -->
<field name="name">Classic Store Configuration</field>
<!-- Maximum price allowed for products -->
<field name="max_price">100000</field>
</record>
</data>
</odoo>

5
theme_classic_store/doc/RELEASE_NOTES.md

@ -0,0 +1,5 @@
## Module <theme_classic_store>
#### 18.08.2025
#### Version 18.0.1.0.0
#### ADD
- Initial commit for Theme Classic Store

25
theme_classic_store/models/__init__.py

@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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 . import classic_store_config
from . import product_category
from . import theme_classic_store
from . import product_template

42
theme_classic_store/models/classic_store_config.py

@ -0,0 +1,42 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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 odoo import fields, models
class ClassicStoreConfig(models.Model):
"""Creating 'name', 'max_price', 'trending_product_ids', field in
classic.store.config settings"""
_name = 'classic.store.config'
_description = 'Configuration model for theme classic store'
name = fields.Char(string='Name',
help="Name field in classic store config settings")
max_price = fields.Integer(string="Maximum Price", default=100000,
help="Maximum amount to apply in product filter")
trending_product_ids = fields.Many2many('product.template',
string="Trending Products",
help="Manually enter trending "
"products or leave the field "
"blank to automatically "
"add the trending products.",
domain=[
('is_published', '=', True)])

45
theme_classic_store/models/product_category.py

@ -0,0 +1,45 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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 odoo import fields, models
class ProductPublicCategory(models.Model):
"""Adding 'category_count' field to the 'product.public.category' model."""
_inherit = 'product.public.category'
category_count = fields.Integer(string="Count",
help="The count of different products in each category.",
compute="_compute_category_count")
def _compute_category_count(self):
"""
Compute function for calculating the value of category_count
Calculates the count of different products in each category
"""
product_ids = self.env['product.template'].search(
[('website_published', '=', True)])
for category in self:
category_ids = category.search(
[('id', 'child_of', category.id)]).ids
category.category_count = sum(
1 for rec in product_ids for cat in rec.public_categ_ids if
cat.id in category_ids)

32
theme_classic_store/models/product_template.py

@ -0,0 +1,32 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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 odoo import fields, models
class Product(models.Model):
"""Adding 'views' and 'most_viewed' fields to the 'product.template' model"""
_inherit = 'product.template'
views = fields.Integer(string="Views",
help="The total views for the product through website.")
most_viewed = fields.Boolean(string="Most Viewed",
help='Set true if the product is most viewed')

52
theme_classic_store/models/theme_classic_store.py

@ -0,0 +1,52 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2025-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 odoo import models
class ThemeClassicStore(models.AbstractModel):
"""This class extends the 'theme.utils' abstract model to provide
theme-specific functionalities."""
_inherit = 'theme.utils'
def _theme_classic_store_post_copy(self, mod):
"""
Disable certain views in the website sale and wishlist functionality
of the Odoo e-commerce module for the "Classic" theme.
This method disables certain views related to features such as product
comparison, grid or list views, adding products to the cart or wishlist,
displaying product attributes and variants, displaying recommended or
recently viewed products, and other product-related features in the
e-commerce website.
"""
self.disable_view('website_sale_comparison.add_to_compare')
self.disable_view('website_sale_comparison.product_attributes_body')
self.disable_view('website_sale.add_grid_or_list_option')
self.disable_view('website_sale.products_add_to_cart')
self.disable_view('website_sale.product_buy_now')
self.disable_view('website_sale_wishlist.add_to_wishlist')
self.disable_view('website_sale.products_list_view')
self.disable_view('website_sale.product_comment')
self.disable_view('website_sale.product_variants')
self.disable_view('website_sale.ecom_show_extra_fields')
self.disable_view('website_sale.product_custom_text')
self.disable_view('website_sale_wishlist.product_add_to_wishlist')

2
theme_classic_store/security/ir.model.access.csv

@ -0,0 +1,2 @@
id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink
access_theme_classic_store,access.classic.store.config,model_classic_store_config,base.group_user,1,1,1,1
1 id name model_id/id group_id/id perm_read perm_write perm_create perm_unlink
2 access_theme_classic_store access.classic.store.config model_classic_store_config base.group_user 1 1 1 1

BIN
theme_classic_store/static/description/assets/icons/check.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

BIN
theme_classic_store/static/description/assets/icons/chevron.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

BIN
theme_classic_store/static/description/assets/icons/cogs.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
theme_classic_store/static/description/assets/icons/consultation.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
theme_classic_store/static/description/assets/icons/ecom-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 576 B

BIN
theme_classic_store/static/description/assets/icons/education-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 733 B

BIN
theme_classic_store/static/description/assets/icons/hotel-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 911 B

BIN
theme_classic_store/static/description/assets/icons/license.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
theme_classic_store/static/description/assets/icons/lifebuoy.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
theme_classic_store/static/description/assets/icons/manufacturing-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 673 B

BIN
theme_classic_store/static/description/assets/icons/pos-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 878 B

BIN
theme_classic_store/static/description/assets/icons/puzzle.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 653 B

BIN
theme_classic_store/static/description/assets/icons/restaurant-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 905 B

BIN
theme_classic_store/static/description/assets/icons/service-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 839 B

BIN
theme_classic_store/static/description/assets/icons/trading-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 427 B

BIN
theme_classic_store/static/description/assets/icons/training.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 627 B

BIN
theme_classic_store/static/description/assets/icons/update.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
theme_classic_store/static/description/assets/icons/user.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 988 B

BIN
theme_classic_store/static/description/assets/icons/wrench.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
theme_classic_store/static/description/assets/misc/categories.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
theme_classic_store/static/description/assets/misc/check-box.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
theme_classic_store/static/description/assets/misc/compass.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

BIN
theme_classic_store/static/description/assets/misc/corporate.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
theme_classic_store/static/description/assets/misc/customer-support.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
theme_classic_store/static/description/assets/misc/cybrosys-logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
theme_classic_store/static/description/assets/misc/features.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 589 B

BIN
theme_classic_store/static/description/assets/misc/logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

BIN
theme_classic_store/static/description/assets/misc/pictures.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
theme_classic_store/static/description/assets/misc/pie-chart.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
theme_classic_store/static/description/assets/misc/right-arrow.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 967 B

BIN
theme_classic_store/static/description/assets/misc/star.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
theme_classic_store/static/description/assets/misc/support.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

BIN
theme_classic_store/static/description/assets/misc/whatsapp.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

BIN
theme_classic_store/static/description/assets/modules/1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
theme_classic_store/static/description/assets/modules/2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
theme_classic_store/static/description/assets/modules/3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
theme_classic_store/static/description/assets/modules/4.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

BIN
theme_classic_store/static/description/assets/modules/5.gif

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

BIN
theme_classic_store/static/description/assets/modules/6.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

BIN
theme_classic_store/static/description/banner.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

BIN
theme_classic_store/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

BIN
theme_classic_store/static/description/images/1.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 KiB

BIN
theme_classic_store/static/description/images/2.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

BIN
theme_classic_store/static/description/images/3.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 440 KiB

BIN
theme_classic_store/static/description/images/4.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 KiB

BIN
theme_classic_store/static/description/images/5.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 747 KiB

BIN
theme_classic_store/static/description/images/6.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 KiB

BIN
theme_classic_store/static/description/images/Cybrosys R.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

BIN
theme_classic_store/static/description/images/Cybrosys.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

BIN
theme_classic_store/static/description/images/Poster-modal.psd

Binary file not shown.

BIN
theme_classic_store/static/description/images/Shop_page.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 KiB

BIN
theme_classic_store/static/description/images/blog.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

BIN
theme_classic_store/static/description/images/capture (1).png

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

BIN
theme_classic_store/static/description/images/categories.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
theme_classic_store/static/description/images/categories.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

BIN
theme_classic_store/static/description/images/check.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

BIN
theme_classic_store/static/description/images/chevron.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

BIN
theme_classic_store/static/description/images/cogs.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
theme_classic_store/static/description/images/consultation.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
theme_classic_store/static/description/images/cybro-logo-oca-no-text.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
theme_classic_store/static/description/images/cybro-logo-oca.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
theme_classic_store/static/description/images/demo1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

BIN
theme_classic_store/static/description/images/demo2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
theme_classic_store/static/description/images/demo3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

BIN
theme_classic_store/static/description/images/demo4.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

BIN
theme_classic_store/static/description/images/ecom-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 576 B

BIN
theme_classic_store/static/description/images/education-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 733 B

33
theme_classic_store/static/description/images/email.svg

@ -0,0 +1,33 @@
<svg width="80" height="81" viewBox="0 0 80 81" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="3116889_design_email_material_communication_mail_icon 1" clip-path="url(#clip0_81_366)">
<g id="layer1">
<path id="rect3851" d="M74.6067 0.730957H5.5424C2.75742 0.730957 0.499756 3.01685 0.499756 5.83664V75.7642C0.499756 78.584 2.75742 80.8699 5.5424 80.8699H74.6067C77.3916 80.8699 79.6493 78.584 79.6493 75.7642V5.83664C79.6493 3.01685 77.3916 0.730957 74.6067 0.730957Z" fill="#DB534B"/>
<g id="Clip path group">
<mask id="mask0_81_366" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="1" y="5" width="78" height="76">
<g id="clipPath4206">
<path id="rect4208" d="M73.6244 5.2915H6.62595C3.92428 5.2915 1.73413 7.4473 1.73413 10.1066V76.0546C1.73413 78.7139 3.92428 80.8697 6.62595 80.8697H73.6244C76.3261 80.8697 78.5162 78.7139 78.5162 76.0546V10.1066C78.5162 7.4473 76.3261 5.2915 73.6244 5.2915Z" fill="white"/>
</g>
</mask>
<g mask="url(#mask0_81_366)">
<g id="g4145" opacity="0.489612">
<g id="g4147">
<path id="path4149" d="M65.8115 41.5171C65.8115 54.9863 54.4292 65.9053 40.3884 65.9053L198.828 221.861C212.869 221.861 224.251 210.942 224.251 197.472L65.8115 41.5171Z" fill="black" fill-opacity="0.0588235"/>
<path id="path4151" d="M40.3884 65.9051C33.2495 65.9051 26.7979 63.0825 22.1802 58.5371L180.62 214.492C185.237 219.038 191.689 221.86 198.828 221.86L40.3884 65.9051Z" fill="black" fill-opacity="0.0588235"/>
<path id="path4153" d="M22.1802 58.5373C17.7157 54.1428 14.9653 48.1381 14.9653 41.5171L173.405 197.472C173.405 204.093 176.155 210.098 180.62 214.493L22.1802 58.5373Z" fill="black" fill-opacity="0.0588235"/>
<path id="path4155" d="M14.9653 41.5171C14.9653 28.0479 26.3476 17.1289 40.3884 17.1289L198.828 173.084C184.787 173.084 173.405 184.003 173.405 197.472L14.9653 41.5171Z" fill="black" fill-opacity="0.0588235"/>
<path id="path4157" d="M40.3884 17.1289C47.5273 17.1289 53.9789 19.9516 58.5966 24.4969L217.036 180.452C212.418 175.907 205.967 173.084 198.828 173.084L40.3884 17.1289Z" fill="black" fill-opacity="0.0588235"/>
<path id="path4159" d="M58.5964 24.4971C63.0609 28.8916 65.8113 34.8963 65.8113 41.5173L224.251 197.473C224.251 190.852 221.5 184.847 217.036 180.452L58.5964 24.4971Z" fill="black" fill-opacity="0.0588235"/>
</g>
<path id="path4111" d="M65.8114 41.5171C65.8114 54.9863 54.4291 65.9053 40.3884 65.9053C26.3476 65.9053 14.9653 54.9863 14.9653 41.5171C14.9653 28.0479 26.3476 17.1289 40.3884 17.1289C54.4291 17.1289 65.8114 28.0479 65.8114 41.5171Z" fill="black" fill-opacity="0.0588235"/>
</g>
</g>
</g>
<path id="path3864" d="M17.506 17.5386H62.9018C64.4068 17.5386 65.8501 18.1439 66.9143 19.2214C67.9784 20.2988 68.5763 21.7602 68.5763 23.284V57.7564C68.5763 58.5109 68.4295 59.258 68.1443 59.9551C67.8592 60.6521 67.4412 61.2855 66.9143 61.819C66.3873 62.3525 65.7618 62.7757 65.0733 63.0645C64.3849 63.3532 63.647 63.5018 62.9018 63.5018H17.506C14.3567 63.5018 11.8315 60.9164 11.8315 57.7564V23.284C11.8315 20.0953 14.3567 17.5386 17.506 17.5386ZM40.2039 37.6475L62.9018 23.284H17.506L40.2039 37.6475ZM17.506 57.7564H62.9018V30.0923L40.2039 44.4271L17.506 30.0923V57.7564Z" fill="white"/>
</g>
</g>
<defs>
<clipPath id="clip0_81_366">
<rect width="80" height="81" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
theme_classic_store/static/description/images/hero.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 KiB

BIN
theme_classic_store/static/description/images/home.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 MiB

BIN
theme_classic_store/static/description/images/homepage.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 851 KiB

BIN
theme_classic_store/static/description/images/hotel-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 911 B

BIN
theme_classic_store/static/description/images/laptop-screenshots.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 232 KiB

BIN
theme_classic_store/static/description/images/license.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
theme_classic_store/static/description/images/lifebuoy.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
theme_classic_store/static/description/images/manufacturing-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 673 B

BIN
theme_classic_store/static/description/images/phone-screenshots.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 KiB

3
theme_classic_store/static/description/images/phone.svg

@ -0,0 +1,3 @@
<svg width="36" height="44" viewBox="0 0 36 44" fill="none" xmlns="http://www.w3.org/2000/svg">
<path id="Vector" d="M7.25 19.3903C10.13 26.0689 14.76 31.5322 20.43 34.9305L24.83 29.7268C25.38 29.0778 26.17 28.889 26.86 29.1486C29.1 30.0218 31.51 30.4938 34 30.4938C35.11 30.4938 36 31.544 36 32.8537V41.1135C36 42.4233 35.11 43.4734 34 43.4734C15.22 43.4734 0 25.5143 0 3.35456C0 2.0448 0.9 0.994629 2 0.994629H9C10.11 0.994629 11 2.0448 11 3.35456C11 6.29268 11.4 9.1364 12.14 11.7795C12.36 12.5937 12.2 13.5259 11.65 14.1749L7.25 19.3903Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 565 B

BIN
theme_classic_store/static/description/images/photo-capture.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
theme_classic_store/static/description/images/pos-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 878 B

BIN
theme_classic_store/static/description/images/poster.psd

Binary file not shown.

BIN
theme_classic_store/static/description/images/product_preview.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

BIN
theme_classic_store/static/description/images/puzzle.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 653 B

BIN
theme_classic_store/static/description/images/restaurant-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 905 B

BIN
theme_classic_store/static/description/images/service-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 839 B

BIN
theme_classic_store/static/description/images/shop.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1003 KiB

9
theme_classic_store/static/description/images/star (1) 2.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 26 KiB

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save