diff --git a/login_user_details_save/README.rst b/login_user_details_save/README.rst new file mode 100644 index 000000000..5496e4cb5 --- /dev/null +++ b/login_user_details_save/README.rst @@ -0,0 +1,49 @@ +.. image:: https://img.shields.io/badge/license-LGPL--3-green.svg + :target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html + :alt: License: LGPL-3 + +Save User's Login Info +======================= +This module allows us to Save User's Login Info For Odoo 17. + +Configuration +============= +* No additional configuration required + +Company +------- +* `Cybrosys Techno Solutions `__ + +License +------- +General Public License, Version 3 (LGPL v3). +(https://www.gnu.org/licenses/lgpl-3.0-standalone.html) + +Credits +------- +* Developer: (V17) Ashwin A, + (V16) Swaroop N P +* Contact: odoo@cybrosys.com + +Contacts +-------- +* Mail Contact : odoo@cybrosys.com +* Website : https://cybrosys.com + +Bug Tracker +----------- +Bugs are tracked on GitHub Issues. In case of trouble, please check there if +your issue has already been reported. + +Maintainer +========== +.. image:: https://cybrosys.com/images/logo.png + :target: https://cybrosys.com + +This module is maintained by Cybrosys Technologies. + +For support and more information, please visit `Our Website `__ + +Further information +=================== +HTML Description: ``__ diff --git a/login_user_details_save/__init__.py b/login_user_details_save/__init__.py new file mode 100644 index 000000000..50349d36a --- /dev/null +++ b/login_user_details_save/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# 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 . +# +############################################################################# +from . import controllers +from . import models diff --git a/login_user_details_save/__manifest__.py b/login_user_details_save/__manifest__.py new file mode 100644 index 000000000..b62ec9a30 --- /dev/null +++ b/login_user_details_save/__manifest__.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# 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 . +# +############################################################################# +{ + 'name': "Save User's Login Info", + 'version': '17.0.1.0.0', + 'category': 'Extra Tools', + 'summary': "Allows us to save our login info for easier access next time", + 'description': """ + This app allows us to save our login info , our name will be + displayed in login page and we can click on it and it automatically + fills our username. """, + 'author': "Cybrosys Techno Solutions", + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': "https://www.cybrosys.com", + 'depends': ['website', 'web'], + 'data': [ + 'security/ir.model.access.csv', + 'views/logout_popup_views.xml', + 'views/web_templates.xml', + ], + 'assets': { + 'web.assets_backend': [ + 'login_user_details_save/static/src/js/logout_replace.js', + ], + }, + 'images': ['static/description/banner.jpg'], + 'license': 'LGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, +} diff --git a/login_user_details_save/controllers/__init__.py b/login_user_details_save/controllers/__init__.py new file mode 100644 index 000000000..22b45d3af --- /dev/null +++ b/login_user_details_save/controllers/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# 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 . +# +############################################################################# +from . import login_user_details_save diff --git a/login_user_details_save/controllers/login_user_details_save.py b/login_user_details_save/controllers/login_user_details_save.py new file mode 100644 index 000000000..83b87cd1b --- /dev/null +++ b/login_user_details_save/controllers/login_user_details_save.py @@ -0,0 +1,131 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# 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 . +# +############################################################################# +import odoo +from odoo import http +from odoo.http import request +from odoo.tools.translate import _ +from odoo.addons.web.controllers.home import Home as Home +from odoo.addons.web.controllers.session import Session +from odoo.addons.web.controllers.utils import ensure_db + +# Shared parameters for all login/signup flows +SIGN_UP_REQUEST_PARAMS = {'db', 'login', 'debug', 'token', 'message', 'error', + 'scope', 'mode', + 'redirect', 'redirect_hostname', 'email', 'name', + 'partner_id', + 'password', 'confirm_password', 'city', 'country_id', + 'lang'} + + +class SessionWebsite(Session): + """Extended session controller for website-related operation""" + + @http.route('/web/session/logout_popup', type='http', auth="public", + website=True) + def logout_popup(self): + """Render the logout popup template""" + login_details = request.env['logout.popup'].search( + [('user_id', '=', int(request.uid))]) + values = { + 'login_details': login_details.save_details if login_details + else False + } + return request.render('login_user_details_save.logout_popup_template', + values) + + @http.route('/web/session/save_logout', type='http', auth="public", + website=True, csrf=False) + def save_logout_details(self, **post): + """Save user details when 'save login details' checkbox is checked""" + login_name = request.env.user.login + logout_details_obj = request.env['logout.popup'] + record = logout_details_obj.search( + [('user_id', '=', request.uid)]) + if post.get('rememberMeCheckbox') and not record: + logout_details_obj.create({ + 'name': login_name, + 'save_details': True, + 'user_id': request.uid + }) + if record and not post.get('rememberMeCheckbox'): + record.unlink() + return request.redirect('/web/session/logout') + + +class WebHome(Home): + """Extended Home controller for login-related operations""" + + def web_login(self, redirect=None, **kw): + ensure_db() + request.params['login_success'] = False + + if request.httprequest.method == 'GET' and redirect and request.session.uid: + return request.redirect(redirect) + + # simulate hybrid auth=user/auth=public, despite using auth=none to be able + # to redirect users when no db is selected - cfr ensure_db() + if not request.uid: + public_user = request.env.ref('base.public_user') + request.update_env(user=public_user.id) + values = {k: v for k, v in request.params.items() if + k in SIGN_UP_REQUEST_PARAMS} + try: + values['databases'] = http.db_list() + except odoo.exceptions.AccessDenied: + values['databases'] = None + if request.httprequest.method == 'POST': + try: + uid = request.session.authenticate(request.db, + request.params['login'], + request.params['password']) + request.params['login_success'] = True + return request.redirect( + self._login_redirect(uid, redirect=redirect)) + except odoo.exceptions.AccessDenied as e: + if e.args == odoo.exceptions.AccessDenied().args: + values['error'] = _("Wrong login/password") + else: + values['error'] = e.args[0] + else: + if 'error' in request.params and request.params.get( + 'error') == 'access': + values['error'] = _( + 'Only employees can access this database. Please contact the administrator.') + if 'login' not in values and request.session.get('auth_login'): + values['login'] = request.session.get('auth_login') + + if not odoo.tools.config['list_db']: + values['disable_database_manager'] = True + conf_param = request.env['ir.config_parameter'].sudo() + base_url = conf_param.get_param('web.base.url') + log_data_list = [] + for log_data in request.env['logout.popup'].search([]): + log_data_list.append([log_data.name, base_url + + '/web/image?' + + 'model=res.users&id=' + + str(log_data.user_id.id) + + '&field=image_1920', log_data.user_id.name]) + values['login_data'] = log_data_list + response = request.render('web.login', values) + response.headers['X-Frame-Options'] = 'SAMEORIGIN' + response.headers['Content-Security-Policy'] = "frame-ancestors 'self'" + return response diff --git a/login_user_details_save/doc/RELEASE_NOTES.md b/login_user_details_save/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..fb720fe33 --- /dev/null +++ b/login_user_details_save/doc/RELEASE_NOTES.md @@ -0,0 +1,6 @@ +## Module + +#### 22.04.2024 +#### Version 17.0.1.0.0 +#### ADD +- Initial Commit for Save User's Login Info diff --git a/login_user_details_save/models/__init__.py b/login_user_details_save/models/__init__.py new file mode 100644 index 000000000..793339834 --- /dev/null +++ b/login_user_details_save/models/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# 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 . +# +############################################################################# +from . import logout_popup diff --git a/login_user_details_save/models/logout_popup.py b/login_user_details_save/models/logout_popup.py new file mode 100644 index 000000000..930a55240 --- /dev/null +++ b/login_user_details_save/models/logout_popup.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2024-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# 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 . +# +############################################################################# +from odoo import fields, models + + +class LogoutPopup(models.Model): + """Model for checking if user wants to save his login details""" + _name = "logout.popup" + _description = "Logout Popup" + + name = fields.Char(string="Name", default="name", + help="This is the name field") + save_details = fields.Boolean(default=False, + string="Save Login Details ?", + help="Boolean field to save login details if enabled") + user_id = fields.Many2one('res.users', string='User', + help="ID of the user whose login details must be saved") diff --git a/login_user_details_save/security/ir.model.access.csv b/login_user_details_save/security/ir.model.access.csv new file mode 100644 index 000000000..0eb29600b --- /dev/null +++ b/login_user_details_save/security/ir.model.access.csv @@ -0,0 +1,4 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_login_user_details_save.access_logout_popup_user,access_logout_popup,login_user_details_save.model_logout_popup,base.group_user,1,1,1,1 +access_login_user_details_save.access_logout_popup_portal,access_logout_popup,login_user_details_save.model_logout_popup,base.group_portal,1,1,1,1 +access_login_user_details_save.access_logout_popup_public,access_logout_popup,login_user_details_save.model_logout_popup,base.group_public,1,1,1,1 diff --git a/login_user_details_save/static/description/assets/icons/capture (1).png b/login_user_details_save/static/description/assets/icons/capture (1).png new file mode 100644 index 000000000..8824deafc Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/capture (1).png differ diff --git a/login_user_details_save/static/description/assets/icons/check.png b/login_user_details_save/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/check.png differ diff --git a/login_user_details_save/static/description/assets/icons/chevron.png b/login_user_details_save/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/chevron.png differ diff --git a/login_user_details_save/static/description/assets/icons/cogs.png b/login_user_details_save/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/cogs.png differ diff --git a/login_user_details_save/static/description/assets/icons/consultation.png b/login_user_details_save/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/consultation.png differ diff --git a/login_user_details_save/static/description/assets/icons/ecom-black.png b/login_user_details_save/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/ecom-black.png differ diff --git a/login_user_details_save/static/description/assets/icons/education-black.png b/login_user_details_save/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/education-black.png differ diff --git a/login_user_details_save/static/description/assets/icons/hotel-black.png b/login_user_details_save/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/hotel-black.png differ diff --git a/login_user_details_save/static/description/assets/icons/img.png b/login_user_details_save/static/description/assets/icons/img.png new file mode 100644 index 000000000..70197f477 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/img.png differ diff --git a/login_user_details_save/static/description/assets/icons/license.png b/login_user_details_save/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/license.png differ diff --git a/login_user_details_save/static/description/assets/icons/lifebuoy.png b/login_user_details_save/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/lifebuoy.png differ diff --git a/login_user_details_save/static/description/assets/icons/manufacturing-black.png b/login_user_details_save/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/manufacturing-black.png differ diff --git a/login_user_details_save/static/description/assets/icons/photo-capture.png b/login_user_details_save/static/description/assets/icons/photo-capture.png new file mode 100644 index 000000000..06c111758 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/photo-capture.png differ diff --git a/login_user_details_save/static/description/assets/icons/pos-black.png b/login_user_details_save/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/pos-black.png differ diff --git a/login_user_details_save/static/description/assets/icons/puzzle.png b/login_user_details_save/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/puzzle.png differ diff --git a/login_user_details_save/static/description/assets/icons/restaurant-black.png b/login_user_details_save/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/restaurant-black.png differ diff --git a/login_user_details_save/static/description/assets/icons/service-black.png b/login_user_details_save/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/service-black.png differ diff --git a/login_user_details_save/static/description/assets/icons/trading-black.png b/login_user_details_save/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/trading-black.png differ diff --git a/login_user_details_save/static/description/assets/icons/training.png b/login_user_details_save/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/training.png differ diff --git a/login_user_details_save/static/description/assets/icons/update.png b/login_user_details_save/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/update.png differ diff --git a/login_user_details_save/static/description/assets/icons/user.png b/login_user_details_save/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/user.png differ diff --git a/login_user_details_save/static/description/assets/icons/wrench.png b/login_user_details_save/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/login_user_details_save/static/description/assets/icons/wrench.png differ diff --git a/login_user_details_save/static/description/assets/misc/Cybrosys R.png b/login_user_details_save/static/description/assets/misc/Cybrosys R.png new file mode 100644 index 000000000..da4058087 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/Cybrosys R.png differ diff --git a/login_user_details_save/static/description/assets/misc/categories.png b/login_user_details_save/static/description/assets/misc/categories.png new file mode 100644 index 000000000..bedf1e0b1 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/categories.png differ diff --git a/login_user_details_save/static/description/assets/misc/check-box.png b/login_user_details_save/static/description/assets/misc/check-box.png new file mode 100644 index 000000000..42caf24b9 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/check-box.png differ diff --git a/login_user_details_save/static/description/assets/misc/compass.png b/login_user_details_save/static/description/assets/misc/compass.png new file mode 100644 index 000000000..d5fed8faa Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/compass.png differ diff --git a/login_user_details_save/static/description/assets/misc/corporate.png b/login_user_details_save/static/description/assets/misc/corporate.png new file mode 100644 index 000000000..2eb13edbf Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/corporate.png differ diff --git a/login_user_details_save/static/description/assets/misc/customer-support.png b/login_user_details_save/static/description/assets/misc/customer-support.png new file mode 100644 index 000000000..79efc72ed Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/customer-support.png differ diff --git a/login_user_details_save/static/description/assets/misc/cybrosys-logo.png b/login_user_details_save/static/description/assets/misc/cybrosys-logo.png new file mode 100644 index 000000000..cc3cc0ccf Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/cybrosys-logo.png differ diff --git a/login_user_details_save/static/description/assets/misc/email.svg b/login_user_details_save/static/description/assets/misc/email.svg new file mode 100644 index 000000000..15291cdc3 --- /dev/null +++ b/login_user_details_save/static/description/assets/misc/email.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/login_user_details_save/static/description/assets/misc/features.png b/login_user_details_save/static/description/assets/misc/features.png new file mode 100644 index 000000000..b41769f77 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/features.png differ diff --git a/login_user_details_save/static/description/assets/misc/logo.png b/login_user_details_save/static/description/assets/misc/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/logo.png differ diff --git a/login_user_details_save/static/description/assets/misc/phone.svg b/login_user_details_save/static/description/assets/misc/phone.svg new file mode 100644 index 000000000..b7bd7f251 --- /dev/null +++ b/login_user_details_save/static/description/assets/misc/phone.svg @@ -0,0 +1,3 @@ + + + diff --git a/login_user_details_save/static/description/assets/misc/pictures.png b/login_user_details_save/static/description/assets/misc/pictures.png new file mode 100644 index 000000000..56d255fe9 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/pictures.png differ diff --git a/login_user_details_save/static/description/assets/misc/pie-chart.png b/login_user_details_save/static/description/assets/misc/pie-chart.png new file mode 100644 index 000000000..426e05244 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/pie-chart.png differ diff --git a/login_user_details_save/static/description/assets/misc/right-arrow.png b/login_user_details_save/static/description/assets/misc/right-arrow.png new file mode 100644 index 000000000..730984a06 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/right-arrow.png differ diff --git a/login_user_details_save/static/description/assets/misc/star (1) 2.svg b/login_user_details_save/static/description/assets/misc/star (1) 2.svg new file mode 100644 index 000000000..5ae9f507a --- /dev/null +++ b/login_user_details_save/static/description/assets/misc/star (1) 2.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/login_user_details_save/static/description/assets/misc/star.png b/login_user_details_save/static/description/assets/misc/star.png new file mode 100644 index 000000000..2eb9ab29f Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/star.png differ diff --git a/login_user_details_save/static/description/assets/misc/support (1) 1.svg b/login_user_details_save/static/description/assets/misc/support (1) 1.svg new file mode 100644 index 000000000..7d37a8f30 --- /dev/null +++ b/login_user_details_save/static/description/assets/misc/support (1) 1.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/login_user_details_save/static/description/assets/misc/support-email.svg b/login_user_details_save/static/description/assets/misc/support-email.svg new file mode 100644 index 000000000..eb70370d6 --- /dev/null +++ b/login_user_details_save/static/description/assets/misc/support-email.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/login_user_details_save/static/description/assets/misc/support.png b/login_user_details_save/static/description/assets/misc/support.png new file mode 100644 index 000000000..4f18b8b82 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/support.png differ diff --git a/login_user_details_save/static/description/assets/misc/tick-mark.svg b/login_user_details_save/static/description/assets/misc/tick-mark.svg new file mode 100644 index 000000000..2dbb40187 --- /dev/null +++ b/login_user_details_save/static/description/assets/misc/tick-mark.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/login_user_details_save/static/description/assets/misc/whatsapp 1.svg b/login_user_details_save/static/description/assets/misc/whatsapp 1.svg new file mode 100644 index 000000000..0bfaf8fc6 --- /dev/null +++ b/login_user_details_save/static/description/assets/misc/whatsapp 1.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/login_user_details_save/static/description/assets/misc/whatsapp.png b/login_user_details_save/static/description/assets/misc/whatsapp.png new file mode 100644 index 000000000..d513a5356 Binary files /dev/null and b/login_user_details_save/static/description/assets/misc/whatsapp.png differ diff --git a/login_user_details_save/static/description/assets/misc/whatsapp.svg b/login_user_details_save/static/description/assets/misc/whatsapp.svg new file mode 100644 index 000000000..b618aea1d --- /dev/null +++ b/login_user_details_save/static/description/assets/misc/whatsapp.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/login_user_details_save/static/description/assets/modules/1.png b/login_user_details_save/static/description/assets/modules/1.png new file mode 100644 index 000000000..d05b1744e Binary files /dev/null and b/login_user_details_save/static/description/assets/modules/1.png differ diff --git a/login_user_details_save/static/description/assets/modules/2.png b/login_user_details_save/static/description/assets/modules/2.png new file mode 100644 index 000000000..10c9f3807 Binary files /dev/null and b/login_user_details_save/static/description/assets/modules/2.png differ diff --git a/login_user_details_save/static/description/assets/modules/3.png b/login_user_details_save/static/description/assets/modules/3.png new file mode 100644 index 000000000..d7ef56df4 Binary files /dev/null and b/login_user_details_save/static/description/assets/modules/3.png differ diff --git a/login_user_details_save/static/description/assets/modules/4.png b/login_user_details_save/static/description/assets/modules/4.png new file mode 100644 index 000000000..67c7f7062 Binary files /dev/null and b/login_user_details_save/static/description/assets/modules/4.png differ diff --git a/login_user_details_save/static/description/assets/modules/5.png b/login_user_details_save/static/description/assets/modules/5.png new file mode 100644 index 000000000..3bedf7981 Binary files /dev/null and b/login_user_details_save/static/description/assets/modules/5.png differ diff --git a/login_user_details_save/static/description/assets/modules/6.png b/login_user_details_save/static/description/assets/modules/6.png new file mode 100644 index 000000000..164eb62c7 Binary files /dev/null and b/login_user_details_save/static/description/assets/modules/6.png differ diff --git a/login_user_details_save/static/description/assets/screenshots/1.png b/login_user_details_save/static/description/assets/screenshots/1.png new file mode 100644 index 000000000..540d0d7ed Binary files /dev/null and b/login_user_details_save/static/description/assets/screenshots/1.png differ diff --git a/login_user_details_save/static/description/assets/screenshots/2.png b/login_user_details_save/static/description/assets/screenshots/2.png new file mode 100644 index 000000000..6c0a5a3e0 Binary files /dev/null and b/login_user_details_save/static/description/assets/screenshots/2.png differ diff --git a/login_user_details_save/static/description/assets/screenshots/3.png b/login_user_details_save/static/description/assets/screenshots/3.png new file mode 100644 index 000000000..9b5854635 Binary files /dev/null and b/login_user_details_save/static/description/assets/screenshots/3.png differ diff --git a/login_user_details_save/static/description/assets/screenshots/4.png b/login_user_details_save/static/description/assets/screenshots/4.png new file mode 100644 index 000000000..b6640b0ae Binary files /dev/null and b/login_user_details_save/static/description/assets/screenshots/4.png differ diff --git a/login_user_details_save/static/description/assets/screenshots/5.png b/login_user_details_save/static/description/assets/screenshots/5.png new file mode 100644 index 000000000..3092ab6ea Binary files /dev/null and b/login_user_details_save/static/description/assets/screenshots/5.png differ diff --git a/login_user_details_save/static/description/assets/screenshots/hero.png b/login_user_details_save/static/description/assets/screenshots/hero.png new file mode 100644 index 000000000..309e94307 Binary files /dev/null and b/login_user_details_save/static/description/assets/screenshots/hero.png differ diff --git a/login_user_details_save/static/description/banner.jpg b/login_user_details_save/static/description/banner.jpg new file mode 100644 index 000000000..59eff56ce Binary files /dev/null and b/login_user_details_save/static/description/banner.jpg differ diff --git a/login_user_details_save/static/description/icon.png b/login_user_details_save/static/description/icon.png new file mode 100644 index 000000000..252a5d558 Binary files /dev/null and b/login_user_details_save/static/description/icon.png differ diff --git a/login_user_details_save/static/description/index.html b/login_user_details_save/static/description/index.html new file mode 100644 index 000000000..c6678b8e2 --- /dev/null +++ b/login_user_details_save/static/description/index.html @@ -0,0 +1,727 @@ + + + + + + + Odoo App 3 Index + + + + + + + + +
+
+
+
+
+ +
+
+
+ Community +
+
+ Enterprise +
+
+
+
+
+
+

