diff --git a/website_webar_product/README.rst b/website_webar_product/README.rst new file mode 100644 index 000000000..c67c71842 --- /dev/null +++ b/website_webar_product/README.rst @@ -0,0 +1,49 @@ +.. image:: https://img.shields.io/badge/license-AGPL--3-blue.svg + :target: https://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +Website WebAR Product Viewer +============================ +This module helps to view Website Products in 3D. The customers can experience +interactive AR commerce using WebAR technology.This gives customers a realistic +view of the product, show how it will look in real-life environments. + +Configuration +============= +* No Additional configuration is needed. + +Company +------- +* `Cybrosys Techno Solutions `__ + +License +------- +Affero General Public License v3.0 (AGPL v3) +(https://www.gnu.org/licenses/agpl-3.0-standalone.html) + +Credits +------- +* Developer: (V17) Bhagyadev KP +* 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 `Our Website `__ + +Further information +=================== +HTML Description: ``__ diff --git a/website_webar_product/__init__.py b/website_webar_product/__init__.py new file mode 100644 index 000000000..1ee7644b0 --- /dev/null +++ b/website_webar_product/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2024-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from . import controllers +from . import models diff --git a/website_webar_product/__manifest__.py b/website_webar_product/__manifest__.py new file mode 100644 index 000000000..09b048cb9 --- /dev/null +++ b/website_webar_product/__manifest__.py @@ -0,0 +1,52 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2024-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +{ + 'name': 'Website WebAR Product Viewer', + 'version': '17.0.1.0.0', + 'category': 'Website', + 'summary': 'Realistic view of the product in website', + 'description': """This module helps to view Website Products in 3D. + The customers can experience interactive AR commerce using WebAR + technology.This gives customers a realistic view of the product, show how + it will look in real-life environments.""", + 'author': 'Cybrosys Techno solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': "https://www.cybrosys.com", + 'depends': ['website_sale'], + 'data': [ + "views/product_template_views.xml", + "views/website_sale_templates.xml", + ], + 'demo': ["data/product_template_demo.xml"], + 'assets': { + 'web.assets_frontend': [ + '/website_webar_product/static/src/js/website_product_view.js', + '/website_webar_product/static/src/css/website_product_view.css', + ], + }, + 'images': ['static/description/banner.jpg'], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, +} diff --git a/website_webar_product/controllers/__init__.py b/website_webar_product/controllers/__init__.py new file mode 100644 index 000000000..c658859ff --- /dev/null +++ b/website_webar_product/controllers/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2024-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from . import website_webar_product diff --git a/website_webar_product/controllers/website_webar_product.py b/website_webar_product/controllers/website_webar_product.py new file mode 100644 index 000000000..c09aea134 --- /dev/null +++ b/website_webar_product/controllers/website_webar_product.py @@ -0,0 +1,44 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2024-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from odoo import http +from odoo.http import request + + +class ProductModel(http.Controller): + """This controller provides an endpoint for retrieving AR-related data for + a given product.""" + + @http.route('/product/ar_image', type='json', auth='none') + def get_product_ar_model(self, product_id): + """This method returns AR related data in the product.""" + product = request.env['product.template'].sudo().browse( + int(product_id)) + local_url = request.env['ir.attachment'].sudo().search( + [('res_model', '=', 'product.template'), + ('res_id', '=', product_id), ('name', '=', product.filename)], + limit=1).local_url + return {'type': product.ar_image_type, + 'ar_url': product.ar_url if product.ar_url else False, + 'ar_scale': product.ar_scale, + 'auto_rotate': product.auto_rotate, + 'ar_placement': product.ar_placement, + 'local_url': local_url} diff --git a/website_webar_product/data/product_template_demo.xml b/website_webar_product/data/product_template_demo.xml new file mode 100644 index 000000000..04130ad86 --- /dev/null +++ b/website_webar_product/data/product_template_demo.xml @@ -0,0 +1,24 @@ + + + + + + [Demo AR] Recliner Chair + + 650.0 + 750.0 + 2 + + + + url + /website_webar_product/static/src/img/Chair.glb + + Demo AR Model Chair + FURN_AR_7777 + + + + + + diff --git a/website_webar_product/doc/RELEASE_NOTES.md b/website_webar_product/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..37d06ab59 --- /dev/null +++ b/website_webar_product/doc/RELEASE_NOTES.md @@ -0,0 +1,6 @@ +## Module + +#### 27.03.2024 +#### Version 17.0.1.0.0 +#### ADD +- Initial commit for Website WebAR Product Viewer diff --git a/website_webar_product/models/__init__.py b/website_webar_product/models/__init__.py new file mode 100644 index 000000000..f524a6d17 --- /dev/null +++ b/website_webar_product/models/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2024-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from . import product_template diff --git a/website_webar_product/models/product_template.py b/website_webar_product/models/product_template.py new file mode 100644 index 000000000..bcc21cf11 --- /dev/null +++ b/website_webar_product/models/product_template.py @@ -0,0 +1,74 @@ +# -*- coding: utf-8 -*- +################################################################################ +# +# Cybrosys Technologies Pvt. Ltd. +# Copyright (C) 2024-TODAY Cybrosys Technologies(). +# Author: Bhagyadev KP (odoo@cybrosys.com) +# +# This program is free software: you can modify +# it under the terms of the GNU Affero General Public License (AGPL) as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################ +from odoo import api, fields, models +from odoo.exceptions import UserError + + +class ProductTemplate(models.Model): + """Extends the base product template model to include Augmented Reality + (AR) features.""" + _inherit = 'product.template' + + enable_ar_images = fields.Boolean(string="Enable AR images", + help="Enable to show AR images on the " + "website.") + ar_image_type = fields.Selection(selection=[("url", "Url"), + ("upload", "Upload")], + string="AR Image Type", default='url', + help='Url:url of image.\n' + 'Upload:Upload image.') + ar_url = fields.Char(string="Url for AR image", + help="Provide Valid Url for product AR Model.") + model_ar = fields.Binary(string="AR Image", attachment=True, + help="Upload AR Image. Image should be glf/gltf " + "format.") + filename = fields.Char(string='File Name', required=True, + help="File name of uploaded file content.") + poster_image = fields.Image(string="Poster Image", + help="Image used for carousal.") + ar_scale = fields.Selection( + selection=[("auto", "Auto"), ("fixed", "Fixed")], string="AR Scale", + default='auto', + help='Auto: allows the user from scaling the object in AR.\nFixed: is ' + 'used to prevent the user from scaling the object in AR.') + auto_rotate = fields.Boolean(string="Auto Rotate", + help="Enables the auto-rotation of image.") + ar_placement = fields.Selection(selection=[("floor", "Floor"), + ("wall", "Wall")], + string="AR Placement", default='floor', + help='Floor : Place the object on floor.\n' + 'Wall: Place the object on wall.') + + @api.onchange('model_ar') + def _onchange_model_ar(self): + """Save Product AR model image as attachment.""" + if self.model_ar: + if not self.filename.lower().endswith(('.glb', '.gltf')): + raise UserError( + "Invalid file format. Please upload a GLB or GLTF file.") + else: + self.env['ir.attachment'].create({ + 'name': self.filename, + 'datas': self.model_ar, + 'res_model': 'product.template', + 'res_id': self._origin.id, + }) diff --git a/website_webar_product/static/description/assets/icons/capture (1).png b/website_webar_product/static/description/assets/icons/capture (1).png new file mode 100644 index 000000000..8824deafc Binary files /dev/null and b/website_webar_product/static/description/assets/icons/capture (1).png differ diff --git a/website_webar_product/static/description/assets/icons/check.png b/website_webar_product/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/website_webar_product/static/description/assets/icons/check.png differ diff --git a/website_webar_product/static/description/assets/icons/chevron.png b/website_webar_product/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/chevron.png differ diff --git a/website_webar_product/static/description/assets/icons/cogs.png b/website_webar_product/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/cogs.png differ diff --git a/website_webar_product/static/description/assets/icons/consultation.png b/website_webar_product/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/website_webar_product/static/description/assets/icons/consultation.png differ diff --git a/website_webar_product/static/description/assets/icons/ecom-black.png b/website_webar_product/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/ecom-black.png differ diff --git a/website_webar_product/static/description/assets/icons/education-black.png b/website_webar_product/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/website_webar_product/static/description/assets/icons/education-black.png differ diff --git a/website_webar_product/static/description/assets/icons/hotel-black.png b/website_webar_product/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/website_webar_product/static/description/assets/icons/hotel-black.png differ diff --git a/website_webar_product/static/description/assets/icons/img.png b/website_webar_product/static/description/assets/icons/img.png new file mode 100644 index 000000000..70197f477 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/img.png differ diff --git a/website_webar_product/static/description/assets/icons/license.png b/website_webar_product/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/website_webar_product/static/description/assets/icons/license.png differ diff --git a/website_webar_product/static/description/assets/icons/lifebuoy.png b/website_webar_product/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/website_webar_product/static/description/assets/icons/lifebuoy.png differ diff --git a/website_webar_product/static/description/assets/icons/manufacturing-black.png b/website_webar_product/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/website_webar_product/static/description/assets/icons/manufacturing-black.png differ diff --git a/website_webar_product/static/description/assets/icons/photo-capture.png b/website_webar_product/static/description/assets/icons/photo-capture.png new file mode 100644 index 000000000..06c111758 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/photo-capture.png differ diff --git a/website_webar_product/static/description/assets/icons/pos-black.png b/website_webar_product/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/pos-black.png differ diff --git a/website_webar_product/static/description/assets/icons/puzzle.png b/website_webar_product/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/puzzle.png differ diff --git a/website_webar_product/static/description/assets/icons/restaurant-black.png b/website_webar_product/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/restaurant-black.png differ diff --git a/website_webar_product/static/description/assets/icons/service-black.png b/website_webar_product/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/website_webar_product/static/description/assets/icons/service-black.png differ diff --git a/website_webar_product/static/description/assets/icons/trading-black.png b/website_webar_product/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/website_webar_product/static/description/assets/icons/trading-black.png differ diff --git a/website_webar_product/static/description/assets/icons/training.png b/website_webar_product/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/website_webar_product/static/description/assets/icons/training.png differ diff --git a/website_webar_product/static/description/assets/icons/update.png b/website_webar_product/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/website_webar_product/static/description/assets/icons/update.png differ diff --git a/website_webar_product/static/description/assets/icons/user.png b/website_webar_product/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/website_webar_product/static/description/assets/icons/user.png differ diff --git a/website_webar_product/static/description/assets/icons/wrench.png b/website_webar_product/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/website_webar_product/static/description/assets/icons/wrench.png differ diff --git a/website_webar_product/static/description/assets/misc/Cybrosys R.png b/website_webar_product/static/description/assets/misc/Cybrosys R.png new file mode 100644 index 000000000..da4058087 Binary files /dev/null and b/website_webar_product/static/description/assets/misc/Cybrosys R.png differ diff --git a/website_webar_product/static/description/assets/misc/email.svg b/website_webar_product/static/description/assets/misc/email.svg new file mode 100644 index 000000000..15291cdc3 --- /dev/null +++ b/website_webar_product/static/description/assets/misc/email.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/website_webar_product/static/description/assets/misc/phone.svg b/website_webar_product/static/description/assets/misc/phone.svg new file mode 100644 index 000000000..b7bd7f251 --- /dev/null +++ b/website_webar_product/static/description/assets/misc/phone.svg @@ -0,0 +1,3 @@ + + + diff --git a/website_webar_product/static/description/assets/misc/star (1) 2.svg b/website_webar_product/static/description/assets/misc/star (1) 2.svg new file mode 100644 index 000000000..5ae9f507a --- /dev/null +++ b/website_webar_product/static/description/assets/misc/star (1) 2.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/website_webar_product/static/description/assets/misc/support (1) 1.svg b/website_webar_product/static/description/assets/misc/support (1) 1.svg new file mode 100644 index 000000000..7d37a8f30 --- /dev/null +++ b/website_webar_product/static/description/assets/misc/support (1) 1.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/website_webar_product/static/description/assets/misc/support-email.svg b/website_webar_product/static/description/assets/misc/support-email.svg new file mode 100644 index 000000000..eb70370d6 --- /dev/null +++ b/website_webar_product/static/description/assets/misc/support-email.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/website_webar_product/static/description/assets/misc/tick-mark.svg b/website_webar_product/static/description/assets/misc/tick-mark.svg new file mode 100644 index 000000000..2dbb40187 --- /dev/null +++ b/website_webar_product/static/description/assets/misc/tick-mark.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/website_webar_product/static/description/assets/misc/whatsapp 1.svg b/website_webar_product/static/description/assets/misc/whatsapp 1.svg new file mode 100644 index 000000000..0bfaf8fc6 --- /dev/null +++ b/website_webar_product/static/description/assets/misc/whatsapp 1.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/website_webar_product/static/description/assets/misc/whatsapp.svg b/website_webar_product/static/description/assets/misc/whatsapp.svg new file mode 100644 index 000000000..b618aea1d --- /dev/null +++ b/website_webar_product/static/description/assets/misc/whatsapp.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/website_webar_product/static/description/assets/modules/1.jpg b/website_webar_product/static/description/assets/modules/1.jpg new file mode 100644 index 000000000..08bbafeb6 Binary files /dev/null and b/website_webar_product/static/description/assets/modules/1.jpg differ diff --git a/website_webar_product/static/description/assets/modules/2.png b/website_webar_product/static/description/assets/modules/2.png new file mode 100644 index 000000000..66730082c Binary files /dev/null and b/website_webar_product/static/description/assets/modules/2.png differ diff --git a/website_webar_product/static/description/assets/modules/3.jpg b/website_webar_product/static/description/assets/modules/3.jpg new file mode 100644 index 000000000..3d171226b Binary files /dev/null and b/website_webar_product/static/description/assets/modules/3.jpg differ diff --git a/website_webar_product/static/description/assets/modules/4.jpg b/website_webar_product/static/description/assets/modules/4.jpg new file mode 100644 index 000000000..1f3f2e27f Binary files /dev/null and b/website_webar_product/static/description/assets/modules/4.jpg differ diff --git a/website_webar_product/static/description/assets/modules/5.jpg b/website_webar_product/static/description/assets/modules/5.jpg new file mode 100644 index 000000000..0db717519 Binary files /dev/null and b/website_webar_product/static/description/assets/modules/5.jpg differ diff --git a/website_webar_product/static/description/assets/modules/6.jpg b/website_webar_product/static/description/assets/modules/6.jpg new file mode 100644 index 000000000..cd62a577c Binary files /dev/null and b/website_webar_product/static/description/assets/modules/6.jpg differ diff --git a/website_webar_product/static/description/assets/screenshots/1.png b/website_webar_product/static/description/assets/screenshots/1.png new file mode 100644 index 000000000..1b8f34fa5 Binary files /dev/null and b/website_webar_product/static/description/assets/screenshots/1.png differ diff --git a/website_webar_product/static/description/assets/screenshots/2.png b/website_webar_product/static/description/assets/screenshots/2.png new file mode 100644 index 000000000..06d50fedc Binary files /dev/null and b/website_webar_product/static/description/assets/screenshots/2.png differ diff --git a/website_webar_product/static/description/assets/screenshots/3.png b/website_webar_product/static/description/assets/screenshots/3.png new file mode 100644 index 000000000..be46fa423 Binary files /dev/null and b/website_webar_product/static/description/assets/screenshots/3.png differ diff --git a/website_webar_product/static/description/assets/screenshots/4.png b/website_webar_product/static/description/assets/screenshots/4.png new file mode 100644 index 000000000..534ffa658 Binary files /dev/null and b/website_webar_product/static/description/assets/screenshots/4.png differ diff --git a/website_webar_product/static/description/assets/screenshots/5.jpg b/website_webar_product/static/description/assets/screenshots/5.jpg new file mode 100644 index 000000000..37514c96b Binary files /dev/null and b/website_webar_product/static/description/assets/screenshots/5.jpg differ diff --git a/website_webar_product/static/description/assets/screenshots/6.jpg b/website_webar_product/static/description/assets/screenshots/6.jpg new file mode 100644 index 000000000..275690059 Binary files /dev/null and b/website_webar_product/static/description/assets/screenshots/6.jpg differ diff --git a/website_webar_product/static/description/assets/screenshots/hero.gif b/website_webar_product/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..0ac40b9d4 Binary files /dev/null and b/website_webar_product/static/description/assets/screenshots/hero.gif differ diff --git a/website_webar_product/static/description/banner.jpg b/website_webar_product/static/description/banner.jpg new file mode 100644 index 000000000..11e60b221 Binary files /dev/null and b/website_webar_product/static/description/banner.jpg differ diff --git a/website_webar_product/static/description/icon.png b/website_webar_product/static/description/icon.png new file mode 100644 index 000000000..7d19a5743 Binary files /dev/null and b/website_webar_product/static/description/icon.png differ diff --git a/website_webar_product/static/description/index.html b/website_webar_product/static/description/index.html new file mode 100644 index 000000000..d7b95cd2b --- /dev/null +++ b/website_webar_product/static/description/index.html @@ -0,0 +1,814 @@ + + + + + + + Odoo App 3 Index + + + + + + + + +
+
+
+
+
+ +
+
+
+ Community +
+
+ Enterprise +
+
+ Odoo.sh +
+
+
+
+
+
+

