18 changed files with 857 additions and 0 deletions
			
			
		@ -0,0 +1,54 @@ | 
				
			|||||
 | 
					==================== | 
				
			||||
 | 
					POS Session Lock V11 | 
				
			||||
 | 
					==================== | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					This module allows pos user to lock pos screen. | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					Installation | 
				
			||||
 | 
					============ | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					- www.odoo.com/documentation/10.0/setup/install.html | 
				
			||||
 | 
					- Install our custom addon | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					Configuration | 
				
			||||
 | 
					============= | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					* Using the Boolean button in POS configuration you can enable screen lock. | 
				
			||||
 | 
					* Security pin for each pos user can be set from Point of Sale tab under Settings -> Users -> Users. | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					Features | 
				
			||||
 | 
					======== | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					* Screen lock option in POS session configuration. | 
				
			||||
 | 
					* Screen lock button in pos. | 
				
			||||
 | 
					* Lock screen using keyboard shortcut 'CTRL+L'. | 
				
			||||
 | 
					* Login/Unlock screen in pos. | 
				
			||||
 | 
					* Extra layer of security. | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					License | 
				
			||||
 | 
					======= | 
				
			||||
 | 
					GNU LESSER GENERAL PUBLIC LICENSE, Version 3 (LGPLv3) | 
				
			||||
 | 
					(http://www.gnu.org/licenses/agpl.html) | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					Bug Tracker | 
				
			||||
 | 
					=========== | 
				
			||||
 | 
					Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					Credits | 
				
			||||
 | 
					======= | 
				
			||||
 | 
					* Cybrosys Techno Solutions<https://www.cybrosys.com> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					Author | 
				
			||||
 | 
					------ | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					Developer: Aswani PC @ cybrosys, aswani@cybrosys.in | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					Maintainer | 
				
			||||
 | 
					---------- | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					This module is maintained by Cybrosys Technologies. | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					For support and more information, please visit https://www.cybrosys.com. | 
				
			||||
@ -0,0 +1,21 @@ | 
				
			|||||
 | 
					# -*- coding: utf-8 -*- | 
				
			||||
 | 
					################################################################################### | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    Cybrosys Technologies Pvt. Ltd. | 
				
			||||
 | 
					#    Copyright (C) 2017-TODAY Cybrosys Technologies(<https://www.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 <https://www.gnu.org/licenses/>. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					################################################################################### | 
				
			||||
 | 
					from . import models | 
				
			||||
@ -0,0 +1,42 @@ | 
				
			|||||
 | 
					# -*- coding: utf-8 -*- | 
				
			||||
 | 
					################################################################################### | 
				
			||||
 | 
					# | 
				
			||||
 | 
					#    Cybrosys Technologies Pvt. Ltd. | 
				
			||||
 | 
					#    Copyright (C) 2017-TODAY Cybrosys Technologies(<https://www.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 <https://www.gnu.org/licenses/>. | 
				
			||||
 | 
					# | 
				
			||||
 | 
					################################################################################### | 
				
			||||
 | 
					{ | 
				
			||||
 | 
					    'name': "POS Session Lock", | 
				
			||||
 | 
					    'version': '11.0.1.0.0', | 
				
			||||
 | 
					    'summary': """The Module Allows the POS User to Set Screen Lock for POS Screen""", | 
				
			||||
 | 
					    'description': """This module allows pos user to lock pos screen.""", | 
				
			||||
 | 
					    'author': "Cybrosys Techno Solutions", | 
				
			||||
 | 
					    'maintainer': 'Cybrosys Techno Solutions', | 
				
			||||
 | 
					    'company': "Cybrosys Techno Solutions", | 
				
			||||
 | 
					    'website': "https://www.cybrosys.com", | 
				
			||||
 | 
					    'category': 'Point of Sale', | 
				
			||||
 | 
					    'depends': ['point_of_sale'], | 
				
			||||
 | 
					    'data': [ | 
				
			||||
 | 
					        'views/pos_lock.xml', | 
				
			||||
 | 
					        'views/pos_templates.xml', | 
				
			||||
 | 
					    ], | 
				
			||||
 | 
					    'qweb': ['static/src/xml/session_lock.xml'], | 
				
			||||
 | 
					    'images': ['static/description/banner.jpg'], | 
				
			||||
 | 
					    'license': 'AGPL-3', | 
				
			||||
 | 
					    'installable': True, | 
				
			||||
 | 
					    'auto_install': False, | 
				
			||||
 | 
					    'application': False, | 
				
			||||
 | 
					} | 
				
			||||
@ -0,0 +1,3 @@ | 
				
			|||||
 | 
					# -*- coding: utf-8 -*- | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					from . import pos_lock | 
				
			||||
@ -0,0 +1,12 @@ | 
				
			|||||
 | 
					# -*- coding: utf-8 -*- | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					from odoo import models, fields | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					class PosLockConfig(models.Model): | 
				
			||||
 | 
					    _inherit = 'pos.config' | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    pos_lock = fields.Boolean(string='Enable Lock Screen') | 
				
			||||
 | 
					    bg_color = fields.Char('Background Color', default='rgb(218, 218, 218)', | 
				
			||||
 | 
					                           help='The background color of the lock screen, ' | 
				
			||||
 | 
					                                '(must be specified in a html-compatible format)') | 
				
			||||
| 
		 After Width: | Height: | Size: 89 KiB  | 
| 
		 After Width: | Height: | Size: 50 KiB  | 
| 
		 After Width: | Height: | Size: 34 KiB  | 
@ -0,0 +1,347 @@ | 
				
			|||||
 | 
					<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-header-banner.png); background-repeat:no-repeat; background-size:cover;padding: 13% 0% 25% 15%;"> | 
				
			||||
 | 
					    <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					        <h2 class="oe_slogan" style="font-size: 35px;color: #fff;font-weight: 900;text-transform: uppercase;text-align: left;margin: 0;margin-bottom: 16px;"> | 
				
			||||
 | 
					            POS Session Lock | 
				
			||||
 | 
					        </h2> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="font-size: 25px;color: #fff;font-weight: 600;text-align: left;opacity: 1;margin: 0 !important;"> | 
				
			||||
 | 
					           Lock Pos Screen | 
				
			||||
 | 
					        </h3> | 
				
			||||
 | 
					        <h5 class="oe_slogan" style="text-align: left;background: #fff;width: 293px;padding: 10px;color: #080808 !important;opacity: 1 !important;font-weight: 600;font-size: 20px;"> | 
				
			||||
 | 
					            <a style="color: #080808 !important;" href="https://www.cybrosys.com">Cybrosys Technologies</a> | 
				
			||||
 | 
					        </h5> | 
				
			||||
 | 
					        <a style="color: #080808 !important;" href="https://www.cybrosys.com" target="_blank"> | 
				
			||||
 | 
					            <div style="width: 215px;margin-left: 57%;text-align: center;background: #ffffff;height: 215px;border-radius: 100%;display: flex;justify-content: center;align-items: center;box-shadow: 0 0 12px 4px #00000059;"> | 
				
			||||
 | 
					                    <img src="https://www.cybrosys.com/images/cybro-logo-oca.png" alt="cybrosys technologies" style="width: 180px;"/>            </div> | 
				
			||||
 | 
					        </a> | 
				
			||||
 | 
					    </div> | 
				
			||||
 | 
					</section> | 
				
			||||
 | 
					<section class="oe_container" style="padding: 3% 0% 3% 15%;"> | 
				
			||||
 | 
					    <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					        <h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;"> | 
				
			||||
 | 
					            Overview | 
				
			||||
 | 
					        </h2> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;"> | 
				
			||||
 | 
					                    The module allows the POS user to set screen lock for his/her POS screen when it is left unattended. The lock feature will provide an extra layer security for individual POS. | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					    </div> | 
				
			||||
 | 
					</section> | 
				
			||||
 | 
					<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-banner.png); background-repeat:no-repeat; background-size:cover;padding: 19% 0% 30% 15%;"> | 
				
			||||
 | 
					    <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					        <h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;"> | 
				
			||||
 | 
					             Features | 
				
			||||
 | 
					        </h2> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;"> | 
				
			||||
 | 
					            <i class="fa fa-check" aria-hidden="true" style="color: #cd2d47;font-size: 15px;"></i> | 
				
			||||
 | 
					             Screen lock option in POS session configuration. | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;"> | 
				
			||||
 | 
					            <i class="fa fa-check" aria-hidden="true" style="color: #cd2d47;font-size: 15px;"></i> | 
				
			||||
 | 
					             Screen lock button in POS. | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;"> | 
				
			||||
 | 
					            <i class="fa fa-check" aria-hidden="true" style="color: #cd2d47;font-size: 15px;"></i> | 
				
			||||
 | 
					             Lock screen using keyboard shortcut 'CTRL+L'. | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;"> | 
				
			||||
 | 
					            <i class="fa fa-check" aria-hidden="true" style="color: #cd2d47;font-size: 15px;"></i> | 
				
			||||
 | 
					             Login/Unlock screen in pos. | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 18px;"> | 
				
			||||
 | 
					            <i class="fa fa-check" aria-hidden="true" style="color: #cd2d47;font-size: 15px;"></i> | 
				
			||||
 | 
					             Extra layer of security. | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					    </div> | 
				
			||||
 | 
					</section> | 
				
			||||
 | 
					<section class="oe_container" style="padding: 3% 0% 0% 15%;"> | 
				
			||||
 | 
					    <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					        <h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;"> | 
				
			||||
 | 
					            Screenshots | 
				
			||||
 | 
					        </h2> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;"> | 
				
			||||
 | 
					            <i class="fa fa-check" aria-hidden="true" style="color: #cd2d47;font-size: 15px;"></i> | 
				
			||||
 | 
					            Configuration | 
				
			||||
 | 
					            <h4> | 
				
			||||
 | 
					                Using the newly appeared Boolean button in POS configuration user can enable screen lock option. | 
				
			||||
 | 
					            </h4> | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					        <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					            <img src="pos_session_lock_01.png" alt="" style="width: 95%;"/> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;"> | 
				
			||||
 | 
					            <i class="fa fa-check" aria-hidden="true" style="color: #cd2d47;font-size: 15px;"></i> | 
				
			||||
 | 
					            Lock Screen | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					        <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					            <img src="pos_session_lock_02.png" alt="" style="width: 95%;"/> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					        <h3 class="oe_slogan" style="text-align: left;padding: 5% 0% 0% 0%;font-size: 16px;width: 90%;margin: 0;margin-top: 14px;color: #000 !important;opacity: 1 !important;line-height: 24px;"> | 
				
			||||
 | 
					            <i class="fa fa-check" aria-hidden="true" style="color: #cd2d47;font-size: 15px;"></i> | 
				
			||||
 | 
					            Login/Unlock Screen | 
				
			||||
 | 
					         </h3> | 
				
			||||
 | 
					        <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					            <img src="pos_session_lock_03.png" alt="" style="width: 95%;"/> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					    </div> | 
				
			||||
 | 
					</section> | 
				
			||||
 | 
					<section class="oe_container" style="padding: 1% 0% 0% 3%;"> | 
				
			||||
 | 
					    <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					        <h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;"> | 
				
			||||
 | 
					            Our Services | 
				
			||||
 | 
					        </h2> | 
				
			||||
 | 
					        <div style="display:flex;padding-top: 20px;justify-content: space-between;"> | 
				
			||||
 | 
					            <div style="flex-basis: 18%;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/odoo-customization.png" style="width: 100%;border-radius: 100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> | 
				
			||||
 | 
					                         <a href="https://www.cybrosys.com/odoo-customization-and-installation/" target="_blank"> | 
				
			||||
 | 
					                        Odoo Customization | 
				
			||||
 | 
					                         </a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					             <div style="flex-basis: 18%;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                <div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo-erp-implementation/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/odoo-erp-implementation.png" style="width: 100%;border-radius: 100%;"/> | 
				
			||||
 | 
					                        </a> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					                 <h3 class="oe_slogan" style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> | 
				
			||||
 | 
					                    <a href="https://www.cybrosys.com/odoo-erp-implementation/" target="_blank"> | 
				
			||||
 | 
					                        Odoo Implementation </a> | 
				
			||||
 | 
					                 </h3> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					             <div style="flex-basis: 18%;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                <div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"> | 
				
			||||
 | 
					                    <a href="https://www.cybrosys.com/odoo-erp-integration/" target="_blank"> | 
				
			||||
 | 
					                        <img src="https://www.cybrosys.com/images/odoo-erp-integration.png" style="width: 100%;border-radius: 100%;"/> | 
				
			||||
 | 
					                    </a> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					                 <h3 class="oe_slogan" style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> | 
				
			||||
 | 
					                    <a href="https://www.cybrosys.com/odoo-erp-integration/" target="_blank"> | 
				
			||||
 | 
					                        Odoo Integration | 
				
			||||
 | 
					                    </a> | 
				
			||||
 | 
					                 </h3> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					             <div style="flex-basis: 18%;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                <div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo-erp-support/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/odoo-erp-support.png" style="width: 100%;border-radius: 100%;"/> | 
				
			||||
 | 
					                        </a> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					                 <h3 class="oe_slogan" style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> | 
				
			||||
 | 
					                    <a href="https://www.cybrosys.com/odoo-erp-support/" target="_blank"> | 
				
			||||
 | 
					                        Odoo Support</a> | 
				
			||||
 | 
					                 </h3> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					             <div style="flex-basis: 18%;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                <div style="width:75px;height:75px;background:#fff; border-radius:100%;margin: auto;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/hire-odoo-developer/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/hire-odoo-developer.png" style="width: 100%;border-radius: 100%;"/> | 
				
			||||
 | 
					                        </a> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					                 <h3 class="oe_slogan" style="font-weight: 800;text-align: center;font-size: 14px;width: 100%;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;"> | 
				
			||||
 | 
					                    <a href="https://www.cybrosys.com/hire-odoo-developer/" target="_blank"> | 
				
			||||
 | 
					                        Hire Odoo Developers</a> | 
				
			||||
 | 
					                 </h3> | 
				
			||||
 | 
					                     </a> | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					    </div> | 
				
			||||
 | 
					</section> | 
				
			||||
 | 
					<section class="oe_container" style="padding: 1% 0% 0% 3%;"> | 
				
			||||
 | 
					     <div class="oe_row oe_spaced"> | 
				
			||||
 | 
					        <h2 class="oe_slogan" style="text-align: left;font-size: 28px;font-weight: 600;margin: 0px !important;"> | 
				
			||||
 | 
					            Our Industries | 
				
			||||
 | 
					        </h2> | 
				
			||||
 | 
					        <div style="display:flex;justify-content: space-between;flex-wrap:wrap;"> | 
				
			||||
 | 
					            <div style="flex-basis: 32%;padding-top: 20px;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:30%; float:left;"> | 
				
			||||
 | 
					                        <div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo/industries/best-trading-erp/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/odoo-index-industry-1.png" alt="Odoo Industry" style="    border-radius: 100%;width:100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                    <div style="width:70%;float:left;"> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> | 
				
			||||
 | 
					                         <a href="https://www.cybrosys.com/odoo/industries/best-trading-erp/" target="_blank"> | 
				
			||||
 | 
					                        Trading | 
				
			||||
 | 
					                         </a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    <h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo/industries/best-trading-erp/" target="_blank"> | 
				
			||||
 | 
					                        Easily procure and sell your products. | 
				
			||||
 | 
					                        </a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					            <div style="flex-basis: 32%;padding-top: 20px;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:30%; float:left;"> | 
				
			||||
 | 
					                        <div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo/industries/manufacturing-erp-software/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/odoo-index-industry-2.png" alt="Odoo Industry" style="    border-radius: 100%;width:100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                    <div style="width:70%;float:left;"> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo/industries/manufacturing-erp-software/" target="_blank"> | 
				
			||||
 | 
					                            Manufacturing</a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    <h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;"> | 
				
			||||
 | 
					                        Plan, track and schedule your operations. | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					            <div style="flex-basis: 32%;padding-top: 20px;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:30%; float:left;"> | 
				
			||||
 | 
					                        <div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo/industries/restaurant-management/" target="_blank"> | 
				
			||||
 | 
					                                <img src="https://www.cybrosys.com/images/odoo-index-industry-3.png" alt="Odoo Industry" style="    border-radius: 100%;width:100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                    <div style="width:70%;float:left;"> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo/industries/restaurant-management/" target="_blank"> | 
				
			||||
 | 
					                            Restaurant</a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    <h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;"> | 
				
			||||
 | 
					                        Run your bar or restaurant methodical. | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					            <div style="flex-basis: 32%;padding-top: 20px;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:30%; float:left;"> | 
				
			||||
 | 
					                        <div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo/industries/pos/" target="_blank"> | 
				
			||||
 | 
					                                <img src="https://www.cybrosys.com/images/odoo-index-industry-4.png" alt="Odoo Industry" style="    border-radius: 100%;width:100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                    <div style="width:70%;float:left;"> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo/industries/pos/" target="_blank"> | 
				
			||||
 | 
					                            POS</a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    <h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;"> | 
				
			||||
 | 
					                        Easy configuring and convivial selling. | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					            <div style="flex-basis: 32%;padding-top: 20px;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:30%; float:left;"> | 
				
			||||
 | 
					                        <div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo/industries/ecommerce-website/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/odoo-index-industry-5.png" alt="Odoo Industry" style="    border-radius: 100%;width:100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                    <div style="width:70%;float:left;"> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 0px;margin-left: 16px;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo/industries/ecommerce-website/" target="_blank"> | 
				
			||||
 | 
					                            E-commerce & Website</a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    <h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;"> | 
				
			||||
 | 
					                        Mobile friendly, awe-inspiring product pages. | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					            <div style="flex-basis: 32%;padding-top: 20px;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:30%; float:left;"> | 
				
			||||
 | 
					                        <div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo/industries/hotel-management-erp/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/odoo-index-industry-6.png" alt="Odoo Industry" style="    border-radius: 100%;width:100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                    <div style="width:70%;float:left;"> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo/industries/hotel-management-erp/" target="_blank"> | 
				
			||||
 | 
					                            Hotel Management</a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    <h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;"> | 
				
			||||
 | 
					                        An all-inclusive hotel management application. | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					            <div style="flex-basis: 32%;padding-top: 20px;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:30%; float:left;"> | 
				
			||||
 | 
					                        <div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo/industries/education-erp-software/" target="_blank"> | 
				
			||||
 | 
					                            <img src="https://www.cybrosys.com/images/odoo-index-industry-7.png" alt="Odoo Industry" style="    border-radius: 100%;width:100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                    <div style="width:70%;float:left;"> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo/industries/education-erp-software/" target="_blank"> | 
				
			||||
 | 
					                            Education</a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    <h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;"> | 
				
			||||
 | 
					                        A Collaborative platform for educational management. | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					             <div style="flex-basis: 32%;padding-top: 20px;"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					                    <div style="width:30%; float:left;"> | 
				
			||||
 | 
					                        <div style="width:75px;height:75px;background:#CE2D48; border-radius:100%;float: left;text-align: left;"> | 
				
			||||
 | 
					                            <a href="https://www.cybrosys.com/odoo/industries/service-management/" target="_blank"> | 
				
			||||
 | 
					                                <img src="https://www.cybrosys.com/images/odoo-index-industry-8.png" alt="Odoo Industry" style="    border-radius: 100%;width:100%;"/> | 
				
			||||
 | 
					                            </a> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </div> | 
				
			||||
 | 
					                    <div style="width:70%;float:left;"> | 
				
			||||
 | 
					                     <h3 class="oe_slogan" style=" text-align: left;font-size: 14px;font-weight:800;width: auto;margin: 0;margin-top: 14px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 4px;margin-left: 16px;"> | 
				
			||||
 | 
					                        <a href="https://www.cybrosys.com/odoo/industries/service-management/" target="_blank"> | 
				
			||||
 | 
					                            Service Management</a> | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                    <h3 class="oe_slogan" style=" text-align: left;font-size: 13px;width: auto;margin: 0;margin-top:5px;color: #000 !important;margin-top: 5px;opacity: 1 !important;line-height: 17px;float: left;margin-top: 5px;margin-left: 16px;"> | 
				
			||||
 | 
					                        Keep track of services and invoice accordingly. | 
				
			||||
 | 
					                     </h3> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					    </div> | 
				
			||||
 | 
					</section> | 
				
			||||
 | 
					<section class="oe_container" style="background-image:url(https://www.cybrosys.com/images/odoo-index-footer-bg.png); background-repeat:no-repeat; background-size:100%;padding: 13% 0% 6% 0%;"> | 
				
			||||
 | 
					    <div class="oe_slogan" style="margin-top:10px !important;margin-bottom: 0px;"> | 
				
			||||
 | 
					        <div> | 
				
			||||
 | 
					            <a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 12px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="mailto:odoo@cybrosys.com"><i class="fa fa-envelope"></i> Email us </a> | 
				
			||||
 | 
					            <a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 12px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="https://www.cybrosys.com/contact/"><i class="fa fa-phone"></i> Contact Us </a> | 
				
			||||
 | 
					            <a style="color: #5c5c5c !important;border-radius: 0;background: none;border: none;background: #fff;box-shadow: 0 10px 40px 0 rgba(62,57,107,0.07), 0 2px 9px 0 rgba(62, 57, 107, 0.05);border-radius: 30px;font-size: 12px;padding: 9px 26px;margin-right: 9px;width: 200px;text-transform: capitalize;" class="btn btn-primary btn-lg mt8" style="color: #FFFFFF !important;border-radius: 0;" href="https://www.cybrosys.com/contact/"><i class="fa fa-check-square"></i> Request Customization </a> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					        <br> | 
				
			||||
 | 
					        <img src="https://www.cybrosys.com/images/logo.png" style="width: 190px; margin-bottom: 25px;margin-top: 30px;" class="center-block"> | 
				
			||||
 | 
					        <div> | 
				
			||||
 | 
					          <a href="https://twitter.com/cybrosys" target="_blank"><i class="fa fa-2x fa-twitter" style="color:white;background: #00a0d1;width:35px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a></td> | 
				
			||||
 | 
					          <a href="https://www.linkedin.com/company/cybrosys-technologies-pvt-ltd" target="_blank"><i class="fa fa-2x fa-linkedin" style="color:white;background: #31a3d6;width:35px;padding-left: 3px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a></td> | 
				
			||||
 | 
					          <a href="https://www.facebook.com/cybrosystechnologies" target="_blank"><i class="fa fa-2x fa-facebook" style="color:white;background: #3b5998;width:35px; ;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a></td> | 
				
			||||
 | 
					          <a href="https://plus.google.com/106641282743045431892/about" target="_blank"><i class="fa fa-2x fa-google-plus" style="color:white;background: #c53c2c;width:35px;padding-left: 3px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a></td> | 
				
			||||
 | 
					          <a href="https://in.pinterest.com/cybrosys" target="_blank"><i class="fa fa-2x fa-pinterest" style="color:white;background: #ac0f18;width:35px;padding-left: 3px;height: 35px;padding-top: 7px;font-size: 21px;margin-right: 6px;border-radius: 100%;"></i></a></td> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					    </div> | 
				
			||||
 | 
					</section> | 
				
			||||
