Browse Source

Nov 18: [ADD] Initial commit 'theme_coffee_shop'

pull/357/head
Cybrosys Technologies 5 months ago
parent
commit
192320e66c
  1. 50
      theme_coffee_shop/README.rst
  2. 23
      theme_coffee_shop/__init__.py
  3. 63
      theme_coffee_shop/__manifest__.py
  4. 22
      theme_coffee_shop/controllers/__init__.py
  5. 389
      theme_coffee_shop/controllers/theme_coffee_shop.py
  6. 26
      theme_coffee_shop/data/website_menu_data.xml
  7. 6
      theme_coffee_shop/doc/RELEASE_NOTES.md
  8. 22
      theme_coffee_shop/models/__init__.py
  9. 40
      theme_coffee_shop/models/theme_utils.py
  10. BIN
      theme_coffee_shop/static/description/banner.png
  11. BIN
      theme_coffee_shop/static/description/icon.png
  12. BIN
      theme_coffee_shop/static/description/img/01.jpg
  13. BIN
      theme_coffee_shop/static/description/img/1.jpg
  14. BIN
      theme_coffee_shop/static/description/img/2.jpg
  15. BIN
      theme_coffee_shop/static/description/img/3.jpg
  16. BIN
      theme_coffee_shop/static/description/img/Banner-1.jpg
  17. BIN
      theme_coffee_shop/static/description/img/Banner-2.jpg
  18. 10
      theme_coffee_shop/static/description/img/arrows-repeat.svg
  19. 66
      theme_coffee_shop/static/description/img/banner-bg-1.svg
  20. BIN
      theme_coffee_shop/static/description/img/banner.png
  21. 49
      theme_coffee_shop/static/description/img/banner.svg
  22. 10
      theme_coffee_shop/static/description/img/check.svg
  23. BIN
      theme_coffee_shop/static/description/img/coffee_01.png
  24. BIN
      theme_coffee_shop/static/description/img/countactus.png
  25. BIN
      theme_coffee_shop/static/description/img/demo-1.png
  26. BIN
      theme_coffee_shop/static/description/img/demo-2.png
  27. BIN
      theme_coffee_shop/static/description/img/demo-3.png
  28. BIN
      theme_coffee_shop/static/description/img/demo-5.png
  29. 13
      theme_coffee_shop/static/description/img/feature-star.svg
  30. BIN
      theme_coffee_shop/static/description/img/featuress.png
  31. 10
      theme_coffee_shop/static/description/img/gear.svg
  32. 12
      theme_coffee_shop/static/description/img/hire-odoo.svg
  33. 13
      theme_coffee_shop/static/description/img/life-ring-icon.svg
  34. 4
      theme_coffee_shop/static/description/img/odoo-consultancy.svg
  35. 3
      theme_coffee_shop/static/description/img/odoo-licencing.svg
  36. 9
      theme_coffee_shop/static/description/img/patter.svg
  37. BIN
      theme_coffee_shop/static/description/img/phone-screenshots.jpg
  38. 10
      theme_coffee_shop/static/description/img/puzzle-piece-icon.svg
  39. 28
      theme_coffee_shop/static/description/img/screenshot-1.svg
  40. BIN
      theme_coffee_shop/static/description/img/screenshot-2.png
  41. BIN
      theme_coffee_shop/static/description/img/screenshot-3.png
  42. BIN
      theme_coffee_shop/static/description/img/screenshot-4.png
  43. 9
      theme_coffee_shop/static/description/img/screenshot-5.svg
  44. BIN
      theme_coffee_shop/static/description/img/screenshot-img.png
  45. BIN
      theme_coffee_shop/static/description/img/screenshot-main.png
  46. BIN
      theme_coffee_shop/static/description/img/template-white-them-1.png
  47. BIN
      theme_coffee_shop/static/description/img/theme_fuge.png
  48. 10
      theme_coffee_shop/static/description/img/translate.svg
  49. 10
      theme_coffee_shop/static/description/img/wrench-icon.svg
  50. 849
      theme_coffee_shop/static/description/index.html
  51. BIN
      theme_coffee_shop/static/description/theme_screenshot.jpg
  52. 4295
      theme_coffee_shop/static/src/css/style.css
  53. BIN
      theme_coffee_shop/static/src/images/1.png
  54. 13
      theme_coffee_shop/static/src/images/1.svg
  55. 20
      theme_coffee_shop/static/src/images/2.svg
  56. 28
      theme_coffee_shop/static/src/images/3.svg
  57. 35
      theme_coffee_shop/static/src/images/4.svg
  58. 3
      theme_coffee_shop/static/src/images/Arrow 2.svg
  59. BIN
      theme_coffee_shop/static/src/images/cart.png
  60. BIN
      theme_coffee_shop/static/src/images/coffee-bannerimg.jpg
  61. BIN
      theme_coffee_shop/static/src/images/coffee-contact.png
  62. BIN
      theme_coffee_shop/static/src/images/coffee-mugs-blue-textured-wallpaper.jpg
  63. BIN
      theme_coffee_shop/static/src/images/coffee-shopimg.jpg
  64. BIN
      theme_coffee_shop/static/src/images/coffee.jpg
  65. BIN
      theme_coffee_shop/static/src/images/logo.png
  66. 238
      theme_coffee_shop/static/src/images/payment-method_69e7ec.svg
  67. 28
      theme_coffee_shop/static/src/images/thumbnail/s_process_steps.svg
  68. BIN
      theme_coffee_shop/static/src/images/thumbnail/theme_coffee.jpeg
  69. BIN
      theme_coffee_shop/static/src/images/top-view-bowls-with-coffee-beans-powder.jpg
  70. BIN
      theme_coffee_shop/static/src/images/wishlist.png
  71. 36
      theme_coffee_shop/views/about_us.xml
  72. 116
      theme_coffee_shop/views/cart_lines.xml
  73. 220
      theme_coffee_shop/views/contact_us.xml
  74. 45
      theme_coffee_shop/views/feature.xml
  75. 108
      theme_coffee_shop/views/footer.xml
  76. 21
      theme_coffee_shop/views/header.xml
  77. 289
      theme_coffee_shop/views/menu_page.xml
  78. 58
      theme_coffee_shop/views/shop.xml

50
theme_coffee_shop/README.rst

@ -0,0 +1,50 @@
.. image:: https://img.shields.io/badge/license-LGPL--3-blue.svg
:target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
Theme Coffee Shop
=================
This is a theme for Coffee Shop.
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: (V18) Mufeeda Shirin,
(V17) Sayanth M K, Sruthi M,
(V16) Ayisha Sumayya K, Abbas P,
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_coffee_shop/__init__.py

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

63
theme_coffee_shop/__manifest__.py

@ -0,0 +1,63 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2024-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 Coffee Shop',
'version': '18.0.1.0.0',
'category': 'Theme',
'summary': 'A Captivating and Practical E-Commerce Theme for Coffee Shops',
'description': 'Theme Coffee Shop brings a captivating and highly '
'practical theme crafted exclusively for e-Commerce'
' websites specializing in coffee shops. With its blend of '
'aesthetic appeal and user-centric design, this theme '
'provides an exceptional browsing and shopping experience '
'for coffee enthusiasts and customers.It encapsulates the'
' essence of a cozy coffee shop, translating it into an '
'engaging online platform for your coffee products and '
'accessories.',
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'maintainer': 'Cybrosys Techno Solutions',
'website': 'https://www.cybrosys.com',
'depends': ['website_sale_wishlist', 'auth_oauth', 'website_sale', 'sale'],
'data': [
'data/website_menu_data.xml',
'views/header.xml',
'views/footer.xml',
'views/contact_us.xml',
'views/cart_lines.xml',
'views/shop.xml',
'views/about_us.xml',
'views/feature.xml',
'views/menu_page.xml',
],
'assets': {
'web.assets_frontend': [
'theme_coffee_shop/static/src/css/style.css',
],
},
'images': ['static/description/banner.png',
'static/description/theme_screenshot.jpg'],
'license': 'LGPL-3',
'installable': True,
'auto_install': False,
'application': False
}

22
theme_coffee_shop/controllers/__init__.py

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

389
theme_coffee_shop/controllers/theme_coffee_shop.py