Website WebAR Product Viewer

+

+ Realistic View Of The Product In Website. +

+
+ +
+
+
+
+
+

+ Key Highlights +

+
+
+
+
+
+ +
+
+

+ Show AR product images in the website. +

+
+
+
+
+
+
+ +
+
+

+ View AR image on the latest android smartphones + and tablets.

+
+
+
+
+
+
+ +
+
+

+ Allow customers to view products from all + angles, including top, bottom, front, back, and + sides.

+
+
+
+
+
+
+ +
+
+

+ Tracking the mobile device's position as it + moves and developing its own view of the real + environment.

+
+
+
+
+
+
+ +
+
+

+ Allow customer to zoom the product image.

+
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+

+ Go to the Product form - > You will see a + new page called 'AR Image.'. Enable the + 'Enable AR Images' field to show AR images + on the website. You can provide a URL for + the image or upload an image in GLB/GLTF + format. +

+
+
+
+
+
+
+ +
+
+

+ Enable 'Auto Rotate' to rotate the AR model + on the website. Set the AR scale of the + model. Upload a poster image to view the + image in the product indicator on the + website product page. +

+
+
+
+
+
+
+ +
+
+

+ Go to the product page on the website and + click on the product indicator.

+
+
+
+
+
+
+ +
+
+

