@ -0,0 +1,51 @@ |
|||
.. 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 Autofly |
|||
============= |
|||
* Theme Autofly module provide attractive and unique front end theme mainly |
|||
suitable for eCommerce website. |
|||
|
|||
Installation |
|||
============ |
|||
- www.odoo.com/documentation/18.0/setup/install.html |
|||
- Install our Theme |
|||
|
|||
License |
|||
------- |
|||
General Public License, Version 3 (LGPL v3). |
|||
(https://www.gnu.org/licenses/lgpl-3.0-standalone.html) |
|||
|
|||
Company |
|||
------- |
|||
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__ |
|||
|
|||
|
|||
Credits |
|||
------- |
|||
* Developer: (V17) Fouzan M, |
|||
(V18) Athira K |
|||
* 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>`__ |
@ -0,0 +1,23 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from . import controllers |
|||
from . import models |
@ -0,0 +1,88 @@ |
|||
# -*- 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 Autofly', |
|||
'version': '18.0.1.0.0', |
|||
'category': 'Theme/Corporate', |
|||
'summary': 'Design eCommerce Website with Theme AutoFly', |
|||
'description': 'Theme Autofly module provide attractive and unique ' |
|||
'front end theme mainly suitable for eCommerce website', |
|||
'author': 'Cybrosys Techno Solutions', |
|||
'company': 'Cybrosys Techno Solutions', |
|||
'maintainer': 'Cybrosys Techno Solutions', |
|||
'website': "https://www.cybrosys.com", |
|||
'depends': ['website', 'website_blog', 'website_sale_wishlist'], |
|||
'data': [ |
|||
'security/ir.model.access.csv', |
|||
'data/theme_autofly_sequence.xml', |
|||
'views/car_type_views.xml', |
|||
'views/car_brand_views.xml', |
|||
'views/car_garage_views.xml', |
|||
'views/blog_page_templates.xml', |
|||
'views/portfolio_templates.xml', |
|||
'views/about_us_templates.xml', |
|||
'views/footer_templates.xml', |
|||
'views/header_templates.xml', |
|||
'views/contact_us_templates.xml', |
|||
'views/team_templates.xml', |
|||
'views/service_templates.xml', |
|||
'views/snippets/snippet_templates.xml', |
|||
'views/snippets/popular_model_templates.xml', |
|||
'views/snippets/blog_templates.xml', |
|||
'views/snippets/find_car_templates.xml', |
|||
'views/snippets/partners_templates.xml', |
|||
'views/snippets/testimonial_templates.xml', |
|||
'views/snippets/choose_us_templates.xml', |
|||
'views/snippets/banner_templates.xml', |
|||
'views/snippets/search_templates.xml', |
|||
'views/service_booking_views.xml', |
|||
'views/product_template_views.xml', |
|||
'views/testimonial_views.xml', |
|||
], |
|||
'assets': { |
|||
'web.assets_frontend': [ |
|||
'/theme_autofly/static/src/xml/blog_snippet_templates.xml', |
|||
'/theme_autofly/static/src/xml/testimonial_snippet_templates.xml', |
|||
'/theme_autofly/static/src/js/service_products.js', |
|||
'/theme_autofly/static/src/js/car_garage.js', |
|||
'theme_autofly/static/src/css/style.css', |
|||
'/theme_autofly/static/src/js/owl.carousel.js', |
|||
'/theme_autofly/static/src/js/owl.carousel.min.js', |
|||
'theme_autofly/static/src/css/owl.theme.default.min.css', |
|||
'/theme_autofly/static/src/js/owl.carousel.js', |
|||
'/theme_autofly/static/src/js/product_tab.js', |
|||
'/theme_autofly/static/src/js/find_car.js', |
|||
'/theme_autofly/static/src/js/search.js', |
|||
'/theme_autofly/static/src/js/blog.js', |
|||
'/theme_autofly/static/src/js/testimonial.js', |
|||
'/theme_autofly/static/src/js/all_type.js', |
|||
], |
|||
}, |
|||
'images': [ |
|||
'static/description/banner.jpg', |
|||
'static/description/theme_screenshot.jpg', |
|||
], |
|||
'license': 'LGPL-3', |
|||
'installable': True, |
|||
'application': False, |
|||
'auto_install': 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 website_autofly |
@ -0,0 +1,165 @@ |
|||
# -*- 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 http |
|||
from odoo.http import request |
|||
|
|||
|
|||
class WebsiteAutoFly(http.Controller): |
|||
"""Controller used to fetch product related data and also for about page, |
|||
portfolio page, team page, service page.""" |
|||
|
|||
@http.route('/about', website=True, type='http', auth='public', |
|||
csrf=False) |
|||
def about_page(self): |
|||
"""Render the about page.""" |
|||
return request.render('theme_autofly.about_page') |
|||
|
|||
@http.route('/portfolio', website=True, type='http', auth='public', |
|||
csrf=False) |
|||
def portfolio_page(self): |
|||
"""Render the portfolio page.""" |
|||
return request.render('theme_autofly.portfolio_page') |
|||
|
|||
@http.route('/team', website=True, type='http', auth='public', |
|||
csrf=False) |
|||
def team_page(self): |
|||
"""Render the team page.""" |
|||
return request.render('theme_autofly.team_page') |
|||
|
|||
@http.route('/service', website=True, type='http', auth='public', |
|||
csrf=False) |
|||
def service_page(self): |
|||
"""Render the service page.""" |
|||
return request.render('theme_autofly.service_page') |
|||
|
|||
@http.route('/blog_snippet', auth="public", type='json') |
|||
def latest_blog(self): |
|||
"""Return the data for dynamic blog snippet.""" |
|||
return request.env['blog.post'].sudo().search_read( |
|||
[], ['name', 'blog_id', 'subtitle', 'published_date'], |
|||
order='id desc', limit=3) |
|||
|
|||
@http.route('/get_testimonial', auth="public", type='json') |
|||
def get_testimonial(self): |
|||
"""Return the data for testimonial snippet.""" |
|||
testimonial = request.env['autofly.testimonial'].sudo().search( |
|||
[], order='id desc', limit=12) |
|||
values = { |
|||
f'slide{i + 1}': [{'id': record.id, |
|||
'name': record.display_name, |
|||
'partner_id': record.partner_id.id, |
|||
'rating': record.rating, |
|||
'review': record.review, |
|||
} for record in testimonial[i * 3:(i + 1) * 3]] |
|||
for i in range((len(testimonial) + 2) // 3) |
|||
} |
|||
return values |
|||
|
|||
@http.route('/autofly/service', type='http', website=True, auth='public', |
|||
csrf=False) |
|||
def service_booking(self, **kwargs): |
|||
"""Render the service page.""" |
|||
request.env['service.booking'].sudo().create({ |
|||
'name': kwargs.get('usr1'), |
|||
'email': kwargs.get('email'), |
|||
'description': kwargs.get('text') |
|||
}) |
|||
return request.render('theme_autofly.service_page') |
|||
|
|||
@http.route('/cars-search', website=True, type='http', auth='public', |
|||
csrf=False) |
|||
def car_search(self, **kwargs): |
|||
"""Used for searching particular cars.""" |
|||
domain = [] |
|||
if kwargs.get('car-selection'): |
|||
domain.append( |
|||
('car_brand_id', '=', int(kwargs.get('car-selection')))) |
|||
if kwargs.get('car-type-selection'): |
|||
domain.append(('car_type_id', '=', int(kwargs.get( |
|||
'car-type-selection')))) |
|||
if kwargs.get('car-price'): |
|||
domain.append(('list_price', '=', float(kwargs.get('car-price')))) |
|||
if kwargs.get('car-model'): |
|||
domain.append( |
|||
('car_model', '=', int(float(kwargs.get('car-model'))))) |
|||
if kwargs.get('car-location'): |
|||
domain.append(('location', 'ilike', kwargs.get('car-location'))) |
|||
result = request.env['product.template'].sudo().search(domain) |
|||
return request.render('theme_autofly.specific_car', |
|||
qcontext={'hot_deals': result}) |
|||
|
|||
@http.route('/get_product_tab', auth="public", type='json') |
|||
def get_product_tab(self): |
|||
"""Controller used to Fetch popular products.""" |
|||
hot_deals = request.env['product.template'].sudo().search([ |
|||
('website_published', '=', True), |
|||
('popular_product', '=', True)]) |
|||
response = http.Response(template='theme_autofly.popular_modal', |
|||
qcontext={'hot_deals': hot_deals}) |
|||
return response.render() |
|||
|
|||
@http.route('/find_car', auth="public", type='json') |
|||
def get_find_car(self): |
|||
"""Controller used to fetch car types.""" |
|||
hot_deals = request.env['car.types'].sudo().search([], |
|||
order='id desc', |
|||
limit=6) |
|||
response = http.Response(template='theme_autofly.autofly_find_car', |
|||
qcontext={'hot_deals': hot_deals}) |
|||
return response.render() |
|||
|
|||
@http.route('/get_searched_car', auth="public", type='json') |
|||
def get_search_car(self): |
|||
"""Controller used to fetch car brands.""" |
|||
brands = request.env['car.brand'].sudo().search([]) |
|||
types = request.env['car.types'].sudo().search([]) |
|||
brand = [{'id': record.id, 'name': record.name} for record in brands] |
|||
car_type = [{'id': record.id, 'name': record.name} for record in types] |
|||
return {'type': car_type, 'brand': brand} |
|||
|
|||
@http.route('/get_service_product', auth="public", type='json') |
|||
def get_service_product(self): |
|||
"""Controller used to fetch service products.""" |
|||
hot_deals = request.env['product.template'].sudo().search([ |
|||
('website_published', '=', True), |
|||
('detailed_type', '=', 'service')]) |
|||
response = http.Response(template='theme_autofly.service_products', |
|||
qcontext={'hot_deals': hot_deals}) |
|||
return response.render() |
|||
|
|||
@http.route('/get_garage_car', auth="public", type='json') |
|||
def get_garage_car(self): |
|||
"""Controller used to fetch garages.""" |
|||
hot_deals = request.env['car.garage'].sudo().search([]) |
|||
car_types = request.env['car.types'].sudo().search([]) |
|||
values = {'hot_deals': hot_deals, 'car_types': car_types} |
|||
response = http.Response(template='theme_autofly.portfolio_garage_page', |
|||
qcontext=values) |
|||
return response.render() |
|||
|
|||
@http.route('/get_all_type', auth="public", type='json') |
|||
def get_all_type(self): |
|||
"""Controller used to fetch car types.""" |
|||
hot_deals = request.env['car.types'].sudo().search([]) |
|||
response = http.Response(template='theme_autofly.portfolio_type_page', |
|||
qcontext={'hot_deals': hot_deals}) |
|||
return response.render() |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<odoo> |
|||
<data noupdate="1"> |
|||
<!-- Sequences for booking --> |
|||
<record id="seq_booking" model="ir.sequence"> |
|||
<field name="name">Service Booking</field> |
|||
<field name="code">reference.sequence</field> |
|||
<field name="prefix">SB</field> |
|||
<field name="padding">3</field> |
|||
<field name="company_id" eval="False"/> |
|||
</record> |
|||
</data> |
|||
</odoo> |
@ -0,0 +1,7 @@ |
|||
## Module <theme_autofly> |
|||
|
|||
#### 27.2.2025 |
|||
#### Version 18.0.1.0.0 |
|||
#### ADD |
|||
|
|||
- Initial Commit for Theme Autofly |
@ -0,0 +1,27 @@ |
|||
# -*- 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 car_brand |
|||
from . import car_garage |
|||
from . import car_types |
|||
from . import product_template |
|||
from . import service_booking |
|||
from . import testimonial |
@ -0,0 +1,33 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class CarBrand(models.Model): |
|||
"""This model is used define Brand Model fields and functionalities.""" |
|||
_name = "car.brand" |
|||
_description = "Website Car Brand" |
|||
|
|||
name = fields.Char(help="Add your brand name.", string="Brand name", |
|||
required=True) |
|||
image = fields.Image(help="Add your brand image.", string="Image", |
|||
required=True) |
@ -0,0 +1,33 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class CarGarage(models.Model): |
|||
"""This model is used define car garage details.""" |
|||
_name = "car.garage" |
|||
_description = "Website Car Garage" |
|||
|
|||
name = fields.Char(help="Add your garage name.", string="Name", |
|||
required=True) |
|||
image = fields.Image(help="Add your garage image.", string="Image", |
|||
required=True) |
@ -0,0 +1,51 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class CarTypes(models.Model): |
|||
"""This model is used define car type fields and it's functionalities.""" |
|||
_name = "car.types" |
|||
_description = "Website Car Type" |
|||
|
|||
name = fields.Char(help="Add your car type name.", string="Name", required=True) |
|||
image = fields.Image(help="Add your car type image.", string="Image", required=True) |
|||
product_count = fields.Integer(string='Products Count', |
|||
compute='_compute_product_count', |
|||
help="Used to show product in smart button.") |
|||
|
|||
def _compute_product_count(self): |
|||
"""Product count fetching based on car type.""" |
|||
for record in self: |
|||
record.product_count = self.env['product.template'].search_count( |
|||
[('car_type_id', '=', record.id)]) |
|||
|
|||
def action_view_products(self): |
|||
"""Action to view corresponding products""" |
|||
return { |
|||
'type': 'ir.actions.act_window', |
|||
'name': 'Products', |
|||
'view_mode': 'list', |
|||
'res_model': 'product.template', |
|||
'domain': [('car_type_id', '=', self.id)], |
|||
'context': "{'create': False}" |
|||
} |
@ -0,0 +1,37 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class ProductTemplate(models.Model): |
|||
"""Inheriting product_product model to add new fields.""" |
|||
_inherit = "product.template" |
|||
|
|||
popular_product = fields.Boolean(string="Popular Product", |
|||
help="Please enable this field to make the" |
|||
"product as popular product.") |
|||
car_type_id = fields.Many2one('car.types', string="Car Type", |
|||
help="Add your car type.") |
|||
car_brand_id = fields.Many2one('car.brand', string="Car Brand", |
|||
help="Add your car brand.") |
|||
car_model = fields.Integer(string="Model", help="Add your car model.") |
|||
location = fields.Char(help="Add your car location.") |
@ -0,0 +1,44 @@ |
|||
# -*- 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 _, api, fields, models |
|||
|
|||
|
|||
class ServiceBooking(models.Model): |
|||
"""This model is used managing service booking details.""" |
|||
_name = "service.booking" |
|||
_description = "Website Car Service Booking" |
|||
|
|||
name = fields.Char(required=True, help="Name of the service",string="Name") |
|||
reference = fields.Char(readonly=True, help="Booking sequence",string="Reference") |
|||
state = fields.Selection([('draft', 'Draft'), ('running', 'Running'), |
|||
('cancel', 'Cancel'), ('done', 'Done')]) |
|||
email = fields.Char(help="Email address",string="Email") |
|||
description = fields.Char(help="Add if you have any description",string="Description") |
|||
|
|||
@api.model_create_multi |
|||
def create(self, vals_list): |
|||
"""Supering create function for generating sequence.""" |
|||
for vals in vals_list: |
|||
if vals.get('reference', _('New')) == _('New'): |
|||
vals['reference'] = self.env['ir.sequence'].next_by_code( |
|||
'reference.sequence') or _('New') |
|||
return super().create(vals) |
@ -0,0 +1,35 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2025-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class Testimonial(models.Model): |
|||
"""model to manage testimonials""" |
|||
_name = 'autofly.testimonial' |
|||
_description = 'Testimonials' |
|||
_rec_name = 'partner_id' |
|||
|
|||
partner_id = fields.Many2one('res.partner', string='Customer', |
|||
required=True) |
|||
rating = fields.Selection(selection=[('1', '1'), ('2', '2'), ('3', '3'), |
|||
('4', '4'), ('5', '5')]) |
|||
review = fields.Text(help='Add your review here',string="Review") |
|
After Width: | Height: | Size: 170 KiB |
After Width: | Height: | Size: 8.7 KiB |
After Width: | Height: | Size: 48 KiB |
After Width: | Height: | Size: 700 KiB |
After Width: | Height: | Size: 137 KiB |
After Width: | Height: | Size: 131 KiB |
After Width: | Height: | Size: 909 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 76 KiB |
After Width: | Height: | Size: 78 KiB |
After Width: | Height: | Size: 120 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 122 KiB |
After Width: | Height: | Size: 88 KiB |
After Width: | Height: | Size: 176 KiB |
After Width: | Height: | Size: 383 KiB |
After Width: | Height: | Size: 833 KiB |
After Width: | Height: | Size: 312 KiB |
After Width: | Height: | Size: 490 KiB |
After Width: | Height: | Size: 135 KiB |
After Width: | Height: | Size: 653 KiB |
After Width: | Height: | Size: 272 KiB |
After Width: | Height: | Size: 126 KiB |
After Width: | Height: | Size: 765 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 374 KiB |
After Width: | Height: | Size: 1.0 MiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 9.2 KiB |
After Width: | Height: | Size: 89 KiB |
After Width: | Height: | Size: 78 KiB |
After Width: | Height: | Size: 153 KiB |
After Width: | Height: | Size: 172 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 275 KiB |
After Width: | Height: | Size: 128 KiB |
After Width: | Height: | Size: 490 KiB |
After Width: | Height: | Size: 44 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: 57 KiB |
After Width: | Height: | Size: 90 KiB |
After Width: | Height: | Size: 124 KiB |
After Width: | Height: | Size: 339 KiB |
After Width: | Height: | Size: 276 KiB |
After Width: | Height: | Size: 123 KiB |
After Width: | Height: | Size: 267 KiB |
After Width: | Height: | Size: 386 KiB |
After Width: | Height: | Size: 95 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: 559 KiB |
After Width: | Height: | Size: 343 KiB |
After Width: | Height: | Size: 98 KiB |
After Width: | Height: | Size: 1010 KiB |
After Width: | Height: | Size: 2.3 MiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 198 KiB |
After Width: | Height: | Size: 331 KiB |
After Width: | Height: | Size: 258 KiB |
After Width: | Height: | Size: 368 KiB |
After Width: | Height: | Size: 189 KiB |
After Width: | Height: | Size: 91 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 109 KiB |
After Width: | Height: | Size: 109 KiB |
After Width: | Height: | Size: 470 KiB |
After Width: | Height: | Size: 65 KiB |
After Width: | Height: | Size: 389 KiB |
After Width: | Height: | Size: 722 KiB |
After Width: | Height: | Size: 525 KiB |
After Width: | Height: | Size: 62 KiB |
After Width: | Height: | Size: 825 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 885 B |
@ -0,0 +1,748 @@ |
|||
<!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:#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-times" style="color:red"></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: 10px; width:1250px;"> |
|||
</div> |
|||
</div> |
|||
|
|||
<!-- --> |
|||
<!--feature section --> |
|||
|
|||
<div class="my-5" style="padding: 100px; 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;">Design</a></h4> |
|||
|
|||
<p style=" font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;">The most recent website creation for an autofly. flexible and simple 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;">Compatibility with plugins</a></h4> |
|||
|
|||
<p style="font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;"> Along with this theme , it permits users to use third-party plugins also.</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;"> Fast loading times</a></h4> |
|||
|
|||
<p style="font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;"> This theme loads all of its features more quickly than other designs.. </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;">Up-to-date Development</a></h4> |
|||
|
|||
<p style="font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;"> The most up-to-date approaches, concepts, and innovations are being used. </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;">Responsive Design</a></h4> |
|||
|
|||
<p style="font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;"> Different resolution devices can be used by users to watch websites. </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;">One Click Installation</a></h4> |
|||
|
|||
<p style="font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5; |
|||
color: #212529;"> This mode is significantly easier than others because Odoo makes One Click Installation feasible. </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> |
|||
|
|||
|
|||
<!--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;">Explore Our Collection</h3> |
|||
<p class="des" style="color: #c7c7c7; |
|||
font-size: 16px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
margin-bottom: 0;">Discover your next favorite product |
|||
with beautifully designed product cards.</p> |
|||
|
|||
</div> |
|||
<div class="mt-5"> |
|||
<img src="./img/portfolio-4.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 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;">Unbeatable Deals</h3> |
|||
<p class="des" style="color: #c7c7c7; |
|||
font-size: 16px; |
|||
font-style: normal; |
|||
font-weight: 400; |
|||
line-height: 24px; |
|||
margin-bottom: 0;">Elevate your brand with a beautifully crafted theme that adapts perfectly to any device.</p> |
|||
|
|||
</div> |
|||
<div class=" mt-5" style="--aspect-ratioapt: 872/443;"> |
|||
<img src="./img/about-2.png" alt="Grid item" class="img-fluid" style="height:530px;"> |
|||
</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%;">Stunning Pages, </span><br> |
|||
<span style="color: #212121; |
|||
font-weight: 700; |
|||
display: inline-block; |
|||
width: 100%;">Seamless Experience</span> |
|||
</h4> |
|||
|
|||
<div class="mt-4"> |
|||
<p style="color: #444; font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5;">Design beautiful, responsive pages that captivate |
|||
visitors and enhance their shopping experience. |
|||
With easy customization and smooth navigation, |
|||
your store will shine on every device.</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;">Fully Customizable Layouts</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;">Mobile-Optimized Design</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;">High-Quality Image Integration</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, Smooth Navigation</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/about-3.png" style=" |
|||
border-radius: 40px; |
|||
"> |
|||
</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/Hero-banner.png" 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%;">Fully Responsive</span><br> |
|||
<span style="color: #212121; |
|||
font-weight: 700; |
|||
display: inline-block; |
|||
width: 100%;">Layout</span> |
|||
</h4> |
|||
|
|||
<div class="mt-4"> |
|||
<p style="color: #444; font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5;">Now take advantage of everything your dashboard has to offer even on the go. Our |
|||
design are now fully responsive, enabling you to view and manage everything from the comfort of your |
|||
mobile device.</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;">Interactive Elements</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 Loading Speed</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;">Customizable Fonts and Colors</span></li> |
|||
</ul> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
</div> |
|||
</section> |
|||
|
|||
<!-- --> |
|||
<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%;">Classy and Elegant</span><br> |
|||
<span style="color: #212121; |
|||
font-weight: 700; |
|||
display: inline-block; |
|||
width: 100%;"> Website Design</span> |
|||
</h4> |
|||
|
|||
<div class="mt-4"> |
|||
<p style="color: #444; font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5;">Enhance your online presence with a sleek, |
|||
sophisticated website design that not only looks stunning but |
|||
also offers seamless navigation. Our customizable and responsive |
|||
designs ensure that your brand stands out, providing an elegant |
|||
user experience across all devices. Perfect for |
|||
businesses looking to make a memorable impression.</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;">Sleek Aesthetics</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;">Customizable Elements</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</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/team-3.png" style=" |
|||
border-radius: 40px; |
|||
"> |
|||
</div> |
|||
|
|||
</div> |
|||
</div> |
|||
</div> |
|||
</section> |
|||
<!-- --> |
|||
<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/portfolio-3.png" 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%;">Classy </span><br> |
|||
<span style="color: #212121; |
|||
font-weight: 700; |
|||
display: inline-block; |
|||
width: 100%;">Presentation</span> |
|||
</h4> |
|||
|
|||
<div class="mt-4"> |
|||
<p style="color: #444; font-size: 16px; |
|||
font-weight: 400; |
|||
line-height: 1.5;">Highlight your products with captivating visuals |
|||
and detailed descriptions that engage customers and boost sales. |
|||
A well-crafted product presentation builds trust |
|||
and enhances the shopping experience.</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 Images</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;"> Engaging Descriptions</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;">Interactive Features</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: 377 KiB |
After Width: | Height: | Size: 706 KiB |
After Width: | Height: | Size: 11 KiB |