| 
		 After Width: | Height: | Size: 112 KiB  | 
| 
		 After Width: | Height: | Size: 124 KiB  | 
| 
		 After Width: | Height: | Size: 46 KiB  | 
@ -0,0 +1,53 @@ | 
				
			|||||
 | 
					.login-screen{ | 
				
			||||
 | 
					    position:fixed !important; | 
				
			||||
 | 
					} | 
				
			||||
 | 
					.pos .modal-dialog .screen_lock{ | 
				
			||||
 | 
					    position: absolute; | 
				
			||||
 | 
					    top: 0; left: 0; right: 0; bottom: 0; | 
				
			||||
 | 
					    margin: auto; | 
				
			||||
 | 
					    width:100px; | 
				
			||||
 | 
					    height:100px; | 
				
			||||
 | 
					    text-align:center; | 
				
			||||
 | 
					    border-radius: 3px; | 
				
			||||
 | 
					    z-index:1200; | 
				
			||||
 | 
					} | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					.pos .modal-dialog .screen_lock .fa-lock { | 
				
			||||
 | 
					    position: absolute; | 
				
			||||
 | 
					    left: 13px; | 
				
			||||
 | 
					    top: 13px; | 
				
			||||
 | 
					    color:black; | 
				
			||||
 | 
					    font-size: 100px; | 
				
			||||
 | 
					    border-radius: 100%; | 
				
			||||
 | 
					} | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					.pos_login .fa-arrow-circle-right { | 
				
			||||
 | 
					    font-size: 40px; | 
				
			||||
 | 
					    background: #FFFFFF; | 
				
			||||
 | 
					    color: rgb(0,128,0); | 
				
			||||
 | 
					    line-height: 30px; | 
				
			||||
 | 
					    width: 30px; | 
				
			||||
 | 
					    border-radius: 100%; | 
				
			||||
 | 
					    margin-top: 8px; | 
				
			||||
 | 
					} | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					.back_pos .fa-arrow-circle-left { | 
				
			||||
 | 
					    position: absolute; | 
				
			||||
 | 
					    left: 13px; | 
				
			||||
 | 
					    top: 13px; | 
				
			||||
 | 
					    margin-right: 8px; | 
				
			||||
 | 
					    font-size: 40px; | 
				
			||||
 | 
					    background: #FFFFFF; | 
				
			||||
 | 
					    color: red; | 
				
			||||
 | 
					    line-height: 30px; | 
				
			||||
 | 
					    width: 30px; | 
				
			||||
 | 
					    border-radius: 100%; | 
				
			||||
 | 
					} | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					.pos_invalid_password{ | 
				
			||||
 | 
					    color: red; | 
				
			||||
 | 
					} | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					.login-picture{ | 
				
			||||
 | 
					    padding-top:130px; | 
				
			||||
 | 
					} | 
				
			||||