+ You can see the 3-D image of the + product.

+
+
+
+
+
+
+ +
+
+

+ In the mobile view, Click the button "View + in AR".

+
+
+
+
+
+
+ +
+
+

+ It will open the camera on the device, + giving customers a realistic view of the + product and showing how it will look in + real-life environments. +

+
+
+
+
+
+
+
    +
  • + Show AR product + images in the website. +
  • +
  • + View AR image on + the latest android smartphones and tablets. +
  • +
  • + Allow customers + to view products from all angles, including top, + bottom, front, back, and sides. +
  • +
  • + + Tracking the mobile device's position as it + moves and developing its own view of the real + environment. +
  • +
  • + Allow customer + to zoom the product image. +
  • +
+
+
+
+
+
+
Version + 17.0.1.0.0|Released on:27th March 2024 +
+

+ Initial Commit for Website WebAR Product + Viewer.

+
+
+
+
+
+
+
+

+ Related Products

+
+
+ +
+
+

+ Our Services

+ +
+
+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Customization

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Implementation

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Support

+
+
+
+
+
+
+ service-icon +
+
+

Hire + Odoo Developer

+
+
+
+
+ +
+
+ service-icon +
+
+

Odoo + Integration

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Migration

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Consultancy

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Implementation

+
+
+
+
+
+
+ service-icon +
+
+