Save User's Login Info

+

+ This app allows us to save our login info, our name will be displayed in login page, and we can click on it, and it automatically fills our username +

+
+ +
+
+
+
+
+

+ Key Highlights +

+
+
+
+
+
+ +
+
+

+ Prevents accidental logout +

+
+
+
+
+
+
+ +
+
+

+ We can save our login details +

+
+
+
+
+
+
+ +
+
+

+ We can remove this saved login details +

+
+
+
+
+
+
+ +
+
+

+ Supported in Community and Enterprise +

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

+ Prevents accidental logout +

+

+ In this app the logout button doesn't log you out instantly, instead it asks for logout confirmation +

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

+ We can save our login details +

+

+ With the help of this app we can save our login details using the prompt that appears when we click logout, we can enable the 'save login details' checkbox to save our details and we can click save & logout to logout +

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

+ We can also delete our saved login details +

+

+ We can delete our saved login details by unchecking the 'save login details' checkbox. +

+
+
+
+
+
+
+
    +
  • + Prevents accidental logout +
  • +
  • + We can save our login details +
  • +
  • + We can remove this saved login details +
  • +
  • + Available in Odoo 17.0 Community & Enterprise +
  • +
+
+
+
+
+
+
Version + 17.0.1.0.0|Released on: 22nd April 2024 +
+