@ -0,0 +1,109 @@ | 
				
			|||||
 | 
					odoo.define('pos_lock_session.session_lock', function (require) { | 
				
			||||
 | 
					"use strict"; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					var core = require('web.core'); | 
				
			||||
 | 
					var chrome = require('point_of_sale.chrome'); | 
				
			||||
 | 
					var gui = require('point_of_sale.gui'); | 
				
			||||
 | 
					var PopupWidget = require('point_of_sale.popups'); | 
				
			||||
 | 
					var _t = core._t; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					var SessionLock = PopupWidget.extend({ | 
				
			||||
 | 
					    template:'SessionLock', | 
				
			||||
 | 
					    events: _.extend({}, PopupWidget.prototype.events,{ | 
				
			||||
 | 
					        "click .screen_lock" : "unlock_screen", | 
				
			||||
 | 
					    }), | 
				
			||||
 | 
					    show: function(options){ | 
				
			||||
 | 
					        var self = this; | 
				
			||||
 | 
					        this._super(options); | 
				
			||||
 | 
					        $(document).keydown(function(e) { | 
				
			||||
 | 
					            if(e.keyCode == 13) { | 
				
			||||
 | 
					                e.preventDefault(); | 
				
			||||
 | 
					                self.gui.show_screen('login',{lock:true}); | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					        }); | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					    unlock_screen:function(){ | 
				
			||||
 | 
					        var self = this; | 
				
			||||
 | 
					        this.gui.show_screen('login',{lock:true}); | 
				
			||||
 | 
					    } | 
				
			||||
 | 
					}); | 
				
			||||
 | 
					gui.define_popup({name:'lock', widget: SessionLock}); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					chrome.Chrome.include({ | 
				
			||||
 | 
					    events: { | 
				
			||||
 | 
					            "click .pos-lock": "on_click_pos_lock", | 
				
			||||
 | 
					        }, | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    init: function() { | 
				
			||||
 | 
					        var self = this; | 
				
			||||
 | 
					        this._super(); | 
				
			||||
 | 
					        $(document).keydown(function(e) { | 
				
			||||
 | 
					            if(self.pos.config.pos_lock){ | 
				
			||||
 | 
					                if(e.keyCode == 76 && e.ctrlKey) { | 
				
			||||
 | 
					                    e.preventDefault(); | 
				
			||||
 | 
					                    e.stopPropagation(); | 
				
			||||
 | 
					                    var cashier = this.get_cashier().id; | 
				
			||||
 | 
					                    for (var i = 0; i < this.users.length; i++) { | 
				
			||||
 | 
					                        var user = this.users[i]; | 
				
			||||
 | 
					                        if (user.id === cashier) { | 
				
			||||
 | 
					                            var cashier_pswd = user.pos_security_pin; | 
				
			||||
 | 
					                        } | 
				
			||||
 | 
					                    } | 
				
			||||
 | 
					                    if(!cashier_pswd){ | 
				
			||||
 | 
					                        self.gui.show_popup('error', { | 
				
			||||
 | 
					                            'title': _t('Security pin is not set'), | 
				
			||||
 | 
					                            'body':  _t('Please set a security pin.'), | 
				
			||||
 | 
					                        }); | 
				
			||||
 | 
					                    } | 
				
			||||
 | 
					                    else{ | 
				
			||||
 | 
					                        self.gui.show_popup('lock',{}); | 
				
			||||
 | 
					                    } | 
				
			||||
 | 
					                } | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					        }); | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					    renderElement: function(){ | 
				
			||||
 | 
					        var self = this; | 
				
			||||
 | 
					        return this._super(); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    build_widgets: function(){ | 
				
			||||
 | 
					        this._super(); | 
				
			||||
 | 
					        var cashier = this.pos.get_cashier().id; | 
				
			||||
 | 
					        for (var i = 0; i < this.pos.users.length; i++) { | 
				
			||||
 | 
					            var user = this.pos.users[i]; | 
				
			||||
 | 
					            if (user.id === cashier) { | 
				
			||||
 | 
					                var cashier_pswd = user.pos_security_pin; | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					        if (this.pos.config.pos_lock && cashier_pswd) { | 
				
			||||
 | 
					            this.gui.set_startup_screen('login'); | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    on_click_pos_lock: function (e) { | 
				
			||||
 | 
					        var self = this; | 
				
			||||
 | 
					        e.stopPropagation(); | 
				
			||||
 | 
					        var cashier = this.pos.get_cashier().id; | 
				
			||||
 | 
					        for (var i = 0; i < this.pos.users.length; i++) { | 
				
			||||
 | 
					            var user = this.pos.users[i]; | 
				
			||||
 | 
					            if (user.id === cashier) { | 
				
			||||
 | 
					                var cashier_pswd = user.pos_security_pin; | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					        if(!cashier_pswd){ | 
				
			||||
 | 
					            this.gui.show_popup('error', { | 
				
			||||
 | 
					                'title': _t('Security pin is not set'), | 
				
			||||
 | 
					                'body':  _t('Please set a security pin.'), | 
				
			||||
 | 
					            }); | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					        else{ | 
				
			||||
 | 
					            self.gui.show_popup('lock',{}); | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					}); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					}); | 
				
			||||
@ -0,0 +1,125 @@ | 
				
			|||||
 | 
					odoo.define('pos_lock_session.screen', function (require) { | 
				
			||||
 | 
					"use strict"; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					var screens = require('point_of_sale.screens'); | 
				
			||||
 | 
					var gui = require('point_of_sale.gui'); | 
				
			||||
 | 
					var models = require('point_of_sale.models'); | 
				
			||||
 | 
					var _super_posmodel = models.PosModel.prototype; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					var _t  = require('web.core')._t; | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					var LoginScreenWidget = screens.ScreenWidget.extend({ | 
				
			||||
 | 
					    template: 'LoginScreenWidget', | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    barcode_product_action: function(code){}, | 
				
			||||
 | 
					    barcode_discount_action: function(code){}, | 
				
			||||
 | 
					    barcode_client_action: function(code){}, | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    init: function(parent, options) { | 
				
			||||
 | 
					        this._super(parent, options); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    show: function(){ | 
				
			||||
 | 
					        var self = this; | 
				
			||||
 | 
					        this._super(); | 
				
			||||
 | 
					        this.renderElement(); | 
				
			||||
 | 
					        this.$('.pos_invalid_password').val(''); | 
				
			||||
 | 
					        this.$('.user_password').val(''); | 
				
			||||
 | 
					        var cashier = this.pos.get_cashier().id; | 
				
			||||
 | 
					        for (var i = 0; i < this.pos.users.length; i++) { | 
				
			||||
 | 
					            var user = this.pos.users[i]; | 
				
			||||
 | 
					            if (user.id === cashier) { | 
				
			||||
 | 
					                this.user = user; | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					        // this.user = this.pos.get_cashier();
 | 
				
			||||
 | 
					        this.chrome.$('.pos-topheader').hide(); | 
				
			||||
 | 
					        if(this.pos.config.iface_vkeyboard && this.chrome.widget.keyboard){ | 
				
			||||
 | 
					            this.chrome.widget.keyboard.connect(this.$('.user_password')); | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					        this.$el.css({"background-color": _.escape(this.pos.config.bg_color)}); | 
				
			||||
 | 
					        if (! this.user.pos_security_pin){ | 
				
			||||
 | 
					            self.$('.pos_invalid_password').text('Please set a security pin.'); | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					        this.$('.back').click(function(){ | 
				
			||||
 | 
					            if (self.gui.get_current_screen_param('lock')){ | 
				
			||||
 | 
					                self.gui.show_screen('products'); | 
				
			||||
 | 
					                self.chrome.$('.pos-topheader').show(); | 
				
			||||
 | 
					                if(self.pos.config.iface_vkeyboard && self.chrome.widget.keyboard){ | 
				
			||||
 | 
					                    self.chrome.widget.keyboard.hide(); | 
				
			||||
 | 
					                } | 
				
			||||
 | 
					                self.gui.show_popup('lock',{}); | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					            else{ | 
				
			||||
 | 
					                self.gui.close(); | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					        }); | 
				
			||||
 | 
					        this.$('.login').click(function(){ | 
				
			||||
 | 
					            if (self.$('.user_password').val() === self.user.pos_security_pin){ | 
				
			||||
 | 
					                if (!self.gui.get_current_screen_param('lock')){ | 
				
			||||
 | 
					                    _super_posmodel.set_start_order.call(self.pos); | 
				
			||||
 | 
					                } | 
				
			||||
 | 
					                self.gui.show_screen('products'); | 
				
			||||
 | 
					                self.chrome.$('.pos-topheader').show(); | 
				
			||||
 | 
					                if(self.pos.config.iface_vkeyboard && self.chrome.widget.keyboard){ | 
				
			||||
 | 
					                    self.chrome.widget.keyboard.hide(); | 
				
			||||
 | 
					                } | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					            else{ | 
				
			||||
 | 
					                self.$('.pos_invalid_password').text('Invalid Password'); | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					        }); | 
				
			||||
 | 
					        $(document).keyup(function(e) { | 
				
			||||
 | 
					            if(e.keyCode == 13) { | 
				
			||||
 | 
					                e.preventDefault(); | 
				
			||||
 | 
					                e.stopPropagation(); | 
				
			||||
 | 
					                if (self.$('.user_password').val() === self.user.pos_security_pin){ | 
				
			||||
 | 
					                    if (!self.gui.get_current_screen_param('lock')){ | 
				
			||||
 | 
					                        _super_posmodel.set_start_order.call(self.pos); | 
				
			||||
 | 
					                    } | 
				
			||||
 | 
					                    self.gui.show_screen('products'); | 
				
			||||
 | 
					                    self.chrome.$('.pos-topheader').show(); | 
				
			||||
 | 
					                    if(self.pos.config.iface_vkeyboard && self.chrome.widget.keyboard){ | 
				
			||||
 | 
					                        self.chrome.widget.keyboard.hide(); | 
				
			||||
 | 
					                    } | 
				
			||||
 | 
					                } | 
				
			||||
 | 
					                else{ | 
				
			||||
 | 
					                    self.$('.pos_invalid_password').text('Invalid Password'); | 
				
			||||
 | 
					                } | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					        }); | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					    user_icon_url: function(id){ | 
				
			||||
 | 
					        return '/web/image?model=res.users&id='+id+'&field=image'; | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					}); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					gui.define_screen({ | 
				
			||||
 | 
					    'name': 'login', | 
				
			||||
 | 
					    'widget': LoginScreenWidget, | 
				
			||||
 | 
					    'condition': function(){ | 
				
			||||
 | 
					        return this.pos.config.pos_lock; | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					}); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					models.PosModel = models.PosModel.extend({ | 
				
			||||
 | 
					    // set when the user login to session.
 | 
				
			||||
 | 
					    set_start_order: function() { | 
				
			||||
 | 
					        var cashier = this.get_cashier().id; | 
				
			||||
 | 
					        for (var i = 0; i < this.users.length; i++) { | 
				
			||||
 | 
					            var user = this.users[i]; | 
				
			||||
 | 
					            if (user.id === cashier) { | 
				
			||||
 | 
					                var cashier_pswd = user.pos_security_pin; | 
				
			||||
 | 
					            } | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					        if (!this.config.pos_lock || !cashier_pswd) { | 
				
			||||
 | 
					            _super_posmodel.set_start_order.apply(this,arguments); | 
				
			||||
 | 
					        } | 
				
			||||
 | 
					    }, | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					}); | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					}); | 
				
			||||
@ -0,0 +1,47 @@ | 
				
			|||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||
 | 
					<templates id="template" xml:space="preserve"> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    <t t-extend="Chrome"> | 
				
			||||
 | 
					        <t t-jquery="div.pos-rightheader" t-operation="append"> | 
				
			||||
 | 
					            <t t-if='widget.pos.config and widget.pos.config.pos_lock'> | 
				
			||||
 | 
					                <div class="oe_status"> | 
				
			||||
 | 
					                    <i class="fa fa-lock pos-lock"/> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					            </t> | 
				
			||||
 | 
					        </t> | 
				
			||||
 | 
					    </t> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    <t t-name="SessionLock"> | 
				
			||||
 | 
					        <div class="modal-dialog"> | 
				
			||||
 | 
					            <div class='screen_lock'> | 
				
			||||
 | 
					                <i class='fa fa-lock' /> | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					    </t> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					    <t t-name="LoginScreenWidget"> | 
				
			||||
 | 
					        <div class='login-screen screen'> | 
				
			||||
 | 
					            <div class='screen-content-flexbox'> | 
				
			||||
 | 
					                <div class='button back back_pos'> | 
				
			||||
 | 
					                    <i class='fa fa-arrow-circle-left'/> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					                <div class='login-picture'> | 
				
			||||
 | 
					                    <t t-if='!widget.pos.get_cashier().id'> | 
				
			||||
 | 
					                        <i class='fa fa-camera'></i> | 
				
			||||
 | 
					                    </t> | 
				
			||||
 | 
					                    <t t-if='widget.pos.get_cashier().id'> | 
				
			||||
 | 
					                        <img t-att-src='widget.user_icon_url(widget.pos.get_cashier().id)' /> | 
				
			||||
 | 
					                    </t> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					                <div><h2><t t-esc="widget.pos.get_cashier().name"/></h2></div> | 
				
			||||
 | 
					                <div class="password_input"> | 
				
			||||
 | 
					                    <input class='user_password' name='password' placeholder='Password' type="password"/> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					                <div><span class="pos_invalid_password"/></div> | 
				
			||||
 | 
					                <div class='button login pos_login'> | 
				
			||||
 | 
					                    <i class="fa fa-arrow-circle-right" aria-hidden="true"/> | 
				
			||||
 | 
					                </div> | 
				
			||||
 | 
					            </div> | 
				
			||||
 | 
					        </div> | 
				
			||||
 | 
					    </t> | 
				
			||||
 | 
					</templates> | 
				
			||||
@ -0,0 +1,32 @@ | 
				
			|||||
 | 
					<odoo> | 
				
			||||
 | 
					    <data> | 
				
			||||
 | 
					        <record id="view_pos_quick_payment_config_form" model="ir.ui.view"> | 
				
			||||
 | 
					            <field name="name">pos.config.form.view</field> | 
				
			||||
 | 
					            <field name="model">pos.config</field> | 
				
			||||
 | 
					            <field name="inherit_id" ref="point_of_sale.pos_config_view_form"/> | 
				
			||||
 | 
					            <field name="arch" type="xml"> | 
				
			||||
 | 
					                <xpath expr="//h2" position="before"> | 
				
			||||
 | 
					                    <h2>Screen Lock</h2> | 
				
			||||
 | 
					                    <group name="session_lock"> | 
				
			||||
 | 
					                        <div class="row mt16 o_settings_container"> | 
				
			||||
 | 
					                            <div class="col-xs-12 col-md-6 o_setting_box"> | 
				
			||||
 | 
					                                <div class="o_setting_left_pane"> | 
				
			||||
 | 
					                                    <field name="pos_lock"/> | 
				
			||||
 | 
					                                </div> | 
				
			||||
 | 
					                                <div class="o_setting_right_pane"> | 
				
			||||
 | 
					                                    <label for="pos_lock"/> | 
				
			||||
 | 
					                                </div> | 
				
			||||
 | 
					                                </div> | 
				
			||||
 | 
					                                <div class="col-xs-12 col-md-6 o_setting_box"> | 
				
			||||
 | 
					                                <div class="o_setting_right_pane"> | 
				
			||||
 | 
					                                    <label for="bg_color"/> | 
				
			||||
 | 
					                                    <field name="bg_color" style="height:30px;width:200px"/> | 
				
			||||
 | 
					                                </div> | 
				
			||||
 | 
					                                </div> | 
				
			||||
 | 
					                        </div> | 
				
			||||
 | 
					                    </group> | 
				
			||||
 | 
					                </xpath> | 
				
			||||
 | 
					            </field> | 
				
			||||
 | 
					        </record> | 
				
			||||
 | 
					  </data> | 
				
			||||
 | 
					</odoo> | 
				
			||||
@ -0,0 +1,12 @@ | 
				
			|||||
 | 
					<?xml version="1.0" encoding="utf-8"?> | 
				
			||||
 | 
					<odoo> | 
				
			||||
 | 
					    <data> | 
				
			||||
 | 
					        <template id="assets" inherit_id="point_of_sale.assets"> | 
				
			||||
 | 
					            <xpath expr="." position="inside"> | 
				
			||||
 | 
					                <link rel="stylesheet" href="/pos_lock_session/static/src/css/session_lock.css"/> | 
				
			||||
 | 
					                <script type="text/javascript" src="/pos_lock_session/static/src/js/unlock_screen.js"/> | 
				
			||||
 | 
					                <script type="text/javascript" src="/pos_lock_session/static/src/js/session_lock.js"/> | 
				
			||||
 | 
					            </xpath> | 
				
			||||
 | 
					        </template> | 
				
			||||
 | 
					    </data> | 
				
			||||
 | 
					</odoo> | 
				
			||||
					Loading…
					
					
				
		Reference in new issue