@ -0,0 +1,49 @@ |
|||
.. image:: https://img.shields.io/badge/license-LGPL--3-green.svg |
|||
:target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html |
|||
:alt: License: LGPL-3 |
|||
|
|||
Theme Splash |
|||
============ |
|||
* Design Web Pages with Theme Splash |
|||
|
|||
Configuration |
|||
============ |
|||
- www.odoo.com/documentation/18.0/administration/on_premise.html |
|||
- Install our custom addon |
|||
|
|||
Company |
|||
------- |
|||
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__ |
|||
|
|||
License |
|||
------- |
|||
General Public License, Version 3 (LGPL v3). |
|||
(https://www.gnu.org/licenses/lgpl-3.0-standalone.html) |
|||
|
|||
Credits |
|||
------- |
|||
* Developers: (V18) Adarsh K, |
|||
(V17) Sruthi M, |
|||
* 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 |
|||
-------- |
|||
This module is maintained by Cybrosys Technologies. |
|||
|
|||
For support and more information, please visit https://www.cybrosys.com |
|||
|
|||
.. image:: https://cybrosys.com/images/logo.png |
|||
:target: https://cybrosys.com" |
|||
|
|||
Further information |
|||
=================== |
|||
HTML Description: `<static/description/index.html>`__ |
@ -0,0 +1,22 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from . import controllers |
@ -0,0 +1,76 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
{ |
|||
'name': 'Theme Splash', |
|||
'version': '18.0.1.0.0', |
|||
'category': 'Theme/Corporate', |
|||
'summary': 'Design Web Pages with Theme Splash', |
|||
'description': 'Theme Splash is an attractive and unique front-end theme ' |
|||
'mainly suitable for eCommerce website. Many custom ' |
|||
'designed snippets facilitates to add better user experience' |
|||
'Contains best deals with new arrival products slider, ' |
|||
'testimonial slider that are configured from the backend. ' |
|||
'This theme fully customized the eCommerce website, ' |
|||
'shop view, custom categories view, product view,' |
|||
' contact us page...etc. it contains price filter ' |
|||
'and clear cart options by default.', |
|||
'author': 'Cybrosys Techno Solutions', |
|||
'company': 'Cybrosys Techno Solutions', |
|||
'maintainer': 'Cybrosys Techno Solutions', |
|||
'website': "https://www.cybrosys.com", |
|||
'depends': ['base', 'website_sale_wishlist', 'website_blog', 'website_mass_mailing'], |
|||
'data': [ |
|||
'views/contact_us_templates.xml', |
|||
'views/website_layout_templates.xml', |
|||
'views/shop_templates.xml', |
|||
'views/blog_templates.xml', |
|||
'views/snippets/website_snippets_templates.xml', |
|||
'views/snippets/about.xml', |
|||
'views/snippets/service.xml', |
|||
'views/snippets/index/index_banner.xml', |
|||
'views/snippets/index/index_about.xml', |
|||
'views/snippets/index/index_tab_section.xml', |
|||
'views/snippets/index/index_about_section.xml', |
|||
'views/snippets/index/index_service.xml', |
|||
'views/snippets/index/index_expect_tab.xml', |
|||
'views/snippets/index/index_commercial_service.xml', |
|||
'views/snippets/index/index_testmonial.xml', |
|||
'views/snippets/index/index_blog.xml', |
|||
'views/snippets/index/index_partner.xml' |
|||
], |
|||
'assets': { |
|||
'web.assets_frontend': [ |
|||
'https://use.fontawesome.com/releases/v5.7.0/css/all.css', |
|||
'/theme_splash/static/src/css/style.css', |
|||
'/theme_splash/static/src/js/custom.js', |
|||
'/theme_splash/static/src/css/font-awesome.min.css', |
|||
] |
|||
}, |
|||
'images': [ |
|||
'static/description/banner.jpg', |
|||
'static/description/theme_screenshot.jpg' |
|||
], |
|||
'license': 'LGPL-3', |
|||
'installable': True, |
|||
'auto_install': False, |
|||
'application': False, |
|||
} |
@ -0,0 +1,22 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from . import theme_splash |
@ -0,0 +1,80 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import fields, http |
|||
from odoo.addons.website_blog.controllers.main import WebsiteBlog |
|||
from odoo.http import request |
|||
from odoo.osv import expression |
|||
|
|||
|
|||
class WebsiteBlogInherit(WebsiteBlog): |
|||
"""Overrides the blog() and blog_post() methods to add recent posts to |
|||
their respective contexts.It also sets limits and orders for the posts |
|||
displayed on the blog and blog post pages.""" |
|||
|
|||
@http.route() |
|||
def blog(self, blog=None, tag=None, search=None, **opt): |
|||
"""It fetches recent blog posts that are published on the website and |
|||
updates the context of the blog page with the recent posts.""" |
|||
posts = request.env['blog.post'].search(expression.AND([ |
|||
[('website_published', '=', True), |
|||
('post_date', '<=', fields.Datetime.now())], |
|||
request.website.website_domain() |
|||
]), limit=3, order='published_date desc') |
|||
res = super().blog(blog=blog, tag=tag, page=1, search=search, **opt) |
|||
res.qcontext.update({'posts_recent': posts}) |
|||
return res |
|||
|
|||
@http.route() |
|||
def blog_post(self, blog, blog_post, tag_id=None, **post): |
|||
"""It adds a context variable 'posts_recent', which contains a list of |
|||
recent blog posts (limited to 3) to be displayed on the blog |
|||
post page.""" |
|||
posts = request.env['blog.post'].search(expression.AND([ |
|||
[('website_published', '=', True), |
|||
('post_date', '<=', fields.Datetime.now())], |
|||
request.website.website_domain() |
|||
]), limit=3, order='published_date desc') |
|||
res = super().blog_post(blog, blog_post, tag_id=tag_id, page=1, |
|||
enable_editor=None, **post) |
|||
res.qcontext.update({'posts_recent': posts}) |
|||
return res |
|||
|
|||
@http.route('/subscribe_newsletter', auth='public', type='json') |
|||
def subscribe_newsletter(self, **kw): |
|||
""" To save email to newsletter mail list """ |
|||
if request.env['mailing.contact'].sudo().search([ |
|||
("email", "=", kw.get("email")), |
|||
("list_ids", "in", [ |
|||
request.env.ref('mass_mailing.mailing_list_data').id])]): |
|||
return False |
|||
if request.env.user._is_public(): |
|||
visitor_sudo = (request.env['website.visitor'].sudo() |
|||
._get_visitor_from_request()) |
|||
name = visitor_sudo.display_name if visitor_sudo else "Website Visitor" |
|||
else: |
|||
name = request.env.user.partner_id.name |
|||
request.env['mailing.contact'].sudo().create({ |
|||
"name": name, |
|||
"email": kw.get('email'), |
|||
"list_ids": [request.env.ref('mass_mailing.mailing_list_data').id] |
|||
}) |
|||
return True |
@ -0,0 +1,7 @@ |
|||
## Module <theme_splash> |
|||
|
|||
#### 02.01.2025 |
|||
#### Version 18.0.1.0.0 |
|||
#### ADD |
|||
- Initial commit for Theme Splash |
|||
|
After Width: | Height: | Size: 177 KiB |
After Width: | Height: | Size: 8.7 KiB |
After Width: | Height: | Size: 71 KiB |
After Width: | Height: | Size: 76 KiB |
After Width: | Height: | Size: 84 KiB |
After Width: | Height: | Size: 57 KiB |
After Width: | Height: | Size: 70 KiB |
After Width: | Height: | Size: 766 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 2.2 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 929 B |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 87 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 368 KiB |
After Width: | Height: | Size: 189 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 84 KiB |
After Width: | Height: | Size: 885 B |
@ -0,0 +1,787 @@ |
|||
<!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="./banner.jpg" 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: #999; |
|||
text-align: center; |
|||
font-size: 15.625px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 25.6px;">info includes 300+ elements that you may need to create website without |
|||
external plugins.</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;">A striking frontend theme</a></h4> |
|||
|
|||
<p style=" font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;">Theme Splash : A striking frontend theme tailored for eCommerce.</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;">Custom-designed snippets</a></h4> |
|||
|
|||
<p style="font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;">Custom-designed snippets enhance user experience.</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;">Features dynamic elements</a></h4> |
|||
|
|||
<p style="font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;">Features dynamic elements like product sliders and testimonials.</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;">Modified Structure</a></h4> |
|||
|
|||
<p style="font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;">Modified Structure for All Type 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;">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;width:1900px;"> |
|||
<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;">Home Page</h3> |
|||
<p class="des" style="color: #c7c7c7; |
|||
font-size: 16px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
margin-bottom: 0;">It is easy to customize and use. Just drag and drop the building |
|||
blocks to make attractive webpages.Customizable building blocks in home page design helps you |
|||
to edit them as per needs.</p> |
|||
|
|||
</div> |
|||
<div class="mt-5"> |
|||
<img src="./img/1.jpg" alt="Grid item" class="img-fluid"> |
|||
</div> |
|||
<a href="#" target="_blank" class="url_link" name="grid_popup" |
|||
aria-label="Url link label"><span></span></a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- --> |
|||
|
|||
<!--row-2 --> |
|||
|
|||
<div class="row" style="margin-bottom: 24px;"> |
|||
<div class="col-md-6"> |
|||
<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;">Blog</h3> |
|||
<p class="des" style="color: #c7c7c7; |
|||
font-size: 16px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
margin-bottom: 0;">It is easy to customize and use. Just drag and drop the building |
|||
blocks to make attractive webpages.</p> |
|||
|
|||
</div> |
|||
<div class="mt-5"> |
|||
<img src="./img/2.jpg" alt="Grid item" class="img-fluid"> |
|||
</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-6"> |
|||
<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;">Overview</h3> |
|||
<p class="des" style="color: #c7c7c7; |
|||
font-size: 16px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
margin-bottom: 0;">It is easy to customize and use. Just drag and drop the building |
|||
blocks to make attractive webpages.</p> |
|||
|
|||
</div> |
|||
<div class="mt-5"> |
|||
<img src="./img/3.jpg" alt="Grid item" class="img-fluid"> |
|||
</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: 24px;"> |
|||
<div class="col-md-6"> |
|||
<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;">Services</h3> |
|||
<p class="des" style="color: #c7c7c7; |
|||
font-size: 16px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
margin-bottom: 0;">It is easy to customize and use. Just drag and drop the building blocks |
|||
to make attractive webpages.</p> |
|||
|
|||
</div> |
|||
<div class="mt-5"> |
|||
<img src="./img/4.jpg" alt="Grid item" class="img-fluid"> |
|||
</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-6"> |
|||
<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;">About</h3> |
|||
<p class="des" style="color: #c7c7c7; |
|||
font-size: 16px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
margin-bottom: 0;">It is easy to customize and use. Just drag and drop the building blocks |
|||
to make attractive webpages. </p> |
|||
|
|||
</div> |
|||
<div class="mt-5"> |
|||
<img src="./img/5.png" alt="Grid item" class="img-fluid"> |
|||
</div> |
|||
<a href="#" target="_blank" class="url_link" name="grid_popup" |
|||
aria-label="Url link label"><span></span></a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- --> |
|||
|
|||
<!--row-4 --> |
|||
|
|||
<div class="row" style="margin-bottom: 20px;"> |
|||
<div class="col-md-8"> |
|||
<div style="border-radius: 10px; padding: 32px;width:1255px; |
|||
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;">Contact</h3> |
|||
<p class="des" style="color: #c7c7c7; |
|||
font-size: 16px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
margin-bottom: 0;">It is easy to customize and use. Just drag and drop the building |
|||
blocks to make attractive webpages. </p> |
|||
|
|||
</div> |
|||
<div class=" mt-5" style="--aspect-ratioapt: 872/443;"> |
|||
<img src="./img/6.png" alt="Grid item" class="img-fluid"> |
|||
</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%;">Transform Your</span><br> |
|||
<span style="color: #212121; |
|||
font-weight: 700; |
|||
display: inline-block; |
|||
width: 100%;">Website into a</span> |
|||
<span style="color: #212121; |
|||
font-weight: 700; |
|||
display: inline-block; |
|||
width: 100%;">Visual Masterpiece.</span> |
|||
</h4> |
|||
|
|||
<div class="mt-4"> |
|||
<p style="color: #444; font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5;">Unlock the full potential of your online presence with a stunning website design. Whether |
|||
viewed on desktop, tablet, or mobile, your site will look incredible and function seamlessly. Delight |
|||
visitors with a visually striking, user-friendly interface that keeps them coming back.</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/visual_screenshots.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/phone-screenshots.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%;">Built to Impress</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 crafted to deliver a stunning, user-friendly experience on |
|||
any mobile device. Your customers will love the seamless navigation and clear visuals.</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> |
|||
<!-- --> |
|||
</section> |
|||
<!-- --> |
|||
</div> |
|||
</div> |
|||
</body> |
|||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js"></script> |
|||
|
|||
</html> |
After Width: | Height: | Size: 380 KiB |
After Width: | Height: | Size: 271 KiB |
After Width: | Height: | Size: 434 KiB |
After Width: | Height: | Size: 45 KiB |
After Width: | Height: | Size: 21 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 1.1 MiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 165 KiB |
After Width: | Height: | Size: 1.8 MiB |
After Width: | Height: | Size: 17 MiB |
After Width: | Height: | Size: 15 MiB |
After Width: | Height: | Size: 12 MiB |
After Width: | Height: | Size: 4.5 MiB |
After Width: | Height: | Size: 101 KiB |
After Width: | Height: | Size: 61 KiB |
After Width: | Height: | Size: 93 KiB |
After Width: | Height: | Size: 52 KiB |
After Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 723 B |
After Width: | Height: | Size: 943 B |
After Width: | Height: | Size: 958 B |
After Width: | Height: | Size: 37 KiB |
After Width: | Height: | Size: 57 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 6.5 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 8.8 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 7.7 KiB |
After Width: | Height: | Size: 7.7 KiB |
After Width: | Height: | Size: 7.2 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 7.8 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 6.3 KiB |
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 49 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 85 KiB |
After Width: | Height: | Size: 165 KiB |
@ -0,0 +1,39 @@ |
|||
/** @odoo-module */ |
|||
import PublicWidget from "@web/legacy/js/public/public_widget" |
|||
import { _t } from "@web/core/l10n/translation"; |
|||
import { rpc } from "@web/core/network/rpc"; |
|||
|
|||
PublicWidget.registry.customSplash = PublicWidget.Widget.extend({ |
|||
selector: "#wrapwrap", |
|||
events: { |
|||
'click .btn-sub': 'onClickSubscribe', |
|||
}, |
|||
async onClickSubscribe(ev) { |
|||
let $button = $(ev.currentTarget) |
|||
let $input = $(ev.currentTarget.parentElement).find('input') |
|||
let $warning = $(ev.currentTarget.parentElement).find('.warning') |
|||
if (this.emailCheck($input.val())) { |
|||
if ($button.text() === "Subscribe") { |
|||
const data = await rpc('/subscribe_newsletter', { |
|||
email: $input.val() |
|||
}) |
|||
if (data) { |
|||
$warning.hide() |
|||
$input.css('pointer-events', 'none') |
|||
$button.css('background-color', 'green') |
|||
$button.text("Thanks") |
|||
} else { |
|||
$warning.text("Already subscribed to the newsletter.") |
|||
$warning.show() |
|||
} |
|||
} |
|||
} else { |
|||
$warning.text("Enter a valid email.") |
|||
$warning.show() |
|||
} |
|||
}, |
|||
emailCheck(str) { |
|||
const specialChars = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; |
|||
return specialChars.test(str) |
|||
} |
|||
}) |
@ -0,0 +1,320 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<template id="splash_blog" name="Splash Blog" |
|||
inherit_id="website_blog.blog_post_short"> |
|||
<!-- Inherits from "website_blog.blog_post_short" and replaces two elements with a banner section and --> |
|||
<!-- a custom blog view. It also includes a pager element for navigating through blog posts.--> |
|||
<xpath expr="//div[@id='o_wblog_blog_top']" position="replace"> |
|||
<div style="display:none;"> |
|||
<div id="o_wblog_blog_top_droppable"/> |
|||
</div> |
|||
<section class="banner_about"> |
|||
<div class="container"> |
|||
<h3 class="b_head"> |
|||
Blog |
|||
</h3> |
|||
</div> |
|||
</section> |
|||
</xpath> |
|||
|
|||
<xpath expr="//div[@id='o_wblog_posts_loop_container']" position="replace"> |
|||
<t t-call="theme_splash.splash_blog_view"> |
|||
<t t-if="not blog" t-set="posts_list_show_parent_blog" t-value="True"/> |
|||
</t> |
|||
<t t-call="website.pager"> |
|||
<t t-set="classname" t-valuef="justify-content-center"/> |
|||
<t t-set="extraLinkClass" t-valuef="post_link"/> |
|||
</t> |
|||
</xpath> |
|||
</template> |
|||
<template id="splash_blog_view" name="Splash Blog View" inherit_id="website_blog.posts_loop"> |
|||
<xpath expr="//div[@id='o_wblog_posts_loop']" position="replace"> |
|||
<div class="container"> |
|||
<div class="row"> |
|||
<div class="col-md-8"> |
|||
<div id="o_wblog_posts_loop" |
|||
t-att-class="'o_wblog_list_view' if opt_blog_list_view else ''"> |
|||
|
|||
<!-- Allow to filter post by published state. Visible only in edit-mode |
|||
and if both published/unpublished number is > 0 --> |
|||
<t t-if="state_info" t-set="state" |
|||
t-value="state_info['state']"/> |
|||
|
|||
<!-- Check for active options --> |
|||
<t t-set="opt_posts_loop_show_cover" |
|||
t-value="is_view_active('website_blog.opt_posts_loop_show_cover')"/> |
|||
|
|||
<div groups="website.group_website_designer" |
|||
t-if="state_info and (state_info['published'] > 0 and state_info['unpublished'] > 0)"> |
|||
<div class="bg-200 py-2 mb-4 alert alert-dismissable"> |
|||
<button type="button" class="close" data-dismiss="alert" |
|||
aria-label="Close">× |
|||
</button> |
|||
<span class="mr-1">Show:</span> |
|||
<div class="btn-group btn-group-sm"> |
|||
<a t-attf-class="btn #{state == 'published' and 'btn-success' or 'btn-default bg-white border'}" |
|||
t-attf-href="#{state == 'published' and blog_url(state='') or blog_url(state='published')}"> |
|||
<i t-attf-class="fa mr-1 #{state == 'published' and 'fa-check-square-o' or 'fa-square-o'}"/> |
|||
Published (<t t-esc="state_info['published']"/>) |
|||
</a> |
|||
<a t-attf-class="btn #{state == 'unpublished' and 'btn-success' or 'btn-default bg-white border'}" |
|||
t-attf-href="#{state == 'unpublished' and blog_url(state='') or blog_url(state='unpublished')}"> |
|||
<i t-attf-class="fa mr-1 #{state == 'unpublished' and 'fa-check-square-o' or 'fa-square-o'}"/> |
|||
Unpublished (<t |
|||
t-esc="state_info['unpublished']"/>) |
|||
</a> |
|||
</div> |
|||
<div class="pt-1 font-italic small">This box will not be |
|||
visible to your visitors |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
<div t-attf-class="row #{posts and not opt_blog_readable and 'mx-n2'}"> |
|||
<!-- Filters --> |
|||
<div t-if="tag or date_begin or search" class="col-12 mb-3"> |
|||
<div t-if="posts" class="h4 mb-3"> |
|||
<t t-esc="len(posts)"/> |
|||
<t t-if="len(posts) < 2">Article</t> |
|||
<t t-else="">Articles</t> |
|||
</div> |
|||
<span t-if="search" |
|||
class="align-items-baseline border d-inline-flex pl-2 rounded mb-2"> |
|||
<i class="fa fa-search mr-2 text-muted"/> |
|||
<t t-esc="search"/> |
|||
<a t-att-href="blog_url(search=False, tag=tag)" |
|||
class="btn border-0 py-1 post_link">× |
|||
</a> |
|||
</span> |
|||
<t t-if="tag"> |
|||
<!-- Show active tags with a category set --> |
|||
<t t-foreach="tag_category" t-as="nav_tag_category"> |
|||
<t t-call="website_blog.tags_list"> |
|||
<t t-set='tags' |
|||
t-value='nav_tag_category.tag_ids'/> |
|||
<t t-set='dismissibleBtn' t-value="True"/> |
|||
</t> |
|||
</t> |
|||
|
|||
<!-- Show active tags without a category set --> |
|||
<t t-call="website_blog.tags_list"> |
|||
<t t-set='tags' t-value='other_tags'/> |
|||
<t t-set='dismissibleBtn' t-value="True"/> |
|||
</t> |
|||
</t> |
|||
<span t-if="date_begin" |
|||
class="align-items-baseline border d-inline-flex pl-2 rounded mb-2"> |
|||
<i class="fa fa-calendar-o mr-2 text-muted"/> |
|||
<t t-esc="date_begin" |
|||
t-options="{'widget': 'date', 'format': 'MMM yyyy'}"/> |
|||
<a t-attf-href="#{blog_url(date_begin=False, date_end=False)}" |
|||
class="btn border-0 py-1">× |
|||
</a> |
|||
</span> |
|||
<hr class="mt-2"/> |
|||
</div> |
|||
|
|||
<!-- No blog post yet --> |
|||
<div t-if="not posts" class="col"> |
|||
<t t-set="no_results_str">No results for "%s".</t> |
|||
<h2 t-if="search" t-esc="no_results_str % search" |
|||
class="font-weight-bold"/> |
|||
<h2 t-else="">No blog post yet.</h2> |
|||
<div class="alert alert-info" |
|||
groups="website.group_website_designer"> |
|||
Click on "<b>New</b>" in the top-right corner to |
|||
write your first blog post. |
|||
</div> |
|||
</div> |
|||
|
|||
<!-- Posts --> |
|||
|
|||
<!-- Define 'colWidth' qWeb variable, to be assigned later. |
|||
Adjust accordingly if sidebar and/or readability modes are active. --> |
|||
<t t-if="not opt_blog_list_view"> |
|||
<t t-if="opt_blog_readable"> |
|||
<t t-if="opt_blog_sidebar_show" t-set="colWidth" |
|||
t-value="'col-md-6'"/> |
|||
<t t-else="" t-set="colWidth" |
|||
t-value="'col-md-6 col-xl-4'"/> |
|||
</t> |
|||
<t t-else=""> |
|||
<t t-if="opt_blog_sidebar_show" t-set="colWidth" |
|||
t-value="'px-2 col-md-6 col-xl-4'"/> |
|||
<t t-else="" t-set="colWidth" |
|||
t-value="'px-2 col-sm-6 col-lg-4 col-xl-3'"/> |
|||
</t> |
|||
</t> |
|||
<!-- Loop through posts: exclude the first one if already displayed as top banner --> |
|||
<t t-foreach="posts" t-as="blog_post"> |
|||
<div t-attf-class="pb-4 col-12 #{colWidth}"> |
|||
<article |
|||
t-attf-class="o_wblog_post position-relative #{'card h-100' if opt_blog_cards_design else ''}" |
|||
name="blog_post"> |
|||
<!-- Assign 'colWidth': 'col-12' is default for List-View and mobile --> |
|||
<t t-if="opt_blog_list_view"> |
|||
<div class="Blog"> |
|||
<div class="b_left_single"> |
|||
<div t-if="opt_posts_loop_show_cover" |
|||
class="blog_img"> |
|||
<t t-call="website_blog.post_cover_image"/> |
|||
<div class="blog_date"> |
|||
14 Sep |
|||
</div> |
|||
</div> |
|||
<div class="wrapper"> |
|||
<a class="blog_link"> |
|||
<h4> |
|||
<t t-call="website_blog.post_heading"/> |
|||
</h4> |
|||
</a> |
|||
<div class="comment"> |
|||
<span class="fa fa-user"> |
|||
<a t-esc="blog_post.author_id.name"/> |
|||
</span> |
|||
<span t-if="posts_list_show_parent_blog" |
|||
class=" fa fa-folder-open text-muted"> |
|||
<a t-attf-href="/blog/#{slug(blog_post.blog_id)}" |
|||
t-field="blog_post.blog_id"/> |
|||
</span> |
|||
</div> |
|||
<div class="blog_details"> |
|||
<p class="para"> |
|||
<t t-call="website_blog.post_teaser"/> |
|||
</p> |
|||
<a t-attf-href="/blog/#{slug(blog_post.blog_id)}/#{slug(blog_post)}" |
|||
class="btn btn-primary"> |
|||
Read more |
|||
<i class="fa fa-chevron-right ml-2"/> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</t> |
|||
</article> |
|||
</div> |
|||
<!-- List-View Design --> |
|||
|
|||
<!-- Grid-View Design --> |
|||
<t t-if="not opt_blog_list_view"> |
|||
<t t-if="opt_posts_loop_show_cover" |
|||
t-call="website_blog.post_cover_image"/> |
|||
<div t-att-class="opt_blog_cards_design and 'card-body px-2 py-0 mb-2'"> |
|||
<t t-call="website_blog.post_heading"/> |
|||
<div t-if="is_view_active('website_blog.opt_posts_loop_show_teaser')"> |
|||
<t t-call="website_blog.post_teaser"/> |
|||
</div> |
|||
</div> |
|||
<div t-attf-class="o_wblog_normalize_font #{'card-footer px-2 pb-2' if opt_blog_cards_design else 'pr-2 pb-2'}"> |
|||
<t t-call="website_blog.post_info"/> |
|||
</div> |
|||
</t> |
|||
<!-- Add 'unpublished' badge --> |
|||
<span t-if="not blog_post.website_published" |
|||
class="bg-danger small py-1 px-2 position-absolute o_not_editable" |
|||
style="top:0; right:0">unpublished |
|||
</span> |
|||
<!-- List-View Design, add <hr> after post --> |
|||
<div t-if="opt_blog_list_view and not blog_post_last" |
|||
class="col-12 mt-2 mb-5 px-2"> |
|||
<hr/> |
|||
</div> |
|||
</t> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="col-md-4"> |
|||
<div class="blog_right"> |
|||
<div class="sidebar"> |
|||
<div class="sidebar_content"> |
|||
<h4> |
|||
Search |
|||
</h4> |
|||
<form id="o_wblog_post_search" |
|||
class="m-auto w-100" |
|||
role="search" |
|||
t-att-action="blog_url(tag=tag,search=search)" |
|||
method="get"> |
|||
<t t-call="website.website_search_box"> |
|||
<t t-set="_classes" t-valuef="w-100"/> |
|||
</t> |
|||
</form> |
|||
</div> |
|||
<div class="sidebar_content"> |
|||
<h4> |
|||
<a> |
|||
Categories |
|||
</a> |
|||
</h4> |
|||
<h6 class="all_categories"> |
|||
<a href="/blog" |
|||
t-attf-class="nav-link font-weight-bold #{(not blog) and 'active'}"> |
|||
All |
|||
</a> |
|||
</h6> |
|||
|
|||
<ul class="all_categories" t-foreach="blogs" |
|||
t-as="nav_blog"> |
|||
<a t-attf-href="/blog/#{slug(nav_blog)}"> |
|||
<li t-attf-class="nav-link #{(blog and nav_blog.id == blog.id) and 'active' or ''}"> |
|||
<b t-field="nav_blog.name"/> |
|||
</li> |
|||
</a> |
|||
</ul> |
|||
</div> |
|||
<div class="sidebar_content"> |
|||
<h4> |
|||
Recent Posts |
|||
</h4> |
|||
<t t-foreach="posts_recent" t-as="p"> |
|||
<div class="recent_wrapper"> |
|||
<a t-attf-href="/blog/#{p.blog_id.id}/#{p.id}"> |
|||
<div class="img_wrapper"> |
|||
<t t-call="website.record_cover"> |
|||
<t t-set="_record" t-value="p"/> |
|||
<t t-set="use_size" |
|||
t-value="img_wrap"/> |
|||
<t t-set="additionnal_classes" |
|||
t-value="'img_wrap'"/> |
|||
</t> |
|||
</div> |
|||
|
|||
<div class="rec_post_info"> |
|||
<a t-attf-href="/blog/#{p.blog_id.id}/#{p.id}"> |
|||
<h4> |
|||
<t t-esc="p.name"/> |
|||
</h4> |
|||
</a> |
|||
<p> |
|||
<t t-esc="p.published_date" |
|||
t-options="{'widget': 'date', 'format': 'MMM dd yyyy'}"/> |
|||
</p> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
</t> |
|||
</div> |
|||
<div t-if="other_tags or tag_category" class="sidebar_content"> |
|||
<h4> |
|||
Popular Tags |
|||
</h4> |
|||
<div class="pop_wrapper"> |
|||
<t t-call="website_blog.tags_list"> |
|||
<t t-set='tags' t-value='other_tags'/> |
|||
<t t-set="showInactive" t-value="True"/> |
|||
</t> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</xpath> |
|||
</template> |
|||
<template id="splash_blog_search" name="Splash Blog Search" |
|||
inherit_id="website_blog.blogs_nav"> |
|||
<xpath expr="//div" position="replace"/> |
|||
</template> |
|||
</odoo> |
@ -0,0 +1,195 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<template id="contact_us" inherit_id="website.contactus" active="True" |
|||
name="Contact 1"> |
|||
<xpath expr="//section[hasclass('s_title')]" position="replace"> |
|||
<section class="banner_about"> |
|||
<div class="container"> |
|||
<h3 class="b_head"> |
|||
Contact Us |
|||
</h3> |
|||
</div> |
|||
</section> |
|||
</xpath> |
|||
<xpath expr="//section[hasclass('s_text_block')]" |
|||
position="replace"> |
|||
<!-- Discuss section starts here --> |
|||
<section class="services1 py-5 pb-5"> |
|||
<div class="exp_wrapper"> |
|||
<div class="container"> |
|||
<div class="row"> |
|||
<div class="col-lg-6 col-12"> |
|||
<div class="ex-1"> |
|||
<h4> |
|||
Get in touch with us |
|||
<div class="ex-line"> |
|||
</div> |
|||
</h4> |
|||
<div class="main-head"> |
|||
<h2> |
|||
Let's discuss any Sanitizing |
|||
services |
|||
enquiry |
|||
</h2> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="col-lg-6 col-12"> |
|||
<p class="para"> |
|||
Lorem ipsum viverra feugiat. Pellen tesque |
|||
libero ut justo, |
|||
ultrices in ligula. Semper at tempufddfel. |
|||
Lorem |
|||
ipsum dolor |
|||
sit amet consectetur adipisicing elit. Non |
|||
quae, |
|||
fugiat ad. |
|||
</p> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
<!-- Discuss section ends here --> |
|||
<!-- Contact info section starts here --> |
|||
<section class="address"> |
|||
<div class="container"> |
|||
<div class="contact_col"> |
|||
<di class="contact_info"> |
|||
<div class="contact_icon"> |
|||
<img src="/theme_splash/static/src/images/contact/office.png"/> |
|||
</div> |
|||
|
|||
<h4>Contact Address</h4> |
|||
<p class="para">#208KL Sanitize, Corner Market, NY - |
|||
62617. |
|||
</p> |
|||
</di> |
|||
<di class="contact_info"> |
|||
<div class="contact_icon"> |
|||
<img src="/theme_splash/static/src/images/contact/envelope.png"/> |
|||
</div> |
|||
|
|||
<h4>Contact Address</h4> |
|||
<div class="wrapper"> |
|||
<p class="fpm"> |
|||
<a href="mailto:mail@info.com"> |
|||
Contact@info.com |
|||
</a> |
|||
</p> |
|||
<p class="fpm"> |
|||
<a href="mailto:mail@info.com"> |
|||
Support@info.com |
|||
</a> |
|||
</p> |
|||
</div> |
|||
|
|||
</di> |
|||
<di class="contact_info"> |
|||
<div class="contact_icon"> |
|||
<img src="/theme_splash/static/src/images/contact/support.png"/> |
|||
</div> |
|||
<h4>Contact Address</h4> |
|||
<div class="wrapper"> |
|||
<p class="fpm"> |
|||
<a href="tel:+91123456789">+91 123456978</a> |
|||
</p> |
|||
<p class="fpm"> |
|||
<a href="tel:+91123456789">+91 123456978</a> |
|||
</p> |
|||
</div> |
|||
</di> |
|||
<di class="contact_info"> |
|||
<div class="contact_icon"> |
|||
<img src="/theme_splash/static/src/images/contact/time.png"/> |
|||
</div> |
|||
<h4>Contact Address</h4> |
|||
<p class="para">Mon-Fri: 8 AM - 5 PM |
|||
Sat-Sun: Closed |
|||
</p> |
|||
</di> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
<!-- Contact info section ends here --> |
|||
<!-- Contact form section starts here --> |
|||
<section class="contact_form s_website_form my-5 mt-5"> |
|||
<div class="container" name="mail_button"> |
|||
<div class="form"> |
|||
<h3> |
|||
Get in Touch. We're Here to Help |
|||
</h3> |
|||
<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="row mb-5"> |
|||
<div class="mb-0 py-2 col-6 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"> |
|||
<div class="col-sm"> |
|||
<input id="contact1" type="text" |
|||
class="form-control s_website_form_input" name="name" required="" |
|||
placeholder="Your name"/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="mb-0 py-2 col-6 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"> |
|||
<div class="col-sm"> |
|||
<input id="contact3" type="email" |
|||
class="form-control s_website_form_input" name="email_from" |
|||
required="" placeholder="Your email"/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="row mb-5"> |
|||
<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"> |
|||
<div class="col-sm"> |
|||
<input id="contact5" type="text" |
|||
class="form-control s_website_form_input" name="subject" |
|||
required="" placeholder="Subject"/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="row mb-5"> |
|||
<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"> |
|||
<div class="col-sm"> |
|||
<textarea id="contact6" class="form-control s_website_form_input" |
|||
name="description" rows="5" required="" |
|||
placeholder="Message"/> |
|||
</div> |
|||
</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"> |
|||
<div class="col-sm"> |
|||
<input id="contact7" type="hidden" class="form-control s_website_form_input" |
|||
name="email_to"/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="text-center text-md-left s_website_form_submit" data-name="Submit Button"> |
|||
<div style="width: 200px;" class="s_website_form_label"/> |
|||
<a href="#" role="button" class="btn btn-primary btn-contact o_website_form_send"> |
|||
Submit |
|||
</a> |
|||
<span id="s_website_form_result"/> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
</xpath> |
|||
</template> |
|||
</odoo> |