+ Initial Commit for Save User's Login Info.

+
+
+
+
+
+
+
+

+ 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/login_user_details_save/static/src/js/logout_replace.js b/login_user_details_save/static/src/js/logout_replace.js new file mode 100644 index 000000000..78a993668 --- /dev/null +++ b/login_user_details_save/static/src/js/logout_replace.js @@ -0,0 +1,35 @@ +/** @odoo-module **/ +// Import necessary modules and functions +import {registry} from "@web/core/registry"; +import {browser} from "@web/core/browser/browser"; +import { _t } from "@web/core/l10n/translation"; + +// Get the user menu item registry + +const serviceRegistry = registry.category("services"); +const userMenuRegistry = registry.category("user_menuitems"); +const removeLogoutService = { + start() { + // Remove the existing log out menu item + userMenuRegistry.remove('log_out'); + }, +}; +serviceRegistry.add("remove_log_out", removeLogoutService); + +function logOutItemNew(env) { + const route = "/web/session/logout_popup"; + return { + type: "item", + id: "logout_new", + class: "btn btn-link", + description: _t("Log out"), + href: `${browser.location.origin}${route}`, + callback: () => { + browser.location.href = route; + }, + sequence: 70, + }; +} + +// Add the new log out menu item +registry.category("user_menuitems").add("logout", logOutItemNew) diff --git a/login_user_details_save/views/logout_popup_views.xml b/login_user_details_save/views/logout_popup_views.xml new file mode 100644 index 000000000..42cf05217 --- /dev/null +++ b/login_user_details_save/views/logout_popup_views.xml @@ -0,0 +1,35 @@ + + + + + logout.popup.view.form + logout.popup + + + +
+ + + + +
+
+
+ + + + Confirm Logout + ir.actions.act_window + logout.popup + new + form + + + + + + form + + + +
diff --git a/login_user_details_save/views/web_templates.xml b/login_user_details_save/views/web_templates.xml new file mode 100644 index 000000000..c6fd1b8b2 --- /dev/null +++ b/login_user_details_save/views/web_templates.xml @@ -0,0 +1,119 @@ + + + + + + + + + + + + + +