@ -0,0 +1,389 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2024-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 collections import defaultdict
from datetime import datetime
from itertools import product as cartesian_product
from werkzeug.exceptions import NotFound
from odoo import http, tools
from odoo.http import request
from odoo.osv import expression
from odoo.tools import lazy
from odoo.addons.website.controllers.main import QueryURL
from odoo.addons.website.models.ir_http import sitemap_qs2dom
class TableCompute(object):
"""This is used to compute the table"""
def __init__(self):
self.table = {}
def _check_place(self, posx, posy, sizex, sizey, ppr):
"""Checks the position """
res = True
for y in range(sizey):
for x in range(sizex):
if posx + x >= ppr:
res = False
break
row = self.table.setdefault(posy + y, {})
if row.setdefault(posx + x) is not None:
res = False
break
for x in range(ppr):
self.table[posy + y].setdefault(x, None)
return res
def process(self, products, ppg=20, ppr=4):
"""Compute products positions on the grid"""
minpos = 0
index = 0
maxy = 0
x = 0
for p in products:
x = min(max(p.website_size_x, 1), ppr)
y = min(max(p.website_size_y, 1), ppr)
if index >= ppg:
x = y = 1
pos = minpos
while not self._check_place(pos % ppr, pos // ppr, x, y, ppr):
pos += 1
# if 21st products (index 20) and the last line is full , break
# (pos + 1.0) / ppr is the line where the product would be inserted
# maxy is the number of existing lines
# + 1.0 is because pos begins at 0,
# thus pos 20 is actually the 21st block
# and to force python to not round the division operation
if index >= ppg and ((pos + 1.0) // ppr) > maxy:
break
if x == 1 and y == 1: # simple heuristic for CPU optimization
minpos = pos // ppr
for y2 in range(y):
for x2 in range(x):
self.table[(pos // ppr) + y2][(pos % ppr) + x2] = False
self.table[pos // ppr][pos % ppr] = {
'product': p, 'x': x, 'y': y,
'ribbon': p.sudo().website_ribbon_id,
}
if index <= ppg:
maxy = max(maxy, y + (pos // ppr))
index += 1
# Format table according to HTML needs
rows = sorted(self.table.items())
rows = [r[1] for r in rows]
for col in range(len(rows)):
cols = sorted(rows[col].items())
x += len(cols)
rows[col] = [r[1] for r in cols if r[1]]
return rows
class ThemeCoffeeMenu(http.Controller):
""" Controller for rendering datas to menu page """
#
def _get_search_order(self, post):
""" OrderBy will be parsed in orm and so no direct sql injection id is
added to be sure that order is a unique sort key
"""
order = post.get('order') or request.env[
'website'].get_current_website().shop_default_sort
return 'is_published desc, %s, id desc' % order
def _get_search_domain(self, search, category, attrib_values,
search_in_description=True):
"""Function for getting search domain"""
domains = [request.website.sale_product_domain()]
if search:
for srch in search.split(" "):
subdomains = [
[('name', 'ilike', srch)],
[('product_variant_ids.default_code', 'ilike', srch)]
]
if search_in_description:
subdomains.append([('website_description', 'ilike', srch)])
subdomains.append([('description_sale', 'ilike', srch)])
domains.append(expression.OR(subdomains))
if category:
domains.append([('public_categ_ids', 'child_of', int(category))])
if attrib_values:
attrib = None
ids = []
for value in attrib_values:
if not attrib:
attrib = value[0]
ids.append(value[1])
elif value[0] == attrib:
ids.append(value[1])
else:
domains.append([
('attribute_line_ids.value_ids', 'in', ids)])
attrib = value[0]
ids = [value[1]]
if attrib:
domains.append([('attribute_line_ids.value_ids', 'in', ids)])
return expression.AND(domains)
def sitemap_shop(env, rule, qs):
"""Sitemap for shop"""
if not qs or qs.lower() in '/menu':
yield {'loc': '/menu'}
category = env['product.public.category']
dom = sitemap_qs2dom(qs, '/menu/category', category._rec_name)
dom += env['website'].get_current_website().website_domain()
for cat in category.search(dom):
loc = '/menu/category/%s' % env['ir.http']._slug(cat)
if not qs or qs.lower() in loc:
yield {'loc': loc}
def _get_search_options(
self, category=None, attrib_values=None, pricelist=None, **post):
"""Function for returning search options"""
return {
'displayDescription': True,
'displayDetail': True,
'displayExtraDetail': True,
'displayExtraLink': True,
'displayImage': True,
'allowFuzzy': not post.get('noFuzzy'),
'category': str(category.id) if category else None,
'attrib_values': attrib_values,
'display_currency': pricelist.currency_id,
}
def _shop_lookup_products(self, attrib_set, options,
post, search, website):
""" No limit because attributes are obtained from complete
product list"""
product_count, details, fuzzy_search_term = website._search_with_fuzzy(
"products_only", search, limit=None,
order=self._get_search_order(post), options=options
)
search_result = details[0].get(
'results', request.env['product.template']
).with_context(bin_size=True)
if attrib_set:
attribute_values = request.env[
'product.attribute.value'].browse(attrib_set)
values_per_attribute = defaultdict(
lambda: request.env['product.attribute.value'])
multi_value_attribute = False
for value in attribute_values:
values_per_attribute[value.attribute_id] |= value
if len(values_per_attribute[value.attribute_id]) > 1:
multi_value_attribute = True
def filter_template(template, attribute_values_list):
"""Transform product.attribute.value to
product.template.attribute.value """
attribute_value_to_ptav = {}
for ptav in \
template.attribute_line_ids.product_template_value_ids:
attribute_value_to_ptav[
ptav.product_attribute_value_id] = ptav.id
possible_combinations = False
for attribute_values in attribute_values_list:
ptav_ids = [attribute_value_to_ptav[val] for val in
attribute_values if
val in attribute_value_to_ptav]
ptavs = request.env[
'product.template.attribute.value'].browse(ptav_ids)
if len(ptavs) < len(attribute_values):
continue
if len(ptavs) == len(template.attribute_line_ids):
if template._is_combination_possible(ptavs):
return True
elif len(ptavs) < len(template.attribute_line_ids):
if len(attribute_values_list) == 1:
possible_combinations = (
template._get_possible_combinations(
necessary_values=ptavs))
if any(possible_combinations):
return True
if not possible_combinations:
possible_combinations = (
template._get_possible_combinations())
for combination in possible_combinations:
if ptavs.issubset(combination):
return True
return False
if not multi_value_attribute:
possible_attrib_values_list = [attribute_values]
else:
possible_attrib_values_list = [attribute_values] if not \
multi_value_attribute else \
[request.env['product.attribute.value']
.browse([rec.id for rec in values]) for values in
cartesian_product(*values_per_attribute.values())]
search_result = search_result.filtered(
lambda tmpl: filter_template(possible_attrib_values_list)
)
return fuzzy_search_term, product_count, search_result
def _menu_get_query_url_kwargs(self, category, search, attrib=None,
order=None):
"""Function for returning category, search, order and attribute"""
return {
'category': category,
'search': search,
'attrib': attrib,
'order': order,
}
@http.route([
'/menu',
'/menu/page/<int:page>',
'/menu/category/<model("product.public.category"):category>',
'/menu/category/<model("product.public.category"):'
'category>/page/<int:page>',
], type='http', auth="public", website=True, sitemap=sitemap_shop)
def menu_page(self, page=0, category=None, search='',
min_price=0.0, max_price=0.0, ppg=False, **post):
"""Function for rendering menu page"""
category_id = request.env['product.public.category']
if category:
category = category_id.search([('id', '=', int(category))],
limit=1)
if not category or not category.can_access_from_current_website():
raise NotFound()
else:
category = category_id
website = request.env['website'].get_current_website()
if ppg:
try:
ppg = int(ppg)
post['ppg'] = ppg
except ValueError:
ppg = False
if not ppg:
ppg = website.shop_ppg or 20
ppr = website.shop_ppr or 4
attrib_list = request.httprequest.args.getlist('attrib')
attrib_values = [[int(rec) for rec in res.split("-")]
for res in attrib_list if res
]
attributes_ids = {res[0] for res in attrib_values}
attrib_set = {res[1] for res in attrib_values}
keep = QueryURL('/menu', **self._menu_get_query_url_kwargs(
category and int(category), search, min_price, max_price, **post))
now = datetime.timestamp(datetime.now())
pricelist = request.env['product.pricelist']. \
browse(request.session.get('website_sale_current_pl'))
if not pricelist or request.session. \
get('website_sale_pricelist_time', 0) < now - 60 * 60:
pricelist = website.pricelist_id
request.session['website_sale_pricelist_time'] = now
request.session['website_sale_current_pl'] = pricelist.id
request.update_context(pricelist=pricelist.id,
partner=request.env.user.partner_id)
url = "/menu"
if search:
post["search"] = search
if attrib_list:
post['attrib'] = attrib_list
options = self._get_search_options(
category=category,
attrib_values=attrib_values,
pricelist=pricelist,
**post
)
fuzzy_search_term, product_count, search_product = \
self._shop_lookup_products(
attrib_set, options, post, search, website)
website_domain = website.website_domain()
categs_domain = [('parent_id', '=', False)] + website_domain
if search:
search_categories = category_id.search(
[('product_tmpl_ids', 'in', search_product.ids)
] + website_domain
).parents_and_self
categs_domain.append(('id', 'in', search_categories.ids))
else:
search_categories = category_id
categs = lazy(lambda: category_id.search(categs_domain))
if category:
url = "/menu/category/%s" % request.env['ir.http']._slug(category)
pager = website.pager(url=url, total=product_count, page=page,
step=ppg, scope=7, url_args=post)
offset = pager['offset']
products = search_product[offset:offset + ppg]
product_attribute = request.env['product.attribute']
if products:
attributes = lazy(lambda: product_attribute.search([
('product_tmpl_ids', 'in', search_product.ids),
('visibility', '=', 'visible'),
]))
else:
attributes = lazy(lambda: product_attribute.browse(attributes_ids))
layout_mode = request.session.get('website_sale_shop_layout_mode')
if not layout_mode:
if website.viewref('website_sale.products_list_view').active:
layout_mode = 'list'
else:
layout_mode = 'grid'
request.session['website_sale_shop_layout_mode'] = layout_mode
# Try to fetch geoip based fpos or fallback on partner one
products_prices = lazy(
lambda: products._get_sales_prices(website))
values = {
'order': post.get('order', ''),
'category': category,
'attrib_values': attrib_values,
'attrib_set': attrib_set,
'pager': pager,
'pricelist': pricelist,
'add_qty': int(post.get('add_qty', 1)),
'products': products,
'search_product': search_product,
'search_count': product_count,
'bins': lazy(lambda: TableCompute().process(
products, ppg, ppr)),
'ppg': ppg,
'ppr': ppr,
'categories': categs,
'attributes': attributes,
'keep': keep,
'search_categories_ids': search_categories.ids,
'products_prices': products_prices,
'get_product_prices': lambda product: lazy(
lambda: products_prices[product.id]
),
'float_round': tools.float_round,
}
if category:
values['main_object'] = category
return request.render("theme_coffee_shop.coffee_menu", values)
@http.route(['/menu/<model("product.template"):product>'], type='http',
auth="public", website=True, sitemap=True)
def product(self, product, category='', search='', **kwargs):
"""Function for rendering product page"""
if not request.website.has_ecommerce_access():
return request.redirect('/web/login')
return request.render("website_sale.product",
self._prepare_product_values(product, category,
search, **kwargs))

26
theme_coffee_shop/data/website_menu_data.xml

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<data noupdate="1">
<!-- Define a menu item for "About us" -->
<record id="menu_about_sub" model="website.menu">
<field name="name">About us</field>
<field name="url">/about</field>
<field name="parent_id" ref="website.main_menu"/>
<field name="sequence" type="int">30</field>
</record>
<!-- Define a menu item for "Features" -->
<record id="menu_feature" model="website.menu">
<field name="name">Features</field>
<field name="url">/feature</field>
<field name="parent_id" ref="website.main_menu"/>
<field name="sequence" type="int">35</field>
</record>
<!-- Define a menu item for "Menu" -->
<record id="menu_menu" model="website.menu">
<field name="name">Menu</field>
<field name="url">/menu</field>
<field name="parent_id" ref="website.main_menu"/>
<field name="sequence" type="int">15</field>
</record>
</data>
</odoo>

6
theme_coffee_shop/doc/RELEASE_NOTES.md

@ -0,0 +1,6 @@
## Module <theme_coffee_shop>
#### 01.11.2024
#### Version 18.0.1.0.0
#### ADD
- Initial commit for Theme Coffee Shop

22
theme_coffee_shop/models/__init__.py

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

40
theme_coffee_shop/models/theme_utils.py

@ -0,0 +1,40 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2024-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 api, models
class ThemeUtils(models.AbstractModel):
""" Class for enable and disable templates when using coffee shop theme """
_inherit = 'theme.utils'
@api.model
def _theme_coffee_shop_post_copy(self, mod):
""" Enable and disable templates when using coffee shop theme """
self.enable_view("website_sale.products_categories")
self.enable_view("website_sale.products_description")
self.enable_view("website_sale.products_design_card")
self.enable_view("website_sale.products_add_to_cart")
self.enable_view("website_sale.product_comment")
self.enable_view("website_sale.option_collapse_products_categories")
self.enable_view("website_sale.product_buy_now")
self.disable_view("website_sale.products_categories_top")
self.disable_view("website_sale.products_design_grid")

BIN
theme_coffee_shop/static/description/banner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 KiB

BIN
theme_coffee_shop/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

BIN
theme_coffee_shop/static/description/img/01.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 KiB

BIN
theme_coffee_shop/static/description/img/1.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

BIN
theme_coffee_shop/static/description/img/2.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 415 KiB

BIN
theme_coffee_shop/static/description/img/3.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 KiB

BIN
theme_coffee_shop/static/description/img/Banner-1.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 KiB

BIN
theme_coffee_shop/static/description/img/Banner-2.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 KiB

10
theme_coffee_shop/static/description/img/arrows-repeat.svg

@ -0,0 +1,10 @@
<svg width="34" height="34" viewBox="0 0 34 34" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_48_838)">
<path d="M0.000110011 16.2916C0.000110011 9.65172 5.40186 4.24997 12.0418 4.24997H26.9168V1.89405C26.9168 0.631803 28.4425 -3.05772e-05 29.335 0.892469L33.585 5.37339C34.1389 5.9273 34.1375 6.82405 33.585 7.37655L29.335 11.8575C28.4425 12.75 26.9168 12.1181 26.9168 10.8559V8.49997H12.0418C7.74503 8.49997 4.25011 11.9963 4.25011 16.2916C4.25011 17.4646 3.29953 18.4166 2.12511 18.4166C0.950693 18.4166 0.000110011 17.4646 0.000110011 16.2916ZM31.8751 15.5833C30.7007 15.5833 29.7501 16.5353 29.7501 17.7083C29.7501 22.0036 26.2552 25.5 21.9584 25.5H7.08344V23.1441C7.08344 21.8818 5.55769 21.25 4.66519 22.1425L0.415193 26.6234C-0.138723 27.1773 -0.138723 28.0741 0.415193 28.6266L4.66519 33.1075C5.55769 34 7.08344 33.3681 7.08344 32.1059V29.75H21.9584C28.5984 29.75 34.0001 24.3482 34.0001 17.7083C34.0001 16.5353 33.0495 15.5833 31.8751 15.5833Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_48_838">
<rect width="34" height="34" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

66
theme_coffee_shop/static/description/img/banner-bg-1.svg

@ -0,0 +1,66 @@
<svg width="1408" height="694" viewBox="0 0 1408 694" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_2133_160)">
<rect width="1408" height="694" rx="32" fill="url(#paint0_linear_2133_160)"/>
<g clip-path="url(#clip1_2133_160)">
<g opacity="0.3" clip-path="url(#clip2_2133_160)">
<g clip-path="url(#clip3_2133_160)">
<path d="M356.462 674.053C353.888 671.48 353.887 668.9 356.457 666.329C353.887 668.9 351.307 668.898 348.734 666.325C351.307 668.898 351.309 671.478 348.738 674.049C351.309 671.478 353.888 671.48 356.462 674.053ZM349.506 667.098C351.57 669.161 353.624 669.162 355.686 667.101C353.624 669.162 353.626 671.217 355.689 673.28C353.626 671.217 351.571 671.216 349.51 673.277C351.571 671.216 351.57 669.161 349.506 667.098Z" fill="#375DFB"/>
<path d="M395.06 635.455C392.487 632.881 392.485 630.301 395.056 627.73C392.485 630.301 389.906 630.3 387.332 627.726C389.906 630.3 389.907 632.88 387.336 635.45C389.907 632.88 392.487 632.881 395.06 635.455ZM388.105 628.499C390.168 630.563 392.223 630.564 394.284 628.502C392.223 630.564 392.224 632.618 394.288 634.682C392.224 632.618 390.17 632.617 388.108 634.678C390.17 632.617 390.168 630.563 388.105 628.499Z" fill="#375DFB"/>
<path d="M434.475 674.869C431.383 671.777 431.381 668.688 434.469 665.6C431.381 668.688 428.292 668.686 425.201 665.595C428.292 668.686 428.294 671.776 425.206 674.864C428.294 671.776 431.383 671.777 434.475 674.869ZM426.128 666.522C428.601 668.995 431.073 668.997 433.543 666.526C431.073 668.997 431.074 671.468 433.547 673.941C431.074 671.468 428.602 671.467 426.132 673.937C428.602 671.467 428.601 668.995 426.128 666.522Z" fill="#375DFB"/>
<path d="M433.659 596.856C431.085 594.282 431.084 591.703 433.655 589.132C431.084 591.703 428.504 591.701 425.931 589.128C428.504 591.701 428.506 594.281 425.935 596.852C428.506 594.281 431.085 594.282 433.659 596.856ZM426.703 589.901C428.767 591.964 430.821 591.965 432.883 589.904C430.821 591.965 430.823 594.02 432.886 596.083C430.823 594.02 428.768 594.019 426.707 596.08C428.768 594.019 428.767 591.964 426.703 589.901Z" fill="#375DFB"/>
<path d="M473.073 636.27C469.982 633.179 469.98 630.089 473.068 627.001C469.98 630.089 466.89 630.088 463.799 626.996C466.89 630.088 466.892 633.177 463.804 636.265C466.892 633.177 469.982 633.179 473.073 636.27ZM464.727 627.924C467.2 630.397 469.671 630.398 472.142 627.928C469.671 630.398 469.673 632.87 472.146 635.343C469.673 632.87 467.201 632.868 464.731 635.339C467.201 632.868 467.2 630.397 464.727 627.924Z" fill="#375DFB"/>
<path d="M512.487 675.684C508.878 672.075 508.876 668.476 512.481 664.871C508.876 668.476 505.277 668.474 501.668 664.865C505.277 668.474 505.279 672.073 501.674 675.678C505.279 672.073 508.878 672.075 512.487 675.684ZM502.75 665.947C505.632 668.829 508.521 668.831 511.4 665.952C508.521 668.831 508.523 671.72 511.405 674.602C508.523 671.72 505.634 671.718 502.754 674.598C505.634 671.718 505.632 668.829 502.75 665.947Z" fill="#375DFB"/>
<path d="M472.257 558.257C469.684 555.684 469.683 553.104 472.253 550.533C469.683 553.104 467.103 553.103 464.529 550.529C467.103 553.103 467.104 555.683 464.533 558.253C467.104 555.683 469.684 555.684 472.257 558.257ZM465.302 551.302C467.365 553.365 469.42 553.367 471.481 551.305C469.42 553.367 469.421 555.421 471.485 557.485C469.421 555.421 467.367 555.42 465.305 557.481C467.367 555.42 467.365 553.365 465.302 551.302Z" fill="#375DFB"/>
<path d="M511.672 597.672C508.58 594.58 508.579 591.491 511.666 588.403C508.579 591.491 505.489 591.489 502.398 588.398C505.489 591.489 505.491 594.579 502.403 597.666C505.491 594.579 508.58 594.58 511.672 597.672ZM503.325 589.325C505.798 591.798 508.27 591.8 510.74 589.329C508.27 591.8 508.271 594.271 510.744 596.744C508.271 594.271 505.799 594.27 503.329 596.74C505.799 594.27 505.798 591.798 503.325 589.325Z" fill="#375DFB"/>
<path d="M551.086 637.086C547.477 633.477 547.475 629.877 551.08 626.272C547.475 629.877 543.875 629.875 540.266 626.266C543.875 629.875 543.877 633.475 540.272 637.08C543.877 633.475 547.477 633.477 551.086 637.086ZM541.348 627.348C544.231 630.231 547.12 630.232 549.999 627.353C547.12 630.232 547.121 633.121 550.004 636.004C547.121 633.121 544.232 633.12 541.353 635.999C544.232 633.12 544.231 630.231 541.348 627.348Z" fill="#375DFB"/>
<path d="M590.5 676.5C586.381 672.381 586.379 668.256 590.493 664.142C586.379 668.256 582.254 668.254 578.135 664.135C582.254 668.254 582.256 672.379 578.142 676.493C582.256 672.379 586.381 672.381 590.5 676.5ZM579.371 665.371C582.671 668.671 585.962 668.673 589.258 665.377C585.962 668.673 585.963 671.964 589.263 675.263C585.963 671.964 582.673 671.962 579.377 675.258C582.673 671.962 582.671 668.671 579.371 665.371Z" fill="#375DFB"/>
<path d="M510.856 519.659C508.282 517.085 508.281 514.506 510.852 511.935C508.281 514.506 505.701 514.504 503.128 511.931C505.701 514.504 505.703 517.084 503.132 519.655C505.703 517.084 508.282 517.085 510.856 519.659ZM503.9 512.703C505.964 514.767 508.019 514.768 510.08 512.707C508.019 514.768 508.02 516.823 510.083 518.886C508.02 516.823 505.965 516.822 503.904 518.883C505.965 516.822 505.964 514.767 503.9 512.703Z" fill="#375DFB"/>
<path d="M550.27 559.073C547.179 555.982 547.177 552.892 550.265 549.804C547.177 552.892 544.087 552.89 540.996 549.799C544.087 552.89 544.089 555.98 541.001 559.068C544.089 555.98 547.179 555.982 550.27 559.073ZM541.924 550.727C544.397 553.2 546.868 553.201 549.339 550.731C546.868 553.201 546.87 555.673 549.343 558.146C546.87 555.673 544.398 555.671 541.928 558.142C544.398 555.671 544.397 553.2 541.924 550.727Z" fill="#375DFB"/>
<path d="M589.684 598.487C586.075 594.878 586.073 591.279 589.678 587.674C586.073 591.279 582.474 591.277 578.865 587.668C582.474 591.277 582.476 594.876 578.871 598.481C582.476 594.876 586.075 594.878 589.684 598.487ZM579.947 588.75C582.829 591.632 585.718 591.634 588.598 588.755C585.718 591.634 585.72 594.523 588.602 597.405C585.72 594.523 582.831 594.521 579.951 597.401C582.831 594.521 582.829 591.632 579.947 588.75Z" fill="#375DFB"/>
<path d="M549.454 481.06C546.881 478.487 546.879 475.907 549.45 473.336C546.879 475.907 544.3 475.906 541.726 473.332C544.3 475.906 544.301 478.485 541.73 481.056C544.301 478.485 546.881 478.487 549.454 481.06ZM542.499 474.105C544.562 476.168 546.617 476.17 548.678 474.108C546.617 476.17 546.618 478.224 548.682 480.288C546.618 478.224 544.564 478.223 542.502 480.284C544.564 478.223 544.562 476.168 542.499 474.105Z" fill="#375DFB"/>
<path d="M588.869 520.475C585.777 517.383 585.776 514.294 588.864 511.206C585.776 514.294 582.686 514.292 579.595 511.201C582.686 514.292 582.688 517.382 579.6 520.469C582.688 517.382 585.777 517.383 588.869 520.475ZM580.522 512.128C582.995 514.601 585.467 514.602 587.937 512.132C585.467 514.602 585.468 517.074 587.941 519.547C585.468 517.074 582.997 517.073 580.526 519.543C582.997 517.073 582.995 514.601 580.522 512.128Z" fill="#375DFB"/>
<path d="M588.053 442.462C585.48 439.888 585.478 437.308 588.049 434.738C585.478 437.308 582.898 437.307 580.325 434.734C582.898 437.307 582.9 439.887 580.329 442.458C582.9 439.887 585.48 439.888 588.053 442.462ZM581.098 435.506C583.161 437.57 585.216 437.571 587.277 435.51C585.216 437.571 585.217 439.626 587.28 441.689C585.217 439.626 583.162 439.624 581.101 441.686C583.162 439.624 583.161 437.57 581.098 435.506Z" fill="#375DFB"/>
<path d="M317.455 673.645C315.137 671.327 315.136 669.01 317.452 666.694C315.136 669.01 312.818 669.008 310.5 666.69C312.818 669.008 312.82 671.325 310.504 673.641C312.82 671.325 315.137 671.327 317.455 673.645ZM311.196 667.385C313.05 669.24 314.904 669.241 316.757 667.388C314.904 669.241 314.905 671.095 316.76 672.95C314.905 671.095 313.051 671.094 311.199 672.947C313.051 671.094 313.05 669.24 311.196 667.385Z" fill="#375DFB"/>
<path d="M356.054 635.047C353.736 632.728 353.734 630.411 356.05 628.095C353.734 630.411 351.417 630.41 349.099 628.091C351.417 630.41 351.418 632.727 349.102 635.043C351.418 632.727 353.736 632.728 356.054 635.047ZM349.794 628.787C351.649 630.642 353.503 630.643 355.355 628.79C353.503 630.643 353.504 632.496 355.358 634.351C353.504 632.496 351.65 632.495 349.797 634.348C351.65 632.495 351.649 630.642 349.794 628.787Z" fill="#375DFB"/>
<path d="M395.468 674.461C392.632 671.625 392.63 668.798 395.463 665.964C392.63 668.798 389.803 668.796 386.967 665.96C389.803 668.796 389.805 671.623 386.972 674.456C389.805 671.623 392.632 671.625 395.468 674.461ZM387.817 666.81C390.082 669.074 392.352 669.076 394.614 666.814C392.352 669.076 392.354 671.346 394.618 673.611C392.354 671.346 390.083 671.345 387.821 673.607C390.083 671.345 390.082 669.074 387.817 666.81Z" fill="#375DFB"/>
<path d="M394.653 596.448C392.334 594.13 392.333 591.813 394.649 589.497C392.333 591.813 390.016 591.811 387.697 589.493C390.016 591.811 390.017 594.128 387.701 596.444C390.017 594.128 392.334 594.13 394.653 596.448ZM388.393 590.188C390.247 592.043 392.101 592.044 393.954 590.191C392.101 592.044 392.102 593.898 393.957 595.753C392.102 593.898 390.248 593.897 388.396 595.75C390.248 593.897 390.247 592.043 388.393 590.188Z" fill="#375DFB"/>
<path d="M434.067 635.862C431.23 633.026 431.229 630.199 434.062 627.366C431.229 630.199 428.402 630.198 425.566 627.361C428.402 630.198 428.403 633.024 425.57 635.858C428.403 633.024 431.23 633.026 434.067 635.862ZM426.416 628.211C428.68 630.476 430.951 630.477 433.213 628.215C430.951 630.477 430.952 632.748 433.217 635.012C430.952 632.748 428.681 632.747 426.419 635.008C428.681 632.747 428.68 630.476 426.416 628.211Z" fill="#375DFB"/>
<path d="M473.481 675.277C470.135 671.93 470.133 668.578 473.475 665.235C470.133 668.578 466.78 668.576 463.434 665.23C466.78 668.576 466.782 671.928 463.44 675.271C466.782 671.928 470.135 671.93 473.481 675.277ZM464.439 666.235C467.121 668.916 469.793 668.918 472.472 666.239C469.793 668.918 469.794 671.59 472.476 674.272C469.794 671.59 467.122 671.589 464.443 674.267C467.122 671.589 467.121 668.916 464.439 666.235Z" fill="#375DFB"/>
<path d="M433.251 557.85C430.933 555.531 430.931 553.214 433.247 550.898C430.931 553.214 428.614 553.213 426.296 550.894C428.614 553.213 428.615 555.53 426.299 557.846C428.615 555.53 430.933 555.531 433.251 557.85ZM426.991 551.59C428.846 553.444 430.7 553.446 432.552 551.593C430.7 553.446 430.701 555.299 432.556 557.154C430.701 555.299 428.847 555.298 426.994 557.151C428.847 555.298 428.846 553.444 426.991 551.59Z" fill="#375DFB"/>
<path d="M472.665 597.264C469.829 594.428 469.827 591.601 472.661 588.767C469.827 591.601 467 591.599 464.164 588.763C467 591.599 467.002 594.426 464.169 597.259C467.002 594.426 469.829 594.428 472.665 597.264ZM465.014 589.613C467.279 591.877 469.549 591.879 471.811 589.617C469.549 591.879 469.551 594.149 471.815 596.414C469.551 594.149 467.28 594.148 465.018 596.41C467.28 594.148 467.279 591.877 465.014 589.613Z" fill="#375DFB"/>
<path d="M512.079 636.678C508.733 633.332 508.731 629.979 512.074 626.637C508.731 629.979 505.379 629.978 502.033 626.631C505.379 629.978 505.381 633.33 502.038 636.672C505.381 633.33 508.733 633.332 512.079 636.678ZM503.037 627.636C505.719 630.318 508.392 630.319 511.07 627.64C508.392 630.319 508.393 632.992 511.075 635.673C508.393 632.992 505.721 632.99 503.042 635.669C505.721 632.99 505.719 630.318 503.037 627.636Z" fill="#375DFB"/>
<path d="M551.494 676.092C547.629 672.228 547.627 668.366 551.487 664.506C547.627 668.366 543.765 668.364 539.901 664.5C543.765 668.364 543.767 672.226 539.908 676.086C543.767 672.226 547.629 672.228 551.494 676.092ZM541.06 665.659C544.152 668.75 547.241 668.752 550.329 665.664C547.241 668.752 547.243 671.842 550.334 674.933C547.243 671.842 544.153 671.84 541.066 674.928C544.153 671.84 544.152 668.75 541.06 665.659Z" fill="#375DFB"/>
<path d="M471.85 519.251C469.531 516.933 469.53 514.615 471.846 512.299C469.53 514.615 467.213 514.614 464.894 512.296C467.213 514.614 467.214 516.931 464.898 519.247C467.214 516.931 469.531 516.933 471.85 519.251ZM465.59 512.991C467.444 514.846 469.298 514.847 471.151 512.994C469.298 514.847 469.299 516.701 471.154 518.556C469.299 516.701 467.445 516.7 465.593 518.552C467.445 516.7 467.444 514.846 465.59 512.991Z" fill="#375DFB"/>
<path d="M511.264 558.665C508.428 555.829 508.426 553.002 511.259 550.169C508.426 553.002 505.599 553 502.763 550.164C505.599 553 505.601 555.827 502.767 558.661C505.601 555.827 508.428 555.829 511.264 558.665ZM503.613 551.014C505.877 553.279 508.148 553.28 510.41 551.018C508.148 553.28 508.149 555.551 510.414 557.815C508.149 555.551 505.878 555.55 503.617 557.811C505.878 555.55 505.877 553.279 503.613 551.014Z" fill="#375DFB"/>
<path d="M550.678 598.079C547.332 594.733 547.33 591.381 550.672 588.038C547.33 591.381 543.978 591.379 540.631 588.033C543.978 591.379 543.979 594.731 540.637 598.074C543.979 594.731 547.332 594.733 550.678 598.079ZM541.636 589.037C544.318 591.719 546.99 591.721 549.669 589.042C546.99 591.721 546.992 594.393 549.673 597.075C546.992 594.393 544.319 594.392 541.64 597.07C544.319 594.392 544.318 591.719 541.636 589.037Z" fill="#375DFB"/>
<path d="M590.092 637.494C586.228 633.63 586.226 629.768 590.086 625.908C586.226 629.768 582.364 629.765 578.5 625.901C582.364 629.765 582.366 633.627 578.506 637.487C582.366 633.627 586.228 633.63 590.092 637.494ZM579.659 627.061C582.75 630.152 585.84 630.154 588.928 627.066C585.84 630.154 585.842 633.243 588.933 636.334C585.842 633.243 582.752 633.241 579.664 636.329C582.752 633.241 582.75 630.152 579.659 627.061Z" fill="#375DFB"/>
<path d="M510.448 480.653C508.13 478.334 508.128 476.017 510.444 473.701C508.128 476.017 505.811 476.016 503.493 473.697C505.811 476.016 505.812 478.333 503.497 480.649C505.812 478.333 508.13 478.334 510.448 480.653ZM504.188 474.393C506.043 476.247 507.897 476.248 509.749 474.396C507.897 476.248 507.898 478.102 509.753 479.957C507.898 478.102 506.044 478.101 504.191 479.954C506.044 478.101 506.043 476.247 504.188 474.393Z" fill="#375DFB"/>
<path d="M549.862 520.067C547.026 517.231 547.024 514.403 549.858 511.57C547.024 514.403 544.197 514.402 541.361 511.566C544.197 514.402 544.199 517.229 541.366 520.062C544.199 517.229 547.026 517.231 549.862 520.067ZM542.211 512.416C544.476 514.68 546.747 514.681 549.008 512.42C546.747 514.681 546.748 516.952 549.012 519.217C546.748 516.952 544.477 516.951 542.215 519.213C544.477 516.951 544.476 514.68 542.211 512.416Z" fill="#375DFB"/>
<path d="M589.276 559.481C585.93 556.135 585.928 552.782 589.271 549.44C585.928 552.782 582.576 552.781 579.23 549.434C582.576 552.781 582.578 556.133 579.235 559.475C582.578 556.133 585.93 556.135 589.276 559.481ZM580.234 550.439C582.916 553.121 585.589 553.122 588.267 550.443C585.589 553.122 585.59 555.795 588.272 558.476C585.59 555.795 582.918 555.793 580.239 558.472C582.918 555.793 582.916 553.121 580.234 550.439Z" fill="#375DFB"/>
<path d="M549.047 442.054C546.728 439.735 546.727 437.418 549.043 435.102C546.727 437.418 544.41 437.417 542.091 435.099C544.41 437.417 544.411 439.734 542.095 442.05C544.411 439.734 546.728 439.735 549.047 442.054ZM542.787 435.794C544.642 437.649 546.495 437.65 548.348 435.797C546.495 437.65 546.496 439.504 548.351 441.358C546.496 439.504 544.643 439.503 542.79 441.355C544.643 439.503 544.642 437.649 542.787 435.794Z" fill="#375DFB"/>
<path d="M588.461 481.468C585.625 478.632 585.623 475.805 588.456 472.972C585.623 475.805 582.796 475.803 579.96 472.967C582.796 475.803 582.798 478.63 579.964 481.464C582.798 478.63 585.625 478.632 588.461 481.468ZM580.81 473.817C583.074 476.082 585.345 476.083 587.607 473.821C585.345 476.083 585.346 478.354 587.611 480.618C585.346 478.354 583.075 478.352 580.814 480.614C583.075 478.352 583.074 476.082 580.81 473.817Z" fill="#375DFB"/>
<path d="M587.645 403.455C585.327 401.137 585.325 398.82 587.641 396.504C585.325 398.82 583.008 398.818 580.69 396.5C583.008 398.818 583.01 401.136 580.694 403.452C583.01 401.136 585.327 401.137 587.645 403.455ZM581.385 397.196C583.24 399.05 585.094 399.051 586.947 397.199C585.094 399.051 585.095 400.905 586.95 402.76C585.095 400.905 583.241 400.904 581.388 402.757C583.241 400.904 583.24 399.05 581.385 397.196Z" fill="#375DFB"/>
</g>
</g>
</g>
<rect x="0.5" y="0.5" width="1407" height="693" rx="31.5" stroke="#D6E0FF"/>
</g>
<defs>
<linearGradient id="paint0_linear_2133_160" x1="704" y1="0" x2="704" y2="694" gradientUnits="userSpaceOnUse">
<stop stop-color="#E5EEFF"/>
<stop offset="1" stop-color="#F9FBFF"/>
</linearGradient>
<clipPath id="clip0_2133_160">
<rect width="1408" height="694" rx="32" fill="white"/>
</clipPath>
<clipPath id="clip1_2133_160">
<rect width="281" height="281" fill="white" transform="translate(311 397)"/>
</clipPath>
<clipPath id="clip2_2133_160">
<rect width="281" height="281" fill="white" transform="translate(310.5 396.5)"/>
</clipPath>
<clipPath id="clip3_2133_160">
<rect width="281" height="281" fill="white" transform="translate(310.5 396.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 16 KiB

BIN
theme_coffee_shop/static/description/img/banner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 KiB

49
theme_coffee_shop/static/description/img/banner.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 1.2 MiB

10
theme_coffee_shop/static/description/img/check.svg

@ -0,0 +1,10 @@
<svg width="512" height="512" viewBox="0 0 512 512" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1413_85)">
<path d="M512 256.002C512 219.82 493.653 187.927 465.749 169.111C472.171 136.087 462.592 100.567 437.013 74.9671C411.435 49.3885 375.915 39.8098 342.869 46.2311C324.053 18.3271 292.16 -0.0195312 255.979 -0.0195312C219.797 -0.0195312 187.904 18.3271 169.088 46.2311C136.064 39.8098 100.523 49.3885 74.944 74.9671C49.3653 100.546 39.7866 136.066 46.2079 169.111C18.3039 187.927 -0.0427246 219.82 -0.0427246 256.002C-0.0427246 292.183 18.3039 324.076 46.2079 342.892C39.7866 375.916 49.3653 411.458 74.944 437.036C100.523 462.615 136.043 472.194 169.088 465.772C187.904 493.676 219.797 512.023 255.979 512.023C292.16 512.023 324.053 493.676 342.869 465.772C375.893 472.194 411.435 462.615 437.013 437.036C462.592 411.458 472.171 375.938 465.749 342.892C493.653 324.076 512 292.183 512 256.002ZM254.059 328.94C245.803 337.196 234.944 341.314 224.043 341.314C213.141 341.314 202.176 337.154 193.835 328.834L134.485 271.319L164.203 240.663L223.787 298.412L347.712 176.791L377.664 207.191L254.059 328.94Z" fill="#4AB58E"/>
</g>
<defs>
<clipPath id="clip0_1413_85">
<rect width="512" height="512" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
theme_coffee_shop/static/description/img/coffee_01.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 558 KiB

BIN
theme_coffee_shop/static/description/img/countactus.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 KiB

BIN
theme_coffee_shop/static/description/img/demo-1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 MiB

BIN
theme_coffee_shop/static/description/img/demo-2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

BIN
theme_coffee_shop/static/description/img/demo-3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

BIN
theme_coffee_shop/static/description/img/demo-5.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 MiB

13
theme_coffee_shop/static/description/img/feature-star.svg

@ -0,0 +1,13 @@
<svg width="512" height="512" viewBox="0 0 512 512" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_164_404)">
<path d="M256 0C114.841 0 0 114.841 0 256C0 397.159 114.841 512 256 512C256.025 512 256.049 511.999 256.074 511.999L282.08 253.809L256.074 0.001C256.049 0.001 256.025 0 256 0Z" fill="#FFF4CB"/>
<path d="M512 256C512 114.866 397.199 0.0409766 256.074 0.000976562V511.999C397.199 511.959 512 397.134 512 256Z" fill="#FFE99A"/>
<path d="M243.382 78.1571L188.343 163.79L89.8933 189.673C84.9563 190.971 81.0193 194.69 79.4423 199.545C77.8653 204.4 78.8643 209.723 82.0953 213.675L146.529 292.482L140.723 394.111C140.432 399.207 142.752 404.101 146.882 407.102C149.483 408.992 152.576 409.967 155.699 409.967C157.534 409.967 159.379 409.631 161.139 408.945L255.999 372.018L266 253.887L255.999 71.2671C250.895 71.2681 246.141 73.8641 243.382 78.1571Z" fill="#FFD748"/>
<path d="M432.558 199.545C430.981 194.691 427.043 190.971 422.107 189.673L323.657 163.79L268.618 78.1571C265.858 73.8631 261.104 71.2671 256 71.2671V372.018L350.861 408.945C355.619 410.797 360.991 410.103 365.119 407.102C369.249 404.102 371.569 399.207 371.278 394.111L365.472 292.482L429.905 213.675C433.136 209.723 434.135 204.4 432.558 199.545Z" fill="#FFC335"/>
</g>
<defs>
<clipPath id="clip0_164_404">
<rect width="512" height="512" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
theme_coffee_shop/static/description/img/featuress.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 KiB

10
theme_coffee_shop/static/description/img/gear.svg

@ -0,0 +1,10 @@
<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_48_635)">
<path d="M15.5549 16.005L18.4799 17.685L20.7299 13.785L17.8199 12.105C17.9399 11.58 17.9999 11.04 17.9999 10.485C17.9999 9.93 17.9249 9.39 17.8199 8.865L20.7299 7.185L18.4799 3.285L15.5549 4.965C14.7599 4.23 13.7999 3.69 12.7499 3.36V0H8.24991V3.39C7.19991 3.72 6.23991 4.275 5.44491 4.995L2.51991 3.315L0.284912 7.215L3.19491 8.895C3.07491 9.42 3.01491 9.96 3.01491 10.515C3.01491 11.07 3.08991 11.61 3.19491 12.135L0.284912 13.785L2.53491 17.685L5.45991 16.005C6.25491 16.74 7.21491 17.28 8.26491 17.61V21H12.7649V17.61C13.8149 17.28 14.7749 16.725 15.5699 16.005H15.5549ZM10.4999 7.5C12.1499 7.5 13.4999 8.85 13.4999 10.5C13.4999 12.15 12.1499 13.5 10.4999 13.5C8.84991 13.5 7.49991 12.15 7.49991 10.5C7.49991 8.85 8.84991 7.5 10.4999 7.5ZM32.9999 25.5C32.9999 24.945 32.9249 24.405 32.8199 23.88L35.7299 22.2L33.4799 18.3L30.5549 19.98C29.7599 19.245 28.7999 18.705 27.7499 18.375V14.985H23.2499V18.375C22.1999 18.705 21.2399 19.26 20.4449 19.98L17.5199 18.3L15.2699 22.2L18.1799 23.88C18.0599 24.405 17.9999 24.945 17.9999 25.5C17.9999 26.055 18.0749 26.595 18.1799 27.12L15.2699 28.8L17.5199 32.7L20.4449 31.02C21.2399 31.755 22.1999 32.295 23.2499 32.625V36.015H27.7499V32.625C28.7999 32.295 29.7599 31.74 30.5549 31.02L33.4799 32.7L35.7299 28.8L32.8199 27.12C32.9399 26.595 32.9999 26.055 32.9999 25.5ZM25.4999 28.5C23.8499 28.5 22.4999 27.15 22.4999 25.5C22.4999 23.85 23.8499 22.5 25.4999 22.5C27.1499 22.5 28.4999 23.85 28.4999 25.5C28.4999 27.15 27.1499 28.5 25.4999 28.5Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_48_635">
<rect width="36" height="36" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

12
theme_coffee_shop/static/description/img/hire-odoo.svg

@ -0,0 +1,12 @@
<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_63_514)">
<path d="M35.5528 30.1866L35.4888 30.1001C34.1698 28.5729 32.5491 27.4542 30.9818 26.3735C30.342 25.932 29.205 25.2204 28.4006 24.648C30.2674 22.0121 31.2673 18.8605 31.2616 15.6305C31.2616 6.9982 24.2634 0 15.6305 0C6.9975 0 0 6.9982 0 15.6305C0 24.2627 6.9982 31.2616 15.6305 31.2616C18.8564 31.2665 22.0042 30.2687 24.6382 28.4062C25.2113 29.2099 25.9221 30.3448 26.3644 30.9846C27.4479 32.5547 28.568 34.1719 30.0938 35.4895L30.1802 35.5528C30.6668 35.8503 31.2271 36.0052 31.7974 36C32.6595 35.9973 33.49 35.6752 34.1283 35.0958L35.0719 34.1543L35.0944 34.1311C36.0991 33.0314 36.2918 31.3727 35.5528 30.1866ZM15.6305 27.1835C12.9572 27.1838 10.3666 26.2572 8.29999 24.5615C6.23339 22.8658 4.81869 20.5059 4.29696 17.8841C3.77523 15.2623 4.17875 12.5406 5.43876 10.183C6.69877 7.82531 8.7373 5.97748 11.207 4.95436C13.6767 3.93123 16.4248 3.79611 18.9829 4.57203C21.5411 5.34794 23.7511 6.98687 25.2363 9.20956C26.7215 11.4323 27.3901 14.1012 27.128 16.7615C26.866 19.4219 25.6897 21.9091 23.7994 23.7994C22.7292 24.8756 21.4561 25.7288 20.0539 26.3097C18.6517 26.8906 17.1482 27.1876 15.6305 27.1835Z" fill="white"/>
<path d="M15.6304 17.0723C18.1642 17.0723 20.2183 15.0182 20.2183 12.4844C20.2183 9.95055 18.1642 7.89648 15.6304 7.89648C13.0965 7.89648 11.0425 9.95055 11.0425 12.4844C11.0425 15.0182 13.0965 17.0723 15.6304 17.0723Z" fill="white"/>
<path d="M23.1884 20.8558C23.1196 20.2123 22.8316 19.6121 22.3728 19.1557C21.9122 18.694 21.3081 18.4029 20.66 18.3302C19.7115 18.2296 17.3553 18.1748 15.8879 18.1748C14.4205 18.1748 11.5327 18.2296 10.5835 18.3302C9.93556 18.4029 9.33159 18.6938 8.87069 19.155C8.4121 19.6114 8.12438 20.2117 8.05577 20.8551V20.8748C8.03327 21.0928 8.01991 21.2819 8.01147 21.4436C8.27125 21.7834 8.55311 22.1056 8.85522 22.4083C10.6527 24.2055 13.0905 25.2152 15.6323 25.2152C18.1741 25.2152 20.6119 24.2055 22.4094 22.4083C22.7068 22.1104 22.9846 21.7935 23.2412 21.4598C23.2306 21.2946 23.2151 21.1005 23.1919 20.8755L23.1884 20.8558Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_63_514">
<rect width="36" height="36" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