Odoo + Licensing Consultancy

+
+
+
+
+
+
+

+ Our Industries

+ +
+
+
+
+
+
+ +

Trading

+

Easily procure and sell your products

+
+
+
+
+ +

POS

+

Easy configuration and convivial experience

+
+
+
+
+ +

+ Education

+

A platform for educational management

+
+
+
+
+ +

+ Manufacturing

+

Plan, track and schedule your operations

+
+
+
+
+ +

E-commerce & + Website

+

Mobile friendly, awe-inspiring product pages

+
+
+
+
+ +

Service + Management

+

Keep track of services and invoice

+
+
+
+
+ +

+ Restaurant

+

Run your bar or restaurant methodically

+
+
+
+
+ +

Hotel + Management

+

An all-inclusive hotel management application

+
+
+
+
+
+
+

+ Support

+
+
+
+
+
+
+
+ +
+ Need + Help? +

Got + questions or need help? Get in touch.

+
odoo@cybrosys.com +
+
+
+
+
+
+
+
+ +
+ WhatsApp +

Say hi to + us on WhatsApp!

+
+91 + 99456767686 +
+
+
+
+
+
+
+
+
+ + + + + + diff --git a/website_webar_product/static/src/css/website_product_view.css b/website_webar_product/static/src/css/website_product_view.css new file mode 100644 index 000000000..3534b4dec --- /dev/null +++ b/website_webar_product/static/src/css/website_product_view.css @@ -0,0 +1,8 @@ +#model-viewer { + width:100%; + height:400px; +} +#custom-ar-button{ + position: absolute; + bottom: 0px; +} diff --git a/website_webar_product/static/src/img/Chair.glb b/website_webar_product/static/src/img/Chair.glb new file mode 100644 index 000000000..d1a9bb0ac Binary files /dev/null and b/website_webar_product/static/src/img/Chair.glb differ diff --git a/website_webar_product/static/src/img/Chair.png b/website_webar_product/static/src/img/Chair.png new file mode 100644 index 000000000..8d2f620fb Binary files /dev/null and b/website_webar_product/static/src/img/Chair.png differ diff --git a/website_webar_product/static/src/img/augmented-reality.png b/website_webar_product/static/src/img/augmented-reality.png new file mode 100644 index 000000000..f25c4195b Binary files /dev/null and b/website_webar_product/static/src/img/augmented-reality.png differ diff --git a/website_webar_product/static/src/img/hand.png b/website_webar_product/static/src/img/hand.png new file mode 100644 index 000000000..6e56ad167 Binary files /dev/null and b/website_webar_product/static/src/img/hand.png differ diff --git a/website_webar_product/static/src/js/website_product_view.js b/website_webar_product/static/src/js/website_product_view.js new file mode 100644 index 000000000..4e590ae54 --- /dev/null +++ b/website_webar_product/static/src/js/website_product_view.js @@ -0,0 +1,40 @@ +/** @odoo-module **/ + +import publicWidget from "@web/legacy/js/public/public_widget"; +import { jsonrpc } from "@web/core/network/rpc_service"; + +//Extending publicWidget +publicWidget.registry.product_detail_view_3d = publicWidget.Widget.extend({ + selector: '.o_wsale_product_page', + events: { + 'click .product_images':'_arViewBtn', + }, +// Function to see the AR image of the product + _arViewBtn:function (ev){ + var self = this; + ev.preventDefault(); + if (this.$(ev.currentTarget).data('type') == "3d"){ + this.$('.o_carousel_product_outer').hide() + this.$('#product_main').show() + jsonrpc('/product/ar_image', { + 'product_id': parseInt(ev.currentTarget.id), + }).then(function(data) { + self.data = data + var ar_image = data['type'] === 'url' ? data['ar_url'] : data['local_url']; + const autoRotateAttribute = data['auto_rotate'] ? 'auto-rotate = ""' : ''; + const placementAttribute = data['ar_placement'] + const scaleAttribute = data['ar_scale'] ; + self.$('#product_main').html(` + + `) + }); + }else{ + this.$('.o_carousel_product_outer').show() + this.$('#product_main').hide() + } + }, +}); +export default publicWidget.registry.product_detail_view_3d; + diff --git a/website_webar_product/views/product_template_views.xml b/website_webar_product/views/product_template_views.xml new file mode 100644 index 000000000..2ed659831 --- /dev/null +++ b/website_webar_product/views/product_template_views.xml @@ -0,0 +1,38 @@ + + + + + product.template.view.form.inherit.website.webar.product + product.template + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/website_webar_product/views/website_sale_templates.xml b/website_webar_product/views/website_sale_templates.xml new file mode 100644 index 000000000..52fa27080 --- /dev/null +++ b/website_webar_product/views/website_sale_templates.xml @@ -0,0 +1,56 @@ + + + + + +