13
theme_coffee_shop/static/description/img/life-ring-icon.svg

@ -0,0 +1,13 @@
<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_32_1689)">
<path d="M10.4999 17.9999C10.5002 16.5303 10.9349 15.0936 11.7494 13.8704L4.26741 6.38843C1.51255 9.63015 0 13.7458 0 17.9999C0 22.2541 1.51255 26.3697 4.26741 29.6114L11.7494 22.1294C10.9349 20.9062 10.5002 19.4695 10.4999 17.9999Z" fill="white"/>
<path d="M31.7325 6.38843L24.2505 13.8704C25.0652 15.0935 25.4999 16.5303 25.4999 17.9999C25.4999 19.4695 25.0652 20.9063 24.2505 22.1294L31.7325 29.6114C34.4873 26.3697 35.9999 22.2541 35.9999 17.9999C35.9999 13.7458 34.4873 9.63015 31.7325 6.38843Z" fill="white"/>
<path d="M17.9999 25.5C16.5303 25.4997 15.0936 25.065 13.8704 24.2505L6.38843 31.7325C9.63015 34.4873 13.7458 35.9999 17.9999 35.9999C22.2541 35.9999 26.3697 34.4873 29.6114 31.7325L22.1294 24.2505C20.9062 25.065 19.4695 25.4997 17.9999 25.5Z" fill="white"/>
<path d="M17.9999 10.4999C19.4695 10.5002 20.9062 10.9349 22.1294 11.7494L29.6114 4.26741C26.3697 1.51255 22.2541 0 17.9999 0C13.7458 0 9.63015 1.51255 6.38843 4.26741L13.8704 11.7494C15.0936 10.9349 16.5303 10.5002 17.9999 10.4999Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_32_1689">
<rect width="36" height="36" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

4
theme_coffee_shop/static/description/img/odoo-consultancy.svg

@ -0,0 +1,4 @@
<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M30.3242 28.2889C29.5991 26.131 26.7094 24.7803 24.6491 23.8749C23.842 23.5214 21.6075 22.9216 21.3389 21.9053C21.2428 21.5392 21.2558 21.194 21.3346 20.8631C21.2104 20.8869 21.0844 20.9009 20.9541 20.9009H19.6117C18.5399 20.9009 17.6691 20.029 17.6691 18.958C17.6691 17.8877 18.5403 17.0176 19.6117 17.0176H20.9541C21.3976 17.0176 21.8181 17.1677 22.1572 17.4356C22.6544 17.3693 23.1339 17.2631 23.581 17.1238C24.1682 15.8937 24.6261 14.4227 24.7287 13.1566C25.1668 7.73933 21.8458 4.56989 17.0841 5.11781C13.622 5.51633 11.5538 8.09789 11.3302 11.4214C11.1041 14.809 12.3602 17.311 13.6943 19.1463C14.2786 19.9487 14.8924 20.4646 14.7981 21.4316C14.6887 22.5749 13.4661 22.8935 12.5917 23.2449C11.5556 23.6611 10.4396 24.2925 9.91254 24.5845C8.09706 25.5871 6.10446 26.7945 5.65662 28.4462C4.66482 32.1067 8.01426 33.2155 10.7794 33.7274C13.1525 34.1651 15.8284 34.1997 18.0295 34.1997C22.0107 34.1997 29.1697 34.0402 30.3242 31.0475C30.6525 30.1983 30.5117 28.8451 30.3242 28.2889Z" fill="white"/>
<path d="M21.8037 18.4113C21.6215 18.1337 21.3101 17.9494 20.9548 17.9494H19.6124C19.0522 17.9494 18.6004 18.4019 18.6004 18.9592C18.6004 19.5186 19.0522 19.9719 19.6124 19.9719H20.9548C21.3468 19.9719 21.6795 19.7483 21.8472 19.425C23.7189 19.2778 25.3468 18.7061 26.4894 17.8619C26.7519 18.0311 27.0622 18.1301 27.397 18.1301H27.4812C28.4144 18.1301 29.1689 17.3748 29.1689 16.4406V13.0682C29.1689 12.3964 28.7751 11.8168 28.207 11.5475C27.9593 6.13204 23.4762 1.7998 17.9999 1.7998C12.5236 1.7998 8.03981 6.13204 7.79321 11.5475C7.22405 11.8172 6.83057 12.3964 6.83057 13.0682V16.4406C6.83057 17.3748 7.58585 18.1301 8.51681 18.1301H8.60213C9.53381 18.1301 10.2894 17.3748 10.2894 16.4406V13.0682C10.2894 12.4061 9.90677 11.8352 9.35057 11.559C9.59141 6.99604 13.3779 3.35896 17.9999 3.35896C22.6202 3.35896 26.4084 6.99604 26.6482 11.559C26.0927 11.8355 25.7104 12.4061 25.7104 13.0682V16.4406C25.7104 16.6646 25.754 16.873 25.8306 17.0678C24.8471 17.7716 23.4154 18.273 21.8037 18.4113Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

3
theme_coffee_shop/static/description/img/odoo-licencing.svg

@ -0,0 +1,3 @@
<svg width="36" height="35" viewBox="0 0 36 35" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.5 4.40625C5.84315 4.40625 4.5 5.67087 4.5 7.23081V27.0027C4.5 28.5627 5.84315 29.8273 7.5 29.8273H28.5C30.1569 29.8273 31.5 28.5627 31.5 27.0027V7.23081C31.5 5.67087 30.1569 4.40625 28.5 4.40625H7.5ZM12 18.5291C12 17.749 11.3284 17.1168 10.5 17.1168C9.67157 17.1168 9 17.749 9 18.5291V24.1782C9 24.9582 9.67157 25.5905 10.5 25.5905C11.3284 25.5905 12 24.9582 12 24.1782V18.5291ZM18 12.8799C18.8284 12.8799 19.5 13.5122 19.5 14.2922V24.1782C19.5 24.9582 18.8284 25.5905 18 25.5905C17.1716 25.5905 16.5 24.9582 16.5 24.1782V14.2922C16.5 13.5122 17.1716 12.8799 18 12.8799ZM27 10.0554C27 9.27536 26.3284 8.64309 25.5 8.64309C24.6716 8.64309 24 9.27536 24 10.0554V24.1782C24 24.9582 24.6716 25.5905 25.5 25.5905C26.3284 25.5905 27 24.9582 27 24.1782V10.0554Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 929 B

9
theme_coffee_shop/static/description/img/patter.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 23 KiB

BIN
theme_coffee_shop/static/description/img/phone-screenshots.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

10
theme_coffee_shop/static/description/img/puzzle-piece-icon.svg

@ -0,0 +1,10 @@
<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="puzzle-piece 1" clip-path="url(#clip0_226_336)">
<path id="Vector" d="M30 15.75C28.9888 15.7847 27.9837 15.9214 27 16.158V13.5C27 12.3065 26.5259 11.1619 25.682 10.318C24.8381 9.47411 23.6935 9 22.5 9H19.092C19.3296 8.01646 19.4663 7.01126 19.5 6C19.5 4.4087 18.8679 2.88258 17.7426 1.75736C16.6174 0.632141 15.0913 0 13.5 0C11.9087 0 10.3826 0.632141 9.25736 1.75736C8.13214 2.88258 7.5 4.4087 7.5 6C7.53374 7.01126 7.67045 8.01646 7.908 9H4.5C3.30653 9 2.16193 9.47411 1.31802 10.318C0.474106 11.1619 0 12.3065 0 13.5L0 36H9.804L9.45 34.5C9.19694 33.5182 9.04614 32.5128 9 31.5C9 30.3065 9.47411 29.1619 10.318 28.318C11.1619 27.4741 12.3065 27 13.5 27C14.6935 27 15.8381 27.4741 16.682 28.318C17.5259 29.1619 18 30.3065 18 31.5C17.9539 32.5128 17.8031 33.5182 17.55 34.5L17.1945 36H27V27.342C27.9837 27.5786 28.9888 27.7153 30 27.75C31.5913 27.75 33.1174 27.1179 34.2426 25.9926C35.3679 24.8674 36 23.3413 36 21.75C36 20.1587 35.3679 18.6326 34.2426 17.5074C33.1174 16.3821 31.5913 15.75 30 15.75Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_226_336">
<rect width="36" height="36" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

28
theme_coffee_shop/static/description/img/screenshot-1.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 151 KiB

BIN
theme_coffee_shop/static/description/img/screenshot-2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

BIN
theme_coffee_shop/static/description/img/screenshot-3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 KiB

BIN
theme_coffee_shop/static/description/img/screenshot-4.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 331 KiB

9
theme_coffee_shop/static/description/img/screenshot-5.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 258 KiB

BIN
theme_coffee_shop/static/description/img/screenshot-img.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 KiB

BIN
theme_coffee_shop/static/description/img/screenshot-main.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 KiB

BIN
theme_coffee_shop/static/description/img/template-white-them-1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 KiB

BIN
theme_coffee_shop/static/description/img/theme_fuge.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

10
theme_coffee_shop/static/description/img/translate.svg

@ -0,0 +1,10 @@
<svg width="26" height="26" viewBox="0 0 26 26" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_36_1835)">
<path d="M5.41675 16.25V18.4167C5.41658 18.9633 5.62302 19.4898 5.9947 19.8906C6.36638 20.2914 6.87583 20.5369 7.42091 20.5779L7.58342 20.5833H10.8334V22.75H7.58342C6.43414 22.75 5.33194 22.2934 4.51929 21.4808C3.70663 20.6681 3.25008 19.5659 3.25008 18.4167V16.25H5.41675ZM19.5001 10.8333L24.2667 22.75H21.9322L20.6311 19.5H16.2002L14.9013 22.75H12.5678L17.3334 10.8333H19.5001ZM18.4167 13.9587L17.0658 17.3333H19.7655L18.4167 13.9587ZM8.66675 2.16666V4.33332H13.0001V11.9167H8.66675V15.1667H6.50008V11.9167H2.16675V4.33332H6.50008V2.16666H8.66675ZM18.4167 3.24999C19.566 3.24999 20.6682 3.70654 21.4809 4.51919C22.2935 5.33185 22.7501 6.43405 22.7501 7.58332V9.74999H20.5834V7.58332C20.5834 7.00869 20.3551 6.45759 19.9488 6.05126C19.5425 5.64493 18.9914 5.41666 18.4167 5.41666H15.1667V3.24999H18.4167ZM6.50008 6.49999H4.33341V9.74999H6.50008V6.49999ZM10.8334 6.49999H8.66675V9.74999H10.8334V6.49999Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_36_1835">
<rect width="26" height="26" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

10
theme_coffee_shop/static/description/img/wrench-icon.svg

@ -0,0 +1,10 @@
<svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_48_827)">
<path d="M34.5195 5.66404L27.6225 12.561C26.451 13.7325 24.552 13.7325 23.3805 12.561C22.209 11.3895 22.209 9.49054 23.3805 8.31904L30.258 1.43854L29.82 1.21654C28.227 0.408035 26.52 -0.00146484 24.7485 -0.00146484C18.5445 -0.00146484 13.4985 5.04454 13.4985 11.2485C13.4985 12.687 13.7655 14.0775 14.295 15.399L1.37699 28.3185C-0.375012 30.0735 -0.375012 32.9265 1.37699 34.6815C2.25449 35.559 3.40649 35.997 4.55849 35.997C5.71049 35.997 6.86399 35.559 7.74149 34.6815L20.688 21.735C21.9855 22.2435 23.3475 22.5 24.75 22.5C30.954 22.5 36 17.454 36 11.25C36 9.43804 35.5755 7.70104 34.7385 6.08704L34.5195 5.66404Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_48_827">
<rect width="36" height="36" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 885 B

849
theme_coffee_shop/static/description/index.html

@ -0,0 +1,849 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>app index</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css"
rel="stylesheet"/>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap"
rel="stylesheet">
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/all.min.css"/>
<style>
:root {
--primary-color: #F5C000;
--bg-white: #fff;
--text-color: #121212;
--text-color-light: #64728f;
}
body {
font-family: "Montserrat", sans-serif;
}
</style>
</head>
<body>
<!-- overview -->
<div class="container">
<!-- support-header -->
<div class="supports my-5 py-3" style="border-bottom: 1px solid #e7e7e7;">
<div class="row justify-content-between">
<div class="col-4">
<div class="my-3">
<img src="//apps.odoocdn.com/apps/assets/17.0/theme_boec/images/Cybrosys.png?fcdde35"
style="width:auto !important; height:40px !important">
</div>
</div>
<div class="col-6">
<div class="row" style="margin-top:10px">
<div class="my-3 d-flex align-items-center justify-content-end">
<span class="me-3"><b>Supports: </b></span>
<div class="text-center"
style="background-color:#017E84 !important; font-size:0.8rem !important; color:#fff !important; font-weight:500 !important; padding:4px !important; margin:0 3px !important; border-radius:50px !important; min-width:120px !important">
Community
</div>
<div class="text-center"
style="background-color:#875A7B !important; color:#fff !important; font-size:0.8rem !important; font-weight:500 !important; padding:4px !important; margin:0 3px !important; border-radius:50px !important; min-width:120px !important">
Enterprise
</div>
</div>
</div>
<div class="row" style="margin-top:10px">
<div class="d-flex align-items-center justify-content-end">
<span class="me-3"><b>Availability: </b></span>
<div class="text-center col"
style="border:1px solid #017E84; font-size:0.8rem !important; color:#017E84 !important; font-weight:500 !important; padding:4px !important; margin:0 3px !important; border-radius:20px !important; min-width:120px !important">
<i class="fa fa-times" style="color:red"></i> Odoo
Online
</div>
<div class="text-center col"
style="font-size:0.8rem !important; border:1px solid #714b67; color:#714b67 !important; font-weight:500 !important; padding:4px !important; margin:0 3px !important; border-radius:20px !important; min-width:120px !important">
<i class="fa fa-check" style="color:green"></i>
Odoo.sh
</div>
<div class="text-center col"
style="font-size:0.8rem !important; color:#5B899E !important; border:1px solid #5B899E; font-weight:500 !important; padding:4px !important; margin:0 3px !important; border-radius:20px !important; min-width:120px !important">
<i class="fa fa-check" style="color:green"></i> On
Premise
</div>
</div>
</div>
</div>
</div>
</div>
<!-- -->
<!-- banner-section -->
<div class="my-5">
<div class="">
<img src="./img/banner.png" class="img-fluid"
style="border-radius: 16px; width:1300px">
</div>
</div>
<!-- -->
<!--feature section -->
<div class="my-5"
style="padding: 100px; background-color: #f1f5fd; border-radius: 16px;">
<div class="container">
<div class="row mb-60">
<div class="col-lg-12 d-flex justify-content-center align-items-center flex-wrap gap-3">
<div class="position-relative" ; style="
text-align: center;
font-size: 46.875px;
font-style: normal;
padding-bottom: 40px; ">
<h2 style="font-weight: 600;">Our Features</h2>
<p style="color: #262424;
text-align: justify;
font-size: 15.625px;
font-style: normal;
font-weight: 400;
line-height: 25.6px;">The Theme Coffee Shop was created by Cybrosys
Technology Solutions. This theme can be added to
make a classy
website for cafes, bistros, and restaurants.
Additionally, if
you own wineries, bakeries, burger joints, fast food
chains, or
recipe websites, you can use it. It's a complete
food company
theme, making it a fantastic option for both
restaurants and
food websites. This theme is the missing special
ingredient for
you to build irresistible websites.
</p>
<p style="color: #262424;text-align: justify;
font-size: 15.625px;
font-style: normal;
font-weight: 400;
line-height: 25.6px;">It uses the collection of portfolio templates and
powerful features to create a stylish portfolio for
your
business. Snippets can be used to create homepages
that showcase
your shop's drink menus and other offerings. Also,
it features
both common and unique short codes designed
specifically for
presentations. It might be useful for showcasing
your company's
identity and product offerings.
</p>
<p style="color: #262424;
text-align: justify;
font-size: 15.625px;
font-style: normal;
font-weight: 400;
line-height: 25.6px;">This theme contains everything from designed
homepages, to shopping carts. It is compatible with
Elementor
and simple to drag and drop items. Quickly create
any layout
without any coding skills. Along with this theme ,
it permits
users to use third-party plugins also. This theme
use the most
recent iteration of a coffee shop's website. Both
adaptable and
user-friendly.
</p>
</div>
</div>
</div>
<div class="row g-4">
<div class="col-lg-4 col-md-6" style="visibility: visible;">
<div style="background-color: #fff;height: 100%;
border-radius: 12px;
padding: 35px 30px;">
<div class="content">
<img src="./img/feature-star.svg"
class="img-responsive" height="46px"
width="46px">
<h4 class="mt-3"><a href="#" style=" color: #121212;
font-size: 18px;
text-decoration: none;
font-weight: 700;
line-height: 1.2;">Shop Page</a></h4>
<p style=" font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #212529;"> The shop display you products in a stylish
way. It's displaying 4 products in a row, and it
will attract your customers. Also, the Category
side are customized in collapsible style.
Display
high quality images for your products
</p>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6">
<div style="background-color: #fff; height: 100%;
border-radius: 12px;
padding: 35px 30px;">
<div class="content">
<img src="./img/feature-star.svg"
class="img-responsive" height="46px"
width="46px">
<h4 class="mt-3"><a href="#" style=" color: #121212;
font-size: 18px;
text-decoration: none;
font-weight: 700;
line-height: 1.2;">About Us</a></h4>
<p style="font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #212529;">Theme coffee shop have a fully customized about
us page with details of employees.</p>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6">
<div style="background-color: #fff; height: 100%;
border-radius: 12px;
padding: 35px 30px;">
<div class="content">
<img src="./img/feature-star.svg"
class="img-responsive" height="46px"
width="46px">
<h4 class="mt-3"><a href="#" style=" color: #121212;
font-size: 18px;
text-decoration: none;
font-weight: 700;
line-height: 1.2;">Contact page</a></h4>
<p style="font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #212529;">In the customized Contact us page the company
details will show, and it will help to your
customer to reach you in simple way.</p>
</div>
</a>
</div>
</div>
<div class="col-lg-4 col-md-6">
<div style="background-color: #fff;height: 100%;
border-radius: 12px;
padding: 35px 30px;">
<div class="content">
<img src="./img/feature-star.svg"
class="img-responsive" height="46px"
width="46px">
<h4 class="mt-3"><a href="#" style=" color: #121212;
font-size: 18px;
text-decoration: none;
font-weight: 700;
line-height: 1.2;">Customized eCommerce websites</a></h4>
<p style="font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #212529;">Fully customizes eCommerce websites, including
shop and product views.</p>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6">
<div style="background-color: #fff;height: 100%;
border-radius: 12px;
padding: 35px 30px;">
<div class="content">
<img src="./img/feature-star.svg"
class="img-responsive" height="46px"
width="46px">
<h4 class="mt-3"><a href="#" style=" color: #121212;
font-size: 18px;
text-decoration: none;
font-weight: 700;
line-height: 1.2;">Design</a></h4>
<p style="font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #212529;"> The most recent website creation for a coffee
shop.Flexible and easy to use</p>
</div>
</div>
</div>
<div class="col-lg-4 col-md-6">
<div style="background-color: #fff;height: 100%;
border-radius: 12px;
padding: 35px 30px;">
<div class="content">
<img src="./img/feature-star.svg"
class="img-responsive" height="46px"
width="46px">
<h4 class="mt-3"><a href="#" style=" color: #121212;
font-size: 18px;
text-decoration: none;
font-weight: 700;
line-height: 1.2;">User-friendly interface</a></h4>
<p style="font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #212529;">User-friendly interface for both desktop and
mobile devices.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- -->
<section class="container my-5">
<div class="row">
<div class="col-md-12">
<ul role="tablist"
class="nav nav-tabs justify-content-center d-flex justify-content-center"
data-tabs="tabs"
style="border:none; background-color:unset; margin:0 auto">
</ul>
</div>
<div class="col-md-12 tab-content ui-front"
style="border-radius:20px;border: 1px solid #D6E0FF; height:auto;padding: 20px;">
<div class="tab-pane active show fade" id="Features"
role="tabpanel" aria-labelledby="features-1">
<section class="">
<section class="mt-5">
<h2 class="pb-5"
style="font-weight: 700; text-align: center;">
Theme Features</h2>
<div class="row" style="margin-bottom: 24px;">
<div class="col-md-8">
<div style="border-radius: 10px; padding: 32px;background-color: #303030;-webkit-backdrop-filter: blur(5px);backdrop-filter: blur(5px); height: 100%;">
<div class="info">
<span class="label" style="font-size: 12px;font-style: normal;
font-weight: 700;
line-height: 32px;
color: #f14848;
margin-bottom: 13px;
text-transform: uppercase;">HIGHLIGHT</span>
<h3 class="text-white" style="color: #fff;font-size: 24px;font-weight: 500;line-height: 32px;margin-bottom: 9px;">Desktop View</h3>
<p class="des" style="color: #c7c7c7;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 24px;
margin-bottom: 0;">Customizing and using our theme is
effortless. With a simple
drag-and-drop interface, you can
create visually stunning
webpages.
Whether you're a novice or an
experienced user, our intuitive
design tools make the process
seamless. Say goodbye to
complicated
setups and hello to hassle-free
website customization. Elevate
your
online presence with ease using
our
user-friendly theme.</p>
</div>
<div class="mt-5">
<img src="./img/template-white-them-1.png"
alt="Grid item"
class="img-fluid"
style="height:500px;">
</div>
<a href="#" target="_blank"
class="url_link" name="grid_popup"
aria-label="Url link label"><span></span></a>
</div>
</div>
<!-- -->
<div class="col-md-4">
<div style="border-radius: 10px; padding: 32px;
background-color: #303030;
-webkit-backdrop-filter: blur(5px);
backdrop-filter: blur(5px); height: 100%;">
<div class="info">
<span class="label" style="font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 32px;
color: #f14848;
margin-bottom: 13px;
text-transform: uppercase;">HIGHLIGHT</span>
<h3 class="text-white" style="color: #fff;font-size: 24px;font-weight: 500;line-height: 32px;margin-bottom: 9px;">Our awesome Premium Features.</h3>
<p class="des" style="color: #c7c7c7;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 24px;
margin-bottom: 0;">Our expert baristas don’t just make coffee, they create works of art. From silky lattes to bold espressos, each cup is crafted with passion and precision..</p>
</div>
<div class="mt-5">
<img src="./img/featuress.png"
alt="Grid item"
class="img-fluid" style="height:500px;">
</div>
<a href="#" target="_blank"
class="url_link" name="grid_popup"
aria-label="Url link label"><span></span></a>
</div>
</div>
</div>
<!-- -->
<!--row-3 -->
<div class="row" style="margin-bottom: 20px;">
<div class="col-md-4">
<div style="border-radius: 10px; padding: 32px;
background-color: rgba(48, 48, 48, 1);
-webkit-backdrop-filter: blur(5px);
backdrop-filter: blur(5px); height: 100%;">
<div class="info">
<span class="label" style="font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 32px;
color: #f14848;
margin-bottom: 13px;
text-transform: uppercase;">HIGHLIGHT</span>
<h3 class="text-white" style=" color: #fff;
font-size: 24px;
font-weight: 500;
line-height: 32px;
margin-bottom: 9px;">Let’s Talk Coffee</h3>
<p class="des" style="color: #c7c7c7;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 24px;
margin-bottom: 0;">The Contact Us page should capture the warm, inviting, and cozy atmosphere of the café itself. The page should feel approachable, with a touch of personality that reflects the charm of your coffee shop</p>
</div>
<div class="mt-5">
<img src="./img/countactus.png"
alt="Grid item"
class="img-fluid"
style="height:600px;">
</div>
<a href="#" target="_blank"
class="url_link" name="grid_popup"
aria-label="Url link label"><span></span></a>
</div>
</div>
<!-- -->
<div class="col-md-8">
<div style="border-radius: 10px; padding: 32px;
background-color: rgba(48, 48, 48, 1);
-webkit-backdrop-filter: blur(5px);
backdrop-filter: blur(5px); height: 100%;">
<div class="info">
<span class="label" style="font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 32px;
color: #f14848;
margin-bottom: 13px;
text-transform: uppercase;">HIGHLIGHT</span>
<h3 class="text-white" style=" color: #fff;
font-size: 24px;
font-weight: 500;
line-height: 32px;
margin-bottom: 9px;">HomePage</h3>
<p class="des" style="color: #c7c7c7;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 24px;
margin-bottom: 0;">Our homepage offers a clean, modern design with an inviting, cozy atmosphere that reflects the essence of our coffee shop. With an easy-to-navigate layout, stunning visuals, and a seamless user experience.</p>
</div>
<div class=" mt-5"
style="--aspect-ratioapt: 872/443;">
<img src="./img/coffee_01.png"
alt="Grid item"
class="img-fluid"
style="height:400px;">
</div>
<a href="#" target="_blank"
class="url_link" name="grid_popup"
aria-label="Url link label"><span></span></a>
</div>
</div>
</div>
<!-- -->
</section>
</section>
</div>
</div>
</div>
</section>
<!--sections -->
<!-- section content -->
<section class="mb-5"
style="background-color: #f1f5fd; border: 1px solid #D6E0FF; border-radius: 20px; padding: 40px;">
<div class="row d-flex align-items-center">
<div class="col col-12 col-md-12 col-lg-6">
<div style="padding: 20px;">
<h4 class="" style="font-size: 46px;">
<span style="color: #212121;
font-weight: 700;
display: inline-block;
width: 100%;">Infuse Your Website with the Warmth of a </span><br>
<span style="color: #212121;
font-weight: 700;
display: inline-block;
width: 100%;">Coffee Shop</span>
</h4>
<div class="mt-4">
<p style="color: #444; font-size: 16px;
font-weight: 400;
line-height: 1.5;">Give your coffee shop a digital makeover with a
website that’s as smooth as your best brew.
Optimized for desktop, tablet, or mobile, your site
will combine stunning design with seamless
functionality, offering visitors a visually pleasing
and easy-to-navigate experience they’ll want to
return to</p>
<ul class="d-flex flex-column gap-3 ms-0 ps-0 mt-4">
<li style="list-style: none;"
class="d-flex align-items-center gap-2"><img
src="./img/check.svg"
style="width: 24px;"><span style=" color: #444;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 32px;">High-Quality Visuals</span></li>
<li style="list-style: none;"
class="d-flex align-items-center gap-2"><img
src="./img/check.svg"
style="width: 24px;"><span style=" color: #444;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 32px;">Fast Load Times</span></li>
<li style="list-style: none;"
class="d-flex align-items-center gap-2"><img
src="./img/check.svg"
style="width: 24px;"><span style=" color: #444;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 32px;">Intuitive Navigation and User Experience</span>
</li>
<li style="list-style: none;"
class="d-flex align-items-center gap-2"><img
src="./img/check.svg"
style="width: 24px;"><span style=" color: #444;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 32px;">Responsive and Adaptive Design</span>
</li>
</ul>
</div>
</div>
</div>
<div class="col col-12 col-md-12 col-lg-6">
<div>
<div>
<img class="img-fluid" src="./img/01.jpg" style="
border-radius: 20px;
">
</div>
</div>
</div>
</div>
</section>
<!-- 2 -->
<section class=""
style="background-color: #f1f5fd; border: 1px solid #D6E0FF; border-radius: 20px; padding: 40px;">
<div class="row d-flex align-items-center">
<div class="col col-12 col-md-12 col-lg-6">
<div>
<div>
<img class="img-fluid" src="./img/2.jpg"
style="
border-radius: 20px;
">
</div>
</div>
</div>
<div class="col col-12 col-md-12 col-lg-6">
<div style="padding: 20px;">
<h4 class="" style="font-size: 46px;">
<span style="color: #212121;
font-weight: 700;
display: inline-block;
width: 100%;">Designed for Mobile, </span><br>
<span style="color: #212121;
font-weight: 700;
display: inline-block;
width: 100%;"> Infused with Coffee Shop Vibes</span>
</h4>
<div class="mt-4">
<p style="color: #444; font-size: 16px;
font-weight: 400;
line-height: 1.5;">Every detail of your website is brewed for
perfection, delivering a seamless and user-friendly
experience on any mobile device. Your customers will
savor smooth navigation and rich visuals, just like
their favorite coffee blend.</p>
<ul class="d-flex flex-column gap-3 ms-0 ps-0 mt-4">
<li style="list-style: none;"
class="d-flex align-items-center gap-2"><img
src="./img/check.svg"
style="width: 24px;"><span style=" color: #444;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 32px;">Fast Loading Times</span></li>
<li style="list-style: none;"
class="d-flex align-items-center gap-2"><img
src="./img/check.svg"
style="width: 24px;"><span style=" color: #444;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 32px;">User-Friendly Navigation</span></li>
<li style="list-style: none;"
class="d-flex align-items-center gap-2"><img
src="./img/check.svg"
style="width: 24px;"><span style=" color: #444;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 32px;">Responsive Design for Any Device</span>
</li>
</ul>
</div>
</div>
</div>
</div>
</section>
<!-- -->
<!-- -->
<div class="my-5">
<!-- banner card -->
<!-- service-section -->
<section id="services" class="mt-5" style="border-radius: 16px;
border: 1px solid #EBEEF2;
background-color: #FFF;
padding: 60px 40px;
box-shadow: 0px 5px 20px -11px rgba(0, 0, 0, 0.25);">
<div class="text-center mt-4">
<h3 class="mb-0" style="color: #000;
text-align: center;
font-family: Montserrat;
font-size: 40px;
font-style: normal;
font-weight: 700;
line-height: normal;
text-transform: uppercase;
padding-bottom: 50px;">Our Services</h3>
</div>
<div class="row mt-3">
<div class="col-lg-3 col-sm-12 mb-3">
<a href="#" style="text-decoration:none">
<div class="btn-lg btn-block p-4 mb-2 d-flex flex-column justify-content-center align-items-center"
style="font-size:25px; font-weight:bold;background-color:#FFE2E5; margin:auto; border-radius: 8px;">
<div class="d-flex justify-content-center align-items-center"
style="background-color:#FA5A7D; border-radius:50%; height:56px; width:56px">
<img src="./img/gear.svg" class="img-responsive"
height="28px" width="28px">
</div>
<span class="mt-3" style="font-size: 18px;
color: #121212;
font-weight: 600;"> Odoo Customization</span>
</div>
</a>
</div>
<div class="col-lg-3 col-sm-12 mb-3">
<a href="#" style="text-decoration:none">
<div class="btn-lg btn-block p-4 mb-2 d-flex flex-column justify-content-center align-items-center"
style="font-size:25px; font-weight:bold;background-color:#FFF4DE; margin:auto; border-radius: 8px;">
<div class="d-flex justify-content-center align-items-center"
style="background-color:#FF947A; border-radius:50%; height:56px; width:56px">
<img src="./img/wrench-icon.svg"
class="img-responsive" height="28px"
width="28px">
</div>
<span class="mt-3" style="font-size: 18px;
color: #121212;
font-weight: 600;"> Odoo Implementation</span>
</div>
</a>
</div>
<div class="col-lg-3 col-sm-12 mb-3">
<a href="#" style="text-decoration:none">
<div class="btn-lg btn-block p-4 mb-2 d-flex flex-column justify-content-center align-items-center"
style="font-size:25px; font-weight:bold;background-color:#DCFCE7; margin:auto; border-radius: 8px;">
<div class="d-flex justify-content-center align-items-center"
style="background-color:#3CD856; border-radius:50%; height:56px; width:56px">
<img src="./img/life-ring-icon.svg"
class="img-responsive" height="28px"
width="28px">
</div>
<span class="mt-3" style="font-size: 18px;
color: #121212;
font-weight: 600;">Odoo Support</span>
</div>
</a>
</div>
<div class="col-lg-3 col-sm-12 mb-3">
<a href="#" style="text-decoration:none">
<div class="btn-lg btn-block p-4 mb-2 d-flex flex-column justify-content-center align-items-center"
style="font-size:25px; font-weight:bold;background-color:#F3E8FF; margin:auto; border-radius: 8px;">
<div class="d-flex justify-content-center align-items-center"
style="background-color:#BF83FF; border-radius:50%; height:56px; width:56px">
<img src="./img/arrows-repeat.svg"
class="img-responsive" height="28px"
width="28px">
</div>
<span class="mt-3" style="font-size: 18px;
color: #121212;
font-weight: 600;">Odoo Migration</span>
</div>
</a>
</div>
<div class="col-lg-3 col-sm-12 mb-3">
<a href="#" style="text-decoration:none">
<div class="btn-lg btn-block p-4 mb-2 d-flex flex-column justify-content-center align-items-center"
style="font-size:25px; font-weight:bold;background-color:#F1F9FF; margin:auto; border-radius: 8px;">
<div class="d-flex justify-content-center align-items-center"
style="background-color:#01649C; border-radius:50%; height:56px; width:56px">
<img src="./img/puzzle-piece-icon.svg"
class="img-responsive" height="28px"
width="28px">
</div>
<span class="mt-3" style="font-size: 18px;
color: #121212;
font-weight: 600;">Odoo integration</span>
</div>
</a>
</div>
<div class="col-lg-3 col-sm-12 mb-3">
<a href="#" style="text-decoration:none">
<div class="btn-lg btn-block p-4 mb-2 d-flex flex-column justify-content-center align-items-center"
style="font-size:25px; font-weight:bold;background-color:#EDF8ED; margin:auto; border-radius: 8px;">
<div class="d-flex justify-content-center align-items-center"
style="background-color:#69CC70; border-radius:50%; height:56px; width:56px">
<img src="./img/odoo-consultancy.svg"
class="img-responsive" height="28px"
width="28px">
</div>
<span class="mt-3" style="font-size: 18px;
color: #121212;
font-weight: 600;">Odoo Consultancy</span>
</div>
</a>
</div>
<div class="col-lg-3 col-sm-12 mb-3">
<a href="#" style="text-decoration:none">
<div class="btn-lg btn-block p-4 mb-2 d-flex flex-column justify-content-center align-items-center"
style="font-size:25px; font-weight:bold;background-color:#F1F6FF; margin:auto; border-radius: 8px;">
<div class="d-flex justify-content-center align-items-center"
style="background-color:#2E4556; border-radius:50%; height:56px; width:56px">
<img src="./img/odoo-licencing.svg"
class="img-responsive" height="28px"
width="28px">
</div>
<span class="mt-3" style="font-size: 18px;
color: #121212;
font-weight: 600;">Odoo Licensing</span>
</div>
</a>
</div>
<div class="col-lg-3 col-sm-12 mb-3">
<a href="#" style="text-decoration:none">
<div class="btn-lg btn-block p-4 mb-2 d-flex flex-column justify-content-center align-items-center"
style="font-size:25px; font-weight:bold;background-color:#FAF6EA; margin:auto; border-radius: 8px;">
<div class="d-flex justify-content-center align-items-center"
style="background-color:#FCD12C; border-radius:50%; height:56px; width:56px">
<img src="./img/hire-odoo.svg"
class="img-responsive" height="28px"
width="28px">
</div>
<span class="mt-3" style="font-size: 18px;
color: #121212;
font-weight: 600;">Hire Odoo Developer</span>
</div>
</a>
</div>
</div>
<!-- -->
</div>
</div>
</section>
<!-- -->
</div>
</div>
</body>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js"></script>
</html>

BIN
theme_coffee_shop/static/description/theme_screenshot.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 KiB

4295
theme_coffee_shop/static/src/css/style.css

File diff suppressed because it is too large

BIN
theme_coffee_shop/static/src/images/1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

13
theme_coffee_shop/static/src/images/1.svg

@ -0,0 +1,13 @@
<svg width="39" height="39" viewBox="0 0 39 39" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path d="M19.0301 10.48C21.8201 10.48 22.1501 10.49 23.2501 10.54C24.2701 10.59 24.8201 10.76 25.1901 10.9C25.6801 11.09 26.0201 11.32 26.3901 11.68C26.7601 12.05 26.9801 12.39 27.1701 12.88C27.3101 13.25 27.4801 13.8 27.5301 14.82C27.5801 15.92 27.5901 16.25 27.5901 19.04C27.5901 21.83 27.5801 22.16 27.5301 23.26C27.4801 24.28 27.3101 24.83 27.1701 25.2C26.9801 25.69 26.7501 26.03 26.3901 26.4C26.0301 26.76 25.6801 26.99 25.1901 27.18C24.8201 27.32 24.2701 27.49 23.2501 27.54C22.1501 27.59 21.8201 27.6 19.0301 27.6C16.2401 27.6 15.9101 27.59 14.8101 27.54C13.7901 27.49 13.2401 27.32 12.8701 27.18C12.3801 26.99 12.0401 26.76 11.6701 26.4C11.3101 26.03 11.0801 25.69 10.8901 25.2C10.7501 24.83 10.5801 24.28 10.5301 23.26C10.4801 22.16 10.4701 21.83 10.4701 19.04C10.4701 16.25 10.4801 15.92 10.5301 14.82C10.5801 13.8 10.7501 13.25 10.8901 12.88C11.0801 12.39 11.3101 12.05 11.6701 11.68C12.0401 11.31 12.3801 11.09 12.8701 10.9C13.2401 10.76 13.7901 10.59 14.8101 10.54C15.9101 10.49 16.2401 10.48 19.0301 10.48ZM19.0301 8.59998C16.2001 8.59998 15.8401 8.60998 14.7301 8.65998C13.6201 8.70998 12.8601 8.88997 12.2001 9.14997C11.5101 9.41997 10.9301 9.76998 10.3501 10.35C9.7701 10.93 9.4101 11.51 9.1501 12.2C8.8901 12.86 8.7201 13.62 8.6601 14.73C8.6101 15.84 8.6001 16.2 8.6001 19.03C8.6001 21.86 8.6101 22.22 8.6601 23.33C8.7101 24.44 8.8901 25.2 9.1501 25.86C9.4201 26.55 9.7701 27.13 10.3501 27.71C10.9301 28.29 11.5101 28.65 12.2001 28.91C12.8601 29.17 13.6201 29.34 14.7301 29.4C15.8401 29.45 16.2001 29.46 19.0301 29.46C21.8601 29.46 22.2201 29.45 23.3301 29.4C24.4401 29.35 25.2001 29.17 25.8601 28.91C26.5501 28.64 27.1301 28.29 27.7101 27.71C28.2901 27.13 28.6501 26.55 28.9101 25.86C29.1701 25.2 29.3401 24.44 29.4001 23.33C29.4501 22.22 29.4601 21.86 29.4601 19.03C29.4601 16.2 29.4501 15.84 29.4001 14.73C29.3501 13.62 29.1701 12.86 28.9101 12.2C28.6401 11.51 28.2901 10.93 27.7101 10.35C27.1301 9.76998 26.5501 9.40997 25.8601 9.14997C25.2001 8.88997 24.4401 8.71998 23.3301 8.65998C22.2201 8.60998 21.8601 8.59998 19.0301 8.59998Z" fill="#282828"/>
<path d="M19.0302 13.67C16.0702 13.67 13.6702 16.07 13.6702 19.03C13.6702 21.99 16.0702 24.39 19.0302 24.39C21.9902 24.39 24.3902 21.99 24.3902 19.03C24.3902 16.07 21.9902 13.67 19.0302 13.67ZM19.0302 22.51C17.1102 22.51 15.5502 20.95 15.5502 19.03C15.5502 17.11 17.1102 15.55 19.0302 15.55C20.9502 15.55 22.5102 17.11 22.5102 19.03C22.5102 20.95 20.9502 22.51 19.0302 22.51Z" fill="#282828"/>
<path d="M25.8501 13.46C25.8501 14.15 25.2901 14.71 24.6001 14.71C23.9101 14.71 23.3501 14.15 23.3501 13.46C23.3501 12.77 23.9101 12.21 24.6001 12.21C25.2901 12.21 25.8501 12.77 25.8501 13.46Z" fill="#282828"/>
</g>
<defs>
<clipPath id="clip0_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 3.0 KiB

20
theme_coffee_shop/static/src/images/2.svg

@ -0,0 +1,20 @@
<svg width="39" height="39" viewBox="0 0 39 39" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path d="M19.0301 10.48C21.8201 10.48 22.1501 10.49 23.2501 10.54C24.2701 10.59 24.8201 10.76 25.1901 10.9C25.6801 11.09 26.0201 11.32 26.3901 11.68C26.7601 12.05 26.9801 12.39 27.1701 12.88C27.3101 13.25 27.4801 13.8 27.5301 14.82C27.5801 15.92 27.5901 16.25 27.5901 19.04C27.5901 21.83 27.5801 22.16 27.5301 23.26C27.4801 24.28 27.3101 24.83 27.1701 25.2C26.9801 25.69 26.7501 26.03 26.3901 26.4C26.0301 26.76 25.6801 26.99 25.1901 27.18C24.8201 27.32 24.2701 27.49 23.2501 27.54C22.1501 27.59 21.8201 27.6 19.0301 27.6C16.2401 27.6 15.9101 27.59 14.8101 27.54C13.7901 27.49 13.2401 27.32 12.8701 27.18C12.3801 26.99 12.0401 26.76 11.6701 26.4C11.3101 26.03 11.0801 25.69 10.8901 25.2C10.7501 24.83 10.5801 24.28 10.5301 23.26C10.4801 22.16 10.4701 21.83 10.4701 19.04C10.4701 16.25 10.4801 15.92 10.5301 14.82C10.5801 13.8 10.7501 13.25 10.8901 12.88C11.0801 12.39 11.3101 12.05 11.6701 11.68C12.0401 11.31 12.3801 11.09 12.8701 10.9C13.2401 10.76 13.7901 10.59 14.8101 10.54C15.9101 10.49 16.2401 10.48 19.0301 10.48ZM19.0301 8.59998C16.2001 8.59998 15.8401 8.60998 14.7301 8.65998C13.6201 8.70998 12.8601 8.88997 12.2001 9.14997C11.5101 9.41997 10.9301 9.76998 10.3501 10.35C9.7701 10.93 9.4101 11.51 9.1501 12.2C8.8901 12.86 8.7201 13.62 8.6601 14.73C8.6101 15.84 8.6001 16.2 8.6001 19.03C8.6001 21.86 8.6101 22.22 8.6601 23.33C8.7101 24.44 8.8901 25.2 9.1501 25.86C9.4201 26.55 9.7701 27.13 10.3501 27.71C10.9301 28.29 11.5101 28.65 12.2001 28.91C12.8601 29.17 13.6201 29.34 14.7301 29.4C15.8401 29.45 16.2001 29.46 19.0301 29.46C21.8601 29.46 22.2201 29.45 23.3301 29.4C24.4401 29.35 25.2001 29.17 25.8601 28.91C26.5501 28.64 27.1301 28.29 27.7101 27.71C28.2901 27.13 28.6501 26.55 28.9101 25.86C29.1701 25.2 29.3401 24.44 29.4001 23.33C29.4501 22.22 29.4601 21.86 29.4601 19.03C29.4601 16.2 29.4501 15.84 29.4001 14.73C29.3501 13.62 29.1701 12.86 28.9101 12.2C28.6401 11.51 28.2901 10.93 27.7101 10.35C27.1301 9.76998 26.5501 9.40997 25.8601 9.14997C25.2001 8.88997 24.4401 8.71998 23.3301 8.65998C22.2201 8.60998 21.8601 8.59998 19.0301 8.59998Z" fill="#282828"/>
<path d="M19.0302 13.67C16.0702 13.67 13.6702 16.07 13.6702 19.03C13.6702 21.99 16.0702 24.39 19.0302 24.39C21.9902 24.39 24.3902 21.99 24.3902 19.03C24.3902 16.07 21.9902 13.67 19.0302 13.67ZM19.0302 22.51C17.1102 22.51 15.5502 20.95 15.5502 19.03C15.5502 17.11 17.1102 15.55 19.0302 15.55C20.9502 15.55 22.5102 17.11 22.5102 19.03C22.5102 20.95 20.9502 22.51 19.0302 22.51Z" fill="#282828"/>
<path d="M25.8501 13.46C25.8501 14.15 25.2901 14.71 24.6001 14.71C23.9101 14.71 23.3501 14.15 23.3501 13.46C23.3501 12.77 23.9101 12.21 24.6001 12.21C25.2901 12.21 25.8501 12.77 25.8501 13.46Z" fill="#282828"/>
<g clip-path="url(#clip1_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path d="M16.13 30.53H20.76V18.93H24L24.34 15.05H20.76C20.76 15.05 20.76 13.6 20.76 12.84C20.76 11.92 20.94 11.56 21.83 11.56C22.54 11.56 24.34 11.56 24.34 11.56V7.53003C24.34 7.53003 21.7 7.53003 21.13 7.53003C17.68 7.53003 16.13 9.05003 16.13 11.95C16.13 14.48 16.13 15.05 16.13 15.05H13.72V18.98H16.13V30.53V30.53Z" fill="#282828"/>
</g>
</g>
<defs>
<clipPath id="clip0_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
<clipPath id="clip1_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

28
theme_coffee_shop/static/src/images/3.svg

@ -0,0 +1,28 @@
<svg width="39" height="39" viewBox="0 0 39 39" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path d="M19.0301 10.48C21.8201 10.48 22.1501 10.49 23.2501 10.54C24.2701 10.59 24.8201 10.76 25.1901 10.9C25.6801 11.09 26.0201 11.32 26.3901 11.68C26.7601 12.05 26.9801 12.39 27.1701 12.88C27.3101 13.25 27.4801 13.8 27.5301 14.82C27.5801 15.92 27.5901 16.25 27.5901 19.04C27.5901 21.83 27.5801 22.16 27.5301 23.26C27.4801 24.28 27.3101 24.83 27.1701 25.2C26.9801 25.69 26.7501 26.03 26.3901 26.4C26.0301 26.76 25.6801 26.99 25.1901 27.18C24.8201 27.32 24.2701 27.49 23.2501 27.54C22.1501 27.59 21.8201 27.6 19.0301 27.6C16.2401 27.6 15.9101 27.59 14.8101 27.54C13.7901 27.49 13.2401 27.32 12.8701 27.18C12.3801 26.99 12.0401 26.76 11.6701 26.4C11.3101 26.03 11.0801 25.69 10.8901 25.2C10.7501 24.83 10.5801 24.28 10.5301 23.26C10.4801 22.16 10.4701 21.83 10.4701 19.04C10.4701 16.25 10.4801 15.92 10.5301 14.82C10.5801 13.8 10.7501 13.25 10.8901 12.88C11.0801 12.39 11.3101 12.05 11.6701 11.68C12.0401 11.31 12.3801 11.09 12.8701 10.9C13.2401 10.76 13.7901 10.59 14.8101 10.54C15.9101 10.49 16.2401 10.48 19.0301 10.48ZM19.0301 8.59998C16.2001 8.59998 15.8401 8.60998 14.7301 8.65998C13.6201 8.70998 12.8601 8.88997 12.2001 9.14997C11.5101 9.41997 10.9301 9.76998 10.3501 10.35C9.7701 10.93 9.4101 11.51 9.1501 12.2C8.8901 12.86 8.7201 13.62 8.6601 14.73C8.6101 15.84 8.6001 16.2 8.6001 19.03C8.6001 21.86 8.6101 22.22 8.6601 23.33C8.7101 24.44 8.8901 25.2 9.1501 25.86C9.4201 26.55 9.7701 27.13 10.3501 27.71C10.9301 28.29 11.5101 28.65 12.2001 28.91C12.8601 29.17 13.6201 29.34 14.7301 29.4C15.8401 29.45 16.2001 29.46 19.0301 29.46C21.8601 29.46 22.2201 29.45 23.3301 29.4C24.4401 29.35 25.2001 29.17 25.8601 28.91C26.5501 28.64 27.1301 28.29 27.7101 27.71C28.2901 27.13 28.6501 26.55 28.9101 25.86C29.1701 25.2 29.3401 24.44 29.4001 23.33C29.4501 22.22 29.4601 21.86 29.4601 19.03C29.4601 16.2 29.4501 15.84 29.4001 14.73C29.3501 13.62 29.1701 12.86 28.9101 12.2C28.6401 11.51 28.2901 10.93 27.7101 10.35C27.1301 9.76998 26.5501 9.40997 25.8601 9.14997C25.2001 8.88997 24.4401 8.71998 23.3301 8.65998C22.2201 8.60998 21.8601 8.59998 19.0301 8.59998Z" fill="#282828"/>
<path d="M19.0302 13.67C16.0702 13.67 13.6702 16.07 13.6702 19.03C13.6702 21.99 16.0702 24.39 19.0302 24.39C21.9902 24.39 24.3902 21.99 24.3902 19.03C24.3902 16.07 21.9902 13.67 19.0302 13.67ZM19.0302 22.51C17.1102 22.51 15.5502 20.95 15.5502 19.03C15.5502 17.11 17.1102 15.55 19.0302 15.55C20.9502 15.55 22.5102 17.11 22.5102 19.03C22.5102 20.95 20.9502 22.51 19.0302 22.51Z" fill="#282828"/>
<path d="M25.8501 13.46C25.8501 14.15 25.2901 14.71 24.6001 14.71C23.9101 14.71 23.3501 14.15 23.3501 13.46C23.3501 12.77 23.9101 12.21 24.6001 12.21C25.2901 12.21 25.8501 12.77 25.8501 13.46Z" fill="#282828"/>
<g clip-path="url(#clip1_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path d="M16.13 30.53H20.76V18.93H24L24.34 15.05H20.76C20.76 15.05 20.76 13.6 20.76 12.84C20.76 11.92 20.94 11.56 21.83 11.56C22.54 11.56 24.34 11.56 24.34 11.56V7.53003C24.34 7.53003 21.7 7.53003 21.13 7.53003C17.68 7.53003 16.13 9.05003 16.13 11.95C16.13 14.48 16.13 15.05 16.13 15.05H13.72V18.98H16.13V30.53V30.53Z" fill="#282828"/>
</g>
<g clip-path="url(#clip2_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M29.4601 18.5C29.3201 13 24.8001 8.59003 19.2201 8.59003C13.7101 8.59003 9.22009 12.9 8.98009 18.32C8.98009 18.47 8.97009 18.62 8.97009 18.77C8.97009 20.69 9.51009 22.49 10.4401 24.02L8.59009 29.48L14.2701 27.68C15.7401 28.49 17.4301 28.95 19.2201 28.95C24.8801 28.95 29.4701 24.4 29.4701 18.78C29.4701 18.68 29.4701 18.59 29.4601 18.5ZM19.2201 27.31C17.4701 27.31 15.8401 26.79 14.4801 25.89L11.1701 26.95L12.2401 23.77C11.2101 22.36 10.6001 20.63 10.6001 18.76C10.6001 18.48 10.6101 18.2 10.6401 17.93C11.0601 13.6 14.7501 10.21 19.2101 10.21C23.7301 10.21 27.4501 13.69 27.8001 18.09C27.8201 18.31 27.8301 18.53 27.8301 18.76C27.8401 23.48 23.9701 27.31 19.2201 27.31Z" fill="#282828"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.9202 20.82C23.6702 20.7 22.4302 20.09 22.2002 20.01C21.9702 19.92 21.8002 19.89 21.6302 20.13C21.4602 20.38 20.9802 20.94 20.8302 21.1C20.6802 21.27 20.5402 21.29 20.2802 21.16C20.0302 21.04 19.2202 20.78 18.2602 19.92C17.5202 19.26 17.0102 18.45 16.8602 18.2C16.7202 17.95 16.8502 17.82 16.9702 17.69C17.0902 17.57 17.2202 17.4 17.3502 17.25C17.3802 17.21 17.4102 17.17 17.4402 17.13C17.5002 17.04 17.5402 16.95 17.6002 16.83C17.6902 16.66 17.6402 16.52 17.5802 16.39C17.5202 16.27 17.0102 15.04 16.8002 14.54C16.5902 14.04 16.3802 14.13 16.2302 14.13C16.0902 14.13 15.9202 14.11 15.7502 14.11C15.5802 14.11 15.3102 14.17 15.0802 14.42C14.8502 14.67 14.2002 15.27 14.2002 16.5C14.2002 16.79 14.2502 17.08 14.3302 17.35C14.5802 18.23 15.1302 18.95 15.2302 19.08C15.3502 19.24 16.9702 21.84 19.5202 22.85C22.0802 23.84 22.0802 23.51 22.5402 23.47C23.0002 23.43 24.0302 22.87 24.2302 22.28C24.4402 21.7 24.4402 21.2 24.3802 21.09C24.3302 21 24.1702 20.94 23.9202 20.82Z" fill="#282828"/>
</g>
</g>
<defs>
<clipPath id="clip0_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
<clipPath id="clip1_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
<clipPath id="clip2_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 5.6 KiB

35
theme_coffee_shop/static/src/images/4.svg

@ -0,0 +1,35 @@
<svg width="39" height="39" viewBox="0 0 39 39" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path d="M19.0301 10.48C21.8201 10.48 22.1501 10.49 23.2501 10.54C24.2701 10.59 24.8201 10.76 25.1901 10.9C25.6801 11.09 26.0201 11.32 26.3901 11.68C26.7601 12.05 26.9801 12.39 27.1701 12.88C27.3101 13.25 27.4801 13.8 27.5301 14.82C27.5801 15.92 27.5901 16.25 27.5901 19.04C27.5901 21.83 27.5801 22.16 27.5301 23.26C27.4801 24.28 27.3101 24.83 27.1701 25.2C26.9801 25.69 26.7501 26.03 26.3901 26.4C26.0301 26.76 25.6801 26.99 25.1901 27.18C24.8201 27.32 24.2701 27.49 23.2501 27.54C22.1501 27.59 21.8201 27.6 19.0301 27.6C16.2401 27.6 15.9101 27.59 14.8101 27.54C13.7901 27.49 13.2401 27.32 12.8701 27.18C12.3801 26.99 12.0401 26.76 11.6701 26.4C11.3101 26.03 11.0801 25.69 10.8901 25.2C10.7501 24.83 10.5801 24.28 10.5301 23.26C10.4801 22.16 10.4701 21.83 10.4701 19.04C10.4701 16.25 10.4801 15.92 10.5301 14.82C10.5801 13.8 10.7501 13.25 10.8901 12.88C11.0801 12.39 11.3101 12.05 11.6701 11.68C12.0401 11.31 12.3801 11.09 12.8701 10.9C13.2401 10.76 13.7901 10.59 14.8101 10.54C15.9101 10.49 16.2401 10.48 19.0301 10.48ZM19.0301 8.59998C16.2001 8.59998 15.8401 8.60998 14.7301 8.65998C13.6201 8.70998 12.8601 8.88997 12.2001 9.14997C11.5101 9.41997 10.9301 9.76998 10.3501 10.35C9.7701 10.93 9.4101 11.51 9.1501 12.2C8.8901 12.86 8.7201 13.62 8.6601 14.73C8.6101 15.84 8.6001 16.2 8.6001 19.03C8.6001 21.86 8.6101 22.22 8.6601 23.33C8.7101 24.44 8.8901 25.2 9.1501 25.86C9.4201 26.55 9.7701 27.13 10.3501 27.71C10.9301 28.29 11.5101 28.65 12.2001 28.91C12.8601 29.17 13.6201 29.34 14.7301 29.4C15.8401 29.45 16.2001 29.46 19.0301 29.46C21.8601 29.46 22.2201 29.45 23.3301 29.4C24.4401 29.35 25.2001 29.17 25.8601 28.91C26.5501 28.64 27.1301 28.29 27.7101 27.71C28.2901 27.13 28.6501 26.55 28.9101 25.86C29.1701 25.2 29.3401 24.44 29.4001 23.33C29.4501 22.22 29.4601 21.86 29.4601 19.03C29.4601 16.2 29.4501 15.84 29.4001 14.73C29.3501 13.62 29.1701 12.86 28.9101 12.2C28.6401 11.51 28.2901 10.93 27.7101 10.35C27.1301 9.76998 26.5501 9.40997 25.8601 9.14997C25.2001 8.88997 24.4401 8.71998 23.3301 8.65998C22.2201 8.60998 21.8601 8.59998 19.0301 8.59998Z" fill="#282828"/>
<path d="M19.0302 13.67C16.0702 13.67 13.6702 16.07 13.6702 19.03C13.6702 21.99 16.0702 24.39 19.0302 24.39C21.9902 24.39 24.3902 21.99 24.3902 19.03C24.3902 16.07 21.9902 13.67 19.0302 13.67ZM19.0302 22.51C17.1102 22.51 15.5502 20.95 15.5502 19.03C15.5502 17.11 17.1102 15.55 19.0302 15.55C20.9502 15.55 22.5102 17.11 22.5102 19.03C22.5102 20.95 20.9502 22.51 19.0302 22.51Z" fill="#282828"/>
<path d="M25.8501 13.46C25.8501 14.15 25.2901 14.71 24.6001 14.71C23.9101 14.71 23.3501 14.15 23.3501 13.46C23.3501 12.77 23.9101 12.21 24.6001 12.21C25.2901 12.21 25.8501 12.77 25.8501 13.46Z" fill="#282828"/>
<g clip-path="url(#clip1_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path d="M16.13 30.53H20.76V18.93H24L24.34 15.05H20.76C20.76 15.05 20.76 13.6 20.76 12.84C20.76 11.92 20.94 11.56 21.83 11.56C22.54 11.56 24.34 11.56 24.34 11.56V7.53003C24.34 7.53003 21.7 7.53003 21.13 7.53003C17.68 7.53003 16.13 9.05003 16.13 11.95C16.13 14.48 16.13 15.05 16.13 15.05H13.72V18.98H16.13V30.53V30.53Z" fill="#282828"/>
</g>
<g clip-path="url(#clip2_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M29.4601 18.5C29.3201 13 24.8001 8.59003 19.2201 8.59003C13.7101 8.59003 9.22009 12.9 8.98009 18.32C8.98009 18.47 8.97009 18.62 8.97009 18.77C8.97009 20.69 9.51009 22.49 10.4401 24.02L8.59009 29.48L14.2701 27.68C15.7401 28.49 17.4301 28.95 19.2201 28.95C24.8801 28.95 29.4701 24.4 29.4701 18.78C29.4701 18.68 29.4701 18.59 29.4601 18.5ZM19.2201 27.31C17.4701 27.31 15.8401 26.79 14.4801 25.89L11.1701 26.95L12.2401 23.77C11.2101 22.36 10.6001 20.63 10.6001 18.76C10.6001 18.48 10.6101 18.2 10.6401 17.93C11.0601 13.6 14.7501 10.21 19.2101 10.21C23.7301 10.21 27.4501 13.69 27.8001 18.09C27.8201 18.31 27.8301 18.53 27.8301 18.76C27.8401 23.48 23.9701 27.31 19.2201 27.31Z" fill="#282828"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M23.9202 20.82C23.6702 20.7 22.4302 20.09 22.2002 20.01C21.9702 19.92 21.8002 19.89 21.6302 20.13C21.4602 20.38 20.9802 20.94 20.8302 21.1C20.6802 21.27 20.5402 21.29 20.2802 21.16C20.0302 21.04 19.2202 20.78 18.2602 19.92C17.5202 19.26 17.0102 18.45 16.8602 18.2C16.7202 17.95 16.8502 17.82 16.9702 17.69C17.0902 17.57 17.2202 17.4 17.3502 17.25C17.3802 17.21 17.4102 17.17 17.4402 17.13C17.5002 17.04 17.5402 16.95 17.6002 16.83C17.6902 16.66 17.6402 16.52 17.5802 16.39C17.5202 16.27 17.0102 15.04 16.8002 14.54C16.5902 14.04 16.3802 14.13 16.2302 14.13C16.0902 14.13 15.9202 14.11 15.7502 14.11C15.5802 14.11 15.3102 14.17 15.0802 14.42C14.8502 14.67 14.2002 15.27 14.2002 16.5C14.2002 16.79 14.2502 17.08 14.3302 17.35C14.5802 18.23 15.1302 18.95 15.2302 19.08C15.3502 19.24 16.9702 21.84 19.5202 22.85C22.0802 23.84 22.0802 23.51 22.5402 23.47C23.0002 23.43 24.0302 22.87 24.2302 22.28C24.4402 21.7 24.4402 21.2 24.3802 21.09C24.3302 21 24.1702 20.94 23.9202 20.82Z" fill="#282828"/>
</g>
<g clip-path="url(#clip3_657_2177)">
<path d="M19.03 38.06C8.52 38.06 0 29.54 0 19.03C0 8.52 8.52 0 19.03 0C29.54 0 38.06 8.52 38.06 19.03C38.06 29.54 29.54 38.06 19.03 38.06Z" fill="white"/>
<path d="M8.88989 25.4C10.7299 26.58 12.9199 27.27 15.2699 27.27C22.9899 27.27 27.3599 20.75 27.0999 14.89C27.9099 14.3 28.6199 13.57 29.1799 12.74C28.4299 13.07 27.6299 13.29 26.7899 13.39C27.6499 12.88 28.3099 12.06 28.6199 11.09C27.8199 11.57 26.9299 11.91 25.9799 12.1C25.2199 11.29 24.1399 10.79 22.9399 10.79C20.2499 10.79 18.2799 13.3 18.8899 15.9C15.4299 15.73 12.3699 14.07 10.3099 11.55C9.21989 13.42 9.73989 15.87 11.5999 17.11C10.9199 17.09 10.2799 16.9 9.70989 16.59C9.66989 18.52 11.0499 20.32 13.0499 20.72C12.4599 20.88 11.8199 20.92 11.1699 20.79C11.6999 22.44 13.2399 23.65 15.0599 23.68C13.2999 25.05 11.0999 25.66 8.88989 25.4Z" fill="#282828"/>
</g>
</g>
<defs>
<clipPath id="clip0_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
<clipPath id="clip1_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
<clipPath id="clip2_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
<clipPath id="clip3_657_2177">
<rect width="38.06" height="38.06" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 6.6 KiB

3
theme_coffee_shop/static/src/images/Arrow 2.svg

@ -0,0 +1,3 @@
<svg width="42" height="8" viewBox="0 0 42 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M0.85791 4.2686C0.662647 4.07333 0.662647 3.75675 0.85791 3.56149L4.03989 0.379509C4.23515 0.184246 4.55173 0.184246 4.747 0.379508C4.94226 0.574771 4.94226 0.891353 4.747 1.08662L1.91857 3.91504L4.747 6.74347C4.94226 6.93873 4.94226 7.25531 4.747 7.45058C4.55174 7.64584 4.23515 7.64584 4.03989 7.45058L0.85791 4.2686ZM41.605 4.41504L1.21146 4.41504L1.21146 3.41504L41.605 3.41504L41.605 4.41504Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 524 B

BIN
theme_coffee_shop/static/src/images/cart.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 795 B

BIN
theme_coffee_shop/static/src/images/coffee-bannerimg.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

BIN
theme_coffee_shop/static/src/images/coffee-contact.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 KiB

BIN
theme_coffee_shop/static/src/images/coffee-mugs-blue-textured-wallpaper.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 MiB

BIN
theme_coffee_shop/static/src/images/coffee-shopimg.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

BIN
theme_coffee_shop/static/src/images/coffee.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

BIN
theme_coffee_shop/static/src/images/logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

238
theme_coffee_shop/static/src/images/payment-method_69e7ec.svg

@ -0,0 +1,238 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 24.3.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 377 18" style="enable-background:new 0 0 377 18;" xml:space="preserve">
<style type="text/css">
.st0{fill:#FFFFFF;stroke:#E0E0E0;stroke-width:0.67;}
.st1{fill:#4E4E4E;}
.st2{fill-rule:evenodd;clip-rule:evenodd;fill:#212121;}
.st3{fill:#212121;}
.st4{fill:none;stroke:#212121;stroke-width:0.63;stroke-linecap:square;}
.st5{opacity:0.94;fill-rule:evenodd;clip-rule:evenodd;fill:#2A2C83;enable-background:new ;}
.st6{fill-rule:evenodd;clip-rule:evenodd;fill:#097A44;}
.st7{fill-rule:evenodd;clip-rule:evenodd;fill:#F46F20;}
.st8{fill:#FFFFFF;}
.st9{fill:#F58220;}
.st10{fill-rule:evenodd;clip-rule:evenodd;fill:#1A1919;}
.st11{fill-rule:evenodd;clip-rule:evenodd;fill:#F58220;}
.st12{fill-rule:evenodd;clip-rule:evenodd;fill:#184977;}
.st13{fill:#FFFFFF;stroke:#184977;}
.st14{fill:#0079C1;}
.st15{fill:#007BDB;}
.st16{fill:#E42B00;}
.st17{fill-rule:evenodd;clip-rule:evenodd;fill:#1740CE;}
.st18{fill:#CC0000;}
.st19{fill:#FF9900;}
.st20{fill-rule:evenodd;clip-rule:evenodd;fill:#F16D27;}
.st21{fill:#1A1F71;}
</style>
<path class="st0" d="M375,0.7h-34c-0.3,0-0.5,0.1-0.7,0.3c-0.2,0.2-0.3,0.4-0.3,0.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h34c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7C375.5,0.8,375.3,0.7,375,0.7
L375,0.7z"/>
<path class="st1" d="M355.2,6.8h-1.3v1h1.5v0.4h-2.1V5h2.1v0.4h-1.5v0.9h1.3V6.8z M357.7,7.5h-1.2l-0.3,0.7h-0.6l1.2-3.2h0.5
l1.2,3.2H358L357.7,7.5z M356.6,7h0.9l-0.5-1.3L356.6,7z M360.6,7.4c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.1
c-0.2-0.1-0.3-0.2-0.5-0.2c-0.2-0.1-0.4-0.1-0.6-0.3c-0.1-0.1-0.2-0.2-0.3-0.3s-0.1-0.3-0.1-0.4c0-0.1,0-0.2,0.1-0.4
c0.1-0.1,0.1-0.2,0.2-0.3C359.4,5,359.7,5,360,5c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.2,0.3,0.1,0.5h-0.6
c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.2c-0.1-0.1-0.1-0.1-0.2-0.1s-0.2,0-0.2,0c-0.1,0-0.3,0-0.4,0.1c0,0-0.1,0.1-0.1,0.1
c0,0.1,0,0.1,0,0.2c0,0.1,0,0.1,0,0.2c0,0.1,0.1,0.1,0.1,0.1c0.2,0.1,0.3,0.2,0.5,0.2c0.2,0.1,0.4,0.1,0.6,0.2
c0.1,0.1,0.2,0.2,0.3,0.3c0.1,0.1,0.1,0.3,0.1,0.4c0,0.1,0,0.2-0.1,0.4c-0.1,0.1-0.1,0.2-0.2,0.3c-0.2,0.2-0.5,0.3-0.8,0.2
c-0.2,0-0.4,0-0.6-0.1c-0.2-0.1-0.3-0.2-0.4-0.4c-0.1-0.2-0.2-0.3-0.2-0.5h0.5c0,0.1,0,0.2,0,0.2c0,0.1,0.1,0.1,0.1,0.2
c0.2,0.1,0.3,0.2,0.5,0.2c0.2,0,0.3,0,0.4-0.1c0.1,0,0.1-0.1,0.1-0.1C360.6,7.5,360.6,7.5,360.6,7.4L360.6,7.4z M362.7,6.5l0.7-1.5
h0.6l-1.1,2v1.2h-0.6V7.1l-1.1-2h0.6L362.7,6.5z M367.4,6.8h-1.3v1h1.5v0.4h-2.1V5h2.1v0.4H366v0.9h1.3L367.4,6.8z M368.8,5l0.9,2.5
l0.9-2.5h0.7v3.2h-0.6v-1l0.1-1.4l-0.9,2.5h-0.4l-0.9-2.5l0.1,1.4v1H368V5H368.8z M372.6,8.2H372V5h0.5L372.6,8.2z M355.9,11.7
c0,0.3,0,0.6-0.2,0.8c-0.1,0.2-0.3,0.4-0.5,0.6c-0.2,0.1-0.4,0.2-0.7,0.2c-0.2,0-0.5-0.1-0.7-0.2c-0.2-0.1-0.4-0.3-0.5-0.5
c-0.1-0.3-0.2-0.5-0.2-0.8v-0.2c0-0.3,0-0.6,0.2-0.8c0.1-0.2,0.3-0.4,0.5-0.6c0.2-0.1,0.4-0.2,0.7-0.2c0.2,0,0.5,0.1,0.7,0.2
c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.3,0.2,0.5,0.2,0.8V11.7z M355.4,11.5c0-0.3-0.1-0.6-0.2-0.8c-0.1-0.1-0.1-0.2-0.2-0.2
s-0.2-0.1-0.3-0.1c-0.1,0-0.2,0-0.3,0.1c-0.1,0.1-0.2,0.1-0.2,0.2c-0.1,0.2-0.2,0.5-0.2,0.8v0.2c0,0.3,0.1,0.6,0.2,0.8
c0.1,0.1,0.2,0.2,0.3,0.2c0.1,0,0.2,0.1,0.3,0.1c0.1,0,0.2,0,0.3-0.1c0.1,0,0.2-0.1,0.3-0.2c0.1-0.2,0.2-0.5,0.2-0.8V11.5z M357,12
v1.2h-0.6V10h1.2c0.3,0,0.6,0.1,0.9,0.3c0.1,0.1,0.2,0.2,0.2,0.3c0.1,0.1,0.1,0.3,0.1,0.4c0,0.1,0,0.3-0.1,0.4
c-0.1,0.1-0.1,0.2-0.2,0.3c-0.2,0.2-0.6,0.3-0.9,0.3H357z M357,11.6h0.7c0.2,0,0.3,0,0.5-0.1c0.1-0.1,0.1-0.1,0.1-0.2
c0-0.1,0-0.1,0-0.2c0-0.1,0-0.2,0-0.2c0-0.1-0.1-0.1-0.1-0.2c-0.1-0.1-0.3-0.2-0.4-0.2H357L357,11.6z M361.7,10.4h-1v2.8h-0.6v-2.7
h-1V10h2.5L361.7,10.4z M362.7,13.2h-0.6V10h0.6V13.2z M365.9,11.7c0,0.3,0,0.6-0.2,0.8c-0.1,0.2-0.3,0.4-0.5,0.6
c-0.2,0.1-0.4,0.2-0.7,0.2c-0.2,0-0.5-0.1-0.7-0.2c-0.2-0.1-0.4-0.3-0.5-0.5c-0.1-0.3-0.2-0.5-0.2-0.8v-0.2c0-0.3,0-0.6,0.2-0.8
c0.1-0.2,0.3-0.4,0.5-0.6c0.2-0.1,0.4-0.2,0.7-0.2c0.2,0,0.5,0.1,0.7,0.2c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.3,0.2,0.5,0.2,0.8V11.7z
M365.4,11.5c0-0.3,0-0.6-0.2-0.8c-0.1-0.1-0.1-0.2-0.2-0.2c-0.1-0.1-0.2-0.1-0.3-0.1c-0.1,0-0.2,0-0.3,0.1
c-0.1,0.1-0.2,0.1-0.2,0.2c-0.1,0.2-0.2,0.5-0.2,0.8v0.2c0,0.3,0.1,0.6,0.2,0.8c0.1,0.1,0.1,0.2,0.2,0.2c0.1,0.1,0.2,0.1,0.3,0.1
c0.1,0,0.2,0,0.3-0.1c0.1,0,0.2-0.1,0.2-0.2c0.2-0.2,0.2-0.5,0.2-0.8V11.5z M369,13.2h-0.5L367,11v2.3h-0.6V10h0.6l1.4,2.3V10h0.6
V13.2z M371.3,12.4c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.1c-0.2-0.1-0.3-0.2-0.5-0.2c-0.2-0.1-0.4-0.1-0.6-0.3
c-0.1-0.1-0.2-0.2-0.3-0.3c-0.1-0.1-0.1-0.3-0.1-0.4c0-0.1,0-0.2,0.1-0.4c0.1-0.1,0.1-0.2,0.2-0.3c0.2-0.2,0.5-0.3,0.8-0.2
c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.2,0.3,0.1,0.5h-0.6c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.2
c-0.1-0.1-0.1-0.1-0.2-0.1c-0.1,0-0.2,0-0.2,0c-0.1,0-0.3,0-0.4,0.1c0,0-0.1,0.1-0.1,0.1c0,0.1,0,0.1,0,0.2c0,0.1,0,0.1,0,0.2
c0,0.1,0.1,0.1,0.1,0.1c0.2,0.1,0.3,0.2,0.5,0.2c0.2,0.1,0.4,0.1,0.6,0.2c0.1,0.1,0.2,0.2,0.3,0.3c0.1,0.1,0.1,0.3,0.1,0.4
c0,0.1,0,0.2-0.1,0.4c-0.1,0.1-0.1,0.2-0.2,0.3c-0.2,0.2-0.5,0.3-0.8,0.2c-0.2,0-0.4,0-0.6-0.1c-0.2-0.1-0.3-0.2-0.4-0.4
c-0.1-0.2-0.2-0.3-0.2-0.5h0.5c0,0.1,0,0.2,0,0.2c0,0.1,0.1,0.1,0.1,0.2c0.1,0.1,0.3,0.2,0.5,0.2c0.2,0,0.3,0,0.4-0.1
c0.1,0,0.1-0.1,0.1-0.1C371.3,12.5,371.3,12.5,371.3,12.4L371.3,12.4z"/>
<path class="st2" d="M349.5,5.8V5h-0.8v0.8h-3.1V5h-0.8v0.8h-0.4c-0.1,0-0.2,0-0.3,0.1c-0.1,0-0.2,0.1-0.3,0.2
c-0.1,0.1-0.1,0.2-0.2,0.3c0,0.1-0.1,0.2,0,0.3v5.5c0,0.2,0.1,0.4,0.2,0.6c0.1,0.2,0.4,0.2,0.6,0.3h5.5c0.2,0,0.4-0.1,0.6-0.3
c0.1-0.2,0.2-0.4,0.2-0.6V6.7c0-0.2-0.1-0.4-0.2-0.6c-0.1-0.2-0.4-0.2-0.6-0.3H349.5z M344.4,12.2V7.5h5.5v4.6H344.4z"/>
<path class="st3" d="M346.2,9.9c0.2,0,0.4-0.1,0.6-0.2c0.2-0.1,0.3-0.3,0.4-0.4c0.1-0.2,0.1-0.4,0.1-0.6s-0.1-0.4-0.3-0.5
c-0.1-0.1-0.3-0.2-0.5-0.3c-0.2,0-0.4,0-0.6,0.1c-0.2,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.2,0.4-0.2,0.6c0,0.3,0.1,0.5,0.3,0.7
C345.7,9.8,346,9.9,346.2,9.9z"/>
<path class="st3" d="M347.8,11.8c0.2,0,0.4-0.1,0.6-0.2c0.2-0.1,0.3-0.3,0.4-0.4c0.1-0.2,0.1-0.4,0.1-0.6c0-0.2-0.1-0.4-0.3-0.5
c-0.1-0.1-0.3-0.2-0.5-0.3c-0.2,0-0.4,0-0.6,0.1c-0.2,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.2,0.4-0.2,0.6c0,0.3,0.1,0.5,0.3,0.7
C347.3,11.7,347.5,11.8,347.8,11.8z"/>
<path class="st4" d="M347.8,8.6l-1.7,2.6"/>
<path class="st0" d="M333.7,0.7h-34c-0.3,0-0.5,0.1-0.7,0.3c-0.2,0.2-0.3,0.4-0.3,0.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h34c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7
C334.2,0.8,333.9,0.7,333.7,0.7L333.7,0.7z"/>
<path class="st1" d="M312.5,7.2c0,0.3-0.2,0.6-0.4,0.8c-0.2,0.2-0.6,0.3-0.9,0.3c-0.2,0-0.5-0.1-0.7-0.2c-0.2-0.1-0.4-0.3-0.5-0.5
c-0.1-0.2-0.2-0.5-0.2-0.8V6.5c0-0.3,0.1-0.5,0.2-0.8c0.1-0.2,0.3-0.4,0.5-0.5S311,5,311.2,5c0.3,0,0.6,0.1,0.9,0.3
c0.2,0.2,0.4,0.5,0.4,0.8h-0.6c0-0.2-0.1-0.4-0.2-0.5c-0.1-0.1-0.3-0.2-0.5-0.2c-0.1,0-0.2,0-0.3,0.1c-0.1,0-0.2,0.1-0.2,0.2
c-0.1,0.2-0.2,0.5-0.2,0.8v0.3c0,0.3,0.1,0.5,0.2,0.8c0.1,0.1,0.1,0.2,0.2,0.2c0.1,0,0.2,0.1,0.3,0.1c0.2,0,0.4,0,0.5-0.2
c0.1-0.1,0.2-0.3,0.2-0.5L312.5,7.2z M314.8,7.5h-1.2l-0.3,0.7h-0.6l1.2-3.2h0.5l1.2,3.2H315L314.8,7.5z M313.7,7h0.9l-0.5-1.3
L313.7,7z M317.7,7.4c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.1c-0.2-0.1-0.3-0.2-0.5-0.2c-0.2-0.1-0.4-0.1-0.6-0.3
c-0.1-0.1-0.2-0.2-0.3-0.3c-0.1-0.1-0.1-0.3-0.1-0.4c0-0.1,0-0.2,0.1-0.4c0.1-0.1,0.1-0.2,0.2-0.3c0.2-0.1,0.5-0.2,0.8-0.2
c0.2,0,0.4,0,0.6,0.1c0.2,0.1,0.3,0.2,0.4,0.3c0.1,0.2,0.2,0.3,0.1,0.5h-0.6c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.2
c-0.1-0.1-0.3-0.2-0.5-0.2c-0.1,0-0.3,0-0.4,0.1c0,0-0.1,0.1-0.1,0.1c0,0.1,0,0.1,0,0.2c0,0.1,0,0.1,0,0.2c0,0.1,0.1,0.1,0.1,0.1
c0.2,0.1,0.3,0.2,0.5,0.2c0.2,0.1,0.4,0.1,0.6,0.2c0.1,0.1,0.3,0.2,0.3,0.3c0.1,0.1,0.1,0.3,0.1,0.4c0,0.1,0,0.2-0.1,0.4
C318,7.9,318,8,317.9,8c-0.2,0.2-0.5,0.3-0.8,0.2c-0.2,0-0.4,0-0.6-0.1c-0.2-0.1-0.3-0.2-0.5-0.4c-0.1-0.2-0.2-0.3-0.2-0.5h0.6
c0,0.1,0,0.2,0,0.2c0,0.1,0.1,0.1,0.1,0.2c0.1,0.1,0.3,0.2,0.5,0.2c0.2,0,0.3,0,0.4-0.1c0.1,0,0.1-0.1,0.1-0.1
C317.6,7.5,317.6,7.5,317.7,7.4L317.7,7.4z M321.2,8.2h-0.5V6.8h-1.4v1.4h-0.6V5h0.6v1.4h1.4V5h0.5V8.2z M325.6,6.7
c0,0.3,0,0.6-0.2,0.8c-0.1,0.2-0.3,0.4-0.5,0.6c-0.2,0.1-0.4,0.2-0.7,0.2c-0.2,0-0.5-0.1-0.7-0.2c-0.2-0.1-0.4-0.3-0.5-0.5
c-0.1-0.3-0.2-0.5-0.2-0.8V6.5c0-0.3,0-0.6,0.2-0.8c0.1-0.2,0.3-0.4,0.5-0.6c0.2-0.1,0.3-0.2,0.5-0.2s0.4,0,0.5,0
c0.2,0.1,0.3,0.1,0.5,0.3c0.1,0.1,0.3,0.3,0.3,0.4c0.1,0.3,0.2,0.5,0.2,0.8V6.7z M325,6.5c0-0.3-0.1-0.6-0.2-0.8
c-0.1-0.1-0.1-0.2-0.2-0.2c-0.1,0-0.2-0.1-0.3-0.1c-0.1,0-0.2,0-0.3,0.1c-0.1,0-0.2,0.1-0.2,0.2c-0.1,0.2-0.2,0.5-0.2,0.8v0.2
c0,0.3,0.1,0.6,0.2,0.8c0.1,0.1,0.1,0.2,0.2,0.2c0.1,0.1,0.2,0.1,0.3,0.1c0.1,0,0.2,0,0.3-0.1c0.1,0,0.2-0.1,0.2-0.2
c0.1-0.2,0.2-0.5,0.2-0.8V6.5z M328.6,8.2h-0.6L326.7,6v2.2h-0.6V5h0.6l1.4,2.3V5h0.6V8.2z M310,13.2V10h1c0.3,0,0.5,0.1,0.8,0.2
c0.2,0.1,0.4,0.3,0.5,0.5c0.1,0.2,0.2,0.5,0.2,0.8v0.2c0,0.3-0.1,0.6-0.2,0.8c-0.1,0.2-0.3,0.4-0.5,0.5c-0.2,0.1-0.5,0.2-0.8,0.2
L310,13.2z M310.6,10.5v2.3h0.4c0.1,0,0.2,0,0.4-0.1c0.1,0,0.2-0.1,0.3-0.2c0.2-0.2,0.3-0.5,0.2-0.8v-0.2c0-0.3-0.1-0.6-0.2-0.8
c-0.1-0.1-0.2-0.2-0.3-0.2c-0.1,0-0.2-0.1-0.4-0.1H310.6z M314.8,11.8h-1.3v1h1.5v0.4H313V10h2v0.4h-1.5v0.9h1.3L314.8,11.8z
M316.1,12.8h1.4v0.4h-2V10h0.6L316.1,12.8z M318.5,13.2H318V10h0.5L318.5,13.2z M320.3,12.5l0.8-2.5h0.6l-1.2,3.2h-0.5l-1.1-3.2
h0.6L320.3,12.5z M324,11.8h-1.3v1h1.5v0.4h-2.1V10h2.1v0.4h-1.5v0.9h1.3V11.8z M325.9,12h-0.6v1.2h-0.6V10h1.1
c0.3,0,0.6,0.1,0.9,0.2c0.1,0.1,0.2,0.2,0.2,0.3c0.1,0.1,0.1,0.3,0.1,0.4c0,0.2-0.1,0.4-0.2,0.5c-0.1,0.1-0.3,0.3-0.4,0.3l0.7,1.3
h-0.6L325.9,12z M325.2,11.5h0.6c0.2,0,0.3,0,0.4-0.1c0.1,0,0.1-0.1,0.1-0.2c0-0.1,0-0.1,0-0.2c0-0.1,0-0.1,0-0.2s-0.1-0.1-0.1-0.2
c-0.1-0.1-0.1-0.1-0.2-0.1c-0.1,0-0.2,0-0.2,0h-0.6V11.5z M328.4,11.5l0.7-1.5h0.6l-1.1,2v1.2h-0.6v-1.1l-1.1-2h0.6L328.4,11.5z"/>
<path class="st3" d="M303.5,8.1l-0.2,0.5h2.6c-0.1,0.3-0.2,0.6-0.5,0.8c-0.4,0.3-1,0.4-1.5,0.4h-0.5v0.6c0.2,0,0.5,0.1,0.7,0.2
c0.2,0.2,0.4,0.3,0.5,0.6l1.8,2.4h1.1l-2.1-2.7c-0.1-0.2-0.3-0.4-0.5-0.6c0.5-0.1,0.9-0.3,1.3-0.6c0.3-0.3,0.5-0.6,0.5-1h1.1
l0.2-0.5h-1.3c0-0.2-0.1-0.5-0.2-0.7c-0.1-0.2-0.3-0.4-0.5-0.6h1.8l0.2-0.5h-4.6l-0.2,0.5h0.9c0.4,0,0.9,0.1,1.2,0.4
c0.2,0.2,0.4,0.5,0.4,0.9H303.5z"/>
<path class="st0" d="M292.3,0.7h-34c-0.3,0-0.5,0.1-0.7,0.3c-0.2,0.2-0.3,0.4-0.3,0.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h34c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7
C292.9,0.8,292.6,0.7,292.3,0.7L292.3,0.7z"/>
<path class="st1" d="M272.9,8h-0.5l-1.4-2.3V8h-0.6V4.8h0.6l1.4,2.3V4.8h0.5V8z M275.4,6.6h-1.3v1h1.5V8h-2.1V4.8h2.1v0.5h-1.5v0.9
h1.3V6.6z M278.4,5.2h-1V8h-0.6V5.2h-1V4.8h2.5L278.4,5.2z M270.3,13V9.8h1.1c0.3,0,0.6,0.1,0.8,0.2c0.1,0.1,0.2,0.2,0.2,0.3
c0,0.1,0.1,0.2,0.1,0.4c0,0.1,0,0.3-0.1,0.4c-0.1,0.1-0.2,0.2-0.3,0.3c0.2,0,0.3,0.1,0.4,0.3c0.1,0.1,0.2,0.3,0.1,0.5
c0,0.1,0,0.3-0.1,0.4c-0.1,0.1-0.1,0.2-0.2,0.3c-0.2,0.2-0.5,0.3-0.8,0.2H270.3z M270.9,11.6v1h0.6c0.1,0,0.3,0,0.4-0.1
c0,0,0.1-0.1,0.1-0.2c0-0.1,0-0.1,0-0.2c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.2s-0.1-0.1-0.2-0.1c-0.1,0-0.1,0-0.2,0H270.9z
M270.9,11.1h0.5c0.1,0,0.3,0,0.4-0.1c0,0,0.1-0.1,0.1-0.1c0-0.1,0-0.1,0-0.2c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.2
c-0.1-0.1-0.3-0.1-0.4-0.1h-0.5V11.1z M275,12.3h-1.2l-0.3,0.7h-0.6l1.2-3.2h0.5l1.2,3.2h-0.6L275,12.3z M273.9,11.8h0.9l-0.5-1.3
L273.9,11.8z M278.7,13h-0.6l-1.4-2.3V13h-0.6V9.8h0.6l1.4,2.3V9.8h0.6V13z M280.3,11.6l-0.4,0.4v1h-0.6V9.8h0.6v1.5l0.3-0.4
l0.9-1.1h0.7l-1.2,1.4l1.3,1.8h-0.7L280.3,11.6z M282.8,13h-0.5V9.8h0.5V13z M286,13h-0.5l-1.5-2.3V13h-0.6V9.8h0.6l1.4,2.3V9.8h0.6
V13z M289.1,12.6c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.5,0.1-0.7,0.1c-0.2,0-0.5-0.1-0.7-0.2c-0.2-0.1-0.4-0.3-0.5-0.5
c-0.1-0.2-0.2-0.5-0.2-0.8v-0.2c0-0.4,0.1-0.8,0.4-1.1c0.1-0.1,0.3-0.3,0.4-0.3c0.2-0.1,0.4-0.1,0.6-0.1c0.3,0,0.6,0.1,0.8,0.3
c0.2,0.2,0.4,0.5,0.4,0.8h-0.5c0-0.1,0-0.2-0.1-0.2c0-0.1-0.1-0.1-0.2-0.2c-0.1-0.1-0.1-0.1-0.2-0.1c-0.1,0-0.2,0-0.2,0
c-0.1,0-0.2,0-0.3,0.1s-0.2,0.1-0.2,0.2c-0.1,0.2-0.2,0.5-0.2,0.8v0.2c0,0.3,0.1,0.6,0.2,0.8c0.1,0.1,0.2,0.2,0.3,0.2
c0.1,0.1,0.2,0.1,0.3,0.1c0.1,0,0.2,0,0.3,0c0.1,0,0.2-0.1,0.3-0.2v-0.6h-0.7v-0.4h1.2L289.1,12.6z"/>
<path d="M263.8,4c0.3,0,0.5,0.1,0.7,0.3s0.3,0.4,0.3,0.7v1c0.6,0.1,1.2,0.3,1.6,0.8c0.4,0.5,0.6,1.1,0.6,1.7v2.6
c0,0.3-0.1,0.6-0.2,0.9c-0.1,0.3-0.3,0.6-0.5,0.8c-0.2,0.2-0.5,0.4-0.8,0.5c-0.3,0.1-0.6,0.2-0.9,0.2c-0.3,0-0.6-0.1-0.9-0.2
s-0.6-0.3-0.8-0.5c-0.2-0.2-0.4-0.5-0.5-0.8c-0.1-0.3-0.2-0.6-0.2-0.9V8.5c0-0.6,0.2-1.2,0.6-1.7c0.4-0.5,1-0.7,1.6-0.8V5
c0-0.1,0-0.1,0-0.2c0-0.1-0.1-0.1-0.1-0.2c0,0-0.1-0.1-0.2-0.1c-0.1,0-0.1,0-0.2,0c-0.1,0-0.1,0-0.2,0c-0.1,0-0.1,0.1-0.2,0.1
c0,0.1-0.1,0.1-0.1,0.2c0,0.1,0,0.1,0,0.2v0.2c0,0.3-0.1,0.5-0.3,0.7c-0.2,0.2-0.4,0.3-0.7,0.3c-0.3,0-0.5-0.1-0.7-0.3
c-0.2-0.2-0.3-0.4-0.3-0.7c0,0,0-0.1,0-0.1c0,0,0-0.1,0.1-0.1c0,0,0.1,0,0.1,0c0,0,0.1,0,0.1,0c0,0,0.1,0,0.1,0.1c0,0,0,0.1,0,0.1
c0,0.1,0,0.2,0,0.2c0,0.1,0.1,0.1,0.1,0.2c0.1,0.1,0.1,0.1,0.2,0.1c0.1,0,0.1,0,0.2,0c0.1,0,0.2,0,0.2,0c0.1,0,0.1-0.1,0.2-0.1
c0-0.1,0.1-0.1,0.1-0.2c0-0.1,0-0.1,0-0.2V5c0-0.3,0.1-0.5,0.3-0.7C263.3,4.1,263.6,4,263.8,4L263.8,4z M264.6,7c0,0-0.1,0-0.1,0
c0,0-0.1,0-0.1,0.1c0,0,0,0.1-0.1,0.1c0,0,0,0.1,0,0.1v1.2c0,0,0,0.1,0,0.1c0,0,0,0.1,0.1,0.1c0,0,0.1,0.1,0.1,0.1c0,0,0.1,0,0.1,0
h0.1l0.1-0.1c0,0,0.1-0.1,0.1-0.1c0,0,0-0.1,0-0.1V7.4c0,0,0-0.1,0-0.1c0,0,0-0.1-0.1-0.1l-0.1-0.1C264.7,7.1,264.6,7.1,264.6,7
L264.6,7z"/>
<path class="st0" d="M251.7,0.7h-30c-0.3,0-0.5,0.1-0.7,0.3c-0.2,0.2-0.3,0.4-0.3,0.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h30c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7
C252.2,0.8,251.9,0.7,251.7,0.7L251.7,0.7z"/>
<path class="st5" d="M225.3,10.6c0,0,0.1-0.6,0.5-2c0.3-1.1,0.6-2.1,0.6-2.2l0.1-0.3h1.2c1.4,0,1.6,0,1.8,0.2c0.4,0.2,0.5,0.5,0.4,1
c-0.1,0.4-0.4,0.8-0.8,1.1c-0.1,0.1-0.2,0.1-0.2,0.2c0,0,0,0.1,0.1,0.2c0.1,0.1,0.1,0.1,0.2,0.2c0.1,0.3,0.1,0.5,0,0.8
c0,0.2-0.1,0.4-0.1,0.6v0.3h-0.6c-0.2,0-0.4,0-0.6,0c-0.1-0.1-0.1-0.2,0-0.6c0.1-0.4,0.1-0.6,0-0.7c-0.1-0.1-0.2-0.2-0.6-0.2
S227,9,227,9s-0.1,0.2-0.3,0.9l-0.2,0.6H226C225.8,10.6,225.6,10.6,225.3,10.6L225.3,10.6z M228.3,8.1c0.3-0.1,0.4-0.2,0.4-0.6
c0-0.1,0-0.1,0-0.2c-0.1-0.1-0.3-0.1-0.8-0.1h-0.4l-0.1,0.2c-0.1,0.2-0.1,0.4-0.2,0.7c0,0.1,0,0.1,0.1,0.1
C227.8,8.2,228.1,8.2,228.3,8.1L228.3,8.1z M230.3,10.7c-0.2-0.1-0.3-0.2-0.4-0.3c-0.1-0.3,0-0.8,0.4-2.3c0.1-0.3,0.2-0.6,0.2-0.6
c0,0,0.1,0,0.5,0c0.2,0,0.3,0,0.5,0h0.1l-0.1,0.3c-0.2,0.6-0.4,1.4-0.4,1.7c0,0.2,0,0.3,0,0.3c0,0.1,0.4,0.2,0.6,0.1
s0.3-0.3,0.8-1.9c0-0.2,0.1-0.3,0.2-0.4l0.1-0.1h0.5c0.4,0,0.5,0,0.5,0c0,0-0.6,2.2-0.8,3.1v0.1h-1c0-0.1,0-0.1,0.1-0.1
c0.1-0.3,0-0.3-0.4,0c-0.2,0.2-0.5,0.3-0.8,0.3C230.6,10.8,230.4,10.8,230.3,10.7L230.3,10.7z M233.6,10.6c0.1-0.8,0.3-1.5,0.6-2.2
l0.6-2.2h1c1.3,0,1.6,0,1.8,0.2c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2,0,0.4-0.1,0.5c-0.1,0.3-0.3,0.6-0.5,0.8
c-0.2,0.2-0.5,0.4-0.8,0.5c-0.2,0-0.5,0.1-0.7,0.1c-0.9,0.1-0.9,0-0.9,0.2c-0.1,0.2-0.1,0.4-0.2,0.7l-0.2,0.6h-0.6
C234,10.7,233.8,10.7,233.6,10.6L233.6,10.6z M236.3,8.3c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.2-0.1,0.2-0.2c0.1-0.1,0.1-0.2,0.1-0.3
c0-0.1,0-0.2,0-0.3c-0.1-0.1-0.2-0.2-0.7-0.2c-0.2,0-0.3,0-0.5,0c-0.1,0.3-0.2,0.6-0.2,0.9c0,0,0,0.1,0,0.1
C235.8,8.3,236.1,8.3,236.3,8.3L236.3,8.3z M238,10.7c-0.3-0.1-0.4-0.4-0.3-0.9c0.2-0.7,0.5-0.9,1.7-1.1c0.7-0.1,0.9-0.2,1-0.5
S240.3,8,240,8c-0.1,0-0.2,0-0.3,0c-0.1,0-0.2,0.1-0.2,0.2l-0.1,0.1H239c-0.4,0-0.6,0-0.6-0.1c0.1-0.2,0.2-0.3,0.3-0.5
c0.2-0.2,0.4-0.3,0.7-0.3c0.6-0.2,1.2-0.2,1.8,0c0.2,0.1,0.3,0.2,0.4,0.4c0.1,0.1,0.1,0.3-0.3,1.5c-0.1,0.6-0.3,1.2-0.3,1.2v0.1
h-0.4h-0.5H240l-0.1-0.1c-0.1-0.2-0.1-0.2-0.5,0c-0.3,0.1-0.6,0.2-0.9,0.2C238.4,10.8,238.3,10.7,238,10.7L238,10.7z M239.7,10.1
c0.1-0.1,0.2-0.2,0.3-0.3c0.1-0.1,0.1-0.3,0.1-0.4V9.2h-0.2c-0.3,0-0.6,0.1-0.8,0.3c-0.1,0-0.1,0.1-0.2,0.1c0,0.1-0.1,0.1-0.1,0.2
c0,0.1,0,0.2,0.1,0.2C239.2,10.1,239.4,10.1,239.7,10.1L239.7,10.1z M241.3,12.1c-0.1,0-0.1-0.1,0-0.4c0.1-0.3,0.1-0.4,0.4-0.5
c0.3,0,0.4-0.1,0.5-0.2c0.1-0.7,0.1-1.5,0-2.2c0-0.4,0-0.8,0-1.3c0,0,0.2,0,0.6,0h0.5v1c0,0.3,0,0.7,0,1c0.1,0.1,0.3-0.3,1.1-1.8
l0.1-0.2h0.5c0.2,0,0.3,0,0.5,0c0,0-0.7,1.3-1.4,2.5c-1,1.7-1.2,2-1.7,2.1C242,12.1,241.7,12.1,241.3,12.1L241.3,12.1z"/>
<path class="st6" d="M245.8,11.7l1.4-5.1l1.3,2.6L245.8,11.7z"/>
<path class="st7" d="M244.9,11.7l1.4-5.1l1.3,2.6L244.9,11.7z"/>
<path class="st8" d="M214.4,1h-28.9c-0.3,0-0.6,0.1-0.9,0.4s-0.4,0.5-0.4,0.9v13.5c0,0.3,0.1,0.6,0.4,0.9s0.5,0.4,0.9,0.4h28.9
c0.3,0,0.6-0.1,0.9-0.4s0.4-0.5,0.4-0.9V2.2c0-0.3-0.1-0.6-0.4-0.9S214.8,1,214.4,1z"/>
<path class="st9" d="M195.4,17h19c0.2,0,0.3,0,0.5-0.1c0.2-0.1,0.3-0.2,0.4-0.3c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.1-0.3,0.1-0.5V10
C215.7,10,208.6,14.8,195.4,17L195.4,17z"/>
<path class="st10" d="M189.1,8.4c-0.3,0.2-0.6,0.3-1,0.3h-0.2V6.3h0.2c0.2,0,0.4,0,0.5,0.1c0.2,0.1,0.3,0.1,0.5,0.2
c0.1,0.1,0.2,0.3,0.3,0.4c0.1,0.2,0.1,0.3,0.1,0.5c0,0.2,0,0.3-0.1,0.5C189.3,8.2,189.2,8.3,189.1,8.4L189.1,8.4z M188.2,5.7h-1.1
v3.7h1.1c0.5,0,1-0.1,1.4-0.4c0.2-0.2,0.4-0.4,0.5-0.6c0.1-0.2,0.2-0.5,0.2-0.8c0-0.3-0.1-0.5-0.2-0.7c-0.1-0.2-0.3-0.4-0.4-0.6
c-0.2-0.2-0.4-0.3-0.6-0.4C188.7,5.7,188.5,5.7,188.2,5.7L188.2,5.7z M190.6,5.7h0.7v3.7h-0.7V5.7z M193.1,7.1
c-0.4-0.2-0.6-0.3-0.6-0.5c0-0.2,0.2-0.4,0.6-0.4c0.1,0,0.2,0,0.3,0.1c0.1,0.1,0.2,0.1,0.3,0.2l0.4-0.5c-0.3-0.3-0.7-0.4-1.1-0.4
c-0.3,0-0.6,0.1-0.8,0.3c-0.2,0.2-0.4,0.5-0.4,0.7c0,0.5,0.2,0.8,0.9,1c0.2,0.1,0.3,0.1,0.5,0.2c0.1,0,0.1,0.1,0.2,0.2
c0,0.1,0.1,0.1,0.1,0.2c0,0.1,0,0.1,0,0.2c0,0.1-0.1,0.1-0.1,0.2c-0.1,0-0.1,0.1-0.2,0.1c-0.1,0-0.1,0-0.2,0c-0.2,0-0.3,0-0.5-0.1
c-0.1-0.1-0.3-0.2-0.3-0.4l-0.5,0.4c0.1,0.2,0.3,0.4,0.6,0.5c0.2,0.1,0.5,0.2,0.8,0.2c0.2,0,0.3,0,0.5-0.1c0.2-0.1,0.3-0.1,0.4-0.3
c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.2,0.1-0.3,0.1-0.5C194.2,7.6,194,7.3,193.1,7.1L193.1,7.1z M194.4,7.5c0,0.3,0.1,0.5,0.2,0.8
c0.1,0.2,0.3,0.5,0.4,0.6c0.2,0.2,0.4,0.3,0.6,0.4s0.5,0.1,0.8,0.1c0.3,0,0.6-0.1,0.9-0.2V8.4c-0.1,0.1-0.3,0.2-0.4,0.3
c-0.2,0.1-0.3,0.1-0.5,0.1c-0.2,0-0.3,0-0.5-0.1c-0.2-0.1-0.3-0.2-0.4-0.3c-0.1-0.1-0.2-0.3-0.3-0.4s-0.1-0.3-0.1-0.5
c0-0.2,0-0.3,0.1-0.5c0.1-0.2,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.4-0.3c0.2-0.1,0.3-0.1,0.5-0.1c0.2,0,0.3,0,0.5,0.1
c0.2,0.1,0.3,0.2,0.4,0.3V5.8c-0.3-0.1-0.6-0.2-0.9-0.2c-0.5,0-1,0.2-1.4,0.5C194.7,6.5,194.5,7,194.4,7.5L194.4,7.5z M203.4,8.1
l-1-2.5h-0.8l1.6,3.8h0.4l1.6-3.8h-0.8L203.4,8.1L203.4,8.1z M205.5,9.4h2.1V8.7h-1.4v-1h1.3V7.1h-1.3V6.3h1.4V5.7h-2.1V9.4z
M209.1,7.4h-0.2V6.3h0.2c0.5,0,0.7,0.2,0.7,0.5S209.6,7.4,209.1,7.4L209.1,7.4z M210.6,6.7c0-0.7-0.5-1.1-1.3-1.1h-1.1v3.7h0.7V7.9
h0.1l1,1.5h0.9l-1.2-1.5c0.2,0,0.5-0.2,0.6-0.3C210.5,7.3,210.6,7.1,210.6,6.7L210.6,6.7z"/>
<path class="st11" d="M201.7,7.5c0,0.5-0.2,1-0.6,1.4c-0.4,0.4-0.9,0.6-1.4,0.6c-0.5,0-1-0.2-1.4-0.6c-0.4-0.4-0.6-0.9-0.6-1.4
c0-0.5,0.2-1,0.6-1.4s0.9-0.6,1.4-0.6c0.5,0,1,0.2,1.4,0.6S201.7,7,201.7,7.5L201.7,7.5z"/>
<path class="st0" d="M178.3,0.7h-30c-0.3,0-0.5,0.1-0.7,0.3c-0.2,0.2-0.3,0.4-0.3,0.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h30c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7
C178.9,0.8,178.6,0.7,178.3,0.7L178.3,0.7z"/>
<path class="st12" d="M160.3,4h6.1c1.3,0,2.6,0.5,3.5,1.5c0.9,0.9,1.5,2.2,1.5,3.5c0,1-0.3,2-0.8,2.8c-0.5,0.8-1.3,1.5-2.2,1.8
c-0.6,0.3-1.3,0.4-1.9,0.4h-6.1V4z"/>
<path class="st13" d="M160.3,13.5c0.9,0,1.8-0.3,2.5-0.8c0.7-0.5,1.3-1.2,1.6-2c0.3-0.8,0.4-1.7,0.2-2.6c-0.2-0.9-0.6-1.7-1.2-2.3
c-0.6-0.6-1.4-1-2.3-1.2c-0.9-0.2-1.8-0.1-2.6,0.3c-0.8,0.3-1.5,0.9-2,1.7c-0.5,0.7-0.8,1.6-0.8,2.5c0,0.6,0.1,1.2,0.4,1.7
c0.2,0.5,0.6,1,1,1.5c0.4,0.4,0.9,0.7,1.5,1C159.1,13.4,159.7,13.5,160.3,13.5L160.3,13.5z"/>
<path class="st12" d="M162.3,9c0-0.5-0.1-1-0.4-1.4c-0.3-0.4-0.7-0.7-1.1-0.9v4.5c0.4-0.2,0.8-0.5,1.1-0.9
C162.2,10,162.3,9.5,162.3,9L162.3,9z M159.8,11.2V6.8c-0.5,0.2-0.8,0.5-1.1,0.9c-0.3,0.4-0.4,0.9-0.4,1.4s0.1,1,0.4,1.4
C159,10.8,159.3,11.1,159.8,11.2L159.8,11.2z"/>
<path class="st0" d="M141.7,0.7h-30c-0.3,0-0.5,0.1-0.7,0.3c-0.2,0.2-0.3,0.4-0.3,0.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h30c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7
C142.2,0.8,141.9,0.7,141.7,0.7L141.7,0.7z"/>
<path class="st14" d="M128.8,11.7l-0.3-0.3v0.3h-0.9v-0.6c-0.1,0.1-0.2,0.1-0.4,0.1h-0.3v0.5h-1.4l-0.2-0.3l-0.2,0.3h-2.3V9.5h2.3
l0.2,0.3l0.2-0.3h8.4V2H120v5.9l0.5-1.2h0.9l0.3,0.7V6.6h1.1l0.2,0.5l0.2-0.5h5v0.2c0.2-0.2,0.5-0.3,0.7-0.2h1.6l0.3,0.7V6.6h0.9
L132,7V6.6h1v2.2h-1l-0.2-0.4v0.4h-1.4l-0.1-0.3h-0.4l-0.1,0.3h-0.9c-0.3,0-0.5-0.1-0.7-0.2v0.2h-1.4l-0.3-0.3v0.3h-5.2l-0.1-0.3
h-0.4l-0.1,0.3H120v7.1h13.9v-4.4c-0.2,0.1-0.3,0.2-0.5,0.2H128.8z"/>
<path class="st14" d="M133.9,9.8l-0.2,0.4L133,10c0,0,0,0-0.1,0c0,0,0,0,0,0c0,0,0,0.1,0,0.1c0,0,0,0.1,0,0.1c0,0,0.1,0,0.1,0h0.4
c0.3,0,0.5,0.2,0.5,0.5c0,0.1,0,0.1,0,0.2c0,0.1-0.1,0.1-0.1,0.2c-0.1,0-0.1,0.1-0.2,0.1c-0.1,0-0.1,0-0.2,0h-0.9v-0.4h0.9
c0,0,0,0,0,0c0,0,0,0,0-0.1h-0.1H133c-0.1,0-0.1,0-0.2,0c-0.1,0-0.1-0.1-0.2-0.1c-0.1,0-0.1-0.1-0.1-0.2c0-0.1,0-0.1,0-0.2
c0-0.1,0-0.1,0.1-0.2c0-0.1,0.1-0.1,0.1-0.2c0.1,0,0.1-0.1,0.2-0.1c0.1,0,0.1,0,0.2,0H133.9z"/>
<path class="st0" d="M105,0.7H75c-0.3,0-0.5,0.1-0.7,0.3C74.1,1.2,74,1.4,74,1.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h30c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7C105.5,0.8,105.3,0.7,105,0.7
L105,0.7z"/>
<path class="st15" d="M86.5,14c1,0,2-0.3,2.8-0.8c0.8-0.5,1.5-1.3,1.8-2.2C91.5,10,91.6,9,91.4,8c-0.2-1-0.7-1.9-1.4-2.6
c-0.7-0.7-1.6-1.2-2.6-1.4c-1-0.2-2-0.1-2.9,0.3c-0.9,0.4-1.7,1-2.2,1.8C81.8,7,81.5,8,81.5,9c0,1.3,0.5,2.6,1.5,3.5
C83.9,13.5,85.1,14,86.5,14L86.5,14z"/>
<path class="st16" d="M93.5,14c1,0,1.9-0.3,2.8-0.9c0.8-0.6,1.4-1.3,1.8-2.3C98.5,10,98.6,9,98.4,8c-0.2-1-0.7-1.9-1.4-2.5
c-0.7-0.7-1.6-1.2-2.6-1.4c-1-0.2-2-0.1-2.9,0.3c-0.9,0.4-1.7,1-2.2,1.8C88.8,7,88.5,8,88.5,9c0,0.7,0.1,1.3,0.4,1.9
c0.3,0.6,0.6,1.2,1.1,1.6c0.5,0.5,1,0.8,1.6,1.1C92.2,13.9,92.9,14,93.5,14L93.5,14z"/>
<path class="st17" d="M90,12.6c0.9-1,1.4-2.2,1.5-3.6c-0.1-1.3-0.6-2.6-1.5-3.6c-0.5,0.5-0.9,1-1.1,1.6c-0.3,0.6-0.4,1.3-0.4,2
c0,0.7,0.1,1.3,0.4,2C89.1,11.6,89.5,12.1,90,12.6L90,12.6z"/>
<path class="st0" d="M68.3,0.7h-30c-0.3,0-0.5,0.1-0.7,0.3c-0.2,0.2-0.3,0.4-0.3,0.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h30c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7C68.8,0.8,68.6,0.7,68.3,0.7
L68.3,0.7z"/>
<path class="st18" d="M49.8,14c1,0,1.9-0.3,2.8-0.9c0.8-0.6,1.4-1.3,1.8-2.3C54.7,10,54.8,9,54.6,8c-0.2-1-0.7-1.9-1.4-2.5
c-0.7-0.7-1.6-1.2-2.6-1.4c-1-0.2-2-0.1-2.9,0.3c-0.9,0.4-1.7,1-2.2,1.8C45,7,44.7,8,44.7,9c0,0.7,0.1,1.3,0.4,1.9
c0.3,0.6,0.6,1.2,1.1,1.6c0.5,0.5,1,0.8,1.6,1.1C48.5,13.9,49.1,14,49.8,14L49.8,14z"/>
<path class="st19" d="M56.9,14c1,0,2-0.3,2.8-0.8c0.8-0.5,1.5-1.3,1.8-2.2C61.9,10,62,9,61.8,8c-0.2-1-0.7-1.9-1.4-2.6
c-0.7-0.7-1.6-1.2-2.6-1.4c-1-0.2-2-0.1-2.9,0.3c-0.9,0.4-1.7,1-2.2,1.8C52.2,7,51.9,8,51.9,9c0,1.3,0.5,2.6,1.5,3.5
C54.3,13.5,55.5,14,56.9,14L56.9,14z"/>
<path class="st20" d="M53.4,12.6c0.9-1,1.4-2.3,1.5-3.6c-0.1-1.3-0.7-2.6-1.6-3.6c-0.5,0.5-0.9,1-1.1,1.6c-0.3,0.6-0.4,1.3-0.3,2
c0,0.7,0.1,1.3,0.4,1.9C52.5,11.6,52.9,12.1,53.4,12.6L53.4,12.6z"/>
<path class="st0" d="M31.7,0.7h-30C1.4,0.7,1.2,0.8,1,1C0.8,1.2,0.7,1.4,0.7,1.7v14.7c0,0.3,0.1,0.5,0.3,0.7
c0.2,0.2,0.4,0.3,0.7,0.3h30c0.3,0,0.5-0.1,0.7-0.3c0.2-0.2,0.3-0.4,0.3-0.7V1.7c0-0.3-0.1-0.5-0.3-0.7C32.2,0.8,31.9,0.7,31.7,0.7
L31.7,0.7z"/>
<path class="st21" d="M14,5.8l-2.8,6.6H9.4L8.1,7.1C8.1,7,8,6.9,7.9,6.8C7.9,6.7,7.8,6.6,7.7,6.5C7.1,6.3,6.6,6.1,6,6V5.8h2.9
c0.2,0,0.4,0.1,0.5,0.2c0.1,0.1,0.2,0.3,0.3,0.5l0.7,3.8l1.8-4.5H14z M21,10.2c0-1.7-2.4-1.8-2.4-2.6c0-0.2,0.2-0.5,0.7-0.5
c0.6-0.1,1.1,0,1.7,0.3L21.3,6c-0.5-0.2-1-0.3-1.6-0.3c-1.7,0-2.9,0.9-2.9,2.2c0,0.9,0.8,1.5,1.5,1.8c0.6,0.3,0.9,0.5,0.9,0.8
c0,0.4-0.5,0.6-1,0.6c-0.6,0-1.2-0.1-1.7-0.4l-0.3,1.4c0.6,0.2,1.2,0.4,1.9,0.3C19.9,12.5,21,11.6,21,10.2L21,10.2z M25.4,12.4H27
l-1.4-6.6h-1.4c-0.2,0-0.3,0-0.4,0.1c-0.1,0.1-0.2,0.2-0.3,0.4l-2.5,6.1h1.8l0.4-1h2.2L25.4,12.4z M23.5,10l0.9-2.5l0.5,2.5H23.5z
M16.4,5.8L15,12.4h-1.7l1.4-6.6H16.4z"/>
</svg>

After

Width:  |  Height:  |  Size: 24 KiB

28
theme_coffee_shop/static/src/images/thumbnail/s_process_steps.svg

@ -0,0 +1,28 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="82" height="60" viewBox="0 0 82 60">
<defs>
<rect id="path-1" width="31" height="1" x="11" y="5"/>
<filter id="filter-2" width="103.2%" height="300%" x="-1.6%" y="-50%" filterUnits="objectBoundingBox">
<feOffset dy="1" in="SourceAlpha" result="shadowOffsetOuter1"/>
<feComposite in="shadowOffsetOuter1" in2="SourceAlpha" operator="out" result="shadowOffsetOuter1"/>
<feColorMatrix in="shadowOffsetOuter1" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.0995137675 0"/>
</filter>
<linearGradient id="linearGradient-3" x1="0%" x2="100%" y1="0%" y2="100%">
<stop offset="0%" stop-color="#00A09D"/>
<stop offset="100%" stop-color="#00E2FF"/>
</linearGradient>
</defs>
<g fill="none" fill-rule="evenodd" class="snippets_thumbs">
<g class="s_process_steps">
<rect width="82" height="60" class="bg"/>
<g class="group" transform="translate(15 25)">
<g class="rectangle">
<use fill="#000" filter="url(#filter-2)" xlink:href="#path-1"/>
<use fill="#FFF" fill-opacity=".348" xlink:href="#path-1"/>
</g>
<circle cx="47.5" cy="5.5" r="5.5" fill="url(#linearGradient-3)" class="oval" opacity=".426"/>
<circle cx="5.5" cy="5.5" r="5.5" fill="#FFF" fill-opacity=".78" class="oval"/>
<circle cx="26.5" cy="5.5" r="5.5" fill="url(#linearGradient-3)" class="oval"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
theme_coffee_shop/static/src/images/thumbnail/theme_coffee.jpeg

Binary file not shown.

After

Width:  |  Height:  |  Size: 497 KiB

BIN
theme_coffee_shop/static/src/images/top-view-bowls-with-coffee-beans-powder.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

BIN
theme_coffee_shop/static/src/images/wishlist.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

36
theme_coffee_shop/views/about_us.xml

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- This XML defines a new page named "About" for the coffee shop theme -->
<record id="coffee_about_us" model="website.page">
<field name="name">About</field>
<field name="type">qweb</field>
<field name="key">theme_coffee_shop.coffee_about_us</field>
<field name="url">/about</field>
<field name="is_published">True</field>
<field name="arch" type="xml">
<t name="About" t-name="theme_coffee_shop.coffee_about_us">
<t t-call="website.layout">
<div id="wrap">
<section id="banner" class="banner-imgAbout">
<div class="container wrapper">
<div class="banner-content">
<div class="banner-text">
<p class="banner-head">More than</p>
<p class="banner-head">Just Coffee</p>
</div>
</div>
</div>
</section>
<div class="oe_structure"/>
<t t-snippet="website.s_company_team"
t-thumbnail="/website/static/src/img/snippets_thumbs/s_company_team.svg"/>
<div class="oe_structure"/>
<t t-snippet="website.s_references"
t-thumbnail="/website/static/src/img/snippets_thumbs/s_references.svg"/>
<div class="oe_structure"/>
</div>
</t>
</t>
</field>
</record>
</odoo>

116
theme_coffee_shop/views/cart_lines.xml

@ -0,0 +1,116 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- Template for Cart Lines-->
<template id="coffee_cart_lines" inherit_id="website_sale.cart_lines"
name="Coffee Cart Lines">
<xpath expr="//div[@id='cart_products']" position="replace">
<div class="table-responsive">
<table t-if="website_sale_order and website_sale_order.website_order_line"
class="mb16 table-striped table-sm js_cart_lines"
id="cart_products">
<t t-set="show_qty"
t-value="is_view_active('website_sale.product_quantity')"/>
<thead>
<tr>
<th class="td-img">Product</th>
<th/>
<th class="text-center td-qty">
<t t-if="show_qty">
Quantity
</t>
</th>
<th class="text-center td-price">Total</th>
<th class="text-center td-action"/>
</tr>
<tr class="height_30"/>
</thead>
<tbody>
<t t-foreach="website_sale_order.website_order_line"
t-as="line">
<tr t-att-class="'optional_product info' if line.linked_line_id else None"
class="cstm_tbl">
<td t-if="not line.product_id" colspan="2"
class='td-img cstm_tbl'/>
<t t-else="">
<td align="center"
class='td-img cstm_tbl image_td'>
<span t-if="line._is_not_sellable_line() and line.product_id.image_128">
<img t-att-src="image_data_uri(line.product_id.image_128)"
class="sample"
t-att-alt="line.name_short"/>
</span>
<span t-else=""
t-field="line.product_id.image_128"
t-options="{'widget': 'image', 'qweb_img_responsive': False, 'class': 'sample'}"/>
</td>
<td class='td-product_name cstm_tbl'>
<div>
<t t-call="website_sale.cart_line_product_link">
<p class="item-name">
<strong t-field="line.name_short"/>
</p>
</t>
</div>
<p class="item-about">
<t t-esc="line.product_id.categ_id.name"/>
</p>
</td>
</t>
<td class="text-center td-qty cstm_tbl">
<div class="css_quantity input-group mx-auto justify-content-center"
name="website_sale_cart_line_quantity">
<t t-if="not line._is_not_sellable_line()">
<t t-if="show_qty">
<div class="counter">
<div class="box-container">
<a t-attf-href="#"
class="btn btn-link js_add_cart_json d-none d-md-inline-block border_link"
aria-label="Remove one"
title="Remove one">
<i class="fa fa-minus"/>
</a>
<input type="text"
class="js_quantity form-control quantity"
t-att-data-line-id="line.id"
t-att-data-product-id="line.product_id.id"
t-att-value="int(line.product_uom_qty) == line.product_uom_qty and int(line.product_uom_qty) or line.product_uom_qty"/>
<a t-attf-href="#"
class="btn btn-link float_left js_add_cart_json d-none d-md-inline-block border_link"
aria-label="Add one"
title="Add one">
<i class="fa fa-plus"/>
</a>
</div>
</div>
</t>
<t t-else="">
<input type="hidden"
class="js_quantity form-control quantity"
t-att-data-line-id="line.id"
t-att-data-product-id="line.product_id.id"
t-att-value="int(line.product_uom_qty) == line.product_uom_qty and int(line.product_uom_qty) or line.product_uom_qty"/>
</t>
</t>
<t t-else="">
<span class="text-muted w-100"
t-esc="int(line.product_uom_qty)"/>
<input type="hidden"
class="js_quantity form-control quantity"
t-att-data-line-id="line.id"
t-att-data-product-id="line.product_id.id"
t-att-value="line.product_uom_qty"/>
</t>
</div>
</td>
<td class="cstm_tbl" align="center">
<t t-esc="website_sale_order.currency_id.symbol"/>
<t t-esc="line.price_subtotal"/>
</td>
</tr>
</t>
</tbody>
</table>
</div>
</xpath>
</template>
</odoo>

220
theme_coffee_shop/views/contact_us.xml

@ -0,0 +1,220 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- This XML template customizes the appearance of the Contact Us page in the website -->
<template id="coffee_shop_contact_us" name="Coffee Shop Contact Us"
inherit_id="website.contactus">
<xpath expr="//div[@id='wrap']" position="replace">
<section id="banner" class="banner-imgContact">
<div class="container wrapper ">
<div class="banner-content">
<div class="banner-text">
<p class="banner-head">Hello!</p>
<p class="banner-head">Lets talk</p>
</div>
</div>
</div>
</section>
<section id="contact" class="container wrapper">
<span class="contact-heading">Contact</span>
<div class="contact-container">
<div class="get-intouch-left">
<p class="getin-text">Get in Touch with Expresso</p>
<div class="getin-img">
<img src="/theme_coffee_shop/static/src/images/coffee-contact.png"
alt=""/>
</div>
</div>
<div class="get-intouch-right">
<section class="s_website_form"
data-vcss="001"
data-snippet="s_website_form">
<div class="container">
<form id="contactus_form"
action="/website/form/"
method="post"
enctype="multipart/form-data"
class="o_mark_required"
data-mark="*"
data-model_name="mail.mail"
data-success-mode="redirect"
data-success-page="/contactus-thank-you"
data-pre-fill="true">
<div class="s_website_form_rows row s_col_no_bgcolor">
<div class="mb-0 py-2 col-12 s_website_form_field s_website_form_custom s_website_form_required"
data-type="char"
data-name="Field">
<div class="row s_col_no_resize s_col_no_bgcolor">
<label class="col-form-label width_200 col-sm-auto s_website_form_label"
for="contact1">
<span class="s_website_form_label_content">
Name
</span>
<span class="s_website_form_mark">
*
</span>
</label>
<div class="col-sm">
<input id="contact1"
type="text"
class="form-control s_website_form_input forms-input"
name="name"
required=""
data-fill-with="name"/>
</div>
</div>
</div>
<div class="mb-0 py-2 col-12 s_website_form_field s_website_form_custom"
data-type="char"
data-name="Field">
<div class="row s_col_no_resize s_col_no_bgcolor">
<label class="col-form-label width_200 col-sm-auto s_website_form_label"
for="contact2">
<span class="s_website_form_label_content">
Phone
Number
</span>
</label>
<div class="col-sm">
<input id="contact2"
type="tel"
class="form-control s_website_form_input forms-input"
name="phone"
data-fill-with="phone"/>
</div>
</div>
</div>
<div class="mb-0 py-2 col-12 s_website_form_field s_website_form_required"
data-type="email"
data-name="Field">
<div class="row s_col_no_resize s_col_no_bgcolor">
<label class="col-form-label width_200 col-sm-auto s_website_form_label"
for="contact3">
<span class="s_website_form_label_content">
Email
</span>
<span class="s_website_form_mark">
*
</span>
</label>
<div class="col-sm">
<input id="contact3"
type="email"
class="form-control s_website_form_input forms-input"
name="email_from"
required=""
data-fill-with="email"/>
</div>
</div>
</div>
<div class="mb-0 py-2 col-12 s_website_form_field s_website_form_custom"
data-type="char"
data-name="Field">
<div class="row s_col_no_resize s_col_no_bgcolor">
<label class="col-form-label width_200 col-sm-auto s_website_form_label"
for="contact4">
<span class="s_website_form_label_content">
Company
</span>
</label>
<div class="col-sm">
<input id="contact4"
type="text"
class="form-control s_website_form_input forms-input"
name="company"
data-fill-with="commercial_company_name"/>
</div>
</div>
</div>
<div class="mb-0 py-2 col-12 s_website_form_field s_website_form_required"
data-type="char"
data-name="Field">
<div class="row s_col_no_resize s_col_no_bgcolor">
<label class="col-form-label width_200 col-sm-auto s_website_form_label"
for="contact5">
<span class="s_website_form_label_content">
Subject
</span>
<span class="s_website_form_mark">
*
</span>
</label>
<div class="col-sm">
<input id="contact5"
type="text"
class="form-control s_website_form_input forms-input"
name="subject"
required=""/>
</div>
</div>
</div>
<div class="mb-0 py-2 col-12 s_website_form_field s_website_form_custom s_website_form_required"
data-type="text"
data-name="Field">
<div class="row s_col_no_resize s_col_no_bgcolor">
<label class="col-form-label width_200 col-sm-auto s_website_form_label"
for="contact6">
<span class="s_website_form_label_content">
Question
</span>
<span class="s_website_form_mark">
*
</span>
</label>
<div class="col-sm">
<textarea
id="contact6"
class="form-control s_website_form_input forms-input"
name="description"
required=""/>
</div>
</div>
</div>
<div class="mb-0 py-2 col-12 s_website_form_field s_website_form_dnone">
<div class="row s_col_no_resize s_col_no_bgcolor">
<label class="col-form-label width_200 col-sm-auto s_website_form_label"
for="contact7">
<span class="s_website_form_label_content">
Email
To
</span>
</label>
<div class="col-sm">
<input id="contact7"
type="hidden"
class="form-control s_website_form_input"
name="email_to"/>
</div>
</div>
</div>
<div class="getin-footer mb-0 py-2 col-12 s_website_form_submit"
data-name="Submit Button">
<p class="getin-promise">*We
promise not to disclose your
personal
information to third parties.
</p>
<a class="send-btn btn btn-primary btn-lg s_website_form_send"
href="#"
role="button">Send
</a>
<span id="s_website_form_result"/>
</div>
</div>
</form>
</div>
</section>
</div>
</div>
</section>
<section id="map" class="container wrapper">
<div class="map-container">
<iframe title="Calicut" loading="lazy" width="100%"
height="350" id="gmap_canvas"
src="https://maps.google.com/maps?q=Cybrosys%20Technologies%20Pvt.%20Ltd.%20Neospace%2C%20Kinfra%20Techno%20Park%2C%20Kakkancherry&amp;t=&amp;z=7&amp;ie=UTF8&amp;iwloc=&amp;output=embed"
frameborder="0" scrolling="no" marginheight="0"
marginwidth="0"/>
</div>
</section>
</xpath>
</template>
</odoo>

45
theme_coffee_shop/views/feature.xml

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- This XML record defines a custom QWeb view for the "Feature" section of the website -->
<record id="coffee_feature" model="ir.ui.view">
<field name="name">Feature</field>
<field name="type">qweb</field>
<field name="key">theme_coffee_shop.coffee_feature</field>
<field name="arch" type="xml">
<t name="Feature" t-name="theme_coffee_shop.feature">
<t t-call="website.layout">
<div id="wrap">
<section id="banner" class="banner-imgFeature">
<div class="container wrapper ">
<div class="banner-content">
<div class="banner-text">
<p class="banner-head">Our awesome</p>
<p class="banner-head">Premium
Features
</p>
</div>
</div>
</div>
</section>
<div class="oe_structure"/>
<t t-snippet="website.s_process_steps"
t-thumbnail="/theme_coffee_shop/static/src/images/thumbnail/s_process_steps.svg"/>
<div class="oe_structure"/>
<t t-snippet="website.s_image_text"
t-thumbnail="/website/static/src/img/snippets_thumbs/s_image_text.svg"/>
<div class="oe_structure"/>
<t t-snippet="website.s_features" string="Features"
t-thumbnail="/website/static/src/img/snippets_thumbs/s_features.svg"/>
<div class="oe_structure"/>
</div>
</t>
</t>
</field>
</record>
<record id="feature" model="website.page">
<field name="is_published">True</field>
<field name="url">/feature</field>
<field name="view_id" ref="coffee_feature"/>
<field name="track">True</field>
</record>
</odoo>

108
theme_coffee_shop/views/footer.xml

@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- Footer-->
<template id="theme_coffee_shop_footer" inherit_id="website.layout"
name="Coffee Shop Footer">
<xpath expr="//div[@id='footer']" position="replace">
<footer id="footer">
<div class="container wrapper">
<div class="row footer-content">
<div class="col foot lg-foot">
<div class="footer-log">
<img src="/theme_coffee_shop/static/src/images/1.png"
alt=""/>
<p class="footer-head">Made by
<br/>
<span class="company-name">Cybrosys
Technologies
</span>
</p>
</div>
<p class="footer-para">Lorem ipsum dolor sit amet,
consectetur
adipiscing elit, sed do eiusmod tempor fiter
incididunt ut labore et dolore magna aliqua.
Ut enim ad minim veniam, quis nostrud
exercitation ullamco laboris nisi ut aliquip
ea commodo consequat.
</p>
</div>
<div class="col foot ">
<p class="footer-heading">Location</p>
<div class="address">
<p class="footer-subhead">New York</p>
<p class="foot-address">1 444 123 4559
<br/>
Raymond Boulevard 224, New York
<br/>
Info@Expresso.com
<br/>
213 548 698
</p>
</div>
<div class="address">
<p class="footer-subhead">Florida</p>
<p class="foot-address">
2606 Saints AlleyTampa,
<br/>
FL 33602
<br/>
Info@Expresso.com
<br/>
213 548 698
</p>
</div>
</div>
<div class="col foot">
<p class="footer-heading">Home</p>
<div class="link">
<a class="foot-links" href="/menu">Menu</a>
<a class="foot-links" href="/shop">Shop</a>
<a class="foot-links" href="/about">About</a>
<a class="foot-links" href="/contactus">
Contact
</a>
<a class="foot-links" href="/web/login">Login
</a>
</div>
</div>
<div class="col foot">
<p class="footer-heading">Get in touch</p>
<div class="social-links">
<div class="media-link">
<a href="#">
<img src="/theme_coffee_shop/static/src/images/1.svg"
alt=""/>
</a>
<p class="foot-address">Instagram</p>
</div>
<div class="media-link">
<a href="#">
<img src="/theme_coffee_shop/static/src/images/3.svg"
alt=""/>
</a>
<p class="foot-address">Whatsapp</p>
</div>
<div class="media-link">
<a href="#">
<img src="/theme_coffee_shop/static/src/images/2.svg"
alt=""/>
</a>
<p class="foot-address">facebook</p>
</div>
<div class="media-link">
<a href="#">
<img src="/theme_coffee_shop/static/src/images/4.svg"
alt=""/>
</a>
<p class="foot-address">Twitter</p>
</div>
</div>
</div>
</div>
<p class="foot-end">© Cybrosys technologies 2024</p>
</div>
</footer>
</xpath>
</template>
</odoo>

21
theme_coffee_shop/views/header.xml

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<!-- Navbar -->
<template id="coffee_shop_header" inherit_id="website.template_header_default">
<xpath expr="//t[@t-call='website.placeholder_header_text_element']" position="replace"/>
<xpath expr="//t[@t-call='website.placeholder_header_brand']" position="replace">
<div class="logo">
<img src="/theme_coffee_shop/static/src/images/logo.png" alt=""/>
</div>
</xpath>
<xpath expr="//t[@t-call='website.placeholder_header_call_to_action']" position="replace"/>
</template>
<template id="coffee_shop_mobile_header" inherit_id="website.template_header_mobile">
<xpath expr="//t[@t-call='website.placeholder_header_brand']" position="replace">
<div class="logo">
<img src="/theme_coffee_shop/static/src/images/logo.png" alt=""/>
</div>
</xpath>
</template>
</odoo>

289
theme_coffee_shop/views/menu_page.xml

@ -0,0 +1,289 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- This XML record defines a custom website page for the "Menu" section -->
<record id="coffee_menu" model="website.page">
<field name="name">Menu</field>
<field name="type">qweb</field>
<field name="key">theme_coffee_shop.coffee_menu</field>
<field name="url">/menu</field>
<field name="is_published">True</field>
<field name="arch" type="xml">
<t name="Menu" t-name="theme_coffee_shop.coffee_menu">
<t t-call="website.layout">
<t t-set="opt_wsale_categories_top"
t-value="is_view_active('website_sale.products_categories_top')"/>
<div id="wrap">
<section id="banner" class="banner-img">
<div class="container wrapper ">
<div class="banner-content">
<div class="banner-text">
<p class="banner-head">Better Beans</p>
<p class="banner-head">Better Coffee
</p>
</div>
</div>
</div>
</section>
<div class="oe_structure oe_empty oe_structure_not_nearest"/>
<div class="container oe_website_sale pt-2">
<div class="row o_wsale_products_main_row align-items-start flex-nowrap">
<div id="products_grid">
<t t-call="theme_coffee_shop.coffee_products_breadcrumb">
<t t-set="_classes"
t-valuef="d-none d-lg-flex w-100 p-0 small"/>
</t>
<div class="products_header btn-toolbar flex-nowrap align-items-center justify-content-between mb-3">
<t t-call="theme_coffee_shop.coffee_menu_category"/>
<div t-if="category"
class="d-flex align-items-center d-lg-none me-auto">
<t t-if="not category.parent_id"
t-set="backUrl"
t-valuef="/menu"/>
<t t-else="" t-set="backUrl"
t-value="keep('/menu/category/' + slug(category.parent_id), category=0)"/>
<a t-attf-class="btn btn-{{navClass}} me-2"
t-att-href="category.parent_id and keep('/menu/category/' + slug(category.parent_id), category=0) or '/menu'">
<i class="fa fa-angle-left"/>
</a>
<h4 t-out="category.name"
class="mb-0 me-auto"/>
</div>
<button t-if="opt_wsale_categories"
t-attf-class="btn btn-{{navClass}} position-relative ms-3 {{not opt_wsale_attributes_top and 'd-lg-none'}}"
data-bs-toggle="offcanvas"
data-bs-target="#o_wsale_offcanvas">
<i class="fa fa-sliders"/>
<span t-if="isFilteringByPrice or attrib_set"
t-attf-class="position-absolute top-0 start-100 translate-middle badge border border-{{navClass}} rounded-circle bg-danger p-1">
<span class="visually-hidden">
filters active
</span>
</span>
</button>
</div>
<div t-if="original_search and products"
class="alert alert-warning mt8">
No results found for '<span
t-esc="original_search"/>'. Showing
results for '<span t-esc="search"/>'.
</div>
<t t-if="category">
<t t-set='editor_msg'>Drag building
blocks here to customize the header
for "<t t-esc='category.name'/>"
category.
</t>
<div class="mb16" id="category_header"
t-att-data-editor-message="editor_msg"
t-field="category.website_description"/>
</t>
<div t-cache="pricelist,products"
t-if="products"
class="o_wsale_products_grid_table_wrapper pt-3 pt-lg-0">
<table class="table table-borderless h-100 m-0"
t-att-data-ppg="ppg"
t-att-data-ppr="ppr"
t-att-data-default-sort="website.shop_default_sort"
t-att-data-name="grid_block_name">
<colgroup t-ignore="true">
<col t-foreach="ppr" t-as="p"/>
</colgroup>
<tbody>
<tr t-foreach="bins"
t-as="tr_product">
<t t-foreach="tr_product"
t-as="td_product">
<t t-if="td_product">
<td t-att-colspan="td_product['x'] != 1 and td_product['x']"
t-att-rowspan="td_product['y'] != 1 and td_product['y']"
t-attf-class="oe_product"
t-att-data-ribbon-id="td_product['ribbon'].id"
t-att-data-name="product_block_name">
<div t-attf-class="o_wsale_product_grid_wrapper position-relative h-100 o_wsale_product_grid_wrapper_#{td_product['x']}_#{td_product['y']}">
<t t-call="theme_coffee_shop.menu_products_item">
<t t-set="product"
t-value="td_product['product']"/>
</t>
</div>
</td>
</t>
<td t-else=""/>
</t>
</tr>
</tbody>
</table>
</div>
<div t-else=""
class="text-center text-muted mt128 mb256">
<t t-if="not search">
<h3 class="mt8">No product defined
</h3>
<p t-if="category">No product
defined in category "
<strong
t-esc="category.display_name"/>
".
</p>
</t>
<t t-else="">
<h3 class="mt8">No results</h3>
<p>No results for "<strong
t-esc='search'/>"
<t t-if="category">in category
"
<strong t-esc="category.display_name"/>
"
</t>
.
</p>
</t>
<p t-ignore="true"
groups="sales_team.group_sale_manager">
Click <i>'New'</i> in the top-right
corner to create your first
product.
</p>
</div>
<div class="products_pager d-flex justify-content-center pt-5 pb-3">
<t t-call="website.pager"/>
</div>
</div>
</div>
<t t-call="website_sale.o_wsale_offcanvas"/>
</div>
<div class="oe_structure oe_empty oe_structure_not_nearest"/>
</div>
</t>
</t>
</field>
</record>
<!-- This XML template defines the breadcrumb for product categories in the "Menu" section -->
<template id="theme_coffee_shop.coffee_products_breadcrumb"
name=" Coffee Products Breadcrumb">
<ol t-if="category" t-attf-class="breadcrumb #{_classes}">
<li class="breadcrumb-item">
<a t-attf-href="/menu">Products</a>
</li>
<t t-foreach="category.parents_and_self" t-as="cat">
<li t-if="cat == category" class="breadcrumb-item">
<span class="d-inline-block" t-field="cat.name"/>
</li>
<li t-else="" class="breadcrumb-item">
<a t-att-href="keep('/menu/category/%s' % slug(cat), category=0)"
t-field="cat.name"/>
</li>
</t>
</ol>
</template>
<!-- This XML template defines the display of menu categories in the "Menu" section -->
<template id="theme_coffee_shop.coffee_menu_category"
name="Coffee Menu Categories">
<t t-if="category.id">
<t t-set="entries"
t-value="not search and category.child_id or category.child_id.filtered(lambda c: category.id in search_categories_ids)"/>
</t>
<t t-else="">
<t t-set="entries" t-value="categories"/>
</t>
<div t-if="entries"
class="o_wsale_filmstip_container d-flex align-items-stretch mb-2 overflow-hidden">
<div class="o_wsale_filmstip_wrapper pb-1 mb-2 overflow-auto">
<ul class="o_wsale_filmstip d-flex align-items-stretch mb-0 list-unstyled overflow-visible">
<t t-foreach="entries" t-as="c" t-if="c.image_128"
t-set="atLeastOneImage" t-value="True"/>
<t t-foreach="entries" t-as="c">
<a t-attf-class="d-flex {{'pe-3' if not c_last else ''}} btn filter-box"
t-att-href="keep('/menu/category/%s' % slug(c), category=0)">
<div t-attf-class="btn btn-{{navClass}} d-flex align-items-center {{'ps-2 pe-3' if c.image_128 else 'px-4'}} fs-6 fw-normal filter-text">
<span t-field="c.name"/>
</div>
</a>
</t>
</ul>
</div>
</div>
</template>
<template id="theme_coffee_shop.menu_products_item"
name="Menu Products item">
<form action="/shop/cart/update" method="post"
class="oe_product_cart h-100 d-flex"
t-att-data-publish="product.website_published and 'on' or 'off'"
itemscope="itemscope" itemtype="http://schema.org/Product">
<t t-set="product_href"
t-value="(keep(product.website_url or '', page=(pager['page']['num'] if pager['page']['num']>1 else None)) or '') + (selected_attributes_hash or '')"/>
<t t-set="image_type"
t-value="product._get_suitable_image_size(ppr, td_product['x'], td_product['y'])"/>
<div class="oe_product_image position-relative h-100 flex-grow-0 overflow-hidden">
<input type="hidden" name="csrf_token"
t-att-value="request.csrf_token()"
t-nocache="The csrf token must always be up to date."/>
<a t-att-href="product_href"
class="oe_product_image_link d-block h-100 position-relative"
itemprop="url" contenteditable="false">
<t t-set="image_holder"
t-value="product._get_image_holder()"/>
<span t-field="image_holder.image_1920"
t-options="{'widget': 'image', 'preview_image': image_type, 'itemprop': 'image', 'class': 'h-100 w-100 position-absolute'}"
class="oe_product_image_img_wrapper d-flex h-100 justify-content-center align-items-center position-absolute"/>
<!-- Safely check if ribbon exists before accessing attributes -->
<t t-set="bg_color"
t-value="td_product['ribbon'] and getattr(td_product['ribbon'], 'bg_color', '') or ''"/>
<t t-set="text_color"
t-value="td_product['ribbon'] and getattr(td_product['ribbon'], 'text_color', '') or ''"/>
<t t-set="bg_class"
t-value="td_product['ribbon'] and getattr(td_product['ribbon'], 'html_class', '') or ''"/>
<span t-attf-class="o_ribbon o_not_editable #{bg_class}"
t-attf-style="#{text_color and ('color: %s; ' % text_color)}#{bg_color and 'background-color:' + bg_color}"
t-out="td_product['ribbon'] and getattr(td_product['ribbon'], 'html', '') or ''"/>
</a>
</div>
<div class="o_wsale_product_information position-relative d-flex flex-column flex-grow-1 flex-shrink-1">
<div class="o_wsale_product_information_text flex-grow-1">
<h6 class="o_wsale_products_item_title mb-2">
<a class="text-primary text-decoration-none"
itemprop="name" t-att-href="product_href"
t-att-content="product.name" t-field="product.name"/>
<a t-if="not product.website_published" role="button"
t-att-href="product_href"
class="btn btn-sm btn-danger"
title="This product is unpublished.">
Unpublished
</a>
</h6>
</div>
<div class="o_wsale_product_sub d-flex justify-content-between align-items-end pb-1">
<t t-set="template_price_vals"
t-value="get_product_prices(product)"/>
<div class="o_wsale_product_btn"/>
<div class="product_price" itemprop="offers"
itemscope="itemscope"
itemtype="http://schema.org/Offer">
<t t-if="'base_price' in template_price_vals and (template_price_vals['base_price'] &gt; template_price_vals['price_reduce']) and (template_price_vals['price_reduce'] or not website.prevent_zero_price_sale)">
<del t-attf-class="text-muted me-1 h6 mb-0"
style="white-space: nowrap;">
<em class="small"
t-esc="template_price_vals['base_price']"
t-options="{'widget': 'monetary', 'display_currency': website.currency_id}"/>
</del>
</t>
<span class="h6 mb-0"
t-if="template_price_vals['price_reduce'] or not website.prevent_zero_price_sale"
t-esc="template_price_vals['price_reduce']"
t-options="{'widget': 'monetary', 'display_currency': website.currency_id}"/>
<span class="h6 mb-0" t-else=""
t-field="website.prevent_zero_price_sale_text"/>
<span itemprop="price" style="display:none;"
t-esc="template_price_vals['price_reduce']"/>
<span itemprop="priceCurrency" style="display:none;"
t-esc="website.currency_id.name"/>
</div>
</div>
</div>
</form>
</template>
</odoo>

58
theme_coffee_shop/views/shop.xml

@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- Template for customizing the appearance of product listings -->
<template id="coffee_shop_products" inherit_id="website_sale.products"
name="Coffee Shop Products" active="True">
<xpath expr="//div[@id='wrap']" position="before">
<section id="banner" class="banner-imgShop">
<div class="container wrapper ">
<div class="banner-content">
<div class="banner-text">
<p class="banner-head">A few clicks</p>
<p class="banner-head">is all it takes</p>
</div>
</div>
</div>
</section>
</xpath>
</template>
<!-- Template for customizing individual product items -->
<template id="products_item_coffee" name="Products item Coffee"
inherit_id="website_sale.products_item">
<xpath expr="//div[hasclass('o_wsale_product_information_text')]"
position="after">
<div id="rating_coffee">
<t t-if="is_view_active('website_sale.product_comment')">
<t t-if="product.rating_avg > 1">
<i class="fa fa-star star" role="img"/>
</t>
<t t-else="">
<i class="fa fa-star-o star" role="img"/>
</t>
<small class="text-muted ms-1">
<t t-esc="product.rating_avg"/>
(
<t t-esc="product.rating_count"/>
Review)
</small>
</t>
</div>
</xpath>
</template>
<!-- Template for customizing the "Add to Cart" button -->
<template id="coffee_buy" inherit_id="website_sale.products_add_to_cart"
name="Coffee Buy">
<xpath expr="//a" position="attributes">
<attribute name="class" add="add_buy" separator=" "/>
</xpath>
</template>
<!-- Template for customizing the wishlist button-->
<template id="coffee_wishlist"
inherit_id="website_sale_wishlist.add_to_wishlist">
<xpath expr="//button[hasclass('o_add_wishlist')]"
position="attributes">
<attribute name="class" add="btn-primary"
remove="btn-outline-primary" separator=" "/>
</xpath>
</template>
</odoo>
Loading…
Cancel
Save